test

Dependencies:   mbed ros_lib_kinetic nhk19mr2_can_info splitData SerialHalfDuplex_HM

Walk/orbit/orbit.h

Committer:
shimizuta
Date:
2019-03-11
Revision:
50:36741e8ab197
Parent:
44:4aac39b8670b

File content as of revision 50:36741e8ab197:

#ifndef INCLUDED_ORBIT_H
#define INCLUDED_ORBIT_H
#include "freeline.h"
#include "triangle.h"
enum OrbitPattern
{
    TRIANGLE,
    FREELINES,
    FOURPOINT,
};
//足の軌道を設定するクラスの皮。全ての軌道クラスを継承して一つにまとめる。patternで使い分ける
//関数は継承元のものを使うので、継承元のクラスも見てください
//名前が被っているものはpatternでswitchすることで決定する。
class Orbit : public FreeLines, public FourPoint
{
  public:
    Orbit(){}; //ただ宣言する用
    Orbit(OrbitPattern pattern);
    float GetOneWalkTime();                       //足一周の時間
    int GetOrbit(OneLeg &leg, float phasetime_s); //legに目標x,yを代入
    void Copy(const Orbit &origin);

  private:
    OrbitPattern pattern_;
};
#endif