I have a CAD file that I want to convert to CityGML LOD2 with Xlink using a provided template. To automatically generate unique surface IDs using SurfID_@UUID(), I need to first deagregate the CAD file into individual surfaces. If I don't do this, I get errors about non-unique IDs. However, separating the surfaces in this way causes the roof, walls, and ground surfaces of the building to be split into multiple surfaces and IDs. I would prefer to have each incoming surface represented by a single GML ID, but I've tried several options and haven't been successful. I'm not sure if I'm missing something or if there's another approach I could try. Could anyone please be so kind take a look to the tample and smaple CAD file.
I have a small issue with the FME template in creating LOD2 Buildings with Xlinks. I would really appreciate if anyone can help me with this.
Best answer by virtualcitymatt
There can be a distinction between a feature and geometry. For example a Building and a Wall can share geometry. So a building with gmlid "building_1" can be made up of all the surfaces and a Wall feature with gmlid wall_1 might be made up of several geoemetries.
Here the geometries and the features have separate gmlid's.
So you can create a unique ID for each Face and then create a NEW gmlid for the wall which is made up of several faces. You just need to re-aggregate the Walls, Roof etc back into the Composite surfaces you want. You can then give them new ids (e.g., Wall_@UUID(), Roof_@UUID(), Ground@UUID() )
You can also group your installations as you like (FME will just create ID's automatically where it needs to)
Reply
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.