Loading...
Searching...
No Matches
triangle.h
Go to the documentation of this file.
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
#ifndef BALL_STRUCTURE_TRIANGLE_H
#define BALL_STRUCTURE_TRIANGLE_H
#ifndef BALL_STRUCTURE_GRAPHEDGE_H
# include <BALL/STRUCTURE/graphEdge.h>
#endif
#ifndef BALL_STRUCTURE_GRAPHFACE_H
# include <BALL/STRUCTURE/graphFace.h>
#endif
#ifndef BALL_STRUCTURE_GRAPHVERTEX_H
# include <BALL/STRUCTURE/graphVertex.h>
#endif
namespace BALL
{
class TriangleEdge;
class TrianglePoint;
class TriangulatedSurface;
class TriangulatedSphere;
class TriangulatedSES;
class TriangulatedSAS;
class SESTriangulator;
class SASTriangulator;
class BALL_EXPORT Triangle
: public GraphTriangle< TrianglePoint,TriangleEdge,Triangle >
{
public:
friend class TriangleEdge;
friend class TrianglePoint;
friend class TriangulatedSurface;
friend class TriangulatedSphere;
friend class TriangulatedSES;
friend class TriangulatedSAS;
friend class SESTriangulator;
friend class SASTriangulator;
BALL_CREATE(Triangle)
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();
void set(const Triangle& triangle, bool deep = false);
Triangle& operator = (const Triangle& triangle);
void setPoint(Position i, TrianglePoint* point);
TrianglePoint* getPoint(Position i) const;
void remove(TriangleEdge* edge);
virtual bool operator == (const Triangle&) const;
virtual bool operator != (const Triangle&) const;
virtual bool operator *= (const Triangle&) const;
};
BALL_EXPORT std::ostream& operator << (std::ostream& s, const Triangle& triangle);
} // namespace BALL
#endif // BALL_STRUCTURE_TRIANGLE_H
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
BALL::GraphTriangle< TrianglePoint, TriangleEdge, Triangle >::GraphTriangle
GraphTriangle()
Definition graphFace.h:901
BALL::SASTriangulator
Definition triangulatedSAS.h:161
BALL::SESTriangulator
Definition triangulatedSES.h:164
BALL::TriangleEdge
Definition triangleEdge.h:39
BALL::TrianglePoint
Definition trianglePoint.h:43
BALL::Triangle
Definition triangle.h:39
BALL::Triangle::SESTriangulator
friend class SESTriangulator
Definition triangle.h:61
BALL::Triangle::SASTriangulator
friend class SASTriangulator
Definition triangle.h:62
BALL::Triangle::remove
void remove(TriangleEdge *edge)
BALL::Triangle::TrianglePoint
friend class TrianglePoint
Definition triangle.h:56
BALL::Triangle::TriangulatedSphere
friend class TriangulatedSphere
Definition triangle.h:58
BALL::Triangle::set
void set(const Triangle &triangle, bool deep=false)
BALL::Triangle::TriangulatedSurface
friend class TriangulatedSurface
Definition triangle.h:57
BALL::Triangle::TriangulatedSAS
friend class TriangulatedSAS
Definition triangle.h:60
BALL::Triangle::TriangulatedSES
friend class TriangulatedSES
Definition triangle.h:59
BALL::Triangle::Triangle
Triangle()
BALL::Triangle::getPoint
TrianglePoint * getPoint(Position i) const
BALL::Triangle::TriangleEdge
friend class TriangleEdge
Definition triangle.h:55
BALL::Triangle::setPoint
void setPoint(Position i, TrianglePoint *point)
BALL::TriangulatedSAS
Definition triangulatedSAS.h:63
BALL::TriangulatedSES
Definition triangulatedSES.h:55
BALL::TriangulatedSphere
Definition triangulatedSurface.h:388
BALL::TriangulatedSurface
Definition triangulatedSurface.h:41
BALL_CREATE
#define BALL_CREATE(name)
Definition create.h:62
graphEdge.h
graphFace.h
graphVertex.h
BALL
Definition constants.h:13
BALL::Position
BALL_SIZE_TYPE Position
Definition COMMON/global.h:140
std
STL namespace.