Barend Gehrels
1744a27288
[overlay] remove duplicate line from unit test
2016-01-03 13:17:34 +01:00
Barend Gehrels
f803c0cae2
[overlay] stop discarding uu turns. Discard cc turns colocated with uu turns.
...
Including uu turns is necessary to handle cases as in #recursive_boxes_17 and also for
validity of output polygons.
This also makes code simpler for now, removing the separate uu handling from
for example select_rings
2016-01-03 13:17:17 +01:00
Barend Gehrels
d9ccb0563f
[overlay] unit test remove duplicate line which was caused
...
by selecting lines on committing
2016-01-03 11:47:53 +01:00
Barend Gehrels
63b667aa82
Merge branch 'feature/handle_touch' into feature/cluster
...
Conflicts:
include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp
include/boost/geometry/algorithms/detail/overlay/overlay.hpp
include/boost/geometry/algorithms/detail/overlay/traverse.hpp
include/boost/geometry/algorithms/detail/overlay/turn_info.hpp
test/algorithms/overlay/Jamfile.v2
Skipped some files in merging:
unit tests, test cases, less_by_segment_index
Turned off the handling of touch (so this is merge only)
2016-01-03 11:47:19 +01:00
Barend Gehrels
fe5264ef00
[traverse] fix selection of operation in case of continue: do not
...
select a continue operation if next turn is a dead end
2016-01-01 11:09:21 +01:00
Barend Gehrels
e059715a2a
[traverse] fix selecting invalid arc in cluster
2015-12-31 18:09:10 +01:00
Barend Gehrels
f63573d58b
[colocations] fix assigning discarded turns for clusters
2015-12-31 15:55:00 +01:00
Barend Gehrels
716fe421e0
[enrich] fix cluster behaviour, only point to next turn if clusters
...
are also on
2015-12-31 14:55:31 +01:00
Barend Gehrels
eee10489ad
[traverse] fix, take the right operation in a cluster instead of using
...
select_operation
2015-12-30 15:18:54 +01:00
Barend Gehrels
e882f5e224
[traverse] fix registration of start which should be done immediately,
...
to get correct early finish for ii turns
2015-12-27 18:42:39 +01:00
Barend Gehrels
5c18dd370f
[colocations] don't discard ring if it is blocked
...
(fixes #case_recursive_boxes_4)
2015-12-24 18:20:50 +01:00
Barend Gehrels
4878e7c34c
[enrich] move discarding uu until after clustering, and within
...
clustering discarding turns colocated with uu on the same ring.
This breaks 2 cases, to be solved later, and fixes case_recursive_boxes_12
2015-12-24 17:05:05 +01:00
Barend Gehrels
65a3eeb804
[traverse] don't select starting points from clusters which are build in
2015-12-24 13:41:30 +01:00
Barend Gehrels
afd2599bc9
[overlay] instead of traversing through cluster, the next turn index
...
is determined in enrich_intersection_points
2015-12-24 13:38:48 +01:00
Barend Gehrels
90d0fdb2a3
[test] fix debug info
2015-12-23 18:45:54 +01:00
Barend Gehrels
b0684c4e08
[traverse] move traversal itself to traversal structure, only doing
...
one traversal. Currently returns error code for backtracking.
2015-12-23 17:48:51 +01:00
Barend Gehrels
7b9f39346b
[overlay] debug make text for visited gray such that the rest
...
more stands out
2015-12-23 16:34:47 +01:00
Barend Gehrels
194f3bf67c
[overlay] add check on next turn index, if -1 take next one
...
to avoid dead ends
2015-12-20 19:05:30 +01:00
Barend Gehrels
64943c0911
[intersection] fix sort_by_side order for non-colinear points on same side
2015-12-20 13:09:39 +01:00
Barend Gehrels
f2319263a0
[union] fix known cases using clustering and sort_by_side during traversal
2015-12-19 18:10:34 +01:00
Barend Gehrels
e7e425f8de
[overlay] fix #recursive_boxes by enabling 0,4 as tight corner too.
...
This introduces a ccw method, called by tight functions.
Note that it does NOT work for the two other similar methods using ranks
2015-12-11 22:00:32 +01:00
Barend Gehrels
33ada1d6e8
[fix] Fix cases by correct ordering left/right using sorted side information
...
This fixes #recursive_boxes 6, 10, 11
Debug cases added to overlay.cpp (10, 11)
2015-12-10 20:14:10 +01:00
Barend Gehrels
a0fc7307ac
[fix] use intersection point for sorting, the "both" is sometimes wrong
...
This fixes #recursive_boxes_8
2015-12-09 18:40:28 +01:00
Barend Gehrels
d08f527271
[test] added several existing and two new tests mainly for difference
...
(work in progress)
2015-12-09 18:05:40 +01:00
Barend Gehrels
378bee678a
[fix] use sort_by_side now also for ordering of ii/non_ii turns
...
This fixes cases #101 , #102 and #107 for difference (and corresponding
inverse versions for intersection)
2015-12-08 18:35:38 +01:00
Barend Gehrels
72d8c21258
[test][difference] Enable two other formerly failing cases, now fixed:
...
#ggl_list_20120915_h2 a/b
Fixed by handling turns colocated with xx
and omitting ux for intersection/difference
2015-12-08 12:20:54 +01:00
Barend Gehrels
a43cb3c171
[test][difference] Enable two formerly failing cases, now fixed:
...
#recursive_boxes_1 and #recursive_boxes_2
and updated expectations of failing/non failing tests
2015-12-08 12:15:58 +01:00
Barend Gehrels
6de8d91942
[fix] fix newly added case and get rid of different code for
...
intersection/difference
2015-12-07 22:45:29 +01:00
Barend Gehrels
9302c9f02f
[extensions][test] add inverse algorithm to calculate the inverse (in extensions)
...
and use it in overlay unit test
2015-12-07 20:17:31 +01:00
Barend Gehrels
9b299e8ab4
[test] add intersections of inverse versions of multi #65 ,
...
showing the current approach of discarding xx/ux is wrong (as neither not done
for union/difference)
2015-12-07 20:12:38 +01:00
Barend Gehrels
11844b6b74
[test] extend visitor with traversal information
2015-12-06 19:21:50 +01:00
Barend Gehrels
4a491fd77d
[overlay][test] add test visitor for overlay operation including turn and turn-order
2015-12-06 18:45:21 +01:00
Barend Gehrels
4f90bcd4a5
[fix] handle ix/ix as ux/ux
...
This fixes case #77 ; case #72 is fixed by earlier changes
2015-12-06 18:21:35 +01:00
Barend Gehrels
0c9d365d4b
[fix] copy_segment_points did not use reverse, fixed. It is now similar to
...
copy_segments
This somehow influences one unit test case but that will be handled later.
2015-12-06 18:01:19 +01:00
Barend Gehrels
90485acf79
Merge branch 'develop' into feature/fix_tangencies
2015-12-06 17:45:12 +01:00
Adam Wulkiewicz
b1f31d12dd
[test][traverse] Add failing case.
2015-12-03 10:39:28 +01:00
Barend Gehrels
cf42d0d08d
[test] add simpler version of case_108_muli as single version, with
...
missing intersection point
2015-11-30 23:09:32 +01:00
Barend Gehrels
285e0ad61d
Merge branch 'develop' into feature/fix_tangencies
2015-11-28 09:10:28 +01:00
Barend Gehrels
b022ae5606
[test] add failing case for missing intersection point, case_108_multi
2015-11-28 07:22:33 +01:00
Menelaos Karavelas
4dedae6eb7
Merge pull request #335 from mkaravel/fix/is_valid_invalid_coordinates
...
Boost.Trac ticket 11711
2015-11-26 23:30:58 +02:00
Barend Gehrels
2e13b87bce
Merge pull request #336 from mapycz/fix-centroid-crash
...
[algorithms][centroid] Fix crash when multi-geometry contains empty geometry
2015-11-22 14:15:32 +01:00
Barend Gehrels
2945201838
[overlay] pass inverse flag for difference and use it
...
to reverse condition on interior/exterior touch
2015-11-22 14:01:05 +01:00
Jiri Drbalek
39ef9e6e04
[test][algorithms][centroid] More centroid tests on empty geometries
2015-11-21 19:51:03 +00:00
Barend Gehrels
9230c3f142
[traverse][test] updates test svg
2015-11-21 19:03:19 +01:00
Barend Gehrels
939bf656f9
[intersection/enrich] don' t skip after ii if it is about interior rings,
...
they should be traversed. This fixes case mysql_21965285_b_inv
and helps for cases #58 (no backtracking)
2015-11-21 19:01:51 +01:00
Barend Gehrels
6fb034581a
[traverse] fix situations for ii by checking if in a cc case (where either
...
one can be selected normally) one of the options leads to the starting turn.
This, together with previous commit (finish early), fixes the many
variants of case #58
2015-11-21 18:56:40 +01:00
Barend Gehrels
324bfac801
Merge branch 'develop' into feature/fix_tangencies
2015-11-21 11:54:39 +01:00
Adam Wulkiewicz
48f64f6fbe
[test][intersection][difference] Add/move failing test case.
...
Add a case of intersection corresponding to the failing difference case.
Move the case related with MultiPolygons to a different file.
2015-11-19 19:29:04 +01:00
Barend Gehrels
ba4a832bb7
Merge branch 'develop' into feature/fix_tangencies
2015-11-18 20:56:15 +01:00
Adam Wulkiewicz
ec86b24401
[test][difference] Add failing case.
2015-11-18 19:49:30 +01:00