|| a1 < a2
)) {
this->cc().rotate(cclx, ccly, -a1);
+ if (::right_side_of_line(
+ this->cc().x(), this->cc().y(),
+
+ this->cc().x()
+ + cos(this->ps().heading()),
+ this->cc().y()
+ + sin(this->ps().heading()),
+
+ this->cc().x()
+ + cos(this->cc().h()),
+ this->cc().y()
+ + sin(this->cc().h())
+ )) {
+ continue;
+ }
} else if (std::get<0>(cli2) && (
!std::get<0>(cli1)
|| a2 < a1
|| a1 < a2
)) {
this->cc().rotate(cclx, ccly, -a1);
+ if (::right_side_of_line(
+ this->cc().x(), this->cc().y(),
+
+ this->cc().x()
+ + cos(this->ps().heading()),
+ this->cc().y()
+ + sin(this->ps().heading()),
+
+ this->cc().x()
+ + cos(this->cc().h()),
+ this->cc().y()
+ + sin(this->cc().h())
+ )) {
+ continue;
+ }
} else if (std::get<0>(cli2) && (
!std::get<0>(cli1)
|| a2 < a1