Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

X3D_IndexedFaceSet.h

Go to the documentation of this file.
00001 
00002 //                            X3D_IndexedFaceSet.h                            //
00004 
00005 #ifndef INDEXEDFACESET_H
00006 #define INDEXEDFACESET_H
00007 
00008 #include "X3DTypes.h"
00009 #include "X3D_X3DComposedGeometryNode.h"
00010 
00011 namespace X3DTK {
00012 namespace X3D {
00013 
00018 
00019 class IndexedFaceSet : public X3DComposedGeometryNode
00020 {
00021 public:
00023   IndexedFaceSet();
00025   IndexedFaceSet(X3DColorNode *color,
00026                  X3DCoordinateNode *coord,
00027                  X3DNormalNode *normal,
00028                  X3DTextureCoordinateNode *texCoord,
00029                  const SFBool &ccw,
00030                  const MFInt32 &colorIndex,
00031                  const SFBool &colorPerVertex,
00032                  const SFBool &convex,
00033                  const MFInt32 &coordIndex,
00034                  const SFFloat &creaseAngle,
00035                  const MFInt32 &normalIndex,                 
00036                  const SFBool &normalPerVertex,
00037                  const SFBool &solid,
00038                  const MFInt32 &texCoordIndex);
00040   virtual SFAbstractNode clone() const;
00042   virtual ~IndexedFaceSet();
00043   
00045   void setColorIndex(const MFInt32 &colorIndex);
00047   void setConvex(const SFBool &convex);
00049   void setCoordIndex(const MFInt32 &coordIndex);
00051   void setCreaseAngle(const SFFloat &creaseAngle);
00053   void setNormalIndex(const MFInt32 &normalIndex);
00055   void setTexCoordIndex(const MFInt32 &texCoordIndex);
00056     
00058   inline const MFInt32 &getColorIndex() const {return _colorIndex;};
00060   inline const SFBool &getConvex() const {return _convex;};  
00062   inline const MFInt32 &getCoordIndex() const {return _coordIndex;};
00064   inline const SFFloat &getCreaseAngle() const {return _creaseAngle;};
00066   inline const MFInt32 &getNormalIndex() const {return _normalIndex;};
00068   inline const MFInt32 &getTexCoordIndex() const {return _texCoordIndex;};
00069   
00071   virtual void load(const X3DFileElement *element);
00073   virtual SFString &write(SFString &output) const;
00074 
00075 protected:
00077   IndexedFaceSet(const IndexedFaceSet &G);
00078 
00079 private:  
00081   MFInt32 _colorIndex;
00083   SFBool _convex;
00085   MFInt32 _coordIndex;
00087   SFFloat _creaseAngle; 
00089   MFInt32 _normalIndex;
00091   MFInt32 _texCoordIndex;
00092 };
00093 
00094 }
00095 }
00096 
00097 #endif

Generated on Thu Dec 4 13:25:48 2003 for X3DToolKit by doxygen1.2.18