[OSGeoJapan-discuss] 複数のMBTilesの結合、もしくはMBTilesの追記の行い方は?

hayashi @ apptec.co.jp hayashi @ apptec.co.jp
2016年 6月 13日 (月) 03:18:40 PDT


喜多さん

pythonで作ってみました。

https://drive.google.com/open?id=0Byvl7xn2kTC_TEp5dVh4M1dYYjA

python mergetiles -src src.mbtiles -dest dest.mbtiles -zoom 17,18,19

のように使います。

osgeo4w shell を起動して、コマンドラインから実行します。

適当に作ってるので日本語ディレクトリやスペース付きパスには対応してません。

metadata については、 minZoom,maxZoom,bounds を更新します。

bounds についてはdestにコピーしたタイルのzoom_level最大のタイル範囲から生成してます。
簡単にしか検証してないので、間違ってるかも。


On 2016/06/13 8:51, 喜多耕一 wrote:
> 松澤さん
>
> 喜多です。
> あーそう言うことなのですね。
> ありがとうございました。
>
> Windowsで動くプログラムは無いですかねえ?
>
> 北海道 喜多耕一
> 2016/06/13 0:42 "Taro Matsuzawa" <taro at georepublic.co.jp>:
>
>> 松澤です。
>>
>> このpatchというプログラムはbashスクリプトなので、
>> Linuxなどで動かしてください。
>> 2016年6月12日(日) 21:17 喜多耕一 <kou35tochas at gmail.com>:
>>
>>> 松澤さん
>>> みなさま
>>>
>>> 喜多です。
>>>
>>> patchの使い方がよくわかりません。すみません。教えて下さい。
>>>
>>> Sqlite3.exeをダウンロード(http://www.sqlite.org/download.html)して、
>>> 任意のフォルダ(今回は、d:\sqlite)に保存しました。
>>>
>>> https://github.com/mapbox/mbutil/blob/5e1ac74fdf7b0f85cfbbc245481e1d6b4d0f440d/patch
>>> でダウンロードした、「patch」ファイルも同じフォルダに保存しました。
>>> 添付の「a.mbtiles」と「b.mbtiles」も同じフォルダに保存しました。
>>>
>>> コマンドプロンプトを起動し、d:\sqliteフォルダに移動しました。
>>> d:\sqlite>sqlite3
>>> を実行しました。
>>> sqlite>./ patch.sh a.mbtiles b.mbtiles
>>> と入力してもエラーになります。
>>> sqlite>./ patch a.mbtiles b.mbtiles
>>> と入力してもエラーになります。
>>> sqlite> patch a.mbtiles b.mbtiles
>>> と入力すると、
>>> ...>
>>> と表示されて、なにを入力しても、「...>」と表示されてしまいます。
>>>
>>> どこが間違っているか、どのようにコマンドを入力したら良いのかご教授ください。
>>>
>>> 一応、テスト用のmbtilesを添付します。
>>> a.mbtilesは、北海道西部で、青い北海道です。
>>> b.mbtilesは、北海道東部で、赤い北海道です。
>>>
>>> よろしくお願いします。
>>>
>>> 北海道 喜多耕一
>>>
>>>
>>>
>>>
>>> 2016年6月10日 15:15 Taro Matsuzawa <taro at georepublic.co.jp>:
>>>
>>> 松澤です。
>>>>
>>>> ちょっと情報が不正確なので補足します。
>>>>
>>>>> 結合させるには、上記のユーティリティーをインストールして、以下のスクリプトを走らせればいいようです。
>>>>> https://github.com/mapbox/mbutil/blob/master/patch
>>>>
>>>> これなんですが、mbutil自体必要なくて、
>>>> このファイル単体(とsqlite3コマンド)で動作します。
>>>> なので、このファイルだけダウンロードすれば使えます。
>>>> 使い方はコマンドのコメントにあるだけですね。
>>>> ちなみに、destに思いっきり上書きするので作業前にコピーを
>>>> とっておくとよいでしょう。
>>>>
>>>> で、このプログラムがやっているのは単純にmbtilesの
>>>> mapテーブルとimagesテーブルをコピーしているだけです。
>>>> なので、boundsやminzoomなどが書かれているmetadataテーブルに対して
>>>> 何もケアをしていません。
>>>> そのため、Merging multiple MBTiles togetherでは
>>>> 最後に自力でmetadataテーブルをいじっています。
>>>>
>>>> なんとなくmetadataテーブルは自動で再生成できそうですが、
>>>> bounds, center, minzoom, maxzoomをいじるぐらいなので
>>>> そんなに大変ではないと思います。
>>>> # ってかプログラムによってはmetadataテーブル無視してる気もする
>>>>
>>>> なお、mbtilesはsqlite3(spatialiteでもない)のファイルなので、
>>>> エディタはいろいろ使えるはずです。
>>>> Firefoxのアドオンでもありますw
>>>> https://addons.mozilla.org/ja/firefox/addon/sqlite-manager/
>>>>
>>>>
>>>> On 2016/06/10 12:24, Nobusuke Iwasaki wrote:
>>>>
>>>>> 喜多さん、みなさん
>>>>>
>>>>> いわさきです。
>>>>> 遅くなりましたが、ちょうどmbtilesについて調べていたところ、以下の記事が見つかりました。
>>>>>
>>>>> Merging multiple MBTiles together(複数のmbtilesを結合する)
>>>>>
>>>>> https://jeromegagnonvoyer.wordpress.com/2015/08/06/merging-multiple-mbtiles-together/
>>>>>
>>>>> QGISの機能ではないのですが、mbtilesを扱うためのユーティリティーがあるようです。
>>>>> https://github.com/mapbox/mbutil
>>>>>
>>>>> 結合させるには、上記のユーティリティーをインストールして、以下のスクリプトを走らせればいいようです。
>>>>> https://github.com/mapbox/mbutil/blob/master/patch
>>>>>
>>>>> ただ、出来るらしいという程度の情報で、自分自身で動かした訳ではありません(汗
>>>>> どなたか、使われた方がいらっしゃったら、フォローよろしくお願いしますm(__)m
>>>>>
>>>>>
>>>>> 2016年6月4日 19:49 喜多耕一 <kou35tochas at gmail.com>:
>>>>>
>>>>>> みなさま
>>>>>>
>>>>>> 北海道の喜多です。
>>>>>>
>>>>>> QGISのQtileプラグインやQMetaTileプラグインで、MBTilesを作成できますが、
>>>>>> 複数のMBTilesを結合するもしくは、既存のMBTilesにタイルを追記する事はできますか?
>>>>>>
>>>>>> なぜこのようなことが必要かというと、ズームレベルが大きいタイルを、地図全域分作成するとファイルサイズが大きくなるため、ズームレベルが大きいタイルは必要な領域(渡しの場合は自分の仕事で管理する森林の範囲)のみ作成したいのです。
>>>>>> QTileプラグインでは、範囲を1つしか指定できないので、ズームレベルが高いタイルに必要ない部分のタイルが作成されてしまいます。
>>>>>>
>>>>>> QGISで出来ないのであれば、できるツールがあれば教えていただきたいです。
>>>>>> よろしくお願いします。
>>>>>>
>>>>>> 北海道 喜多耕一
>>>>>>
>>>>>> _______________________________________________
>>>>>> OSGeoJapan-discuss mailing list
>>>>>> OSGeoJapan-discuss at lists.osgeo.org
>>>>>> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> Georepublic Japan Ltd.
>>>> c/o CommunityLink
>>>> 5-3-1 Kumoidori, Chuo Ward
>>>> Kobe 651-0096
>>>>
>>>> Taro Matsuzawa
>>>> Senior Developer
>>>>
>>>> eMail: taro at georepublic.co.jp
>>>> Web: https://georepublic.info
>>>>
>>>> Tel: +81 (03) 6868 5418
>>>> Fax: +81 (03) 3374 0291
>>>>
>>>> _______________________________________________
>>>> OSGeoJapan-discuss mailing list
>>>> OSGeoJapan-discuss at lists.osgeo.org
>>>> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> OSGeoJapan-discuss mailing list
>>> OSGeoJapan-discuss at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss


-- 
--------------------------------------------------
OSGeo.JP
  http://www.osgeo.jp
--------------------------------------------------
APPLIED TECHNOLOGY CO.,LTD.

MANAGER
Engineering headquarters
Geospatial Information Section
GIS Expert

HIROFUMI HAYASHI
hayashi at apptec.co.jp

Umeda Center Bldg. 2-4-12 Nakazakinishi
Kitaku, Osaka 530-0015 JAPAN

   Tel: 06-6373-6121
   Fax: 06-6373-6126
--------------------------------------------------


OSGeoJapan-discuss メーリングリストの案内