BALL
1.5.0
include
BALL
STRUCTURE
SASEdge.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_SASEDGE_H
6
#define BALL_STRUCTURE_SASEDGE_H
7
8
#ifndef BALL_STRUCTURE_GRAPHEDGE_H
9
# include <
BALL/STRUCTURE/graphEdge.h
>
10
#endif
11
12
#ifndef BALL_MATHS_ANGLE_H
13
# include <
BALL/MATHS/angle.h
>
14
#endif
15
16
#ifndef BALL_MATHS_CIRCLE3_H
17
# include <
BALL/MATHS/circle3.h
>
18
#endif
19
20
namespace
BALL
21
{
22
23
class
SolventAccessibleSurface;
24
class
SASFace;
25
class
SASVertex;
26
class
RSEdge;
27
class
TriangulatedSAS;
28
class
SASTriangulator;
29
33
class
BALL_EXPORT
SASEdge
:
public
GraphEdge
< SASVertex,SASEdge,SASFace >
34
{
35
public
:
36
46
friend
class
SASVertex
;
47
friend
class
SASFace
;
48
friend
class
SolventAccessibleSurface
;
49
friend
class
TriangulatedSAS
;
50
friend
class
SASTriangulator
;
51
52
BALL_CREATE
(
SASEdge
)
53
54
57
61
SASEdge
()
62
;
63
71
SASEdge
(
const
SASEdge
& sasedge,
bool
deep =
false
)
72
;
73
84
SASEdge
(
SASVertex
* vertex0,
85
SASVertex
* vertex1,
86
SASFace
* face0,
87
SASFace
* face1,
88
const
TCircle3<double>
& circle,
89
const
TAngle<double>
& angle,
90
Index
index)
91
;
92
96
virtual
~
SASEdge
()
97
;
98
100
103
110
void
set(
const
SASEdge
& sasedge,
bool
deep =
false
)
111
;
112
118
SASEdge
& operator = (
const
SASEdge
& sasedge)
119
;
120
130
void
set(
SASVertex
* vertex0,
131
SASVertex
* vertex1,
132
SASFace
* face0,
133
SASFace
* face1,
134
const
TCircle3<double>
& circle,
135
const
TAngle<double>
& angle,
136
Index
index)
137
;
138
140
143
147
void
setCircle(
const
TCircle3<double>
& center)
148
;
149
153
TCircle3<double>
getCircle()
const
154
;
155
159
void
setAngle(
const
TAngle<double>
& angle)
160
;
161
165
TAngle<double>
getAngle()
const
166
;
167
169
172
176
virtual
bool
operator ==
(
const
SASEdge
&)
const
177
;
178
182
virtual
bool
operator !=
(
const
SASEdge
&)
const
183
;
184
188
virtual
bool
operator *= (
const
SASEdge
&)
const
189
;
190
195
bool
isFree()
const
196
;
197
199
200
protected
:
201
202
/*_ @name Attributes
203
*/
205
206
/*_ The circle on which the SASEdge lies.
207
*/
208
TCircle3<double>
circle_
;
209
/*_ The angle of the SASEdge.
210
*/
211
TAngle<double>
angle_
;
212
214
};
215
219
222
BALL_EXPORT
std::ostream&
operator <<
(std::ostream& s,
const
SASEdge
& sasedge);
223
225
226
227
}
// namespace BALL
228
229
#endif // BALL_STRUCTURE_SASEDGE_H
BALL::TAngle< double >
BALL::SASVertex
Definition:
SASVertex.h:28
BALL::operator!=
BALL_EXPORT bool operator!=(const String &s1, const String &s2)
BALL::TCircle3< double >
angle.h
BALL::SASFace
Definition:
SASFace.h:30
circle3.h
BALL
Definition:
constants.h:12
BALL::SASEdge::angle_
TAngle< double > angle_
Definition:
SASEdge.h:211
BALL::TriangulatedSAS
Definition:
triangulatedSAS.h:62
BALL::GraphEdge
Definition:
graphEdge.h:30
BALL::SASEdge::circle_
TCircle3< double > circle_
Definition:
SASEdge.h:208
BALL_INDEX_TYPE
graphEdge.h
BALL::operator==
BALL_EXPORT bool operator==(const String &s1, const String &s2)
BALL::operator<<
BALL_EXPORT std::ostream & operator<<(std::ostream &os, const Exception::GeneralException &e)
BALL::SASEdge
Definition:
SASEdge.h:33
BALL_CREATE
#define BALL_CREATE(name)
Definition:
create.h:62
BALL_EXPORT
#define BALL_EXPORT
Definition:
COMMON/global.h:50
BALL::SolventAccessibleSurface
Definition:
solventAccessibleSurface.h:38
BALL::SASTriangulator
Definition:
triangulatedSAS.h:160
Generated by
1.8.17