BALL
1.4.1
|
#include <BALL/STRUCTURE/reducedSurface.h>
Public Member Functions | |
Constructors and Destructors | |
ReducedSurface () | |
ReducedSurface (const ReducedSurface &reduced_surface, bool=true) | |
ReducedSurface (const std::vector< TSphere3< double > > &spheres, const double &probe_radius) | |
virtual | ~ReducedSurface () |
Assignment | |
void | operator= (const ReducedSurface &reduced_surface) |
void | set (const ReducedSurface &reduced_surface) |
void | clear () |
void | clean () |
Accessors | |
Size | numberOfAtoms () const |
Size | numberOfVertices () const |
Size | numberOfEdges () const |
Size | numberOfFaces () const |
double | getProbeRadius () const |
TSphere3< double > | getSphere (Position i) const throw (Exception::IndexOverflow) |
RSVertex * | getVertex (Position i) const throw (Exception::IndexOverflow) |
RSEdge * | getEdge (Position i) const throw (Exception::IndexOverflow) |
RSFace * | getFace (Position i) const throw (Exception::IndexOverflow) |
void | insert (RSVertex *rsvertex) |
void | insert (RSEdge *rsedge) |
void | insert (RSFace *rsface) |
double | getMaximalRadius () const |
TSimpleBox3< double > | getBoundingBox () const |
void | deleteSimilarFaces (RSFace *face1, RSFace *face2) |
bool | getAngle (RSFace *face1, RSFace *face2, RSVertex *vertex1, RSVertex *vertex2, TAngle< double > &angle, bool check=false) const |
void | compute () throw (Exception::GeneralException, Exception::DivisionByZero, Exception::IndexOverflow) |
Protected Attributes | |
Size | number_of_atoms_ |
std::vector< TSphere3< double > > | atom_ |
double | probe_radius_ |
Size | number_of_vertices_ |
std::vector< RSVertex * > | vertices_ |
Size | number_of_edges_ |
std::vector< RSEdge * > | edges_ |
Size | number_of_faces_ |
std::vector< RSFace * > | faces_ |
double | r_max_ |
TSimpleBox3< double > | bounding_box_ |
Private Member Functions | |
bool | canBeCopied (const ReducedSurface &reduced_surface) |
void | copy (const ReducedSurface &reduced_surface) |
void | correctEdges (RSFace *face1, RSFace *face2, RSEdge *edge1, RSEdge *edge2) |
void | joinVertices (RSFace *face1, RSFace *face2, RSVertex *vertex1, RSVertex *vertex2) |
void | findSimilarVertices (RSFace *face1, RSFace *face2, std::vector< RSVertex * > &rsvertex1, std::vector< RSVertex * > &rsvertex2) |
void | findSimilarEdges (RSFace *face1, RSFace *face2, std::vector< RSEdge * > &rsedge1, std::vector< RSEdge * > &rsedge2) |
Friends | |
Class friends | |
| |
class | RSComputer |
class | SolventExcludedSurface |
class | SESComputer |
class | SESSingularityCleaner |
class | SolventAccessibleSurface |
class | TriangulatedSES |
class | TriangulatedSAS |
class | SESTriangulator |
Generic ReducedSurface Class.
Definition at line 154 of file reducedSurface.h.
Default constructor. All components are initialized to (T)0
or NULL
, respectivly.
BALL::ReducedSurface::ReducedSurface | ( | const ReducedSurface & | reduced_surface, |
bool | = true |
||
) |
Copy constructor.
reduced_surface | the ReducedSurface object to be copied |
bool | ignored - just for interface consistency |
BALL::ReducedSurface::ReducedSurface | ( | const std::vector< TSphere3< double > > & | spheres, |
const double & | probe_radius | ||
) |
Detailed constructor. Create a new ReducedSurface object from a list of spheres.
virtual BALL::ReducedSurface::~ReducedSurface | ( | ) | [virtual] |
Destructor.
bool BALL::ReducedSurface::canBeCopied | ( | const ReducedSurface & | reduced_surface | ) | [private] |
void BALL::ReducedSurface::clean | ( | ) |
Remove all NULL-pointers
void BALL::ReducedSurface::clear | ( | ) |
Delete all vertices, edges and faces.
void BALL::ReducedSurface::compute | ( | ) | throw (Exception::GeneralException, Exception::DivisionByZero, Exception::IndexOverflow) |
Compute the reduced surface.
void BALL::ReducedSurface::copy | ( | const ReducedSurface & | reduced_surface | ) | [private] |
void BALL::ReducedSurface::correctEdges | ( | RSFace * | face1, |
RSFace * | face2, | ||
RSEdge * | edge1, | ||
RSEdge * | edge2 | ||
) | [private] |
void BALL::ReducedSurface::deleteSimilarFaces | ( | RSFace * | face1, |
RSFace * | face2 | ||
) |
Delete a pair of similar faces.
face1 | a pointer to the first face |
face2 | a pointer to the second face |
void BALL::ReducedSurface::findSimilarEdges | ( | RSFace * | face1, |
RSFace * | face2, | ||
std::vector< RSEdge * > & | rsedge1, | ||
std::vector< RSEdge * > & | rsedge2 | ||
) | [private] |
void BALL::ReducedSurface::findSimilarVertices | ( | RSFace * | face1, |
RSFace * | face2, | ||
std::vector< RSVertex * > & | rsvertex1, | ||
std::vector< RSVertex * > & | rsvertex2 | ||
) | [private] |
bool BALL::ReducedSurface::getAngle | ( | RSFace * | face1, |
RSFace * | face2, | ||
RSVertex * | vertex1, | ||
RSVertex * | vertex2, | ||
TAngle< double > & | angle, | ||
bool | check = false |
||
) | const |
Get the angle between two RSFaces.
face1 | a pointer to the first face |
face2 | a pointer to the second face |
vertex1 | a pointer to the first vertex to roll over |
vertex2 | a pointer to the second vertex to roll over |
angle | the computed angle |
check | you kan ask to check whether the angle can be computed |
Return the bounding box of the centers of the atoms of the molecule
RSEdge* BALL::ReducedSurface::getEdge | ( | Position | i | ) | const throw (Exception::IndexOverflow) |
Return the i'th rsedge.
i | the index of the rsedge that should be given back |
RSFace* BALL::ReducedSurface::getFace | ( | Position | i | ) | const throw (Exception::IndexOverflow) |
Return the i'th rsface.
i | the index of the rsface that should be given back |
double BALL::ReducedSurface::getMaximalRadius | ( | ) | const |
Return the maximal radius of te atoms of te molecule
double BALL::ReducedSurface::getProbeRadius | ( | ) | const |
Return the probe radius.
TSphere3<double> BALL::ReducedSurface::getSphere | ( | Position | i | ) | const throw (Exception::IndexOverflow) |
Return the i'th sphere.
i | the index of the sphere that should be given back |
RSVertex* BALL::ReducedSurface::getVertex | ( | Position | i | ) | const throw (Exception::IndexOverflow) |
Return the i'th rsvertex.
i | the index of the rsvertex that should be given back |
void BALL::ReducedSurface::insert | ( | RSVertex * | rsvertex | ) |
void BALL::ReducedSurface::insert | ( | RSEdge * | rsedge | ) |
void BALL::ReducedSurface::insert | ( | RSFace * | rsface | ) |
void BALL::ReducedSurface::joinVertices | ( | RSFace * | face1, |
RSFace * | face2, | ||
RSVertex * | vertex1, | ||
RSVertex * | vertex2 | ||
) | [private] |
Size BALL::ReducedSurface::numberOfAtoms | ( | ) | const |
Return the number of atoms.
Size BALL::ReducedSurface::numberOfEdges | ( | ) | const |
Return the number of rsedges.
Size BALL::ReducedSurface::numberOfFaces | ( | ) | const |
Return the number of rsfaces.
Size BALL::ReducedSurface::numberOfVertices | ( | ) | const |
Return the number of rsvertices.
void BALL::ReducedSurface::operator= | ( | const ReducedSurface & | reduced_surface | ) |
Assign from another ReducedSurface.
reduced_surface | the ReducedSurface object to assign from |
void BALL::ReducedSurface::set | ( | const ReducedSurface & | reduced_surface | ) |
Assign from another ReducedSurface.
reduced_surface | the ReducedSurface object to assign from |
friend class RSComputer [friend] |
Definition at line 170 of file reducedSurface.h.
friend class SESComputer [friend] |
Definition at line 172 of file reducedSurface.h.
friend class SESSingularityCleaner [friend] |
Definition at line 173 of file reducedSurface.h.
friend class SESTriangulator [friend] |
Definition at line 177 of file reducedSurface.h.
friend class SolventAccessibleSurface [friend] |
Definition at line 174 of file reducedSurface.h.
friend class SolventExcludedSurface [friend] |
Definition at line 171 of file reducedSurface.h.
friend class TriangulatedSAS [friend] |
Definition at line 176 of file reducedSurface.h.
friend class TriangulatedSES [friend] |
Definition at line 175 of file reducedSurface.h.
std::vector< TSphere3<double> > BALL::ReducedSurface::atom_ [protected] |
Definition at line 381 of file reducedSurface.h.
TSimpleBox3<double> BALL::ReducedSurface::bounding_box_ [protected] |
Definition at line 417 of file reducedSurface.h.
std::vector< RSEdge* > BALL::ReducedSurface::edges_ [protected] |
Definition at line 401 of file reducedSurface.h.
std::vector< RSFace* > BALL::ReducedSurface::faces_ [protected] |
Definition at line 409 of file reducedSurface.h.
Size BALL::ReducedSurface::number_of_atoms_ [protected] |
Definition at line 376 of file reducedSurface.h.
Size BALL::ReducedSurface::number_of_edges_ [protected] |
Definition at line 397 of file reducedSurface.h.
Size BALL::ReducedSurface::number_of_faces_ [protected] |
Definition at line 405 of file reducedSurface.h.
Size BALL::ReducedSurface::number_of_vertices_ [protected] |
Definition at line 389 of file reducedSurface.h.
double BALL::ReducedSurface::probe_radius_ [protected] |
Definition at line 385 of file reducedSurface.h.
double BALL::ReducedSurface::r_max_ [protected] |
Definition at line 413 of file reducedSurface.h.
std::vector< RSVertex* > BALL::ReducedSurface::vertices_ [protected] |
Definition at line 393 of file reducedSurface.h.