BALL
1.5.0
include
BALL
STRUCTURE
triangle.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
5
#ifndef BALL_STRUCTURE_TRIANGLE_H
6
#define BALL_STRUCTURE_TRIANGLE_H
7
8
#ifndef BALL_STRUCTURE_GRAPHEDGE_H
9
# include <
BALL/STRUCTURE/graphEdge.h
>
10
#endif
11
12
#ifndef BALL_STRUCTURE_GRAPHFACE_H
13
# include <
BALL/STRUCTURE/graphFace.h
>
14
#endif
15
16
#ifndef BALL_STRUCTURE_GRAPHVERTEX_H
17
# include <
BALL/STRUCTURE/graphVertex.h
>
18
#endif
19
20
21
namespace
BALL
22
{
23
24
class
TriangleEdge;
25
class
TrianglePoint;
26
class
TriangulatedSurface;
27
class
TriangulatedSphere;
28
class
TriangulatedSES;
29
class
TriangulatedSAS;
30
class
SESTriangulator;
31
class
SASTriangulator;
32
33
37
class
BALL_EXPORT
Triangle
38
:
public
GraphTriangle
< TrianglePoint,TriangleEdge,Triangle >
39
{
40
41
public
:
42
55
friend
class
TriangleEdge
;
56
friend
class
TrianglePoint
;
57
friend
class
TriangulatedSurface
;
58
friend
class
TriangulatedSphere
;
59
friend
class
TriangulatedSES
;
60
friend
class
TriangulatedSAS
;
61
friend
class
SESTriangulator
;
62
friend
class
SASTriangulator
;
63
64
BALL_CREATE
(
Triangle
)
65
66
69
73
Triangle
();
74
80
Triangle
(
TrianglePoint
* v1,
TrianglePoint
* v2,
TrianglePoint
* v3);
81
89
Triangle
(
TriangleEdge
* e1,
TriangleEdge
* e2,
TriangleEdge
* e3,
bool
flip_normal =
false
);
90
98
Triangle
(
const
Triangle
& triangle,
bool
deep =
false
);
99
103
virtual
~
Triangle
();
104
106
109
117
void
set(
const
Triangle
& triangle,
bool
deep =
false
);
118
124
Triangle
& operator = (
const
Triangle
& triangle);
125
127
130
137
void
setPoint(
Position
i,
TrianglePoint
* point);
138
146
TrianglePoint
* getPoint(
Position
i)
const
;
147
152
void
remove(
TriangleEdge
* edge);
153
155
158
162
virtual
bool
operator ==
(
const
Triangle
&)
const
;
163
167
virtual
bool
operator !=
(
const
Triangle
&)
const
;
168
172
virtual
bool
operator *= (
const
Triangle
&)
const
;
173
175
176
};
177
178
182
185
BALL_EXPORT
std::ostream&
operator <<
(std::ostream& s,
const
Triangle
& triangle);
186
188
189
190
}
// namespace BALL
191
192
193
#endif // BALL_STRUCTURE_TRIANGLE_H
BALL::TrianglePoint
Definition:
trianglePoint.h:41
BALL::GraphTriangle
Definition:
graphEdge.h:24
BALL::operator!=
BALL_EXPORT bool operator!=(const String &s1, const String &s2)
BALL::SESTriangulator
Definition:
triangulatedSES.h:163
graphFace.h
graphVertex.h
BALL::TriangulatedSphere
Definition:
triangulatedSurface.h:387
BALL::TriangulatedSES
Definition:
triangulatedSES.h:54
BALL
Definition:
constants.h:12
BALL::TriangulatedSAS
Definition:
triangulatedSAS.h:62
BALL_SIZE_TYPE
graphEdge.h
BALL::TriangleEdge
Definition:
triangleEdge.h:37
BALL::operator==
BALL_EXPORT bool operator==(const String &s1, const String &s2)
BALL::Triangle
Definition:
triangle.h:37
BALL::operator<<
BALL_EXPORT std::ostream & operator<<(std::ostream &os, const Exception::GeneralException &e)
BALL_CREATE
#define BALL_CREATE(name)
Definition:
create.h:62
BALL_EXPORT
#define BALL_EXPORT
Definition:
COMMON/global.h:50
BALL::TriangulatedSurface
Definition:
triangulatedSurface.h:40
BALL::SASTriangulator
Definition:
triangulatedSAS.h:160
Generated by
1.8.17