unvt / kanban

Creative Commons Zero v1.0 Universal
0 stars 0 forks source link

ポイントクラウドを素の Mapbox GL JS と Mapbox Vector Tile で表現する #2

Closed hfu closed 3 years ago

hfu commented 3 years ago

1 の「3. ポイントクラウドをシームレスに Mapbox GL JS で表示できるようにする可能性」の当面の実施案

基本的アイディア

  1. ポイントクラウドを大幅に間引いた、ポリゴンのベクトルタイルを作る。タイルあたりの --maximum-tile-features=2000 (Tippecanoe のデフォルトは 200,000)くらいにする感じで生産する。たぶん、--hilbert もつけるのだろう。ポイントデータからポリゴンにするためには、turf/buffer を使って、turf.buffer(point, 1e-5, { units: 'kilometers', steps: 4 }) とでもするのだろう。これで、10cm の正方形がたくさん入ったベクトルタイルが出来ることになる。
  2. このベクトルタイルをスタイルする際に、height 属性を使って fill-extrusion として立方体のように表現するのだろう。
  3. 結果として、voxel 的な表現にもなろう。

See also

ポリゴンではなくてポイントでタイルを作るアプローチで行った既存のプロジェクトに、 https://github.com/optgeo/pcdb-test がある。

image

https://maputnik.github.io/editor?style=https://optgeo.github.io/pcdb-test/style.json

image

Next actions

UNVT の活動の一環として、@hfu が適宜実験してみることにする。

hfu commented 3 years ago

https://github.com/optgeo/nanadaru-voxel でプロトタイピング中です。

hfu commented 3 years ago

https://optgeo.github.io/nanadaru-voxel/#16.53/34.793533/138.93944/0/45

こんな感じでプロトタイプを作ることができました。

image