|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jcae.mesh.amibe.ds.Mesh org.jcae.mesh.amibe.patch.Mesh2D
public class Mesh2D
Mesh data structure for parameterized surfaces.
Connectivity between triangles and vertices is inherited from Mesh
,
and a KdTree
instance added in order to speed up finding the
nearest Vertex2D
V
from any given point V0
.
Field Summary |
---|
Fields inherited from class org.jcae.mesh.amibe.ds.Mesh |
---|
factory, maxLabel, meshParameters, outerTrianglesAreConnected, outerVertex, traits, traitsBuilder |
Constructor Summary | |
---|---|
Mesh2D()
Sole constructor. |
|
Mesh2D(CADShape f)
|
|
Mesh2D(MeshTraitsBuilder mtb)
|
|
Mesh2D(MeshTraitsBuilder mtb,
MeshParameters mp,
CADShape f)
Creates an empty mesh bounded to the topological surface. |
Method Summary | |
---|---|
void |
bootstrap(Vertex2D v0,
Vertex2D v1,
Vertex2D v2)
Bootstraps node instertion by creating the first triangle. |
Calculus |
compGeom()
Returns metrics dimension. |
double |
distance2(Vertex start,
Vertex end,
Vertex vm)
Returns Riemannian square distance between nodes. |
VirtualHalfEdge2D |
forceBoundaryEdge(Vertex2D start,
Vertex2D end,
int maxIter)
Enforces an edge between two points. |
double[] |
getBounds(Vertex v)
Returns the 2D radius of the 3D unit ball centered at a point. |
CADShape |
getGeometry()
Returns the topological face. |
CADGeomSurface |
getGeomSurface()
Returns the geometrical surface. |
java.util.Collection<Vertex> |
getNodes()
Returns vertex list. |
boolean |
isValid(boolean constrained)
Checks whether this mesh is valid. |
Calculus |
popCompGeom()
Resets metrics dimension. |
Calculus |
popCompGeom(int i)
Resets metrics dimension. |
void |
pushCompGeom(int i)
Sets metrics dimension. |
Methods inherited from class org.jcae.mesh.amibe.ds.Mesh |
---|
add, add, buildAdjacency, buildAdjacency, canCollapseEdge, createTetrahedron, createTriangle, createTriangle, createTriangle, createVertex, createVertex, createVertex, edgeCollapse, edgeSwap, ensureCapacity, getKdTree, getMeshParameters, getTriangles, hasAdjacency, hasNodes, isValid, remove, remove, resetKdTree, setRefVertexOnboundary, vertexSplit |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Mesh2D()
public Mesh2D(MeshTraitsBuilder mtb)
public Mesh2D(MeshTraitsBuilder mtb, MeshParameters mp, CADShape f)
MeshParameters.setLength(double)
is called with
the diagonal length of face bounding box as argument.
If MeshParameters.epsilon
is not set, epsilon is computed as
being the maximal value between length criterion by 100 and diagonal
length by 1000.
f
- topological surfacepublic Mesh2D(CADShape f)
Method Detail |
---|
public CADShape getGeometry()
public CADGeomSurface getGeomSurface()
public java.util.Collection<Vertex> getNodes()
MeshTraitsBuilder
, but call KdTree.getAllVertices(int)
.
getNodes
in class Mesh
public void bootstrap(Vertex2D v0, Vertex2D v1, Vertex2D v2)
v0
- first vertex.v1
- second vertex.v2
- third vertex.public VirtualHalfEdge2D forceBoundaryEdge(Vertex2D start, Vertex2D end, int maxIter) throws InitialTriangulationException
start
- start point.end
- end point.maxIter
- maximal number of iterations.
InitialTriangulationException
- if the boundary edge cannot
be enforced.public void pushCompGeom(int i)
i
- metrics dimension.
java.lang.IllegalArgumentException
- If argument is neither 2 nor 3,
this exception is raised.public Calculus popCompGeom()
java.lang.IllegalArgumentException
- If argument is neither 2 nor 3,
this exception is raised.public Calculus popCompGeom(int i) throws java.lang.RuntimeException
i
- expected metrics dimension.
java.lang.RuntimeException
- If argument is different from
metrics dimension.public Calculus compGeom()
public double distance2(Vertex start, Vertex end, Vertex vm)
distance2
in class Mesh
start
- the start nodeend
- the end nodevm
- the vertex on which metrics is evaluated
public double[] getBounds(Vertex v)
KdTree.getNearestVertex(org.jcae.mesh.amibe.ds.Mesh, org.jcae.mesh.amibe.ds.Vertex)
getBounds
in class Mesh
v
- the vertex on which metrics is evaluated
public boolean isValid(boolean constrained)
Mesh
isValid
in class Mesh
constrained
- true
if mesh is constrained.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |