#include <atom.h>
Public Member Functions | |
Atom () | |
Atom (int Z, double x, double y, double z) | |
Atom (OpenBabel::OBAtom *atom) | |
virtual | ~Atom () |
virtual void | SetZ (int Z) |
void | AddBond (gcu::Bond *pBond) |
void | RemoveBond (gcu::Bond *pBond) |
virtual void | Update () |
int | GetTotalBondsNumber () const |
int | GetAttachedHydrogens () const |
HPos | GetBestSide () |
virtual gccv::Anchor | GetChargePosition (unsigned char &Pos, double Angle, double &x, double &y) |
virtual int | GetAvailablePosition (double &x, double &y) |
virtual bool | GetRelativePosition (double angle, double &x, double &y) |
virtual bool | GetPosition (double angle, double &x, double &y) |
virtual xmlNodePtr | Save (xmlDocPtr xml) const |
virtual bool | Load (xmlNodePtr node) |
virtual bool | LoadNode (xmlNodePtr node) |
void | AddItem () |
void | SetSelected (int state) |
virtual bool | AcceptNewBonds (int nb=1) |
virtual bool | AcceptCharge (int charge) |
virtual double | GetYAlign () |
virtual void | Transform2D (gcu::Matrix2D &m, double x, double y) |
bool | BuildContextualMenu (GtkUIManager *UIManager, Object *object, double x, double y) |
virtual void | AddToMolecule (Molecule *Mol) |
bool | HasImplicitElectronPairs () |
bool | MayHaveImplicitUnpairedElectrons () |
void | AddElectron (Electron *electron) |
void | RemoveElectron (Electron *electron) |
void | NotifyPositionOccupation (unsigned char pos, bool occupied) |
void | SetChargePosition (unsigned char Pos, bool def, double angle=0., double distance=0.) |
char | GetChargePosition (double *Angle, double *Dist) const |
void | SetCharge (int charge) |
int | GetCharge () const |
void | ForceChanged () |
bool | Match (gcu::Atom *atom, gcu::AtomMatchState &state) |
void | GetSymbolGeometry (double &width, double &height, double &angle, bool up) const |
bool | HasAvailableElectrons (bool paired) |
Bond * | GetBondAtAngle (double angle) |
void | SetShowSymbol (bool val) |
bool | GetShowSymbol (void) const |
bool & | GetRefShowSymbol (void) |
void | SetHPosStyle (HPos val) |
HPos | GetHPosStyle (void) const |
HPos & | GetRefHPosStyle (void) |
void | SetChargeItem (gccv::Item *val) |
gccv::Item * | GetChargeItem (void) |
void | SetShowCharge (bool val) |
bool | GetShowCharge (void) const |
Protected Member Functions | |
void | BuildSymbolGeometry (double width, double height, double ascent) |
Protected Attributes | |
double | m_CHeight |
Definition at line 113 of file gcp/atom.h.
gcp::Atom::Atom | ( | ) |
Default construtor.
Reimplemented from gcu::Atom.
gcp::Atom::Atom | ( | int | Z, | |
double | x, | |||
double | y, | |||
double | z | |||
) |
Z | the atomic number. | |
x | the x coordinate. | |
y | the y coordinate. | |
z | the z coordinate. |
Reimplemented from gcu::Atom.
gcp::Atom::Atom | ( | OpenBabel::OBAtom * | atom | ) |
virtual gcp::Atom::~Atom | ( | ) | [virtual] |
The destructor.
Reimplemented from gcu::Atom.
virtual bool gcp::Atom::AcceptCharge | ( | int | charge | ) | [virtual] |
charge | the charge that might be set. |
Reimplemented in gcp::FragmentAtom.
virtual bool gcp::Atom::AcceptNewBonds | ( | int | nb = 1 |
) | [virtual] |
nb | the number of bonds to add, taking orders into account. |
Reimplemented in gcp::FragmentAtom.
void gcp::Atom::AddBond | ( | gcu::Bond * | pBond | ) | [virtual] |
void gcp::Atom::AddElectron | ( | Electron * | electron | ) |
void gcp::Atom::AddItem | ( | ) | [virtual] |
Used to add a representation of the atom in the view.
Reimplemented from gccv::ItemClient.
Reimplemented in gcp::FragmentAtom.
virtual void gcp::Atom::AddToMolecule | ( | Molecule * | Mol | ) | [virtual] |
Mol,: | a pointer to a molecule |
Reimplemented in gcp::FragmentAtom.
bool gcp::Atom::BuildContextualMenu | ( | GtkUIManager * | UIManager, | |
Object * | object, | |||
double | x, | |||
double | y | |||
) |
UIManager,: | the GtkUIManager to populate. | |
object | the atom on which occured the mouse click. | |
x | x coordinate of the mouse click. | |
y | y coordinate of the mouse click. |
void gcp::Atom::BuildSymbolGeometry | ( | double | width, | |
double | height, | |||
double | ascent | |||
) | [protected] |
width | the witdh of the atomic symbol. | |
height | the height of the atomic symbol. | |
ascent | the ascent of the atomic symbol. |
void gcp::Atom::ForceChanged | ( | ) | [inline] |
Forces an update.
Definition at line 347 of file gcp/atom.h.
int gcp::Atom::GetAttachedHydrogens | ( | ) | const [inline] |
Definition at line 171 of file gcp/atom.h.
virtual int gcp::Atom::GetAvailablePosition | ( | double & | x, | |
double & | y | |||
) | [virtual] |
x | the x position. | |
y | the y position. |
Reimplemented in gcp::FragmentAtom.
HPos gcp::Atom::GetBestSide | ( | ) |
Bond* gcp::Atom::GetBondAtAngle | ( | double | angle | ) |
angle | the angle from the east direction in the trigonometric convention. |
int gcp::Atom::GetCharge | ( | ) | const [inline] |
Definition at line 343 of file gcp/atom.h.
References gcu::Atom::m_Charge.
gcp::Atom::GetChargeItem | ( | void | ) | [inline] |
Definition at line 475 of file gcp/atom.h.
char gcp::Atom::GetChargePosition | ( | double * | Angle, | |
double * | Dist | |||
) | const |
Angle | where to store the angle from east direction in the trigonometric convention. | |
Dist | where to store the distance from the center of the atom. |
virtual gccv::Anchor gcp::Atom::GetChargePosition | ( | unsigned char & | Pos, | |
double | Angle, | |||
double & | x, | |||
double & | y | |||
) | [virtual] |
Pos | the approximate position of the charge. | |
Angle | the angle from horizontal left. | |
x | the x position of the charge symbol. | |
y | the y position of the charge symbol. |
Reimplemented in gcp::FragmentAtom.
gcp::Atom::GetHPosStyle | ( | void | ) | const [inline] |
virtual bool gcp::Atom::GetPosition | ( | double | angle, | |
double & | x, | |||
double & | y | |||
) | [virtual] |
angle | the angle at which a charge sign or an electron should be displayed. | |
x | the x position. | |
y | the y position. |
Reimplemented in gcp::FragmentAtom.
gcp::Atom::GetRefHPosStyle | ( | void | ) | [inline] |
Definition at line 463 of file gcp/atom.h.
gcp::Atom::GetRefShowSymbol | ( | void | ) | [inline] |
Definition at line 450 of file gcp/atom.h.
virtual bool gcp::Atom::GetRelativePosition | ( | double | angle, | |
double & | x, | |||
double & | y | |||
) | [virtual] |
angle | the angle at which a charge sign or an electron should be displayed. | |
x | the x position. | |
y | the y position. |
gcp::Atom::GetShowCharge | ( | void | ) | const [inline] |
whether the local charge is displayed as a reference.
Definition at line 487 of file gcp/atom.h.
gcp::Atom::GetShowSymbol | ( | void | ) | const [inline] |
Definition at line 450 of file gcp/atom.h.
void gcp::Atom::GetSymbolGeometry | ( | double & | width, | |
double & | height, | |||
double & | angle, | |||
bool | up | |||
) | const |
width | where to store the width. | |
height | where to store the height. | |
angle | where to store the limit angle. | |
up | whether considering the top half or the bottom half |
int gcp::Atom::GetTotalBondsNumber | ( | ) | const |
virtual double gcp::Atom::GetYAlign | ( | ) | [virtual] |
Reimplemented from gcu::Object.
bool gcp::Atom::HasAvailableElectrons | ( | bool | paired | ) |
paired | whether to ask for a pair of electrons or a single electron. |
bool gcp::Atom::HasImplicitElectronPairs | ( | ) |
virtual bool gcp::Atom::Load | ( | xmlNodePtr | node | ) | [virtual] |
node | a pointer to the xmlNode containing the serialized atom. |
Reimplemented from gcu::Atom.
Reimplemented in gcp::FragmentAtom, and gcp::FragmentResidue.
virtual bool gcp::Atom::LoadNode | ( | xmlNodePtr | node | ) | [virtual] |
bool gcp::Atom::Match | ( | gcu::Atom * | atom, | |
gcu::AtomMatchState & | state | |||
) | [virtual] |
atom | the atom to which the this instance is to be compared. | |
state | the AtomMatchState representing the current comparison state. |
Reimplemented from gcu::Atom.
Reimplemented in gcp::FragmentAtom.
bool gcp::Atom::MayHaveImplicitUnpairedElectrons | ( | ) |
void gcp::Atom::NotifyPositionOccupation | ( | unsigned char | pos, | |
bool | occupied | |||
) |
pos | one of POSITION_E, POSITION_N,... | |
occupied | true if occupied, false otherwise. |
void gcp::Atom::RemoveBond | ( | gcu::Bond * | pBond | ) | [virtual] |
void gcp::Atom::RemoveElectron | ( | Electron * | electron | ) |
virtual xmlNodePtr gcp::Atom::Save | ( | xmlDocPtr | xml | ) | const [virtual] |
xml | the xmlDoc used to save the document. |
Reimplemented from gcu::Atom.
Reimplemented in gcp::FragmentAtom, and gcp::FragmentResidue.
void gcp::Atom::SetCharge | ( | int | charge | ) |
charge | the charge to set. |
gcp::Atom::SetChargeItem | ( | gccv::Item * | item | ) | [inline] |
item | a gccv::Item. |
Definition at line 475 of file gcp/atom.h.
void gcp::Atom::SetChargePosition | ( | unsigned char | Pos, | |
bool | def, | |||
double | angle = 0. , |
|||
double | distance = 0. | |||
) |
Pos | one of POSITION_E, POSITION_N,... | |
def | true if the position is automatic. | |
angle | the angle from the east direction in the trigonometric convention. | |
distance | the distance from the center of the atom, or 0. if automatic. |
gcp::Atom::SetHPosStyle | ( | HPos | val | ) | [inline] |
val | the new position. |
Definition at line 463 of file gcp/atom.h.
void gcp::Atom::SetSelected | ( | int | state | ) | [virtual] |
state | the selection state of the atom. |
Reimplemented from gccv::ItemClient.
Reimplemented in gcp::FragmentAtom.
gcp::Atom::SetShowCharge | ( | bool | show | ) | [inline] |
show | whether to display the local charge. |
Definition at line 487 of file gcp/atom.h.
gcp::Atom::SetShowSymbol | ( | bool | ShowSymbol | ) | [inline] |
ShowSymbol | whether the symbol of a carbon atom is to be displayed or not. |
Definition at line 450 of file gcp/atom.h.
virtual void gcp::Atom::SetZ | ( | int | Z | ) | [virtual] |
Z | the new atomic number. |
Reimplemented from gcu::Atom.
Reimplemented in gcp::FragmentAtom.
virtual void gcp::Atom::Transform2D | ( | gcu::Matrix2D & | m, | |
double | x, | |||
double | y | |||
) | [virtual] |
m | the Matrix2D of the transformation. | |
x | the x component of the center of the transformation. | |
y | the y component of the center of the transformation. |
Reimplemented from gcu::Atom.
virtual void gcp::Atom::Update | ( | ) | [virtual] |
Updates the atom after changing its bonds, charge or explicit electrons.
Reimplemented in gcp::FragmentAtom.
double gcp::Atom::m_CHeight [protected] |
Half the height of the "C" character.
Definition at line 437 of file gcp/atom.h.