BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members
BALL::SASEdge Class Reference

#include <BALL/STRUCTURE/SASEdge.h>

Inheritance diagram for BALL::SASEdge:
BALL::GraphEdge< SASVertex, SASEdge, SASFace >

Public Member Functions

Constructors and Destructors
 SASEdge ()
 
 SASEdge (const SASEdge &sasedge, bool deep=false)
 
 SASEdge (SASVertex *vertex0, SASVertex *vertex1, SASFace *face0, SASFace *face1, const TCircle3< double > &circle, const TAngle< double > &angle, Index index)
 
virtual ~SASEdge ()
 
Assignment
void set (const SASEdge &sasedge, bool deep=false)
 
SASEdgeoperator= (const SASEdge &sasedge)
 
void set (SASVertex *vertex0, SASVertex *vertex1, SASFace *face0, SASFace *face1, const TCircle3< double > &circle, const TAngle< double > &angle, Index index)
 
Accessors
void setCircle (const TCircle3< double > &center)
 
TCircle3< doublegetCircle () const
 
void setAngle (const TAngle< double > &angle)
 
TAngle< doublegetAngle () const
 
Predicates
virtual bool operator== (const SASEdge &) const
 
virtual bool operator!= (const SASEdge &) const
 
virtual bool operator*= (const SASEdge &) const
 
bool isFree () const
 
- Public Member Functions inherited from BALL::GraphEdge< SASVertex, SASEdge, SASFace >
 GraphEdge ()
 
 GraphEdge (const GraphEdge< SASVertex, SASEdge, SASFace > &edge, bool deep=false)
 
 GraphEdge (SASVertex *vertex1, SASVertex *vertex2, SASFace *face1, SASFace *face2, Index index)
 
virtual ~GraphEdge ()
 
void set (const GraphEdge< SASVertex, SASEdge, SASFace > &edge, bool deep=false)
 
void set (SASVertex *vertex0, SASVertex *vertex1, SASFace *face0, SASFace *face1, Index index)
 
GraphEdge< SASVertex, SASEdge,
SASFace > & 
operator= (const GraphEdge< SASVertex, SASEdge, SASFace > &edge)
 
void setVertex (Position i, SASVertex *vertex)
 
SASVertexgetVertex (Position i) const
 
void setFace (Position i, SASFace *face)
 
SASFacegetFace (Position i) const
 
void setIndex (Index index)
 
Index getIndex () const
 
SASVertexother (const SASVertex *vertex) const throw (Exception::GeneralException)
 
SASFaceother (const SASFace *face) const throw (Exception::GeneralException)
 
bool substitute (const SASVertex *old_vertex, SASVertex *new_vertex)
 
bool substitute (const SASFace *old_vertex, SASFace *new_vertex)
 
SASFaceremove (const SASFace *face)
 
void revert ()
 

Protected Attributes

TCircle3< doublecircle_
 
TAngle< doubleangle_
 
- Protected Attributes inherited from BALL::GraphEdge< SASVertex, SASEdge, SASFace >
SASVertexvertex_ [2]
 
SASFaceface_ [2]
 
Index index_
 

Friends

Class friends
class SASVertex
 
class SASFace
 
class SolventAccessibleSurface
 
class TriangulatedSAS
 
class SASTriangulator
 
Class friends
  • class GraphVertex<Vertex,Edge,Face>;
  • class GraphFace<Vertex,Edge,Face>;
  • class GraphTriangle<Vertex,Edge,Face>;

Detailed Description

Generic SASEdge Class.

Definition at line 33 of file SASEdge.h.

Constructor & Destructor Documentation

BALL::SASEdge::SASEdge ( )

Default constructor. This method creates a new SASEdge object.

BALL::SASEdge::SASEdge ( const SASEdge sasedge,
bool  deep = false 
)

Copy constructor. Create a new SASEdge object from another.

Parameters
sasedgethe SASEdge object to be copied
deepif deep = false, all pointers are set to NULL (default). Otherwise the new SASEdge object is linked to the neighbours of the old SASEdge object.
BALL::SASEdge::SASEdge ( SASVertex vertex0,
SASVertex vertex1,
SASFace face0,
SASFace face1,
const TCircle3< double > &  circle,
const TAngle< double > &  angle,
Index  index 
)

Detailled constructor. Create a new SASEdge object from some nice objects.

Parameters
vertex0assigned to the first vertex
vertex1assigned to the second vertex
face0assigned to the first face
face1assigned to the second face
circleassigned to the circle
angleassigned to the angle
indexassigned to the index
virtual BALL::SASEdge::~SASEdge ( )
virtual

Destructor. Destructs the SASEdge object.

Member Function Documentation

TAngle<double> BALL::SASEdge::getAngle ( ) const

Return the angle of the SASEdge.

Returns
TAngle<double> the angle of the SASEdge
TCircle3<double> BALL::SASEdge::getCircle ( ) const

Return the circle on which the SASEdge lies.

Returns
TCircle3<double> the circle of the SASEdge
bool BALL::SASEdge::isFree ( ) const

isFree.

Returns
bool true if the RSEdge of the SASEdge is free, false otherwise
virtual bool BALL::SASEdge::operator!= ( const SASEdge ) const
virtual

Inequality operator.

Returns
bool false

Reimplemented from BALL::GraphEdge< SASVertex, SASEdge, SASFace >.

virtual bool BALL::SASEdge::operator*= ( const SASEdge ) const
virtual

Similarity operator.

Returns
bool true

Reimplemented from BALL::GraphEdge< SASVertex, SASEdge, SASFace >.

SASEdge& BALL::SASEdge::operator= ( const SASEdge sasedge)

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

Parameters
sasedgethe SASEdge object to assign from
virtual bool BALL::SASEdge::operator== ( const SASEdge ) const
virtual

Equality operator.

Returns
bool true

Reimplemented from BALL::GraphEdge< SASVertex, SASEdge, SASFace >.

void BALL::SASEdge::set ( const SASEdge sasedge,
bool  deep = false 
)

Assign from another SASEdge object.

Parameters
sasedgethe SASEdge object to assign from
deepif deep = false, all pointers are set to NULL (default). Otherwise the SASEdge object is linked to the neighbours of the SASEdge object to assign from.
void BALL::SASEdge::set ( SASVertex vertex0,
SASVertex vertex1,
SASFace face0,
SASFace face1,
const TCircle3< double > &  circle,
const TAngle< double > &  angle,
Index  index 
)

Assign from some nice objects.

Parameters
vertex0assigned to the first vertex
vertex1assigned to the second vertex
face0assigned to the first face
face1assigned to the second face
circleassigned to the circle
angleassigned to the angle
indexassigned to the index
void BALL::SASEdge::setAngle ( const TAngle< double > &  angle)

Set the angle of the SASEdge.

Parameters
anglethe new angle
void BALL::SASEdge::setCircle ( const TCircle3< double > &  center)

Set the circle on which the SASEdge lies.

Parameters
centerthe new circle

Friends And Related Function Documentation

friend class SASFace
friend

Definition at line 47 of file SASEdge.h.

friend class SASTriangulator
friend

Definition at line 50 of file SASEdge.h.

friend class SASVertex
friend

Definition at line 46 of file SASEdge.h.

friend class SolventAccessibleSurface
friend

Definition at line 48 of file SASEdge.h.

friend class TriangulatedSAS
friend

Definition at line 49 of file SASEdge.h.

Member Data Documentation

TAngle<double> BALL::SASEdge::angle_
protected

Definition at line 211 of file SASEdge.h.

TCircle3<double> BALL::SASEdge::circle_
protected

Definition at line 208 of file SASEdge.h.