#include <gcu/atom.h>
Inheritance diagram for gcu::Atom:
Public Member Functions | |
Atom () | |
Atom (int Z, double x, double y, double z=0.) | |
Atom (Atom &a) | |
Atom & | operator= (Atom &a) |
virtual | ~Atom () |
double | Distance (Atom *pAtom) |
void | zoom (double ZoomFactor) |
virtual bool | GetCoords (double *x, double *y, double *z=NULL) |
void | SetCoords (double x, double y, double z=0) |
int | GetZ () |
virtual void | SetZ (int Z) |
void | SetCharge (char Charge) |
char | GetCharge () |
const gchar * | GetSymbol () |
virtual void | AddBond (Bond *pBond) |
virtual void | RemoveBond (Bond *pBond) |
double | x () |
double | y () |
double | z () |
Bond * | GetFirstBond (map< Atom *, Bond * >::iterator &i) |
Bond * | GetNextBond (map< Atom *, Bond * >::iterator &i) |
Bond * | GetBond (Atom *pAtom) |
int | GetBondsNumber () |
virtual xmlNodePtr | Save (xmlDocPtr xml) |
virtual bool | Load (xmlNodePtr node) |
virtual bool | LoadNode (xmlNodePtr node) |
virtual bool | SaveNode (xmlDocPtr xml, xmlNodePtr node) |
virtual void | Move (double x, double y, double z=0.) |
virtual void | Transform2D (Matrix2D &m, double x, double y) |
Protected Attributes | |
int | m_Z |
double | m_x |
double | m_y |
double | m_z |
char | m_Charge |
map< Atom *, Bond * > | m_Bonds |
Definition at line 42 of file atom.h.
gcu::Atom::Atom | ( | ) |
The default constructor. Creates an atom with atomic number set to 0.
gcu::Atom::Atom | ( | int | Z, | |
double | x, | |||
double | y, | |||
double | z = 0. | |||
) |
Z,: | the atomic number of the new atom. | |
x,: | the x coordinate of the new atom. | |
y,: | the y coordinate of the new atom. | |
z,: | the z coordinate of the new atom. |
gcu::Atom::Atom | ( | Atom & | a | ) |
a,: | the Atom to duplicate. |
virtual gcu::Atom::~Atom | ( | ) | [virtual] |
virtual void gcu::Atom::AddBond | ( | Bond * | pBond | ) | [virtual] |
double gcu::Atom::Distance | ( | Atom * | pAtom | ) |
int gcu::Atom::GetBondsNumber | ( | ) | [inline] |
char gcu::Atom::GetCharge | ( | ) | [inline] |
virtual bool gcu::Atom::GetCoords | ( | double * | x, | |
double * | y, | |||
double * | z = NULL | |||
) | [virtual] |
x,: | a pointer to the double value which will receive the x coordiante of the Atom. | |
y,: | a pointer to the double value which will receive the y coordiante of the Atom. | |
z,: | a pointer to the double value which will receive the z coordiante of the Atom or NULL for 2D representations. |
i,: | a C++ std::map iterator initialized by Atom::GetFirstBond. |
const gchar* gcu::Atom::GetSymbol | ( | ) |
int gcu::Atom::GetZ | ( | ) | [inline] |
virtual bool gcu::Atom::Load | ( | xmlNodePtr | node | ) | [virtual] |
node,: | a pointer to the xmlNode containing the serialized Atom. |
Reimplemented from gcu::Object.
virtual bool gcu::Atom::LoadNode | ( | xmlNodePtr | node | ) | [virtual] |
node,: | a pointer to the xmlNode containing the serialized Atom. |
Reimplemented in gcu::CrystalAtom.
virtual void gcu::Atom::Move | ( | double | x, | |
double | y, | |||
double | z = 0. | |||
) | [virtual] |
x,: | the x component of the transation vector. | |
y,: | the y component of the transation vector. | |
z,: | the z component of the transation vector. |
Reimplemented from gcu::Object.
virtual void gcu::Atom::RemoveBond | ( | Bond * | pBond | ) | [virtual] |
virtual xmlNodePtr gcu::Atom::Save | ( | xmlDocPtr | xml | ) | [virtual] |
xml,: | the xmlDoc used to save the document. |
Reimplemented from gcu::Object.
virtual bool gcu::Atom::SaveNode | ( | xmlDocPtr | xml, | |
xmlNodePtr | node | |||
) | [virtual] |
xml,: | the xmlDoc used to save the document. | |
node,: | a pointer to the xmlNode to which this Atom is serialized. |
Reimplemented in gcu::CrystalAtom.
void gcu::Atom::SetCharge | ( | char | Charge | ) | [inline] |
void gcu::Atom::SetCoords | ( | double | x, | |
double | y, | |||
double | z = 0 | |||
) | [inline] |
virtual void gcu::Atom::SetZ | ( | int | Z | ) | [virtual] |
Z,: | the new atomic number of the Atom. |
virtual void gcu::Atom::Transform2D | ( | Matrix2D & | m, | |
double | x, | |||
double | y | |||
) | [virtual] |
m,: | the 2D Matrix 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::Object.
double gcu::Atom::x | ( | ) | [inline] |
double gcu::Atom::y | ( | ) | [inline] |
double gcu::Atom::z | ( | ) | [inline] |
Definition at line 152 of file atom.h.
References m_z.
Referenced by SetCoords().
void gcu::Atom::zoom | ( | double | ZoomFactor | ) |
ZoomFactor,: | the zoom factor. |
map<Atom*, Bond*> gcu::Atom::m_Bonds [protected] |
char gcu::Atom::m_Charge [protected] |
The charge of the Atom.
Definition at line 239 of file atom.h.
Referenced by GetCharge(), and SetCharge().
double gcu::Atom::m_x [protected] |
The x coordinate of the Atom.
Definition at line 227 of file atom.h.
Referenced by SetCoords(), and x().
double gcu::Atom::m_y [protected] |
The x coordinate of the Atom.
Definition at line 231 of file atom.h.
Referenced by SetCoords(), and y().
double gcu::Atom::m_z [protected] |
The x coordinate of the Atom.
Definition at line 235 of file atom.h.
Referenced by SetCoords(), and z().
int gcu::Atom::m_Z [protected] |