Package org.jmol.geodesic
Class EnvelopeCalculation
java.lang.Object
org.jmol.geodesic.EnvelopeCalculation
- All Implemented Interfaces:
JmolEnvCalc
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intprivate AtomDataprivate javajs.util.BSprivate javajs.util.BSprivate javajs.util.BSprivate javajs.util.BSprivate javajs.util.P3private javajs.util.P3private javajs.util.P3[]private floatprivate booleanprivate javajs.util.BS[]private intprivate static javajs.util.BSprivate intprivate javajs.util.BSprivate intprivate booleanprivate short[]private javajs.util.BSprivate floatprivate booleanprivate booleanprivate javajs.util.P3[]private intprivate int[]private float[]private float[]private booleanprivate final javajs.util.P3private static int[]private floatprivate floatprivate floatprivate final javajs.util.P3[]private AtomDataServer -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddIncompleteFaces(javajs.util.BS points) voidallocDotsConvexMaps(int max) private voidprivate voidcalcConvexMap(boolean isSurface) voidcalculate(RadiusData rd, float maxRadius, javajs.util.BS bsSelected, javajs.util.BS bsIgnore, boolean disregardNeighbors, boolean onlySelectedDots, boolean isSurface, boolean multiModel) private voidvoiddeleteAtoms(int firstAtomDeleted, int nAtomsDeleted) floatgetAppropriateRadius(int atomIndex) javajs.util.BSjavajs.util.BS[]intprivate AtomIndexIteratorjavajs.util.P3[]floatgetRadius(int atomIndex) voidnewSet()voidreCalculate(javajs.util.BS bs, javajs.util.M3 m) problem prior to 12.3.18 was that dots once on the deodesic were not being moved.set(AtomDataServer vwr, int ac, short[] mads) private voidsetAtomI(int indexI) private voidvoidsetFromBits(int index, javajs.util.BS bs) voidsetMads(short[] mads)
-
Field Details
-
geodesicMap
private javajs.util.BS geodesicMap -
mapT
private javajs.util.BS mapT -
mads
private short[] mads -
atomData
-
vwr
-
ac
private int ac -
EMPTY_SET
private static javajs.util.BS EMPTY_SET -
maxRadius
private float maxRadius -
modelZeroBased
private boolean modelZeroBased -
disregardNeighbors
private boolean disregardNeighbors -
bsMySelected
private javajs.util.BS bsMySelected -
dotsConvexMaps
private javajs.util.BS[] dotsConvexMaps -
dotsConvexMax
private int dotsConvexMax -
geodesicCount
private int geodesicCount -
bsSurface
private javajs.util.BS bsSurface -
radiusP
private float radiusP -
diameterP
private float diameterP -
bsTemp
private javajs.util.BS bsTemp -
bsIgnore
private javajs.util.BS bsIgnore -
onlySelectedDots
private boolean onlySelectedDots -
isSurface
private boolean isSurface -
multiModel
private boolean multiModel -
currentPoints
private javajs.util.P3[] currentPoints -
indexI
private int indexI -
centerI
private javajs.util.P3 centerI -
radiusI
private float radiusI -
radiiIP2
private float radiiIP2 -
pointT
private final javajs.util.P3 pointT -
centerT
private javajs.util.P3 centerT -
vertexTest
private final javajs.util.P3[] vertexTest -
power4
private static int[] power4 -
neighborCount
private int neighborCount -
neighborIndices
private int[] neighborIndices -
neighborCenters
private javajs.util.P3[] neighborCenters -
neighborPlusProbeRadii2
private float[] neighborPlusProbeRadii2 -
neighborRadii2
private float[] neighborRadii2
-
-
Constructor Details
-
EnvelopeCalculation
public EnvelopeCalculation()
-
-
Method Details
-
set
- Specified by:
setin interfaceJmolEnvCalc- Parameters:
vwr-ac-mads-- Returns:
- this
-
getDotsConvexMaps
public javajs.util.BS[] getDotsConvexMaps() -
getDotsConvexMax
public int getDotsConvexMax() -
allocDotsConvexMaps
public void allocDotsConvexMaps(int max) -
getBsSurfaceClone
public javajs.util.BS getBsSurfaceClone()- Specified by:
getBsSurfaceClonein interfaceJmolEnvCalc
-
setMads
public void setMads(short[] mads) -
setFromBits
public void setFromBits(int index, javajs.util.BS bs) -
newSet
public void newSet() -
reCalculate
public void reCalculate(javajs.util.BS bs, javajs.util.M3 m) problem prior to 12.3.18 was that dots once on the deodesic were not being moved. this isn't perfect, but it's reasonably good. Mostly, you should recreate dots after rotateSelected. This isn't a problem until after a state is saved and reloaded, since only then with atomData.radiusData be null.- Parameters:
bs-m-
-
calculate
public void calculate(RadiusData rd, float maxRadius, javajs.util.BS bsSelected, javajs.util.BS bsIgnore, boolean disregardNeighbors, boolean onlySelectedDots, boolean isSurface, boolean multiModel) - Specified by:
calculatein interfaceJmolEnvCalc- Parameters:
rd-maxRadius-bsSelected-bsIgnore-disregardNeighbors-onlySelectedDots-isSurface-multiModel-
-
getRadius
public float getRadius(int atomIndex) -
getPoints
public javajs.util.P3[] getPoints()- Specified by:
getPointsin interfaceJmolEnvCalc
-
setDotsConvexMax
private void setDotsConvexMax() -
getAppropriateRadius
public float getAppropriateRadius(int atomIndex) -
setAtomI
private void setAtomI(int indexI) -
calcConvexMap
private void calcConvexMap(boolean isSurface) -
addIncompleteFaces
private void addIncompleteFaces(javajs.util.BS points) -
calcConvexBits
private void calcConvexBits() -
checkNewDotsArray
private void checkNewDotsArray() -
getNeighbors
-
deleteAtoms
public void deleteAtoms(int firstAtomDeleted, int nAtomsDeleted) - Parameters:
firstAtomDeleted-nAtomsDeleted-
-