public abstract class AtomCollection
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
protected class |
AtomCollection.AtomSorter |
Modifier and Type | Field and Description |
---|---|
(package private) int[] |
aaRet |
int |
ac |
private static float |
almost180 |
Atom[] |
at |
private int |
atomCapacity |
(package private) java.lang.String[] |
atomNames |
(package private) int[] |
atomResnos |
(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 |
BioModelSet |
bioModelset
If any model in the collection is a BioModel, then
it is also indicated here as a "bioModelset", meaning
|
(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 |
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_RESNO |
static byte |
TAINT_SEQID |
static byte |
TAINT_TEMPERATURE |
static byte |
TAINT_VALENCE |
static byte |
TAINT_VANDERWAALS |
static byte |
TAINT_VIBRATION |
BS[] |
tainted |
Trajectory |
trajectory |
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) |
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<javajs.util.P3> |
generateCrystalClass(int atomIndex,
javajs.util.P3 pt) |
javajs.util.Lst<java.lang.Object> |
getAllAtomTensors(java.lang.String type) |
BS |
getAtomBitsMDa(int tokType,
java.lang.Object specInfo,
BS bs)
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[] |
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 |
getAtomsFromAtomNumberInFrame(int atomNumber) |
void |
getAtomsInFrame(BS bsAtoms) |
BS |
getAtomsNearPlane(float distance,
javajs.util.P4 plane) |
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() |
BS |
getChainBits(int chainID) |
BS |
getClickableSet(boolean forceNew) |
java.lang.String |
getElementName(int i) |
int |
getFirstAtomIndexFromAtomNumber(int atomNumber,
BS bsVisibleFrames) |
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.
|
LabelToken |
getLabeler() |
float |
getMaxVanderwaalsRadius() |
(package private) int |
getMissingHydrogenCount(Atom atom,
boolean allowNegative) |
JmolModulationSet |
getModulation(int iAtom) |
float[] |
getPartialCharges() |
javajs.util.Quat |
getQuaternion(int i,
char qtype) |
protected float |
getRadiusVdwJmol(Atom atom) |
BS |
getSeqcodeBits(int seqcode,
boolean returnEmpty) |
private BS |
getSpecName(java.lang.String name) |
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) |
float |
getVibCoord(int atomIndex,
char c)
also handles modulation info
|
Vibration |
getVibration(int atomIndex,
boolean forceNew) |
BS |
getVisibleSet(boolean forceNew) |
private float |
getWorkingRadius(Atom atom,
AtomData atomData) |
private boolean |
isAdjacentSp2(Atom atom) |
private boolean |
isAltLoc(char altloc,
java.lang.String strPattern) |
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) |
boolean |
setAtomResno(int atomIndex,
int resno) |
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) |
(package private) void |
setCapacity(int nAtoms) |
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 BioModelSet bioModelset
public Atom[] at
public int ac
public Trajectory trajectory
java.lang.String[] atomNames
java.lang.String[] atomTypes
int[] atomSerials
int[] atomResnos
int[] atomSeqIDs
public Vibration[] vibrations
public 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_RESNO
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
int[] aaRet
private int atomCapacity
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 getFirstAtomIndexFromAtomNumber(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 getVibCoord(int atomIndex, char c)
atomIndex
- 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 setAtomResno(int atomIndex, int resno)
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 getMissingHydrogenCount(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)
public BS getAtomBitsMDa(int tokType, java.lang.Object specInfo, BS bs)
tokType
- specInfo
- bs
- - to be filledpublic BS getChainBits(int chainID)
public int chainToUpper(int chainID)
private boolean isAltLoc(char altloc, java.lang.String strPattern)
public BS getSeqcodeBits(int seqcode, boolean returnEmpty)
private BS getIdentifierOrNull(java.lang.String identifier)
identifier
- private BS getSpecName(java.lang.String name)
public BS getSpecNameOrNull(java.lang.String name, boolean checkStar)
private boolean isAtomNameMatch(Atom atom, java.lang.String strPattern, boolean checkStar, boolean allowInitialStar)
public int[] getAtomIndices(BS bs)
public BS getAtomsNearPlane(float distance, javajs.util.P4 plane)
public void clearVisibleSets()
public void getAtomsInFrame(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)
void setCapacity(int nAtoms)
public void setAtomTensors(int atomIndex, javajs.util.Lst<java.lang.Object> list)
public void addTensor(Tensor t, java.lang.String type)
private static java.lang.Object[] getTensorList(javajs.util.Lst<java.lang.Object> list)
public Tensor getAtomTensor(int i, java.lang.String type)
public javajs.util.Lst<java.lang.Object> getAllAtomTensors(java.lang.String type)
public void scaleVectorsToMax(float max)
max
- public BS getAtomsFromAtomNumberInFrame(int atomNumber)
public javajs.util.Lst<javajs.util.P3> generateCrystalClass(int atomIndex, javajs.util.P3 pt)