42 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
175032c841 [geometry] Integer coordinates are now not rescaled
which fixes corresponding tests
2014-01-17 19:58:31 +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
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
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
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
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
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
9dc22e4a06 Added support for point-output
[SVN r74163]
2011-08-30 15:56:05 +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
3d058b87d7 Marked some tests as not being for Intel (for 600 s limit)
Added (commited) select_rings
Removed dissolver from solution
Added optional offset for interior_triangles.cpp


[SVN r70582]
2011-03-26 18:48:23 +00:00
Barend Gehrels
5f9e611621 Ignore number of vertices for case 78
[SVN r70072]
2011-03-17 17:33:15 +00:00
Barend Gehrels
9d68c93eaa Updates in test for partition addition
[SVN r69944]
2011-03-13 14:48:00 +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
2b76e79643 Added another testcase for hole in multiple produced rings
[SVN r69588]
2011-03-05 23:28:44 +00:00
Barend Gehrels
86c175287c Added ttmath_big for multi (all but within) plus all vcproj files
[SVN r69342]
2011-02-27 18:08:17 +00:00
Barend Gehrels
e0a240b770 Renamed linear_ring to ring (linear_ring is still available)
[SVN r68387]
2011-01-23 16:20:01 +00:00
Barend Gehrels
e5946e5068 Updated more tests to "open-ness"
[SVN r67414]
2010-12-22 17:45:14 +00:00
Barend Gehrels
a1963d328a Added multi/closure.hpp
Added point_order/closure/difference to robustness tests (partly)

[SVN r67397]
2010-12-21 21:44:38 +00:00
Barend Gehrels
710d24b44d Update testcases to ccw
Added point_order to some multi-testcases, now explicitly necessary

[SVN r67375]
2010-12-20 21:33:48 +00:00
Barend Gehrels
43682f9029 Updates in test, cases for box/ccw are handled now
[SVN r67322]
2010-12-19 12:19:10 +00:00
Barend Gehrels
e672af1e8f Updated tests for new reverse behaviour
[SVN r67304]
2010-12-18 17:04:45 +00:00
Barend Gehrels
1c8fce3059 model namespaces, moved point_xy to d2::point_xy, revised point_ll_deg to ll::point<degree>
[SVN r66975]
2010-12-02 16:10:47 +00:00
Barend Gehrels
e4f47a7a25 Major update:
Adaptions to test with respect to new namespace model
Removed GMP/CLN and, where it was present, replaced by TTMATH
Small fix in comparable_distance test
All testfiles use bg as alias now

[SVN r66811]
2010-11-28 13:28:09 +00:00
Barend Gehrels
e71fb07566 Assemble/traverse/enrich: complete update for handling self tangencies
-> added many testcases

Various updates in testcases for support of open polygons
recursive_boxes.cpp, added triangles as well (dropped corner)

[SVN r66450]
2010-11-08 10:32:23 +00:00
Barend Gehrels
bdb6f4da34 Added forgotten typename for gcc
[SVN r65940]
2010-10-13 14:29:03 +00:00
Barend Gehrels
d36962b53d Refreshed get_turns: removed is_multi, moved pieces to implementation, shared things, implemented for multi
Made orientation for linear intersections flexible (because doesn't care)
There is now clipping (intersection box/geometry) for multi_polygon and multi_linestring


[SVN r65938]
2010-10-13 13:45:54 +00:00
Barend Gehrels
71d48da6e0 Implemented box with reverse polygon overlay
[SVN r65932]
2010-10-12 20:27:49 +00:00
Barend Gehrels
6564152e98 Finished ccw implementation of intersection
Added mpl assert for correct, if not implemented
Restructured intersection.cpp unit test to support cw


[SVN r65920]
2010-10-12 10:39:09 +00:00
Barend Gehrels
5491a20c45 Updated (+fixed) testcase for intersection of areal features
[SVN r65893]
2010-10-10 19:54:34 +00:00
Barend Gehrels
73fd9c49de Added multi_linestring of intersections
Changed intersection dispatching using is_areal

[SVN r65892]
2010-10-10 19:47:31 +00:00
Barend Gehrels
cdcdf70b94 Fixed changed include path
[SVN r61571]
2010-04-26 10:04:53 +00:00
Barend Gehrels
1108f3cab3 Move overlay -> detail/overlay phase 2, moving files and adapting includes
[SVN r61544]
2010-04-24 16:57:53 +00:00
Barend Gehrels
cead073c84 Added libs/geometry/test folder with many tests
[SVN r59773]
2010-02-20 15:03:37 +00:00