114 Commits

Author SHA1 Message Date
Barend Gehrels
13aa0b07db [geometry] Append without duplicates, fixed 3 calls 2014-02-19 11:18:20 +01:00
Barend Gehrels
98b4271ba4 [geometry] Added testcase for union with spike generated 2014-02-12 22:44:54 +01:00
Barend Gehrels
6900fdd46b [geometry] Fixed most of the remaining unit-tests
w.r.t. rescale changes
2014-02-12 12:38:48 +01:00
Barend Gehrels
8d202fd319 [geometry] Verified compatibility with/without robust rescaling
We now have the define BOOST_GEOMETRY_NO_ROBUSTNESS to avoid rescaling
(probably should be renamed)
2014-02-12 11:45:02 +01:00
Barend Gehrels
175032c841 [geometry] Integer coordinates are now not rescaled
which fixes corresponding tests
2014-01-17 19:58:31 +01:00
Barend Gehrels
75c1010ef1 [geometry] Fixed multi testcases w.r.t. rescaling to robust 2014-01-16 19:34:02 +01:00
Barend Gehrels
90b75b7640 Merge branch 'develop' into rescale_to_integer 2014-01-16 14:19:01 +01:00
Barend Gehrels
e3893d31ea [geometry] Modified #clips, caused by fix in touch
(note: this was modified to 4 in 9a9efcff89fb081babfc31f8a34cfb2c80386974,
18 dec 19:19:10 so this is effectively a reversal)
2013-12-19 22:43:26 +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
Adam Wulkiewicz
8f5aa8f236 [geometry] 2-parameter touches() properly dispatched for non-areal geometries, fixed sub_geometry::get() for multi geometries - const correctness 2013-12-15 03:43:07 +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
Barend Gehrels
3e5333a8c4 [geometry] Remove all trailing spaces (tests) 2013-12-05 19:38:32 +01: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
36acf71ab9 [geometry] fixed multi_for_each which requires a closing point (since WKT now always closes rings explicitly, few weeks ago)
[SVN r86592]
2013-11-09 11:22:57 +00:00
Bruno Lalande
cfeaaf0cab Made disjoint variant-aware.
[SVN r86523]
2013-10-30 12:03:54 +00:00
Barend Gehrels
ac40228b07 [geometry] Major bugfix: intersection problem(s) caused by robustness, reported in ticket 9081. Causes were inconsistent side information by floating point precision. We now switch to integer for a specific region (6 points) to have the side information consistent. This removes many separate robustness checks previously done in cart_intersect, which is now more simple and ~200 lines shorter. And it removes also some robustness checks in get_turn_info (probably more were actually needed by old approach). It also uses this system in handle_tangencies and enrich_intersection_points.
It now also used the passed side information in direction.hpp, which saves calculations and is shorter.
In the end the performance is similar.
One (of many) situations in ticket 9081 is added in multi unit tests.


[SVN r85867]
2013-09-24 14:18:13 +00:00
Barend Gehrels
32aa8ebd08 [geometry] Unit tests, updated float-versions due to differences in spikes in recent commit (August). This is not tested by default..
[SVN r85775]
2013-09-18 12:20:12 +00:00
Barend Gehrels
7d329b3582 [geometry] added bigobj for the failing MSVC tests
[SVN r85562]
2013-09-04 11:17:34 +00:00
Barend Gehrels
d1c4cb7b6d [geometry] avoid generation of spikes in overlays, this fixes ticket 8364 and 8365. Added unit tests for these tickets. These changes result in (at about 3 places) changes in the output-number-of-points, this is verified visually
[SVN r85451]
2013-08-24 22:53:43 +00:00
Barend Gehrels
fdccdbff5e [geometry] cleanup, removing MSVC proj-files where were for version 2005
[SVN r85375]
2013-08-17 15:43:41 +00:00
Barend Gehrels
018502c52c [geometry] adapted transform strategies, they have points now as member-template, and calculation-type as template. Similar to what was done for Distane. This commit includes updated tests/doc/examples
[SVN r85325]
2013-08-12 21:22:53 +00:00
Bruno Lalande
4246ea4217 Distance strategies no longer need to be parameterized with the point type(s).
[SVN r85040]
2013-07-14 22:54:43 +00:00
Bruno Lalande
22fff3f43b Made clear() variant-aware.
[SVN r82395]
2013-01-08 00:05:36 +00:00
Bruno Lalande
2a5b55ffe9 Made num_points variant-aware.
[SVN r82378]
2013-01-06 22:27:38 +00:00
Barend Gehrels
202f8db2b2 [geometry] updated traverse to avoid output of nearly empty rings, like in convert_rings. This also affects unit tests
[SVN r82020]
2012-12-16 13:26:21 +00:00
Barend Gehrels
129f6cf7dd [geometry] updated testsuite for difference, added test which checks convert_ring on inner-ring point-count
[SVN r82019]
2012-12-16 12:18:44 +00:00
Barend Gehrels
b1d571076a [geometry] added combinations point/ring, point/polygon, point/multi_polygon for disjoint and intersects (unit tests, multi)
[SVN r81957]
2012-12-14 22:31:19 +00:00
Barend Gehrels
a9d243b636 [geometry] Unit tests belonging to bugfix difference problem reported by H2 at Boost.Geometry list at 2012-09-14 and 2012-10-11
[SVN r80994]
2012-10-15 21:15:00 +00:00
Barend Gehrels
4db3b6b782 [geometry] added touch - unit tests
[SVN r78691]
2012-05-27 17:47:28 +00:00
Barend Gehrels
d2643ac319 [geometry] fixed disjoint (unit test) including release notes for this fix and older commits
[SVN r78686]
2012-05-27 15:17:29 +00:00
Barend Gehrels
4680355b30 [geometry] added test for multi/disjoint (with case to be fixed)
[SVN r78683]
2012-05-27 14:47:19 +00:00
Barend Gehrels
3ec807d8f8 [geometry] belonging to last commit, multi-unit tests
[SVN r77297]
2012-03-10 19:36:19 +00:00
Barend Gehrels
13495b06fc Boost.Geometry processed patch https://svn.boost.org/trac/boost/ticket/6166 for missing transformation
[SVN r77108]
2012-02-24 15:36:23 +00:00
Barend Gehrels
b3d5729e4d Boost.Geometry line/poly overlay (new for 1.49), bugfix (avoid degenerate lines with only one point, and sub-sort on operation in case of duplicate intersection points). Including unit test update.
Note, this also fixes two earlier unit tests with degenerate outputs.

