00001 #ifndef MESH_PRIMITIVEMESHBUILDERSTATEVARIABLES_H 00002 #define MESH_PRIMITIVEMESHBUILDERSTATEVARIABLES_H 00003 00004 #include "StateVariables.h" 00005 00006 namespace X3DTK { 00007 namespace MESH { 00008 00015 class PrimitiveMeshBuilderStateVariables : public StateVariables 00016 { 00017 public: 00019 PrimitiveMeshBuilderStateVariables(); 00020 00021 void addNode(SFNode N); 00022 bool getNode(SFNode N) const; 00023 void addToDeleteNode(SFNode N); 00024 00025 void setParameters(float step, bool boundingBox); 00026 void setCenter(const SFVec3f ¢er); 00027 void setSize(const SFVec3f &size); 00028 00029 void init(); 00030 void finish(); 00031 00032 inline float getStep() const {return _step;}; 00033 inline bool getBoundingBox() const {return _boundingBox;}; 00034 inline const SFVec3f &getCenter() const {return _center;}; 00035 inline const SFVec3f &getSize() const {return _size;}; 00036 00037 private: 00038 float _step; 00039 bool _boundingBox; 00040 SFVec3f _center; 00041 SFVec3f _size; 00042 MFNode _visitedNodes; 00043 MFNode _toDeleteNodes; 00044 }; 00045 00046 } 00047 } 00048 00049 #endif