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 |
BS |
bsPartialCharges |
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 int |
TAINT_ATOMNAME |
static int |
TAINT_ATOMNO |
static int |
TAINT_ATOMTYPE |
static int |
TAINT_BONDINGRADIUS |
static int |
TAINT_CHAIN |
static int |
TAINT_COORD |
static int |
TAINT_ELEMENT |
static int |
TAINT_FORMALCHARGE |
static int |
TAINT_HYDROPHOBICITY |
static int |
TAINT_MAX |
static int |
TAINT_OCCUPANCY |
static int |
TAINT_PARTIALCHARGE |
static int |
TAINT_RESNO |
static int |
TAINT_SEQID |
static int |
TAINT_TEMPERATURE |
static int |
TAINT_VALENCE |
static int |
TAINT_VANDERWAALS |
static int |
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(int 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 |
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 doTaint) |
void |
setAtomNumber(int atomIndex,
int atomno,
boolean doTaint) |
private void |
setAtomResno(int atomIndex,
int resno) |
protected void |
setAtomsCoordRelative(BS bs,
float x,
float y,
float z) |
private void |
setAtomSeqID(int atomIndex,
int seqID) |
void |
setAtomTensors(int atomIndex,
javajs.util.Lst<java.lang.Object> list) |
private void |
setAtomType(int atomIndex,
java.lang.String type) |
private void |
setAtomVibrationVector(int atomIndex,
javajs.util.T3 vib) |
private void |
setBf(int i) |
protected void |
setBFactor(int atomIndex,
float bfactor,
boolean doTaint) |
private void |
setBondingRadius(int atomIndex,
float radius) |
void |
setBsHidden(BS bs) |
(package private) void |
setCapacity(int nAtoms) |
private void |
setChainID(int atomIndex,
java.lang.String id) |
protected void |
setElement(Atom atom,
int atomicNumber,
boolean doTaint) |
void |
setFormalCharges(BS bs,
int formalCharge) |
private void |
setHydrophobicity(int atomIndex,
float value) |
protected void |
setOccupancy(int atomIndex,
float occupancy,
boolean doTaint) |
protected void |
setPartialCharge(int atomIndex,
float partialCharge,
boolean doTaint) |
void |
setPreserveState(boolean TF) |
void |
setTaintedAtoms(BS bs,
int 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,
int type) |
void |
taintAtoms(BS bsAtoms,
int type) |
private void |
untaint(int atomIndex,
int type) |
void |
unTaintAtoms(BS bs,
int type) |
void |
validateBspf(boolean isValid) |
(package private) void |
validateBspfForModel(int modelIndex,
boolean isValid) |
private static final float almost180
private static final float sqrt3_2
private static final javajs.util.V3 vRef
public Viewer vwr
protected GData g3d
public BioModelSet bioModelset
public Atom[] at
public int ac
public Trajectory trajectory
private LabelToken labeler
protected float maxBondingRadius
private float maxVanderwaalsRadius
private boolean hasBfactorRange
private int bfactor100Lo
private int bfactor100Hi
private boolean haveBSVisible
private boolean haveBSClickable
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
private BS bsHidden
public BS bsVisible
public BS bsClickable
public BS bsModulated
public java.lang.Object[][] atomTensorList
public java.util.Map<java.lang.String,javajs.util.Lst<java.lang.Object>> atomTensors
protected int[] surfaceDistance100s
public BS[] tainted
public static java.lang.String[] userSettableValues
public static final int TAINT_ATOMNAME
public static final int TAINT_ATOMTYPE
public static final int TAINT_COORD
public static final int TAINT_ELEMENT
public static final int TAINT_FORMALCHARGE
public static final int TAINT_HYDROPHOBICITY
public static final int TAINT_BONDINGRADIUS
public static final int TAINT_OCCUPANCY
public static final int TAINT_PARTIALCHARGE
public static final int TAINT_TEMPERATURE
public static final int TAINT_VALENCE
public static final int TAINT_VANDERWAALS
public static final int TAINT_VIBRATION
public static final int TAINT_ATOMNO
public static final int TAINT_SEQID
public static final int TAINT_RESNO
public static final int TAINT_CHAIN
public static final int TAINT_MAX
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 BS bsPartialCharges
int[] aaRet
private int atomCapacity
protected void setupAC()
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)
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, boolean doTaint)
private void setAtomType(int atomIndex, java.lang.String type)
private void setChainID(int atomIndex, java.lang.String id)
public void setAtomNumber(int atomIndex, int atomno, boolean doTaint)
protected void setElement(Atom atom, int atomicNumber, boolean doTaint)
private void setAtomResno(int atomIndex, int resno)
private void setAtomSeqID(int atomIndex, int seqID)
protected void setOccupancy(int atomIndex, float occupancy, boolean doTaint)
protected void setPartialCharge(int atomIndex, float partialCharge, boolean doTaint)
private void setBondingRadius(int atomIndex, float radius)
protected void setBFactor(int atomIndex, float bfactor, boolean doTaint)
private void 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(int type)
public void taintAtoms(BS bsAtoms, int type)
protected void taintAtom(int atomIndex, int type)
private void untaint(int atomIndex, int type)
public void setTaintedAtoms(BS bs, int type)
public void unTaintAtoms(BS bs, int 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)