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) class
LODMesh.Edge
(package private) class
LODMesh.Neighbor
(package private) class
LODMesh.NEList
(package private) class
LODMesh.PriorityQueue
(package private) class
LODMesh.Quadric
(package private) class
LODMesh.Triangle
(package private) class
LODMesh.Vertices
-
Field Summary
Fields Modifier and Type Field Description (package private) int[]
boundary
(package private) int
deciF
(package private) int
deciV
(package private) LODMesh.Quadric
dummyQE
(package private) WildMagic.LibFoundation.Mathematics.Vector3f
dummyv1
(package private) WildMagic.LibFoundation.Mathematics.Vector3f
dummyv2
(package private) WildMagic.LibFoundation.Mathematics.Vector3f
dummyv3
(package private) WildMagic.LibFoundation.Mathematics.Vector3f
dummyv4
(package private) int
HeapPointerN
(package private) LODMesh.Vertices[]
initialV
(package private) int
iterationnum
(package private) double
maxenergy
(package private) LODMesh.NEList[]
NEHead
(package private) LODMesh.NEList[]
NETail
(package private) LODMesh.Neighbor[]
NHead
(package private) LODMesh.Neighbor[]
NTail
(package private) int
numCANCEL
(package private) int
numE
(package private) int
numOK
(package private) WildMagic.LibFoundation.Mathematics.Vector3f[]
point
(package private) LODMesh.PriorityQueue
pqueue
(package private) double
realmax
(package private) LODMesh.Edge[]
Root
(package private) LODMesh.Triangle
THead
(package private) double
ThresholdGamma
(package private) LODMesh.Triangle
TTail
(package private) LODMesh.Vertices
VHead
(package private) LODMesh.Vertices
VTail
-
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 void
AppendE(LODMesh.Vertices dv1, LODMesh.Vertices dv2)
private void
AppendN(LODMesh.Triangle dv, LODMesh.Neighbor dTail)
private void
AppendNE(LODMesh.Edge dv, LODMesh.NEList dTail)
private void
AppendNE(LODMesh.Edge dv, LODMesh.NEList dHead, LODMesh.NEList dTail)
private void
AppendT(int dv1, int dv2, int dv3)
private void
AppendV(int dv)
private LODMesh.Edge
back(LODMesh.Edge now)
private LODMesh.Neighbor
back(LODMesh.Neighbor now)
private LODMesh.NEList
back(LODMesh.NEList now)
private LODMesh.Triangle
back(LODMesh.Triangle now)
private LODMesh.Vertices
back(LODMesh.Vertices now)
private boolean
Consistency(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)
private void
CrossVector(WildMagic.LibFoundation.Mathematics.Vector3f out, WildMagic.LibFoundation.Mathematics.Vector3f in1, WildMagic.LibFoundation.Mathematics.Vector3f in2)
void
Decimation(int objnum)
void
dispose()
Dispose the local memory.private double
DistanceS(WildMagic.LibFoundation.Mathematics.Vector3f dv1, WildMagic.LibFoundation.Mathematics.Vector3f dv2)
private void
EdgeCollapse(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)
private double
getEnergy(int i, int j)
private double
getEnergy(LODMesh.Vertices dv1, LODMesh.Vertices dv2)
void
getVFace(WildMagic.LibFoundation.Mathematics.Vector3f[] subpoint, int[][] subFace)
void
getVFace(WildMagic.LibFoundation.Mathematics.Vector3f[] subpoint, int[][] subFace, int[] ind)
private void
InitT()
private void
InitV()
private LODMesh.Edge
next(LODMesh.Edge now)
private LODMesh.Neighbor
next(LODMesh.Neighbor now)
private LODMesh.NEList
next(LODMesh.NEList now)
private LODMesh.Triangle
next(LODMesh.Triangle now)
private LODMesh.Vertices
next(LODMesh.Vertices now)
private boolean
PlaneSize(WildMagic.LibFoundation.Mathematics.Vector3f p1, WildMagic.LibFoundation.Mathematics.Vector3f p2, WildMagic.LibFoundation.Mathematics.Vector3f p3, WildMagic.LibFoundation.Mathematics.Vector3f ep)
private void
Remove(LODMesh.Neighbor dv)
private void
Remove(LODMesh.NEList dv)
private void
RemoveNeighbor(LODMesh.Triangle dt, int di, int dj)
private void
setNewPosition(int i, int j, WildMagic.LibFoundation.Mathematics.Vector3f dv)
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)
private void
setTNormal(int dv1, int dv2, int dv3)
private double
Size(WildMagic.LibFoundation.Mathematics.Vector3f dv)
private boolean
Update(WildMagic.LibFoundation.Mathematics.Vector3f dv)
private boolean
WillBeNonManifold(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)
-
-