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

X3DShapeNode.h

Go to the documentation of this file.
00001 
00002 
00003 
00005 
00006 
00011 
00016 
00021 //                            X3DShapeNode.h                                  //
00023 
00024 #ifndef X3DSHAPENODE_H
00025 #define X3DSHAPENODE_H
00026 
00027 #include "X3DTypes.h"
00028 #include "X3DChildNode.h"
00029 
00030 namespace X3DTK {
00031 namespace X3D {
00032 
00033 class X3DGeometryNode;
00034 class X3DAppearanceNode;
00035 
00040 
00041 class X3DShapeNode : public X3DChildNode
00042 {
00043 public:
00045   X3DShapeNode();
00047   X3DShapeNode(const X3DGeometryNode *geometry, 
00048                const X3DAppearanceNode *appearance);
00050   virtual SFNode clone() const;
00052   virtual ~X3DShapeNode();
00053   
00055   void setGeometry(const X3DGeometryNode *geometry);
00057   void setAppearance(const X3DAppearanceNode *appearance);
00058 
00060   inline SFNode getGeometry() const {return _geometry;};
00062   inline SFNode getAppearance() const {return _appearance;};
00063   
00066   virtual bool addChild(const SFAbstractNode &N);
00069   virtual bool setChild(const SFAbstractNode &N);
00071   virtual bool removeChild(const SFAbstractNode &N);
00072   
00073 protected:
00075   X3DShapeNode(const X3DShapeNode &N);
00076 
00077 private:  
00078   SFNode _geometry;
00079   SFNode _appearance;  
00080 };
00081 
00082 }
00083 }
00084 
00085 #endif

Generated on Thu Oct 9 13:50:55 2003 for X3DToolKit by doxygen1.2.18