How to represent a Building in CityGML, some examples

...

One building modelled in LoD1 with one gml:Solid.

Observe that semantic information cannot be stored with a LoD1 building.

b1_lod1_s.gml


...

One building modelled in LoD2 with one gml:Solid.

No semantics is used for the faces.

b1_lod2_s.gml


...

One building modelled in LoD2 with one gml:Solid and 9 bounding surfaces.

xlink are used to reuse the surface and have both representations.

b1_lod2_s_w_sem.gml


...

One building modelled in LoD2 with only 9 bounding surfaces and no gml:Solid.

This is not recommended, because the volume of the building cannot be computed for instance.

b1_lod2_ms_w_sem.gml


...

One building modelled in LoD2 with one gml:Solid and 11 bounding surfaces since the roof overhangs are modelled

Observe that the roof overhangs are modelled as boundary surfaces, and are not part of the gml:Solid since that would create an invalid one (non-manifold case).

b1_lod2_s_oh_w_sem.gml


...

One building modelled in LoD2 with one gml:CompositeSolid.

The volume of the building has been subdivided into 2 by adding the ceiling of the ground floor. The boundary surfaces with semantics are present.

b1_lod2_cs_w_sem.gml