Package org.jmol.jvxl.calc
Class MarchingCubes
java.lang.Object
org.jmol.util.TriangleData
org.jmol.jvxl.calc.MarchingCubes
- Direct Known Subclasses:
SimpleMarchingCubes
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
protected javajs.util.BS
protected javajs.util.BS
protected javajs.util.BS
protected javajs.util.BS
javajs.util.BS
protected boolean
protected int
protected int
protected int
protected int
protected static final javajs.util.V3[]
protected float
protected int
protected javajs.util.SB
protected final int[]
protected static final int[]
protected final javajs.util.V3[]
protected int[]
protected static final int[]
protected static final int[]
protected int[]
protected static final int[]
protected static final int[]
private boolean
protected float[]
protected static final short[]
protected boolean
protected boolean
protected boolean
private boolean
private boolean
protected int[][][]
protected boolean
protected boolean
protected final int[]
private javajs.util.P4
protected int
protected static final int
protected static final int
protected static final int
protected int
protected int
protected int
private javajs.util.P3i
protected final javajs.util.P3
protected final javajs.util.P3
protected VertexDataServer
protected final float[]
protected VolumeData
private float[][][]
protected final javajs.util.V3[]
protected int
protected static int[]
protected float[][]
Fields inherited from class org.jmol.util.TriangleData
cubeVertexOffsets, edgeVertexes, Pwr2, triangleTable2
-
Constructor Summary
ConstructorsConstructorDescriptionMarchingCubes
(VertexDataServer surfaceReader, VolumeData volumeData, Parameters params, javajs.util.BS bsVoxels) -
Method Summary
Modifier and TypeMethodDescriptionprotected 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
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
protected void
setParameters
(VolumeData volumeData, Parameters params)
-
Field Details
-
surfaceReader
-
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 -
isDensityRange
private boolean isDensityRange -
mode
protected int mode -
MODE_CUBE
protected static final int MODE_CUBE- See Also:
-
MODE_JVXL
protected static final int MODE_JVXL- See Also:
-
MODE_PLANES
protected static final int MODE_PLANES- See Also:
-
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 Details
-
MarchingCubes
public MarchingCubes() -
MarchingCubes
public MarchingCubes(VertexDataServer surfaceReader, VolumeData volumeData, Parameters params, javajs.util.BS bsVoxels)
-
-
Method Details
-
setParameters
-
calcVoxelVertexVectors
protected void calcVoxelVertexVectors() -
resetIndexPlane
protected int[][] resetIndexPlane(int[][] plane) -
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)
-