BALL::Triangle Class Reference
[Molecular Surface Computation]

Generic TriangleEdge Class. More...

#include <triangle.h>

Inheritance diagram for BALL::Triangle:
Inheritance graph
[legend]

List of all members.


Public Member Functions

Constructors and Destructors
Triangle ()
Default constructor.
Triangle (TrianglePoint *v1, TrianglePoint *v2, TrianglePoint *v3)
Detailed constructor.
Triangle (TriangleEdge *e1, TriangleEdge *e2, TriangleEdge *e3, bool flip_normal=false)
Detailed constructor.
Triangle (const Triangle &triangle, bool deep=false)
Copy constructor.
virtual ~Triangle ()
Destructor.
Assignments
void set (const Triangle &triangle, bool deep=false)
Assign from another Triangle.
Triangle & operator= (const Triangle &triangle)
Assign from another Triangle.
Accessors
void setPoint (Position i, TrianglePoint *point) throw (Exception::IndexOverflow)
Set one of the three points of the Triangle.
TrianglePoint * getPoint (Position i) const throw (Exception::IndexOverflow)
Return one of the three points of the Triangle.
void remove (TriangleEdge *edge)
Remove an edge from the Triangle.
Predicates
virtual bool operator== (const Triangle &) const
Equality operator.
virtual bool operator!= (const Triangle &) const
Inequality operator.
virtual bool operator*= (const Triangle &) const
Similarity operator.

Friends

Class friends
class TriangleEdge
class TrianglePoint
class TriangulatedSurface
class TriangulatedSphere
class TriangulatedSES
class TriangulatedSAS
class SESTriangulator
class SASTriangulator

Detailed Description

Generic TriangleEdge Class.

Constructor & Destructor Documentation

BALL::Triangle::Triangle ( )

Default constructor.

This method creates a new Triangle object.

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.

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.

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.

virtual BALL::Triangle::~Triangle ( ) [virtual]

Destructor.

Destructs the Triangle object.


Member Function Documentation

TrianglePoint* BALL::Triangle::getPoint ( Position i ) const throw (Exception::IndexOverflow)

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

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

Inequality operator.

Returns:
false

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

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

Similarity operator.

Returns:
true

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

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

virtual bool BALL::Triangle::operator== ( const Triangle & ) const [virtual]

Equality operator.

Returns:
true

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

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

Remove an edge from the Triangle.

The edge is set to NULL.

Parameters:
edge the edge to delete

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

void BALL::Triangle::setPoint ( Position i,
TrianglePoint * point
) throw (Exception::IndexOverflow)

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

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