Loading...
Searching...
No Matches
BALL::ReducedSurface Class Reference
Molecular Modeling » Molecular Structure » Molecular Surface Computation

`#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 ()

## 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

## Accessors

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_
Size | numberOfAtoms () const
Size | numberOfVertices () const
Size | numberOfEdges () const
Size | numberOfFaces () const
double | getProbeRadius () const
TSphere3< double > | getSphere (Position i) const
RSVertex * | getVertex (Position i) const
RSEdge * | getEdge (Position i) const
RSFace * | getFace (Position i) const
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 ()

## Detailed Description

Generic ReducedSurface Class.

Definition at line 195 of file reducedSurface.h.

## Constructor & Destructor Documentation

## ReducedSurface() [1/3]

BALL::ReducedSurface::ReducedSurface | ( |  | ) |

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

## ReducedSurface() [2/3]

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

## ReducedSurface() [3/3]

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.

## ~ReducedSurface()

virtual BALL::ReducedSurface::~ReducedSurface | ( |  | ) |

virtual

Destructor.

## Member Function Documentation

## clean()

void BALL::ReducedSurface::clean | ( |  | ) |

Remove all NULL-pointers

## clear()

void BALL::ReducedSurface::clear | ( |  | ) |

Delete all vertices, edges and faces.

## compute()

void BALL::ReducedSurface::compute | ( |  | ) |

Compute the reduced surface.

Exceptions

  BALL::Exception::GeneralException |
  BALL::Exception::DivisionByZero |
  BALL::Exception::IndexOverflow |

## deleteSimilarFaces()

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

## getAngle()

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

## getBoundingBox()

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

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

Returns
  TSimpleBox3<double> the bounding box

## getEdge()

RSEdge * BALL::ReducedSurface::getEdge | ( | Position | i | ) | const

Return the i'th rsedge.

Parameters

  i | the index of the rsedge that should be given back

Returns
  RSEdge, the i'th rsedge

Exceptions

  BALL::Exception::IndexOverflow |

## getFace()

RSFace * BALL::ReducedSurface::getFace | ( | Position | i | ) | const

Return the i'th rsface.

Parameters

  i | the index of the rsface that should be given back

Returns
  RSFace, the i'th rsface

Exceptions

  BALL::Exception::IndexOverflow |

## getMaximalRadius()

double BALL::ReducedSurface::getMaximalRadius | ( |  | ) | const

Return the maximal radius of te atoms of te molecule

Returns
  double the maximal radius

## getProbeRadius()

double BALL::ReducedSurface::getProbeRadius | ( |  | ) | const

Return the probe radius.

Returns
  double the radius of the used probe sphere

## getSphere()

TSphere3< double > BALL::ReducedSurface::getSphere | ( | Position | i | ) | const

Return the i'th sphere.

Parameters

  i | the index of the sphere that should be given back

Returns
  TSphere3<double>, the i'th sphere

Exceptions

  BALL::Exception::IndexOverflow |

## getVertex()

RSVertex * BALL::ReducedSurface::getVertex | ( | Position | i | ) | const

Return the i'th rsvertex.

Parameters

  i | the index of the rsvertex that should be given back

Returns
  RSVertex, the i'th rsvertex

Exceptions

  BALL::Exception::IndexOverflow |

## insert() [1/3]

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

Insert a new RSEdge.

Parameters

  rsedge | a pointer to the RSEdge to insert

## insert() [2/3]

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

Insert a new RSFace.

Parameters

  rsface | a pointer to the RSFace to insert

## insert() [3/3]

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

Insert a new RSVertex.

Parameters

  rsvertex | a pointer to the RSVertex to insert

## numberOfAtoms()

Size BALL::ReducedSurface::numberOfAtoms | ( |  | ) | const

Return the number of atoms.

Returns
  Size the number of atoms

## numberOfEdges()

Size BALL::ReducedSurface::numberOfEdges | ( |  | ) | const

Return the number of rsedges.

Returns
  Size the number of rsedges

## numberOfFaces()

Size BALL::ReducedSurface::numberOfFaces | ( |  | ) | const

Return the number of rsfaces.

Returns
  Size the number of rsfaces

## numberOfVertices()

Size BALL::ReducedSurface::numberOfVertices | ( |  | ) | const

Return the number of rsvertices.

Returns
  Size the number of rsvertices

## operator=()

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

Assign from another ReducedSurface.

Parameters

  reduced_surface | the ReducedSurface object to assign from

## set()

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

Assign from another ReducedSurface.

Parameters

  reduced_surface | the ReducedSurface object to assign from

## Friends And Related Symbol Documentation

## RSComputer

friend class RSComputer

friend

Definition at line 211 of file reducedSurface.h.

## SESComputer

friend class SESComputer

friend

Definition at line 213 of file reducedSurface.h.

## SESSingularityCleaner

friend class SESSingularityCleaner

friend

Definition at line 214 of file reducedSurface.h.

## SESTriangulator

friend class SESTriangulator

friend

Definition at line 218 of file reducedSurface.h.

## SolventAccessibleSurface

friend class SolventAccessibleSurface

friend

Definition at line 215 of file reducedSurface.h.

## SolventExcludedSurface

friend class SolventExcludedSurface

friend

Definition at line 212 of file reducedSurface.h.

## TriangulatedSAS

friend class TriangulatedSAS

friend

Definition at line 217 of file reducedSurface.h.

## TriangulatedSES

friend class TriangulatedSES

friend

Definition at line 216 of file reducedSurface.h.

## Member Data Documentation

## atom_

std::vector< TSphere3<double> > BALL::ReducedSurface::atom_

protected

Definition at line 422 of file reducedSurface.h.

## bounding_box_

TSimpleBox3<double> BALL::ReducedSurface::bounding_box_

protected

Definition at line 458 of file reducedSurface.h.

## edges_

std::vector< RSEdge* > BALL::ReducedSurface::edges_

protected

Definition at line 442 of file reducedSurface.h.

## faces_

std::vector< RSFace* > BALL::ReducedSurface::faces_

protected

Definition at line 450 of file reducedSurface.h.

## number_of_atoms_

Size BALL::ReducedSurface::number_of_atoms_

protected

Definition at line 417 of file reducedSurface.h.

## number_of_edges_

Size BALL::ReducedSurface::number_of_edges_

protected

Definition at line 438 of file reducedSurface.h.

## number_of_faces_

Size BALL::ReducedSurface::number_of_faces_

protected

Definition at line 446 of file reducedSurface.h.

## number_of_vertices_

Size BALL::ReducedSurface::number_of_vertices_

protected

Definition at line 430 of file reducedSurface.h.

## probe_radius_

double BALL::ReducedSurface::probe_radius_

protected

Definition at line 426 of file reducedSurface.h.

## r_max_

double BALL::ReducedSurface::r_max_

protected

Definition at line 454 of file reducedSurface.h.

## vertices_

std::vector< RSVertex* > BALL::ReducedSurface::vertices_

protected

Definition at line 434 of file reducedSurface.h.