Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nusamai-geosjon: トップレベル都市オブジェクトを変換(ジオメトリのみ) #79

Merged
merged 16 commits into from
Dec 19, 2023

Conversation

sorami
Copy link
Member

@sorami sorami commented Dec 18, 2023

close #62

概要

Geometries にある multipolygon, multilinestring, multipoint 、それぞれをFeatureにしている。

変更

  • 変換処理の書き換え
    • nusamai-geojson/src/conversion.rs
    • nusamai-geojson/src/lib.rs
  • CityGMLファイルをパースしてGeoJSONを出力するexampleの追加
    • nusamai-geojson/examples/gml2geojson.rs
  • その他
    • Tauri側の暫定処理を、この変更に合わせて修正: app/src-tauri/*
    • いにしえのパースexampleの削除: nusamai-geojson/examples/citygml_polygons.rs

補足: 属性の扱い

属性はこのPRでは考慮していない。

トップレベル都市オブジェクトの cityobj: FeatureOrData<'a> を扱う必要がある。

別途対応する #46

Copy link

codecov bot commented Dec 18, 2023

Codecov Report

Attention: 66 lines in your changes are missing coverage. Please review.

Files Patch % Lines
app/src-tauri/src/example.rs 0.00% 37 Missing ⚠️
nusamai-geojson/src/lib.rs 73.03% 24 Missing ⚠️
nusamai-geojson/src/conversion.rs 97.28% 5 Missing ⚠️
Additional details and impacted files
Components Coverage Δ
GUI 0.00% <0.00%> (ø)
Backend 67.37% <ø> (ø)
Libraries 82.99% <89.37%> (+0.20%) ⬆️

📢 Thoughts on this report? Let us know!

@sorami sorami requested review from a team, ciscorn and nokonoko1203 December 18, 2023 10:39
@sorami sorami marked this pull request as ready for review December 18, 2023 10:39
@ciscorn ciscorn added the Output Fomat Output format drivers label Dec 19, 2023
@sorami sorami mentioned this pull request Dec 19, 2023
Copy link
Member

@ciscorn ciscorn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! すごく細かくは見てないですが、大枠として問題ないかと!

nusamai-geojson/src/lib.rs Show resolved Hide resolved
@sorami sorami merged commit cfecda8 into main Dec 19, 2023
5 checks passed
@sorami sorami deleted the geojson-toplevelcityobject branch December 19, 2023 06:48
sorami added a commit that referenced this pull request Dec 19, 2023
2行だけの簡単な変更です!

- #82, #83 での変更
- 名前が `nusamai_plateau::models::CityObject` から
`nusamai_plateau::models::TopLevelCityObject` に変わった
- nusamai-geojson
  - #79 で対応した(Tauri部分)
  - exampleでの修正が漏れていた
@sorami sorami mentioned this pull request Dec 19, 2023
sorami added a commit that referenced this pull request Dec 19, 2023
close #84 

パイプラインへの理解を深めるために、 #79 で作ったGeoJSON出力ドライバーを用いたSinkを作ってみました。

このような形で実装してみたのですが、パイプラインの設計意図と相違なかったでしょうか。

***

CLIからの利用例:

```
$ time cargo run --release plateau/22203_numazu-shi_2021_citygml_4_op/udx/bldg/*.gml --sink geojson
```

- M1 Proマシン, 処理時間15秒程度, 11万地物でファイルサイズ500MB
ciscorn pushed a commit that referenced this pull request Dec 27, 2023
close #62

- 従来のコードは、 `nusamai-geometry` の Geometryを直接扱って、変換していた
- → 「トップレベル都市オブジェクト」を入力として、GeoJSONへの変換処理を行う
  - #78 で用意されたものを利用している

`Geometries` にある `multipolygon`, `multilinestring`, `multipoint`
、それぞれをFeatureにしている。

- [x] 変換処理の書き換え
  - `nusamai-geojson/src/conversion.rs`
  - `nusamai-geojson/src/lib.rs`
- [x] CityGMLファイルをパースしてGeoJSONを出力するexampleの追加
  - `nusamai-geojson/examples/gml2geojson.rs`
- その他
  - [x] Tauri側の暫定処理を、この変更に合わせて修正: `app/src-tauri/*`
- [x] いにしえのパースexampleの削除: `nusamai-geojson/examples/citygml_polygons.rs`

属性はこのPRでは考慮していない。

トップレベル都市オブジェクトの ` cityobj: FeatureOrData<'a>` を扱う必要がある。

別途対応する #46
ciscorn pushed a commit that referenced this pull request Dec 27, 2023
2行だけの簡単な変更です!

- #82, #83 での変更
- 名前が `nusamai_plateau::models::CityObject` から
`nusamai_plateau::models::TopLevelCityObject` に変わった
- nusamai-geojson
  - #79 で対応した(Tauri部分)
  - exampleでの修正が漏れていた
ciscorn pushed a commit that referenced this pull request Dec 27, 2023
close #84 

パイプラインへの理解を深めるために、 #79 で作ったGeoJSON出力ドライバーを用いたSinkを作ってみました。

このような形で実装してみたのですが、パイプラインの設計意図と相違なかったでしょうか。

***

CLIからの利用例:

```
$ time cargo run --release plateau/22203_numazu-shi_2021_citygml_4_op/udx/bldg/*.gml --sink geojson
```

- M1 Proマシン, 処理時間15秒程度, 11万地物でファイルサイズ500MB
ciscorn pushed a commit that referenced this pull request Dec 27, 2023
close #62

- 従来のコードは、 `nusamai-geometry` の Geometryを直接扱って、変換していた
- → 「トップレベル都市オブジェクト」を入力として、GeoJSONへの変換処理を行う
  - #78 で用意されたものを利用している

`Geometries` にある `multipolygon`, `multilinestring`, `multipoint`
、それぞれをFeatureにしている。

- [x] 変換処理の書き換え
  - `nusamai-geojson/src/conversion.rs`
  - `nusamai-geojson/src/lib.rs`
- [x] CityGMLファイルをパースしてGeoJSONを出力するexampleの追加
  - `nusamai-geojson/examples/gml2geojson.rs`
- その他
  - [x] Tauri側の暫定処理を、この変更に合わせて修正: `app/src-tauri/*`
- [x] いにしえのパースexampleの削除: `nusamai-geojson/examples/citygml_polygons.rs`

属性はこのPRでは考慮していない。

トップレベル都市オブジェクトの ` cityobj: FeatureOrData<'a>` を扱う必要がある。

別途対応する #46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Output Fomat Output format drivers
Projects
None yet
Development

Successfully merging this pull request may close these issues.

nusamai-geojson: 入力形式をTopLevelCityObjectに合わせる
2 participants