BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vertex1.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: vertex1.h,v 1.10.20.1 2007/03/25 21:25:42 oliver Exp $
5 //
6 
7 #ifndef BALL_VIEW_DATATYPE_VERTEX1_H
8 #define BALL_VIEW_DATATYPE_VERTEX1_H
9 
10 #ifndef BALL_COMMON_H
11 # include <BALL/common.h>
12 #endif
13 
14 #ifndef BALL_MATHS_VECTOR3_H
15 # include <BALL/MATHS/vector3.h>
16 #endif
17 
18 namespace BALL
19 {
20  namespace VIEW
21  {
32  {
33  public:
34 
36 
37 
40 
45  Vertex();
46 
52  Vertex(const Vertex& vertex);
53 
55 
58 
61  virtual ~Vertex();
62 
68  virtual void clear();
69 
71 
74 
79  void set(const Vertex& v);
80 
86  const Vertex& operator = (const Vertex& v);
87 
92  void swap(Vertex& v);
93 
95 
98 
102  void setVertex(const Vector3& v);
103 
107  void setVertex(const float x, const float y, const float z);
108 
112  Vector3& getVertex();
113 
117  const Vector3& getVertex() const;
118 
122  void getVertex(Vector3& v) const;
123 
127  void getVertex(float& x, float& y, float& z) const;
128 
142  void setVertexAddress(const Vector3& v);
143 
152  void setDefaultVertexAddress();
153 
158  Vector3* getVertexAddress() const;
159 
161 
164 
172  bool isDefaultVertexAddress() const;
173 
175 
178 
182  virtual bool isValid() const;
183 
191  virtual void dump(std::ostream& s = std::cout, Size depth = 0) const;
192 
194 
195  private:
196 
197  /* vertex */
198  Vector3 vertex1_;
199 
200  /* vertex pointer */
201  Vector3* vertex1_ptr_;
202  };
203 
204 
205 # ifndef BALL_NO_INLINE_FUNCTIONS
206 # include <BALL/VIEW/DATATYPE/vertex1.iC>
207 # endif
208 
209  } // namespace VIEW
210 } // namespace BALL
211 
212 #endif // BALL_VIEW_DATATYPE_VERTEX1_H
#define BALL_CREATE(name)
Definition: create.h:62
#define BALL_VIEW_EXPORT
Definition: COMMON/global.h:52