GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
gait_pattern_generator_revaluation.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_GAIT_PATTERN_GENERATOR_REVALUATION_H_
9#define DESIGNLAB_GAIT_PATTERN_GENERATOR_REVALUATION_H_
10
11#include <memory>
12#include <vector>
13
14#include "graph_tree_creator.h"
19#include "robot_state_node.h"
20
21
22namespace designlab
23{
24
28{
29public:
33 std::unique_ptr<IGaitPatternGenerator>&& gpg_ptr,
34 std::unique_ptr<IGaitPatternGenerator>&& gpg_revaluation_ptr,
35 const std::shared_ptr<const IHexapodCoordinateConverter>& converter_ptr,
36 const std::shared_ptr<const IHexapodJointCalculator>& joint_calculator_ptr);
37
39
40
42 const RobotStateNode& current_node,
43 const MapState& map,
44 const RobotOperation& operation,
45 RobotStateNode* output_node) override;
46
47private:
48 bool IsValidNode(const RobotStateNode& current_node, const RobotStateNode& next_node) const;
49
50 const std::unique_ptr<IGaitPatternGenerator> gpg_ptr_;
51 const std::unique_ptr<IGaitPatternGenerator> gpg_revaluation_ptr_;
52
53 const std::shared_ptr<const IHexapodCoordinateConverter> converter_ptr_;
54 const std::shared_ptr<const IHexapodJointCalculator> joint_calculator_ptr_;
55
56 InterpolatedNodeCreator interpolated_node_creator_;
57};
58
59} // namespace designlab
60
61
62#endif // DESIGNLAB_GAIT_PATTERN_GENERATOR_REVALUATION_H_
GraphSearchResult GetNextNodeByGraphSearch(const RobotStateNode &current_node, const MapState &map, const RobotOperation &operation, RobotStateNode *output_node) override
グラフ探索を行い,次の動作として最適なノードを返す.
グラフ探索による歩容パターン生成を行うクラスのインターフェース.
矩形軌道を生成し,ノード間を補間するクラス.
マップを表すクラス.
Definition map_state.h:32
グラフ探索の結果を表す構造体.
探索において目標となる座標や角度,評価する値についてまとめた構造体.
グラフ構造のためのノード(頂点).旧名 LNODE