Barend Gehrels
4a5b85c870
[geometry] Collinear touch now also uses new unified method
...
This fixes the holes_intersect_and_touch case
NOTE: method should now be renamed, not ...two_intersection_points
2013-12-19 22:38:52 +01:00
Barend Gehrels
9a9efcff89
[geometry] Work in progress: factor (rational) instead of distance
...
This is a large commit. It replaces enriched.distance with factor. Factor
is based on integer calculations, calculated in cart_intersect, from the
passed robust points, so always trustable.
We had to do this because without certain tests failed because of FP
problems with distance (calculated with FP).
This commit also greatly simplifies relate_collinear, where most things and checks
are replaced by simple unified calculations. This is also based on robust
fractions (but could have been done earlier).
Many (but not all) testcases commented in previous commit are now uncommented
again, they now work thanks to the fractions. There are also testcases
uncommented which now work correctly using clang/Linux
This commit breaks compiling disjoint (because of rescale), and running buffer
(also because of rescale), and some more (probably all because or rescaling),
this has to be fixed soon after.
2013-12-18 19:19:10 +01:00
Barend Gehrels
107621943d
[geometry] Use robust determinant for comparisons
...
This breaks one extra testcase which should be verified later
2013-12-14 19:49:35 +01:00
Barend Gehrels
c173233efa
[geometry] Propagated rescale_policy further / from earlier phase
2013-12-14 19:45:21 +01:00
Barend Gehrels
ff7cb5c21e
Merge branch 'develop' into rescale_to_integer
2013-12-14 13:38:28 +01:00
Barend Gehrels
d988e1ac93
[geometry] Work in progress: rescaling to robust-type
...
A robust type is integer for float/double. The rescaled points will only
be used for side-information and equality and distance-comparisons, not
to calculate the intersection points themselves.
Currently the code is #ifdefed
2013-12-14 13:25:46 +01:00
Adam Wulkiewicz
a238da019b
[geometry] added touches(Ls, Poly), added details for other combinations of linear-areal geometries
2013-12-14 04:01:32 +01:00
Adam Wulkiewicz
f78626b0f2
[geometry] added parameters reversal for touches()
2013-12-11 17:28:52 +01:00
Adam Wulkiewicz
ce263c3968
[geometry] added some tests for touches(Ls,Ls)
2013-12-11 12:07:27 +01:00
Adam Wulkiewicz
5b417cc66b
[geometry] touches(Ls,Ls) algorithm modified
2013-12-11 11:47:16 +01:00
Adam Wulkiewicz
8d690ff164
[geometry] added touches(Ls, Ls) + tests
2013-12-11 02:08:54 +01:00
Adam Wulkiewicz
f95efb34ee
[geometry] added tests for touches(Pt, MLs) and touches(Pt, MPoly), fixed error in point_in_geometry(Pt, MLs), fixed error in within(Pt, MLs) tests
2013-12-11 01:42:25 +01:00
Adam Wulkiewicz
437c94ad77
added touches(Point, Geometry)
2013-12-11 00:24:16 +01:00
Adam Wulkiewicz
ffa81b45e0
[geometry] added tests for intersects()
2013-12-08 14:42:17 +01:00
Adam Wulkiewicz
8ef20f9f88
added disjoint() for previously non-supported Geometries
2013-12-08 13:20:01 +01:00
Adam Wulkiewicz
5436fb2cfa
added within() and covered_by() for Pt-Ls and Pt-MLs, fixed error in point_in_geometry for MLs
2013-12-08 12:36:31 +01:00
Barend Gehrels
1b3edc3e0d
[geometry] unit-test, made par const and ignore it
2013-12-07 11:39:21 +01:00
Barend Gehrels
32eb7090d5
[geometry] Use rescale_policy in enrich_intersection_points and sectionalize
...
Also in get_turns forward them further up to point-comparison
2013-12-07 11:36:42 +01:00
Barend Gehrels
3e5333a8c4
[geometry] Remove all trailing spaces (tests)
2013-12-05 19:38:32 +01:00
Barend Gehrels
626ed1a0e7
[geometry] Remove trailing spaces.
...
For the rest this commit contains nothing.
2013-12-05 19:22:36 +01:00
Barend Gehrels
75d078aaed
[geometry] added RescalePolicy template-parameter.
...
Where that was applied and possible, moved template-parameter to methods
instead of to classes.
This is a large commit, but contains no functional changes.
2013-12-05 19:20:54 +01:00
Barend Gehrels
a0d3f209d2
[geometry] Avoid generating any SVG, by default, in unit tests
2013-12-04 12:33:06 +01:00
Barend Gehrels
ab869aa7b8
[geometry] Comment failing test: centroid in release-mode
2013-12-04 12:28:07 +01:00
Barend Gehrels
e5340158ac
[geometry] Moved template parameters in sectionalize, preparing for following changes
2013-12-04 12:27:22 +01:00
Barend Gehrels
7ec437a51b
[geometry] Added testcase for mailed supposed error. Moved pie-test to header conform other testcases
...
[SVN r86769]
2013-11-19 21:12:50 +00:00
Bruno Lalande
fb3ec9de1f
Made reverse algorithm variant-aware.
...
[SVN r86678]
2013-11-13 14:53:37 +00:00
Bruno Lalande
128ebab54c
Made remove_spikes variant-aware.
...
[SVN r86634]
2013-11-12 07:52:06 +00:00
Barend Gehrels
4250868b59
[geometry] fixed self_intersection_points unit test for clang, added missing include
...
[SVN r86628]
2013-11-11 22:55:47 +00:00
Barend Gehrels
1088afb1be
[geometry] Fixed self-turn points, neighboring function in get_turns did have the wrong meta-function. Also cleaned corresponding unit tests / added test cases for reported error (reported by Joan on mailing list)
...
[SVN r86627]
2013-11-11 22:36:57 +00:00
Bruno Lalande
d951f4ea72
Made perimeter algorithm variant-aware.
...
[SVN r86619]
2013-11-11 16:29:00 +00:00
Bruno Lalande
1799ee4777
Made within algorithm variant-aware.
...
[SVN r86606]
2013-11-10 23:07:59 +00:00
Barend Gehrels
52867f02ee
[geometry] fixed WKT errors in convert-unit-tests. We now check extra on num_points
...
[SVN r86596]
2013-11-09 11:52:56 +00:00
Barend Gehrels
6d87fb3858
[geometry] fixed for_each which requires a closing point for its polygon (since WKT now always closes rings explicitly, few weeks ago)
...
[SVN r86593]
2013-11-09 11:27:55 +00:00
Barend Gehrels
ae4326c196
[geometry] fixed multi_simplify test which suffered from too many decimals in the test-output
...
[SVN r86591]
2013-11-09 11:18:34 +00:00
Barend Gehrels
ca7e072221
[geometry] added tests for point_on_surface for multipolygons
...
[SVN r86590]
2013-11-09 10:58:51 +00:00
Bruno Lalande
e3cfaf6470
Tests for variant aware envelope.
...
[SVN r86585]
2013-11-08 08:16:21 +00:00
Barend Gehrels
42c3e28ff7
[geometry] fixed ticket 8310, disjoint did give the wrong results. Fixed using point_on_surface. Added unit test. Also tests for overlay algorithms because they might suffer from the same problem
...
[SVN r86579]
2013-11-06 22:42:02 +00:00
Barend Gehrels
ee6140f274
[geometry] point_on_surface, update for linux/clang
...
[SVN r86555]
2013-11-03 21:11:54 +00:00
Barend Gehrels
cbafc2398a
[geometry] added point_on_surface, developed last summer to SVN
...
[SVN r86554]
2013-11-03 21:00:34 +00:00
Barend Gehrels
28d1a9cf3a
[geometry] Added real-life testcase for simplify
...
[SVN r86549]
2013-11-03 17:33:00 +00:00
Barend Gehrels
3b68b369dd
[geometry] fixed strategy type, reported by Menelaos on the list
...
[SVN r86535]
2013-11-01 14:54:58 +00:00
Bruno Lalande
982c60d4f1
Made envelope variant-aware.
...
[SVN r86531]
2013-10-31 21:01:21 +00:00
Bruno Lalande
cfeaaf0cab
Made disjoint variant-aware.
...
[SVN r86523]
2013-10-30 12:03:54 +00:00
Bruno Lalande
f8408c546f
Made covered_by variant-aware.
...
[SVN r86461]
2013-10-26 21:37:49 +00:00
Barend Gehrels
ba2911a199
[geometry] removed unused variables in unit test
...
[SVN r86451]
2013-10-26 13:21:47 +00:00
Barend Gehrels
cee8a0506c
[geometry] Added remove_spikes as an algorithm. The first version was already in extensions (for years), that is removed now. The new version works using the recent point_is_spike_or_equal
...
[SVN r86450]
2013-10-26 13:18:11 +00:00
Bruno Lalande
73e9c494b7
Made 'correct' variant-aware.
...
[SVN r86414]
2013-10-24 06:10:34 +00:00
Bruno Lalande
e2f11f015d
Converted convex_hull to the multi-stage approach and made it variant-aware.
...
[SVN r86401]
2013-10-23 10:13:28 +00:00
Barend Gehrels
3a6ae0bacb
[geometry] revised solution for robustness, we don't go to integer which was shortly done. This is partly a revert of r85867, where we scaled to integer. Now we make side information consistent by iteratively selecting a larger epsilon. This will be moved into a separate class. All tests pass now, also the complete ticket_9081 test which failed before
...
[SVN r86368]
2013-10-20 15:30:21 +00:00
Barend Gehrels
f85d454d9d
[geometry] fixed tests for clang >= 3.2 w.r.t. std::abs and unsigned
...
[SVN r86358]
2013-10-18 20:48:31 +00:00