Package org.jmol.jvxl.calc
Class MarchingCubes
- java.lang.Object
-
- org.jmol.util.TriangleData
-
- org.jmol.jvxl.calc.MarchingCubes
-
- Direct Known Subclasses:
SimpleMarchingCubes
public class MarchingCubes extends TriangleData
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
allInside
protected javajs.util.BS
bsExcludedPlanes
protected javajs.util.BS
bsExcludedTriangles
protected javajs.util.BS
bsExcludedVertices
protected javajs.util.BS
bsValues
javajs.util.BS
bsVoxels
protected boolean
colorDensity
protected int
contourType
protected int
cubeCountX
protected int
cubeCountY
protected int
cubeCountZ
protected static javajs.util.V3[]
cubeVertexVectors
protected float
cutoff
protected int
edgeCount
protected javajs.util.SB
edgeData
protected int[]
edgePointIndexes
protected static int[]
edgeTypeTable
protected javajs.util.V3[]
edgeVectors
protected int[]
edgeVertexPlanes
protected static int[]
edgeVertexPlanesHighToLow
protected static int[]
edgeVertexPlanesLowToHigh
protected int[]
edgeVertexPointers
protected static int[]
edgeVertexPointersHighToLow
protected static int[]
edgeVertexPointersLowToHigh
private boolean
excludePartialCubes
protected float[]
fReturn
protected static short[]
insideMaskTable
protected boolean
integrateSquared
protected boolean
isContoured
protected boolean
isCutoffAbsolute
private boolean
isInside
protected int[][][]
isoPointIndexPlanes
protected boolean
isSquared
protected boolean
isXLowToHigh
protected int[]
linearOffsets
private javajs.util.P4
mappingPlane
protected int
mode
protected static int
MODE_CUBE
protected static int
MODE_JVXL
protected static int
MODE_PLANES
protected int
nTriangles
protected int
nY
protected int
nZ
private javajs.util.P3i
offset
protected javajs.util.P3
pointA
protected javajs.util.P3
pt0
protected VertexDataServer
surfaceReader
protected float[]
vertexValues
protected VolumeData
volumeData
private float[][][]
voxelData
protected javajs.util.V3[]
voxelVertexVectors
protected int
yzCount
protected static int[]
yzPlanePts
protected float[][]
yzPlanes
-
Fields inherited from class org.jmol.util.TriangleData
cubeVertexOffsets, edgeVertexes, Pwr2, triangleTable2
-
-
Constructor Summary
Constructors Constructor Description MarchingCubes()
MarchingCubes(VertexDataServer surfaceReader, VolumeData volumeData, Parameters params, javajs.util.BS bsVoxels)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addEdgeData(float f)
protected void
addTriangle(int ia, int ib, int ic, int edgeType)
protected void
addVertex(int x, int y, int z, int pti, float value)
void
calcVertexPoint(int x, int y, int z, int vertex, javajs.util.P3 pt)
protected void
calcVoxelVertexVectors()
String
getEdgeData()
int
getLinearOffset(int x, int y, int z, int offset)
private void
getPlane(int i, boolean andSwap)
private float
getValue(int x, int y, int z, int pt, int i)
protected float
getValueArray(int x, int y, int z, int pt, float[] tempValues)
static boolean
isInside(float voxelValue, float max, boolean isAbsolute)
protected boolean
processOneCubical(int insideMask, int x, int y, int z, int pt)
protected void
processTriangles(int insideMask)
protected int[][]
resetIndexPlane(int[][] plane)
protected void
setLinearOffsets()
protected void
setParameters(VolumeData volumeData, Parameters params)
-
-
-
Field Detail
-
surfaceReader
protected VertexDataServer surfaceReader
-
volumeData
protected VolumeData volumeData
-
contourType
protected int contourType
-
isContoured
protected boolean isContoured
-
cutoff
protected float cutoff
-
isCutoffAbsolute
protected boolean isCutoffAbsolute
-
isSquared
protected boolean isSquared
-
isXLowToHigh
protected boolean isXLowToHigh
-
cubeCountX
protected int cubeCountX
-
cubeCountY
protected int cubeCountY
-
cubeCountZ
protected int cubeCountZ
-
nY
protected int nY
-
nZ
protected int nZ
-
yzCount
protected int yzCount
-
colorDensity
protected boolean colorDensity
-
integrateSquared
protected boolean integrateSquared
-
bsVoxels
public javajs.util.BS bsVoxels
-
bsExcludedVertices
protected javajs.util.BS bsExcludedVertices
-
bsExcludedTriangles
protected javajs.util.BS bsExcludedTriangles
-
bsExcludedPlanes
protected javajs.util.BS bsExcludedPlanes
-
edgeData
protected javajs.util.SB edgeData
-
excludePartialCubes
private boolean excludePartialCubes
-
mode
protected int mode
-
MODE_CUBE
protected static final int MODE_CUBE
- See Also:
- Constant Field Values
-
MODE_JVXL
protected static final int MODE_JVXL
- See Also:
- Constant Field Values
-
MODE_PLANES
protected static final int MODE_PLANES
- See Also:
- Constant Field Values
-
vertexValues
protected final float[] vertexValues
-
edgeCount
protected int edgeCount
-
voxelVertexVectors
protected final javajs.util.V3[] voxelVertexVectors
-
edgeVectors
protected final javajs.util.V3[] edgeVectors
-
yzPlanePts
protected static int[] yzPlanePts
-
edgePointIndexes
protected final int[] edgePointIndexes
-
isoPointIndexPlanes
protected int[][][] isoPointIndexPlanes
-
yzPlanes
protected float[][] yzPlanes
-
mappingPlane
private javajs.util.P4 mappingPlane
-
allInside
private boolean allInside
-
isInside
private boolean isInside
-
offset
private javajs.util.P3i offset
-
voxelData
private float[][][] voxelData
-
nTriangles
protected int nTriangles
-
bsValues
protected javajs.util.BS bsValues
-
pt0
protected final javajs.util.P3 pt0
-
pointA
protected final javajs.util.P3 pointA
-
edgeVertexPointersLowToHigh
protected static final int[] edgeVertexPointersLowToHigh
-
edgeVertexPointersHighToLow
protected static final int[] edgeVertexPointersHighToLow
-
edgeVertexPointers
protected int[] edgeVertexPointers
-
edgeVertexPlanesLowToHigh
protected static final int[] edgeVertexPlanesLowToHigh
-
edgeVertexPlanesHighToLow
protected static final int[] edgeVertexPlanesHighToLow
-
edgeVertexPlanes
protected int[] edgeVertexPlanes
-
fReturn
protected float[] fReturn
-
cubeVertexVectors
protected static final javajs.util.V3[] cubeVertexVectors
-
edgeTypeTable
protected static final int[] edgeTypeTable
-
linearOffsets
protected final int[] linearOffsets
-
insideMaskTable
protected static final short[] insideMaskTable
-
-
Constructor Detail
-
MarchingCubes
public MarchingCubes()
-
MarchingCubes
public MarchingCubes(VertexDataServer surfaceReader, VolumeData volumeData, Parameters params, javajs.util.BS bsVoxels)
-
-
Method Detail
-
setParameters
protected void setParameters(VolumeData volumeData, Parameters params)
-
calcVoxelVertexVectors
protected void calcVoxelVertexVectors()
-
resetIndexPlane
protected int[][] resetIndexPlane(int[][] plane)
-
getEdgeData
public String getEdgeData()
-
getValue
private float getValue(int x, int y, int z, int pt, int i)
-
getPlane
private void getPlane(int i, boolean andSwap)
-
processTriangles
protected void processTriangles(int insideMask)
-
addVertex
protected void addVertex(int x, int y, int z, int pti, float value)
-
addTriangle
protected void addTriangle(int ia, int ib, int ic, int edgeType)
-
getValueArray
protected float getValueArray(int x, int y, int z, int pt, float[] tempValues)
-
isInside
public static boolean isInside(float voxelValue, float max, boolean isAbsolute)
-
processOneCubical
protected boolean processOneCubical(int insideMask, int x, int y, int z, int pt)
-
addEdgeData
protected void addEdgeData(float f)
-
calcVertexPoint
public void calcVertexPoint(int x, int y, int z, int vertex, javajs.util.P3 pt)
-
setLinearOffsets
protected void setLinearOffsets()
-
getLinearOffset
public int getLinearOffset(int x, int y, int z, int offset)
-
-