Skip to content

Triangulation

Thomas Fröch edited this page May 16, 2023 · 1 revision

An important concept in the framework of this application is the triangulation. It is used in order to represent the polygons within a CityGML file by sets of triangles.

Capabilities

  • Support of non-convex polygons
  • Support of polygons with holes
  • Limited support of polygons with non-convex holes

Methodology

The Triangle Library is used in this project.

  • This triangulation only works in 2D. Therefore, a projection of the polygons is performed. The correct projection direction is determined by the examination of the respective surface normals with a tolerance of 10e-2.
  • For the triangulation of polygons with holes, a point that is contained in the hole is required. With standard settings, this point will be the centroid of the respective hole. This can cause problems with the triangulation of polygons with non-convex holes. For such polygons, the centroid might be located outside of the respective hole.
  • The triangulation is important to represent non-convex polygons. The triangulation can be skipped . While this can be useful in the presence of polygons that corrupt the triangulation, correct representation of non-convex polygons will be lost.
  • The triangulation makes use of the Numpy float datatype
  • The triangulation function uses an optional parameter in order to triangulate a planar straight line graph.
Clone this wiki locally