My Project
Loading...
Searching...
No Matches
Protected Member Functions | Protected Attributes | List of all members
TriangleNet.Voronoi.VoronoiBase Class Reference

The Voronoi diagram is the dual of a pointset triangulation. More...

Inheritance diagram for TriangleNet.Voronoi.VoronoiBase:
TriangleNet.Topology.DCEL.DcelMesh TriangleNet.Voronoi.BoundedVoronoi TriangleNet.Voronoi.StandardVoronoi

Protected Member Functions

 VoronoiBase (TriangleNetMesh triangleNetMesh, IVoronoiFactory factory, IPredicates predicates, bool generate)
 Initializes a new instance of the VoronoiBase class.
 
void Generate (TriangleNetMesh triangleNetMesh)
 Generate the Voronoi diagram from given triangle mesh..
 
List< HalfEdge >[] ComputeVertices (TriangleNetMesh triangleNetMesh, Vertex[] vertices)
 Compute the Voronoi vertices (the circumcenters of the triangles).
 
void ComputeEdges (TriangleNetMesh triangleNetMesh, Vertex[] vertices, Face[] faces, List< HalfEdge >[] map)
 Compute the edges of the Voronoi diagram.
 
virtual void ConnectEdges (List< HalfEdge >[] map)
 Connect all edges of the Voronoi diagram.
 
override IEnumerable< IEdgeEnumerateEdges ()
 Enumerates all edges of the DCEL.
 
- Protected Member Functions inherited from TriangleNet.Topology.DCEL.DcelMesh
 DcelMesh (bool initialize)
 Initializes a new instance of the class.
 
virtual IEnumerable< IEdgeEnumerateEdges ()
 Enumerates all edges of the DCEL.
 

Protected Attributes

IPredicates predicates
 
IVoronoiFactory factory
 
List< HalfEdgerays
 
- Protected Attributes inherited from TriangleNet.Topology.DCEL.DcelMesh
List< Vertexvertices
 
List< HalfEdgeedges
 
List< Facefaces
 

Additional Inherited Members

- Public Member Functions inherited from TriangleNet.Topology.DCEL.DcelMesh
 DcelMesh ()
 Initializes a new instance of the DcelMesh class.
 
virtual bool IsConsistent (bool closed=true, int depth=0)
 Check if the DCEL is consistend.
 
void ResolveBoundaryEdges ()
 Search for half-edge without twin and add a twin. Connect twins to form connected boundary contours.
 
- Properties inherited from TriangleNet.Topology.DCEL.DcelMesh
List< VertexVertices [get]
 Gets the vertices of the Voronoi diagram.
 
List< HalfEdgeHalfEdges [get]
 Gets the list of half-edges specify the Voronoi diagram topology.
 
List< FaceFaces [get]
 Gets the faces of the Voronoi diagram.
 
IEnumerable< IEdgeEdges [get]
 Gets the collection of edges of the Voronoi diagram.
 

Detailed Description

The Voronoi diagram is the dual of a pointset triangulation.

Constructor & Destructor Documentation

◆ VoronoiBase()

TriangleNet.Voronoi.VoronoiBase.VoronoiBase ( TriangleNetMesh  triangleNetMesh,
IVoronoiFactory  factory,
IPredicates  predicates,
bool  generate 
)
inlineprotected

Initializes a new instance of the VoronoiBase class.

Parameters
triangleNetMeshTriangle mesh.
factoryVoronoi object factory.
predicatesGeometric predicates implementation.
generateIf set to true, the constuctor will call the Generate method, which builds the Voronoi diagram.

Member Function Documentation

◆ ComputeEdges()

void TriangleNet.Voronoi.VoronoiBase.ComputeEdges ( TriangleNetMesh  triangleNetMesh,
Vertex[]  vertices,
Face[]  faces,
List< HalfEdge >[]  map 
)
inlineprotected

Compute the edges of the Voronoi diagram.

Parameters
triangleNetMesh
vertices
faces
mapEmpty vertex map.

◆ ComputeVertices()

List< HalfEdge >[] TriangleNet.Voronoi.VoronoiBase.ComputeVertices ( TriangleNetMesh  triangleNetMesh,
Vertex[]  vertices 
)
inlineprotected

Compute the Voronoi vertices (the circumcenters of the triangles).

Returns
An empty map, which will map all vertices to a list of leaving edges.

◆ ConnectEdges()

virtual void TriangleNet.Voronoi.VoronoiBase.ConnectEdges ( List< HalfEdge >[]  map)
inlineprotectedvirtual

Connect all edges of the Voronoi diagram.

Parameters
mapMaps all vertices to a list of leaving edges.

◆ EnumerateEdges()

override IEnumerable< IEdge > TriangleNet.Voronoi.VoronoiBase.EnumerateEdges ( )
inlineprotectedvirtual

Enumerates all edges of the DCEL.

This method assumes that each half-edge has a twin (i.e. NOT null).

Reimplemented from TriangleNet.Topology.DCEL.DcelMesh.

◆ Generate()

void TriangleNet.Voronoi.VoronoiBase.Generate ( TriangleNetMesh  triangleNetMesh)
inlineprotected

Generate the Voronoi diagram from given triangle mesh..

Parameters
triangleNetMesh
bounded

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