class Triangulator3

Bases: Triangulator

This is an extension of Triangulator to handle polygons with three- dimensional points. It assumes all of the points lie in a single plane, and internally projects the supplied points into 2-D for passing to the underlying Triangulator object.

Inheritance diagram

Inheritance diagram of Triangulator3

Triangulator3(Triangulator3 const&) = default
int add_vertex(LPoint3d const &point)
int add_vertex(double x, double y, double z)

Adds a new vertex to the vertex pool. Returns the vertex index number.

void clear(void)

Removes all vertices and polygon specifications from the Triangulator, and prepares it to start over.

int get_num_vertices(void) const

Returns the number of vertices in the pool. Note that the Triangulator might append new vertices, in addition to those added by the user, if any of the polygon is self-intersecting, or if any of the holes intersect some part of the polygon edges.

LPlaned const &get_plane(void) const

Returns the plane of the polygon. This is only available after calling triangulate().

LPoint3d const &get_vertex(int n) const

Returns the nth vertex.

void triangulate(void)

Does the work of triangulating the specified polygon. After this call, you may retrieve the new triangles one at a time by iterating through get_triangle_v0/1/2().