PLATEAU について、いろいろ調べてみた

PLATEAU（プラトー）とは国土交通省が主導する日本全国の3D都市モデルの整備・オープンデータ化プロジェクトです。

https://www.mlit.go.jp/plateau/

オープンデータ化と、おそらく次いで発表されてくるであろうオープンソース化について、調べてみたことを整理整頓してみました。2021年3月末現在。

# 簡単な経緯

以前より、全国的な3D都市モデルの整備等については、内閣府地方創生推進事務局の「i-都市再生」として進められていたようです。

>i-都市再生とは
◆まちづくりの計画や効果を３Ｄの地図によって「見える化」
する情報基盤（骨太方針：経済財政運営と改革の基本方針 2018）
◆ＶＲ技術や地球地図、ビッグデータ等を活用し、都市再生に
ついての空間的、数値的な理解が直感的に得られる、見える
化情報基盤（都市再生に取り組む基本的考え方 平成30年4月26日）
◆まちづくりの課題や効果、将来像を、地理情報やVR技術等を
用いて住民や投資家等に対して分かりやすく示す都市再生の
見える化情報基盤（まち・ひと・しごと創生基本方針 2018）

その後スマートシティという言葉もでてきたり、いろいろと発展する中で、3D都市モデル部分は、PLATEAUプロジェクトと切り出され、国土交通省が主管されるようになったのかしら？

# オープンデータ化

2021年3月26日(金)に、東京23区の3D都市モデルが公開されました。

こちらでダウンロードいただけます。

https://www.geospatial.jp/ckan/dataset/plateau


おおくは LOD1, 大手町や新宿など一部はLOD2のテクスチャつきで発表されているようです。

CityGML でいう LOD とは、Level of Detail の略で、LOD0 から LOD4 まで定義されています。

ざっくりと表現すると、

LOD1 は、建物が四角い豆腐のようなモデル。
LOD2 は、屋根の形状も再現されたモデル。

です。

ここで注意しておきたいのは、PLATEAU プロジェクトは、ただポリゴンを準備するだけのプロジェクトではないということです。

東京23区の建物のポリゴン情報がオープンデータ化された！
3D地図をビジュアルに表現できるようになる。
リアリティがあるゲームとかつくれそうだ！！

という発想ももちろん楽しいですね。

## 3D都市モデルとはポリゴンのことだけじゃない

ただ、それだけじゃない！！ポリゴンだけじゃない！！
ということを強くここに書いておきます。自分自身へも言い聞かせるために。

今回のPLATEAUプロジェクトは、建物のポリゴンひとつひとつに、属性情報が付加されていることに強みがあります。

属性情報とは、建物ひとつひとつが、

+ 木造か鉄筋か
+ 商業施設か工業施設か、あるいは宗教施設か
+ 洪水が想定されたとき、浸水しそうかどうか

このような情報の整備も「見た目の3Dポリゴン」とともにすすめられているのです。

これらをもちいて、防災予測につなげたり、あらたなスマートシティの基盤としても活用されることを想定されているのです。





# オープンソース化

PLATEAU プロジェクト は、GitHub にレポジトリが用意され始めています。

https://github.com/Project-PLATEAU

正式なアナウンスはまだですし、ざっと拝見したところ整備が完了しているようにみうけられるレポジトリもあれば、まだ整備中のものもあるようです。

おそらく、数か月以内に、オープンソース化についても発表があるのではないでしょうか。

CityGML の変換機能や、データの整合性をチェックする環境などが用意されていますが、やはり興味をひかれたのが、PLATEAU Viewer です。ここではとくに、PLATEAU View について整理整頓してみます。

## PLATEAU View

まだアナウンスはありませんが、とりあえずのレポジトリはこちらのようです。

https://github.com/Project-PLATEAU/PLATEAU-VIEW

基盤として活用されているのは、CesiumJS および TerriaJS です。

https://cesium.com/

http://terria.io/

Cesium という、（超手抜きでわかりやすく表現すると）Google Earth ような３D地球儀上でいろいろプログラミングできるような仕組みがあって、それにさらにデータ属性関連などを表現しやすい仕組みを追加し Wrap したのが、terria(JS) です。

ですから、PLATEAU View は、terriaJS を通じて CesiumJS を利用していることになります。

なお、terriaJS も CesiumJS もオープンソース化されています。

terriaJS のレポジトリをみてみると、branch main は、バージョン7 のようです。そして、かなり以前より branch next で バージョン 8 (V8 と表記されていることが多い）の開発がすすんでいます。

PLATEAU View は、どちらをベースにしているかというと、どうやら V8 のようです。

V8 は、この数か月でも頻繁にアップデートされています。まだ beta 版的な状態でしょうか。

国土交通省関連プロジェクトで、オープンソース化することを未来に見据えながら、オープンソース化されている terriaJS にがっつりのっかりすすめている PLATEAU View をいざリリースし始めたら、元となった terriaJS が頻繁にバージョンアップする。

オープンソースあるあるではあるものの、PLATEAU View を開発されている方々の現場には、さまざまなご苦労があるような気がします。がんばってください！ 

あるある妄想。

+ beta 版特有のこまかいバグにぶつかって色々調べて対応し、プルリク送ろうかとしたところ、本家でもその修正がはいってて調査時間を返してほしいと遠い目をしたり。
+ ドキュメントが整備されていないから、ちょっとしたパラメーター設定するのに、ソースコードを深くまで潜って調査する必要があったり
+ 先月動いていたものが、レポジトリを origin から merge してきたら、今月うごかなくなったり。
+ オープンソース化をみすえていたら（しかも国のプロジェクトという立場で）、恥ずかしい適当コードですすめてるとあれだから、清書的なリファクタリングが。。。が。。。が。。。

さて、V7 はあるていど枯れているようで、新規バグもなさそうだし、現段階で PLATEAU View としての開発ベースに採用しても十分な気もしているのですが、どうして V8 という beta 状態な、ややもするとイバラな道をすすんだのか。

もちろん新しいバージョン採用もよいことなんですよね。面白い機能も増えていたり、関連ライブラリーとかも新しくなっていたり、あれこれ。製品寿命も新しいのですすめてたら自然と長くなりますし。

100%の私見ですが、V8 は標準で、i18n（国際言語化・日本語化）対応が考慮されていました。V7 はそれがみあたりませんでした。日本で展開するにあたって、やはり日本語表示は必要不可欠か。V7にそれをつっこむよりも、V8 でいくことを選ばれた、、、のかしら？

# toMap というサービスを開始してみた

そんなこんな調べながら、toMap という PLATEAUプロジェクトと可能な限り互換性を担保する3D都市モデルプラットフォームサービス「toMap」を始めてみました。

ご興味ある方はぜひお気軽にご相談ください。

https://tomap.app