Package org.jmol.geodesic
Class EnvelopeCalculation
java.lang.Object
org.jmol.geodesic.EnvelopeCalculation
- All Implemented Interfaces:
JmolEnvCalc
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
private AtomData
private javajs.util.BS
private javajs.util.BS
private javajs.util.BS
private javajs.util.BS
private javajs.util.P3
private javajs.util.P3
private javajs.util.P3[]
private float
private boolean
private javajs.util.BS[]
private int
private static javajs.util.BS
private int
private javajs.util.BS
private int
private boolean
private short[]
private javajs.util.BS
private float
private boolean
private boolean
private javajs.util.P3[]
private int
private int[]
private float[]
private float[]
private boolean
private final javajs.util.P3
private static int[]
private float
private float
private float
private final javajs.util.P3[]
private AtomDataServer
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addIncompleteFaces
(javajs.util.BS points) void
allocDotsConvexMaps
(int max) private void
private void
calcConvexMap
(boolean isSurface) void
calculate
(RadiusData rd, float maxRadius, javajs.util.BS bsSelected, javajs.util.BS bsIgnore, boolean disregardNeighbors, boolean onlySelectedDots, boolean isSurface, boolean multiModel) private void
void
deleteAtoms
(int firstAtomDeleted, int nAtomsDeleted) float
getAppropriateRadius
(int atomIndex) javajs.util.BS
javajs.util.BS[]
int
private AtomIndexIterator
javajs.util.P3[]
float
getRadius
(int atomIndex) void
newSet()
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.set
(AtomDataServer vwr, int ac, short[] mads) private void
setAtomI
(int indexI) private void
void
setFromBits
(int index, javajs.util.BS bs) void
setMads
(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:
set
in 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:
getBsSurfaceClone
in 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:
calculate
in interfaceJmolEnvCalc
- Parameters:
rd
-maxRadius
-bsSelected
-bsIgnore
-disregardNeighbors
-onlySelectedDots
-isSurface
-multiModel
-
-
getRadius
public float getRadius(int atomIndex) -
getPoints
public javajs.util.P3[] getPoints()- Specified by:
getPoints
in 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
-
-