[SVN r76978]
2012-02-11 17:10:17 +00:00
Barend Gehrels
47fcff59b3 Added several tests for ticket #6019, fixed now, and some other configurations
[SVN r76900]
2012-02-05 16:20:37 +00:00
Barend Gehrels
4eae3b5b37 Updated tests to latest fixes, within/large integers, correct now with int, removed wkt/iomanip by default
[SVN r76857]
2012-02-03 19:15:02 +00:00
Barend Gehrels
05ab4d557a Added empty_input_exception and applied for distance, length, area, perimeter
Removed exception for convex_hull because that can be handled (for now) by leaving output empty. To be decided what is the definitive (additional, optional) behaviour.

[SVN r76514]
2012-01-15 13:23:08 +00:00
Barend Gehrels
72518c78f7 Fixed convex_hull for empty geometries by throwing exception
[SVN r76488]
2012-01-14 14:44:21 +00:00
Barend Gehrels
61874e2c40 Updated copyrights 2010->2012
[SVN r76442]
2012-01-12 20:58:20 +00:00
Barend Gehrels
7cb0ae96fd Boost.Geometry update copyright -> 2012
[SVN r76390]
2012-01-09 21:56:08 +00:00
Bruno Lalande
2a0816ae25 Fixed a regression in dispatch::distance on the strategy reversal.
[SVN r76217]
2011-12-28 23:55:33 +00:00
Mateusz Loskot
88b87f23a5 [geometry] Fix typos. Refs #6003.
[SVN r76151]
2011-12-25 17:33:34 +00:00
Barend Gehrels
4be8f12c77 Fixed (mostly multi)tests for wkt update
[SVN r76016]
2011-12-17 12:34:39 +00:00
Mateusz Loskot
8fbb9b3655 Boost.Geometry:
* Catch up with r75977 changes with new layout of IO formats in geometry/io/<FORMAT>/ 
* General maintenance in tests and examples.

[SVN r75979]
2011-12-16 01:45:22 +00:00
Barend Gehrels
679191f951 Linestring/polygon overlay, unit tests for phase 9
[SVN r75689]
2011-11-27 12:07:34 +00:00
Barend Gehrels
0e50b5fbb5 Linestring/polygon overlay, unit tests for phase 6
[SVN r75575]
2011-11-20 14:55:09 +00:00
Barend Gehrels
eaa06c9bc0 Linestring/polygon overlay, unit tests for phase 5
[SVN r75571]
2011-11-20 13:03:59 +00:00
Barend Gehrels
df109fa58b Linestring/polygon overlay, unit tests for phase 4
[SVN r75569]
2011-11-20 12:35:28 +00:00
Barend Gehrels
f4285dc59e Fixed order-problem by avoiding argument reversion. See correspondence on GGL mailing list 2011/10/25 --> added testcases for the other case described as "Say the MP is the 2 squares below and P is the blue-ish rectangle."
[SVN r75119]
2011-10-25 20:11:28 +00:00
Barend Gehrels
52ef3c8354 Fixed order-problem by avoiding argument reversion. See correspondence on GGL mailing list 2011/10/25 --> added testcases for the reported failure
[SVN r75118]
2011-10-25 19:56:58 +00:00