diff --git a/include/suiryoku/locomotion/process/locomotion.hpp b/include/suiryoku/locomotion/process/locomotion.hpp index 8d5e06a..8f5b23c 100755 --- a/include/suiryoku/locomotion/process/locomotion.hpp +++ b/include/suiryoku/locomotion/process/locomotion.hpp @@ -87,6 +87,7 @@ class Locomotion std::string config_name; bool initial_pivot; + keisan::Angle pivot_stop_limit; private: double move_min_x; diff --git a/src/suiryoku/locomotion/process/locomotion.cpp b/src/suiryoku/locomotion/process/locomotion.cpp index 386182c..709b3d9 100755 --- a/src/suiryoku/locomotion/process/locomotion.cpp +++ b/src/suiryoku/locomotion/process/locomotion.cpp @@ -170,6 +170,7 @@ void Locomotion::set_config(const nlohmann::json & json) bool valid_section = true; double pivot_target_tilt_double; + double pivot_stop_limit_double; valid_section &= jitsuyo::assign_val(pivot_section, "min_x", pivot_min_x); valid_section &= jitsuyo::assign_val(pivot_section, "max_x", pivot_max_x); @@ -179,8 +180,10 @@ void Locomotion::set_config(const nlohmann::json & json) valid_section &= jitsuyo::assign_val(pivot_section, "max_delta_direction", pivot_max_delta_direction); valid_section &= jitsuyo::assign_val(pivot_section, "pan_range_a_speed", pivot_pan_range_a_speed); valid_section &= jitsuyo::assign_val(pivot_section, "target_tilt", pivot_target_tilt_double); + valid_section &= jitsuyo::assign_val(pivot_section, "pivot_stop_limit", pivot_stop_limit_double); pivot_target_tilt = keisan::make_degree(pivot_target_tilt_double); + pivot_stop_limit = keisan::make_degree(pivot_stop_limit_double); if (!valid_section) { std::cout << "Error found at section `pivot`" << std::endl;