GL_IndexedLineSet.h

Go to the documentation of this file.
00001 #ifndef X3DTK_GL_INDEXEDLINESET_H
00002 #define X3DTK_GL_INDEXEDLINESET_H
00003 
00004 #include "GL_X3DGeometryNode.h"
00005 
00006 #include <vector>
00007 
00008 namespace X3DTK {
00009 namespace GL {
00010 
00017 class IndexedLineSet : public X3DGeometryNode
00018 {
00019 public:
00021   IndexedLineSet();
00023   virtual ~IndexedLineSet();
00024 
00026   void setLineWidth(const SFFloat &lineWidth);
00028   void setVerticesDuplicated(const SFBool &verticesDuplicated);
00030   void setColor(const SFBool &color);
00031 
00033   void setC4UB_V3F_vertexArray(const std::vector<C4UB_V3F> &C4UB_V3F_vertexArray);   
00035   void setV3F_vertexArray(const std::vector<SFVec3f> &V3F_vertexArray);
00037   void setIndexArrayArray(const std::vector<MFInt32> &indexArrayArray);
00038   
00040   inline const SFFloat &getLineWidth() const {return _lineWidth;};
00042   inline const SFBool &getVerticesDuplicated() const {return _verticesDuplicated;};
00044   inline const SFBool &getColor() const {return _color;};
00045 
00047   inline std::vector<C4UB_V3F> &C4UB_V3F_vertexArray() {return _C4UB_V3F_vertexArray;};   
00049   inline std::vector<SFVec3f> &V3F_vertexArray() {return _V3F_vertexArray;};
00051   inline std::vector<MFInt32> &indexArrayArray() {return _indexArrayArray;};
00052 
00054   virtual void update();
00056   virtual void draw() const;  
00057 
00058 private:  
00060   SFFloat _lineWidth;
00062   SFBool _verticesDuplicated;
00064   SFBool _color;
00066   std::vector<C4UB_V3F> _C4UB_V3F_vertexArray;
00068   std::vector<SFVec3f> _V3F_vertexArray;
00070   std::vector<MFInt32> _indexArrayArray;
00071 };
00072 
00073 }
00074 }
00075 
00076 #endif

Generated on Fri Jul 30 12:02:27 2004 for X3DToolKit by doxygen 1.3.6