Skip to content
Georg Muntingh edited this page Aug 17, 2017 · 1 revision

The geometry entities are tesselated in gotools-core in the gotools-core/tesselator submodule. Depending on the type of the geometry object, the result of the tesselation is stored in GenericTriMesh, LineStrip, QuadMesh or RegularMesh, which all inherit the abstract class GeneralMesh. The tesselators in this module relate to a given resolution in each parameter direction of the geometry object.

A curve is tesselated by the class CurveTesselator and the tesselated curve is returned by the function CurveTesselator::getMesh() as a shared pointer to a LineStrip object. A rectangular surface is tesselated in RectGridTesselator and the tesselator returns a shared pointer to a RegularMesh. The triangles produced during tesselation are organized in a set of triangle strips. This structure is taken advantage of to improve the drawing efficiency. A trimmed surface is tesselated by ParametricSurfaceTesselator and the tesselation is represented as an unorganized bunch of triangles. The output from the functionality in the tesselation module is taken as input to the GoTools viewers and the actual drawing is performed using openGL.

Clone this wiki locally