BALL 1.5.0
twoColoredTube.h
Go to the documentation of this file.
1// -*- Mode: C++; tab-width: 2; -*-
2// vi: set ts=2:
3//
4// $Id: twoColoredTube.h,v 1.11.16.1 2007-03-25 21:26:12 oliver Exp $
5//
6
7#ifndef BALL_VIEW_PRIMITIVES_TWOCOLOREDTUBE_H
8#define BALL_VIEW_PRIMITIVES_TWOCOLOREDTUBE_H
9
10#ifndef BALL_VIEW_DATATYPE_COLOREXTENSIONS_H
12#endif
13
14#ifndef BALL_VIEW_KERNEL_GEOMETRICOBJECT_H
16#endif
17
18#ifndef BALL_VIEW_DATATYPE_VERTEX2_H
20#endif
21
22namespace BALL
23{
24 namespace VIEW
25 {
46 : public GeometricObject,
47 public ColorExtension2,
48 public Vertex2
49 {
50 public:
51
53
54
57
58
73
79 TwoColoredTube(const TwoColoredTube& two_colored_tube);
80
82
84
88 virtual ~TwoColoredTube();
89
99 virtual void clear();
100
102
104
110 void set(const TwoColoredTube& two_colored_tube);
111
115 const TwoColoredTube& operator = (const TwoColoredTube& two_colored_tube);
116
119 void swap(TwoColoredTube& two_colored_tube);
120
122
125
130 float getLength() const;
131
138 Vector3 getMiddleVertex() const;
139
141
144
156 virtual bool isValid() const;
157
172 virtual void dump(std::ostream& s = std::cout, Size depth = 0) const;
173
175
177
179 float getRadius() const
180 { return radius_;}
181
183 void setRadius(float radius)
184 { radius_ = radius;}
185
186 // Method to get all vertices from a geometric object
187 virtual void getVertices(vector<Vector3>& vertices) const;
188
190
191 private:
192
193 float radius_;
194 };
195
196 #ifndef BALL_NO_INLINE_FUNCTIONS
197 # include <BALL/VIEW/PRIMITIVES/twoColoredTube.iC>
198 #endif
199
200 } // namespace VIEW
201} // namespace BALL
202
203#endif // BALL_VIEW_PRIMITIVES_TWOCOLOREDTUBE_H
#define BALL_CREATE(name)
Definition: create.h:62
STL namespace.
Definition: constants.h:13
void setRadius(float radius)
Set the radius.
virtual void getVertices(vector< Vector3 > &vertices) const
#define BALL_VIEW_EXPORT
Definition: COMMON/global.h:52