public abstract class AtomCollection
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
protected class |
AtomCollection.AtomSorter |
Modifier and Type | Field and Description |
---|---|
private int[] |
aaRet |
int |
ac |
private static float |
almost180 |
Atom[] |
at |
(package private) java.lang.String[] |
atomNames |
(package private) int[] |
atomSeqIDs |
(package private) int[] |
atomSerials |
java.lang.Object[][] |
atomTensorList |
java.util.Map<java.lang.String,javajs.util.Lst<java.lang.Object>> |
atomTensors |
(package private) java.lang.String[] |
atomTypes |
protected javajs.util.P3 |
averageAtomPoint |
private int |
bfactor100Hi |
private int |
bfactor100Lo |
(package private) short[] |
bfactor100s |
(package private) float[] |
bondingRadii |
BS |
bsClickable |
private BS |
bsHidden |
BS |
bsModulated |
protected Bspf |
bspf
Binary Space Partitioning Forest
|
private BS |
bsSurface |
BS |
bsVisible |
boolean |
canSkipLoad |
protected GData |
g3d |
private boolean |
hasBfactorRange |
private boolean |
haveBSClickable |
private boolean |
haveBSVisible |
boolean |
haveStraightness |
(package private) float[] |
hydrophobicities |
private LabelToken |
labeler |
protected float |
maxBondingRadius |
private float |
maxVanderwaalsRadius |
private int |
nSurfaceAtoms |
(package private) float[] |
occupancies |
(package private) float[] |
partialCharges |
protected boolean |
preserveState |
private static float |
sqrt3_2 |
protected int[] |
surfaceDistance100s |
private int |
surfaceDistanceMax |
static byte |
TAINT_ATOMNAME |
static byte |
TAINT_ATOMNO |
static byte |
TAINT_ATOMTYPE |
static byte |
TAINT_BONDINGRADIUS |
static byte |
TAINT_COORD |
static byte |
TAINT_ELEMENT |
static byte |
TAINT_FORMALCHARGE |
static byte |
TAINT_HYDROPHOBICITY |
static byte |
TAINT_MAX |
static byte |
TAINT_OCCUPANCY |
static byte |
TAINT_PARTIALCHARGE |
static byte |
TAINT_SEQID |
static byte |
TAINT_TEMPERATURE |
static byte |
TAINT_VALENCE |
static byte |
TAINT_VANDERWAALS |
static byte |
TAINT_VIBRATION |
BS[] |
tainted |
static java.lang.String[] |
userSettableValues |
Vibration[] |
vibrations |
private static javajs.util.V3 |
vRef |
Viewer |
vwr |
Constructor and Description |
---|
AtomCollection() |
Modifier and Type | Method and Description |
---|---|
void |
addTensor(Tensor t,
java.lang.String type) |
private void |
calcBfactorRange(BS bs) |
private void |
calcSurfaceDistances() |
javajs.util.P3[][] |
calculateHydrogens(BS bs,
int[] nTotal,
boolean doAll,
boolean justCarbon,
javajs.util.Lst<Atom> vConnect)
get a list of potential H atom positions based on
elemental valence and formal charge
|
javajs.util.P3[] |
calculateSurface(BS bsSelected,
float envelopeRadius) |
float |
calculateVolume(BS bs,
VDW vType) |
static int |
chainToUpper(int chainID) |
void |
clearBfactorRange() |
void |
clearVisibleSets() |
private void |
deleteAtomTensors(BS bsAtoms) |
protected void |
deleteModelAtoms(int firstAtomIndex,
int nAtoms,
BS bsAtoms) |
protected void |
fillADa(AtomData atomData,
int mode) |
protected void |
findMaxRadii() |
protected void |
findNearest2(int x,
int y,
Atom[] closest,
BS bsNot,
int min) |
private BS |
findNotAttached(int nAttached,
int[][] angles,
int[] ptrs,
int nPtrs) |
int |
fixFormalCharges(BS bs) |
private void |
fixTrajectory(Atom a) |
javajs.util.Lst<java.lang.Object> |
getAllAtomTensors(java.lang.String type) |
protected BS |
getAtomBitsMDa(int tokType,
java.lang.Object specInfo)
general unqualified lookup of atom set type
|
float[] |
getAtomicCharges() |
void |
getAtomIdentityInfo(int i,
java.util.Map<java.lang.String,java.lang.Object> info,
javajs.util.P3 ptTemp) |
int |
getAtomIndexFromAtomNumber(int atomNumber,
BS bsVisibleFrames) |
int[] |
getAtomIndices(BS bs) |
java.lang.String |
getAtomInfo(int i,
java.lang.String format,
javajs.util.P3 ptTemp) |
javajs.util.Lst<javajs.util.P3> |
getAtomPointVector(BS bs) |
BS |
getAtomsNearPlane(float distance,
javajs.util.P4 plane) |
BS |
getAtomsNearPts(float distance,
javajs.util.P3[] points,
BS bsInclude) |
Tensor |
getAtomTensor(int i,
java.lang.String type) |
java.lang.Object[] |
getAtomTensorList(int i) |
java.lang.String[] |
getAtomTypes() |
private Atom[] |
getAttached(Atom atom,
int nMax,
boolean doSort) |
int |
getBfactor100Hi() |
int |
getBfactor100Lo() |
short[] |
getBFactors() |
float[] |
getBondingRadii() |
protected BS |
getChainBits(int chainID) |
BS |
getClickableSet(boolean forceNew) |
java.lang.String |
getElementName(int i) |
java.lang.String |
getHybridizationAndAxes(int atomIndex,
int atomicNumber,
javajs.util.V3 z,
javajs.util.V3 x,
java.lang.String lcaoTypeRaw,
boolean hybridizationCompatible,
boolean doAlignZ) |
private java.lang.String |
getHybridizationAndAxesD(int atomIndex,
javajs.util.V3 z,
javajs.util.V3 x,
java.lang.String lcaoType)
dsp3 (trigonal bipyramidal, see-saw, T-shaped)
or d2sp3 (square planar, square pyramidal, octahedral)
|
float[] |
getHydrophobicity() |
private BS |
getIdentifierOrNull(java.lang.String identifier)
overhauled by RMH Nov 1, 2006.
|
(package private) int |
getImplicitHydrogenCount(Atom atom,
boolean allowNegative) |
LabelToken |
getLabeler() |
float |
getMaxVanderwaalsRadius() |
JmolModulationSet |
getModulation(int iAtom) |
float |
getModulationCoord(int atomIndex,
char c) |
float[] |
getPartialCharges() |
javajs.util.Quat |
getQuaternion(int i,
char qtype) |
protected float |
getRadiusVdwJmol(Atom atom) |
void |
getRenderable(BS bsAtoms) |
protected BS |
getSeqcodeBits(int seqcode,
boolean returnEmpty) |
private BS |
getSpecName(java.lang.String name) |
private BS |
getSpecNameOrNull(java.lang.String name,
boolean checkStar) |
(package private) int |
getSurfaceDistance100(int atomIndex) |
int |
getSurfaceDistanceMax() |
BS |
getTaintedAtoms(byte type) |
private static java.lang.Object[] |
getTensorList(javajs.util.Lst<java.lang.Object> list) |
static int |
getUserSettableType(java.lang.String dataType) |
Vibration |
getVibration(int atomIndex,
boolean forceNew) |
float |
getVibrationCoord(int atomIndex,
char c) |
BS |
getVisibleSet(boolean forceNew) |
private BS |
getWaterAtoms(BS bs) |
private float |
getWorkingRadius(Atom atom,
AtomData atomData) |
private boolean |
isAdjacentSp2(Atom atom) |
boolean |
isAtomHidden(int iAtom) |
private boolean |
isAtomNameMatch(Atom atom,
java.lang.String strPattern,
boolean checkStar,
boolean allowInitialStar) |
(package private) boolean |
isCursorOnTopOf(Atom contender,
int x,
int y,
int radius,
Atom champion)
used by Frame and AminoMonomer and NucleicMonomer -- does NOT check for clickability
|
boolean |
isModulated(int i) |
private void |
loadCoordinates(java.lang.String data,
boolean isVibrationVectors,
boolean doTaint) |
protected void |
mergeAtomArrays(AtomCollection mergeModelSet) |
boolean |
modelSetHasVibrationVectors() |
protected void |
releaseModelSet() |
protected void |
releaseModelSetAC() |
void |
scaleVectorsToMax(float max)
Scales vibrations and associated vectors such that the
maximum length is the given value
|
protected void |
setAPa(BS bs,
int tok,
int iValue,
float fValue,
java.lang.String sValue,
float[] values,
java.lang.String[] list) |
void |
setAtomCoord(int atomIndex,
float x,
float y,
float z) |
protected void |
setAtomCoord2(BS bs,
int tokType,
java.lang.Object xyzValues) |
void |
setAtomCoordRelative(int atomIndex,
float x,
float y,
float z) |
void |
setAtomData(int type,
java.lang.String name,
java.lang.String dataString,
boolean isDefault) |
void |
setAtomName(int atomIndex,
java.lang.String name) |
boolean |
setAtomNumber(int atomIndex,
int atomno) |
protected void |
setAtomsCoordRelative(BS bs,
float x,
float y,
float z) |
boolean |
setAtomSeqID(int atomIndex,
int seqID) |
void |
setAtomTensors(int atomIndex,
javajs.util.Lst<java.lang.Object> list) |
protected void |
setAtomType(int atomIndex,
java.lang.String type) |
private void |
setAtomVibrationVector(int atomIndex,
javajs.util.T3 vib) |
private void |
setBf(int i) |
protected boolean |
setBFactor(int atomIndex,
float bfactor) |
protected boolean |
setBondingRadius(int atomIndex,
float radius) |
void |
setBsHidden(BS bs) |
protected void |
setElement(Atom atom,
int atomicNumber) |
void |
setFormalCharges(BS bs,
int formalCharge) |
protected boolean |
setHydrophobicity(int atomIndex,
float value) |
protected boolean |
setOccupancy(int atomIndex,
float occupancy) |
protected boolean |
setPartialCharge(int atomIndex,
float partialCharge) |
void |
setPreserveState(boolean TF) |
void |
setTaintedAtoms(BS bs,
byte type) |
protected void |
setupAC() |
protected void |
setVibrationVector(int atomIndex,
javajs.util.T3 vib) |
private void |
setVibrationVector2(int atomIndex,
int tok,
float fValue) |
protected void |
taintAtom(int atomIndex,
byte type) |
void |
taintAtoms(BS bsAtoms,
byte type) |
private void |
untaint(int atomIndex,
byte type) |
void |
unTaintAtoms(BS bs,
byte type) |
void |
validateBspf(boolean isValid) |
(package private) void |
validateBspfForModel(int modelIndex,
boolean isValid) |
public Viewer vwr
protected GData g3d
public Atom[] at
public int ac
java.lang.String[] atomNames
java.lang.String[] atomTypes
int[] atomSerials
int[] atomSeqIDs
public Vibration[] vibrations
float[] occupancies
short[] bfactor100s
float[] partialCharges
float[] bondingRadii
float[] hydrophobicities
public java.lang.Object[][] atomTensorList
public java.util.Map<java.lang.String,javajs.util.Lst<java.lang.Object>> atomTensors
protected int[] surfaceDistance100s
private LabelToken labeler
protected float maxBondingRadius
private float maxVanderwaalsRadius
private boolean hasBfactorRange
private int bfactor100Lo
private int bfactor100Hi
private BS bsSurface
private int nSurfaceAtoms
private int surfaceDistanceMax
protected javajs.util.P3 averageAtomPoint
protected Bspf bspf
protected boolean preserveState
public boolean canSkipLoad
public boolean haveStraightness
public static final byte TAINT_ATOMNAME
public static final byte TAINT_ATOMTYPE
public static final byte TAINT_COORD
public static final byte TAINT_ELEMENT
public static final byte TAINT_FORMALCHARGE
public static final byte TAINT_HYDROPHOBICITY
public static final byte TAINT_BONDINGRADIUS
public static final byte TAINT_OCCUPANCY
public static final byte TAINT_PARTIALCHARGE
public static final byte TAINT_TEMPERATURE
public static final byte TAINT_VALENCE
public static final byte TAINT_VANDERWAALS
public static final byte TAINT_VIBRATION
public static final byte TAINT_ATOMNO
public static final byte TAINT_SEQID
public static final byte TAINT_MAX
public static java.lang.String[] userSettableValues
private static final float almost180
private static final float sqrt3_2
private static final javajs.util.V3 vRef
public BS[] tainted
private BS bsHidden
public BS bsVisible
public BS bsClickable
public BS bsModulated
private boolean haveBSVisible
private boolean haveBSClickable
private int[] aaRet
protected void setupAC()
protected void releaseModelSet()
protected void releaseModelSetAC()
protected void mergeAtomArrays(AtomCollection mergeModelSet)
public javajs.util.Lst<javajs.util.P3> getAtomPointVector(BS bs)
public boolean modelSetHasVibrationVectors()
public java.lang.String[] getAtomTypes()
public float[] getPartialCharges()
public float[] getBondingRadii()
public short[] getBFactors()
public float[] getHydrophobicity()
public void setBsHidden(BS bs)
public boolean isAtomHidden(int iAtom)
public LabelToken getLabeler()
public java.lang.String getAtomInfo(int i, java.lang.String format, javajs.util.P3 ptTemp)
public java.lang.String getElementName(int i)
public javajs.util.Quat getQuaternion(int i, char qtype)
public int getAtomIndexFromAtomNumber(int atomNumber, BS bsVisibleFrames)
public void setFormalCharges(BS bs, int formalCharge)
public float[] getAtomicCharges()
protected float getRadiusVdwJmol(Atom atom)
public float getMaxVanderwaalsRadius()
protected void findMaxRadii()
public void clearBfactorRange()
private void calcBfactorRange(BS bs)
private void setBf(int i)
public int getBfactor100Lo()
public int getBfactor100Hi()
public int getSurfaceDistanceMax()
int getSurfaceDistance100(int atomIndex)
private void calcSurfaceDistances()
public javajs.util.P3[] calculateSurface(BS bsSelected, float envelopeRadius)
protected void setAtomCoord2(BS bs, int tokType, java.lang.Object xyzValues)
private void setAtomVibrationVector(int atomIndex, javajs.util.T3 vib)
public void setAtomCoord(int atomIndex, float x, float y, float z)
private void fixTrajectory(Atom a)
public void setAtomCoordRelative(int atomIndex, float x, float y, float z)
protected void setAtomsCoordRelative(BS bs, float x, float y, float z)
protected void setAPa(BS bs, int tok, int iValue, float fValue, java.lang.String sValue, float[] values, java.lang.String[] list)
protected void setElement(Atom atom, int atomicNumber)
public float getVibrationCoord(int atomIndex, char c)
public float getModulationCoord(int atomIndex, char c)
public Vibration getVibration(int atomIndex, boolean forceNew)
public JmolModulationSet getModulation(int iAtom)
protected void setVibrationVector(int atomIndex, javajs.util.T3 vib)
private void setVibrationVector2(int atomIndex, int tok, float fValue)
public void setAtomName(int atomIndex, java.lang.String name)
protected void setAtomType(int atomIndex, java.lang.String type)
public boolean setAtomNumber(int atomIndex, int atomno)
public boolean setAtomSeqID(int atomIndex, int seqID)
protected boolean setOccupancy(int atomIndex, float occupancy)
protected boolean setPartialCharge(int atomIndex, float partialCharge)
protected boolean setBondingRadius(int atomIndex, float radius)
protected boolean setBFactor(int atomIndex, float bfactor)
protected boolean setHydrophobicity(int atomIndex, float value)
public void setAtomData(int type, java.lang.String name, java.lang.String dataString, boolean isDefault)
private void loadCoordinates(java.lang.String data, boolean isVibrationVectors, boolean doTaint)
public void validateBspf(boolean isValid)
void validateBspfForModel(int modelIndex, boolean isValid)
public void setPreserveState(boolean TF)
public static int getUserSettableType(java.lang.String dataType)
public BS getTaintedAtoms(byte type)
public void taintAtoms(BS bsAtoms, byte type)
protected void taintAtom(int atomIndex, byte type)
private void untaint(int atomIndex, byte type)
public void setTaintedAtoms(BS bs, byte type)
public void unTaintAtoms(BS bs, byte type)
boolean isCursorOnTopOf(Atom contender, int x, int y, int radius, Atom champion)
contender
- x
- y
- radius
- champion
- protected void fillADa(AtomData atomData, int mode)
public javajs.util.P3[][] calculateHydrogens(BS bs, int[] nTotal, boolean doAll, boolean justCarbon, javajs.util.Lst<Atom> vConnect)
bs
- nTotal
- doAll
- -- whether we add to C that already have H or not.justCarbon
- vConnect
- private boolean isAdjacentSp2(Atom atom)
int getImplicitHydrogenCount(Atom atom, boolean allowNegative)
public int fixFormalCharges(BS bs)
public java.lang.String getHybridizationAndAxes(int atomIndex, int atomicNumber, javajs.util.V3 z, javajs.util.V3 x, java.lang.String lcaoTypeRaw, boolean hybridizationCompatible, boolean doAlignZ)
private java.lang.String getHybridizationAndAxesD(int atomIndex, javajs.util.V3 z, javajs.util.V3 x, java.lang.String lcaoType)
atomIndex
- z
- x
- lcaoType
- private BS findNotAttached(int nAttached, int[][] angles, int[] ptrs, int nPtrs)
protected BS getAtomBitsMDa(int tokType, java.lang.Object specInfo)
tokType
- specInfo
- private BS getIdentifierOrNull(java.lang.String identifier)
identifier
- private BS getSpecName(java.lang.String name)
private BS getSpecNameOrNull(java.lang.String name, boolean checkStar)
private boolean isAtomNameMatch(Atom atom, java.lang.String strPattern, boolean checkStar, boolean allowInitialStar)
protected BS getSeqcodeBits(int seqcode, boolean returnEmpty)
protected BS getChainBits(int chainID)
public static int chainToUpper(int chainID)
public int[] getAtomIndices(BS bs)
public BS getAtomsNearPlane(float distance, javajs.util.P4 plane)
public void clearVisibleSets()
public void getRenderable(BS bsAtoms)
public BS getVisibleSet(boolean forceNew)
public BS getClickableSet(boolean forceNew)
public boolean isModulated(int i)
protected void deleteModelAtoms(int firstAtomIndex, int nAtoms, BS bsAtoms)
public void getAtomIdentityInfo(int i, java.util.Map<java.lang.String,java.lang.Object> info, javajs.util.P3 ptTemp)
public java.lang.Object[] getAtomTensorList(int i)
private void deleteAtomTensors(BS bsAtoms)
public void setAtomTensors(int atomIndex, javajs.util.Lst<java.lang.Object> list)
private static java.lang.Object[] getTensorList(javajs.util.Lst<java.lang.Object> list)
public Tensor getAtomTensor(int i, java.lang.String type)
public void addTensor(Tensor t, java.lang.String type)
public javajs.util.Lst<java.lang.Object> getAllAtomTensors(java.lang.String type)
public void scaleVectorsToMax(float max)
max
-