Skip to main content

Hi everyone,

 

I'm a new user of FME. i'm trying to create a CityGML LoD0 and LoD1 based on a study area in DWG and point cloud data.

I have followed the steps in the links below that are related to my task:

https://knowledge.safe.com/questions/56991/citygml-file-with-lod1-and-lod2.html

https://knowledge.safe.com/articles/1353/point-cloud-to-3d-terrain-model-with-buildings-dwg.html

I can preview the data before the writer and it looks OK, with the footprint and the solids highlighting when one feature is selected but the writer is giving me the error: CityGML Writer: Geometry conversion error - Unable to convert the 'IFMEAggregate' into a single 'IFMESolid' geometry, because the aggregate/multi-geometry has '2' components.

CityGML Writer: Unable to convert the 'IFMEAggregate' geometry to match its 'lod1Solid' citygml_lod_name trait. The legal geometries for 'lod1Solid' are {IFMECompositeSolid, IFMECSGSolid, IFMEBox, IFMEBRepSolid, IFMEExtrusion}, convertible geometries are {IFMECompositeSurface, IFMEMesh, IFMEFace, IFMERectangleFace, IFMETriangleFan, IFMETriangleStrip, IFMEMultiSolid, IFMEMultiSurface, IFMEAggregate}.

Couldn't uploud the LAS and DTM files for size reasons.

 

Sorry for the messy workflow. Still working on that.

The workflow contains all CityGML models, but my question is directed to the building model.

 

 

The input files are in Portuguese and the translations are:

escola_publica_privada: private and public schools

 

edificações: buildings

 

edificações vazios: building's holes

 

edificações notáveis: notables buildings

@mamaieron, thanks for your question! Have you tried using the CityGMLGeometrySetter to set the CityGML Geometry to one of the supported geometries that match the actual geometry (i.e. lod1MultiSurface)?


@mamaieron, thanks for your question! Have you tried using the CityGMLGeometrySetter to set the CityGML Geometry to one of the supported geometries that match the actual geometry (i.e. lod1MultiSurface)?

Hi @nampreetatsafe! Thanks for the comment. Yes, i have tried to use the CityGMLGeometrySetter in both, the LoD0Footprint with CAD data and LoD1Solid after extruding the buildings with pointcloud data intersection. In the last step (MultipleGeometrySetter) i can preview the data correctly. The solids and the footprints in the same view. The error uccurs only in the CityGMLwriter.


Hi @mamaieron,

Please try setting Writers - Redirect to FME Data Inspector in FME Workbench, then re-run your workspace and examine the output in Data Inspector, with close attention to the geometry hierarchy.

I am attaching an example of a multi-LOD CityGML file created by FME to use as a guide. Open it in Data Inspector, and compare its geometry hierarchy to your workspace output to see where they may differ.


Hi @mamaieron,

Please try setting Writers - Redirect to FME Data Inspector in FME Workbench, then re-run your workspace and examine the output in Data Inspector, with close attention to the geometry hierarchy.

I am attaching an example of a multi-LOD CityGML file created by FME to use as a guide. Open it in Data Inspector, and compare its geometry hierarchy to your workspace output to see where they may differ.

Hi @daveatsafe,

Many thanks for the reply. I identified that the output had two duplicated parts after the extruder, generating multisolids, this was causing the error. I corrected this, using the deaggregator followed by the matcher, finally I used the geometryCoercer to fme brep solid. LoD0 1 LoD1 are OK. I posted a second question about LoD2, which I'm working on now. Would you mind taking a look at it?

Many thanks again!


Reply