MIERUNE / plateau-gis-converter

A proof of concept GUI and CLI tool for converting PLATEAU's 3D city models (CityGML) of Japan into various geospatial formats, including 3D Tiles, MVT, and GeoPackage.
https://mierune.github.io/plateau-gis-converter/
MIT License
51 stars 10 forks source link
3d 3d-tiles citygml citymodel geopackage geospatial gis gltf japan opendata plateau vector-ti

PLATEAU GIS Converter

Test Libraries Test GUI App Codecov FOSSA Status

A proof of concept GUI and CLI tool for converting PLATEAU's 3D city models (CityGML) of Japan into various geospatial formats, including 3D Tiles, MVT, and GeoPackage.

1. 概要

本リポジトリでは、FY2023 の Project PLATEAU「都市デジタルツインの実現に向けた研究開発及び実証調査業務」(内閣府/研究開発とSociety5.0との橋渡しプログラム(BRIDGE))において開発された「PLATEAU GIS Converter」のソースコードを公開しています。

PLATEAU GIS Converter は、PLATEAUが提供するCityGML形式の3D都市モデルを他の一般的なGISデータ形式に変換するソフトウェアです。

東京都23区の CityGML (v2) を読み込んで、3D Tiles に変換した例:

ソフトウェアのメイン画面:

ソフトウェアのメイン画面

PLATEAU の標準仕様に準拠した CityGML 2.0 形式の3D都市モデルは、専門のGISツールやCLIコマンドを用いて他のGIS形式に変換して用いられることが一般的ですが、一般ユーザーが簡易に利用できる汎用ツールは存在しません。そのため、流通や活用の範囲が専門家や技術者に限られていました。

2. 「PLATEAU GIS Converter」について

「PLATEAU GIS Converter」を利用することで、3D都市モデルを一般的なGIS形式に変換して、様々な分析・開発を行うことができます:

3. 利用手順

4. システム概要

本ソフトウェアの機能は以下の通りです:

5. 利用技術

利用技術は以下の通りです。

内部ロジック:

ユーザインタフェース (UI):

6. 動作環境

本ソフトウェアは以下の環境で動作することを想定しています:

7. 本リポジトリのフォルダ構成

7.1. 外部リポジトリ

8. ライセンス

9. 注意事項

10. 参考資料

Development (開発者向け情報)

Build & Run

CLI

cd ./nusamai/
# Debug (非常に低速)
cargo run -- ~/path/to/PLATEAU/15100_niigata-shi_2022_citygml_1_op/udx/bldg/*.gml --sink geojson --output foobar.geojson
# Release (最適化コンパイル)
cargo run --release -- ~/path/to/PLATEAU/15100_niigata-shi_2022_citygml_1_op/udx/bldg/*.gml --sink geojson --output foobar.geojson
# Release (LTO有効のプロダクションビルド、最高速)
cargo run --profile release-lto -- ~/path/to/PLATEAU/15100_niigata-shi_2022_citygml_1_op/udx/bldg/*.gml --sink geojson --output foobar.geojson

GUI

Dev:

cd ./app/
npm install
RUST_BACKTRACE=1 npx tauri dev

Build:

cd ./app
npx tauri build

Test

cargo clippy --all-targets --all-features
cargo test --workspace --exclude app --all-features

Coverage

Codecov: https://app.codecov.io/gh/MIERUNE/plateau-gis-converter

cargo llvm-cov --workspace --exclude app --html --all-features