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

MESH_Shape.h

Go to the documentation of this file.
00001 #ifndef X3DTK_MESH_SHAPE_H
00002 #define X3DTK_MESH_SHAPE_H
00003 
00004 #include "MESH_SceneGraphTypes.h"
00005 #include "MESH_X3DNode.h"
00006 #include "MESH_X3DMeshNode.h"
00007 
00008 namespace X3DTK {
00009 namespace X3D {
00010 
00011 class X3DAppearanceNode;
00012 
00013 }
00014 
00015 namespace MESH {
00016 
00023 class Shape : public X3DNode
00024 {
00025 public:
00027   Shape();
00029   Shape(X3D::X3DAppearanceNode *appearance, X3DMeshNode *mesh);
00031   virtual SFNode clone() const;
00033   virtual ~Shape();
00034   
00036   void setMesh(X3DMeshNode *mesh);
00038   void setAppearance(X3D::X3DAppearanceNode *N);
00039   
00041   inline SFNode getMesh() const {return _mesh;};
00043   inline X3D::SFNode getAppearance() const {return _appearance;};
00044 
00046   virtual MFAbstractNode getChildList() const;
00047   
00049   bool addChild(const SFAbstractNode &N);
00051   bool setChild(const SFAbstractNode &N);
00053   bool removeChild(const SFAbstractNode &N);
00054 
00055 protected:
00057   Shape(const Shape &S);
00058 
00059 private:
00060   X3D::SFNode _appearance;
00061   SFNode _mesh;
00062 };
00063 
00064 }
00065 }
00066 
00067 #endif

Generated on Wed Apr 7 12:15:20 2004 for X3DToolKit by doxygen 1.3.3