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

X3DShapeNode.h

Go to the documentation of this file.
00001 
00002 //                            X3DShapeNode.h                                  //
00004 
00005 #ifndef X3DSHAPENODE_H
00006 #define X3DSHAPENODE_H
00007 
00008 #include "X3DTypes.h"
00009 #include "X3DChildNode.h"
00010 
00011 namespace X3DTK {
00012 
00013 class X3DGeometryNode;
00014 class X3DAppearanceNode;
00015 
00020 
00021 class X3DShapeNode : public X3DChildNode
00022 {
00023 public:
00025   X3DShapeNode();
00027   X3DShapeNode(const X3DGeometryNode *geometry, 
00028                const X3DAppearanceNode *appearance);
00030   virtual SFNode clone() const;
00032   virtual ~X3DShapeNode();
00033   
00035   void setGeometry(const X3DGeometryNode *geometry);
00037   void setAppearance(const X3DAppearanceNode *appearance);
00038 
00040   inline SFNode getGeometry() const {return geometry_;};
00042   inline SFNode getAppearance() const {return appearance_;};
00043   
00046   bool addChild(const SFNode &N);
00049   bool setChild(const SFNode &N);
00051   bool removeChild(const SFNode &N);
00052   
00053 protected:
00055   X3DShapeNode(const X3DShapeNode &N);
00056 
00058   virtual void removeScenesToChildren(const MFScene &sceneList);
00060   virtual void addScenesToChildren(const MFScene &sceneList);
00061   
00062   SFNode geometry_;
00063   SFNode appearance_;  
00064 };
00065 
00066 }
00067 
00068 #endif

Generated on Wed May 14 10:38:10 2003 for X3DToolKit by doxygen1.3