org.jmol.modelset
Class Atom
public final
class
Atom
extends Point3fi
Constructor Summary |
| Atom(Point3f pt) |
| Atom(Viewer viewer, int modelIndex, int atomIndex, BitSet atomSymmetry, int atomSite, short atomicAndIsotopeNumber, int size, int formalCharge, float x, float y, float z, boolean isHetero, char chainID, char alternateLocationID, float radius) |
Method Summary |
void | addDisplayedBackbone(int backboneVisibilityFlag, boolean isVisible) |
void | addDisplayedBond(int stickVisibilityFlag, boolean isVisible) |
void | clearBonds() |
short | convertEncodedMad(Viewer viewer, int size) |
void | deleteBond(Bond bond) |
void | deleteBond(int i) |
boolean | equals(Object obj) |
Atom | findAromaticNeighbor(BitSet notAtoms) |
Atom | findAromaticNeighbor(int notAtomIndex) |
String | formatLabel(String strFormat) |
String | formatLabel(String strFormat, char chAtom, int[] indices) |
float | getADPMinMax(boolean isMax) |
char | getAlternateLocationID() |
short | getAtomicAndIsotopeNumber() |
int | getAtomIndex() |
String | getAtomName() |
int | getAtomNumber() |
int | getAtomSite() |
BitSet | getAtomSymmetry() |
int | getBfactor100() |
Bond | getBond(Atom atomOther) |
int | getBondedAtomIndex(int bondIndex) |
short | getBondingMar() |
float | getBondingRadiusFloat() |
Bond[] | getBonds() |
int | getCellTranslation(int cellNNN, int[] cellRange, int nOps)
Looks for a match in the cellRange list for this atom within the specified translation set
select symop=0NNN for this
|
Chain | getChain() |
char | getChainID() |
int | getClickabilityFlags() |
String | getClientAtomStringProperty(String propertyName) |
short | getColix() |
int | getCovalentBondCount() |
int | getCovalentHydrogenCount() |
int | getCurrentBondCount() |
float | getDimensionValue(int dimension) |
short | getElementNumber() |
String | getElementSymbol() |
Object[] | getEllipsoid() |
int | getFormalCharge() |
float | getFractionalCoord(char ch) |
Point3f | getFractionalCoord() |
Group | getGroup() |
String | getGroup1() |
String | getGroup3() |
short | getGroupID() |
float | getGroupPhi() |
float | getGroupPsi() |
String | getIdentity(boolean allInfo) |
String | getIdentityXYZ() |
String | getInfo() |
String | getInfoXYZ(boolean useChimeFormat) |
char | getInsertionCode() |
short | getIsotopeNumber() |
short | getMadAtom() |
int | getModelFileIndex() |
int | getModelFileNumber() |
int | getModelIndex() |
int | getModelNumber() |
String | getModelNumberForLabel() |
int | getMoleculeNumber() |
int | getNBackbonesDisplayed() |
int | getOccupancy() |
byte | getPaletteID() |
float | getPartialCharge() |
int | getPolymerIndex() |
int | getPolymerLength() |
int | getProteinStructureID() |
byte | getProteinStructureType() |
Quaternion | getQuaternion(char qtype) |
float | getRadius() |
int | getRasMolRadius() |
int | getResno() |
int | getScreenRadius() |
int | getSelectedGroupCountWithinChain() |
int | getSelectedGroupIndexWithinChain() |
int | getSelectedMonomerCountWithinPolymer() |
int | getSelectedMonomerIndexWithinPolymer() |
int | getSeqcode() |
String | getSeqcodeString() |
int | getSeqNumber() |
int | getShapeVisibilityFlags() |
byte | getSpecialAtomID() |
float | getStraightness() |
int | getSurfaceDistance100() |
String | getSymmetryOperatorList() |
int | getSymmetryTranslation(int symop, int[] cellRange, int nOps)
Given a symmetry operation number, the set of cells in the model, and the
number of operations, this method returns either 0 or the cell number (555, 666)
of the translated symmetry operation corresponding to this atom.
atomSymmetry is a bitset that is created in adapter.smarter.AtomSetCollection
It is arranged as follows:
|--overall--|---cell1---|---cell2---|---cell3---|...
|
int | getValence() |
int | getVanderwaalsMad(Viewer viewer) |
float | getVanderwaalsRadiusFloat() |
Vector3f | getVibrationVector() |
int | hashCode() |
boolean | isAlternateLocationMatch(String strPattern) |
boolean | isBonded(Atom atomOther) |
boolean | isCarbohydrate() |
boolean | isClickable() |
boolean | isCursorOnTopOf(int xCursor, int yCursor, int minRadius, Atom competitor) |
boolean | isDna() |
boolean | isGroup3(String group3) |
boolean | isHetero() |
boolean | isModelVisible() |
boolean | isNucleic() |
boolean | isProtein() |
boolean | isPurine() |
boolean | isPyrimidine() |
boolean | isRna() |
boolean | isShapeVisible(int shapeVisibilityFlag) |
boolean | isSimple() |
boolean | isTranslucent() |
boolean | isVisible()
determine if an atom or its PDB group is visible |
void | setClickable(int flag) |
void | setColixAtom(short colixAtom) |
void | setFormalCharge(int charge) |
void | setFractionalCoord(int tok, float fValue) |
void | setFractionalCoord(Point3f ptNew) |
void | setGroup(Group group) |
void | setMadAtom(Viewer viewer, int size) |
void | setPaletteID(byte paletteID) |
boolean | setRadius(float radius) |
void | setShapeVisibility(int shapeVisibilityFlag, boolean isVisible) |
void | setShapeVisibilityFlags(int flag) |
void | setTranslucent(boolean isTranslucent, float translucentLevel) |
void | setValency(int nBonds) |
void | setVibrationVector() |
void | transform(Viewer viewer) |
char alternateLocationID
private short atomicAndIsotopeNumber
int atomIndex
int atomSite
BitSet atomSymmetry
int clickabilityFlags
short colixAtom
private byte formalChargeAndFlags
static final byte FORMAL_CHARGE_MASK
boolean isSimple
static final byte IS_HETERO_FLAG
short madAtom
short modelIndex
int nBackbonesDisplayed
int nBondsDisplayed
byte paletteID
int shapeVisibilityFlags
private float userDefinedVanDerWaalRadius
static final byte VALENCY_MASK
static final byte VIBRATION_VECTOR_FLAG
public Atom(Point3f pt)
Atom(
Viewer viewer, int modelIndex, int atomIndex, BitSet atomSymmetry, int atomSite, short atomicAndIsotopeNumber, int size, int formalCharge, float x, float y, float z, boolean isHetero, char chainID, char alternateLocationID, float radius)
public void addDisplayedBackbone(int backboneVisibilityFlag, boolean isVisible)
void addDisplayedBond(int stickVisibilityFlag, boolean isVisible)
void clearBonds()
public short convertEncodedMad(
Viewer viewer, int size)
void deleteBond(
Bond bond)
private void deleteBond(int i)
public boolean equals(Object obj)
public
Atom findAromaticNeighbor(BitSet notAtoms)
public
Atom findAromaticNeighbor(int notAtomIndex)
public String formatLabel(String strFormat)
public String formatLabel(String strFormat, char chAtom, int[] indices)
public float getADPMinMax(boolean isMax)
public char getAlternateLocationID()
public short getAtomicAndIsotopeNumber()
public int getAtomIndex()
String getAtomName()
public int getAtomNumber()
public int getAtomSite()
public BitSet getAtomSymmetry()
public int getBfactor100()
int getBondedAtomIndex(int bondIndex)
short getBondingMar()
public float getBondingRadiusFloat()
public int getCellTranslation(int cellNNN, int[] cellRange, int nOps)
Looks for a match in the cellRange list for this atom within the specified translation set
select symop=0NNN for this
Parameters: cellNNN cellRange nOps
Returns: matching cell number, if applicable
public char getChainID()
public int getClickabilityFlags()
String getClientAtomStringProperty(String propertyName)
public short getColix()
public int getCovalentBondCount()
int getCovalentHydrogenCount()
int getCurrentBondCount()
public float getDimensionValue(int dimension)
public short getElementNumber()
public String getElementSymbol()
public Object[] getEllipsoid()
public int getFormalCharge()
public float getFractionalCoord(char ch)
public Point3f getFractionalCoord()
String getGroup1()
String getGroup3()
public short getGroupID()
public float getGroupPhi()
public float getGroupPsi()
private String getIdentity(boolean allInfo)
private String getIdentityXYZ()
public String getInfo()
String getInfoXYZ(boolean useChimeFormat)
public char getInsertionCode()
public short getIsotopeNumber()
public short getMadAtom()
public int getModelFileIndex()
public int getModelFileNumber()
public int getModelIndex()
public int getModelNumber()
String getModelNumberForLabel()
public int getMoleculeNumber()
public int getNBackbonesDisplayed()
public int getOccupancy()
public byte getPaletteID()
public float getPartialCharge()
int getPolymerIndex()
public int getPolymerLength()
public int getProteinStructureID()
public byte getProteinStructureType()
public float getRadius()
public int getRasMolRadius()
public int getResno()
public int getScreenRadius()
public int getSelectedGroupCountWithinChain()
public int getSelectedGroupIndexWithinChain()
public int getSelectedMonomerCountWithinPolymer()
public int getSelectedMonomerIndexWithinPolymer()
int getSeqcode()
String getSeqcodeString()
int getSeqNumber()
public int getShapeVisibilityFlags()
public byte getSpecialAtomID()
public float getStraightness()
public int getSurfaceDistance100()
private String getSymmetryOperatorList()
public int getSymmetryTranslation(int symop, int[] cellRange, int nOps)
Given a symmetry operation number, the set of cells in the model, and the
number of operations, this method returns either 0 or the cell number (555, 666)
of the translated symmetry operation corresponding to this atom.
atomSymmetry is a bitset that is created in adapter.smarter.AtomSetCollection
It is arranged as follows:
|--overall--|---cell1---|---cell2---|---cell3---|...
|012..nOps-1|012..nOps-1|012..nOp-1s|012..nOps-1|...
If a bit is set, it means that the atom was created using that operator
operating on the base file set and translated for that cell.
If any bit is set in any of the cell blocks, then the same
bit will also be set in the overall block. This allows for
rapid determination of special positions and also of
atom membership in any operation set.
Note that it is not necessarily true that an atom is IN the designated
cell, because one can load {nnn mmm 0}, and then, for example, the {-x,-y,-z}
operator sends atoms from 555 to 444. Still, those atoms would be marked as
cell 555 here, because no translation was carried out.
That is, the numbers 444 in symop=3444 do not refer to a cell, per se.
What they refer to is the file-designated operator plus a translation of
{-1 -1 -1/1}.
Parameters: symop = 0, 1, 2, 3, .... cellRange = {444, 445, 446, 454, 455, 456, .... } nOps = 2 for x,y,z;-x,-y,-z, for example
Returns: cell number such as 565
public int getValence()
private int getVanderwaalsMad(
Viewer viewer)
public float getVanderwaalsRadiusFloat()
public Vector3f getVibrationVector()
public int hashCode()
boolean isAlternateLocationMatch(String strPattern)
public boolean isBonded(
Atom atomOther)
boolean isCarbohydrate()
public boolean isClickable()
boolean isCursorOnTopOf(int xCursor, int yCursor, int minRadius,
Atom competitor)
boolean isDna()
boolean isGroup3(String group3)
public boolean isHetero()
public boolean isModelVisible()
boolean isNucleic()
boolean isProtein()
boolean isPurine()
boolean isPyrimidine()
boolean isRna()
public boolean isShapeVisible(int shapeVisibilityFlag)
public boolean isSimple()
public boolean isTranslucent()
public boolean isVisible()
determine if an atom or its PDB group is visible
Returns: true if the atom is in the "select visible" set
public void setClickable(int flag)
public void setColixAtom(short colixAtom)
void setFormalCharge(int charge)
void setFractionalCoord(int tok, float fValue)
void setFractionalCoord(Point3f ptNew)
void setGroup(
Group group)
public void setMadAtom(
Viewer viewer, int size)
public void setPaletteID(byte paletteID)
public boolean setRadius(float radius)
public final void setShapeVisibility(int shapeVisibilityFlag, boolean isVisible)
public final void setShapeVisibilityFlags(int flag)
public void setTranslucent(boolean isTranslucent, float translucentLevel)
public void setValency(int nBonds)
void setVibrationVector()
public void transform(
Viewer viewer)