Commit Graph

230 Commits

Author SHA1 Message Date
Barend Gehrels
2c1a7b7f40 [union] fix simple cases having two colocated uu turns
(appearing now that uu turns are included)
2016-01-06 16:52:19 +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
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
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
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
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
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
515d75ffe0 [test] update testcases, one more failing (but that fails for multi too)
and one fixed in the meantime
2015-11-18 17:41:37 +01:00
Barend Gehrels
a9903f8c7f [overlay] fix ordering ii-turns and skip turns afterwards 2015-11-18 17:33:23 +01:00
Barend Gehrels
67ac81e5b2 [overlay] fix cases where intersection point is in the middle of the
first segment, and not at the endpoint
2015-11-18 14:53:00 +01:00
Barend Gehrels
026abb015d [test] temporarily exclude case #81 recently added 2015-11-18 11:15:01 +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
Barend Gehrels
e2764a795b [overlay] sort on cc too. Also, sort/fix cases where ux is considered for intersection too.
They are discarded now, besides the sorting order is fixed (but that
alone does not help)
2015-11-15 11:55:13 +01:00
Barend Gehrels
c7d419785e [overlay] in less_by_segment_ratio, sort turns where operation occurs
(and not in the other turn) first
2015-11-14 11:23:37 +01:00
Barend Gehrels
d038e58f16 [overlay] check for sides w.r.t. both, this fixes two cases for
intersection
2015-11-13 20:08:14 +01:00
Barend Gehrels
b891bbe741 [overlay] use same functionality also for intersection 2015-11-13 19:29:55 +01:00
Barend Gehrels
4a05869d2f [overlay] turn off handle_tangencies 2015-11-11 15:43:29 +01:00
Barend Gehrels
4270ccce20 [test] add recent regression for intersection. Found using recursive_polygon
Date of regression yet unknown. In 1.55 the recursive_polygons tool
never detected errors.
2015-11-11 13:34:49 +01:00
Barend Gehrels
a0ac004a84 [test] investigating case #58 failing for intersection,
adding simplified versions of #58, some failing, some correct
2015-11-11 11:46:38 +01:00
Barend Gehrels
2cf781aa68 [test] add testcase for which is failing for intersection. This is the
inverse testcase for difference (which is also failing and which is why it
is added). To be fixed.
2015-11-04 12:36:16 +01:00
Barend Gehrels
8f8b7bdfb1 [test] add testcase for similar situation (interior ring touches exterior
ring)
2015-11-01 11:14:58 +01:00
Barend Gehrels
cbd431a65a typo 2015-10-31 12:29:57 +01:00
Barend Gehrels
4cc8112544 [colocations] fix: the condition to select on uu or ux should be there 2015-10-31 12:26:09 +01:00
Barend Gehrels
77299c8c22 [intersection] testcase was already fixed by colocations solution,
remove #ifdef and add testcase
2015-10-31 11:35:22 +01:00
Adam Wulkiewicz
7ddeab4f05 [test][intersection] Add failing test case. 2015-10-22 22:05:22 +02:00
Menelaos Karavelas
6fb6863711 [test][algorithms][intersection] add one more test case 2015-09-03 20:01:12 +03:00
Menelaos Karavelas
979b6cda7c [test][algorithms][intersection] add messages in debug mode 2015-09-03 20:00:43 +03:00
Menelaos Karavelas
267b54a2ca [test][algorithms][intersection] add more test cases for intersection(L,A) 2015-09-03 15:06:25 +03:00
Adam Wulkiewicz
51591ea883 [test][intersection] Remove tests checking the handling of epsilon for Boxes. 2015-08-21 19:57:32 +02:00
Adam Wulkiewicz
81305a79a1 [test][intersection] Add Box/Box case testing machine epsilon handling. 2015-08-05 01:08:21 +02:00
Adam Wulkiewicz
a7c539c075 [test][overlay][setops] Fix msvc size_t to int conversion warnings. 2015-07-23 01:18:48 +02:00
Barend Gehrels
9ee98695d4 [intersection][test] Exclude one test for no-robustness 2015-07-15 13:00:06 +02:00
Barend Gehrels
47c5c726ad [intersection] comment some cases not supported for no-robustness 2015-07-08 20:34:29 +02:00
Barend Gehrels
bc4db40121 [test] fix expectactions for intersection geos_2 where in rare cases
a tiny rectangle is generated (due to rescaling)
2015-07-08 11:12:45 +02:00
Adam Wulkiewicz
3db50a42ec [intersection][test] Alter the expected result one case.
With MSVC and MinGW the results are quite different so pick a value
between the ones calculated with those two compilers.
2015-06-25 20:18:25 +02:00
Adam Wulkiewicz
f1d39a4385 [intersection] Update expected test results, syncronize with the change in rescale policy (rounding). 2015-06-25 17:29:40 +02:00
barendgehrels
6926c270b3 Adapt difference/intersection unit tests to change in IP calculation 2015-06-21 22:53:25 +02:00
Adam Wulkiewicz
a5c79c9e22 [test][set_operations] Rename the tests. 2015-06-12 13:26:57 +02:00
Menelaos Karavelas
8285b45298 [test][algorithms][intersection] add more test cases for A/A -> L 2015-06-09 00:49:52 +03:00
Menelaos Karavelas
a331405d55 [test][algorithms][intersection] add one more test case 2015-06-07 17:35:07 +03:00
Menelaos Karavelas
3a658549d7 [test][algorithms][intersection] simplify unit test by replacing the meta-programming approach by a simpler one 2015-06-05 23:35:00 +03:00
Menelaos Karavelas
2080f49d07 [test][algorithms][intersection] add unit test for intersection(areal, areal, linear) 2015-05-28 11:56:21 +03:00
Menelaos Karavelas
a5f0a565bc [test][algorithms][intersection] enable get_turns invariance checking only for
linear/linear geometry combinations
2015-05-28 11:53:26 +03:00
Menelaos Karavelas
31391fe166 [test][algorithms][intersection] add test cases for intersection(linestring, box)
and intersection(multi_linestring, box)
2015-05-11 13:38:26 +03:00
Menelaos Karavelas
ee8d0ea335 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/set_ops_pointlike_linear 2015-04-23 10:13:54 +03:00
Adam Wulkiewicz
0851688794 [test][intersection] Fix uninitialized variable usage. 2015-04-22 03:04:05 +02:00
Adam Wulkiewicz
2b11233f00 Merge pull request #264 from mkaravel/fix/remove_deprecated_include_paths
Fix: remove deprecated include paths
2015-04-06 01:32:39 +02:00
Adam Wulkiewicz
5feb4afe70 Merge pull request #256 from mkaravel/fix/polish_set_ops_pl_pl_tests
Unit tests for set operations of pointlike/pointlike geometries
2015-04-05 02:31:35 +02:00
Menelaos Karavelas
7658231aa4 Merge branch 'develop' of https://github.com/boostorg/geometry into fix/remove_deprecated_include_paths
Conflicts:
	test/algorithms/set_operations/difference/difference.cpp
