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

Appearance.h

Go to the documentation of this file.
00001 
00002 
00003 
00005 
00006 
00011 
00016 
00022 
00024 
00025 
00030 
00035 
00040 //                            Appearance.h                                    //
00042 
00043 #ifndef APPEARANCE_H
00044 #define APPEARANCE_H
00045 
00046 #include "X3DTypes.h"
00047 #include "X3DAppearanceNode.h"
00048 
00049 namespace X3DTK {
00050 namespace X3D {
00051 
00052 class X3DMaterialNode;
00053 class X3DTextureNode;
00054 class X3DTextureTransformNode;
00055 class LineProperties;
00056 class FillProperties;
00057 
00062 
00063 class Appearance : public X3DAppearanceNode
00064 {
00065 public:
00067   Appearance();
00069   Appearance(const X3DMaterialNode *material, 
00070              const X3DTextureNode *texture, 
00071              const X3DTextureTransformNode *textureTransform, 
00072              const LineProperties *lineProperties, 
00073              const FillProperties *fillProperties);
00075   virtual SFNode clone() const;
00077   virtual ~Appearance();
00078   
00080   void setMaterial(const X3DMaterialNode *material);
00082   void setTexture(const X3DTextureNode *texture);
00084   void setTextureTransform(const X3DTextureTransformNode *textureTransform);
00086   void setLineProperties(const LineProperties *lineProperties);
00088   void setFillProperties(const FillProperties *fillProperties);
00089 
00091   inline SFNode getMaterial() const {return _material;};
00093   inline SFNode getTexture() const {return _texture;};
00095   inline SFNode getTextureTransform() const {return _textureTransform;};
00097   inline SFNode getLineProperties() const {return _lineProperties;};
00099   inline SFNode getFillProperties() const {return _fillProperties;};
00100   
00103   virtual bool addChild(const SFAbstractNode &N);
00106   virtual bool setChild(const SFAbstractNode &N);
00108   virtual bool removeChild(const SFAbstractNode &N);
00109 
00110 protected:  
00112   Appearance(const Appearance &A);
00113 
00114 private:  
00116   SFNode _material;
00118   SFNode _texture;
00120   SFNode _textureTransform;
00122   SFNode _lineProperties;
00124   SFNode _fillProperties;
00125 };
00126 
00127 }
00128 }
00129 
00130 #endif

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