Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

X3D_IndexedFaceSet.h

Go to the documentation of this file.
00001 #ifndef X3DTK_X3D_INDEXEDFACESET_H
00002 #define X3DTK_X3D_INDEXEDFACESET_H
00003 
00004 #include "X3DTypes.h"
00005 #include "X3D_X3DComposedGeometryNode.h"
00006 
00007 namespace X3DTK {
00008 namespace X3D {
00009 
00018 class IndexedFaceSet : public X3DComposedGeometryNode
00019 {
00020 public:
00022   IndexedFaceSet();
00024   IndexedFaceSet(X3DColorNode *color,
00025                  X3DCoordinateNode *coord,
00026                  X3DNormalNode *normal,
00027                  X3DTextureCoordinateNode *texCoord,
00028                  const SFBool &ccw,
00029                  const MFInt32 &colorIndex,
00030                  const SFBool &colorPerVertex,
00031                  const SFBool &convex,
00032                  const MFInt32 &coordIndex,
00033                  const SFFloat &creaseAngle,
00034                  const MFInt32 &normalIndex,                 
00035                  const SFBool &normalPerVertex,
00036                  const SFBool &solid,
00037                  const MFInt32 &texCoordIndex);
00039   virtual SFAbstractNode clone() const;
00041   virtual ~IndexedFaceSet();
00042   
00044   void setColorIndex(const MFInt32 &colorIndex);
00046   void setConvex(const SFBool &convex);
00048   void setCoordIndex(const MFInt32 &coordIndex);
00050   void setCreaseAngle(const SFFloat &creaseAngle);
00052   void setNormalIndex(const MFInt32 &normalIndex);
00054   void setTexCoordIndex(const MFInt32 &texCoordIndex);
00055     
00057   inline const MFInt32 &getColorIndex() const {return _colorIndex;};
00059   inline const SFBool &getConvex() const {return _convex;};  
00061   inline const MFInt32 &getCoordIndex() const {return _coordIndex;};
00063   inline const SFFloat &getCreaseAngle() const {return _creaseAngle;};
00065   inline const MFInt32 &getNormalIndex() const {return _normalIndex;};
00067   inline const MFInt32 &getTexCoordIndex() const {return _texCoordIndex;};
00068   
00070   virtual void load(const X3DFileElement *element);
00072   virtual SFString &write(SFString &output) const;
00073 
00074 protected:
00076   IndexedFaceSet(const IndexedFaceSet &G);
00077 
00078 private:  
00080   MFInt32 _colorIndex;
00082   SFBool _convex;
00084   MFInt32 _coordIndex;
00086   SFFloat _creaseAngle; 
00088   MFInt32 _normalIndex;
00090   MFInt32 _texCoordIndex;
00091 };
00092 
00093 }
00094 }
00095 
00096 #endif

Generated on Thu Jun 3 10:12:10 2004 for X3DToolKit by doxygen 1.3.6