00001 #ifndef HISPIDARCALC3DOF_H 00002 #define HISPIDARCALC3DOF_H 00003 00004 #include "HISpidarCalcBase.h" 00005 namespace Spr{; 00006 00007 /** ƒGƒ“ƒhƒGƒtƒFƒNƒ^(ƒOƒŠƒbƒv)‚ª•Ài3Ž©—R“x‚¾‚¯‚ðŽ‚ÂSPIDAR—p‚ÌŒvŽZƒNƒ‰ƒXD 00008 Ž…‚Ì”‚͉•ÏD */ 00009 class HISpidarCalc3Dof: public HISpidarCalcBase{ 00010 protected: 00011 Vec3f pos; ///< ƒOƒŠƒbƒv‚̈ʒu 00012 int nRepeat; ///< ŒJ‚è•Ô‚µ‰ñ” 00013 std::vector<Vec3f> wireDirection; ///< ƒƒCƒ„•ûŒü’PˆÊƒxƒNƒgƒ‹i•Àij 00014 00015 float sigma; ///< ŒW”s—ñ‚̑Ίp¬•ª‚ɉÁ‚¦‚é 00016 public: 00017 HISpidarCalc3Dof(); 00018 virtual ~HISpidarCalc3Dof(); 00019 void Init(int dof, const VVector<float>& minF, const VVector<float>& maxF); 00020 00021 virtual void Update(); ///< Žp¨î•ñ‚ÌXV 00022 virtual void SetForce(const Vec3f&); ///< ’ñަ—Í‚ÌÝ’èi•Ài—Íj 00023 virtual void SetForce(const Vec3f&, const Vec3f&); ///< ’ñަ—Í‚ÌÝ’èi•ÀiD‰ñ“]—͂͒ñަ‚µ‚È‚¢j 00024 Vec3f trnForce; /// •Ài—Í 00025 float smooth; /// “ñŽŸŒ`Ž®@’£—͂̂Q怂̌W” 00026 float lambda_t; /// “ñŽŸŒ`Ž®@•Ài€‚ÌŒW” 00027 }; 00028 00029 } // namespace Spr 00030 00031 #endif