#include <triangulatedSurface.h>
Public Types |
|
Type definitions
|
|
typedef std::list < TrianglePoint * >::iterator |
PointIterator |
typedef std::list < TrianglePoint * > ::const_iterator |
ConstPointIterator |
typedef std::list < TriangleEdge * >::iterator |
EdgeIterator |
typedef std::list < TriangleEdge * > ::const_iterator |
ConstEdgeIterator |
typedef std::list< Triangle * > ::iterator |
TriangleIterator |
typedef std::list< Triangle * > ::const_iterator |
ConstTriangleIterator |
Public Member Functions |
|
Constructors and Destructors
|
|
TriangulatedSurface () | |
Default constructor. |
|
TriangulatedSurface (const TriangulatedSurface &surface, bool=true) | |
Copy constructor. |
|
virtual | ~TriangulatedSurface () |
Destructor. |
|
Assignment
|
|
void | clear () |
Delete all points, edges and
triangles. |
|
void | set (const TriangulatedSurface &surface, bool=true) |
Assign from another TriangulatedSurface.
|
|
TriangulatedSurface & | operator= (const TriangulatedSurface &surface) |
Assign from another TriangulatedSurface.
|
|
Accessors
|
|
void | insert (TrianglePoint *point) |
Insert a new point to the TriangulatedSurface.
|
|
void | insert (TriangleEdge *edge) |
Insert a new edge to the TriangulatedSurface.
|
|
void | insert (Triangle *triangle) |
Insert a new triangle to the
TriangulatedSurface.
|
|
BALL_DEPRECATED Size | numberOfPoints () const |
Get the number of points of the
TriangulatedSurface.
|
|
Size | getNumberOfPoints () const |
Get the number of points of the
TriangulatedSurface.
|
|
BALL_DEPRECATED Size | numberOfEdges () const |
Get the number of edges of the
TriangulatedSurface.
|
|
Size | getNumberOfEdges () const |
Get the number of edges of the
TriangulatedSurface. |
|
BALL_DEPRECATED Size | numberOfTriangles () const |
Get the number of triangles of the
TriangulatedSurface.
|
|
Size | getNumberOfTriangles () const |
Get the number of triangles of the
TriangulatedSurface.
|
|
void | remove (TrianglePoint *point, bool deep=true) |
Remove a point from the TriangulatedSurface.
|
|
void | remove (PointIterator p, bool deep=true) |
Remove a point from the TriangulatedSurface.
|
|
void | remove (TriangleEdge *edge, bool deep=true) |
Remove an edge from the TriangulatedSurface.
|
|
void | remove (EdgeIterator e, bool deep=true) |
Remove an edge from the TriangulatedSurface.
|
|
void | remove (Triangle *triangle, bool deep=true) |
Remove a triangle from the TriangulatedSurface.
|
|
void | remove (TriangleIterator t, bool deep=true) |
Remove a triangle from the TriangulatedSurface.
|
|
void | exportSurface (Surface &surface) |
Create a Surface object from the
TriangulatedeSurface. |
|
TriangulatedSurface & | operator+= (const TriangulatedSurface &surface) |
Add a TriangulatedSurface
object. |
|
void | join (TriangulatedSurface &source) |
Add a TriangulatedSurface
object. |
|
void | shift (const TVector3< double > &c) |
Shift the TriangulatedSurface.
|
|
void | blowUp (const double &r) |
Blow up th TriangulatedSurface.
|
|
void | setIndices () |
Set the indices of al points, edges
and triangles. |
|
void | cut (const TPlane3< double > &plane, const double &fuzzy=0) |
Cut the TriangulatedSurface
on a plane. |
|
void | shrink () |
Delete all triangles on the border
of the TriangulatedSurface. |
|
void | deleteIsolatedEdges () |
Delete all isolated edges of the
TriangulatedSurface. |
|
void | deleteIsolatedPoints () |
Delete all isolated points of the
TriangulatedSurface. |
|
void | getBorder (std::list< TriangleEdge * > &border) |
Get the border edges of the
TriangulatedSurface.
|
|
External Iterators
|
|
PointIterator | beginPoint () |
ConstPointIterator | beginPoint () const |
PointIterator | endPoint () |
ConstPointIterator | endPoint () const |
EdgeIterator | beginEdge () |
ConstEdgeIterator | beginEdge () const |
EdgeIterator | endEdge () |
ConstEdgeIterator | endEdge () const |
TriangleIterator | beginTriangle () |
ConstTriangleIterator | beginTriangle () const |
TriangleIterator | endTriangle () |
ConstTriangleIterator | endTriangle () const |
Static Public Member Functions |
|
Static Members
|
|
static TriangulatedSurface * | createTube (unsigned int num_vertices, unsigned int subdiv=0, bool closed=false, bool out=true) |
A static function that constructs a
triangulated tube. |
|
static TriangulatedSurface * | createDisk (unsigned int num_vertices, bool out=true) |
A static function that constructs a
triangulated disk. |
|
Protected Member Functions |
|
External Iterators
|
|
bool | canBeCopied () const |
void | copy (const TriangulatedSurface &surface) |
Protected Attributes |
|
External Iterators
|
|
Size | number_of_points_ |
std::list< TrianglePoint * > | points_ |
Size | number_of_edges_ |
std::list< TriangleEdge * > | edges_ |
Size | number_of_triangles_ |
std::list< Triangle * > | triangles_ |
BALL::TriangulatedSurface::TriangulatedSurface | ( | ) |
Default constructor.
This method creates a new TriangulatedSurface object.
BALL::TriangulatedSurface::TriangulatedSurface | ( | const TriangulatedSurface & | surface, | |
bool | = true |
|||
) |
Copy constructor.
Create a new TriangulatedSurface object from another.
surface | the TriangulatedSurface object to be copied | |
bool | ignored - just for interface consistency |
virtual BALL::TriangulatedSurface::~TriangulatedSurface | ( | ) | [virtual] |
Destructor.
Destructs the TriangulatedSurface object.
void BALL::TriangulatedSurface::blowUp | ( | const double & | r | ) |
Blow up th TriangulatedSurface.
All points are multiplied by a scalar r.
r | the blow up factor |
static TriangulatedSurface* BALL::TriangulatedSurface::createDisk | ( | unsigned int | num_vertices, | |
bool | out =
true |
|||
) | [static] |
A static function that constructs a triangulated disk.
The disk lies in the x-y plane and has radius 1.
num_vertices | The amount of vertices of which the border of the disk is composed | |
out | Controls whether the normals of the tube are pointing up or downwards. Default: true |
static TriangulatedSurface* BALL::TriangulatedSurface::createTube | ( | unsigned int | num_vertices, | |
unsigned int | subdiv =
0 , |
|||
bool | closed =
false , |
|||
bool | out =
true |
|||
) | [static] |
A static function that constructs a triangulated tube.
The tube is oriented along the z-axis, starts at z=0, ends at z=1 and has radius 1
num_vertices | The amount of vertices of which the base of the tube is composed | |
subdiv | Controls the amount of subdivisions along the z-axis. Default: 0 | |
closed | Should the tube have opend or closed ends? Default: false | |
out | Controls whether the normals of the tube are pointing in or outwards. Default: true |
void BALL::TriangulatedSurface::cut | ( | const TPlane3< double > & | plane, | |
const double & | fuzzy =
0 |
|||
) |
Cut the TriangulatedSurface on a plane.
plane | the plane to cut on | |
fuzzy |
void BALL::TriangulatedSurface::exportSurface | ( | Surface & | surface | ) |
Create a Surface object from the TriangulatedeSurface.
surface | the created Surface object |
void BALL::TriangulatedSurface::getBorder | ( | std::list< TriangleEdge * > & | border | ) |
Get the border edges of the TriangulatedSurface.
Border edges are the edges with only one triangle.
border | a list of the border edges |
Size BALL::TriangulatedSurface::getNumberOfPoints | ( | ) | const |
Get the number of points of the TriangulatedSurface.
Size BALL::TriangulatedSurface::getNumberOfTriangles | ( | ) | const |
Get the number of triangles of the TriangulatedSurface.
Use TriangulatedSurface::getNumberOfTriangles() instead
void BALL::TriangulatedSurface::insert | ( | Triangle * | triangle | ) |
Insert a new triangle to the TriangulatedSurface.
triangle | a pointer to the new triangle |
void BALL::TriangulatedSurface::insert | ( | TriangleEdge * | edge | ) |
Insert a new edge to the TriangulatedSurface.
edge | a pointer to the new edge |
void BALL::TriangulatedSurface::insert | ( | TrianglePoint * | point | ) |
Insert a new point to the TriangulatedSurface.
point | a pointer to the new point |
void BALL::TriangulatedSurface::join | ( | TriangulatedSurface & | source | ) |
Add a TriangulatedSurface object.
The lists of points, edges and triangles of the given TriangulatedSurface objact are appended. After this operation, the given TriangulatedSurface objact will be empty!
source | the TriangulatedSurface object to add |
BALL_DEPRECATED Size BALL::TriangulatedSurface::numberOfEdges | ( | ) | const |
Get the number of edges of the TriangulatedSurface.
BALL_DEPRECATED Size BALL::TriangulatedSurface::numberOfPoints | ( | ) | const |
Get the number of points of the TriangulatedSurface.
BALL_DEPRECATED Size BALL::TriangulatedSurface::numberOfTriangles | ( | ) | const |
Get the number of triangles of the TriangulatedSurface.
TriangulatedSurface& BALL::TriangulatedSurface::operator+= | ( | const TriangulatedSurface & | surface | ) |
Add a TriangulatedSurface object.
The lists of points, edges and triangles of the given TriangulatedSurface objact are appended. The given TriangulatedSurface objact will be unchanged.
surface | the TriangulatedSurface object to add |
TriangulatedSurface& BALL::TriangulatedSurface::operator= | ( | const TriangulatedSurface & | surface | ) |
Assign from another TriangulatedSurface.
surface | the TriangulatedSurface object to assign from |
void BALL::TriangulatedSurface::remove | ( | TriangleIterator | t, | |
bool | deep =
true |
|||
) |
Remove a triangle from the TriangulatedSurface.
If deep is true (not default) the incidence-structure will be updated.
t | an iterator into the list of triangles of the TriangulatedSurface which indicates the triangle to delete | |
deep | look above |
void BALL::TriangulatedSurface::remove | ( | Triangle * | triangle, | |
bool | deep =
true |
|||
) |
Remove a triangle from the TriangulatedSurface.
If deep is true (not default) the incidence-structure will be updated.
triangle | a pointer to the triangle to delete | |
deep | look above |
void BALL::TriangulatedSurface::remove | ( | EdgeIterator | e, | |
bool | deep =
true |
|||
) |
Remove an edge from the TriangulatedSurface.
If deep is true (not default) the incidence-structure will be updated.
e | an iterator into the list of edges of the TriangulatedSurface which indicates the edge to delete | |
deep | look above |
void BALL::TriangulatedSurface::remove | ( | TriangleEdge * | edge, | |
bool | deep =
true |
|||
) |
Remove an edge from the TriangulatedSurface.
If deep is true (not default) the incidence-structure will be updated.
edge | a pointer to the edge to delete | |
deep | look above |
void BALL::TriangulatedSurface::remove | ( | PointIterator | p, | |
bool | deep =
true |
|||
) |
Remove a point from the TriangulatedSurface.
If deep is true (default) the incidence-structure will be updated.
p | an iterator into the list of points of the TriangulatedSurface which indicates the point to delete | |
deep | look above |
void BALL::TriangulatedSurface::remove | ( | TrianglePoint * | point, | |
bool | deep =
true |
|||
) |
Remove a point from the TriangulatedSurface.
If deep is true (default) the incidence-structure will be updated.
point | a pointer to the point to delete | |
deep | look above |
void BALL::TriangulatedSurface::set | ( | const TriangulatedSurface & | surface, | |
bool | = true |
|||
) |
Assign from another TriangulatedSurface.
surface | the TriangulatedSurface object to assign from | |
bool | ignored - just for interface consistency |
void BALL::TriangulatedSurface::shift | ( | const TVector3< double > & | c | ) |