// // Vrml 97 library // Copyright (C) 1998 Chris Morley // // %W% %G% // VrmlNodeTextureTransform.h #ifndef _VRMLNODETEXTURETRANSFORM_ #define _VRMLNODETEXTURETRANSFORM_ #include "VrmlNode.h" #include "VrmlSFFloat.h" #include "VrmlSFVec2f.h" class Viewer; class VrmlNodeTextureTransform : public VrmlNode { public: // Define the fields of TextureTransform nodes static VrmlNodeType *defineType(VrmlNodeType *t = 0); virtual VrmlNodeType *nodeType() const; VrmlNodeTextureTransform(VrmlScene *); virtual ~VrmlNodeTextureTransform(); virtual VrmlNode *cloneMe() const; virtual VrmlNodeTextureTransform* toTextureTransform() const; virtual ostream& printFields(ostream& os, int indent); virtual void render(Viewer *); virtual void setField(const char *fieldName, const VrmlField &fieldValue); float *center() { return d_center.get(); } float rotation() { return d_rotation.get(); } float *scale() { return d_scale.get(); } float *translation() { return d_translation.get(); } private: VrmlSFVec2f d_center; VrmlSFFloat d_rotation; VrmlSFVec2f d_scale; VrmlSFVec2f d_translation; }; #endif // _VRMLNODETEXTURETRANSFORM_