00001
00002
00004
00005 #ifndef GLTRIANGLESET_H
00006 #define GLTRIANGLESET_H
00007
00008 #include "X3DGLComposedGeometryNode.h"
00009
00010 #include <vector>
00011
00012 namespace X3DTK {
00013
00014 class TriangleSet;
00015
00018
00019 class GLTriangleSet : public X3DGLComposedGeometryNode
00020 {
00021 public:
00023 GLTriangleSet();
00025 virtual SFNode clone() const;
00027 ~GLTriangleSet();
00028
00030 inline SFBool &getCcw() const {return (SFBool &)_ccw;};
00032 inline SFBool &getSolid() const {return (SFBool &)_solid;};
00034 inline SFBool &getColor() const {return (SFBool &)_color;};
00036 inline SFBool &getTexCoord() const {return (SFBool &)_texCoord;};
00037
00039 inline std::vector<N3F_V3F> &getN3F_V3FvertexTriangleArray() const {return (std::vector<N3F_V3F> &)_N3F_V3FvertexTriangleArray;};
00041 inline std::vector<C4F_N3F_V3F> &getC4F_N3F_V3FvertexTriangleArray() const {return (std::vector<C4F_N3F_V3F> &)_C4F_N3F_V3FvertexTriangleArray;};
00042
00043 protected:
00045 GLTriangleSet(const GLTriangleSet &T);
00046
00047 private:
00048
00049 SFBool _ccw;
00050 SFBool _solid;
00051 SFBool _color;
00052 SFBool _texCoord;
00053
00054 std::vector<N3F_V3F> _N3F_V3FvertexTriangleArray;
00055 std::vector<C4F_N3F_V3F> _C4F_N3F_V3FvertexTriangleArray;
00056 };
00057
00058 }
00059
00060 #endif