Barend Gehrels
805ff654e8
feat: major rewrite of traversal
2025-04-25 19:47:35 +02:00
Barend Gehrels
b93561729d
feat: include changes and tests changes
2025-01-17 19:05:08 +01:00
Barend Gehrels
54b300ab37
test: verify failures and remove some rescaling remainings
2024-12-09 18:22:08 +01:00
Vissarion Fisikopoulos
d3ed449e39
Remove rescaling: remove BOOST_GEOMETRY_USE_RESCALING and update BoostGeometryWriteExpectedFailures
2024-05-29 15:34:00 +03:00
Barend Gehrels
fd209ffbf5
[fix] overlay threshold for sort_by_side
...
Fixes: issue #1186
2023-09-13 20:29:38 +02:00
Barend Gehrels
ec7f9c9887
[union] fix missing interior ring and double traversed exterior ring
...
fixes : #1109 and #1108
keeps fixed : #1081
2023-02-22 13:34:29 +01:00
Barend Gehrels
a908a21efe
[overlay] fix cluster by adapting tolerance
...
Fixes #1081
2022-11-23 14:20:43 +01:00
Barend Gehrels
2462357198
[buffer] remove close_to_offset and min_distance, add edge_min_fraction
2022-06-29 11:57:24 +02: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
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
1d4b2e5df2
[test] adapt testcases and / or expectations
2021-06-02 11:46:31 +02:00
Barend Gehrels
10142a6703
[turns] have all discarding of start_turns in one place and clean up clusters before assigning
2021-05-19 09:27:44 +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
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
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
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
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
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
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
Barend Gehrels
3272220a3c
[test][doc] Clean up numeric types in tests and adapt documentation
2020-09-30 11:20:44 +02:00
Barend Gehrels
9e1a4373dc
[buffer] Several changes necessary to handle different types (float, long double, boost MP)
2020-09-09 14:11:36 +02:00
Barend Gehrels
0969372147
[get_turns] use distance measures for side, and handle situation
...
with an imperfect touch (floating point issue)
2020-07-22 11:53:48 +02:00
Barend Gehrels
d347251055
[traversal] Support additional cluster exit functionality.
...
This makes it more efficient too (sort-by-side one time less).
This fixes some cases in buffer when rescaling is turned off.
2020-06-24 12:36:30 +02:00
Barend Gehrels
a09b9f4b51
[test] update testsuite, write expected failures (if all failures are enabled),
...
use optional counts for difference tests.
2020-06-10 14:27:42 +02:00
Barend Gehrels
70ecdfdd19
[buffer] Fix direction code for some new cases.
...
The similar_direction function could be erroneous for corner cases,
refactored it out.
This also makes it a bit less dependent on infinite_line (cartesian)
2020-05-06 14:22:32 +02:00
Barend Gehrels
d4af24851e
[buffer] revise turn_in_piece visitor:
...
- avoid side_of_intersection
- use new abstraction piece_border to verify point-in-piece
- this replaces the robust_ring
- and more related
2020-04-29 12:27:43 +02:00
Barend Gehrels
35c5d67d4d
[buffer] Cleanup, remove unused functionality, calculate originals
...
and monotonic sections in another way
2019-12-18 10:13:18 +01:00
Barend Gehrels
e4fbc736a4
[test] update defines for non-Kramer case
2019-11-13 13:09:14 +01:00
Barend Gehrels
2989992d37
[test] Write test configuration and make ccw order in tests optional
2019-11-13 12:52:33 +01:00
Barend Gehrels
fbf333c8a7
[test] updates in expectations and defines
2019-11-13 12:05:24 +01:00
Barend Gehrels
e9c45a7167
[test] update test if rescaling is turned of, for different configurations
2019-10-02 13:38:44 +02:00
Barend Gehrels
861fc38533
[TEST] Unify different defines into BOOST_GEOMETRY_TEST_ENABLE_FAILURES
2019-05-29 15:48:44 +02:00
Barend Gehrels
de5187f39c
[test] update testcases w.r.t. disabling rescaling, add two cases
2019-04-03 13:58:40 +02:00
Barend Gehrels
59c795a967
[test] Verify testcases (union, intersection, diff, buffer) w.r.t. turning off
...
rescaling.
Because of the preparation steps, many tests already succeed
2019-03-02 15:57:29 +01:00
Barend Gehrels
07dd079033
[CONFIG] Use a positive define (USE_RESCALING) instead of an unclear negative
...
one (NO_ROBUSTNESS). Precedes removing of the rescaling.
2019-03-02 13:39:50 +01:00
Barend Gehrels
e9149afdae
[buffer][test] review, use double quote for local includes
2019-02-09 18:31:22 +01:00
Barend Gehrels
d1e0296171
[buffer][test] remove ignore_validity for two cases which are now always fine
2017-11-29 17:07:29 +01:00
Barend Gehrels
900219f408
[buffer][test] add test_area to ut_settings, and avoid checking the tests
...
with huge coordinate differences on area, because they are meant for
assertion-checks and they might be invalid,
self-intersecting or empty depending on machine and numerical properties.
2017-11-25 13:19:26 +01:00
Barend Gehrels
a4f917628d
[test] mark certain cases as invalid. These cases fail on either MinGW
...
or on PowerPC platforms.
2017-11-23 23:36:16 +01:00
Barend Gehrels
8bfd285086
[test] exclude one extra case still failing
2017-11-23 17:22:05 +01:00
Barend Gehrels
55753fc017
[test][buffer] test, by default, for is_valid
2017-11-19 15:53:07 +01:00
Barend Gehrels
56023ee015
[test][buffer] handle the optional right distance differently,
...
such that it does not have to be specified in case of same as left
2017-11-19 14:06:55 +01:00
Barend Gehrels
5962b10743
[test][buffer] add ut_settings like done in overlay tests, to be able
...
to add test on validity
2017-11-19 13:59:21 +01:00
Barend Gehrels
b46805107b
Merge branch 'develop' into feature/cluster_touch
...
Conflicts:
include/boost/geometry/algorithms/detail/overlay/handle_touch.hpp
test/algorithms/overlay/Jamfile.v2
test/algorithms/set_operations/difference/difference.cpp
test/algorithms/set_operations/union/union.cpp
2016-06-29 13:18:51 +02:00
Adam Wulkiewicz
6fd54716a6
[test][buffer] Add failing test cases.
...
Add overload of testing function checking the number of polygons and
holes in the buffer output.
2016-06-21 16:46:52 +02:00
Barend Gehrels
49a2062627
[test] add testcase variations for buffer and a note: one test is now failing
2016-05-05 12:56:53 +02:00
Barend Gehrels
dfda1ccbc3
[buffer] fix last cases, in cases where the same offsetted ring is self-intersecting,
...
the approach using multi_index does not work. We need an extra idenfication
to check the 'sources' of the turns in clusters. Added piece_index for
this purpose.
This can be templated later (so only used for buffer)
2016-03-02 13:09:25 +01:00
Barend Gehrels
17ab7862c2
[test] buffer: enable previously failing testcase, and for two others
...
for ccw, which are all OK now (using cluster approach)
2016-02-28 12:48:23 +01:00
Barend Gehrels
8043f37f72
[test] buffer: disable one failing testcase
2016-02-28 12:45:17 +01:00
Barend Gehrels
a48a935064
[overlay] self-tangencies, similarly as handling side left/right,
...
handle cases where one leg continues collinearly
2015-11-18 11:14:35 +01:00