public class TriangulationDS_2<X extends Point_>
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
java.util.ArrayList<TriangulationDSFace_2<X>> |
faces |
java.util.ArrayList<TriangulationDSVertex_2<X>> |
vertices |
Constructor and Description |
---|
TriangulationDS_2()
creates an empty triangulation data structure.
|
TriangulationDS_2(int nFaces,
int nVertices)
creates an empty triangulation data structure with prescribed numbers of faces and vertices.
|
TriangulationDS_2(X[] points,
int[][] neighbors)
Create a triangulation DS from a vertex shared mesh representation
It takes linear space and linear time.
|
Modifier and Type | Method and Description |
---|---|
boolean |
areEqual(TriangulationDSFace_2<X> face1,
int i1,
TriangulationDSFace_2<X> face2,
int i2)
checks whether an edge is shared by two faces f1 and f2:
the function check whether the corresponding vertices
appear both in f1 and f2, in the correct order.
|
TriangulationDSFace_2<X> |
createFace()
creates a new face and adds it to the faces container of the triangulation data structure.
|
TriangulationDSFace_2<X> |
createFace(TriangulationDSVertex_2<X> v1,
TriangulationDSVertex_2<X> v2,
TriangulationDSVertex_2<X> v3,
TriangulationDSFace_2<X> c1,
TriangulationDSFace_2<X> c2,
TriangulationDSFace_2<X> c3)
creates a new face in the triangulation,
with the given incident vertices and adjacent triangles.
|
TriangulationDSVertex_2<X> |
createVertex(X p,
TriangulationDSFace_2<X> f)
creates a new vertex in the triangulation,
with the given incident triangle.
|
HalfedgeHandle<X> |
flipEdge(HalfedgeHandle<X> e)
flips an edge in the triangulation and returns the new edge
|
boolean |
hasBoundary()
checks whether the triangulation has a boundary.
|
boolean |
hasFace(TriangulationDSFace_2<X> c)
checks whether the triangulation contains face c.
|
boolean |
hasVertex(TriangulationDSVertex_2<X> v)
checks whether the triangulation contains vertex v.
|
java.util.Collection<TriangulationDSFace_2<X>> |
incidentFaces(TriangulationDSVertex_2<X> v)
Returns the collection of all faces incident to vertex v.
|
void |
insertBarycenter(TriangulationDSFace_2<X> f)
insert in a triangle the barycenter point of its incident vertices
|
TriangulationDSVertex_2<X> |
insertInTriangle(X p,
TriangulationDSFace_2<X> t)
Inserts point p in face c.
|
TriangulationDSVertex_2<X> |
insertOutside(X point,
TriangulationDSFace_2<X> c,
int i)
Inserts point p outside the triangulation.
|
boolean |
isValid()
checks the combinatorial validity of the triangulation.
|
TriangulationDSFace_2<X> |
makeTriangle(X p1,
X p2,
X p3)
creates a triangle with vertices p1, p2, p3.
|
int |
sizeOfFaces()
returns the number of faces of the triangulation.
|
int |
sizeOfVertices()
returns the number of vertices of the triangulation.
|
java.lang.String |
toString() |
public java.util.ArrayList<TriangulationDSFace_2<X extends Point_>> faces
public java.util.ArrayList<TriangulationDSVertex_2<X extends Point_>> vertices
public TriangulationDS_2()
public TriangulationDS_2(int nFaces, int nVertices)
public TriangulationDS_2(X[] points, int[][] neighbors)
public TriangulationDSFace_2<X> createFace()
public int sizeOfVertices()
public int sizeOfFaces()
public boolean hasFace(TriangulationDSFace_2<X> c)
c
- public boolean hasVertex(TriangulationDSVertex_2<X> v)
public boolean hasBoundary()
public TriangulationDSVertex_2<X> createVertex(X p, TriangulationDSFace_2<X> f)
public TriangulationDSFace_2<X> createFace(TriangulationDSVertex_2<X> v1, TriangulationDSVertex_2<X> v2, TriangulationDSVertex_2<X> v3, TriangulationDSFace_2<X> c1, TriangulationDSFace_2<X> c2, TriangulationDSFace_2<X> c3)
public HalfedgeHandle<X> flipEdge(HalfedgeHandle<X> e)
public boolean areEqual(TriangulationDSFace_2<X> face1, int i1, TriangulationDSFace_2<X> face2, int i2)
public java.util.Collection<TriangulationDSFace_2<X>> incidentFaces(TriangulationDSVertex_2<X> v)
public boolean isValid()
public TriangulationDSFace_2<X> makeTriangle(X p1, X p2, X p3)
public TriangulationDSVertex_2<X> insertInTriangle(X p, TriangulationDSFace_2<X> t)
public TriangulationDSVertex_2<X> insertOutside(X point, TriangulationDSFace_2<X> c, int i)
public java.lang.String toString()
toString
in class java.lang.Object
public void insertBarycenter(TriangulationDSFace_2<X> f)