Commit Graph

24 Commits

Author SHA1 Message Date
Adam Wulkiewicz
188b1c3e48 [test] Fix unused typedef warnings 2014-06-03 16:20:11 +02: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
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
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
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
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
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
3ec807d8f8 [geometry] belonging to last commit, multi-unit tests
[SVN r77297]
2012-03-10 19:36:19 +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
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
61874e2c40 Updated copyrights 2010->2012
[SVN r76442]
2012-01-12 20:58:20 +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
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
Mateusz Loskot
b46bc26858 [geometry] Restructured WKT io files to follow structure of: geometry/domains/<DOMAIN>/io/<FORMAT>/<read|write>.hpp
[SVN r75076]
2011-10-20 23:20:05 +00:00
Barend Gehrels
c94bba95fe Changes intersection tests because output is unique now.
[SVN r73319]
2011-07-24 09:08:26 +00:00
Barend Gehrels
dbd742cbff Mention all geometry headerfiles explicitly in examples (according to doc)
[SVN r71821]
2011-05-08 14:38:45 +00:00
Barend Gehrels
a01c615089 Made copyright notices in libs/geometry consistent
[SVN r70876]
2011-04-02 20:33:14 +00:00
Barend Gehrels
86422d59b5 Reflect changes on make/inserter
[SVN r70825]
2011-04-01 16:54:09 +00:00
Barend Gehrels
c1b1b4a6c7 Moved wkt (used in nearly all tests) from extension to domains tree for release
[SVN r69906]
2011-03-12 23:53:18 +00:00
Barend Gehrels
251642e5b3 Added tests for empty polygons in intersection,union,difference
Added testfiles for multi_difference.cpp, multi_transform.cpp
Added program options in robusness tests


[SVN r69570]
2011-03-04 21:43:58 +00:00