524 Commits

Author SHA1 Message Date
Adam Wulkiewicz
f80cacc4cb [relate] Refactor relate utilities and implementation.
Implement boundary_checker and follow helpers for geometry collection.
They are commented-out for now because they are not used anywhere.
The code is there in case they were needed in the future.
2022-05-03 14:16:45 +02:00
Barend Gehrels
577de29211 [fix] disjoint and relate with const types 2022-04-13 10:09:53 +02:00
Barend Gehrels
8774b7b2d7 [major change] change the default, disable rescaling by default 2022-02-23 12:49:58 +01:00
Adam Wulkiewicz
fd0dac8563
Merge pull request #973 from awulkiew/feature/intersection_test
Test boxes intersection in separate file and add geographic tests.
2022-02-08 17:32:11 +01:00
Barend Gehrels
9c18680f31 [fix] for integer coordinates, segment intersection now rounds to nearest point 2022-02-07 10:33:15 +01:00
Adam Wulkiewicz
7ce0594e0a [test][intersection] Test boxes in separate file and add geographic tests. 2022-01-27 18:30:26 +01:00
Barend Gehrels
3806c5dc32 [side] use side_by_triangle by default 2021-12-30 11:16:48 +01:00
Barend Gehrels
c86bb2d07e fix: use policy instead of define 2021-12-15 10:29:38 +01:00
Barend Gehrels
08116e31e6 [test] cleanup svg generation 2021-12-01 10:09:51 +01:00
Barend Gehrels
5dae61c7d4 test: add and use test settings 2021-11-24 10:32:24 +01:00
Barend Gehrels
2a7db45d07 [test] take car alternate tests are test properly in old (rescaling) and new (no rescaling) regime 2021-11-17 11:21:54 +01:00
Barend Gehrels
4a62f77853 [linear linear]: remove assertion/exception (it's fragile), adapt test and fix test svg creation 2021-11-17 11:21:54 +01:00
Adam Wulkiewicz
b5d2793190 [test] Enable bm::cpp_rational union test. 2021-10-27 23:55:31 +02:00
Adam Wulkiewicz
26b6d9292b [test] Fix define disabling bm::cpp_rational. 2021-10-27 16:35:40 +02:00
Barend Gehrels
1e7903dff1 [test] exclude cpp_rational because it fails on develop 2021-10-26 17:30:31 +02:00
Barend Gehrels
ef1b8e33f9 [side] make the default for no-rescaling triangle to avoid regressions when rescaling is turned off
Tests are now tested in both modes
2021-10-20 10:25:28 +02:00
Barend Gehrels
da4dee76a7 [test] exclude most of the types, keep only one per family 2021-10-08 16:28:09 +02:00
Barend Gehrels
48516c8d32 [coordinate_types] support for Boost.Rational and Boost.Multiprecision
including a unit test
2021-09-29 12:44:49 +02:00
Vissarion Fisikopoulos
e38c093b5d
Merge pull request #873 from vissarion/feature/use_side_robust_predicate
Replace side_by_triangle by side_robust predicate
2021-09-21 14:26:26 +03:00
Barend Gehrels
e99cfde120 [intersection] use balance between distance-to-end and length-of-segments to determine to use a or b 2021-09-13 09:27:47 +02:00
Vissarion Fisikopoulos
a34b0f87c4
Merge branch 'develop' into feature/use_side_robust_predicate 2021-09-07 14:07:10 +03:00
Barend Gehrels
1030bd0d70 [test] add cases for issues #690 #875 #876 2021-08-04 14:07:01 +02:00
Adam Wulkiewicz
789281a5d1
Merge pull request #881 from awulkiew/feature/test_dependencies
Drop dependencies in tests.
2021-07-30 13:18:22 +02:00
Barend Gehrels
42edbd30f2 [test] add testcase for issue #888 polygon 53 2021-07-28 13:10:28 +02:00
Barend Gehrels
01f8e23b0c [traverse] reverse meaning of isolation in difference 2021-07-28 13:10:28 +02:00
Barend Gehrels
14df20453f [test] remove the non used KRAMER define and rephrase/include/exclude some tests 2021-07-28 13:09:26 +02:00
Adam Wulkiewicz
08f7e66f79 [test] Drop library dependencies in tests.
If possible drop type_traits, mpl, typeof, foreach, assign.
Rearrange some includes.
2021-07-22 19:46:51 +02:00
Barend Gehrels
afa1f458a0 [test] add testcases (currently going well) 2021-07-21 11:13:45 +02:00
Vissarion Fisikopoulos
fb9b1d40ff Replace side_by_triangle with side_robust 2021-06-30 13:00:21 +03:00
Barend Gehrels
40c6544a9b [test] add cases for issues #869 and #861 2021-06-23 10:17:54 +02:00
Barend Gehrels
1d4b2e5df2 [test] adapt testcases and / or expectations 2021-06-02 11:46:31 +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
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
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
Adam Wulkiewicz
ab28baae28 Merge branch 'develop' into feature/strategies_relate 2021-01-31 21:08:38 +01: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
Barend Gehrels
4e8ff81131 [sort_by_side] add epsilon to approximately_equals 2020-12-16 10:31:14 +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
Adam Wulkiewicz
4c6f569d2d [test] Include only necessary headers of Boost.Range. 2020-11-26 04:59:40 +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
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
Barend Gehrels
5f677775ef [TEST] Conform the countset, replace many #ifdefs with expectation limits and apply it for float, double, long double (in many tests) 2020-10-21 10:18:56 +02:00
Adam Wulkiewicz
e3b190c5b2
Merge pull request #755 from ayaankhan98/develop
[fix] #750: misspelled config macros
2020-10-16 16:26:09 +02:00
Barend Gehrels
45d624af9b [cleanup] remove HAVE_TTMATH and other occurances of ttmath 2020-10-07 14:05:28 +02:00
Barend Gehrels
3272220a3c [test][doc] Clean up numeric types in tests and adapt documentation 2020-09-30 11:20:44 +02:00