GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
movement_locus_renderer.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_MOVEMENT_LOCUS_RENDERER_H_
9#define DESIGNLAB_MOVEMENT_LOCUS_RENDERER_H_
10
11#include <vector>
12
13#include "math_vector3.h"
14#include "robot_state_node.h"
15
16
17namespace designlab
18{
19
23{
24public:
26
27
30 void SetMoveLocusPoint(const std::vector<RobotStateNode>& locus);
31
34 void SetSimulationEndIndexes(const std::vector<size_t>& index);
35
38 inline void SetIsHighQuality(const bool is_high_quality)
39 {
40 is_high_quality_ = is_high_quality;
41 }
42
47 void Draw(const size_t draw_simulation_num, bool draw_all_simulation = false) const;
48
49private:
50 const unsigned int kHiddenLocusLineColor;
51
52 const unsigned int kDisplayLocusLineColor;
53
54 const int kHiddenLocusLineAlpha;
55
56 const float kLocusLineMaxLength;
57
58 const float kLocusLineRadius;
59
60
61 std::vector<Vector3> move_locus_point_;
62
64 std::vector<size_t> simulation_end_indexes_;
65
66 bool is_high_quality_;
67};
68
69} // namespace designlab
70
71
72#endif // DESIGNLAB_MOVEMENT_LOCUS_RENDERER_H_
ロボットの移動軌跡を描画するクラス.
void SetMoveLocusPoint(const std::vector< RobotStateNode > &locus)
ロボットの移動軌跡を記録する.ノードの配列から,重心位置の軌跡を取得する.
void SetIsHighQuality(const bool is_high_quality)
高画質モードにするかどうかを設定する.
void SetSimulationEndIndexes(const std::vector< size_t > &index)
シミュレーションの終了点を取得する.
void Draw(const size_t draw_simulation_num, bool draw_all_simulation=false) const
ロボットの移動軌跡を描画する.