Barend Gehrels
e9c1ed497f
Merge branch 'develop' of https://github.com/boostorg/geometry into develop
2017-09-06 09:40:11 +02:00
Adam Wulkiewicz
2f0705147c
[test][union] Add failing A/A case (1.65 regression).
2017-08-30 18:20:17 +02:00
Adam Wulkiewicz
7de13d2707
[test][difference] Add failing L/A test cases.
2017-08-30 18:04:23 +02:00
Barend Gehrels
0591aa63ea
Merge branch 'develop' into feature/intvalid
2017-08-30 13:30:46 +02:00
Barend Gehrels
670ee5074f
[test] add last testcase also to union/difference
2017-08-30 13:19:38 +02:00
Barend Gehrels
a449c39e6f
[overlay] fix missing ring due to discarded self-intersection turn
2017-08-30 12:56:48 +02:00
Barend Gehrels
16892b1798
[test] add last added testcases for union to unit test of intersection/difference
2017-08-23 15:48:21 +02:00
Barend Gehrels
c7c4c23f4f
[test] include testcase for checking left_count
2017-08-23 15:38:18 +02:00
Barend Gehrels
2088e708cd
[test] add testcase for union for last fix
2017-08-23 13:52:25 +02:00
Barend Gehrels
d2232552d1
[test] remove the IGNORE flag for three cases which are already fixed
2017-08-23 11:24:10 +02:00
Barend Gehrels
e69c05da2f
[overlay][test] add testcase for needing to avoid having blocked turns
...
in untraversed rings
2017-08-23 11:23:32 +02:00
Barend Gehrels
ff918e4776
[test] dont ignore validity for case 65
2017-08-16 16:25:50 +02:00
Adam Wulkiewicz
35897a6a81
Merge pull request #412 from awulkiew/fix/algorithms_side_strategy
...
Geographic coordinate system related fixes.
2017-07-31 18:30:25 +02:00
Barend Gehrels
0938983c5e
[test] add testcase 66 for startable self-turns
2017-07-31 12:16:26 +02:00
Barend Gehrels
664c1aa10a
[test] add test cases for last fix
2017-07-26 14:33:26 +02:00
Barend Gehrels
174ef5e38c
[overlay] fix cases where two arcs leave a cluster in same direction,
...
one longer as the other. Remaining distance needs to be considered.
Including testcase case_recursive_boxes_64 which is fixed by this issue.
2017-07-19 18:59:55 +02:00
Barend Gehrels
497e055639
[overlay] don't check startable for determining has_traversed_turn,
...
and also check for turns both going in opposite direction (so uu for int)
This fixes case_recursive_boxes_63 (but not for difference yet)
2017-07-19 14:02:59 +02:00
Adam Wulkiewicz
8e100074e2
[test][union] Update test case according to the recent fix.
2017-07-18 14:39:03 +02:00
Barend Gehrels
9acd4dcbba
[overlay] dont excluded colocated self-turns from check within other geometry
2017-07-12 09:56:23 +02:00
Barend Gehrels
07389472a1
[test] small changes in test, moving settings
2017-07-08 12:48:05 +02:00
Barend Gehrels
1b71880b4f
[intersection] fix intersection pattern where it accidentally took last
...
one instead of penultimate
2017-07-08 12:45:24 +02:00
Barend Gehrels
bcbcbf8a74
[test] with corrected validity, update testcases
2017-07-05 16:44:25 +02:00
Barend Gehrels
59ea116d8c
[test] intersection, check validity of whole output instead of
...
its separate polygons
2017-07-05 14:40:21 +02:00
Barend Gehrels
41a5570251
[test] update test information on validity
2017-06-28 22:35:06 +02:00
Barend Gehrels
ae09052e7d
[test] update administration after fix in is_valid. Most
...
difference cases are valid now.
2017-06-28 22:27:03 +02:00
Barend Gehrels
e32269b208
[test] move ignore_validity to macro
2017-06-25 17:22:10 +02:00
Barend Gehrels
0cabf049cd
[test] Test validity for the whole outut, instead of per polygon
2017-06-25 17:21:50 +02:00
Barend Gehrels
ee3f5ea20d
[union] fix generating of false interiors by checking count_left
2017-06-25 13:56:01 +02:00
Barend Gehrels
2f2972959a
[test] Add test cases 57,58,59 for new approach for union-clusters
2017-06-25 12:09:32 +02:00
Barend Gehrels
b667a0a787
[test] Add testcases 55/56 for handling union clusters / not discarding self turns
2017-06-25 11:54:04 +02:00
Barend Gehrels
8e33d65ed7
[test] fix last added testcase for union which needs self-intersections
...
for validity
2017-06-14 12:08:58 +02:00
Barend Gehrels
604be619d9
[overlay] fix aggregations, include blocked as from
2017-06-14 10:28:47 +02:00
Barend Gehrels
412fc452da
[overlay] Relax case 2, allow both continue and intersection
...
Fixes new #case_recursive_boxes_53
2017-06-13 20:29:25 +02:00
Barend Gehrels
47e1efb9e3
[test] Add testcases for variants of zoomed in cases (going OK)
2017-06-08 21:44:46 +02:00
Barend Gehrels
3cd4f325ec
[traverse] fix another similar case #case_137_multi now with two
...
different outgoing arcs
2017-06-07 22:48:18 +02:00
Barend Gehrels
9993d3697f
[traverse] fix cases where touching interior/exterior is approached
...
from two different directions, and leave in one direction
2017-06-07 22:35:44 +02:00
Barend Gehrels
db372517b4
[traverse] fix cases where two polygons both have a touching interior ring,
...
which is equal to itself
2017-06-07 15:06:51 +02:00
Barend Gehrels
95454e4c8e
[traverse] redo, isolated MUST be checked. Checking interior/exterior ring is
...
then redundant again, besides that it does not work for differences.
This breaks case_134 but that must be fixed differently.
After this change, recursive_polygons test is flawless
w.r.t. intersections/unions (validity/with self turns not yet checked)
2017-06-05 17:45:51 +02:00
Barend Gehrels
bd16305a72
[overlay] remove original behaviour to discard turns colocated with blocked turns,
...
because this stops generating interior rings in certain configurations, and
it is, in the meantime, handled differently in cluster traversal.
Fixes cases like new case #case_recursive_boxes_51
2017-06-05 15:59:29 +02:00
Barend Gehrels
0853342320
[traverse] fix #case_58_multi and #case_134_multi by verifying connected
...
regions in switch detector
2017-06-05 11:51:53 +02:00
Barend Gehrels
ecae306146
[traverse] generalize pattern for colocated interior rings by making
...
cases with multiple rings (#case_134_multi) possible. It also does
not check for isolated anymore but instead checks interior/exterior rings
and region_ids
2017-06-04 14:04:00 +02:00
Barend Gehrels
b0cf8ffb59
[traverse] extend handling specific case of cc/ii with another variant,
...
now also solving #case_recursive_boxes_50
2017-06-04 11:23:42 +02:00
Barend Gehrels
463f778a36
[overlay] fix cases with two parallel interior rings, one touching
...
the exterior ring, by adding a special case for this. This solves
nearly all robustness (recursive_polygon) now.
2017-06-03 20:09:06 +02:00
Barend Gehrels
3555591411
[test] add missing recursive box cases to difference_multi
...
(all checked visually)
2017-05-31 12:51:55 +02:00
Barend Gehrels
390f924845
[test] add recently added cases to union/intersection tests
2017-05-31 11:22:05 +02:00
Barend Gehrels
16be4bbdb2
[overlay] fix new case #case_recursive_boxes_48 for self-intersections
...
by discarding self ii turns NOT located within another geometry
2017-05-31 11:12:57 +02:00
Barend Gehrels
f54f85a6de
[test] update union.cpp, there is only one invalid input - but with
...
no robustness there are several failures
2017-05-26 22:40:15 +02:00
Barend Gehrels
5a94c45644
[test] Check remaining problems for difference, restructure macros like in multi version
2017-05-25 16:20:35 +02:00
Barend Gehrels
36d81e18bf
[test] update difference_multi, many invalid results are fixed using self-turns
2017-05-25 14:45:27 +02:00
Barend Gehrels
27fdefbd2e
[test] enhance svg filename with self info
2017-05-21 14:16:37 +02:00
Barend Gehrels
ae745f5b5c
[test] enhance validity messages with ccw/open info
2017-05-21 14:15:47 +02:00
Barend Gehrels
d4ce96df48
[test] Add testcase 131 (fixed) and 132 (still unclear)
2017-05-20 17:30:25 +02:00
Barend Gehrels
0de898a004
[union] Fix select_source for self_turn, it should use multi_index
2017-05-20 15:54:57 +02:00
Barend Gehrels
9705fce852
[test] adapt testcase #case_recursive_boxes_14_invalid
2017-05-13 17:55:18 +02:00
Barend Gehrels
81578d48e2
[test] add two testcases necessary for new approach discarding ii
2017-05-10 09:51:33 +02:00
Barend Gehrels
2ea9884ddd
[validity] avoid discarded self-turn in isolated region generation,
...
and avoid registering uu-self-turns
This fixes the regressions in cases which were handled correctly before,
for intersection
2017-05-08 14:15:14 +02:00
Barend Gehrels
92a4326c6a
[test] rename cases which clashed in last merge (they were suffixed by m)
...
103m -> 106
104m -> 107
105m -> 105 (actually was not a clash)
2017-05-06 18:53:30 +02:00
Barend Gehrels
e52e2a8665
Merge branch 'develop' into feature/intvalid
...
# Conflicts:
# test/algorithms/overlay/overlay_cases.hpp
# test/algorithms/set_operations/intersection/intersection.cpp
# test/algorithms/set_operations/union/union.cpp
2017-05-06 18:26:49 +02:00
Barend Gehrels
081860e8dd
[sort_by_side] fix (rare) cases where two froms arrive at a turn,
...
but only one leaves the next turn. This simplifies state to just a boolean.
This fixes cases like case_recursive_boxes_46 for union
2017-04-19 16:32:40 +02:00
Adam Wulkiewicz
2a3cb7b951
[test][intersection][union] Add cases where all points of g1 are the same as some points of g2.
2017-04-14 14:40:52 +02:00
Barend Gehrels
76ec0f1b99
[test] Add tickets
2017-03-26 14:25:45 +02:00
Barend Gehrels
a96b1da5cc
[overlay] fix case (#recursive_boxes_45) where wrong decision was made based on a ux turn
2017-03-22 22:28:16 +01:00
Barend Gehrels
16f2bcf357
[overlay] fix case where a union is traveled. As it now appears, due
...
to new cluster handling, all uu turns can (and should) be discarded for intersections
2017-03-22 15:10:28 +01:00
barendgehrels
b4d1c8f8a9
[test] fix pointtype which is also used for SVG
2017-03-22 12:08:51 +01:00
barendgehrels
75d65e9bb7
[TEST] Move unused typedef
2017-03-22 11:45:02 +01:00
barendgehrels
ae90f8567e
[TESTE] fix reversed expectations
2017-03-22 11:44:44 +01:00
barendgehrels
ace8bdb7f0
[overlay] discard ii turns where two interior rings touch, for union operations.
...
This fixes case #80 . Also, added case #105 , testing that in a different way
(limiting solutions)
2017-03-18 20:17:22 +01:00
barendgehrels
12b1ad9e79
[test] avoid testing too much when one type is tested (compilation time)
2017-03-18 20:14:19 +01:00
barendgehrels
404bd889f5
[traverse] fix case #129/rec boxes_4 by avoiding finalized operations in aggregation
2017-03-13 17:44:28 +01:00
barendgehrels
f9e2119d32
Merge branch 'develop' into feature/intvalid
...
# Conflicts:
# include/boost/geometry/algorithms/detail/overlay/self_turn_points.hpp
# test/algorithms/set_operations/intersection/test_intersection.hpp
2017-03-13 16:22:58 +01:00
barendgehrels
9438642121
[test] avoid testing too much with ONLY_ONE_TYPE is specified
2017-03-13 16:12:36 +01:00
barendgehrels
32c422f745
[traverse] fix case #130 , starting with cc, using remaining_distance
2017-03-13 15:36:13 +01:00
barendgehrels
1b5fb4444e
[traverse] Major commit. Avoid discarding ii turn on interior rings. Detect isolatated
...
regions (usually inner rings) differently: only once instead of on the
fly, and store it. Set visited in clusters for all parts of the cluster.
2017-03-13 10:52:27 +01:00
barendgehrels
e2781e147a
Merge branch 'develop' into feature/intvalid
...
# Conflicts:
# include/boost/geometry/algorithms/detail/overlay/overlay.hpp
# include/boost/geometry/algorithms/detail/overlay/self_turn_points.hpp
# include/boost/geometry/algorithms/intersects.hpp
# include/boost/geometry/algorithms/touches.hpp
2017-02-25 20:01:08 +01:00
barendgehrels
caf0b9f7e9
[traverse] fix validity when two holes meet eachother and exlude an
...
area which should become a separate ring (#43 ), by passing the already visited
region_ids (which make them less local). It does not solve #35 yet.
2017-02-18 13:32:46 +01:00
barendgehrels
0d95185060
[traverse] fix cases where isolated regions have more turns in between
...
(cases #41/#128)
2017-02-17 16:24:52 +01:00
barendgehrels
4547875d81
[intersection][test] add/update testcases
2017-02-17 12:39:11 +01:00
Adam Wulkiewicz
b1c78f6622
[test] Test setops, is_simple and is_valid with strategies.
2017-02-17 05:45:34 +01:00
Adam Wulkiewicz
bc77e1255e
[test] Adapt tests to new interfaces of various utilities in the library.
...
default_strategy services, partition, get_turns, strategies.
2017-01-28 04:09:49 +01:00
barendgehrels
0e95caa36d
[overlay] skip ii outgoing/returning when, after that, a cc continues.
...
Plus extra testcase needing this (if self-turns are considered)
2017-01-11 16:56:15 +01:00
barendgehrels
a537112403
Merge branch 'develop' into feature/intvalid
2017-01-11 10:07:41 +01:00
Adam Wulkiewicz
edc0adc95a
[test] Add missing TypeOf includes (after dropping Serialization dependency).
2017-01-04 16:44:44 +01:00
barendgehrels
f0f5045364
[test] remove ignore flag for case 125 which runs OK with and without
...
self-turns
2017-01-04 13:23:34 +01:00
barendgehrels
093f3151bb
[test] update settings for validity in intersection, all tests (excluded non-rescaling)
...
are fine now for this file
2017-01-04 12:48:30 +01:00
barendgehrels
74f74a466c
[test] mark test cases for conditionally include
2016-12-28 17:48:07 +01:00
barendgehrels
5671c065e4
[test] Add similar simpler cases to single polygons
2016-12-16 13:54:08 +01:00
barendgehrels
07872acca1
[test] add (still failing) test for validity needing self-turn
2016-12-16 12:30:11 +01:00
barendgehrels
5a9acd4348
[test] fix error (integer too large) for some platforms, these are double values
2016-12-07 13:30:14 +01:00
barendgehrels
57250a3fdd
[overlay] fix regression (duplicate polygons) due to last enhancements
...
in validity of intersections
2016-12-07 13:12:03 +01:00
barendgehrels
e7006237f7
[test] Uncomment one (of two) regressions because it is fixed, and changed
...
comments of the other one
2016-11-30 15:55:30 +01:00
barendgehrels
efecc02866
[traverse] fix certain cases to recognize starting point during intersection
...
in a broader context
2016-11-30 12:56:48 +01:00
barendgehrels
3c58f15105
[traversal] handle non clustered ii turns using sort-by-side
2016-11-23 17:35:29 +01:00
barendgehrels
d687a55bbe
[test] correct testcase
2016-11-17 13:37:51 +01:00
Barend Gehrels
70e20ddd27
[overlay] fix some validity cases for intersection/difference
2016-11-02 15:55:30 +01:00
Barend Gehrels
11a249d5eb
[test] add one testcase, used for pending work (make intersections valid)
2016-10-12 17:57:34 +02:00
Barend Gehrels
a057b49ec0
[test] add testcases with one cluster and multiple outputs (one is invalid)
...
Add macros to specify testcases more conveniently
2016-10-05 12:55:39 +02:00
Barend Gehrels
30ad9da654
[validity] add cases with single cluster
2016-09-28 12:43:22 +02:00
Barend Gehrels
9201064990
[validity] fix zone count for intersection operations
2016-09-28 12:22:52 +02:00
Barend Gehrels
e3b424940c
[traverse] handle ii as uu for switch_source,
...
this makes several intersection testcases valid,
and makes one difference case invalid
2016-08-31 13:43:59 +02:00
Barend Gehrels
270a86cee7
[test] add comments about removed duplicate case
2016-08-31 11:44:57 +02:00
Barend Gehrels
c9738ff7c0
[test] increase two tolerances for qcc-arm platforms
2016-07-27 17:38:57 +02:00
Barend Gehrels
d4d24524a9
[test] various test updates w.r.t. robustness and validity
2016-07-20 13:46:23 +02:00
Barend Gehrels
0270865e2b
[test] case 77 is now valid with the recent changes in colocations
2016-07-20 10:36:54 +02:00
Barend Gehrels
94ec0619b9
[test] run tests but ignore validity, they are still not yet valid
2016-07-20 10:36:26 +02:00
Barend Gehrels
389887eaaa
[colocations] fix the issue for ccw
2016-07-06 14:25:30 +02:00
Barend Gehrels
08f87517b7
[colocations] also discard interior-ring turns with a ux
2016-07-06 13:31:11 +02:00
Barend Gehrels
5aa82adbba
[test] remove duplicate testcase (mysql_23023665_4 is identical to mysql_21964049)
2016-07-06 12:48:46 +02:00
Barend Gehrels
f8ea789f31
[test] move cases, three newly reported cases are fixed already for non-ccw
2016-07-06 12:47:06 +02:00
Barend Gehrels
26ed657f93
[test] add validity flag for intersection and adapt input #outputs/#points
2016-06-29 15:02:23 +02:00
Barend Gehrels
fcd48748ce
[test] ignore validity in difference/spike tests
2016-06-29 14:29:55 +02:00
Barend Gehrels
6b7f5f484d
[test] make exceptions for invalid polygons or (union) 3 ccw cases which
...
are not yet created as valid
2016-06-29 14:08:05 +02: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
Barend Gehrels
b75c055ff1
[test] add comments
2016-06-29 11:48:03 +02:00
Barend Gehrels
0879dccc81
[traversal] handle clustered turns with interior/exterior touching point by
...
discarding those turn_points (because detecting that in cluster or switch
and adapt behaviour is way more complex)
2016-06-22 18:44:17 +02:00
Adam Wulkiewicz
699df472e7
[test][setops] Use multi-geometries as output types (to simplify debugging).
2016-06-21 23:55:57 +02:00
Adam Wulkiewicz
8147014095
Merge branch 'develop' into feature/sph_seg_inters
...
Conflicts:
test/algorithms/overlay/overlay_cases.hpp
2016-06-21 16:53:33 +02:00
Adam Wulkiewicz
ff77e78562
[test][setops] Add failing test cases.
2016-06-21 16:45:46 +02:00
Adam Wulkiewicz
94b2ff8f10
[test][difference][union] Add failing cases.
2016-06-20 15:28:51 +02:00
Barend Gehrels
f5cbd59664
[test] update difference test, where not all is valid yet
2016-06-08 15:05:32 +02:00
Barend Gehrels
3d5906f1e8
[traversal] revised switch detector because could not get previous approach
...
working for the last cases and for newly created connected interior rings. The new approach is much simpler and based
on regions (connected rings, connected via interiors) and works for almost
all cases including newly created connected interiors. Last cases still to
be checked though.
It does not traverse through turns, but instead navigates through rings
2016-06-08 14:53:49 +02:00
Barend Gehrels
8a1c3e99c6
[test] add (currently failing) testcase
2016-06-08 12:20:56 +02:00
Barend Gehrels
e5652cffe1
[test] add optional check of input validity
2016-06-01 13:48:20 +02:00
Barend Gehrels
597ea22bef
[test] test validity now that input is valid, and add testcases for
...
some deliberately invalid input
2016-06-01 13:39:01 +02:00
Barend Gehrels
ee38e20243
[test] remove var which is not used anymore
2016-06-01 12:36:43 +02:00
Barend Gehrels
1b5efbaeb7
[traverse] fix switch cases on first visit by extracting that code
...
to separate method and call it twice
2016-06-01 12:36:08 +02:00
Barend Gehrels
f62503c2d4
[traverse] implement zones in traversal switch detections
2016-06-01 10:34:00 +02:00
Barend Gehrels
dc63848782
[traverse] check other ring while determining switches
2016-05-18 12:20:17 +02:00
Barend Gehrels
1d273e223b
[traverse] touch detection for clusters, implemented partly.
...
This still causes some regressions and fixes other (about equally amount) cases
2016-05-11 14:09:03 +02:00
Barend Gehrels
1e99b1adf9
[traverse] use switch_source in clusters
2016-05-05 12:25:20 +02:00
Barend Gehrels
9ed3809b58
[test] investigated failing new case, it is caused by rescaling/missing
...
intersection point
2016-04-27 14:10:10 +02:00
Barend Gehrels
5e0cac49fd
[test] fix expectations of todays added test, they were reversed
2016-04-27 13:56:38 +02:00
Barend Gehrels
dbea29f121
[test] make #case_108_multi and add to intersection/difference, which
...
are both not yet correct (unexpectedly).
Union is correct but still not valid
2016-04-27 12:50:12 +02:00
Barend Gehrels
4d6afb1466
[test] enable validity testing by default for difference tests
2016-04-27 12:06:07 +02:00
Barend Gehrels
c2baa5c46b
[test] add testcases for two tickets
2016-04-27 11:42:16 +02:00
Barend Gehrels
df9a97dea8
[traverse] enhance validity by checking touching (uu or combined turns creating a touch)
...
in clusters.
2016-04-27 11:39:40 +02:00
Adam Wulkiewicz
5cd01e087c
Merge branch 'develop' into feature/sph_seg_inters
2016-04-20 17:36:43 +02:00
Barend Gehrels
950c2644e5
[traverse] reimplement touch the same way as traversal, but don't create rings
...
there but detect source-switching
This fixes several touching-cases (clusters with uu not yet handled)
2016-04-20 14:13:09 +02:00
Barend Gehrels
62bdbbadf7
Merge branch 'develop' into feature/cluster_touch
2016-04-13 10:33:42 +02:00
Adam Wulkiewicz
33ece2c567
[test][algorithms] Use new intersection_strategies name.
2016-04-12 03:32:44 +02:00
Adam Wulkiewicz
00cc9bc199
[test][algorithms] Fix double to bool conversion.
2016-04-12 03:32:05 +02:00
Barend Gehrels
a7071f1ef1
[test] ignore validity teset for rt_f which is somehow failing (since
...
validity test is turned on) on this branch or my machine. To be fixed if
validity is fixed in general
2016-04-06 17:30:36 +02:00
Barend Gehrels
cfa0c184f8
Merge branch 'develop' into feature/cluster_touch
2016-04-06 09:38:08 +02:00
Adam Wulkiewicz
f46ed34965
[test][union][intersection] Add test case (failing union).
2016-04-05 20:23:30 +02:00
Barend Gehrels
5a5ed0cb10
[test] in union_multi, test for the uu-interior ring cases (4 of them still failing w.r.t. validity)
2016-03-30 11:27:26 +02:00
Barend Gehrels
ebe3ffbd58
[test][union] test validity by default
2016-03-30 11:12:09 +02:00
Barend Gehrels
ebd3b6a4b9
[test] fix #exected holes
2016-03-27 10:58:46 +02:00
Barend Gehrels
a1a16084ec
[test] add testcase for ticket 11018 (fixed)
2016-03-26 16:16:50 +01:00
Barend Gehrels
4a9b2ba167
[test] add possibility to check validity to intersection tests
2016-03-26 16:14:22 +01:00
Barend Gehrels
9c33e37647
[test] add test for ticket 10866 which is apparently fixed
2016-03-23 16:58:45 +01:00
Barend Gehrels
0d10b75966
[test] add testcase for ticket 11576, which is fixed
2016-03-23 16:44:52 +01:00