multiLine.h

Go to the documentation of this file.
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