BALL
1.4.1
|
00001 // -*- Mode: C++; tab-width: 2; -*- 00002 // vi: set ts=2: 00003 // 00004 // $Id: multiLine.h,v 1.1.4.1 2007-03-25 21:26:09 oliver Exp $ 00005 // 00006 00007 #ifndef BALL_VIEW_PRIMITIVES_MULTILINE_H 00008 #define BALL_VIEW_PRIMITIVES_MULTILINE_H 00009 00010 #ifndef BALL_VIEW_KERNEL_GEOMETRICOBJECT_H 00011 # include <BALL/VIEW/KERNEL/geometricObject.h> 00012 #endif 00013 00014 #ifndef BALL_VIEW_DATATYPE_VERTEX2_H 00015 # include <BALL/VIEW/DATATYPE/vertex2.h> 00016 #endif 00017 00018 #ifndef BALL_VIEW_DATATYPE_COLOREXTENSIONS_H 00019 # include <BALL/VIEW/DATATYPE/colorExtensions.h> 00020 #endif 00021 00022 namespace BALL 00023 { 00024 namespace VIEW 00025 { 00026 00030 class BALL_VIEW_EXPORT MultiLine 00031 : public GeometricObject, 00032 public MultiColorExtension 00033 { 00034 public: 00035 00036 BALL_CREATE(MultiLine) 00037 00038 00039 MultiLine(); 00040 00042 MultiLine(const MultiLine& line); 00043 00046 virtual ~MultiLine(); 00047 00050 virtual void clear(); 00051 00053 void set(const MultiLine& line); 00054 00057 const MultiLine& operator = (const MultiLine& line); 00058 00071 virtual bool isValid() const; 00072 00083 virtual void dump(std::ostream& s = std::cout, Size depth = 0) const; 00084 00085 // Method to get all vertices from a geometric object 00086 virtual void getVertices(vector<Vector3>& vertices) const; 00087 00088 00089 vector<Vector3> tangents; 00090 vector<Vector3> vertices; 00092 }; 00093 00094 } // namespace VIEW 00095 } // namespace BALL 00096 00097 #endif // BALL_VIEW_PRIMITIVES_MULTILINE_H