GaitGeneration by Graph Search
|
#include <bitset>
#include <unordered_map>
#include <vector>
#include <boost/bimap.hpp>
#include <boost/dynamic_bitset.hpp>
#include "discrete_com_pos.h"
#include "hexapod_const.h"
#include "leg_state.h"
名前空間 | |
namespace | std |
namespace | designlab::com_func |
重心タイプに関する名前空間.Center of Mass Function の略. | |
namespace | designlab |
型定義 | |
using | designlab::com_func::LegGroundedMap = boost::bimaps::bimap< leg_func::LegGroundedBit, int > |
脚の接地パターンを表す型.leftがビットのデータ,rightが int型の番号. bimaps::bimap は,左右の型の両方からアクセスできる map. key→value,value→keyの両方が可能. 前述の通り脚の接地パターンは36通りある. それぞれの接地パターンに対応する数値を割り振って管理をしやすくするために, bimapを用いている. | |
using | designlab::com_func::LegGroundedMapValue = LegGroundedMap::value_type |
脚の接地パターンを表すマップの値の型. | |
関数 | |
template<size_t N> | |
bool | std::operator< (const std::bitset< N > &lhs, const std::bitset< N > &rhs) |
int | designlab::com_func::GetLegGroundPatternNum () |
脚の接地パターンの総数を返す. | |
leg_func::LegGroundedBit | designlab::com_func::GetLegGroundedBitFromLegGroundPatternIndex (int leg_ground_pattern_index) |
脚の接地パターンの番号から,その番号に該当する接地パターンを返す. | |
void | designlab::com_func::RemoveLegGroundPatternFromCom (enums::DiscreteComPos discrete_com_pos, boost::dynamic_bitset<> *output) |
離散化された重心位置から,その重心位置では取り得ない脚接地パターンを falseにする. | |
void | designlab::com_func::RemoveLegGroundPatternFromNotGroundableLeg (int not_groundable_leg_index, boost::dynamic_bitset<> *output) |
接地できない脚番号から, その脚が接地できない場合に取り得ない接地パターンを falseにする. | |
void | designlab::com_func::RemoveLegGroundPatternFromNotFreeLeg (int not_lift_leg_index, boost::dynamic_bitset<> *output) |
遊脚できない脚番号から, その脚が遊脚できない場合に取り得ない接地パターンを falseにする. | |