Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members

ReducedSurface Class Reference
[Molecular Surface Computation]

Generic ReducedSurface Class. More...

#include <reducedSurface.h>

List of all members.

Public Member Functions

Constructors and Destructors
 ReducedSurface () throw ()
 Default constructor.
 ReducedSurface (const ReducedSurface &reduced_surface, bool=true) throw ()
 Copy constructor.
 ReducedSurface (const std::vector< TSphere3< double > > &spheres, const double &probe_radius) throw ()
 Detailed constructor.
virtual ~ReducedSurface () throw ()
 Destructor.
Assignment
void operator= (const ReducedSurface &reduced_surface) throw ()
 Assign from another ReducedSurface.
void set (const ReducedSurface &reduced_surface) throw ()
 Assign from another ReducedSurface.
void clear () throw ()
 Delete all vertices, edges and faces.
void clean () throw ()
 Remove all NULL-pointers.
Accessors
Size numberOfAtoms () const throw ()
 Return the number of atoms.
Size numberOfVertices () const throw ()
 Return the number of rsvertices.
Size numberOfEdges () const throw ()
 Return the number of rsedges.
Size numberOfFaces () const throw ()
 Return the number of rsfaces.
double getProbeRadius () const throw ()
 Return the probe radius.
TSphere3< double > getSphere (Position i) const throw (Exception::IndexOverflow)
 Return the i'th sphere.
RSVertexgetVertex (Position i) const throw (Exception::IndexOverflow)
 Return the i'th rsvertex.
RSEdgegetEdge (Position i) const throw (Exception::IndexOverflow)
 Return the i'th rsedge.
RSFacegetFace (Position i) const throw (Exception::IndexOverflow)
 Return the i'th rsface.
void insert (RSVertex *rsvertex) throw ()
 Insert a new RSVertex.
void insert (RSEdge *rsedge) throw ()
 Insert a new RSEdge.
void insert (RSFace *rsface) throw ()
 Insert a new RSFace.
double getMaximalRadius () const throw ()
 Return the maximal radius of te atoms of te molecule.
TSimpleBox3< double > getBoundingBox () const throw ()
 Return the bounding box of the centers of te atoms of te molecule.
void deleteSimilarFaces (RSFace *face1, RSFace *face2) throw ()
 Delete a pair of similar faces.
bool getAngle (RSFace *face1, RSFace *face2, RSVertex *vertex1, RSVertex *vertex2, TAngle< double > &angle, bool check=false) const throw ()
 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 TriangulatedSES - class SESComputer - class SESSingularityCleaner - class SolventAccessibleSurface - class TriangulatedSAS - class SESTriangulator


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


Detailed Description

Generic ReducedSurface Class.


Constructor & Destructor Documentation

ReducedSurface::ReducedSurface  )  throw ()
 

Default constructor.

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

ReducedSurface::ReducedSurface const ReducedSurface reduced_surface,
bool  = true
throw ()
 

Copy constructor.

Parameters:
reduced_surface the ReducedSurface object to be copied
bool ignored - just for interface consistency

ReducedSurface::ReducedSurface const std::vector< TSphere3< double > > &  spheres,
const double &  probe_radius
throw ()
 

Detailed constructor.

Create a new ReducedSurface object from a list of spheres.

virtual ReducedSurface::~ReducedSurface  )  throw () [virtual]
 

Destructor.


Member Function Documentation

void ReducedSurface::clear  )  throw ()
 

Delete all vertices, edges and faces.

void ReducedSurface::compute  )  throw (Exception::GeneralException, Exception::DivisionByZero, Exception::IndexOverflow)
 

Compute the reduced surface.

void ReducedSurface::deleteSimilarFaces RSFace face1,
RSFace face2
throw ()
 

Delete a pair of similar faces.

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

bool ReducedSurface::getAngle RSFace face1,
RSFace face2,
RSVertex vertex1,
RSVertex vertex2,
TAngle< double > &  angle,
bool  check = false
const throw ()
 

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> ReducedSurface::getBoundingBox  )  const throw ()
 

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

Returns:
TSimpleBox3<double> the bounding box

RSEdge* 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* 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 ReducedSurface::getMaximalRadius  )  const throw ()
 

Return the maximal radius of te atoms of te molecule.

Returns:
double the maximal radius

double ReducedSurface::getProbeRadius  )  const throw ()
 

Return the probe radius.

Returns:
double the radius of the used probe sphere

TSphere3<double> 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* 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 ReducedSurface::insert RSFace rsface  )  throw ()
 

Insert a new RSFace.

Parameters:
rsface a pointer to the RSFace to insert

void ReducedSurface::insert RSEdge rsedge  )  throw ()
 

Insert a new RSEdge.

Parameters:
rsedge a pointer to the RSEdge to insert

void ReducedSurface::insert RSVertex rsvertex  )  throw ()
 

Insert a new RSVertex.

Parameters:
rsvertex a pointer to the RSVertex to insert

Size ReducedSurface::numberOfAtoms  )  const throw ()
 

Return the number of atoms.

Returns:
Size the number of atoms

Size ReducedSurface::numberOfEdges  )  const throw ()
 

Return the number of rsedges.

Returns:
Size the number of rsedges

Size ReducedSurface::numberOfFaces  )  const throw ()
 

Return the number of rsfaces.

Returns:
Size the number of rsfaces

Size ReducedSurface::numberOfVertices  )  const throw ()
 

Return the number of rsvertices.

Returns:
Size the number of rsvertices

void ReducedSurface::operator= const ReducedSurface reduced_surface  )  throw ()
 

Assign from another ReducedSurface.

Parameters:
reduced_surface the ReducedSurface object to assign from

void ReducedSurface::set const ReducedSurface reduced_surface  )  throw ()
 

Assign from another ReducedSurface.

Parameters:
reduced_surface the ReducedSurface object to assign from