Package org.jmol.jvxl.data
Class VolumeData
java.lang.Object
org.jmol.jvxl.data.VolumeData
-
Field Summary
FieldsModifier and TypeFieldDescriptionbooleanprivate final javajs.util.V3private final javajs.util.M3booleanprivate booleanjavajs.util.P4(package private) floatfloatprivate floatfloatprivate floatintjavajs.util.V3[]final float[]private javajs.util.P3private final javajs.util.P3private javajs.util.P4private floatfinal javajs.util.V3[]private final javajs.util.M3final javajs.util.P3final float[]final javajs.util.V3[]final int[]private float[][][]floatprivate int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfloatcalculateFractionalPoint(float cutoff, javajs.util.P3 pointA, javajs.util.P3 pointB, float valueA, float valueB, javajs.util.P3 pt) floatcalcVoxelPlaneDistance(int x, int y, int z) voidcapData(javajs.util.P4 plane, float cutoff) floatdistancePointToPlane(javajs.util.T3 pt) floatdistanceToMappingPlane(javajs.util.T3 pt) voidfilterData(boolean isSquared, float invertCutoff) static floatgetFractional2DValue(float fx, float fy, float x11, float x12, float x21, float x22) float[]voidgetPoint(int ipt, javajs.util.P3 pt) intgetPointIndex(int x, int y, int z) floatfloat[]int[]float[][][]floatgetVoxelDataAt(int pt) floatgetVoxelValue(int x, int y, int z) intbooleanhasPlane()private intindexLower(float x, int xMax) periodic grids should have val[0] == val[xMax] voxelCount: 1....2....3....4....5 xMax/index: 0....1....2....3....4....private intindexUpper(float x, int xLower, int xMax) booleanisNearPlane(int x, int y, int z, float toPlaneParameter) floatlookupInterpolatedVoxelValue(javajs.util.T3 point, boolean getSource) private floatmantissa(float f) (package private) voidoffsetCenter(javajs.util.P3 center) voidsetDataDistanceToPlane(javajs.util.P4 plane) voidsetMappingPlane(javajs.util.P4 plane) private booleanvoidsetPlaneParameters(javajs.util.P4 plane) booleanvoidsetVolumetricOrigin(float x, float y, float z) voidsetVolumetricVector(int i, float x, float y, float z) intsetVoxelCounts(int nPointsX, int nPointsY, int nPointsZ) voidsetVoxelData(int pt, float value) voidsetVoxelDataAsArray(float[][][] voxelData) voidvoidsetVoxelMapValue(int x, int y, int z, float v) for sparse data mapping, as for a planevoidtransform(javajs.util.V3 v1, javajs.util.V3 v2) voidvoxelPtToXYZ(int x, int y, int z, javajs.util.T3 pt) voidxyzToVoxelPt(float x, float y, float z, javajs.util.T3i pt3i)
-
Field Details
-
sr
-
doIterate
public boolean doIterate -
volumetricOrigin
public final javajs.util.P3 volumetricOrigin -
origin
public final float[] origin -
volumetricVectors
public final javajs.util.V3[] volumetricVectors -
voxelCounts
public final int[] voxelCounts -
nPoints
public int nPoints -
voxelData
private float[][][] voxelData -
voxelMap
-
volumetricVectorLengths
public final float[] volumetricVectorLengths -
maxVectorLength
private float maxVectorLength -
minToPlaneDistance
private float minToPlaneDistance -
yzCount
private int yzCount -
unitVolumetricVectors
public final javajs.util.V3[] unitVolumetricVectors -
volumetricMatrix
private final javajs.util.M3 volumetricMatrix -
inverseMatrix
private final javajs.util.M3 inverseMatrix -
thePlane
private javajs.util.P4 thePlane -
thePlaneNormalMag
private float thePlaneNormalMag -
ptXyzTemp
private final javajs.util.P3 ptXyzTemp -
xmlData
-
mappingPlane
public javajs.util.P4 mappingPlane -
mappingPlaneNormalMag
float mappingPlaneNormalMag -
minGrid
public float minGrid -
maxGrid
public float maxGrid -
voxelVolume
public float voxelVolume -
oabc
public javajs.util.V3[] oabc -
isPeriodic
public boolean isPeriodic -
isSquared
private boolean isSquared -
edgeVector
private final javajs.util.V3 edgeVector -
ptTemp
private javajs.util.P3 ptTemp
-
-
Constructor Details
-
VolumeData
public VolumeData()
-
-
Method Details
-
getVoxelData
public float[][][] getVoxelData() -
setVoxelDataAsArray
public void setVoxelDataAsArray(float[][][] voxelData) -
hasPlane
public boolean hasPlane() -
setMappingPlane
public void setMappingPlane(javajs.util.P4 plane) -
distanceToMappingPlane
public float distanceToMappingPlane(javajs.util.T3 pt) -
setVolumetricOrigin
public void setVolumetricOrigin(float x, float y, float z) -
getOriginFloat
public float[] getOriginFloat() -
getYzCount
public int getYzCount() -
getVolumetricVectorLengths
public float[] getVolumetricVectorLengths() -
setVolumetricVector
public void setVolumetricVector(int i, float x, float y, float z) -
getVoxelCounts
public int[] getVoxelCounts() -
setVoxelCounts
public int setVoxelCounts(int nPointsX, int nPointsY, int nPointsZ) -
getVoxelDataAt
public float getVoxelDataAt(int pt) -
getPointIndex
public int getPointIndex(int x, int y, int z) -
getPoint
public void getPoint(int ipt, javajs.util.P3 pt) -
setVoxelData
public void setVoxelData(int pt, float value) -
setVoxelMap
public void setVoxelMap() -
setMatrix
private boolean setMatrix() -
transform
public void transform(javajs.util.V3 v1, javajs.util.V3 v2) -
setPlaneParameters
public void setPlaneParameters(javajs.util.P4 plane) -
calcVoxelPlaneDistance
public float calcVoxelPlaneDistance(int x, int y, int z) -
getToPlaneParameter
public float getToPlaneParameter() -
isNearPlane
public boolean isNearPlane(int x, int y, int z, float toPlaneParameter) -
distancePointToPlane
public float distancePointToPlane(javajs.util.T3 pt) -
voxelPtToXYZ
public void voxelPtToXYZ(int x, int y, int z, javajs.util.T3 pt) -
setUnitVectors
public boolean setUnitVectors() -
xyzToVoxelPt
public void xyzToVoxelPt(float x, float y, float z, javajs.util.T3i pt3i) -
lookupInterpolatedVoxelValue
public float lookupInterpolatedVoxelValue(javajs.util.T3 point, boolean getSource) -
mantissa
private float mantissa(float f) -
getVoxelValue
public float getVoxelValue(int x, int y, int z) -
getFractional2DValue
public static float getFractional2DValue(float fx, float fy, float x11, float x12, float x21, float x22) -
indexLower
private int indexLower(float x, int xMax) periodic grids should have val[0] == val[xMax] voxelCount: 1....2....3....4....5 xMax/index: 0....1....2....3....4.... nonper. ^ ---> [0,0] ^ --> [4, 4] periodic ^ ---> [3,4] ^ --> [0, 1]- Parameters:
x-xMax-- Returns:
- lower index in range
-
indexUpper
private int indexUpper(float x, int xLower, int xMax) -
offsetCenter
void offsetCenter(javajs.util.P3 center) -
setDataDistanceToPlane
public void setDataDistanceToPlane(javajs.util.P4 plane) -
filterData
public void filterData(boolean isSquared, float invertCutoff) -
capData
public void capData(javajs.util.P4 plane, float cutoff) -
setVolumetricXml
-
setVoxelMapValue
public void setVoxelMapValue(int x, int y, int z, float v) for sparse data mapping, as for a plane- Parameters:
x-y-z-v-
-
calculateFractionalPoint
public float calculateFractionalPoint(float cutoff, javajs.util.P3 pointA, javajs.util.P3 pointB, float valueA, float valueB, javajs.util.P3 pt)
-