public class IsosurfaceMesh extends Mesh
Modifier and Type | Field and Description |
---|---|
private Map<Integer,Integer> |
assocGridPointMap |
private Map<Integer,javajs.util.V3> |
assocGridPointNormals |
(package private) BS |
bsVdw |
(package private) Object |
calculatedArea |
(package private) Object |
calculatedVolume |
(package private) javajs.util.P3[] |
centers |
ColorEncoder |
colorEncoder |
boolean |
colorPhased |
(package private) short[] |
contourColixes |
(package private) float[] |
contourValues |
int |
dataType |
int |
firstRealVertex |
boolean |
hasGridPoints |
(package private) Object |
info |
JvxlData |
jvxlData |
private int |
mergeAssociatedNormalCount |
int |
vertexIncrement |
atomIndex, bsTemp, cappingObject, checkByteCount, color, colorCommand, colorDensity, colorType, connections, diameter, drawTriangles, fillTriangles, frontOnly, havePlanarContours, haveXyPoints, index, insideOut, isTwoSided, isValid, lattice, lighting, lineData, linkedMesh, meshColix, modelIndex, normixes, PREVIOUS_MESH_ID, ptCenter, recalcAltVertices, scale3d, scriptCommand, showContourLines, showPoints, showTriangles, slabbingObject, symopColixes, symopNormixes, symops, thisID, title, unitCell, useColix, vAB, vAC, vertexColorMap, visibilityFlags, visible, volumeRenderPointSize, vTemp, width
altVertices, bsDisplay, bsPolygons, bsSlabDisplay, bsSlabGhost, bsTransPolygons, colix, colixBack, haveQuads, iA, iB, iC, isColorSolid, isMerged, isTriangleSet, mat4, mergePolygonCount0, mergeVertexCount0, meshType, normalCount, normals, normalsTemp, normixCount, nSets, offset, polygonColixes, polygonCount, polygonCount0, polygonIndexes, polygonTranslucencies, SEED_COUNT, slabColix, slabMeshType, slabOptions, spanningVectors, surfaceSet, vertexColixes, vertexCount, vertexCount0, vertexSets, vertexSource, vertexValues, vertices
Constructor and Description |
---|
IsosurfaceMesh(String thisID,
short colix,
int index) |
Modifier and Type | Method and Description |
---|---|
private static void |
addColorToMap(Map<String,BS> colorMap,
String color,
BS bs)
adds a set of specifically-colored vertices to the map,
ensuring that no vertex is in two maps.
|
static void |
addContourPoints(javajs.util.List<Object> v,
BS bsContour,
int i,
javajs.util.SB fData,
javajs.util.P3[] vertices,
float[] vertexValues,
int iA,
int iB,
int iC,
float value) |
(package private) int |
addVertexCopy(javajs.util.P3 vertex,
float value,
int assocVertex,
boolean associateNormals) |
(package private) void |
allocVertexColixes() |
(package private) void |
checkAllocColixes() |
private static float |
checkPt(float[] vertexValues,
int i,
int j,
float v)
two values -- v1, and v2, which need not be ordered v1 < v2.
|
(package private) void |
clearType(String meshType,
boolean iAddGridPoints) |
(package private) void |
colorVertices(short colix,
BS bs,
boolean isAtoms)
color a specific set of vertices a specific color
|
(package private) void |
deleteContours() |
private void |
get3dContour(javajs.util.List<Object> v,
float value,
short colix) |
javajs.util.P3[] |
getBoundingBox() |
(package private) javajs.util.P3[] |
getCenters() |
(package private) Map<String,Object> |
getContourList(Viewer viewer) |
private static javajs.util.P3 |
getContourPoint(javajs.util.P3[] vertices,
int i,
int j,
float f) |
javajs.util.List<Object>[] |
getContours()
create a set of contour data.
|
(package private) javajs.util.P4 |
getFacePlane(int i,
javajs.util.V3 vNorm) |
protected float |
getMinDistance2ForVertexGrouping() |
SymmetryInterface |
getUnitCell() |
BS |
getVisibleVertexBitSet() |
protected void |
merge(MeshData m) |
private static int |
mergePolygons(MeshSurface m,
int ipt,
int vertexCount,
int[][] newPolygons) |
void |
reinitializeLightingAndColor(Viewer viewer) |
(package private) void |
remapColors(Viewer viewer,
ColorEncoder ce,
float translucentLevel)
remaps colors based on a new color scheme or translucency level
|
private void |
resetBoundingBox() |
(package private) void |
setColorCommand()
just sets the color command for this isosurface.
|
(package private) void |
setColorsFromJvxlData(int colorRgb)
from Isosurface.notifySurfaceGenerationCompleted()
starting with Jmol 12.1.50, JVXL files contain color, translucency, color
scheme information, and vertex color mappings (as from COLOR ISOSURFACE
{hydrophobic} WHITE), returning these settings when the JVXL file is
opened.
|
static void |
setContourVector(javajs.util.List<Object> v,
int nPolygons,
BS bsContour,
float value,
short colix,
int color,
javajs.util.SB fData) |
void |
setDiscreteColixes(float[] values,
short[] colixes) |
(package private) void |
setJvxlColorMap(boolean isAll)
set up the jvxlData fields needed for either just the
header (isAll = false) or the full file (isAll = true)
|
(package private) void |
setJvxlDataRendering() |
void |
setMerged(boolean TF) |
void |
setTranslucent(boolean isTranslucent,
float iLevel) |
(package private) void |
setVertexColixesForAtoms(Viewer viewer,
short[] colixes,
int[] atomMap,
BS bs) |
(package private) void |
setVertexColorMap() |
protected void |
slabBrillouin(javajs.util.P3[] unitCellPoints)
"slabs" an isosurface into the first Brillouin zone moving points as
necessary.
|
protected void |
sumVertexNormals(javajs.util.P3[] vertices,
javajs.util.V3[] vectorSums) |
void |
updateCoordinates(javajs.util.M4 m,
BS bs)
bs will be null if this is a set from the new isosurface MOVE [mat4] command
|
checkWithin, clear, clearMesh, getNormals, getNormalsTemp, getOffsetVertices, getRendering, getState, getVertexIndexFromNumber, getVisibleVBS, initialize, mesh1, rotateTranslate, setLighting, setNormixes, setShowWithin, setTokenProperty, setVisibilityFlags, sumVertexNormals2
addIntersectionVertex, addPolygonC, addQuad, addTriangle, addTriangleCheck, addV, addVCVal, getCapSlabObject, getFaces, getIntersection, getSlabColor, getSlabTranslucency, getSlabType, getSphereData, getSphericalInterpolationFraction, getVertices, invalidatePolygons, newMesh, newSlab, resetSlab, resetTransPolygons, setABC, setColix, setColixBack, setPolygonCount, setSlab, setTranslucentVertices, slabPolygons, slabPolygonsList
public JvxlData jvxlData
public int vertexIncrement
public int firstRealVertex
public int dataType
public boolean hasGridPoints
Object calculatedArea
Object calculatedVolume
Object info
private int mergeAssociatedNormalCount
javajs.util.P3[] centers
float[] contourValues
short[] contourColixes
public ColorEncoder colorEncoder
BS bsVdw
public boolean colorPhased
IsosurfaceMesh(String thisID, short colix, int index)
void clearType(String meshType, boolean iAddGridPoints)
void allocVertexColixes()
int addVertexCopy(javajs.util.P3 vertex, float value, int assocVertex, boolean associateNormals)
public void setTranslucent(boolean isTranslucent, float iLevel)
setTranslucent
in class Mesh
public void setMerged(boolean TF)
protected void sumVertexNormals(javajs.util.P3[] vertices, javajs.util.V3[] vectorSums)
sumVertexNormals
in class Mesh
javajs.util.P3[] getCenters()
javajs.util.P4 getFacePlane(int i, javajs.util.V3 vNorm)
public javajs.util.List<Object>[] getContours()
private void get3dContour(javajs.util.List<Object> v, float value, short colix)
public static void setContourVector(javajs.util.List<Object> v, int nPolygons, BS bsContour, float value, short colix, int color, javajs.util.SB fData)
public static void addContourPoints(javajs.util.List<Object> v, BS bsContour, int i, javajs.util.SB fData, javajs.util.P3[] vertices, float[] vertexValues, int iA, int iB, int iC, float value)
private static float checkPt(float[] vertexValues, int i, int j, float v)
vertexValues
- i
- j
- v
- private static javajs.util.P3 getContourPoint(javajs.util.P3[] vertices, int i, int j, float f)
public void setDiscreteColixes(float[] values, short[] colixes)
Map<String,Object> getContourList(Viewer viewer)
viewer
- void deleteContours()
void setVertexColorMap()
void setVertexColixesForAtoms(Viewer viewer, short[] colixes, int[] atomMap, BS bs)
void colorVertices(short colix, BS bs, boolean isAtoms)
colix
- bs
- isAtoms
- void checkAllocColixes()
private static void addColorToMap(Map<String,BS> colorMap, String color, BS bs)
colorMap
- color
- bs
- void setJvxlColorMap(boolean isAll)
isAll
- void setColorCommand()
void setColorsFromJvxlData(int colorRgb)
colorRgb
- void setJvxlDataRendering()
void remapColors(Viewer viewer, ColorEncoder ce, float translucentLevel)
viewer
- ce
- translucentLevel
- public void reinitializeLightingAndColor(Viewer viewer)
public javajs.util.P3[] getBoundingBox()
getBoundingBox
in class Mesh
private void resetBoundingBox()
protected void merge(MeshData m)
private static int mergePolygons(MeshSurface m, int ipt, int vertexCount, int[][] newPolygons)
public SymmetryInterface getUnitCell()
getUnitCell
in class Mesh
protected void slabBrillouin(javajs.util.P3[] unitCellPoints)
slabBrillouin
in class MeshSurface
protected float getMinDistance2ForVertexGrouping()
getMinDistance2ForVertexGrouping
in class Mesh
public BS getVisibleVertexBitSet()
getVisibleVertexBitSet
in class Mesh
public void updateCoordinates(javajs.util.M4 m, BS bs)
m
- bs
-