BALL::ReducedSurface Class Reference
[Molecular Surface Computation]

Generic ReducedSurface Class. More...

#include <reducedSurface.h>

List of all members.


Public Member Functions

Constructors and Destructors
ReducedSurface ()
Default constructor.
ReducedSurface (const ReducedSurface &reduced_surface, bool=true)
Copy constructor.
ReducedSurface (const std::vector< TSphere3< double > > &spheres, const double &probe_radius)
Detailed constructor.
virtual ~ReducedSurface ()
Destructor.
Assignment
void operator= (const ReducedSurface &reduced_surface)
Assign from another ReducedSurface.
void set (const ReducedSurface &reduced_surface)
Assign from another ReducedSurface.
void clear ()
Delete all vertices, edges and faces.
void clean ()
Remove all NULL-pointers.
Accessors
Size numberOfAtoms () const
Return the number of atoms.
Size numberOfVertices () const
Return the number of rsvertices.
Size numberOfEdges () const
Return the number of rsedges.
Size numberOfFaces () const
Return the number of rsfaces.
double getProbeRadius () const
Return the probe radius.
TSphere3< double > getSphere (Position i) const throw (Exception::IndexOverflow)
Return the i'th sphere.
RSVertex * getVertex (Position i) const throw (Exception::IndexOverflow)
Return the i'th rsvertex.
RSEdge * getEdge (Position i) const throw (Exception::IndexOverflow)
Return the i'th rsedge.
RSFace * getFace (Position i) const throw (Exception::IndexOverflow)
Return the i'th rsface.
void insert (RSVertex *rsvertex)
Insert a new RSVertex.
void insert (RSEdge *rsedge)
Insert a new RSEdge.
void insert (RSFace *rsface)
Insert a new RSFace.
double getMaximalRadius () const
Return the maximal radius of te atoms of te molecule.
TSimpleBox3< double > getBoundingBox () const
Return the bounding box of the centers of te atoms of te molecule.
void deleteSimilarFaces (RSFace *face1, RSFace *face2)
Delete a pair of similar faces.
bool getAngle (RSFace *face1, RSFace *face2, RSVertex *vertex1, RSVertex *vertex2, TAngle< double > &angle, bool check=false) const
Get the angle between two RSFaces.
void compute () throw (Exception::GeneralException, Exception::DivisionByZero, Exception::IndexOverflow)
Compute the reduced surface.

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_

Friends

Class friends
class RSComputer
class SolventExcludedSurface
class SESComputer
class SESSingularityCleaner
class SolventAccessibleSurface
class TriangulatedSES
class TriangulatedSAS
class SESTriangulator

Detailed Description

Generic ReducedSurface Class.

Constructor & Destructor Documentation

BALL::ReducedSurface::ReducedSurface ( )

Default constructor.

All components are initialized to (T)0 or NULL, respectivly.

BALL::ReducedSurface::ReducedSurface ( const ReducedSurface & reduced_surface,
bool = true
)

Copy constructor.

Parameters:
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.


Member Function Documentation

void BALL::ReducedSurface::deleteSimilarFaces ( RSFace * face1,
RSFace * face2
)

Delete a pair of similar faces.

Parameters:
face1 a pointer to the first face
face2 a pointer to the second face

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.

Parameters:
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

TSimpleBox3<double> BALL::ReducedSurface::getBoundingBox ( ) const

Return the bounding box of the centers of te atoms of te molecule.

Returns:
TSimpleBox3<double> the bounding box

RSEdge* BALL::ReducedSurface::getEdge ( Position i ) const throw (Exception::IndexOverflow)

Return the i'th rsedge.

Parameters:
i the index of the rsedge that should be given back
Returns:
RSEdge, the i'th rsedge

RSFace* BALL::ReducedSurface::getFace ( Position i ) const throw (Exception::IndexOverflow)

Return the i'th rsface.

Parameters:
i the index of the rsface that should be given back
Returns:
RSFace, the i'th rsface

double BALL::ReducedSurface::getMaximalRadius ( ) const

Return the maximal radius of te atoms of te molecule.

Returns:
double the maximal radius

double BALL::ReducedSurface::getProbeRadius ( ) const

Return the probe radius.

Returns:
double the radius of the used probe sphere

TSphere3<double> BALL::ReducedSurface::getSphere ( Position i ) const throw (Exception::IndexOverflow)

Return the i'th sphere.

Parameters:
i the index of the sphere that should be given back
Returns:
TSphere3<double>, the i'th sphere

RSVertex* BALL::ReducedSurface::getVertex ( Position i ) const throw (Exception::IndexOverflow)

Return the i'th rsvertex.

Parameters:
i the index of the rsvertex that should be given back
Returns:
RSVertex, the i'th rsvertex

void BALL::ReducedSurface::insert ( RSFace * rsface )

Insert a new RSFace.

Parameters:
rsface a pointer to the RSFace to insert

void BALL::ReducedSurface::insert ( RSEdge * rsedge )

Insert a new RSEdge.

Parameters:
rsedge a pointer to the RSEdge to insert

void BALL::ReducedSurface::insert ( RSVertex * rsvertex )

Insert a new RSVertex.

Parameters:
rsvertex a pointer to the RSVertex to insert

Size BALL::ReducedSurface::numberOfAtoms ( ) const

Return the number of atoms.

Returns:
Size the number of atoms

Size BALL::ReducedSurface::numberOfEdges ( ) const

Return the number of rsedges.

Returns:
Size the number of rsedges

Size BALL::ReducedSurface::numberOfFaces ( ) const

Return the number of rsfaces.

Returns:
Size the number of rsfaces

Size BALL::ReducedSurface::numberOfVertices ( ) const

Return the number of rsvertices.

Returns:
Size the number of rsvertices

void BALL::ReducedSurface::operator= ( const ReducedSurface & reduced_surface )

Assign from another ReducedSurface.

Parameters:
reduced_surface the ReducedSurface object to assign from

void BALL::ReducedSurface::set ( const ReducedSurface & reduced_surface )

Assign from another ReducedSurface.

Parameters:
reduced_surface the ReducedSurface object to assign from

Generated on Thu Aug 6 18:30:47 2009 for BALL by doxygen 1.5.8