org.jcae.mesh.amibe.algos3d
Class ImproveConnectivity
java.lang.Object
org.jcae.mesh.amibe.algos3d.AbstractAlgoHalfEdge
org.jcae.mesh.amibe.algos3d.ImproveConnectivity
public class ImproveConnectivity
- extends AbstractAlgoHalfEdge
Swaps edge to try to have all vertices have six neighbors.
TODO:
In Explicit Surface Remeshing, Vitaly Surazhsky and Craig Gotsman proposes an interesting algorithm.
| Fields inherited from class org.jcae.mesh.amibe.algos3d.AbstractAlgoHalfEdge |
maxEdgeLength, mesh, noSwapAfterProcessing, notInTree, notProcessed, nrFinal, nrTriangles, processed, swapped, tolerance, tree |
|
Constructor Summary |
ImproveConnectivity(Mesh m,
java.util.Map<java.lang.String,java.lang.String> options)
Creates a ImproveConnectivity instance. |
| Methods inherited from class org.jcae.mesh.amibe.algos3d.AbstractAlgoHalfEdge |
addToTree, appendDumpState, appendRestoreState, compute, countInnerTriangles, dumpState, postComputeTree, preProcessEdge, removeFromTree, restoreState, setProgressBarStatus, uniqueOrientation |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ImproveConnectivity
public ImproveConnectivity(Mesh m,
java.util.Map<java.lang.String,java.lang.String> options)
- Creates a
ImproveConnectivity instance.
- Parameters:
m - the Mesh instance to modifyoptions - map containing key-value pairs to modify algorithm
behaviour. Valid key is coplanar.
thisLogger
public java.util.logging.Logger thisLogger()
- Specified by:
thisLogger in class AbstractAlgoHalfEdge
preProcessAllHalfEdges
public void preProcessAllHalfEdges()
- Specified by:
preProcessAllHalfEdges in class AbstractAlgoHalfEdge
cost
public double cost(HalfEdge e)
- Specified by:
cost in class AbstractAlgoHalfEdge
canProcessEdge
public boolean canProcessEdge(HalfEdge current)
- Specified by:
canProcessEdge in class AbstractAlgoHalfEdge
processEdge
public HalfEdge processEdge(HalfEdge current,
double costCurrent)
- Specified by:
processEdge in class AbstractAlgoHalfEdge
postProcessAllHalfEdges
public void postProcessAllHalfEdges()
- Specified by:
postProcessAllHalfEdges in class AbstractAlgoHalfEdge
main
public static void main(java.lang.String[] args)
- Parameters:
args - xmlDir, -t tolerance | -n triangle, brepFile, output