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

`#include <BALL/STRUCTURE/SESFace.h>`

Inheritance diagram for BALL::SESFace:

## Public Types

Enums
enum | Type { TYPE_SPHERIC = 0 , TYPE_TORIC = 1 , TYPE_CONTACT = 2 , TYPE_TORIC_SINGULAR = 3 }
Public Types inherited from BALL::GraphFace< SESVertex, SESEdge, SESFace >
typedef std::list< SESVertex * >::iterator | VertexIterator
typedef std::list< SESVertex * >::const_iterator | ConstVertexIterator
typedef std::list< SESEdge * >::iterator | EdgeIterator
typedef std::list< SESEdge * >::const_iterator | ConstEdgeIterator

## Public Member Functions

Constructors and Destructors
| SESFace ()
| SESFace (const SESFace &sesface, bool deep=false)
| SESFace (Type type, RSVertex *rsvertex, RSEdge *rsedge, RSFace *rsface)
virtual | ~SESFace ()
Assignments
void | set (const SESFace &sesface, bool deep=false)
SESFace & | operator= (const SESFace &sesface)
void | setType (Type type)
Type | getType () const
void | setRSVertex (RSVertex *rsvertex)
RSVertex * | getRSVertex () const
void | setRSEdge (RSEdge *rsedge)
RSEdge * | getRSEdge () const
void | setRSFace (RSFace *rsface)
RSFace * | getRSFace () const
Accessors
void | normalize (bool singular)
Public Member Functions inherited from BALL::GraphFace< SESVertex, SESEdge, SESFace >
| GraphFace ()
virtual | ~GraphFace ()
void | set (const GraphFace< SESVertex, SESEdge, SESFace > &face, bool deep=false)
GraphFace< SESVertex, SESEdge, SESFace > & | operator= (const GraphFace< SESVertex, SESEdge, SESFace > &face)
void | insert (SESVertex *vertex)
void | remove (SESVertex *vertex)
Position | numberOfVertices () const
Position | numberOfEdges () const
void | setIndex (Index index)
Index | getIndex () const
bool | getEdges (const SESVertex *vertex, SESEdge *&edge1, SESEdge *&edge2) const
bool | getEdge (const SESVertex *vertex1, const SESVertex *vertex2, SESEdge *&edge) const
SESEdge * | getSimilarEdge (const SESEdge *edge) const
bool | substitute (const SESVertex *old_vertex, SESVertex *new_vertex)
SESVertex * | has (SESVertex *vertex) const
VertexIterator | beginVertex ()
VertexIterator | endVertex ()
EdgeIterator | beginEdge ()
EdgeIterator | endEdge ()

## Protected Attributes

Attributes
Type | type_
RSVertex * | rsvertex_
RSEdge * | rsedge_
RSFace * | rsface_
std::list< SESVertex * > | vertex_
std::list< SESEdge * > | edge_
Index | index_

## Friends

Class friends

- class SESEdge
- class SESVertex
- class SolventExcludedSurface
- class SESComputer
- class TSESSingularityCleaner
- class TriangulatedSES
- class SESTriangulator

class | SESEdge
class | SESVertex
class | SolventExcludedSurface
class | SESComputer
class | SESSingularityCleaner
class | TriangulatedSES
class | SESTriangulator
Friends inherited from BALL::GraphFace< SESVertex, SESEdge, SESFace >

## Predicates

virtual bool | operator== (const SESFace &) const
virtual bool | operator!= (const SESFace &) const
virtual bool | operator*= (const SESFace &) const
bool | isNeighbouredTo (SESFace *face) const
bool | isFree () const
bool | hasSingularEdges () const

## Detailed Description

Generic SESFace Class.

Definition at line 37 of file SESFace.h.

## Member Enumeration Documentation

## Type

enum BALL::SESFace::Type

type of SESFace: 0 spheric reentrant face 1 toric reentrant face 2 contact face 3 singular toric reentrant face

Enumerator
TYPE_SPHERIC |
TYPE_TORIC |
TYPE_CONTACT |
TYPE_TORIC_SINGULAR |

Definition at line 72 of file SESFace.h.

## Constructor & Destructor Documentation

## SESFace() [1/3]

BALL::SESFace::SESFace | ( |  | ) |

Default constructor. This method creates a new SESFace object.

## SESFace() [2/3]

BALL::SESFace::SESFace | ( | const SESFace & | sesface,
|  | bool | deep = false )

Copy constructor. Create a new SESFace object from another.

Parameters

  sesface | the SESFace object to be copied
  deep | if deep = false, all pointers are set to NULL (default). Otherwise the new SESFace object is linked to the neighbours of the old SESFace object.

## SESFace() [3/3]

BALL::SESFace::SESFace | ( | Type | type,
|  | RSVertex * | rsvertex,
|  | RSEdge * | rsedge,
|  | RSFace * | rsface )

Detailled constructor. Create a new SESFace object

Parameters

  type | assigned the type
  rsvertex | assigned to the rsvertex
  rsedge | assigned to the rsedge
  rsface | assigned to the rsface

## ~SESFace()

