org.openscience.jvxl.simplewriter
Class SimpleMarchingCubesOld

java.lang.Object
  extended by org.openscience.jvxl.simplewriter.SimpleMarchingCubesOld

public class SimpleMarchingCubesOld
extends Object


Field Summary
(package private)  BitSet bsValues
           
private  BitSet bsVoxels
           
private  int cubeCountX
           
private  int cubeCountY
           
private  int cubeCountZ
           
(package private) static Point3i[] cubeVertexOffsets
           
private  float cutoff
           
(package private)  int edgeCount
           
private static byte[] edgeVertexes
           
private  StringBuffer fractionData
           
private static short[] insideMaskTable
           
private  boolean isCutoffAbsolute
           
private  boolean isXLowToHigh
           
private  int[] linearOffsets
           
private  int mode
           
private static int MODE_BITSET
           
private static int MODE_CUBE
           
private static int MODE_GETXYZ
           
private  int[] nullNeighbor
           
private  int nY
           
private  int nZ
           
private static int[] Pwr2
           
private  VoxelDataCreator vdc
           
private  Point3i[] vertexPoints
           
private  float[] vertexValues
           
private  VolumeData volumeData
           
private static int[] xyPlanePts
           
(package private)  int yzCount
           
 
Constructor Summary
SimpleMarchingCubesOld(VoxelDataCreator vdc, VolumeData volumeData, float cutoff, boolean isCutoffAbsolute, boolean isXLowToHigh)
           
 
Method Summary
 BitSet getBsVoxels()
           
 String getEdgeData()
           
 int getLinearOffset(int x, int y, int z, int offset)
           
private  float getValue(int i, int x, int y, int z, int pt, float[] tempValues)
           
static boolean isInside(float voxelValue, float max, boolean isAbsolute)
           
private  boolean processOneCubical(int insideMask, int[] voxelPointIndexes, int x, int y, int z, int pt)
           
private  int[] propagateNeighborPointIndexes(int x, int y, int z, int pt, int[][] isoPointIndexes, int cellIndex)
           
(package private)  void setLinearOffsets()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

volumeData

private VolumeData volumeData

cutoff

private float cutoff

isCutoffAbsolute

private boolean isCutoffAbsolute

isXLowToHigh

private boolean isXLowToHigh

fractionData

private StringBuffer fractionData

cubeCountX

private int cubeCountX

cubeCountY

private int cubeCountY

cubeCountZ

private int cubeCountZ

nY

private int nY

nZ

private int nZ

bsVoxels

private BitSet bsVoxels

mode

private int mode

MODE_CUBE

private static final int MODE_CUBE
See Also:
Constant Field Values

MODE_BITSET

private static final int MODE_BITSET
See Also:
Constant Field Values

MODE_GETXYZ

private static final int MODE_GETXYZ
See Also:
Constant Field Values

vdc

private VoxelDataCreator vdc

vertexValues

private final float[] vertexValues

vertexPoints

private final Point3i[] vertexPoints

edgeCount

int edgeCount

xyPlanePts

private static int[] xyPlanePts

bsValues

BitSet bsValues

nullNeighbor

private final int[] nullNeighbor

Pwr2

private static final int[] Pwr2

cubeVertexOffsets

static final Point3i[] cubeVertexOffsets

linearOffsets

private final int[] linearOffsets

yzCount

int yzCount

edgeVertexes

private static final byte[] edgeVertexes

insideMaskTable

private static final short[] insideMaskTable
Constructor Detail

SimpleMarchingCubesOld

public SimpleMarchingCubesOld(VoxelDataCreator vdc,
                              VolumeData volumeData,
                              float cutoff,
                              boolean isCutoffAbsolute,
                              boolean isXLowToHigh)
Method Detail

getBsVoxels

public BitSet getBsVoxels()

getEdgeData

public String getEdgeData()

isInside

public static boolean isInside(float voxelValue,
                               float max,
                               boolean isAbsolute)

getValue

private float getValue(int i,
                       int x,
                       int y,
                       int z,
                       int pt,
                       float[] tempValues)

propagateNeighborPointIndexes

private int[] propagateNeighborPointIndexes(int x,
                                            int y,
                                            int z,
                                            int pt,
                                            int[][] isoPointIndexes,
                                            int cellIndex)

processOneCubical

private boolean processOneCubical(int insideMask,
                                  int[] voxelPointIndexes,
                                  int x,
                                  int y,
                                  int z,
                                  int pt)

setLinearOffsets

void setLinearOffsets()

getLinearOffset

public int getLinearOffset(int x,
                           int y,
                           int z,
                           int offset)