上野家のホームページ
ナーマル,マリン,ココ
[
新規
|
一覧
|
検索
|
最新
|
ヘルプ
]
PC/地図/Locus map用ベクター地図
をテンプレートにして作成
資料室
PC/地図/Locus map用ベクター地図 をテンプレートにして作成
[
差分
|
バックアップ
|
リロード
]
[ ]
開始行:
* Locus Map
[[Locus Map>https://www.locusmap.app/]]はAndroid端末で動...
03/15/2021にLocus Mapの後継アプリの[[Locus Map 4>https://...
旧Locus Map/旧Locus Map Pro(現Locus Map 3 Classic)は,~
- 多くのオンライン地図・オフライン地図に対応。~
オフライン地図にはOpenStreetMapベースの[[Mapsforge>https:...
他にもGarminのベクター地図の.imgファイルもそのまま使える。~
日本でのオンライン地図には[[国土地理院のGSI Maps>https://...
オンライン地図はキャッシュすることが出来,キャッシュ済み...
また,複数の地図を重ねて表示もできる。~
- 地図表示が高速。~
Mapsforge形式のベクター地図では,スクロールしたりしても全...
- Mapsforge形式のベクター地図ではテーマ(Theme)で表示をカ...
- 等高線や起伏データの表示。~
- 各国語表示・音声出力対応。~
もちろん,日本語表示・日本語音声ができる。~
- 多くの座標タイプ・単位に対応。~
MGRSにも対応している。~
- オフラインPOI,お気に入りポイント対応,Googleプレイス,...
オフラインPOIデータは,SQLite形式な独自DBフォーマット(公...
LoMaps(Lucasストアでの有料のベクター地図)を購入すると,...
- 座標・住所・連絡先検索が可能。~
オフライン検索にはLoMapsのオフラインPOI DBを利用した住所...
オフラインでの住所検索には[[GeoNames>http://www.geonames....
オンライン検索にはGoogle等が使用できる。~
- トラックの保存やインポート・エクスポート機能。~
GPSロガーとしても使用可能。時刻・標高付きGPXファイルを保...
あらかじめ,トラックを作成・編集することも出来る。~
- オンライン・オフラインでのルート検索,音声ガイド付きナ...
ルート検索はオフライン(Brouter)でも可能。~
電車・バス利用のルート検索には対応していない。~
カーナビ,自転車,徒歩ナビ。ポイントへの接近通知対応。~
- ジオキャッシングで使いやすい機能搭載。~
- サイクルコンピューター機能。~
-- BluetoothやANT+での各種センサーとの接続対応。
-- ダッシュボード機能がある。~
サイクルコンピュータのような表示のサポート。~
- プラグインで機能が追加できる。~
- 知り合いとの位置共有。
のような機能・特徴があり,使いやすく高機能な地図アプリ。~
私はLocus Map Proを購入して使用している。~
* Locus Map用の地図
[[Locus Map>http://www.locusmap.eu/]]でオフラインで使用で...
Locus Map Free(無料版)でもこのLoMapsからファイル3個まで...
実は初期のLoMapsのベクター日本地図はところどころデータが...
このことを指摘した後,''2015/12月以降のダウンロード出来る...
また,このLoMapsは概ね3-4ヶ月毎に地図が更新されるのだが,...
LoMapsをダウンロードすると,オフラインで使えるPOI DBや住...
オフラインPOI DBのフォーマット仕様は公開してもらいたいな...
LoMapsは[[OpenStreetMap>https://www.openstreetmap.org]]の...
** 無料で使用できるベクター地図
有料のLoMaps以外で[[Locus Map>http://www.locusmap.eu/]]で...
- ''[[Mapsforge Download Server>http://download.mapsforge...
Mapsforgeライブラリの開発者が[[OpenStreetMap>http://www.o...
残念ながら,このMapsforgeの地図には等高線データは含まれて...
v3マップでは日本語ではなく英語表示だったけど,v4・v5マッ...
- %%''[[locusvectormaps>http://www.locusvectormaps.com/]]...
%%OpenStreetMapから変換した日本全体のベクター地図がダウン...
%%残念ながら,こちらも等高線データは含まれていない &worri...
%%問題としては,海が青く表示されない &worried; %%
- [[vector.city>https://vector.city/]]~
OpenStreetMapから変換した日本のベクター地図がダウンロード...
%%ダウンロードできる日本のベクター地図は,ファイルが正常...
問題としては,海が青く表示されない &worried; ~
- ''[[OpenAndroMaps>http://www.openandromaps.org/en/]]''~
OpenStreetMapから変換した日本全体のベクター地図がダウンロ...
しかもこのデータは,SRTMのデータから作成された20mの等高線...
しかも2020/07ぐらいから,Locus Mapで使用できるオフラインP...
この日本全体のベクター地図は一つの地図ファイルで分割され...
''これを無料で提供されているのには頭が下がります。'' 少し...
更新頻度は3ヶ月から4ヶ月ぐらい。~
- [[AndroidMaps>https://www.androidmaps.co.uk/]]~
OpenStreetMapから変換した日本のベクター地図がダウンロード...
残念ながら,このベクター地図には等高線データは含まれてい...
- [[Kurviger>https://download.kurviger.de/]]~
OpenStreetMapから変換した日本のベクター地図がダウンロード...
[[Kurviger>https://kurviger.de/en]]はオートバイ用の経路検...
残念ながら,このベクター地図には等高線データは含まれてい...
通常は,OpenAndroMapsのベクター地図を利用すれば問題無いと...
ところどころ(ローマ字)表記されるところがある。ただ,こ...
* OpenStreetMapから日本のベクター地図を作成
上記のサイトから提供されているOpenStreetMapのデータを変換...
そこで自前でOpenStreetMapの地図データからLocus Mapで使用...
** OpenStreetMapの日本の地図データを用意する
まず,[[こちらのページ>/PC/地図/OpenStreetMap]]に書いてあ...
この日本の地図データを[[Locus Map>http://www.locusmap.eu/...
Mapsforge形式のベクター地図にはmapsforgeライブラリでoptio...
- V3~
言語タグは無く,OpenStreetMapのデフォルトの言語タグのみ使...
- V4~
マルチ言語対応。~
osmosis/Mapsforge Map-Writer pluginでpreferred-languages...
--preferred-languages=ja,en
- V5~
タグに変数が使用できるようになった。~
osmosis/Mapsforge Map-Writer pluginでtag-values=trueオプ...
--tag-values=true
このページで作成しているMapsforge形式のベクター地図は,V3...
** 日本の地図データを小さい領域に分割する
日本全体の地図データは大きなファイルになってしまって,ツ...
Locusストアで提供されているLoMaps日本地図も,北海道・本州...
そこで,Locus MapやOsmAnd/OsmAnd+と同じように北海道・本州...
まず日本全体の地図データ(japan-latest.osm.pbf)を北海道...
日本全体の地図を4個(or 8個)に分割するため,領域を定義し...
この[[polyファイル>http://wiki.openstreetmap.org/wiki/Osm...
日本全体の地図データの.pbfファイルはバイナリデータに圧縮...
日本全体の地図データを単純に4個に分割する場合は以下のよう...
> cd jpmap
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
日本全体の地図データを単純に8個に分割する場合は以下のよう...
> cd jpmap
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
分割するのにオブジェクト・タグが境界にまたがっている場合...
*** 不要なタグ情報を削除してサイズを小さくして分割する
上記はOpenStreetMapの日本全体の地図データをそのまま分割す...
地図データを編集しない場合は,Locus Mapだと不要なタグはTh...
日本全体の地図データの.pbfファイルはバイナリデータに圧縮...
のosmconvertを使って[[osmfilter>https://wiki.openstreetma...
まず,日本全体のpbf地図データをo5mフォーマットに変換する。~
> osmconvert japan-latest.osm.pbf -o=japan-latest.o5m
その後,4個に分割する。~
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.osm -B=..\poly\...
8個に分割するばあいは,~
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.osm -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
とする。~
上記と同様に--complex-waysをつけている。
そして,いらないタグ(他の言語,電線とか)を[[osmfilter>h...
4個に分割している場合は,
> osmfilter hokkaido.o5m --parameter-file=del.txt > hokk...
> osmfilter honshu.o5m --parameter-file=del.txt > hons...
> osmfilter shikoku.o5m --parameter-file=del.txt > shik...
> osmfilter kyushu.o5m --parameter-file=del.txt > kyus...
として,8個に分割している場合は,
> osmfilter tohoku.o5m --parameter-file=del.txt > toho...
> osmfilter kanto.o5m --parameter-file=del.txt > kant...
> osmfilter chubu.o5m --parameter-file=del.txt > chub...
> osmfilter kinki.o5m --parameter-file=del.txt > kink...
> osmfilter chugoku.o5m --parameter-file=del.txt > chug...
> osmfilter shikoku.o5m --parameter-file=del.txt > shik...
> osmfilter kyushu.o5m --parameter-file=del.txt > kyus...
とした。~
ところどころ,名前に「ほげほげ(英語)」のように登録されて...
これは,地図データを.osmファイルに変換してからperlを使っ...
4個の場合は,
> osmconvert hokkaido_temp.o5m -o=hokkaido_temp.osm
> osmconvert honshu_temp.o5m -o=honshu_temp.osm
> osmconvert shikoku_temp.o5m -o=shikoku_temp.osm
> osmconvert kyushu_temp.o5m -o=kyushu_temp.osm
> perl -p -e 's/\(.+?\)//g;' hokkaido_temp.osm > hokkaid...
> perl -p -e 's/\(.+?\)//g;' honshu_temp.osm > honshu....
> perl -p -e 's/\(.+?\)//g;' shikoku_temp.osm > shikoku...
> perl -p -e 's/\(.+?\)//g;' kyushu_temp.osm > kyushu....
として,8個の場合は,
> osmconvert hokkaido_temp.o5m -o=hokkaido_temp.osm
> osmconvert tohoku_temp.o5m -o=tohoku_temp.osm
> osmconvert kanto_temp.o5m -o=kanto_temp.osm
> osmconvert chubu_temp.o5m -o=chubu_temp.osm
> osmconvert kinki_temp.o5m -o=kinki_temp.osm
> osmconvert chugoku_temp.o5m -o=chugoku_temp.osm
> osmconvert shikoku_temp.o5m -o=shikoku_temp.osm
> osmconvert kyushu_temp.o5m -o=kyushu_temp.osm
> perl -p -e 's/\(.+?\)//g;' hokkaido_temp.osm > hokkaid...
> perl -p -e 's/\(.+?\)//g;' tohoku_temp.osm > tohoku....
> perl -p -e 's/\(.+?\)//g;' kanto_temp.osm > kanto.osm
> perl -p -e 's/\(.+?\)//g;' chubu_temp.osm > chubu.osm
> perl -p -e 's/\(.+?\)//g;' kinki_temp.osm > kinki.osm
> perl -p -e 's/\(.+?\)//g;' chugoku_temp.osm > chugoku...
> perl -p -e 's/\(.+?\)//g;' shikoku_temp.osm > shikoku...
> perl -p -e 's/\(.+?\)//g;' kyushu_temp.osm > kyushu....
とした。~
こんなようにして,(英語)を削除した。ちょっと地図データの...
これで,ベクター日本地図のhakkaido.osm(北海道),honshu....
.osmファイルはテキストファイル(xml)で,日本全体だと24Gb...
この後,.osmを.pbf(圧縮ファイル)に変換しておく。~
4個の場合は,
> osmconvert hokkaido.osm -o=hokkaido.osm.pbf
> osmconvert honshu.osm -o=honshu.osm.pbf
> osmconvert shikoku.osm -o=shikoku.osm.pbf
> osmconvert kyushu.osm -o=kyushu.osm.pbf
> del *.osm
8個の場合は,
> osmconvert tohoku.osm -o=tohoku.osm.pbf
> osmconvert kanto.osm -o=kanto.osm.pbf
> osmconvert chubu.osm -o=chubu.osm.pbf
> osmconvert kinki.osm -o=kinki.osm.pbf
> osmconvert chugoku.osm -o=chugoku.osm.pbf
> osmconvert shikoku.osm -o=shikoku.osm.pbf
> osmconvert kyushu.osm -o=kyushu.osm.pbf
> del *.osm
で変換する。
** SRTMのデータから等高線地図を作成
日本のOpenStreatMapから各地域の地図データに分割は出来たん...
ハイキングやちょっとした山登りをするときには等高線が見れ...
日本の等高線データを得られるサイト。~
- 国土地理院~
[[国土地理院>http://www.gsi.go.jp/kiban/index.html]]から...
ファイルフォーマットは,JPGIS(GML)ということだが・・・ ...
変換する方法がわかったんで試しに四国の10m等高線地図を作成...
- NASA SRTM~
[[Shuttle Radar Topography Mission(SRTM)>http://www2.jp...
[[SRTM3 Version3(3秒/90m 全世界)>http://e4ftl01.cr.usgs...
実際の地形データは(データがあるサイトにより)hgtファイル...
また,[[http://dwtkns.com/srtm30m/]]では,位置を選択してS...
NASA SRTMのデータをダウンロードして,さらにOpenStreetMap...
*** [[srtm2osm>https://github.com/mibe/Srtm2Osm]]
まず見つけたツールがsrtm2osm version 1.12(最新バージョン...
[[OpenStreetMapのwiki>https://wiki.openstreetmap.org/wiki...
srtm2osmのオプションの-bounds1に日本の左下の緯度・経度と...
日本全体の等高線データを作りたいので緯度・軽度を1°毎の矩...
しょうがないので以下のようにして1つの.osmファイルを作成し...
> cd srtm
> srtm2osm -bounds1 24 122 46 146 -step 10 -cat 100 50 -...
*** [[phyghtmap>./phyghtmap]]
次に見つけたのが[[phyghtmap>./phyghtmap]] version 1.42(p...
Pythonで動くのでWindowsでもLinuxでも使える。~
phyghtmapを使用するとSRTMのデータをダウンロードして,その...
日本の領域指定にはpolyファイルで指定できるので,&ref(japa...
このツールでもやはり129個のデータをダウンロード(hgtディ...
詳細データのSRTM1 Version 3(1秒/30m)をダウンロードする...
> cd srtm
// > phyghtmap --polygon=..\poly\japan.poly --output-pref...
> phyghtmap --polygon=..\poly\japan.poly --output-prefix...
> move japan_srtm_lon122.56_153.89lat21.21_45.80_srtm3.o...
// > mv japan_srtm_lon122.56_153.89lat21.21_45.80_srtm3v3...
> osmconvert japan_srtm.osm -o=japan_srtm.pbf
> del japan_srtm.osm
USER_IDとPASSWORDはphyghtmapの''最初の起動時のみ必要。''~
--step=20で20mの等高線に,--line-cat=500,100で500m/1...
--step=10 --line-cat=100,50とすれば10mの等高線にも出...
--write-timestampオプションを指定しないと,後で[[osm...
また,--no-zero-contourで0mの等高線を作成しないよう...
これで,なんとかハイキング用に使える20m(または10m)での...
ただ出来上がった等高線地図には,おかしな等高線がたくさん...
srtm2osmでダウンロードした.hgtファイルのデータは大丈夫み...
これでやっと,日本の等高線データ&ref(japan_srtm.pbf);(20...
*** 日本の等高線データを各地域に分割する
日本の等高線データjapan_srtm.pbfから地図データと同様に4個...
4個の場合は,
> osmconvert japan_srtm.pbf -B=..\poly\Hokkaido.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Honshu.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Shikoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kyushu.poly -o=...
8個の場合は,
> osmconvert japan_srtm.pbf -B=..\poly\Hokkaido.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Tohoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kanto.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Chubu.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kinki.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Chugoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Shikoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kyushu.poly -o=...
として,作成した。~
一度作成しておけば,後は地図と等高線をマージすれば等高線...
ちなみに,ダウンロードした.hgtファイルをLocus/data/srtmフ...
- 2015SRTMデータ(3s/90m): &ref(hgt2015.zip);~
- 2022SRTMデータ(3s/90m): &ref(hgt3v3_2022.zip);~
- 2022SRTMデータ(1s/30m): &ref(hgt1v3_2022.zip);~
** 海を青くする地図を作成
OpenStreetMapの地図データは陸地と海岸の境界線(natural=co...
このためMapsforge形式のベクター地図を作成する時に何もこの...
Locus Mapで使われているMapsforgeの表示ライブラリでは,The...
なので海を青く表示するには,なんとかして陸地と海岸の境界...
''このために正しい方法かどうかはわからないが,以下のよう...
このやり方の場合,日本の陸地や海の領域を特定する地形デー...
*** 海部分のデータを作成
> cd sea
このディレクトリに,海を特定した上で'' key='natural' valu...
同様にして,&ref(hokkaido_s.osm); &ref(tohoku_s.osm); &re...
*** 陸地部分のデータを作成
[[OpenStreetMap Data>https://osmdata.openstreetmap.de/]]...
> wget https://osmdata.openstreetmap.de/download/land-po...
> unzip land-polygons-split-4326.zip
// > unzip -p land-polygons-split-4326.zip land-polygons-...
// > 7z x -y -so -i!land-polygons-split-4326\land_polygon...
zipファイルを解凍すると,''land_polygons.shp''という世界...
> ogr2ogr -overwrite -progress -skipfailures -clipsrc 12...
その後,&ref(shape2osm.py);(自分でPython3で動くように修...
> python shape2osm.py -l japan_ns -o 10000000 japan.shp
これで,日本全体の陸地の外形データのjapan_ns.osmが作成さ...
そして,日本全体の外形データから,北海道,本州,四国,九...
ツールには[[OpenStreetMapのwiki>https://wiki.openstreetma...
4個の場合は,
> osmosis --read-xml file="japan_s.osm" --read-xml file=...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Hok...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Hon...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Shi...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kyu...
8個の場合は,
> osmosis --read-xml file="japan_s.osm" --read-xml file=...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Toh...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kan...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Chu...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kin...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Chu...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Shi...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kyu...
で作成した。
*** 海(xxxx_s.osm)と陸地部分(xxxx_ns.osm)をマージする
海(xxxx_s.osm)と陸地部分(xxxx_ns.osm)をマージして,xx...
4個の場合は,
> osmosis --read-xml file="hokkaido_s.osm" --read-xml fi...
> osmosis --read-xml file="honshu_s.osm" --read-xml fi...
> osmosis --read-xml file="shikoku_s.osm" --read-xml fi...
> osmosis --read-xml file="kyushu_s.osm" --read-xml fi...
8個の場合は,
> osmosis --read-xml file="hokkaido_s.osm" --read-xml fi...
> osmosis --read-xml file="tohoku_s.osm" --read-xml fi...
> osmosis --read-xml file="kanto_s.osm" --read-xml fi...
> osmosis --read-xml file="chubu_s.osm" --read-xml fi...
> osmosis --read-xml file="kinki_s.osm" --read-xml fi...
> osmosis --read-xml file="chugoku_s.osm" --read-xml fi...
> osmosis --read-xml file="shikoku_s.osm" --read-xml fi...
> osmosis --read-xml file="kyushu_s.osm" --read-xml fi...
で作成する。~
出来たosmファイルをpbfファイルに変換しておく。~
4個の場合は,
> osmconvert hokkaido_sea.osm -o=hokkaido_sea.pbf
> osmconvert honshu_sea.osm -o=honshu_sea.pbf
> osmconvert shikoku_sea.osm -o=shikoku_sea.pbf
> osmconvert kyushu_sea.osm -o=kyushu_sea.pbf
8個の場合は,
> osmconvert hokkaido_sea.osm -o=hokkaido_sea.pbf
> osmconvert tohoku_sea.osm -o=tohoku_sea.pbf
> osmconvert kanto_sea.osm -o=kanto_sea.pbf
> osmconvert chubu_sea.osm -o=chubu_sea.pbf
> osmconvert kinki_sea.osm -o=kinki_sea.pbf
> osmconvert chugoku_sea.osm -o=chugoku_sea.pbf
> osmconvert shikoku_sea.osm -o=shikoku_sea.pbf
> osmconvert kyushu_sea.osm -o=kyushu_sea.pbf
で作成した。~
やっと,陸地は<tag k="natural" v="nosea" />が,海の部分は...
** 日本の地図と等高線と海・陸地をマージして完成
上で作成した各場所のベクター地図とベクター等高線地図,及...
変換ツールには,[[osmosis>./osmosis]]と[[Mapsforge Map-Wr...
osmosis/Mapsforge Map-Writer pluginで日本の地図を処理する...
使用するメモリの設定はosmosisの''bin/osmosis.bat''で,~
set JAVACMD_OPTIONS=-Xms5G -Xmx5G
と設定して,使用するNotePCが8GBのRAMが搭載されているので5...
しかしMapsforge Map-Writer pluginを使って8GのRAMを搭載し...
搭載メモリが少ない場合は,オプションの''type=hd''を使うと...
最近の日本全体や本州のmap地図を作成する場合は,RAMが16G搭...
どうもzoom interval 1の書き出し時にエラー(java.nio.Buffe...
これは,Mapsforge Map-Writer pluginでのオブジェクト書き出...
しょうがないので,tag mappingファイル(tags.xml)を編集し...
''等高線が表示されるように,またさらにいくつか表示される...
以下のようにして(本州だけは''type=hd''オプションを使って...
4個の場合は,~
> osmosis --read-pbf file="jpmap\hokkaido.osm.pbf" --rea...
> osmosis --read-pbf file="jpmap\honshu.osm.pbf" --read-...
> osmosis --read-pbf file="jpmap\shikoku.osm.pbf" --read...
> osmosis --read-pbf file="jpmap\kyushu.osm.pbf" --read-...
8個の場合は,~
> osmosis --read-pbf file="jpmap\hokkaido.osm.pbf" --rea...
> osmosis --read-pbf file="jpmap\tohoku.osm.pbf" --read-...
> osmosis --read-pbf file="jpmap\kanto.osm.pbf" --read-p...
> osmosis --read-pbf file="jpmap\chubu.osm.pbf" --read-p...
> osmosis --read-pbf file="jpmap\kinki.osm.pbf" --read-p...
> osmosis --read-pbf file="jpmap\chugoku.osm.pbf" --read...
> osmosis --read-pbf file="jpmap\shikoku.osm.pbf" --read...
> osmosis --read-pbf file="jpmap\kyushu.osm.pbf" --read-...
でマージした。~
とにかく時間がかかる。4分割の場合は全部マージすると大体27...
//8分割(本州除く)だと全体では6時間ぐらいで作成出来た。
こうやって,北海道(hokkaido.osm.map),本州(honshu.osm....
北海道(hokkaido.osm.map),本州(honshu.osm.map),四国...
&ref(japan_map.png);&ref(japan_map2.png);
上記の作業をbatファイルにして,定期的に自動で日本のベクタ...
作成されたMapsforge形式のベクター地図はバージョンV3となる...
** テーマthemeファイル
[[Mapsforgeのthemeの仕様はこちら>https://github.com/mapsf...
Locus Mapではdpiが違う端末でも表示の互換性が取れるようにM...
上記で作成したLocus Map用の日本のベクター地図は,独自のta...
Locus MapのmapsVector/_themesフォルダーにこのファイル(zi...
* POIデータの作成
POI(Point of Interest)は地図上の特定のポイント情報のこ...
[[Mapsforgeライブラリ>https://github.com/mapsforge/mapsfo...
POIとして抽出するOpenStreetMapのタグ要素としては,nodeとw...
なのでrelationで設定されているところ(関西国際空港など)...
OpenStreetMapを編集してrelationだけのオブジェクトには,no...
LoMapsのオフラインPOI DBではrelationも処理されているよう...
POI DBファイルを作成するのには,mapファイル作成する時にも...
抽出するPOIは,&ref(poi-mapping.xml);ファイル(tagsディレ...
以下のようにしてosmosisコマンドで.poiファイルを作成した。~
4個に分割する場合,
> cd poi
> osmosis --read-pbf file="..\jpmap\hokkaido.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\honshu.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\shikoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kyushu.osm.pbf" --...
8個に分割する場合は,
> cd poi
> osmosis --read-pbf file="..\jpmap\hokkaido.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\tohoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kanto.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\chubu.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kinki.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\chugoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\shikoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kyushu.osm.pbf" --...
これで,北海道(hokkaido.osm.poi),本州(honshu.osm.poi...
** Mapsforge POI DBをLocus MapのオフラインPOI DBに変換する
Locus Mapでは残念ながらMapsforge POI DBをオフラインPOI DB...
MapsforgeライブラリでPOI DBがサポートされる前から,Locus ...
またこのLoMapsの一部であるオフラインPOI DBは,住所検索用...
LoMapsのオフラインPOI DBのフォーマット仕様は公開されてい...
また,Mapsforge POI DBをLocus Mapのoffline POI DBに変換す...
このおかげかどうかはわからないが[[OpenAndroMaps>http://ww...
Locus MapのオフラインPOI DB構造を,&ref(init.sql);ファイ...
4個の場合は,
> python poiconverter.py -if poi -om create hokkaido.osm...
> python poiconverter.py -if poi -om create honshu.osm.p...
> python poiconverter.py -if poi -om create shikoku.osm....
> python poiconverter.py -if poi -om create kyushu.osm.p...
8個の場合は,
> python poiconverter.py -if poi -om create hokkaido.osm...
> python poiconverter.py -if poi -om create tohoku.osm.p...
> python poiconverter.py -if poi -om create kanto.osm.po...
> python poiconverter.py -if poi -om create chubu.osm.po...
> python poiconverter.py -if poi -om create kinki.osm.po...
> python poiconverter.py -if poi -om create chugoku.osm....
> python poiconverter.py -if poi -om create shikoku.osm....
> python poiconverter.py -if poi -om create kyushu.osm.p...
とした。~
北海道(hokkaido.osm.db),本州(honshu.osm.db),四国(s...
北海道(hokkaido.osm.db),本州(honshu.osm.db),四国(s...
* GeoNamesのデータを住所検索に使う
上記で作成したオフラインPOI DBファイルでは住所検索が出来...
GeoNamesの[[ここから>http://download.geonames.org/export/...
JP.zipを解凍してJP.txtをLocus Mapのdata/geoNamesフォルダ...
これでLocus Mapの検索を開き「GenoNamesとGNSでオフライン検...
* 作成したベクター地図
Windowsでも動作する[[Cruiser>https://wiki.openstreetmap.o...
Mapsforgeライブラリでの地図の標示は,非常に高速に処理され...
作成した日本のベクター地図(2023/07頃から10m等高線にした...
//[[Locus(Android):locus-actions://https/yueno.net/nextcl...
* 使用したツール
- [[osmctools>./osmctools]]~
OpenStreetMapの数種類ある地図データ形式を相互に変換・デー...
- [[osmosis>./osmosis]]~
OpenStreetMapの地図データ(PostgreSQLのDB)を,いろいろ処...
このツールは,プラグインを使って機能を拡張できるように設...
- [[phyghtmap>./phyghtmap]]~
NASA SRTMデータやGeoTIFFデータからOpenStreetMap用の等高線...
- [[poi_converter>./poi_converter]]~
Mapsforge POI DBファイルをLocus Map用offline POI DBファイ...
- [[QGIS>/PC/地図/QGIS]]~
地理空間情報データの閲覧,編集,分析なんかが出来るオープ...
Windowsマシンでは,QGISに含まれている[[gdal>https://gdal....
Linuxマシンでは,[[gdal>https://gdal.org/index.html]]をイ...
- &ref(shape2osm.py,,shape2osm.py(Python3用に修正した));~
Shapeフォーマットの外形データを,OpenStreetMapの.osmファ...
終了行:
* Locus Map
[[Locus Map>https://www.locusmap.app/]]はAndroid端末で動...
03/15/2021にLocus Mapの後継アプリの[[Locus Map 4>https://...
旧Locus Map/旧Locus Map Pro(現Locus Map 3 Classic)は,~
- 多くのオンライン地図・オフライン地図に対応。~
オフライン地図にはOpenStreetMapベースの[[Mapsforge>https:...
他にもGarminのベクター地図の.imgファイルもそのまま使える。~
日本でのオンライン地図には[[国土地理院のGSI Maps>https://...
オンライン地図はキャッシュすることが出来,キャッシュ済み...
また,複数の地図を重ねて表示もできる。~
- 地図表示が高速。~
Mapsforge形式のベクター地図では,スクロールしたりしても全...
- Mapsforge形式のベクター地図ではテーマ(Theme)で表示をカ...
- 等高線や起伏データの表示。~
- 各国語表示・音声出力対応。~
もちろん,日本語表示・日本語音声ができる。~
- 多くの座標タイプ・単位に対応。~
MGRSにも対応している。~
- オフラインPOI,お気に入りポイント対応,Googleプレイス,...
オフラインPOIデータは,SQLite形式な独自DBフォーマット(公...
LoMaps(Lucasストアでの有料のベクター地図)を購入すると,...
- 座標・住所・連絡先検索が可能。~
オフライン検索にはLoMapsのオフラインPOI DBを利用した住所...
オフラインでの住所検索には[[GeoNames>http://www.geonames....
オンライン検索にはGoogle等が使用できる。~
- トラックの保存やインポート・エクスポート機能。~
GPSロガーとしても使用可能。時刻・標高付きGPXファイルを保...
あらかじめ,トラックを作成・編集することも出来る。~
- オンライン・オフラインでのルート検索,音声ガイド付きナ...
ルート検索はオフライン(Brouter)でも可能。~
電車・バス利用のルート検索には対応していない。~
カーナビ,自転車,徒歩ナビ。ポイントへの接近通知対応。~
- ジオキャッシングで使いやすい機能搭載。~
- サイクルコンピューター機能。~
-- BluetoothやANT+での各種センサーとの接続対応。
-- ダッシュボード機能がある。~
サイクルコンピュータのような表示のサポート。~
- プラグインで機能が追加できる。~
- 知り合いとの位置共有。
のような機能・特徴があり,使いやすく高機能な地図アプリ。~
私はLocus Map Proを購入して使用している。~
* Locus Map用の地図
[[Locus Map>http://www.locusmap.eu/]]でオフラインで使用で...
Locus Map Free(無料版)でもこのLoMapsからファイル3個まで...
実は初期のLoMapsのベクター日本地図はところどころデータが...
このことを指摘した後,''2015/12月以降のダウンロード出来る...
また,このLoMapsは概ね3-4ヶ月毎に地図が更新されるのだが,...
LoMapsをダウンロードすると,オフラインで使えるPOI DBや住...
オフラインPOI DBのフォーマット仕様は公開してもらいたいな...
LoMapsは[[OpenStreetMap>https://www.openstreetmap.org]]の...
** 無料で使用できるベクター地図
有料のLoMaps以外で[[Locus Map>http://www.locusmap.eu/]]で...
- ''[[Mapsforge Download Server>http://download.mapsforge...
Mapsforgeライブラリの開発者が[[OpenStreetMap>http://www.o...
残念ながら,このMapsforgeの地図には等高線データは含まれて...
v3マップでは日本語ではなく英語表示だったけど,v4・v5マッ...
- %%''[[locusvectormaps>http://www.locusvectormaps.com/]]...
%%OpenStreetMapから変換した日本全体のベクター地図がダウン...
%%残念ながら,こちらも等高線データは含まれていない &worri...
%%問題としては,海が青く表示されない &worried; %%
- [[vector.city>https://vector.city/]]~
OpenStreetMapから変換した日本のベクター地図がダウンロード...
%%ダウンロードできる日本のベクター地図は,ファイルが正常...
問題としては,海が青く表示されない &worried; ~
- ''[[OpenAndroMaps>http://www.openandromaps.org/en/]]''~
OpenStreetMapから変換した日本全体のベクター地図がダウンロ...
しかもこのデータは,SRTMのデータから作成された20mの等高線...
しかも2020/07ぐらいから,Locus Mapで使用できるオフラインP...
この日本全体のベクター地図は一つの地図ファイルで分割され...
''これを無料で提供されているのには頭が下がります。'' 少し...
更新頻度は3ヶ月から4ヶ月ぐらい。~
- [[AndroidMaps>https://www.androidmaps.co.uk/]]~
OpenStreetMapから変換した日本のベクター地図がダウンロード...
残念ながら,このベクター地図には等高線データは含まれてい...
- [[Kurviger>https://download.kurviger.de/]]~
OpenStreetMapから変換した日本のベクター地図がダウンロード...
[[Kurviger>https://kurviger.de/en]]はオートバイ用の経路検...
残念ながら,このベクター地図には等高線データは含まれてい...
通常は,OpenAndroMapsのベクター地図を利用すれば問題無いと...
ところどころ(ローマ字)表記されるところがある。ただ,こ...
* OpenStreetMapから日本のベクター地図を作成
上記のサイトから提供されているOpenStreetMapのデータを変換...
そこで自前でOpenStreetMapの地図データからLocus Mapで使用...
** OpenStreetMapの日本の地図データを用意する
まず,[[こちらのページ>/PC/地図/OpenStreetMap]]に書いてあ...
この日本の地図データを[[Locus Map>http://www.locusmap.eu/...
Mapsforge形式のベクター地図にはmapsforgeライブラリでoptio...
- V3~
言語タグは無く,OpenStreetMapのデフォルトの言語タグのみ使...
- V4~
マルチ言語対応。~
osmosis/Mapsforge Map-Writer pluginでpreferred-languages...
--preferred-languages=ja,en
- V5~
タグに変数が使用できるようになった。~
osmosis/Mapsforge Map-Writer pluginでtag-values=trueオプ...
--tag-values=true
このページで作成しているMapsforge形式のベクター地図は,V3...
** 日本の地図データを小さい領域に分割する
日本全体の地図データは大きなファイルになってしまって,ツ...
Locusストアで提供されているLoMaps日本地図も,北海道・本州...
そこで,Locus MapやOsmAnd/OsmAnd+と同じように北海道・本州...
まず日本全体の地図データ(japan-latest.osm.pbf)を北海道...
日本全体の地図を4個(or 8個)に分割するため,領域を定義し...
この[[polyファイル>http://wiki.openstreetmap.org/wiki/Osm...
日本全体の地図データの.pbfファイルはバイナリデータに圧縮...
日本全体の地図データを単純に4個に分割する場合は以下のよう...
> cd jpmap
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
日本全体の地図データを単純に8個に分割する場合は以下のよう...
> cd jpmap
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
> osmconvert --complex-ways japan-latest.osm.pbf -B=..\p...
分割するのにオブジェクト・タグが境界にまたがっている場合...
*** 不要なタグ情報を削除してサイズを小さくして分割する
上記はOpenStreetMapの日本全体の地図データをそのまま分割す...
地図データを編集しない場合は,Locus Mapだと不要なタグはTh...
日本全体の地図データの.pbfファイルはバイナリデータに圧縮...
のosmconvertを使って[[osmfilter>https://wiki.openstreetma...
まず,日本全体のpbf地図データをo5mフォーマットに変換する。~
> osmconvert japan-latest.osm.pbf -o=japan-latest.o5m
その後,4個に分割する。~
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.osm -B=..\poly\...
8個に分割するばあいは,~
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
> osmconvert --complex-ways japan-latest.osm -B=..\poly\...
> osmconvert --complex-ways japan-latest.o5m -B=..\poly\...
とする。~
上記と同様に--complex-waysをつけている。
そして,いらないタグ(他の言語,電線とか)を[[osmfilter>h...
4個に分割している場合は,
> osmfilter hokkaido.o5m --parameter-file=del.txt > hokk...
> osmfilter honshu.o5m --parameter-file=del.txt > hons...
> osmfilter shikoku.o5m --parameter-file=del.txt > shik...
> osmfilter kyushu.o5m --parameter-file=del.txt > kyus...
として,8個に分割している場合は,
> osmfilter tohoku.o5m --parameter-file=del.txt > toho...
> osmfilter kanto.o5m --parameter-file=del.txt > kant...
> osmfilter chubu.o5m --parameter-file=del.txt > chub...
> osmfilter kinki.o5m --parameter-file=del.txt > kink...
> osmfilter chugoku.o5m --parameter-file=del.txt > chug...
> osmfilter shikoku.o5m --parameter-file=del.txt > shik...
> osmfilter kyushu.o5m --parameter-file=del.txt > kyus...
とした。~
ところどころ,名前に「ほげほげ(英語)」のように登録されて...
これは,地図データを.osmファイルに変換してからperlを使っ...
4個の場合は,
> osmconvert hokkaido_temp.o5m -o=hokkaido_temp.osm
> osmconvert honshu_temp.o5m -o=honshu_temp.osm
> osmconvert shikoku_temp.o5m -o=shikoku_temp.osm
> osmconvert kyushu_temp.o5m -o=kyushu_temp.osm
> perl -p -e 's/\(.+?\)//g;' hokkaido_temp.osm > hokkaid...
> perl -p -e 's/\(.+?\)//g;' honshu_temp.osm > honshu....
> perl -p -e 's/\(.+?\)//g;' shikoku_temp.osm > shikoku...
> perl -p -e 's/\(.+?\)//g;' kyushu_temp.osm > kyushu....
として,8個の場合は,
> osmconvert hokkaido_temp.o5m -o=hokkaido_temp.osm
> osmconvert tohoku_temp.o5m -o=tohoku_temp.osm
> osmconvert kanto_temp.o5m -o=kanto_temp.osm
> osmconvert chubu_temp.o5m -o=chubu_temp.osm
> osmconvert kinki_temp.o5m -o=kinki_temp.osm
> osmconvert chugoku_temp.o5m -o=chugoku_temp.osm
> osmconvert shikoku_temp.o5m -o=shikoku_temp.osm
> osmconvert kyushu_temp.o5m -o=kyushu_temp.osm
> perl -p -e 's/\(.+?\)//g;' hokkaido_temp.osm > hokkaid...
> perl -p -e 's/\(.+?\)//g;' tohoku_temp.osm > tohoku....
> perl -p -e 's/\(.+?\)//g;' kanto_temp.osm > kanto.osm
> perl -p -e 's/\(.+?\)//g;' chubu_temp.osm > chubu.osm
> perl -p -e 's/\(.+?\)//g;' kinki_temp.osm > kinki.osm
> perl -p -e 's/\(.+?\)//g;' chugoku_temp.osm > chugoku...
> perl -p -e 's/\(.+?\)//g;' shikoku_temp.osm > shikoku...
> perl -p -e 's/\(.+?\)//g;' kyushu_temp.osm > kyushu....
とした。~
こんなようにして,(英語)を削除した。ちょっと地図データの...
これで,ベクター日本地図のhakkaido.osm(北海道),honshu....
.osmファイルはテキストファイル(xml)で,日本全体だと24Gb...
この後,.osmを.pbf(圧縮ファイル)に変換しておく。~
4個の場合は,
> osmconvert hokkaido.osm -o=hokkaido.osm.pbf
> osmconvert honshu.osm -o=honshu.osm.pbf
> osmconvert shikoku.osm -o=shikoku.osm.pbf
> osmconvert kyushu.osm -o=kyushu.osm.pbf
> del *.osm
8個の場合は,
> osmconvert tohoku.osm -o=tohoku.osm.pbf
> osmconvert kanto.osm -o=kanto.osm.pbf
> osmconvert chubu.osm -o=chubu.osm.pbf
> osmconvert kinki.osm -o=kinki.osm.pbf
> osmconvert chugoku.osm -o=chugoku.osm.pbf
> osmconvert shikoku.osm -o=shikoku.osm.pbf
> osmconvert kyushu.osm -o=kyushu.osm.pbf
> del *.osm
で変換する。
** SRTMのデータから等高線地図を作成
日本のOpenStreatMapから各地域の地図データに分割は出来たん...
ハイキングやちょっとした山登りをするときには等高線が見れ...
日本の等高線データを得られるサイト。~
- 国土地理院~
[[国土地理院>http://www.gsi.go.jp/kiban/index.html]]から...
ファイルフォーマットは,JPGIS(GML)ということだが・・・ ...
変換する方法がわかったんで試しに四国の10m等高線地図を作成...
- NASA SRTM~
[[Shuttle Radar Topography Mission(SRTM)>http://www2.jp...
[[SRTM3 Version3(3秒/90m 全世界)>http://e4ftl01.cr.usgs...
実際の地形データは(データがあるサイトにより)hgtファイル...
また,[[http://dwtkns.com/srtm30m/]]では,位置を選択してS...
NASA SRTMのデータをダウンロードして,さらにOpenStreetMap...
*** [[srtm2osm>https://github.com/mibe/Srtm2Osm]]
まず見つけたツールがsrtm2osm version 1.12(最新バージョン...
[[OpenStreetMapのwiki>https://wiki.openstreetmap.org/wiki...
srtm2osmのオプションの-bounds1に日本の左下の緯度・経度と...
日本全体の等高線データを作りたいので緯度・軽度を1°毎の矩...
しょうがないので以下のようにして1つの.osmファイルを作成し...
> cd srtm
> srtm2osm -bounds1 24 122 46 146 -step 10 -cat 100 50 -...
*** [[phyghtmap>./phyghtmap]]
次に見つけたのが[[phyghtmap>./phyghtmap]] version 1.42(p...
Pythonで動くのでWindowsでもLinuxでも使える。~
phyghtmapを使用するとSRTMのデータをダウンロードして,その...
日本の領域指定にはpolyファイルで指定できるので,&ref(japa...
このツールでもやはり129個のデータをダウンロード(hgtディ...
詳細データのSRTM1 Version 3(1秒/30m)をダウンロードする...
> cd srtm
// > phyghtmap --polygon=..\poly\japan.poly --output-pref...
> phyghtmap --polygon=..\poly\japan.poly --output-prefix...
> move japan_srtm_lon122.56_153.89lat21.21_45.80_srtm3.o...
// > mv japan_srtm_lon122.56_153.89lat21.21_45.80_srtm3v3...
> osmconvert japan_srtm.osm -o=japan_srtm.pbf
> del japan_srtm.osm
USER_IDとPASSWORDはphyghtmapの''最初の起動時のみ必要。''~
--step=20で20mの等高線に,--line-cat=500,100で500m/1...
--step=10 --line-cat=100,50とすれば10mの等高線にも出...
--write-timestampオプションを指定しないと,後で[[osm...
また,--no-zero-contourで0mの等高線を作成しないよう...
これで,なんとかハイキング用に使える20m(または10m)での...
ただ出来上がった等高線地図には,おかしな等高線がたくさん...
srtm2osmでダウンロードした.hgtファイルのデータは大丈夫み...
これでやっと,日本の等高線データ&ref(japan_srtm.pbf);(20...
*** 日本の等高線データを各地域に分割する
日本の等高線データjapan_srtm.pbfから地図データと同様に4個...
4個の場合は,
> osmconvert japan_srtm.pbf -B=..\poly\Hokkaido.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Honshu.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Shikoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kyushu.poly -o=...
8個の場合は,
> osmconvert japan_srtm.pbf -B=..\poly\Hokkaido.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Tohoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kanto.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Chubu.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kinki.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Chugoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Shikoku.poly -o=...
> osmconvert japan_srtm.pbf -B=..\poly\Kyushu.poly -o=...
として,作成した。~
一度作成しておけば,後は地図と等高線をマージすれば等高線...
ちなみに,ダウンロードした.hgtファイルをLocus/data/srtmフ...
- 2015SRTMデータ(3s/90m): &ref(hgt2015.zip);~
- 2022SRTMデータ(3s/90m): &ref(hgt3v3_2022.zip);~
- 2022SRTMデータ(1s/30m): &ref(hgt1v3_2022.zip);~
** 海を青くする地図を作成
OpenStreetMapの地図データは陸地と海岸の境界線(natural=co...
このためMapsforge形式のベクター地図を作成する時に何もこの...
Locus Mapで使われているMapsforgeの表示ライブラリでは,The...
なので海を青く表示するには,なんとかして陸地と海岸の境界...
''このために正しい方法かどうかはわからないが,以下のよう...
このやり方の場合,日本の陸地や海の領域を特定する地形デー...
*** 海部分のデータを作成
> cd sea
このディレクトリに,海を特定した上で'' key='natural' valu...
同様にして,&ref(hokkaido_s.osm); &ref(tohoku_s.osm); &re...
*** 陸地部分のデータを作成
[[OpenStreetMap Data>https://osmdata.openstreetmap.de/]]...
> wget https://osmdata.openstreetmap.de/download/land-po...
> unzip land-polygons-split-4326.zip
// > unzip -p land-polygons-split-4326.zip land-polygons-...
// > 7z x -y -so -i!land-polygons-split-4326\land_polygon...
zipファイルを解凍すると,''land_polygons.shp''という世界...
> ogr2ogr -overwrite -progress -skipfailures -clipsrc 12...
その後,&ref(shape2osm.py);(自分でPython3で動くように修...
> python shape2osm.py -l japan_ns -o 10000000 japan.shp
これで,日本全体の陸地の外形データのjapan_ns.osmが作成さ...
そして,日本全体の外形データから,北海道,本州,四国,九...
ツールには[[OpenStreetMapのwiki>https://wiki.openstreetma...
4個の場合は,
> osmosis --read-xml file="japan_s.osm" --read-xml file=...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Hok...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Hon...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Shi...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kyu...
8個の場合は,
> osmosis --read-xml file="japan_s.osm" --read-xml file=...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Toh...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kan...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Chu...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kin...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Chu...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Shi...
> osmconvert --complex-ways japan_ns2.osm -B=..\poly\Kyu...
で作成した。
*** 海(xxxx_s.osm)と陸地部分(xxxx_ns.osm)をマージする
海(xxxx_s.osm)と陸地部分(xxxx_ns.osm)をマージして,xx...
4個の場合は,
> osmosis --read-xml file="hokkaido_s.osm" --read-xml fi...
> osmosis --read-xml file="honshu_s.osm" --read-xml fi...
> osmosis --read-xml file="shikoku_s.osm" --read-xml fi...
> osmosis --read-xml file="kyushu_s.osm" --read-xml fi...
8個の場合は,
> osmosis --read-xml file="hokkaido_s.osm" --read-xml fi...
> osmosis --read-xml file="tohoku_s.osm" --read-xml fi...
> osmosis --read-xml file="kanto_s.osm" --read-xml fi...
> osmosis --read-xml file="chubu_s.osm" --read-xml fi...
> osmosis --read-xml file="kinki_s.osm" --read-xml fi...
> osmosis --read-xml file="chugoku_s.osm" --read-xml fi...
> osmosis --read-xml file="shikoku_s.osm" --read-xml fi...
> osmosis --read-xml file="kyushu_s.osm" --read-xml fi...
で作成する。~
出来たosmファイルをpbfファイルに変換しておく。~
4個の場合は,
> osmconvert hokkaido_sea.osm -o=hokkaido_sea.pbf
> osmconvert honshu_sea.osm -o=honshu_sea.pbf
> osmconvert shikoku_sea.osm -o=shikoku_sea.pbf
> osmconvert kyushu_sea.osm -o=kyushu_sea.pbf
8個の場合は,
> osmconvert hokkaido_sea.osm -o=hokkaido_sea.pbf
> osmconvert tohoku_sea.osm -o=tohoku_sea.pbf
> osmconvert kanto_sea.osm -o=kanto_sea.pbf
> osmconvert chubu_sea.osm -o=chubu_sea.pbf
> osmconvert kinki_sea.osm -o=kinki_sea.pbf
> osmconvert chugoku_sea.osm -o=chugoku_sea.pbf
> osmconvert shikoku_sea.osm -o=shikoku_sea.pbf
> osmconvert kyushu_sea.osm -o=kyushu_sea.pbf
で作成した。~
やっと,陸地は<tag k="natural" v="nosea" />が,海の部分は...
** 日本の地図と等高線と海・陸地をマージして完成
上で作成した各場所のベクター地図とベクター等高線地図,及...
変換ツールには,[[osmosis>./osmosis]]と[[Mapsforge Map-Wr...
osmosis/Mapsforge Map-Writer pluginで日本の地図を処理する...
使用するメモリの設定はosmosisの''bin/osmosis.bat''で,~
set JAVACMD_OPTIONS=-Xms5G -Xmx5G
と設定して,使用するNotePCが8GBのRAMが搭載されているので5...
しかしMapsforge Map-Writer pluginを使って8GのRAMを搭載し...
搭載メモリが少ない場合は,オプションの''type=hd''を使うと...
最近の日本全体や本州のmap地図を作成する場合は,RAMが16G搭...
どうもzoom interval 1の書き出し時にエラー(java.nio.Buffe...
これは,Mapsforge Map-Writer pluginでのオブジェクト書き出...
しょうがないので,tag mappingファイル(tags.xml)を編集し...
''等高線が表示されるように,またさらにいくつか表示される...
以下のようにして(本州だけは''type=hd''オプションを使って...
4個の場合は,~
> osmosis --read-pbf file="jpmap\hokkaido.osm.pbf" --rea...
> osmosis --read-pbf file="jpmap\honshu.osm.pbf" --read-...
> osmosis --read-pbf file="jpmap\shikoku.osm.pbf" --read...
> osmosis --read-pbf file="jpmap\kyushu.osm.pbf" --read-...
8個の場合は,~
> osmosis --read-pbf file="jpmap\hokkaido.osm.pbf" --rea...
> osmosis --read-pbf file="jpmap\tohoku.osm.pbf" --read-...
> osmosis --read-pbf file="jpmap\kanto.osm.pbf" --read-p...
> osmosis --read-pbf file="jpmap\chubu.osm.pbf" --read-p...
> osmosis --read-pbf file="jpmap\kinki.osm.pbf" --read-p...
> osmosis --read-pbf file="jpmap\chugoku.osm.pbf" --read...
> osmosis --read-pbf file="jpmap\shikoku.osm.pbf" --read...
> osmosis --read-pbf file="jpmap\kyushu.osm.pbf" --read-...
でマージした。~
とにかく時間がかかる。4分割の場合は全部マージすると大体27...
//8分割(本州除く)だと全体では6時間ぐらいで作成出来た。
こうやって,北海道(hokkaido.osm.map),本州(honshu.osm....
北海道(hokkaido.osm.map),本州(honshu.osm.map),四国...
&ref(japan_map.png);&ref(japan_map2.png);
上記の作業をbatファイルにして,定期的に自動で日本のベクタ...
作成されたMapsforge形式のベクター地図はバージョンV3となる...
** テーマthemeファイル
[[Mapsforgeのthemeの仕様はこちら>https://github.com/mapsf...
Locus Mapではdpiが違う端末でも表示の互換性が取れるようにM...
上記で作成したLocus Map用の日本のベクター地図は,独自のta...
Locus MapのmapsVector/_themesフォルダーにこのファイル(zi...
* POIデータの作成
POI(Point of Interest)は地図上の特定のポイント情報のこ...
[[Mapsforgeライブラリ>https://github.com/mapsforge/mapsfo...
POIとして抽出するOpenStreetMapのタグ要素としては,nodeとw...
なのでrelationで設定されているところ(関西国際空港など)...
OpenStreetMapを編集してrelationだけのオブジェクトには,no...
LoMapsのオフラインPOI DBではrelationも処理されているよう...
POI DBファイルを作成するのには,mapファイル作成する時にも...
抽出するPOIは,&ref(poi-mapping.xml);ファイル(tagsディレ...
以下のようにしてosmosisコマンドで.poiファイルを作成した。~
4個に分割する場合,
> cd poi
> osmosis --read-pbf file="..\jpmap\hokkaido.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\honshu.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\shikoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kyushu.osm.pbf" --...
8個に分割する場合は,
> cd poi
> osmosis --read-pbf file="..\jpmap\hokkaido.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\tohoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kanto.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\chubu.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kinki.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\chugoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\shikoku.osm.pbf" --...
> osmosis --read-pbf file="..\jpmap\kyushu.osm.pbf" --...
これで,北海道(hokkaido.osm.poi),本州(honshu.osm.poi...
** Mapsforge POI DBをLocus MapのオフラインPOI DBに変換する
Locus Mapでは残念ながらMapsforge POI DBをオフラインPOI DB...
MapsforgeライブラリでPOI DBがサポートされる前から,Locus ...
またこのLoMapsの一部であるオフラインPOI DBは,住所検索用...
LoMapsのオフラインPOI DBのフォーマット仕様は公開されてい...
また,Mapsforge POI DBをLocus Mapのoffline POI DBに変換す...
このおかげかどうかはわからないが[[OpenAndroMaps>http://ww...
Locus MapのオフラインPOI DB構造を,&ref(init.sql);ファイ...
4個の場合は,
> python poiconverter.py -if poi -om create hokkaido.osm...
> python poiconverter.py -if poi -om create honshu.osm.p...
> python poiconverter.py -if poi -om create shikoku.osm....
> python poiconverter.py -if poi -om create kyushu.osm.p...
8個の場合は,
> python poiconverter.py -if poi -om create hokkaido.osm...
> python poiconverter.py -if poi -om create tohoku.osm.p...
> python poiconverter.py -if poi -om create kanto.osm.po...
> python poiconverter.py -if poi -om create chubu.osm.po...
> python poiconverter.py -if poi -om create kinki.osm.po...
> python poiconverter.py -if poi -om create chugoku.osm....
> python poiconverter.py -if poi -om create shikoku.osm....
> python poiconverter.py -if poi -om create kyushu.osm.p...
とした。~
北海道(hokkaido.osm.db),本州(honshu.osm.db),四国(s...
北海道(hokkaido.osm.db),本州(honshu.osm.db),四国(s...
* GeoNamesのデータを住所検索に使う
上記で作成したオフラインPOI DBファイルでは住所検索が出来...
GeoNamesの[[ここから>http://download.geonames.org/export/...
JP.zipを解凍してJP.txtをLocus Mapのdata/geoNamesフォルダ...
これでLocus Mapの検索を開き「GenoNamesとGNSでオフライン検...
* 作成したベクター地図
Windowsでも動作する[[Cruiser>https://wiki.openstreetmap.o...
Mapsforgeライブラリでの地図の標示は,非常に高速に処理され...
作成した日本のベクター地図(2023/07頃から10m等高線にした...
//[[Locus(Android):locus-actions://https/yueno.net/nextcl...
* 使用したツール
- [[osmctools>./osmctools]]~
OpenStreetMapの数種類ある地図データ形式を相互に変換・デー...
- [[osmosis>./osmosis]]~
OpenStreetMapの地図データ(PostgreSQLのDB)を,いろいろ処...
このツールは,プラグインを使って機能を拡張できるように設...
- [[phyghtmap>./phyghtmap]]~
NASA SRTMデータやGeoTIFFデータからOpenStreetMap用の等高線...
- [[poi_converter>./poi_converter]]~
Mapsforge POI DBファイルをLocus Map用offline POI DBファイ...
- [[QGIS>/PC/地図/QGIS]]~
地理空間情報データの閲覧,編集,分析なんかが出来るオープ...
Windowsマシンでは,QGISに含まれている[[gdal>https://gdal....
Linuxマシンでは,[[gdal>https://gdal.org/index.html]]をイ...
- &ref(shape2osm.py,,shape2osm.py(Python3用に修正した));~
Shapeフォーマットの外形データを,OpenStreetMapの.osmファ...
ページ名:
Counter: 0, today: 0, yesterday: 0
Copyright©2008 Yuji Ueno All Rights Reserved.
ログイン
ユーザ名:
パスワード:
IDとパスワードを記憶
パスワード紛失
メインメニュー
ホーム
でぶlog
資料室
最新ページ一覧
全ページ一覧
ヘルプ
フォーラム
お問い合わせ