GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
interface_hexapod_coordinate_converter.h
[詳解]
1
3
4// Copyright(c) 2023-2025 Design Engineering Laboratory, Saitama University
5// Released under the MIT license
6// https://opensource.org/licenses/mit-license.php
7
8#ifndef DESIGNLAB_INTERFACE_HEXAPOD_COORDINATE_CONVERTER_H_
9#define DESIGNLAB_INTERFACE_HEXAPOD_COORDINATE_CONVERTER_H_
10
11#include "math_quaternion.h"
12#include "math_vector3.h"
13
14
15namespace designlab
16{
17
34{
35public:
37 virtual ~IHexapodCoordinateConverter() = default;
38
49 const Vector3& converted_position,
50 int leg_index,
51 const Vector3& center_of_mass_global,
52 const Quaternion& robot_quat,
53 bool consider_rot) const = 0;
54
64 const Vector3& converted_position,
65 int leg_index,
66 const Vector3& center_of_mass_global,
67 const Quaternion& robot_quat,
68 bool consider_rot) const = 0;
69
78 const Vector3& converted_position,
79 const Vector3& center_of_mass_global,
80 const Quaternion& robot_quat,
81 bool consider_rot) const = 0;
82
85 const Vector3& converted_position,
86 int leg_index) const = 0;
87
90 const Vector3& converted_position,
91 int leg_index) const = 0;
92};
93
94} // namespace designlab
95
96
97#endif // DESIGNLAB_INTERFACE_HEXAPOD_COORDINATE_CONVERTER_H_
ロボットは重心位置・アクチュエータなど様々な点を基準とする座標系を持つ. これらを相互に変換する処理のインターフェース.
virtual Vector3 ConvertLegToRobotCoordinate(const Vector3 &converted_position, int leg_index) const =0
脚座標系で表現されている座標を,ロボット座標系に変換する.
virtual ~IHexapodCoordinateConverter()=default
継承するクラスはデストラクタを virtualにすること.
virtual Vector3 ConvertRobotToLegCoordinate(const Vector3 &converted_position, int leg_index) const =0
ロボット座標系で表現されている座標を,脚座標系に変換する.
virtual Vector3 ConvertGlobalToLegCoordinate(const Vector3 &converted_position, int leg_index, const Vector3 &center_of_mass_global, const Quaternion &robot_quat, bool consider_rot) const =0
グローバル座標系で表現されている座標を,脚座標系に変換する.
virtual Vector3 ConvertLegToGlobalCoordinate(const Vector3 &converted_position, int leg_index, const Vector3 &center_of_mass_global, const Quaternion &robot_quat, bool consider_rot) const =0
脚座標系で表現されている座標を,グローバル座標系に変換する.
virtual Vector3 ConvertRobotToGlobalCoordinate(const Vector3 &converted_position, const Vector3 &center_of_mass_global, const Quaternion &robot_quat, bool consider_rot) const =0
ロボット座標系で表現されている座標を,グローバル座標系に変換する.
クォータニオンを表す構造体.
3次元の位置ベクトルを表す構造体.