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

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

Inheritance diagram for BALL::Triangle:

## Public Member Functions

Constructors and Destructors
| Triangle ()
| Triangle (TrianglePoint *v1, TrianglePoint *v2, TrianglePoint *v3)
| Triangle (TriangleEdge *e1, TriangleEdge *e2, TriangleEdge *e3, bool flip_normal=false)
| Triangle (const Triangle &triangle, bool deep=false)
virtual | ~Triangle ()
Assignments
void | set (const Triangle &triangle, bool deep=false)
Triangle & | operator= (const Triangle &triangle)
Accessors
void | setPoint (Position i, TrianglePoint *point)
TrianglePoint * | getPoint (Position i) const
void | remove (TriangleEdge *edge)
Predicates
virtual bool | operator== (const Triangle &) const
virtual bool | operator!= (const Triangle &) const
virtual bool | operator*= (const Triangle &) const
Public Member Functions inherited from BALL::GraphTriangle< TrianglePoint, TriangleEdge, Triangle >
| GraphTriangle ()
virtual | ~GraphTriangle ()
void | set (const GraphTriangle< TrianglePoint, TriangleEdge, Triangle > &face, bool deep=false)
GraphTriangle< TrianglePoint, TriangleEdge, Triangle > & | operator= (const GraphTriangle< TrianglePoint, TriangleEdge, Triangle > &face)
void | setVertex (Position i, TrianglePoint *vertex)
TrianglePoint * | getVertex (Position i) const
void | setEdge (Position i, TriangleEdge *edge)
TriangleEdge * | getEdge (Position i) const
void | setIndex (Index index)
Index | getIndex () const
bool | getEdges (const TrianglePoint *vertex, TriangleEdge *&edge1, TriangleEdge *&edge2) const
Index | getSimilarEdge (const TriangleEdge *edge, TriangleEdge *&similar_edge) const
Index | getRelativeIndex (const TrianglePoint *vertex) const
TrianglePoint * | third (const TrianglePoint *v1, const TrianglePoint *v2) const
TriangleEdge * | getOppositeEdge (const TrianglePoint *vertex) const
TrianglePoint * | getOppositeVertex (const TriangleEdge *edge) const
bool | substitute (const TrianglePoint *old_vertex, TrianglePoint *new_vertex)
TrianglePoint * | has (TrianglePoint *vertex) const

## Friends

Class friends

- class TriangleEdge
- class TrianglePoint
- class TriangulatedSurface
- class TriangulatedSphere
- class TriangulatedSES
- class TriangulatedSAS
- class SESTriangulator
- class SASTriangulator

class | TriangleEdge
class | TrianglePoint
class | TriangulatedSurface
class | TriangulatedSphere
class | TriangulatedSES
class | TriangulatedSAS
class | SESTriangulator
class | SASTriangulator
Friends inherited from BALL::GraphTriangle< TrianglePoint, TriangleEdge, Triangle >

## Additional Inherited Members

TrianglePoint * | vertex_ [3]
TriangleEdge * | edge_ [3]
Index | index_

## Detailed Description

Generic TriangleEdge Class.

Definition at line 37 of file triangle.h.

## Constructor & Destructor Documentation

## Triangle() [1/4]

BALL::Triangle::Triangle | ( |  | ) |

Default constructor. This method creates a new Triangle object.

## Triangle() [2/4]

BALL::Triangle::Triangle | ( | TrianglePoint * | v1,
|  | TrianglePoint * | v2,
|  | TrianglePoint * | v3 )

Detailed constructor. Creates a new Triangle object. Its vertices are initialized with the passed TrianglePoint instances.

## Triangle() [3/4]

BALL::Triangle::Triangle | ( | TriangleEdge * | e1,
|  | TriangleEdge * | e2,
|  | TriangleEdge * | e3,
|  | bool | flip_normal = false )

Detailed constructor. Creates a new Triangle object. Its edges are initialized with the passed TriangleEdge instances. Its vertices are taken from the edges. This requires the edges to be properly oriented in a counter clockwise manner.

## Triangle() [4/4]

BALL::Triangle::Triangle | ( | const Triangle & | triangle,
|  | bool | deep = false )

Copy constructor. Create a new Triangle object from another.

Parameters

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

## ~Triangle()

virtual BALL::Triangle::~Triangle | ( |  | ) |

virtual

Destructor. Destructs the Triangle object.

## Member Function Documentation

## getPoint()

TrianglePoint * BALL::Triangle::getPoint | ( | Position | i | ) | const

Return one of the three points of the Triangle.

Parameters

  i | the relative index of the point which should be given back. If i is greater three, an exception is thrown.

Returns
  TrianglePoint* a pointer to the asked point

Exceptions

  BALL::Exception::IndexOverflow |

## operator!=()

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

virtual

Inequality operator.

Returns
  false

Reimplemented from BALL::GraphTriangle< TrianglePoint, TriangleEdge, Triangle >.

## operator*=()

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

virtual

Similarity operator.

Returns
  true

Reimplemented from BALL::GraphTriangle< TrianglePoint, TriangleEdge, Triangle >.

## operator=()

Triangle & BALL::Triangle::operator= | ( | const Triangle & | triangle | ) |

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

Parameters

  triangle | the Triangle object to assign from

## operator==()

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

virtual

Equality operator.

Returns
  true

Reimplemented from BALL::GraphTriangle< TrianglePoint, TriangleEdge, Triangle >.

## remove()

void BALL::Triangle::remove | ( | TriangleEdge * | edge | ) |

Remove an edge from the Triangle. The edge is set to NULL.

Parameters

  edge | the edge to delete

## set()

void BALL::Triangle::set | ( | const Triangle & | triangle,
|  | bool | deep = false )

Assign from another Triangle.

Parameters

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

## setPoint()

void BALL::Triangle::setPoint | ( | Position | i,
|  | TrianglePoint * | point )

Set one of the three points of the Triangle.

Parameters

  i | the relative index of the point which should be set. If i is greater three, an exception is thrown.
  point | a pointer to the new point

Exceptions

  BALL::Exception::IndexOverflow |

## Friends And Related Symbol Documentation

## SASTriangulator

friend class SASTriangulator

friend

Definition at line 62 of file triangle.h.

## SESTriangulator

friend class SESTriangulator

friend

Definition at line 61 of file triangle.h.

## TriangleEdge

friend class TriangleEdge

friend

Definition at line 55 of file triangle.h.

## TrianglePoint

friend class TrianglePoint

friend

Definition at line 56 of file triangle.h.

## TriangulatedSAS

friend class TriangulatedSAS

friend

Definition at line 60 of file triangle.h.

## TriangulatedSES

friend class TriangulatedSES

friend

Definition at line 59 of file triangle.h.

## TriangulatedSphere

friend class TriangulatedSphere

friend

Definition at line 58 of file triangle.h.

## TriangulatedSurface

friend class TriangulatedSurface

friend

Definition at line 57 of file triangle.h.