GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
hexapod_renderer_builder.cpp
[詳解]
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
9
10#include "phantomx_mk2.h"
13
14
15namespace designlab
16{
17
18std::tuple<std::shared_ptr<IDxlib3dRenderer>, std::shared_ptr<IDxlibNodeSetter> > HexapodRendererBuilder::Build(
19 const std::shared_ptr<const IHexapodCoordinateConverter>& converter_ptr,
20 const std::shared_ptr<const IHexapodJointCalculator>& calculator_ptr,
21 const DisplayQuality display_quality
22)
23{
25
26 if (display_quality == DisplayQuality::kHigh)
27 {
28 const auto renderer =
29 std::make_shared<PhantomXMkIIRendererModel>(converter_ptr, calculator_ptr);
30
31 return { renderer , renderer };
32 }
33 else
34 {
35 const auto renderer =
36 std::make_shared<PhantomXRendererSimple>(converter_ptr,
37 calculator_ptr,
38 display_quality);
39
40 return { renderer , renderer };
41 }
42}
43
44} // namespace designlab
static std::tuple< std::shared_ptr< IDxlib3dRenderer >, std::shared_ptr< IDxlibNodeSetter > > Build(const std::shared_ptr< const IHexapodCoordinateConverter > &converter_ptr, const std::shared_ptr< const IHexapodJointCalculator > &calculator_ptr, DisplayQuality display_quality)
HexapodRendererクラスのインスタンスを作成する. static関数なので,HexapodRendererBuilder::Build()と呼び出す.
DisplayQuality
描画の品質設定を示す列挙体.