mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-12 05:51:47 +00:00
[geometry] Append without duplicates, fixed 3 calls
This commit is contained in:
parent
98b4271ba4
commit
13aa0b07db
@ -93,7 +93,7 @@ struct copy_segments_ring
|
|||||||
|
|
||||||
for (size_type i = 0; i < count; ++i, ++it)
|
for (size_type i = 0; i < count; ++i, ++it)
|
||||||
{
|
{
|
||||||
traits::push_back<RangeOut>::apply(current_output, *it);
|
detail::overlay::append_no_dups_or_spikes(current_output, *it);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -139,7 +139,7 @@ inline bool assign_next_ip(G1 const& g1, G2 const& g2,
|
|||||||
seg_id = info.seg_id;
|
seg_id = info.seg_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
traits::push_back<GeometryOut>::apply(current_output, ip->point);
|
detail::overlay::append_no_dups_or_spikes(current_output, ip->point);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -279,7 +279,7 @@ public :
|
|||||||
set_visited_for_continue(*it, *iit);
|
set_visited_for_continue(*it, *iit);
|
||||||
|
|
||||||
ring_type current_output;
|
ring_type current_output;
|
||||||
geometry::append(current_output, it->point);
|
detail::overlay::append_no_dups_or_spikes(current_output, it->point);
|
||||||
|
|
||||||
turn_iterator current = it;
|
turn_iterator current = it;
|
||||||
turn_operation_iterator_type current_iit = iit;
|
turn_operation_iterator_type current_iit = iit;
|
||||||
@ -391,7 +391,9 @@ public :
|
|||||||
detail::overlay::debug_traverse(*current, *iit, "->Finished");
|
detail::overlay::debug_traverse(*current, *iit, "->Finished");
|
||||||
if (geometry::num_points(current_output) >= min_num_points)
|
if (geometry::num_points(current_output) >= min_num_points)
|
||||||
{
|
{
|
||||||
|
// TODO this call should go, it should already be clean from dups/spikes
|
||||||
clean_dups_and_spikes(current_output, rescale_policy);
|
clean_dups_and_spikes(current_output, rescale_policy);
|
||||||
|
// END TODO
|
||||||
rings.push_back(current_output);
|
rings.push_back(current_output);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -117,11 +117,9 @@ void test_areal()
|
|||||||
ggl_list_20120915_h2[0], ggl_list_20120915_h2[2],
|
ggl_list_20120915_h2[0], ggl_list_20120915_h2[2],
|
||||||
1, 0, 12, 23.0); // Area from SQL Server
|
1, 0, 12, 23.0); // Area from SQL Server
|
||||||
|
|
||||||
#if 0
|
|
||||||
test_one<Polygon, MultiPolygon, MultiPolygon>("ggl_list_20140212_sybren",
|
test_one<Polygon, MultiPolygon, MultiPolygon>("ggl_list_20140212_sybren",
|
||||||
ggl_list_20140212_sybren[0], ggl_list_20140212_sybren[1],
|
ggl_list_20140212_sybren[0], ggl_list_20140212_sybren[1],
|
||||||
1, 0, 12, 23.0);
|
2, 0, 16, 0.002471626);
|
||||||
#endif
|
|
||||||
|
|
||||||
test_one<Polygon, MultiPolygon, MultiPolygon>("ticket_9081",
|
test_one<Polygon, MultiPolygon, MultiPolygon>("ticket_9081",
|
||||||
ticket_9081[0], ticket_9081[1],
|
ticket_9081[0], ticket_9081[1],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user