Commit Graph

2301 Commits

Author SHA1 Message Date
Adam Wulkiewicz
667471e5ed Improve visit traits and algorithms.
Add support for rvalue references in visit traits and algorithms.
Move visit algorithms to detail namespace.
Rename visit_iterator trait to iter_visit.
Add tests for visit traits and algorithms.
Remove unneeded comments.
2021-05-28 01:48:26 +02:00
Adam Wulkiewicz
52c2723ef3 [algorithms] Reimplement variant support using DynamicGeometry concept in several algorithms.
Also add basic support for GeometryCollection.
2021-05-19 01:11:43 +02:00
Barend Gehrels
75d8f9e9b9 [intersection] fix intersection points outside of the segments 2021-04-28 10:31:21 +02:00
Barend Gehrels
e098a85f5a [test] add testcase for issue #838 2021-04-07 11:13:58 +02:00
Barend Gehrels
eee7fc53ea [clusters] detection is refactored to a simpler sweeping algorithm
This fixes a part (around 30%) of the remaining errors in the recursive buffer check
2021-04-07 11:13:20 +02:00
Adam Wulkiewicz
29a6a9ff47 Merge pull request #812 from awulkiew/feature/strategies_distance
Umbrella strategies for distance() and comparable_distance().
2021-04-01 00:08:57 +02:00
Adam Wulkiewicz
b88a204752 [test][distance] Tweak the tests for distance umbrella strategies. 2021-03-16 19:19:41 +01:00
Adam Wulkiewicz
6bb65c1e74 [test][area] Tweak error thresholds for small areas. 2021-03-03 17:26:23 +01:00
Vissarion Fisikopoulos
94c91352d9 Merge pull request #801 from vissarion/fix/area_geo
Improve accuracy in geographic area computations
2021-03-02 16:50:47 +02:00
Barend Gehrels
8f95fcb52f [buffer] fix case for issue 803 where an artifact was generated on nearly collinear lines in the buffer 2021-02-25 21:26:42 +01:00
Vissarion Fisikopoulos
37ada5f9b0 [formulas] Implement detail namespace for karney_inverse formula 2021-02-22 18:59:10 +02:00
Barend Gehrels
77bb5310d2 Merge pull request #800 from barendgehrels/enhance/get_ring
[overlay] move segment_count_on_ring and segment_distance to get_ring, and add unit tests
2021-02-19 10:38:58 +01:00
Barend Gehrels
524e194615 [overlay] move segment_count_on_ring and segment_distance to get_ring and add unit test for them 2021-02-19 10:34:26 +01:00
Vissarion Fisikopoulos
469ace7652 Merge branch 'develop' into fix/area_geo 2021-02-18 13:24:54 +02:00
Adam Wulkiewicz
b786bd9dd9 [test][setops] Fix gcc error caused by incorrect passing of interrupt_policy into get_turns. 2021-02-16 17:44:12 +01:00
Adam Wulkiewicz
a941645547 [test][azimuth] Add tests with non-default vincenty formula. 2021-02-16 15:35:38 +01:00
Adam Wulkiewicz
ae33a8dc0c Merge branch 'develop' into feature/azimuth 2021-02-16 14:14:13 +01:00
Adam Wulkiewicz
429423cdb1 Merge pull request #768 from awulkiew/feature/strategies_relate
Support umbrella strategies in relops, setops, index, buffer and more.
2021-02-16 13:32:17 +01:00
Adam Wulkiewicz
bec798d60f Merge pull request #779 from awulkiew/fix/test_range_includes
[test] Include only necessary headers of Boost.Range.
2021-02-12 18:58:25 +01:00
Vissarion Fisikopoulos
55696726d2 Merge branch 'develop' of https://github.com/boostorg/geometry into fix/area_geo 2021-02-12 17:21:28 +02:00
Vissarion Fisikopoulos
5ec9f9fa28 [area] Relax are test and fix if statement to compile and pass with gcc-5 2021-02-08 10:07:14 +02:00
Vissarion Fisikopoulos
b737419581 [tests] Fix and update geographic area tests 2021-02-05 17:34:16 +02:00
Vissarion Fisikopoulos
baf414ae02 [formulas] Some optimizations in area geographic formula 2021-02-04 21:15:14 +02:00
Vissarion Fisikopoulos
3d7e871188 [tests] Add area tests for small spherical and geographic polygons 2021-02-01 17:04:15 +02:00
Adam Wulkiewicz
ab28baae28 Merge branch 'develop' into feature/strategies_relate 2021-01-31 21:08:38 +01:00
Vissarion Fisikopoulos
48b800632b [tests] Fix area accurancy in convex hull tests 2021-01-29 18:41:38 +02:00
Vissarion Fisikopoulos
23ad83fd25 [tests] Fix tests to pass with changed geographic area formula 2021-01-27 12:06:48 +02:00
Barend Gehrels
d006d1e4ac [test] add testcases from recursive_polygons_buffer partly solved by handling collinear as equal 2021-01-13 09:33:57 +01:00
Adam Wulkiewicz
627e9d93b5 [test] Add test for newly added azimuth() algorithm. 2021-01-13 01:24:50 +01:00
Vissarion Fisikopoulos
538a97de3d [formulas] [test] Enable series expansions inverse formulas and relevant distance strategies 2021-01-07 17:27:00 +02:00
Barend Gehrels
705efe9bad Merge pull request #780 from barendgehrels/fix/sort-by-side-point-at-turn
Fix/sort by side point at turn
2020-12-30 11:37:24 +01:00
Vissarion Fisikopoulos
4034ac88b2 [strategies] [test] Fix spherical cross track and convex hull tests 2020-12-21 15:11:17 +02:00
Vissarion Fisikopoulos
83dcb53ffc Merge remote-tracking branch 'origin/develop' into feature/robust_convex_hull 2020-12-21 12:22:55 +02:00
Vissarion Fisikopoulos
3374cda6f6 Merge pull request #749 from vissarion/feature/robust_area
Area strategy for more accurate computations in cartesian CS
2020-12-21 12:20:31 +02:00
Barend Gehrels
59e0840d75 [sort_by_side] walk forward for point_to
(similarly to walking backwards for point_from)
2020-12-16 14:41:49 +01:00
Barend Gehrels
4e8ff81131 [sort_by_side] add epsilon to approximately_equals 2020-12-16 10:31:14 +01:00
Barend Gehrels
324249bb2d [copy_segment_point] change offset with modulo, add to box, update unit test 2020-12-09 13:52:07 +01:00
Barend Gehrels
abaa211d3a [sort_by_side] fix cases where the cluster point is approached by segments, but the last point before is colocated with the turn itself
This fixes 50% of the errors currently found by recursive_polygons_buffer (when rescaling is turned off)
2020-12-02 14:19:50 +01:00
Barend Gehrels
77838a8995 [copy_segment_point] change implementation to allow also negative offsets,
including unit test
2020-12-02 13:19:15 +01:00
Adam Wulkiewicz
4c6f569d2d [test] Include only necessary headers of Boost.Range. 2020-11-26 04:59:40 +01:00
Adam Wulkiewicz
95a9b43712 Merge branch 'develop' into feature/traits_make 2020-11-25 15:23:55 +01:00
Barend Gehrels
42bd7cfe95 [turns] fix precision when turns are arriving or leaving.
Then their fractions should be 1 or 0 (and not nearly so)
2020-11-25 10:21:16 +01:00
Adam Wulkiewicz
016691b15f Merge branch 'develop' into feature/traits_make 2020-11-25 00:06:55 +01:00
Vissarion Fisikopoulos
470e9e1bce [tests] Add tests regarding accuracy in cartesian area computations 2020-11-06 12:08:08 +02:00
Barend Gehrels
ee3509f2f3 Merge pull request #769 from barendgehrels/fix/start-turns
Fix/start turns
2020-11-04 09:44:09 +01:00
Adam Wulkiewicz
4f128c4135 [test] Add comment in equals test. 2020-11-03 04:25:06 +01:00
Barend Gehrels
271c5ad52c [turns, buffer] add cases from robustness test going wrong, some fixed with start turn 2020-10-28 14:50:24 +01:00
Barend Gehrels
3e111a0302 [turns] without rescaling, include start turns in calculation 2020-10-28 14:27:26 +01:00
Adam Wulkiewicz
6b74f7c8a3 Support umbrella strategies in relops, setops, index, buffer and more.
Also is_simple, is_valid and extensions like dissolve and nsphere relops.

Add umbrella strategies:
 - relate: used in setops, relops, buffer, is_xxx, dissolve, etc.
 - index: used in rtree
 - io: used in wkt read/write and extensions/shapefile

Replace `point_box_by_side` agnostic strategy with CS-specific strategies.

Fix passing of strategies (no defaults when user-defined strategy is
passed) in places like buffer and distance.

Alter tests accordingly.
2020-10-21 17:42:02 +02:00
Barend Gehrels
9989780d41 Merge pull request #758 from barendgehrels/test/add_limits
Conform the countset, replace many #ifdefs with expectation limits
2020-10-21 10:21:17 +02:00