test

Dependencies:   mbed ros_lib_kinetic nhk19mr2_can_info splitData SerialHalfDuplex_HM

Walk/Walk.h

Committer:
shimizuta
Date:
2019-03-07
Revision:
44:4aac39b8670b
Parent:
35:b4e1b8f25cd7

File content as of revision 44:4aac39b8670b:

#ifndef INCLUDED_WALK_H
#define INCLUDED_WALK_H
#include "OneLeg.h"
#include "orbit.h"
class Walk
{
public:
  Walk(OneLeg legs[4]);
  Orbit orbit[4];
  static float calctime_s_; //計算周期
  float phasetime_s_[4];
  float offset_multi[4];
  OneLeg leg[4];
  //参照渡しされたonelegそれぞれにorbit_::GetOrbit関数を代入
  //GetOrbit関数にて軌道, 時間をもとに位置を決める
  //直接参照しているのはこの関数だけ
  int Cal4LegsPosi(OneLeg legs[4]); //失敗したら1を返す。成功なら0
  //位相ずれの程度(値域[0,1])を入れる。
  void SetOffsetTime(float offset_multi0, float offset_multi1, float offset_multi2, float offset_multi3);
  //軌道がリンク定義外になっていないかチェック。reutn 0:ok 1:out
  // またoffsetの設定はここで行うので必ず呼び出す。
  int CheckOrbit();
  void ResetPhase();
  void Copy(Walk &walk);
};
#endif