161 int most_near_index = 0;
162 float min_distance = 100000.f;
164 for (
int i = 0; i < global_route_.size(); ++i)
168 if (min_distance > now_distance)
170 min_distance = now_distance;
176 CmdIOUtil::Output(std::format(
"most_near_index : {}", most_near_index),
kDebug);
180 const Vector3 diff_vector = global_route_[most_near_index - 1] - global_route_[most_near_index];
181 const float target_angle = NormalizeAngle(atan2(diff_vector.
y, diff_vector.
x));
182 const float rot_dif = target_angle - euler_z_angle;
184 CmdIOUtil::Output(std::format(
"target_angle : {} / now_angle : {}",
185 math_util::ConvertRadToDeg(target_angle),
186 math_util::ConvertRadToDeg(euler_z_angle)),
189 if (abs(rot_dif) > kAllowableAngleError)
195 CmdIOUtil::Output(std::format(
"target_angle : {} / now_angle : {}",
196 math_util::ConvertRadToDeg(target_angle),
197 math_util::ConvertRadToDeg(euler_z_angle)),
203 const int loop_num = 10;
206 for (
int i = 0; i < loop_num; i++)
208 if (most_near_index - i < 0)
214 static_cast<float>(i + 1);
217 CmdIOUtil::Output(std::format(
"target_vector : {}", target_vector.
ToString()),
kDebug);