Skip to main content
Question

Creating a CityGML with BuildingPart in a proper and compact way

  • May 4, 2021
  • 1 reply
  • 162 views

Forum|alt.badge.img

Hi,

 

I am trying to write a CityGML LOD1 file containing building parts in a proper way. I use OSM data (3dbuildings.com) in geopackage format as a proving ground. The only example workflow I have found was about Cesium https://www.youtube.com/watch?v=xSB_GLB_ikQ but the output file consisted of building parts only.

Actually I find resulting files looking similar to sample data from Hamburg in FZKViewer but I am not sure anyway.

 

The main idea as I get it right is to remove geometry in case of a building that consists of building parts and link them to a parent building with a gml_parent_id.

 

Do I need to create a separate gml_id for each building part or it's enough to leave a part without it? Unfortunately there are errors while validating an output file.

 

Can I connect directly buildings without geometries and building with geometries into the same CityGML Building writer?

 

Is there a more compact manner to get a right result (please find attached a workspace)? It looks clumsy maybe due to specific of OSM relations and inconsistencies.

 

A workspace and an archive with an initial geopackage and a resulting gml are attached.

Thank you in advance!

1 reply

Forum|alt.badge.img

I have found a topic about gml id here: "Many CityGML features are aggregations of other features. In FME, this relationship can be specified through the “gml_id” and “gml_parent_id” attributes. The value of the “gml_parent_id” of a child element should be equal to the value of the “gml_id” of its parent element. The gml:id attribute must be unique for all features in a CityGML document. Using the UUIDGenerator transformer will ensure that these values are unique, but they must be prefixed with a non-numeric character. Note that the CityGML Writer will dynamically generate gml:id attribute values for all features it writes (essentially using the same method shown below), so it is not necessary to use these transformers unless the value of the gml_id attribute must be accessed."


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings