diff options
author | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:11:01 +0900 |
---|---|---|
committer | DongHun Kwak <dh0128.kwak@samsung.com> | 2019-12-05 15:11:01 +0900 |
commit | 3fdc3e5ee96dca5b11d1694975a65200787eab86 (patch) | |
tree | 5c1733853892b8397d67706fa453a9bd978d2102 /boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp | |
parent | 88e602c57797660ebe0f9e15dbd64c1ff16dead3 (diff) | |
download | boost-3fdc3e5ee96dca5b11d1694975a65200787eab86.tar.gz boost-3fdc3e5ee96dca5b11d1694975a65200787eab86.tar.bz2 boost-3fdc3e5ee96dca5b11d1694975a65200787eab86.zip |
Imported Upstream version 1.66.0upstream/1.66.0
Diffstat (limited to 'boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp')
-rw-r--r-- | boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp b/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp index af643a822b..4df3f6e7ac 100644 --- a/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp +++ b/boost/geometry/algorithms/detail/overlay/traversal_ring_creator.hpp @@ -41,6 +41,7 @@ template typename Geometry1, typename Geometry2, typename Turns, + typename TurnInfoMap, typename Clusters, typename IntersectionStrategy, typename RobustPolicy, @@ -64,7 +65,8 @@ struct traversal_ring_creator = operation_from_overlay<OverlayType>::value; inline traversal_ring_creator(Geometry1 const& geometry1, Geometry2 const& geometry2, - Turns& turns, Clusters const& clusters, + Turns& turns, TurnInfoMap& turn_info_map, + Clusters const& clusters, IntersectionStrategy const& intersection_strategy, RobustPolicy const& robust_policy, Visitor& visitor) : m_trav(geometry1, geometry2, turns, clusters, @@ -73,6 +75,7 @@ struct traversal_ring_creator , m_geometry1(geometry1) , m_geometry2(geometry2) , m_turns(turns) + , m_turn_info_map(turn_info_map) , m_clusters(clusters) , m_intersection_strategy(intersection_strategy) , m_robust_policy(robust_policy) @@ -203,7 +206,7 @@ struct traversal_ring_creator return traverse_error_none; } - if (start_turn.cluster_id >= 0) + if (start_turn.is_clustered()) { turn_type const& turn = m_turns[current_turn_index]; if (turn.cluster_id == start_turn.cluster_id) @@ -286,7 +289,7 @@ struct traversal_ring_creator m_robust_policy); rings.push_back(ring); - m_trav.finalize_visit_info(); + m_trav.finalize_visit_info(m_turn_info_map); finalized_ring_size++; } } @@ -347,6 +350,7 @@ private: Geometry1 const& m_geometry1; Geometry2 const& m_geometry2; Turns& m_turns; + TurnInfoMap& m_turn_info_map; // contains turn-info information per ring Clusters const& m_clusters; IntersectionStrategy const& m_intersection_strategy; RobustPolicy const& m_robust_policy; |