50 std::vector<Configuration> &o_path)
const;
111 template <
class _New>
113 return new _New(planner);
119 template <
class _Delete>
124 #endif // __MOBILITY_H__
static void interpolationDistance(double d)
補間時の隣接する2点間の最大距離を設定する
virtual double distance(const Configuration &from, const Configuration &to) const =0
static double interpolationDistance()
補間時の隣接する2点間の最大距離を取得する
static double interpolationDistance_
補間時の隣接する2点間の最大距離
void(* MobilityDeleteFunc)(Mobility *mobility)
移動アルゴリズム解放関数
PathPlanner * planner_
計画経路エンジン
void MobilityDelete(Mobility *mobility)
移動アルゴリズム解放関数生成テンプレート
typedef void(PNGAPI *png_error_ptr) PNGARG((png_structp
virtual bool getPath(Configuration &from, Configuration &to, std::vector< Configuration > &o_path) const
開始位置から目標地点への移動を補間して生成された姿勢列を取得する。
virtual bool isReversible() const =0
この移動アルゴリズムでA→Bへ移動可能である時に、B→Aが同じ経路で移動可能であるかどうか ...
virtual ~Mobility()
デストラクタ
Mobility * MobilityCreate(PathPlanner *planner)
移動アルゴリズム生成関数生成テンプレート
bool isReachable(Configuration &from, Configuration &to, bool checkCollision=true) const
fromからtoへ干渉なしに移動可能であるかどうか
Mobility(PathPlanner *planner)
コンストラクタ
virtual Configuration interpolate(const Configuration &from, const Configuration &to, double ratio) const =0