diff --git a/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp b/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp index e7e806faf..d89582e67 100644 --- a/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/get_turn_info.hpp @@ -997,8 +997,7 @@ struct get_turn_info < TurnInfo, AssignPolicy - >::apply(range_p, range_q, - tp, out, inters); + >::apply(range_p, range_q, tp, out, inters); } } break; diff --git a/include/boost/geometry/algorithms/detail/overlay/get_turn_info_la.hpp b/include/boost/geometry/algorithms/detail/overlay/get_turn_info_la.hpp index 964639658..5c0be2d7e 100644 --- a/include/boost/geometry/algorithms/detail/overlay/get_turn_info_la.hpp +++ b/include/boost/geometry/algorithms/detail/overlay/get_turn_info_la.hpp @@ -736,13 +736,15 @@ struct get_turn_info_linear_areal if ( ip0.is_qj ) { + // TODO: wrong! q should never be substituted for p. + // In the end point there is no point "k", that should be fixed in another way ov::side_calculator_for_endpoint < typename IntersectionInfo::cs_tag, rp1_type, rp2_type, typename IntersectionInfo::side_strategy_type, rp2_type - > side_calc(inters.rqi(), inters.rpi(), inters.rpj(), // TODO: wrong! q should not be substituted for p, and i/j should be j/k + > side_calc(inters.rqi(), inters.rpi(), inters.rpj(), inters.rqi(), inters.rqj(), inters.rqk(), inters.get_side_strategy()); @@ -764,7 +766,7 @@ struct get_turn_info_linear_areal rp2_type, rp1_type, rp1_type, rp2_type, rp1_type, rp2_type > side_calc(inters.rqi(), inters.rpi(), inters.rpj(), // TODO: wrong! q should not be substituted for p - inters.rqi(), inters.rpi(), inters.rqj(), + inters.rqi(), inters.rpi(), inters.rqj(), // TODO: wrong! p should not be substituted for q inters.get_side_strategy()); std::pair @@ -816,7 +818,7 @@ struct get_turn_info_linear_areal typename IntersectionInfo::robust_point2_type, typename IntersectionInfo::side_strategy_type, typename IntersectionInfo::robust_point2_type - > side_calc(inters.rqi(), inters.rpj(), inters.rpi(), // TODO: wrong! q should not be substituted for p; j/i should be j/k + > side_calc(inters.rqi(), inters.rpj(), inters.rpi(), // TODO: wrong! q should not be substituted for p inters.rqi(), inters.rqj(), inters.rqk(), inters.get_side_strategy());