#include <PAtom.h>
Public Member Functions | |
PAtom (PBlock *block, const string &name, Vector3 position, const string &id) | |
~PAtom () | |
string | getID () const |
void | changePosition (const Vector3 &newPosition) |
void | ApplyTransform (const Matrix4 &transform) |
AtomSet * | getAllCollidingStatic () const |
AtomSet * | getAllCollidingSelf () const |
AtomSet * | getAllCollidingEither () const |
PBond * | getBond (PResidue *res, const string &id) |
PAtom * | FindStaticCollision () const |
PAtom * | FindSelfCollision () const |
PAtom * | FindAnyCollision () const |
bool | InStaticCollision () const |
bool | InSelfCollision () const |
bool | InAnyCollision () const |
bool | isOnBackbone () const |
PBlock * | getParentBlock () |
PResidue * | getParentResidue () |
PChain * | getChain () const |
Vector3 | getPos () const |
const vector< PBond * > * | getBonds () const |
Real | getCovalentRadius () const |
Real | getVanDerWaalsRadius () const |
Real | getOccupancy () const |
void | setOccupancy (Real newVal) |
Real | getTempFactor () const |
void | setTempFactor (Real newVal) |
void | setColor (const GLColor setColor) |
void | revertColor () |
GLColor | getColor () const |
string | getName () const |
Vector3 | getGridPos () const |
bool | WithinActiveBlock () const |
bool | isBonded (const PAtom *other) const |
void | traverseChain (AtomFunctor *atomFn, BondFunctor *bondFn) |
void | traverseAtoms (AtomFunctor *atomFn) |
void | traverseBonds (BondFunctor *bondFn) |
const PSpaceManager * | getSpaceManager () const |
bool | isActive () const |
void | inactivate () |
void | activate () |
Static Public Member Functions | |
static int | shortestBondPath (const PAtom *a1, const PAtom *a2, int threshold=-1) |
Friends | |
class | PBond |
class | PResidue |
class | PBlock |
PAtom::PAtom | ( | PBlock * | block, | |
const string & | name, | |||
Vector3 | position, | |||
const string & | id | |||
) |
Constructs a new PAtom in the specified block, with the given name and global coordinates.
PAtom::~PAtom | ( | ) |
Destroys a PAtom, frees any memory associated with it, and removes it from the collision grid.
string PAtom::getID | ( | ) | const [inline] |
Returns the ID this atom has within its residue.
void PAtom::changePosition | ( | const Vector3 & | newPosition | ) |
Moves this atom to the specified global coordinates and updates its position in the collision grid.
void PAtom::ApplyTransform | ( | const Matrix4 & | transform | ) |
Applies the specified matrix transformation to this atom's position.
AtomSet * PAtom::getAllCollidingStatic | ( | ) | const |
Returns the set of all atoms in static collision with this atom.
AtomSet * PAtom::getAllCollidingSelf | ( | ) | const |
Returns the set of all atoms in self collision with this atom.
AtomSet * PAtom::getAllCollidingEither | ( | ) | const |
Returns the set of atoms in any collision (self or static) with this atom.
Returns bond to atom in residue res with id id.
PAtom * PAtom::FindStaticCollision | ( | ) | const |
Returns any atom in static collision with this atom, or NULL if no such atom exists.
PAtom * PAtom::FindSelfCollision | ( | ) | const |
Returns any atom in self collision with this atom, or NULL if no such atom exists.
PAtom * PAtom::FindAnyCollision | ( | ) | const |
Returns any atom in either static or self collision with this atom, or NULL if no such atom exists.
bool PAtom::InStaticCollision | ( | ) | const |
Returns true if any atom is in static collision with this atom, false otherwise.
bool PAtom::InSelfCollision | ( | ) | const |
Returns true if any atom is in self collision with this atom, false otherwise.
bool PAtom::InAnyCollision | ( | ) | const |
Returns true if any atom is in either static or self collision with this atom, false otherwise.
bool PAtom::isOnBackbone | ( | ) | const |
Returns true if this atom is on the backbone
PBlock* PAtom::getParentBlock | ( | ) | [inline] |
Returns the atom's parent block.
PResidue * PAtom::getParentResidue | ( | ) |
Returns the atom's parent residue.
PChain * PAtom::getChain | ( | ) | const |
Returns the atom's parent chain.
Vector3 PAtom::getPos | ( | ) | const [inline] |
Returns the atom's global coordinates.
const vector<PBond *>* PAtom::getBonds | ( | ) | const [inline] |
Returns all the bonds that include this atom.
Real PAtom::getCovalentRadius | ( | ) | const [inline] |
Returns the atom's covalent radius.
Real PAtom::getVanDerWaalsRadius | ( | ) | const [inline] |
Returns the atom's van der Waals radius.
Real PAtom::getOccupancy | ( | ) | const [inline] |
Returns the atom's occupancy.
void PAtom::setOccupancy | ( | Real | newVal | ) | [inline] |
Sets the atom's occupancy to newVal
.
Real PAtom::getTempFactor | ( | ) | const [inline] |
Returns the atom's temperature factor.
void PAtom::setTempFactor | ( | Real | newVal | ) | [inline] |
Sets the atom's temperature factor to newVal
.
void PAtom::setColor | ( | const GLColor | setColor | ) | [inline] |
Sets the color to be drawn when this atom is displayed graphically. If not used, the default color is from PAtomShell.
void PAtom::revertColor | ( | ) | [inline] |
Reverts to the default color.
GLColor PAtom::getColor | ( | ) | const [inline] |
Returns the color to be drawn when this atom is displayed graphically.
string PAtom::getName | ( | ) | const [inline] |
Returns this atom's name.
Vector3 PAtom::getGridPos | ( | ) | const |
Returns this atom's coordinates in the collision grid.
bool PAtom::WithinActiveBlock | ( | ) | const |
Returns true if this atom's parent block is currently active, false otherwise.
bool PAtom::isBonded | ( | const PAtom * | other | ) | const |
Returns true if this atom is bonded to other
, false otherwise.
Returns the length of the shortest bond path between a1
and a2
. If a1 == a2
, returns 0; if a1
is bonded to a2
, returns 1.
The optional parameter threshold
allows the caller to specify a "cutoff" for the maximum length of the path. If threshold >= 0
and the shortest path is found to be at least threshold
bonds long, this value will be returned immediately. The default value threshold = -1
specifies no cutoff.
void PAtom::traverseChain | ( | AtomFunctor * | atomFn, | |
BondFunctor * | bondFn | |||
) |
Initiates a traversal of the graph of atoms (nodes) and their bonds (vertices) at this atom, using the specified functors to be executed on each atom and bond.
void PAtom::traverseAtoms | ( | AtomFunctor * | atomFn | ) | [inline] |
Initiates a traversal of the graph of atoms (nodes) and their bonds (vertices) at this atom, using the specified functor to be executed on each atom.
void PAtom::traverseBonds | ( | BondFunctor * | bondFn | ) | [inline] |
Initiates a traversal of the graph of atoms (nodes) and their bonds (vertices) at this atom, using the specified functor to be executed on each bond.
const PSpaceManager * PAtom::getSpaceManager | ( | ) | const |
Returns the space manager for the chain this atom is in.
bool PAtom::isActive | ( | ) | const [inline] |
Returns true if this atom is active for collision checking, false otherwise.
void PAtom::inactivate | ( | ) | [inline] |
Makes this atom inactive for collision checking.
void PAtom::activate | ( | ) | [inline] |
Make the atom active for collision checking.
friend class PBond [friend] |
friend class PResidue [friend] |
friend class PBlock [friend] |