241 Commits

Author SHA1 Message Date
Barend Gehrels
ffd3cd1e3d [buffer][test] fix ccw suffix which should use output geometry 2014-10-24 15:33:03 +02:00
Barend Gehrels
6f09c5fd98 [buffer][test] test counter clockwise output for (multi)linestrings / points 2014-10-24 15:17:05 +02:00
Barend Gehrels
bd4de457d8 [buffer][fix] fixes counter clockwise polygons 2014-10-24 15:02:55 +02:00
Barend Gehrels
b40c1096a4 [buffer][test] fix 3 testcase names 2014-10-24 14:20:15 +02:00
Barend Gehrels
d762543676 [buffer][test] add reported testcase which succeeds 2014-10-24 13:33:17 +02:00
Barend Gehrels
6280a2b67e [buffer] support buffer for degenerate polygons (pointlike, not enough points) 2014-10-24 13:12:10 +02:00
Barend Gehrels
fd75d83fd1 [buffer][fix] fix output for generated linestrings with two equal points only
It now simplifies first and removes second point if necessary. Also it is
defensive such that generation is stopped if length is 0.
Including unit tests.
2014-10-24 12:36:22 +02:00
Barend Gehrels
e4cd46ac5d [buffer] support degenerate linestrings containing one point. In that
case point-buffer is applied. Including updated unit tests
2014-10-24 11:21:32 +02:00
Barend Gehrels
98d8c88372 [buffer][test] remove redundant index 2014-10-15 11:59:18 +02:00
Barend Gehrels
94bd840102 [buffer][test] make labels for turns optional, for good turns and for bad turns 2014-09-24 16:47:29 +02:00
Barend Gehrels
a0d7a260dc [buffer][test] add failing test for which there is not yet a solution.
It is related to colocated turns and sorting
2014-09-24 16:46:41 +02:00
Barend Gehrels
2c84bb4d49 [buffer] block turns instead of discarding them
This fixes case rt_u11
New result of recursive_polygons_buffer: 2 errors out of 510372
2014-09-24 10:36:15 +02:00
Barend Gehrels
e02c82623a [buffer] add new failing testcases (now 9 out of 500000 fail for miter) 2014-09-17 16:53:55 +02:00
Barend Gehrels
8de1b4da16 [buffer] fix comment 2014-09-17 16:52:19 +02:00
Barend Gehrels
c55e000eef [buffer] small changes in comments/test svg 2014-09-17 16:32:25 +02:00
Barend Gehrels
9298ac2a2c [buffer] fix intersection points on border, equal points should not be checked
and correct order in call to side strategy
This fixes case rt_u10
2014-09-17 16:30:03 +02:00
Barend Gehrels
e3130b2f39 [buffer][test] added new failing testcase rt_u10 2014-09-10 15:45:32 +02:00
Barend Gehrels
e6043d9a5c [buffer] fix cases where intersection point falls between robust piece
and non-robust original. We now check robust representions of originals
where this cannot happen
This fixes rt_u9
This obsoletes turn_in_input
2014-09-10 15:33:44 +02:00
Barend Gehrels
fcd0c5b768 [buffer] helper_points (formerly called helper_segments) are now optional
and we rescale/finish the piece on the fly and not in a separate call
2014-09-10 13:05:13 +02:00
Barend Gehrels
e0b82cd47f [test] enable rt_u8 case and change comments 2014-09-10 11:01:21 +02:00
Barend Gehrels
6fcdf246e0 [test] comment update 2014-09-10 10:34:43 +02:00
Barend Gehrels
9b5a8dfb2f [buffer][test] add testcase rt_u8, currently still failing 2014-09-03 17:54:17 +02:00
Barend Gehrels
95d794e218 [buffer] fix order when multiple turns are colocated on the same point.
This replaces get_relative_order which was not effectively used anymore and
(most probably) get_left_turns.
This fixes case rt_u7
2014-09-03 17:53:21 +02:00
Barend Gehrels
c271df6a8b Merge branch 'feature/buffer' into develop
Conflicts:
	test/algorithms/buffer/polygon_buffer.cpp
