org.jmol.modelset

Class Atom

public final class Atom extends Point3fi

Field Summary
charalternateLocationID
shortatomicAndIsotopeNumber
intatomIndex
intatomSite
BitSetatomSymmetry
Bond[]bonds
intclickabilityFlags
shortcolixAtom
byteformalChargeAndFlags
static byteFORMAL_CHARGE_MASK
Groupgroup
booleanisSimple
static byteIS_HETERO_FLAG
shortmadAtom
shortmodelIndex
intnBackbonesDisplayed
intnBondsDisplayed
bytepaletteID
intshapeVisibilityFlags
floatuserDefinedVanDerWaalRadius
static byteVALENCY_MASK
static byteVIBRATION_VECTOR_FLAG
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
voidaddDisplayedBackbone(int backboneVisibilityFlag, boolean isVisible)
voidaddDisplayedBond(int stickVisibilityFlag, boolean isVisible)
voidclearBonds()
shortconvertEncodedMad(Viewer viewer, int size)
voiddeleteBond(Bond bond)
voiddeleteBond(int i)
booleanequals(Object obj)
AtomfindAromaticNeighbor(BitSet notAtoms)
AtomfindAromaticNeighbor(int notAtomIndex)
StringformatLabel(String strFormat)
StringformatLabel(String strFormat, char chAtom, int[] indices)
floatgetADPMinMax(boolean isMax)
chargetAlternateLocationID()
shortgetAtomicAndIsotopeNumber()
intgetAtomIndex()
StringgetAtomName()
intgetAtomNumber()
intgetAtomSite()
BitSetgetAtomSymmetry()
intgetBfactor100()
BondgetBond(Atom atomOther)
intgetBondedAtomIndex(int bondIndex)
shortgetBondingMar()
floatgetBondingRadiusFloat()
Bond[]getBonds()
intgetCellTranslation(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
ChaingetChain()
chargetChainID()
intgetClickabilityFlags()
StringgetClientAtomStringProperty(String propertyName)
shortgetColix()
intgetCovalentBondCount()
intgetCovalentHydrogenCount()
intgetCurrentBondCount()
floatgetDimensionValue(int dimension)
shortgetElementNumber()
StringgetElementSymbol()
Object[]getEllipsoid()
intgetFormalCharge()
floatgetFractionalCoord(char ch)
Point3fgetFractionalCoord()
GroupgetGroup()
StringgetGroup1()
StringgetGroup3()
shortgetGroupID()
floatgetGroupPhi()
floatgetGroupPsi()
StringgetIdentity(boolean allInfo)
StringgetIdentityXYZ()
StringgetInfo()
StringgetInfoXYZ(boolean useChimeFormat)
chargetInsertionCode()
shortgetIsotopeNumber()
shortgetMadAtom()
intgetModelFileIndex()
intgetModelFileNumber()
intgetModelIndex()
intgetModelNumber()
StringgetModelNumberForLabel()
intgetMoleculeNumber()
intgetNBackbonesDisplayed()
intgetOccupancy()
bytegetPaletteID()
floatgetPartialCharge()
intgetPolymerIndex()
intgetPolymerLength()
intgetProteinStructureID()
bytegetProteinStructureType()
QuaterniongetQuaternion(char qtype)
floatgetRadius()
intgetRasMolRadius()
intgetResno()
intgetScreenRadius()
intgetSelectedGroupCountWithinChain()
intgetSelectedGroupIndexWithinChain()
intgetSelectedMonomerCountWithinPolymer()
intgetSelectedMonomerIndexWithinPolymer()
intgetSeqcode()
StringgetSeqcodeString()
intgetSeqNumber()
intgetShapeVisibilityFlags()
bytegetSpecialAtomID()
floatgetStraightness()
intgetSurfaceDistance100()
StringgetSymmetryOperatorList()
intgetSymmetryTranslation(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---|...
intgetValence()
intgetVanderwaalsMad(Viewer viewer)
floatgetVanderwaalsRadiusFloat()
Vector3fgetVibrationVector()
inthashCode()
booleanisAlternateLocationMatch(String strPattern)
booleanisBonded(Atom atomOther)
booleanisCarbohydrate()
booleanisClickable()
booleanisCursorOnTopOf(int xCursor, int yCursor, int minRadius, Atom competitor)
booleanisDna()
booleanisGroup3(String group3)
booleanisHetero()
booleanisModelVisible()
booleanisNucleic()
booleanisProtein()
booleanisPurine()
booleanisPyrimidine()
booleanisRna()
booleanisShapeVisible(int shapeVisibilityFlag)
booleanisSimple()
booleanisTranslucent()
booleanisVisible()
determine if an atom or its PDB group is visible
voidsetClickable(int flag)
voidsetColixAtom(short colixAtom)
voidsetFormalCharge(int charge)
voidsetFractionalCoord(int tok, float fValue)
voidsetFractionalCoord(Point3f ptNew)
voidsetGroup(Group group)
voidsetMadAtom(Viewer viewer, int size)
voidsetPaletteID(byte paletteID)
booleansetRadius(float radius)
voidsetShapeVisibility(int shapeVisibilityFlag, boolean isVisible)
voidsetShapeVisibilityFlags(int flag)
voidsetTranslucent(boolean isTranslucent, float translucentLevel)
voidsetValency(int nBonds)
voidsetVibrationVector()
voidtransform(Viewer viewer)

Field Detail

alternateLocationID

char alternateLocationID

atomicAndIsotopeNumber

private short atomicAndIsotopeNumber

atomIndex

int atomIndex

atomSite

int atomSite

atomSymmetry

BitSet atomSymmetry

bonds

Bond[] bonds

clickabilityFlags

int clickabilityFlags

colixAtom

short colixAtom

formalChargeAndFlags

private byte formalChargeAndFlags

FORMAL_CHARGE_MASK

static final byte FORMAL_CHARGE_MASK

group

Group group

isSimple

boolean isSimple

IS_HETERO_FLAG

static final byte IS_HETERO_FLAG

madAtom

short madAtom

modelIndex

short modelIndex

nBackbonesDisplayed

int nBackbonesDisplayed

nBondsDisplayed

int nBondsDisplayed

paletteID

byte paletteID

shapeVisibilityFlags

int shapeVisibilityFlags

userDefinedVanDerWaalRadius

private float userDefinedVanDerWaalRadius

VALENCY_MASK

static final byte VALENCY_MASK

VIBRATION_VECTOR_FLAG

static final byte VIBRATION_VECTOR_FLAG

Constructor Detail

Atom

public Atom(Point3f pt)

Atom

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 Detail

addDisplayedBackbone

public void addDisplayedBackbone(int backboneVisibilityFlag, boolean isVisible)

addDisplayedBond

void addDisplayedBond(int stickVisibilityFlag, boolean isVisible)

clearBonds

void clearBonds()

convertEncodedMad

public short convertEncodedMad(Viewer viewer, int size)

deleteBond

void deleteBond(Bond bond)

deleteBond

private void deleteBond(int i)

equals

public boolean equals(Object obj)

findAromaticNeighbor

public Atom findAromaticNeighbor(BitSet notAtoms)

findAromaticNeighbor

public Atom findAromaticNeighbor(int notAtomIndex)

formatLabel

public String formatLabel(String strFormat)

formatLabel

public String formatLabel(String strFormat, char chAtom, int[] indices)

getADPMinMax

public float getADPMinMax(boolean isMax)

getAlternateLocationID

public char getAlternateLocationID()

getAtomicAndIsotopeNumber

public short getAtomicAndIsotopeNumber()

getAtomIndex

public int getAtomIndex()

getAtomName

String getAtomName()

getAtomNumber

public int getAtomNumber()

getAtomSite

public int getAtomSite()

getAtomSymmetry

public BitSet getAtomSymmetry()

getBfactor100

public int getBfactor100()

getBond

public Bond getBond(Atom atomOther)

getBondedAtomIndex

int getBondedAtomIndex(int bondIndex)

getBondingMar

short getBondingMar()

getBondingRadiusFloat

public float getBondingRadiusFloat()

getBonds

public Bond[] getBonds()

getCellTranslation

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

getChain

Chain getChain()

getChainID

public char getChainID()

getClickabilityFlags

public int getClickabilityFlags()

getClientAtomStringProperty

String getClientAtomStringProperty(String propertyName)

getColix

public short getColix()

getCovalentBondCount

public int getCovalentBondCount()

getCovalentHydrogenCount

int getCovalentHydrogenCount()

getCurrentBondCount

int getCurrentBondCount()

getDimensionValue

public float getDimensionValue(int dimension)

getElementNumber

public short getElementNumber()

getElementSymbol

public String getElementSymbol()

getEllipsoid

public Object[] getEllipsoid()

getFormalCharge

public int getFormalCharge()

getFractionalCoord

public float getFractionalCoord(char ch)

getFractionalCoord

public Point3f getFractionalCoord()

getGroup

public Group getGroup()

getGroup1

String getGroup1()

getGroup3

String getGroup3()

getGroupID

public short getGroupID()

getGroupPhi

public float getGroupPhi()

getGroupPsi

public float getGroupPsi()

getIdentity

private String getIdentity(boolean allInfo)

getIdentityXYZ

private String getIdentityXYZ()

getInfo

public String getInfo()

getInfoXYZ

String getInfoXYZ(boolean useChimeFormat)

getInsertionCode

public char getInsertionCode()

getIsotopeNumber

public short getIsotopeNumber()

getMadAtom

public short getMadAtom()

getModelFileIndex

public int getModelFileIndex()

getModelFileNumber

public int getModelFileNumber()

getModelIndex

public int getModelIndex()

getModelNumber

public int getModelNumber()

getModelNumberForLabel

String getModelNumberForLabel()

getMoleculeNumber

public int getMoleculeNumber()

getNBackbonesDisplayed

public int getNBackbonesDisplayed()

getOccupancy

public int getOccupancy()

getPaletteID

public byte getPaletteID()

getPartialCharge

public float getPartialCharge()

getPolymerIndex

int getPolymerIndex()

getPolymerLength

public int getPolymerLength()

getProteinStructureID

public int getProteinStructureID()

getProteinStructureType

public byte getProteinStructureType()

getQuaternion

public Quaternion getQuaternion(char qtype)

getRadius

public float getRadius()

getRasMolRadius

public int getRasMolRadius()

getResno

public int getResno()

getScreenRadius

public int getScreenRadius()

getSelectedGroupCountWithinChain

public int getSelectedGroupCountWithinChain()

getSelectedGroupIndexWithinChain

public int getSelectedGroupIndexWithinChain()

getSelectedMonomerCountWithinPolymer

public int getSelectedMonomerCountWithinPolymer()

getSelectedMonomerIndexWithinPolymer

public int getSelectedMonomerIndexWithinPolymer()

getSeqcode

int getSeqcode()

getSeqcodeString

String getSeqcodeString()

getSeqNumber

int getSeqNumber()

getShapeVisibilityFlags

public int getShapeVisibilityFlags()

getSpecialAtomID

public byte getSpecialAtomID()

getStraightness

public float getStraightness()

getSurfaceDistance100

public int getSurfaceDistance100()

getSymmetryOperatorList

private String getSymmetryOperatorList()

getSymmetryTranslation

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

getValence

public int getValence()

getVanderwaalsMad

private int getVanderwaalsMad(Viewer viewer)

getVanderwaalsRadiusFloat

public float getVanderwaalsRadiusFloat()

getVibrationVector

public Vector3f getVibrationVector()

hashCode

public int hashCode()

isAlternateLocationMatch

boolean isAlternateLocationMatch(String strPattern)

isBonded

public boolean isBonded(Atom atomOther)

isCarbohydrate

boolean isCarbohydrate()

isClickable

public boolean isClickable()

isCursorOnTopOf

boolean isCursorOnTopOf(int xCursor, int yCursor, int minRadius, Atom competitor)

isDna

boolean isDna()

isGroup3

boolean isGroup3(String group3)

isHetero

public boolean isHetero()

isModelVisible

public boolean isModelVisible()

isNucleic

boolean isNucleic()

isProtein

boolean isProtein()

isPurine

boolean isPurine()

isPyrimidine

boolean isPyrimidine()

isRna

boolean isRna()

isShapeVisible

public boolean isShapeVisible(int shapeVisibilityFlag)

isSimple

public boolean isSimple()

isTranslucent

public boolean isTranslucent()

isVisible

public boolean isVisible()
determine if an atom or its PDB group is visible

Returns: true if the atom is in the "select visible" set

setClickable

public void setClickable(int flag)

setColixAtom

public void setColixAtom(short colixAtom)

setFormalCharge

void setFormalCharge(int charge)

setFractionalCoord

void setFractionalCoord(int tok, float fValue)

setFractionalCoord

void setFractionalCoord(Point3f ptNew)

setGroup

void setGroup(Group group)

setMadAtom

public void setMadAtom(Viewer viewer, int size)

setPaletteID

public void setPaletteID(byte paletteID)

setRadius

public boolean setRadius(float radius)

setShapeVisibility

public final void setShapeVisibility(int shapeVisibilityFlag, boolean isVisible)

setShapeVisibilityFlags

public final void setShapeVisibilityFlags(int flag)

setTranslucent

public void setTranslucent(boolean isTranslucent, float translucentLevel)

setValency

public void setValency(int nBonds)

setVibrationVector

void setVibrationVector()

transform

public void transform(Viewer viewer)