org.jmol.jvxl.calc
Class MarchingCubes
public
class
MarchingCubes
extends Object
Method Summary |
void | calcVertexPoint(int x, int y, int z, int vertex, Point3f pt) |
void | calcVoxelVertexVectors() |
int | generateSurfaceData(boolean isXLowToHigh) |
int | getLinearOffset(int x, int y, int z, int offset) |
static boolean | isInside(float voxelValue, float max, boolean isAbsolute) |
boolean | processOneCubical(int insideMask, int[] voxelPointIndexes, int x, int y, int z) |
int[] | propagateNeighborPointIndexes(int x, int y, int z, int[][] isoPointIndexes) |
void | setLinearOffsets() |
private int contourType
private int cubeCountX
private int cubeCountY
private int cubeCountZ
static final Point3i[] cubeVertexOffsets
static Vector3f[] cubeVertexVectors
private float cutoff
int edgeCount
private static final int[] edgeTypeTable
private final Vector3f[] edgeVectors
private static final byte[] edgeVertexes
private static final short[] insideMaskTable
private boolean isContoured
private boolean isCutoffAbsolute
boolean isXLowToHigh
private final int[] linearOffsets
private final int[] nullNeighbor
private final Point3f pointA
private final Point3f pt0
private static final byte[][] triangleTable2
private final Point3i[] vertexPoints
private final float[] vertexValues
public final Vector3f[] voxelVertexVectors
int xyCount
public MarchingCubes(
VertexDataServer voxelReader,
VolumeData volumeData, boolean isContoured, int contourType, float cutoff, boolean isCutoffAbsolute)
public void calcVertexPoint(int x, int y, int z, int vertex, Point3f pt)
private void calcVoxelVertexVectors()
public int generateSurfaceData(boolean isXLowToHigh)
public int getLinearOffset(int x, int y, int z, int offset)
public static boolean isInside(float voxelValue, float max, boolean isAbsolute)
private boolean processOneCubical(int insideMask, int[] voxelPointIndexes, int x, int y, int z)
private int[] propagateNeighborPointIndexes(int x, int y, int z, int[][] isoPointIndexes)
void setLinearOffsets()