00001 #ifndef _spinvelocity_hh_ 00002 #define _spinvelocity_hh_ 00003 00004 #include "spin.hh" 00005 #include "scale.hh" 00006 #include "mass.hh" 00007 00008 namespace anoid { 00009 namespace plugin { 00010 00011 class SpinVelocity: public Spin, public Scale, public Mass { 00012 protected: 00013 simple::Vector spinvelocity; 00014 double inverseInertiaTensor[16]; 00015 double inverseWorldInertiaTensor[16]; 00016 public: 00017 virtual simple::Vector getSpinVelocity(); 00018 void setSpinVelocity(simple::Vector &s); 00019 virtual void init(config::Configuration &c); 00020 virtual void update(); 00021 virtual void redraw(); 00022 double *getInverseInertiaTensor() { return inverseInertiaTensor; } 00023 double *getInverseWorldInertiaTensor() { return inverseWorldInertiaTensor; } 00024 SpinVelocity(): Scale(), Mass(0.0), Ability() {} 00025 }; 00026 00027 }; 00028 }; 00029 00030 #endif