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

IndexedFaceSet.h

Go to the documentation of this file.
00001 
00002 
00003 
00005 
00006 
00011 
00016 
00021 //                            IndexedFaceSet.h                                //
00023 
00024 #ifndef INDEXEDFACESET_H
00025 #define INDEXEDFACESET_H
00026 
00027 #include "X3DTypes.h"
00028 #include "X3DComposedGeometryNode.h"
00029 
00030 namespace X3DTK {
00031 namespace X3D {
00032 
00037 
00038 class IndexedFaceSet : public X3DComposedGeometryNode
00039 {
00040 public:
00042   IndexedFaceSet();
00044   IndexedFaceSet(const X3DColorNode *color,
00045                  const X3DCoordinateNode *coord,
00046                  const X3DNormalNode *normal,
00047                  const X3DTextureCoordinateNode *texCoord,
00048                  SFBool ccw,
00049                  const MFInt32 &colorIndex,
00050                  SFBool colorPerVertex,
00051                  SFBool convex,
00052                  const MFInt32 &coordIndex,
00053                  SFFloat creaseAngle,
00054                  const MFInt32 &normalIndex,                 
00055                  SFBool normalPerVertex,
00056                  SFBool solid,
00057                  const MFInt32 &texCoordIndex);
00059   virtual SFNode clone() const;
00061   virtual ~IndexedFaceSet();
00062   
00064   void setColorIndex(const MFInt32 &colorIndex);
00066   void setConvex(SFBool convex);
00068   void setCoordIndex(const MFInt32 &coordIndex);
00070   void setCreaseAngle(SFFloat creaseAngle);
00072   void setNormalIndex(const MFInt32 &normalIndex);
00074   void setTexCoordIndex(const MFInt32 &texCoordIndex);
00075     
00077   inline const MFInt32 &getColorIndex() const {return _colorIndex;};
00079   inline SFBool getConvex() const {return _convex;};  
00081   inline const MFInt32 &getCoordIndex() const {return _coordIndex;};
00083   inline SFFloat getCreaseAngle() const {return _creaseAngle;};
00085   inline const MFInt32 &getNormalIndex() const {return _normalIndex;};
00087   inline const MFInt32 &getTexCoordIndex() const {return _texCoordIndex;};
00088   
00090   virtual void load(const X3DFileElement *element);
00092   virtual SFString write() const;
00093 
00094 protected:
00096   IndexedFaceSet(const IndexedFaceSet &G);
00097 
00098 private:  
00100   MFInt32 _colorIndex;
00102   SFBool _convex;
00104   MFInt32 _coordIndex;
00106   SFFloat _creaseAngle; 
00108   MFInt32 _normalIndex;
00110   MFInt32 _texCoordIndex;
00111 };
00112 
00113 }
00114 }
00115 
00116 #endif

Generated on Wed Sep 10 11:25:13 2003 for X3DToolKit by doxygen1.3