00001
00002
00003
00005
00006
00011
00016
00021
00023
00024 #ifndef TRIANGLESTRIPSET_H
00025 #define TRIANGLESTRIPSET_H
00026
00027 #include "X3DTypes.h"
00028 #include "X3DComposedGeometryNode.h"
00029
00030 namespace X3DTK {
00031 namespace X3D {
00032
00037
00038 class TriangleStripSet : public X3DComposedGeometryNode
00039 {
00040 public:
00042 TriangleStripSet();
00044 TriangleStripSet(const X3DColorNode *color,
00045 const X3DCoordinateNode *coord,
00046 const X3DNormalNode *normal,
00047 const X3DTextureCoordinateNode *texCoord,
00048 SFBool ccw,
00049 SFBool colorPerVertex,
00050 SFBool convex,
00051 SFFloat creaseAngle,
00052 SFBool normalPerVertex,
00053 SFBool solid,
00054 const MFInt32 &stripCount);
00056 virtual SFNode clone() const;
00058 virtual ~TriangleStripSet();
00059
00061 void setConvex(SFBool convex);
00063 void setCreaseAngle(SFFloat creaseAngle);
00065 void setStripCount(const MFInt32 &stripCount);
00066
00068 inline SFBool getConvex() const {return _convex;};
00070 inline SFFloat getCreaseAngle() const {return _creaseAngle;};
00072 inline const MFInt32 &getStripCount() const {return _stripCount;};
00073
00075 virtual void load(const X3DFileElement *element);
00077 virtual SFString write() const;
00078
00079 protected:
00081 TriangleStripSet(const TriangleStripSet &T);
00082
00083 private:
00085 SFBool _convex;
00087 SFFloat _creaseAngle;
00089 MFInt32 _stripCount;
00090 };
00091
00092 }
00093 }
00094
00095 #endif