GEOS  3.9.1dev
Public Types | Public Member Functions | Private Attributes | List of all members
geos::triangulate::IncrementalDelaunayTriangulator Class Reference

Computes a Delauanay Triangulation of a set of quadedge::Vertexes, using an incrementatal insertion algorithm. More...

#include <IncrementalDelaunayTriangulator.h>

Collaboration diagram for geos::triangulate::IncrementalDelaunayTriangulator:
[legend]

Public Types

typedef std::vector< quadedge::VertexVertexList
 

Public Member Functions

 IncrementalDelaunayTriangulator (quadedge::QuadEdgeSubdivision *subdiv)
 
void insertSites (const VertexList &vertices)
 
quadedge::QuadEdgeinsertSite (const quadedge::Vertex &v)
 

Private Attributes

quadedge::QuadEdgeSubdivisionsubdiv
 
bool isUsingTolerance
 

Detailed Description

Computes a Delauanay Triangulation of a set of quadedge::Vertexes, using an incrementatal insertion algorithm.

Author
JTS: Martin Davis
Benjamin Campbell

Definition at line 42 of file IncrementalDelaunayTriangulator.h.

Member Typedef Documentation

Definition at line 57 of file IncrementalDelaunayTriangulator.h.

Constructor & Destructor Documentation

geos::triangulate::IncrementalDelaunayTriangulator::IncrementalDelaunayTriangulator ( quadedge::QuadEdgeSubdivision subdiv)

Creates a new triangulator using the given quadedge::QuadEdgeSubdivision. The triangulator uses the tolerance of the supplied subdivision.

Parameters
subdiva subdivision in which to build the TIN

Member Function Documentation

quadedge::QuadEdge& geos::triangulate::IncrementalDelaunayTriangulator::insertSite ( const quadedge::Vertex v)

Inserts a new point into a subdivision representing a Delaunay triangulation, and fixes the affected edges so that the result is still a Delaunay triangulation.

Returns
a quadedge containing the inserted vertex
void geos::triangulate::IncrementalDelaunayTriangulator::insertSites ( const VertexList vertices)

Inserts all sites in a collection. The inserted vertices MUST be unique up to the provided tolerance value. (i.e. no two vertices should be closer than the provided tolerance value). They do not have to be rounded to the tolerance grid, however.

Parameters
verticesa Collection of Vertex
Exceptions
LocateFailureExceptionif the location algorithm fails to converge in a reasonable number of iterations

Member Data Documentation

bool geos::triangulate::IncrementalDelaunayTriangulator::isUsingTolerance
private

Definition at line 45 of file IncrementalDelaunayTriangulator.h.

quadedge::QuadEdgeSubdivision* geos::triangulate::IncrementalDelaunayTriangulator::subdiv
private

Definition at line 44 of file IncrementalDelaunayTriangulator.h.


The documentation for this class was generated from the following file: