BALL 1.5.0
Loading...
Searching...
No Matches
SASVertex.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_SASVERTEX_H
6#define BALL_STRUCTURE_SASVERTEX_H
7
8#ifndef BALL_STRUCTURE_GRAPHVERTEX_H
10#endif
11
12#ifndef BALL_MATHS_VECTOR3_H
13# include <BALL/MATHS/vector3.h>
14#endif
15
16namespace BALL
17{
18
19 class SASEdge;
20 class SASFace;
21 class SolventAccessibleSurface;
22 class TriangulatedSAS;
23 class SASTriangulator;
24
28 class BALL_EXPORT SASVertex : public GraphVertex< SASVertex,SASEdge,SASFace >
29 {
30 public:
31
41 friend class SASEdge;
42 friend class SASFace;
44 friend class TriangulatedSAS;
45 friend class SASTriangulator;
46
48
49
52
53
57 ;
58
66 SASVertex(const SASVertex& sasvertex, bool deep = false)
67 ;
68
74 SASVertex(const TVector3<double>& point,
75 Index index)
76 ;
77
81 virtual ~SASVertex()
82 ;
83
85
88
96 void set(const SASVertex& sasvertex, bool deep = false)
97 ;
98
104 SASVertex& operator = (const SASVertex& sasvertex)
105 ;
106
111 void set(const TVector3<double> point,
112 Index index)
113 ;
114
118 void setPoint(const TVector3<double>& point)
119 ;
120
124 TVector3<double> getPoint() const
125 ;
126
128
131
135 virtual bool operator == (const SASVertex&) const
136 ;
137
141 virtual bool operator != (const SASVertex&) const
142 ;
143
148 virtual bool operator *= (const SASVertex&) const
149 ;
150
152
153 protected:
154
155 /*_ @name Attributes
156 */
158
159 /*_ The coordinates of the vertex.
160 */
161 TVector3<double> point_;
162
164 };
165
169
172 BALL_EXPORT std::ostream& operator << (std::ostream& s, const SASVertex& sasvertex);
173
175
176
177
178} // namespace BALL
179
180#endif // BALL_STRUCTURE_SASVERTEX_H
#define BALL_CREATE(name)
Definition create.h:62
STL namespace.
#define BALL_EXPORT