GEOS 3.13.1
geos::triangulate::DelaunayTriangulationBuilder Class Reference

A utility class which creates Delaunay Triangulations from collections of points and extract the resulting triangulation edges or triangles as geometries. More...

#include <DelaunayTriangulationBuilder.h>

Public Member Functions

 DelaunayTriangulationBuilder ()
void setSites (const geom::Geometry &geom)
void setSites (const geom::CoordinateSequence &coords)
void setTolerance (double p_tolerance)
quadedge::QuadEdgeSubdivisiongetSubdivision ()
std::unique_ptr< geom::MultiLineStringgetEdges (const geom::GeometryFactory &geomFact)
std::unique_ptr< geom::GeometryCollectiongetTriangles (const geom::GeometryFactory &geomFact)

Static Public Member Functions

static std::unique_ptr< geom::CoordinateSequenceextractUniqueCoordinates (const geom::Geometry &geom)
static IncrementalDelaunayTriangulator::VertexList toVertices (const geom::CoordinateSequence &coords)
static std::unique_ptr< geom::CoordinateSequenceunique (const geom::CoordinateSequence *seq)
static geom::Envelope envelope (const geom::CoordinateSequence &coords)

Detailed Description

A utility class which creates Delaunay Triangulations from collections of points and extract the resulting triangulation edges or triangles as geometries.

Author
JTS: Martin Davis
Benjamin Campbell

Constructor & Destructor Documentation

◆ DelaunayTriangulationBuilder()

geos::triangulate::DelaunayTriangulationBuilder::DelaunayTriangulationBuilder ( )

Creates a new triangulation builder.

References DelaunayTriangulationBuilder().

Referenced by DelaunayTriangulationBuilder().

Member Function Documentation

◆ envelope()

geom::Envelope geos::triangulate::DelaunayTriangulationBuilder::envelope ( const geom::CoordinateSequence & coords)
static

Computes the geom::Envelope of a collection of geom::Coordinates.

Parameters
coordsa List of Coordinates
Returns
the envelope of the set of coordinates

◆ extractUniqueCoordinates()

std::unique_ptr< geom::CoordinateSequence > geos::triangulate::DelaunayTriangulationBuilder::extractUniqueCoordinates ( const geom::Geometry & geom)
static

Extracts the unique geom::Coordinates from the given geom::Geometry.

Parameters
geomthe geometry to extract from
Returns
a List of the unique Coordinates. Caller takes ownership of the returned object.

◆ getEdges()

std::unique_ptr< geom::MultiLineString > geos::triangulate::DelaunayTriangulationBuilder::getEdges ( const geom::GeometryFactory & geomFact)

Gets the edges of the computed triangulation as a geom::MultiLineString.

Parameters
geomFactthe geometry factory to use to create the output
Returns
the edges of the triangulation. The caller takes ownership of the returned object.

◆ getSubdivision()

quadedge::QuadEdgeSubdivision & geos::triangulate::DelaunayTriangulationBuilder::getSubdivision ( )

Gets the quadedge::QuadEdgeSubdivision which models the computed triangulation.

Returns
the subdivision containing the triangulation

◆ getTriangles()

std::unique_ptr< geom::GeometryCollection > geos::triangulate::DelaunayTriangulationBuilder::getTriangles ( const geom::GeometryFactory & geomFact)

Gets the faces of the computed triangulation as a geom::GeometryCollection of geom::Polygon.

Parameters
geomFactthe geometry factory to use to create the output
Returns
the faces of the triangulation. The caller takes ownership of the returned object.

◆ setSites() [1/2]

void geos::triangulate::DelaunayTriangulationBuilder::setSites ( const geom::CoordinateSequence & coords)

Sets the sites (vertices) which will be triangulated from a collection of geom::Coordinates.

Parameters
coordsa CoordinateSequence.

◆ setSites() [2/2]

void geos::triangulate::DelaunayTriangulationBuilder::setSites ( const geom::Geometry & geom)

Sets the sites (vertices) which will be triangulated. All vertices of the given geometry will be used as sites.

Parameters
geomthe geometry from which the sites will be extracted.

◆ setTolerance()

void geos::triangulate::DelaunayTriangulationBuilder::setTolerance ( double p_tolerance)
inline

Sets the snapping tolerance which will be used to improved the robustness of the triangulation computation. A tolerance of 0.0 specifies that no snapping will take place.

Parameters
p_tolerancethe tolerance distance to use

◆ toVertices()

IncrementalDelaunayTriangulator::VertexList geos::triangulate::DelaunayTriangulationBuilder::toVertices ( const geom::CoordinateSequence & coords)
static

Converts all geom::Coordinates in a collection to quadedge::Vertexes.

Parameters
coordsthe coordinates to convert
Returns
a List of Vertex objects.

◆ unique()

std::unique_ptr< geom::CoordinateSequence > geos::triangulate::DelaunayTriangulationBuilder::unique ( const geom::CoordinateSequence * seq)
static

Returns a CoordinateSequence containing only the unique coordinates of its input.

Parameters
seqa coordinateSequence
Returns
a sorted CoordinateSequence with the unique points of seq.

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