virtual BALL::SESFace::~SESFace | ( |  | ) |

virtual

Destructor. Destructs the SESFace object.

## Member Function Documentation

## getRSEdge()

RSEdge * BALL::SESFace::getRSEdge | ( |  | ) | const

Get the corresponding RSEdge of the SESFace.

Returns
  RSEdge* a pointer to the corresponding RSEdge

## getRSFace()

RSFace * BALL::SESFace::getRSFace | ( |  | ) | const

Get the corresponding RSFace of the SESFace.

Returns
  RSFace* a pointer to the corresponding RSFace

## getRSVertex()

RSVertex * BALL::SESFace::getRSVertex | ( |  | ) | const

Get the corresponding RSVertex of the SESFace.

Returns
  RSVertex* a pointer to the corresponding RSVertex

## getType()

Type BALL::SESFace::getType | ( |  | ) | const

Get the type of the SESFace

Returns
  SESFace::Type the type of the SESFace

## hasSingularEdges()

bool BALL::SESFace::hasSingularEdges | ( |  | ) | const

Test whether a face has singular edges.

Returns
  bool true if the face has singular edges, false otherwise

## isFree()

bool BALL::SESFace::isFree | ( |  | ) | const

Test whether a toric face is free ore not.

Returns
  bool true if the face is toric and free,
  false otherwise

## isNeighbouredTo()

bool BALL::SESFace::isNeighbouredTo | ( | SESFace * | face | ) | const

Test whether two faces are neighboured. Two faces are neighboured if they have a common edge.

Parameters

  face | the face to be tested

Returns
  bool true if the faces are neighboured, false otherwise

## normalize()

void BALL::SESFace::normalize | ( | bool | singular | ) |

Normalize the SESFace.

## operator!=()

virtual bool BALL::SESFace::operator!= | ( | const SESFace & |  | ) | const

virtual

Inequality operator.

Returns
  bool false

Reimplemented from BALL::GraphFace< SESVertex, SESEdge, SESFace >.

## operator*=()

virtual bool BALL::SESFace::operator*= | ( | const SESFace & |  | ) | const

virtual

Similarity operator.

Returns
  bool true

Reimplemented from BALL::GraphFace< SESVertex, SESEdge, SESFace >.

## operator=()

SESFace & BALL::SESFace::operator= | ( | const SESFace & | sesface | ) |

Assign from another SESFace. The SESFace object is linked to the neighbours of the SESFace object
to assign from.

Parameters

  sesface | the SESFace object to assign from

## operator==()

virtual bool BALL::SESFace::operator== | ( | const SESFace & |  | ) | const

virtual

Equality operator.

Returns
  bool true

Reimplemented from BALL::GraphFace< SESVertex, SESEdge, SESFace >.

## set()

void BALL::SESFace::set | ( | const SESFace & | sesface,
|  | bool | deep = false )

Assign from another SESFace.

Parameters

  sesface | the SESFace object to assign from
  deep | if deep = false, all pointers are set to NULL (default). Otherwise the SESFace object is linked to the neighbours of the SESFace object to assign from.

## setRSEdge()

void BALL::SESFace::setRSEdge | ( | RSEdge * | rsedge | ) |

Set the corresponding RSEdge of the SESFace.

Parameters

  rsedge | a pointer to the new RSFace

## setRSFace()

void BALL::SESFace::setRSFace | ( | RSFace * | rsface | ) |

Set the corresponding RSFace of the SESFace.

Parameters

  rsface | a pointer to the new RSFace

## setRSVertex()

void BALL::SESFace::setRSVertex | ( | RSVertex * | rsvertex | ) |

Set the corresponding RSVertex of the SESFace.

Parameters

  rsvertex | a pointer to the new RSVertex

## setType()

void BALL::SESFace::setType | ( | Type | type | ) |

Set the type of the SESFace.

Parameters

  type | the new type

## Friends And Related Symbol Documentation

## SESComputer

friend class SESComputer

friend

Definition at line 55 of file SESFace.h.

## SESEdge

friend class SESEdge

friend

Definition at line 52 of file SESFace.h.

## SESSingularityCleaner

friend class SESSingularityCleaner

friend

Definition at line 56 of file SESFace.h.

## SESTriangulator

friend class SESTriangulator

friend

Definition at line 58 of file SESFace.h.

## SESVertex

friend class SESVertex

friend

Definition at line 53 of file SESFace.h.

## SolventExcludedSurface

friend class SolventExcludedSurface

friend

Definition at line 54 of file SESFace.h.

## TriangulatedSES

friend class TriangulatedSES

friend

Definition at line 57 of file SESFace.h.

## Member Data Documentation

## rsedge_

RSEdge* BALL::SESFace::rsedge_

protected

Definition at line 283 of file SESFace.h.

## rsface_

RSFace* BALL::SESFace::rsface_

protected

Definition at line 287 of file SESFace.h.

## rsvertex_

RSVertex* BALL::SESFace::rsvertex_

protected

Definition at line 279 of file SESFace.h.

## type_

Type BALL::SESFace::type_

protected

Definition at line 275 of file SESFace.h.