2015-03-31 14:30:04 +03:00
Adam Wulkiewicz
c0f4b05806 [test][intersection] Disable the test for ticket 10868. 2015-03-28 15:07:02 +01:00
Menelaos Karavelas
3e5f6db4a7 [test][algorithms][intersection] add missing include boost/config.hpp;
add better testing for the existence of int64_t;
2015-03-26 14:25:47 +02:00
Menelaos Karavelas
0c891c7b8a [test][algorithms][intersection] add missing include for BOOST_GEOMETRY_CONDITION;
add testing for ticket #10868 with long and boost::long_long_type as coordinate type;
2015-03-26 14:04:30 +02:00
Menelaos Karavelas
e3f30bbc15 [test][algorithms][intersection] add testing for the test case in Boost Trac ticket #10868 2015-03-26 13:50:39 +02:00
Barend Gehrels
90fcd83f30 [test] Remove bigobj flag from Jamfiles
now that it is defined in the upper level
2015-03-22 22:58:24 +01:00
Menelaos Karavelas
4d544287a3 [test][algorithms][set operations] update deprecated includes referring to
the include/boost/geometry/multi/ directory
2015-03-12 10:47:28 +02:00
Menelaos Karavelas
29c460b546 [test][algorithms] remove deprecated includes referring to the
include/boost/geometry/multi/ directory; polish and simplify some includes;
2015-03-12 02:10:14 +02:00
Menelaos Karavelas
9c860772ff [test][algorithms][set operations] update Jamfiles with the new unit tests 2015-03-10 16:52:14 +02:00
Menelaos Karavelas
a4b062583c [test][algorithms][set operations] add unit tests for intersection and difference
for pointlike/linear geometries
2015-03-10 16:50:38 +02:00
Menelaos Karavelas
ec5efe3799 [test][algorithms][set operations][pointlike] polish tests of set operations
for pointlike/pointlike geometries (make the case ID the first argument of the tester);
modify the common set operations test code so that it can be applied to set operations
of pointlike/linear geometries as well;
2015-03-10 16:04:31 +02:00
Adam Wulkiewicz
4f2fc67bd6 Merge branch 'develop' into fix/warnings 2015-02-11 15:55:31 +01:00
Adam Wulkiewicz
aff82800c4 [test][algorithms] Use BOOST_GEOMETRY_CONDITION macro for constant conditions. 2015-02-11 15:53:50 +01:00
Menelaos Karavelas
b7ccd1f03e [test][algorithms][set operations L/L] replace absoute tolerance by relative tolerance 2015-02-11 00:22:07 +02:00
Menelaos Karavelas
b4c34417b0 [test][algorithms][intersection L/L] add result when omitting isolated intersection points 2015-02-10 23:49:17 +02:00
Menelaos Karavelas
fe44edfce3 [test][algorithms][intersection L/L] add one more test case 2015-02-10 23:37:34 +02:00
Menelaos Karavelas
e4ea5defa3 [test][algorithms][intersection L/L] add support for checking equality within a specified tolerance 2015-02-10 23:36:12 +02:00
Barend Gehrels
5c9c899974 [test] Increase tolerance slightly for parcel3 (buffer) and geos_1 (intersection)
to let it pass in MSVC 14
2015-01-21 23:19:38 +01:00
Barend Gehrels
c5417f6f43 [overlay] fix ticket #10108: rings only touching should check for u/u turns
and don't call point_on_border because that might be located on the border of the
other geometry. This also avoids passing the mid_point boolean, and including
within_code in ring_properties
2014-11-06 14:29:35 +01:00
Barend Gehrels
5563d2f8e2 [test] small change, move types/constants upwards to conveniently exclude/comment
testcases if necessary
2014-11-05 13:39:28 +01:00
Barend Gehrels
448040613d [overlay][fix] fix rescaling when coordinate-differences are larger than recaling range,
which is unfortunately slipped through. This fixes ticket #10747
2014-11-05 13:38:12 +01:00
Adam Wulkiewicz
61c9fa6bd2 [test] Move overlay tests from multi directory. 2014-10-30 13:41:41 +01:00
Adam Wulkiewicz
2bef2facc1 [test] Move set operations tests from multi directory. 2014-10-30 13:24:10 +01:00
Adam Wulkiewicz
26b338a20f [test] Move set and relational operations tests to separate directories. 2014-10-30 13:09:12 +01:00