タクティカルな方針A
hfu opened this issue · comments
Hidenori commented
データ公開後の最初のスプリントについて、私のタクティカルな方針です。お気軽に助言いただけると嬉しいです。
助言をいただいた場合、個々のテキストに反映していきます。
最初のスプリントの目標
PMTiles に変換して MapLibre GL JS ベースのウェブ地図として見られる状態にする。
生産方針
地図XMLで供給される場合
- 最も主要なデータ項目に限って、最短で雑なやり方で GeoJSON Text Sequence に変換する部分を作る
→ https://github.com/JDA-DM/mojxml2geojson/ のおかげでとても簡単に解決できた。感謝。
GeoJSON で供給される場合
- tippecanoe-json-tool を通して GeoJSON Text Sequence で後段にフィードする
生産単位
- 供給されたままの単位をなるべく生かす
- PMTiles のマージについて答えはないが、シームレスにすることを当座の目標にはせず、シーンごとに生産する
- それをやった上で、バッチサイズを巨大化して試してみることはするかもしれない
処理フロー管理
- 引き続き、基本的に UNIX Pipe を活用する
- ストリームをマージする場合には GNU Parallel を使う
- ストリームをマージしないタスクには task-spooler (ts / tsp) を使う
ベクトルタイル設計方針
- maxzoom は 16 にしてみる。これは国土地理院最適化ベクトルタイルと同じ。
- minzoom はできるだけ小さく引っ張ってみる。8を試してみる。これは、tansei-reentry と同じ。
ベクトルタイルスタイル方針
- ズームを引くと色が淡くなるようにすれば汚くなりにくい気がする。
- 線は細く。おそらく灰色。
使いそうなツール
- tippecanoe
- go-pmtiles
- Ruby
- GNU Parallel
- task-spooler
Taro Matsuzawa aka. btm commented
- proj 平面直角座標系からの変換
- XLST そもそも変換しやすくする???
Keitaroh Kobayashi commented
- https://github.com/JDA-DM/mojxml2geojson/ これが世界座標系に変換しているっぽい
- tippecanoe-json-tool じゃなくても、私は下記のシンプルなスクリプトで結合できました
for file in ./*.geojson; do
jq -cr '.features | .[]' "$file" > "${file%.geojson}.ndgeojson"
done
cat *.ndgeojson > all.ndgeojson
Hidenori commented
PMTiles ファイルはマージできないが、MBTiles ファイルは tile-join で割と簡単にマージできることを思い出しました。
いったん部品を MBtiles ファイルで作っておいて、tile-join で MBtiles ファイルのまま組み上げてから、そのあとで pmtiles convert で PMTiles ファイルにするアプローチを取ると、割と柔軟にファイルが作れます。
Hidenori commented
https://github.com/amx-project/a で一通り実装できたように思うので、クローズします。
ありがとうございました。