Package org.jmol.shapesurface
Class Contact
java.lang.Object
org.jmol.shape.Shape
org.jmol.shape.MeshCollection
org.jmol.shapesurface.Isosurface
org.jmol.shapesurface.Contact
- All Implemented Interfaces:
MeshDataServer
,VertexDataServer
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
protected Atom[]
protected int
private float
private float
private javajs.util.P3
private javajs.util.P3
private static final RadiusData
private javajs.util.V3
private javajs.util.V3
private javajs.util.V3
Fields inherited from class org.jmol.shapesurface.Isosurface
allowMesh, iHaveBitSets, isomeshes, keyXy, sg, thisMesh
Fields inherited from class org.jmol.shape.MeshCollection
bsDisplay, colix, color, connections, currentMesh, displayWithinDistance2, displayWithinPoints, explicitID, htObjects, isDisplayWithinNot, isFixed, jvxlData, linkedMesh, meshCount, meshes, modelIndex, nUnnamed, pickedMesh, pickedModel, pickedPt, pickedVertex, PREVIOUS_MESH_ID, previousMeshID, title
Fields inherited from class org.jmol.shape.Shape
bsColixSet, bsSizeSet, isBioShape, ms, myType, RADIUS_MAX, shapeID, translucentAllowed, translucentLevel, vf, vwr
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addMeshInfo
(IsosurfaceMesh mesh, Map<String, Object> info) private static int
checkCp
(ContactPair cp1, ContactPair cp2, int i1, int i2) private float
combineSurfaces
(javajs.util.Lst<ContactPair> pairs, int contactType, int displayType, float[] parameters, Object func, boolean isColorDensity, boolean colorByType) private javajs.util.Lst
<ContactPair> getPairs
(javajs.util.BS bsA, javajs.util.BS bsB, RadiusData rd, int intramolecularMode, boolean doEditCpList) protected Object
getProperty
(String property, int index) private static void
getVdwClashRadius
(ContactPair cp, double x0, double vdwA, double vdwB, double d) well, heh, heh...void
private boolean
isWithinFourBonds
(Atom atomA, Atom atomB) private void
private void
newSurface
(int displayType, ContactPair cp, javajs.util.BS bs1, javajs.util.BS bs2, RadiusData rd, float[] parameters, Object func, boolean isColorDensity, VolumeData volumeData, float sasurfaceRadius) private int
setColorByScore
(float score, int nV) private void
setContacts
(Object[] value, boolean doEditCpList) void
setProperty
(String propertyName, Object value, javajs.util.BS bs) private void
setVolumeData
(int type, VolumeData volumeData, ContactPair cp, float resolution, int nPairs) Methods inherited from class org.jmol.shapesurface.Isosurface
addRequiredFile, addTriangleCheck, addVertexCopy, allocMesh, calculateGeodesicSurface, checkObjectClicked, checkObjectHovered, clearSg, discardTempData, fillMeshData, getCapSlabInfo, getCmd, getPlane, getPolygonColorData, getPropertyData, getPropI, getShapeDetail, getShapeState, getSurfacePointIndexAndFraction, getValue, getValues, getVertices, invalidateTriangles, newSg, notifySurfaceGenerationCompleted, notifySurfaceMappingCompleted, setOutputChannel, setPropI, setRequiredFile, setScriptInfo, slabPolygons
Methods inherited from class org.jmol.shape.MeshCollection
checkExplicit, clean, deleteMeshI, deleteMeshKey, getIndexFromName, getMesh, getMeshList, getPickedPoint, getPropDataMC, getPropMC, merge, resetObjects, setModelVisibilityFlags, setPropMC, setStatusPicked, setTitle, setTokenProperty
Methods inherited from class org.jmol.shape.Shape
appendCmd, checkBoundsMinMax, checkObjectDragged, coordinateInRange, encodeColor, findNearestAtomIndex, getColix, getColixA, getColixB, getColixI, getColorCommand, getColorCommandUnk, getFontCommand, getPropShape, getSize, getSizeG, getTranslucentLabel, initializeShape, initModelSet, replaceGroup, setAtomClickability, setModelSet, setPropS, setShapeSizeRD, setSize, setSizeRD, wasClicked
-
Field Details
-
displayType
protected int displayType -
atoms
-
ac
private int ac -
minData
private float minData -
maxData
private float maxData -
rdVDW
-
vZ
private javajs.util.V3 vZ -
vY
private javajs.util.V3 vY -
vX
private javajs.util.V3 vX -
pt1
private javajs.util.P3 pt1 -
pt2
private javajs.util.P3 pt2
-
-
Constructor Details
-
Contact
public Contact()
-
-
Method Details
-
initShape
public void initShape()- Overrides:
initShape
in classIsosurface
-
getProperty
- Overrides:
getProperty
in classIsosurface
- Parameters:
property
-index
-- Returns:
- true if serviced
-
getPropC
-
setProperty
- Overrides:
setProperty
in classIsosurface
-
setContacts
-
combineSurfaces
private float combineSurfaces(javajs.util.Lst<ContactPair> pairs, int contactType, int displayType, float[] parameters, Object func, boolean isColorDensity, boolean colorByType) - Parameters:
pairs
-contactType
-displayType
-parameters
-func
-isColorDensity
-colorByType
-- Returns:
- volume
-
setColorByScore
private int setColorByScore(float score, int nV) -
getPairs
private javajs.util.Lst<ContactPair> getPairs(javajs.util.BS bsA, javajs.util.BS bsB, RadiusData rd, int intramolecularMode, boolean doEditCpList) - Parameters:
bsA
-bsB
-rd
-intramolecularMode
-doEditCpList
-- Returns:
- a list of pairs of atoms to process
-
isWithinFourBonds
-
checkCp
- Parameters:
cp1
-cp2
-i1
-i2
-- Returns:
- 0 (no clash); 1 (remove #1); 2 (remove #2)
-
newSurface
private void newSurface(int displayType, ContactPair cp, javajs.util.BS bs1, javajs.util.BS bs2, RadiusData rd, float[] parameters, Object func, boolean isColorDensity, VolumeData volumeData, float sasurfaceRadius) -
setVolumeData
private void setVolumeData(int type, VolumeData volumeData, ContactPair cp, float resolution, int nPairs) -
mergeMesh
-
addMeshInfo
- Overrides:
addMeshInfo
in classIsosurface
-
getVdwClashRadius
private static void getVdwClashRadius(ContactPair cp, double x0, double vdwA, double vdwB, double d) well, heh, heh... This calculates the VDW extension x at a given distance for a clashing pair that will produce a volume that is equivalent to the volume for the vdw contact at the point of touching (d0 = vdwA + vdwB) and the transition to clash. This will provide the surface that will surround the clash until the clash size is larger than it.- Parameters:
cp
-x0
-vdwA
-vdwB
-d
-
-