Modifier and Type | Field and Description |
---|---|
javax.vecmath.Tuple3f[] |
altVertices |
java.util.BitSet |
bsDisplay |
java.util.BitSet |
bsPolygons |
java.util.BitSet |
bsSlabDisplay |
java.util.BitSet |
bsSlabGhost |
private int |
checkCount |
short |
colix |
private boolean |
doCap |
private boolean |
doClear |
private boolean |
doGhost |
boolean |
haveQuads |
protected int |
iA |
protected int |
iB |
protected int |
iC |
private int |
iD |
private int |
iE |
boolean |
isColorSolid |
boolean |
isMerged |
boolean |
isTriangleSet |
private short |
lastColix |
private int |
lastColor |
javax.vecmath.Matrix4f |
mat4 |
int |
mergePolygonCount0 |
int |
mergeVertexCount0 |
java.lang.String |
meshType |
int |
normalCount |
javax.vecmath.Tuple3f[] |
normals |
javax.vecmath.Vector3f[] |
normalsTemp |
protected int |
normixCount |
int |
nSets |
javax.vecmath.Point3f |
offset |
short[] |
polygonColixes |
int |
polygonCount |
int |
polygonCount0 |
int[][] |
polygonIndexes |
protected static int |
SEED_COUNT |
short |
slabColix |
int |
slabMeshType |
java.lang.StringBuffer |
slabOptions |
javax.vecmath.Vector3f[] |
spanningVectors |
java.util.BitSet[] |
surfaceSet |
short[] |
vertexColixes |
int |
vertexCount |
int |
vertexCount0 |
int[] |
vertexSets |
int[] |
vertexSource |
float[] |
vertexValues |
javax.vecmath.Point3f[] |
vertices |
Constructor and Description |
---|
MeshSurface() |
MeshSurface(int[][] polygonIndexes,
javax.vecmath.Tuple3f[] vertices,
int nVertices,
javax.vecmath.Tuple3f[] normals,
int nNormals) |
MeshSurface(javax.vecmath.Point3f[] vertices,
float[] vertexValues,
int vertexCount,
int[][] polygonIndexes,
int polygonCount,
int checkCount) |
Modifier and Type | Method and Description |
---|---|
protected int |
addIntersectionVertex(javax.vecmath.Point3f vertex,
float value,
int source,
int set,
java.util.Map<java.lang.String,java.lang.Integer> mapEdge,
int i1,
int i2) |
private int |
addPolygon(int[] polygon,
java.util.BitSet bs) |
protected int |
addPolygon(int[] polygon,
int color,
java.util.BitSet bs) |
private int |
addPolygon(int vertexA,
int vertexB,
int vertexC,
int check,
int check2,
int color,
java.util.BitSet bs) |
void |
addQuad(int vertexA,
int vertexB,
int vertexC,
int vertexD) |
void |
addTriangle(int vertexA,
int vertexB,
int vertexC) |
int |
addTriangleCheck(int vertexA,
int vertexB,
int vertexC,
int check,
int check2,
int color) |
int |
addVertexCopy(javax.vecmath.Point3f vertex) |
int |
addVertexCopy(javax.vecmath.Point3f vertex,
float value) |
protected int |
addVertexCopy(javax.vecmath.Point3f vertex,
float value,
boolean assocNormals,
int iNormal) |
private static float |
checkSlab(int tokType,
javax.vecmath.Point3f v,
float val,
float distance,
javax.vecmath.Point4f plane,
javax.vecmath.Point3f[] ptCenters,
java.util.BitSet bs) |
static java.lang.Object[] |
getCapSlabObject(java.lang.String s,
boolean isCap)
legacy -- for some scripts with early isosurface slabbing
|
private boolean |
getDE(float[] fracs,
int fD,
int i1,
int i2,
int i3,
boolean toss23) |
int[][] |
getFaces() |
void |
getIntersection(float distance,
javax.vecmath.Point4f plane,
javax.vecmath.Point3f[] ptCenters,
java.util.List<javax.vecmath.Point3f[]> vData,
float[] fData,
java.util.BitSet bsSource,
MeshSurface meshSurface,
boolean andCap,
boolean doClean,
int tokType,
boolean isGhost) |
java.lang.String |
getSlabColor() |
static java.lang.Object[] |
getSlabObject(int tok,
java.lang.Object data,
boolean isCap,
java.lang.Object colorData) |
java.lang.String |
getSlabTranslucency() |
java.lang.String |
getSlabType() |
static java.lang.Object[] |
getSlabWithinRange(float min,
float max) |
static float |
getSphericalInterpolationFraction(double r,
double valueA,
double valueB,
double d) |
javax.vecmath.Tuple3f[] |
getVertices() |
private static javax.vecmath.Point3f |
interpolateFraction(javax.vecmath.Point3f v1,
javax.vecmath.Point3f v2,
float f,
float val1,
float val2,
float[] values,
float[] fracs,
int i) |
private static javax.vecmath.Point3f |
interpolatePoint(javax.vecmath.Point3f v1,
javax.vecmath.Point3f v2,
float d1,
float d2,
float val1,
float val2,
float[] values,
float[] fracs,
int i) |
private javax.vecmath.Point3f |
interpolateSphere(javax.vecmath.Point3f v1,
javax.vecmath.Point3f v2,
float d1,
float d2,
double absD,
float val1,
float val2,
float[] values,
float[] fracs,
int i) |
void |
invalidatePolygons() |
private static float |
minDist(javax.vecmath.Point3f pt,
javax.vecmath.Point3f[] ptCenters) |
void |
resetSlab() |
protected boolean |
setABC(int i) |
void |
setColix(short colix) |
private static int |
setPoint(float[] fracs,
int i,
int i0,
int i1) |
private void |
setPolygonColix(int index,
short colix) |
void |
setPolygonCount(int polygonCount) |
void |
setSlab(java.util.BitSet bsDisplay,
java.util.BitSet bsGhost,
java.lang.String type,
java.lang.String color,
float translucency) |
protected void |
slabBrillouin(javax.vecmath.Point3f[] unitCellVectors) |
void |
slabPolygons(java.util.List<java.lang.Object[]> slabInfo,
boolean allowCap) |
boolean |
slabPolygons(java.lang.Object[] slabObject,
boolean allowCap) |
protected static final int SEED_COUNT
public javax.vecmath.Vector3f[] spanningVectors
public java.lang.String meshType
public int vertexCount
public javax.vecmath.Point3f[] vertices
public float[] vertexValues
public int[] vertexSource
public int polygonCount
public int[][] polygonIndexes
public boolean isTriangleSet
public boolean haveQuads
public short colix
public boolean isColorSolid
public javax.vecmath.Point3f offset
public javax.vecmath.Tuple3f[] altVertices
public short[] polygonColixes
public short[] vertexColixes
public javax.vecmath.Tuple3f[] normals
public javax.vecmath.Vector3f[] normalsTemp
public int normalCount
protected int normixCount
public java.util.BitSet bsPolygons
public javax.vecmath.Matrix4f mat4
public java.util.BitSet[] surfaceSet
public int[] vertexSets
public int nSets
private int checkCount
private int lastColor
private short lastColix
protected int iA
protected int iB
protected int iC
public int polygonCount0
public int vertexCount0
public java.util.BitSet bsSlabDisplay
public java.util.BitSet bsSlabGhost
public int slabMeshType
public short slabColix
public java.util.BitSet bsDisplay
public java.lang.StringBuffer slabOptions
private boolean doClear
private boolean doGhost
private boolean doCap
private int iD
private int iE
public int mergeVertexCount0
public int mergePolygonCount0
public boolean isMerged
public MeshSurface()
public MeshSurface(int[][] polygonIndexes, javax.vecmath.Tuple3f[] vertices, int nVertices, javax.vecmath.Tuple3f[] normals, int nNormals)
public MeshSurface(javax.vecmath.Point3f[] vertices, float[] vertexValues, int vertexCount, int[][] polygonIndexes, int polygonCount, int checkCount)
public javax.vecmath.Tuple3f[] getVertices()
public int[][] getFaces()
public void setColix(short colix)
public int addVertexCopy(javax.vecmath.Point3f vertex)
public void addTriangle(int vertexA, int vertexB, int vertexC)
public void addQuad(int vertexA, int vertexB, int vertexC, int vertexD)
public void setPolygonCount(int polygonCount)
public int addVertexCopy(javax.vecmath.Point3f vertex, float value)
public int addTriangleCheck(int vertexA, int vertexB, int vertexC, int check, int check2, int color)
private int addPolygon(int vertexA, int vertexB, int vertexC, int check, int check2, int color, java.util.BitSet bs)
protected int addPolygon(int[] polygon, int color, java.util.BitSet bs)
private int addPolygon(int[] polygon, java.util.BitSet bs)
private void setPolygonColix(int index, short colix)
public void invalidatePolygons()
protected boolean setABC(int i)
public void setSlab(java.util.BitSet bsDisplay, java.util.BitSet bsGhost, java.lang.String type, java.lang.String color, float translucency)
public java.lang.String getSlabColor()
public java.lang.String getSlabTranslucency()
public java.lang.String getSlabType()
public static java.lang.Object[] getSlabWithinRange(float min, float max)
public void resetSlab()
public static java.lang.Object[] getSlabObject(int tok, java.lang.Object data, boolean isCap, java.lang.Object colorData)
public static java.lang.Object[] getCapSlabObject(java.lang.String s, boolean isCap)
s
- isCap
- public void slabPolygons(java.util.List<java.lang.Object[]> slabInfo, boolean allowCap)
public boolean slabPolygons(java.lang.Object[] slabObject, boolean allowCap)
protected void slabBrillouin(javax.vecmath.Point3f[] unitCellVectors)
unitCellVectors
- protected int addIntersectionVertex(javax.vecmath.Point3f vertex, float value, int source, int set, java.util.Map<java.lang.String,java.lang.Integer> mapEdge, int i1, int i2)
protected int addVertexCopy(javax.vecmath.Point3f vertex, float value, boolean assocNormals, int iNormal)
vertex
- value
- assocNormals
- iNormal
- public void getIntersection(float distance, javax.vecmath.Point4f plane, javax.vecmath.Point3f[] ptCenters, java.util.List<javax.vecmath.Point3f[]> vData, float[] fData, java.util.BitSet bsSource, MeshSurface meshSurface, boolean andCap, boolean doClean, int tokType, boolean isGhost)
distance
- a distance from a plane or pointplane
- a slabbing planeptCenters
- a set of atoms to measure distance fromvData
- when not null, this is a query, not an actual slabbingfData
- vertex values or other data to overlaybsSource
- TODOmeshSurface
- second surface; not implemented -- still some problems thereandCap
- to cap this off, crudely onlydoClean
- compact set - draw onlytokType
- type of slabisGhost
- translucent slab, so we mark slabbed trianglesprivate static int setPoint(float[] fracs, int i, int i0, int i1)
private boolean getDE(float[] fracs, int fD, int i1, int i2, int i3, boolean toss23)
private static float checkSlab(int tokType, javax.vecmath.Point3f v, float val, float distance, javax.vecmath.Point4f plane, javax.vecmath.Point3f[] ptCenters, java.util.BitSet bs)
private static float minDist(javax.vecmath.Point3f pt, javax.vecmath.Point3f[] ptCenters)
private javax.vecmath.Point3f interpolateSphere(javax.vecmath.Point3f v1, javax.vecmath.Point3f v2, float d1, float d2, double absD, float val1, float val2, float[] values, float[] fracs, int i)
private static javax.vecmath.Point3f interpolatePoint(javax.vecmath.Point3f v1, javax.vecmath.Point3f v2, float d1, float d2, float val1, float val2, float[] values, float[] fracs, int i)
private static javax.vecmath.Point3f interpolateFraction(javax.vecmath.Point3f v1, javax.vecmath.Point3f v2, float f, float val1, float val2, float[] values, float[] fracs, int i)
public static float getSphericalInterpolationFraction(double r, double valueA, double valueB, double d)