Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
新宿ダンジョンを ⼩松 聖 可視化してみた 出典:国⼟交通省・ 国⼟地理院
Slide 2
Slide 2 text
⼩松 聖 @satoshi7190 Satoshi Komatsu フロントエンドエンジニア @satoshi7190 株式会社MIERUNE
Slide 3
Slide 3 text
1.私とMapLibre 2.新宿ダンジョン可視化の話 3.まとめ
Slide 4
Slide 4 text
1.私とMapLibre
Slide 5
Slide 5 text
https://codepen.io/satoshi7190/pen/OJEGqOq MapLibre GL JSで作ったやつ https://codepen.io/satoshi7190/pen/ZERmWMX
Slide 6
Slide 6 text
1⽉号からMapLibre GL JSの防災マップ作成ハンズオンを執筆 Software Design誌 「位置情報エンジニアリングのすすめ」 2023年8⽉号〜連載中 https://gihyo.jp/magazine/SD https://github.com/satoshi7190/sd-2024-5-sample/tree/main
Slide 7
Slide 7 text
地理空間データを可視化するなら ですが・・・
Slide 8
Slide 8 text
最近の私の場合 私
Slide 9
Slide 9 text
https://threejs.org/ ウェブブラウザ(WebGL)で 3Dグラフィックスを描画するための JavaScriptライブラリ。
Slide 10
Slide 10 text
地図ライブラリじゃないよ
Slide 11
Slide 11 text
でも、頑張ればGeoJSONを描画できる 北海道のポリゴンをShapeGeometryで描画する例
Slide 12
Slide 12 text
ラスターも頑張れば描画できる DEMとDSMのスムーズな切り替え ラスタータイルの並びをシャッフル ⾃由な表現ができる
Slide 13
Slide 13 text
https://satoshi7190.github.io/Shinjuku-indoor-threejs-demo/ 新宿ダンジョンを可視化したよ
Slide 14
Slide 14 text
2.新宿ダンジョン可視化の話
Slide 15
Slide 15 text
https://www.jreast.co.jp/estation/stations/866.html 新宿ダンジョンとは • 東京の新宿駅周辺の地下通路 • ⽇本で最も乗降客数が多い駅の⼀つ • 複雑に⼊り組んだ通路が広がっており 迷路のような構造
Slide 16
Slide 16 text
https://satoshi7190.github.io/Shinjuku-indoor-threejs-demo/ DEMO
Slide 17
Slide 17 text
新宿駅周辺屋内地図オープンデータ (令和2年度更新版 国⼟交通省) https://www.geospatial.jp/ckan/dataset/mlit-indoor-shinjuku-r2 2次元データ → 3次元化する
Slide 18
Slide 18 text
新宿駅周辺屋内地図オープンデータ (令和2年度更新版 国⼟交通省) GeoJSON 平⾯直⾓座標系 7系(EPSG6677) ShapeFile ⽇本測地系(EPSG:6668 )
Slide 19
Slide 19 text
新宿駅周辺屋内地図オープンデータ (令和2年度更新版 国⼟交通省) GeoJSON 平⾯直⾓座標系 7系(EPSG6677) GeoJSONの座標点情報から ShapeGeometryで2Dの図形を描く
Slide 20
Slide 20 text
新宿駅周辺屋内地図オープンデータ (令和2年度更新版 国⼟交通省) GeoJSON 平⾯直⾓座標系 7系(EPSG6677) GeoJSONの座標点情報から ShapeGeometryで2Dの図形を描く ※縦に刺さります
Slide 21
Slide 21 text
X Z Y 地理座標のXYZ X 緯度 Y 経度 Z ⾼さ
Slide 22
Slide 22 text
X Z Y X 左から右 Y ⾼さ Z 正⾯から奥 ワールド座標のXYZ(右⼿座標系)
Slide 23
Slide 23 text
X - Z Y X軸を中⼼に90度 反時計回りに回転させる (-Zの⽅向を北と考える) ワールド座標のXYZ(右⼿座標系)
Slide 24
Slide 24 text
そのままの地理座標だと 原点から離れてしまう 中⼼座標(EPSG:6677) [-12035.29, -34261.85,0] 原点 [0,0,0]
Slide 25
Slide 25 text
各座標点 – 中⼼座標 原点 [0,0,0] 地物に対し、中⼼にしたい座標を 各頂点に減算する 中⼼座標(EPSG:6677) [-12035.29, -34261.85,0]
Slide 26
Slide 26 text
原点0に描画される 原点 [0,0,0]
Slide 27
Slide 27 text
No content
Slide 28
Slide 28 text
階層ごとのポリゴンデータがある
Slide 29
Slide 29 text
No content
Slide 30
Slide 30 text
階層データごとに任意の⼀定距離の間隔を空ける Y -Y
Slide 31
Slide 31 text
ExtrudeGeometryで平⾯を押し上げる
Slide 32
Slide 32 text
各平⾯を押し上げて⽴体化
Slide 33
Slide 33 text
の可視化 歩⾏者ネットワーク
Slide 34
Slide 34 text
歩⾏者ネットワーク 歩道、横断歩道、歩⾏者専⽤道路 などのルートを⽰すラインデータ リンクデータ
Slide 35
Slide 35 text
歩⾏者ネットワーク 歩道、横断歩道、歩⾏者専⽤道路 などのルートを⽰すラインデータ リンクデータ 歩⾏者ネットワーク リンクデータに階層情報がありません リンクデータは単⼀レイヤーのみです
Slide 36
Slide 36 text
歩道、横断歩道、歩⾏者専⽤道路 などのルートを⽰すラインデータ リンクデータ ノードデータ 各リンクデータの始点、終点の ポイントデータで階層情報あり 歩⾏者ネットワーク
Slide 37
Slide 37 text
の3次元化 始点 1F 終点 3F 歩⾏者ネットワーク Y -Y
Slide 38
Slide 38 text
始点 1F 終点 3F ? の3次元化 歩⾏者ネットワーク Y -Y
Slide 39
Slide 39 text
2F 中間の点は始点の階層と終点階層の差分階層にした 始点 1F 終点 3F 歩⾏者ネットワークの3次元化 Y -Y
Slide 40
Slide 40 text
2F 始点 1F 終点 3F 歩道 エスカレーター エスカレーター の⽅向 歩⾏者ネットワーク
Slide 41
Slide 41 text
エスカレーターなどの⼀⽅通⾏ 歩道などの両⽅通⾏ の⽅向 歩⾏者ネットワーク
Slide 42
Slide 42 text
シェーダー(GLSL)でアニメーション表現 エスカレーターなどの⼀⽅通⾏ 歩道などの両⽅通⾏ 歩⾏者ネットワークの⽅向
Slide 43
Slide 43 text
基盤地図情報ダウンロードサービス 国⼟地理院 地上の道路 道路データをQGISのバッファ処理と 切抜き処理で円形加⼯ https://fgd.gsi.go.jp/download/menu.php
Slide 44
Slide 44 text
レシピはQiitaとGitHubで公開してます https://qiita.com/satoshi7190/items/23d192372877af75b283 https://github.com/satoshi7190/Shinjuku-indoor-threejs-demo
Slide 45
Slide 45 text
頑張って2次元データを3次元化したけど・・・
Slide 46
Slide 46 text
https://www.geospatial.jp/ckan/dataset/plateau-13104- shinjuku-ku-2023 https://plateauview.mlit.go.jp/ 最近、新宿駅の3次元データが登場したよ 3D都市モデル(Project PLATEAU)新宿区(2023年度)地下モデル LOD4
Slide 47
Slide 47 text
ちなみに・・・
Slide 48
Slide 48 text
MapLibre GL JS のカスタムレイヤーで Three.jsのシーンをマップに統合できる
Slide 49
Slide 49 text
MapLibre GL JS版新宿ダンジョンを作りました(仮) https://satoshi7190.github.io/Shinjuku-indoor-threejs-maplibre-test/
Slide 50
Slide 50 text
3.まとめ
Slide 51
Slide 51 text
地図ライブラリじゃなくても 地理空間データの可視化はできる WebGLやGLSL(シェーダー)の知識があれば 可視化の表現の幅は広がる!!