00001 00002 00003 00005 00006 00011 00016 00021 // WorldCoordTranslatorGlobalVariables.h // 00023 00024 #ifndef WORLDCOORDTRANSLATORGLOBALVARIABLES_H 00025 #define WORLDCOORDTRANSLATORGLOBALVARIABLES_H 00026 00027 #include "GlobalVariables.h" 00028 00029 #include <list> 00030 00031 namespace X3DTK { 00032 namespace X3D { 00033 00035 00036 class WorldCoordTranslatorGlobalVariables : public GlobalVariables 00037 { 00038 public: 00040 WorldCoordTranslatorGlobalVariables(); 00042 virtual ~WorldCoordTranslatorGlobalVariables(); 00043 00045 void init(); 00047 void finish(); 00048 00050 void pushMatrix(const SFMatrix34f &transformation); 00051 00053 void popMatrix(); 00054 00056 SFMatrix34f getMatrix() const {return _matrixStack.front();}; 00057 00058 private: 00059 std::list<SFMatrix34f> _matrixStack; 00060 }; 00061 00062 } 00063 } 00064 00065 #endif