Class LODMesh
- java.lang.Object
-
- gov.nih.mipav.view.renderer.WildMagic.Decimate.LODMesh
-
public class LODMesh extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classLODMesh.Edge(package private) classLODMesh.Neighbor(package private) classLODMesh.NEList(package private) classLODMesh.PriorityQueue(package private) classLODMesh.Quadric(package private) classLODMesh.Triangle(package private) classLODMesh.Vertices
-
Field Summary
Fields Modifier and Type Field Description (package private) int[]boundary(package private) intdeciF(package private) intdeciV(package private) LODMesh.QuadricdummyQE(package private) WildMagic.LibFoundation.Mathematics.Vector3fdummyv1(package private) WildMagic.LibFoundation.Mathematics.Vector3fdummyv2(package private) WildMagic.LibFoundation.Mathematics.Vector3fdummyv3(package private) WildMagic.LibFoundation.Mathematics.Vector3fdummyv4(package private) intHeapPointerN(package private) LODMesh.Vertices[]initialV(package private) intiterationnum(package private) doublemaxenergy(package private) LODMesh.NEList[]NEHead(package private) LODMesh.NEList[]NETail(package private) LODMesh.Neighbor[]NHead(package private) LODMesh.Neighbor[]NTail(package private) intnumCANCEL(package private) intnumE(package private) intnumOK(package private) WildMagic.LibFoundation.Mathematics.Vector3f[]point(package private) LODMesh.PriorityQueuepqueue(package private) doublerealmax(package private) LODMesh.Edge[]Root(package private) LODMesh.TriangleTHead(package private) doubleThresholdGamma(package private) LODMesh.TriangleTTail(package private) LODMesh.VerticesVHead(package private) LODMesh.VerticesVTail
-
Constructor Summary
Constructors Constructor Description LODMesh(int nv1, int nv2, int[][] dFace, WildMagic.LibFoundation.Mathematics.Vector3f[] rpoint, int[] rboundary)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidAppendE(LODMesh.Vertices dv1, LODMesh.Vertices dv2)private voidAppendN(LODMesh.Triangle dv, LODMesh.Neighbor dTail)private voidAppendNE(LODMesh.Edge dv, LODMesh.NEList dTail)private voidAppendNE(LODMesh.Edge dv, LODMesh.NEList dHead, LODMesh.NEList dTail)private voidAppendT(int dv1, int dv2, int dv3)private voidAppendV(int dv)private LODMesh.Edgeback(LODMesh.Edge now)private LODMesh.Neighborback(LODMesh.Neighbor now)private LODMesh.NEListback(LODMesh.NEList now)private LODMesh.Triangleback(LODMesh.Triangle now)private LODMesh.Verticesback(LODMesh.Vertices now)private booleanConsistency(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)private voidCrossVector(WildMagic.LibFoundation.Mathematics.Vector3f out, WildMagic.LibFoundation.Mathematics.Vector3f in1, WildMagic.LibFoundation.Mathematics.Vector3f in2)voidDecimation(int objnum)voiddispose()Dispose the local memory.private doubleDistanceS(WildMagic.LibFoundation.Mathematics.Vector3f dv1, WildMagic.LibFoundation.Mathematics.Vector3f dv2)private voidEdgeCollapse(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)private doublegetEnergy(int i, int j)private doublegetEnergy(LODMesh.Vertices dv1, LODMesh.Vertices dv2)voidgetVFace(WildMagic.LibFoundation.Mathematics.Vector3f[] subpoint, int[][] subFace)voidgetVFace(WildMagic.LibFoundation.Mathematics.Vector3f[] subpoint, int[][] subFace, int[] ind)private voidInitT()private voidInitV()private LODMesh.Edgenext(LODMesh.Edge now)private LODMesh.Neighbornext(LODMesh.Neighbor now)private LODMesh.NEListnext(LODMesh.NEList now)private LODMesh.Trianglenext(LODMesh.Triangle now)private LODMesh.Verticesnext(LODMesh.Vertices now)private booleanPlaneSize(WildMagic.LibFoundation.Mathematics.Vector3f p1, WildMagic.LibFoundation.Mathematics.Vector3f p2, WildMagic.LibFoundation.Mathematics.Vector3f p3, WildMagic.LibFoundation.Mathematics.Vector3f ep)private voidRemove(LODMesh.Neighbor dv)private voidRemove(LODMesh.NEList dv)private voidRemoveNeighbor(LODMesh.Triangle dt, int di, int dj)private voidsetNewPosition(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)private voidsetNormal(WildMagic.LibFoundation.Mathematics.Vector3f dln, int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f newp, WildMagic.LibFoundation.Mathematics.Vector3f dv1, WildMagic.LibFoundation.Mathematics.Vector3f dv2)private voidsetTNormal(int dv1, int dv2, int dv3)private doubleSize(WildMagic.LibFoundation.Mathematics.Vector3f dv)private booleanUpdate(WildMagic.LibFoundation.Mathematics.Vector3f dv)private booleanWillBeNonManifold(int i, int j)
-
-
-
Field Detail
-
numOK
int numOK
-
numCANCEL
int numCANCEL
-
deciV
int deciV
-
deciF
int deciF
-
numE
int numE
-
iterationnum
int iterationnum
-
initialV
LODMesh.Vertices[] initialV
-
ThresholdGamma
double ThresholdGamma
-
VHead
LODMesh.Vertices VHead
-
VTail
LODMesh.Vertices VTail
-
THead
LODMesh.Triangle THead
-
TTail
LODMesh.Triangle TTail
-
NEHead
LODMesh.NEList[] NEHead
-
NETail
LODMesh.NEList[] NETail
-
maxenergy
double maxenergy
-
realmax
double realmax
-
Root
LODMesh.Edge[] Root
-
pqueue
LODMesh.PriorityQueue pqueue
-
HeapPointerN
int HeapPointerN
-
NHead
LODMesh.Neighbor[] NHead
-
NTail
LODMesh.Neighbor[] NTail
-
point
WildMagic.LibFoundation.Mathematics.Vector3f[] point
-
boundary
int[] boundary
-
dummyQE
LODMesh.Quadric dummyQE
-
dummyv1
WildMagic.LibFoundation.Mathematics.Vector3f dummyv1
-
dummyv2
WildMagic.LibFoundation.Mathematics.Vector3f dummyv2
-
dummyv3
WildMagic.LibFoundation.Mathematics.Vector3f dummyv3
-
dummyv4
WildMagic.LibFoundation.Mathematics.Vector3f dummyv4
-
-
Method Detail
-
dispose
public void dispose()
Dispose the local memory.
-
getVFace
public void getVFace(WildMagic.LibFoundation.Mathematics.Vector3f[] subpoint, int[][] subFace)
-
getVFace
public void getVFace(WildMagic.LibFoundation.Mathematics.Vector3f[] subpoint, int[][] subFace, int[] ind)
-
RemoveNeighbor
private void RemoveNeighbor(LODMesh.Triangle dt, int di, int dj)
-
Decimation
public void Decimation(int objnum)
-
Update
private boolean Update(WildMagic.LibFoundation.Mathematics.Vector3f dv)
-
Size
private double Size(WildMagic.LibFoundation.Mathematics.Vector3f dv)
-
DistanceS
private double DistanceS(WildMagic.LibFoundation.Mathematics.Vector3f dv1, WildMagic.LibFoundation.Mathematics.Vector3f dv2)
-
EdgeCollapse
private void EdgeCollapse(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)
-
CrossVector
private void CrossVector(WildMagic.LibFoundation.Mathematics.Vector3f out, WildMagic.LibFoundation.Mathematics.Vector3f in1, WildMagic.LibFoundation.Mathematics.Vector3f in2)
-
setNormal
private void setNormal(WildMagic.LibFoundation.Mathematics.Vector3f dln, int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f newp, WildMagic.LibFoundation.Mathematics.Vector3f dv1, WildMagic.LibFoundation.Mathematics.Vector3f dv2)
-
WillBeNonManifold
private boolean WillBeNonManifold(int i, int j)
-
Consistency
private boolean Consistency(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)
-
PlaneSize
private boolean PlaneSize(WildMagic.LibFoundation.Mathematics.Vector3f p1, WildMagic.LibFoundation.Mathematics.Vector3f p2, WildMagic.LibFoundation.Mathematics.Vector3f p3, WildMagic.LibFoundation.Mathematics.Vector3f ep)
-
setNewPosition
private void setNewPosition(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)
-
InitV
private void InitV()
-
InitT
private void InitT()
-
AppendV
private void AppendV(int dv)
-
getEnergy
private double getEnergy(LODMesh.Vertices dv1, LODMesh.Vertices dv2)
-
getEnergy
private double getEnergy(int i, int j)
-
AppendE
private void AppendE(LODMesh.Vertices dv1, LODMesh.Vertices dv2)
-
AppendNE
private void AppendNE(LODMesh.Edge dv, LODMesh.NEList dTail)
-
AppendNE
private void AppendNE(LODMesh.Edge dv, LODMesh.NEList dHead, LODMesh.NEList dTail)
-
AppendN
private void AppendN(LODMesh.Triangle dv, LODMesh.Neighbor dTail)
-
setTNormal
private void setTNormal(int dv1, int dv2, int dv3)
-
AppendT
private void AppendT(int dv1, int dv2, int dv3)
-
Remove
private void Remove(LODMesh.Neighbor dv)
-
Remove
private void Remove(LODMesh.NEList dv)
-
next
private LODMesh.Vertices next(LODMesh.Vertices now)
-
back
private LODMesh.Vertices back(LODMesh.Vertices now)
-
next
private LODMesh.Triangle next(LODMesh.Triangle now)
-
back
private LODMesh.Triangle back(LODMesh.Triangle now)
-
next
private LODMesh.Neighbor next(LODMesh.Neighbor now)
-
back
private LODMesh.Neighbor back(LODMesh.Neighbor now)
-
next
private LODMesh.Edge next(LODMesh.Edge now)
-
back
private LODMesh.Edge back(LODMesh.Edge now)
-
next
private LODMesh.NEList next(LODMesh.NEList now)
-
back
private LODMesh.NEList back(LODMesh.NEList now)
-
-