2014-09-03 11:42:30 +02:00
Barend Gehrels
5b42d85326 [buffer][test] add testcase for ticket 10412 (Olivier) 2014-08-30 11:54:57 +02:00
Barend Gehrels
c42aeb4447 [buffer][fix] fix neighbour check in calculating turns. This fixes ticket 10398 2014-08-27 12:27:57 +02:00
Barend Gehrels
12b61c6a0f Merge branch 'develop' into feature/buffer 2014-08-27 11:34:07 +02:00
Barend Gehrels
7a7d5935d6 [buffer][test] add failing ticket 10398 2014-08-27 11:32:33 +02:00
Barend Gehrels
1830208b74 [buffer][test] Add rt_u7 which is currently failing because of tripled IP,
needing get_left_turn info again. Added debug info
2014-08-10 19:21:21 +02:00
Barend Gehrels
f98549f82d [buffer][test] Minor change in comments/whitespace 2014-08-10 15:34:33 +02:00
Barend Gehrels
9c3ca1e69a [buffer][test] improve piece labelling on round joins 2014-08-10 15:32:46 +02:00
Barend Gehrels
a7764c1b9e [buffer][fix] use taxicab distance instead of comparable distance
This is faster and avoids overflows. This fixes rt_u6
2014-08-10 15:32:07 +02:00
Barend Gehrels
31abd20829 [buffer][fix] Distinguish between "within" and "within_near_offsetted"
The last one might be offsetted by 1 due to integer rounding. It is not
selectable as a starting point but may be used for traversal
2014-08-10 14:15:04 +02:00
Barend Gehrels
6df7738d3a [buffer][fix] Fix turns which were only on helper-segments, they can be discarded.
This fixes rt_u3 and rt_u4 where a false interior ring was generated
2014-08-10 12:49:37 +02:00
Barend Gehrels
468c3dd36a [buffer][test] clean up old comments/cases 2014-08-10 00:03:15 +02:00
Barend Gehrels
a46e2603d8 [buffer][fix] In rare cases an extra ring was traversed and created. Fixed, that ring is
discarded now. This fixes behaviour of assign_parents with positive-rings in positive-rings (when
check_for_orientation is true; normally (for overlay) it is false)

It also reverses a negative-only ring so fixes a linestring_buffer testcase.

For multi-polygon it fixes new testcase rt_u2 found by recursive-polygon-buffer test
2014-08-09 23:51:42 +02:00
Barend Gehrels
6cf72447d1 [buffer][test] remove unused variable 2014-08-09 23:33:15 +02:00
Barend Gehrels
e1fc427e30 [buffer][fix] Mark points in buffered areas as not startable instead of discarding them
Within can have in rare cases a rounding issue. We don't discard this
point, so it can be used to continue started rings in traversal. But
will never start a new ring from this type of points.

This fixes p17
2014-08-06 13:27:52 +02:00
Barend Gehrels
a999baa01e [buffer][test] Exclude failing tests (Aimes),
include succeeding test (O1)
avoid reporting (false) self-intersection (aimes120)
2014-07-27 20:39:46 +02:00
Barend Gehrels
27b95ee544 [buffer][test] increased tolerance for aimes test
Most of them now succeed, with exception of 6 cases
2014-07-27 18:50:43 +02:00
Barend Gehrels
a94d0ce415 [buffer][test] enabled field_sprayer test, added aimes-167 test
Both tests are disabled for flat-ends for the same reason: flat ends should
be intersected with helper-segments too
2014-07-27 18:49:25 +02:00
Barend Gehrels
76bebeee6c [buffer][fix] don't check within concave helper pieces 2014-07-27 18:12:04 +02:00
Barend Gehrels
9467d5d060 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-07-27 17:13:13 +02:00
Barend Gehrels
4d05c94b94 [buffer][test] count only if self IP's are reported (has_self_intersection does
additional checks)
2014-07-27 17:12:01 +02:00
Barend Gehrels
710a0e4308 [buffer][test] enhanced svg debug display 2014-07-27 17:11:29 +02:00
Barend Gehrels
feccd380ee [buffer][fix] Fix limit for consideration as continue, as it was too high
(for Aimes test or in general cases using lat long)
Including addition of unit test (aimes181)
2014-07-27 17:07:32 +02:00
Menelaos Karavelas
cea3a65e7e [test][buffer] remove used local typedef 2014-07-27 13:48:49 +03:00
Barend Gehrels
f3c000aadd [buffer][test] comment one test case now failing because of other rescaling factor 2014-07-23 16:05:36 +02:00
Barend Gehrels
6b29736b6c [buffer][test] added missing includes (that depend on Boost.Test) 2014-07-23 15:14:38 +02:00
Barend Gehrels
1fa87bcbba [buffer][fix] to get a proper rescale policy, the buffer distance must be added 2014-07-23 15:13:16 +02:00