Menelaos Karavelas
6fb6863711
[test][algorithms][intersection] add one more test case
2015-09-03 20:01:12 +03:00
Menelaos Karavelas
979b6cda7c
[test][algorithms][intersection] add messages in debug mode
2015-09-03 20:00:43 +03:00
Menelaos Karavelas
a19ef71c5e
[test][algorithms][difference] add one more test case for difference(L,A)
2015-09-03 15:34:49 +03:00
Menelaos Karavelas
267b54a2ca
[test][algorithms][intersection] add more test cases for intersection(L,A)
2015-09-03 15:06:25 +03:00
Menelaos Karavelas
ce7bf46d35
[test][algorithms][difference] add more test cases for difference(L,A)
2015-09-03 15:05:15 +03:00
Menelaos Karavelas
290688c502
[algorithms][difference][intersection] modify intersection and difference algorithm
...
for L and A geometries to keep (instead of discarding) spikes of liear geometries
2015-09-03 15:04:00 +03:00
Barend Gehrels
45f32bee3b
[handle_touch] process operation_continue and added corresponding testcases,
...
and test cases having u/u from union_multi.cpp
2015-09-02 16:09:49 +02:00
Barend Gehrels
16967cc7f8
[overlay] add handle_touch to examine u/u turns
...
First phase: check if a u/u turn should be traversed or discarded, including
unit test
2015-09-02 14:27:19 +02:00
Jeremy W. Murphy
a830e16723
Split pj units at divisor, support fractional multipliers.
...
Use std::atof rather than global namespace atof.
2015-08-30 18:41:41 +10:00
Adam Wulkiewicz
5daa5a78a3
Merge branch 'develop' into fix/rtree_eps2
2015-08-25 16:43:47 +02:00
Adam Wulkiewicz
3dd8d1e689
Merge pull request #320 from awulkiew/fix/box_eps
...
Different approach for handling Boxes WRT machine epsilon
2015-08-25 16:40:55 +02:00
Adam Wulkiewicz
e293838a50
[test][index][rtree] Remove unused variable.
2015-08-23 15:03:18 +02:00
Adam Wulkiewicz
e090eb5681
[test][index] Add rtree spatial query epsilon-related test.
2015-08-23 15:03:18 +02:00
Adam Wulkiewicz
d69702c492
[test][example][index] Update rtree tests and example WRT latest changes related to epsilon handling.
2015-08-23 15:03:17 +02:00
Adam Wulkiewicz
069316c591
[extensions][nsphere][index] Update index-related nsphere code accoring to the latest changes in the rtree.
2015-08-23 15:03:16 +02:00
Adam Wulkiewicz
1084a124de
[index] Enlarge leafs' boxes WRT epsilon for non-Box Values.
2015-08-23 15:03:16 +02:00
Adam Wulkiewicz
342306bf9e
[index] Add values_box() and is_leaf_element.
...
The function values_box() enlarges the box WRT epsilon if the elements are
not of bounding geometry type, so Point or Segment.
2015-08-23 15:03:15 +02:00
Adam Wulkiewicz
f39d37f195
[index] Add is_bounding_geometry and relocate is_indexable.
2015-08-23 15:03:15 +02:00
Adam Wulkiewicz
0addcbb330
[math] In detail::scaled_epsilon call detail::abs instead of math::abs.
2015-08-22 17:36:54 +02:00
Adam Wulkiewicz
4a15918915
[extensions][nsphere][relops] Use raw comparison operators instead of math:: functions.
2015-08-21 20:00:13 +02:00
Adam Wulkiewicz
035a49d417
[extensions][sections] Use raw comparison operators instead of math:: functions.
2015-08-21 19:59:40 +02:00
Adam Wulkiewicz
51591ea883
[test][intersection] Remove tests checking the handling of epsilon for Boxes.
2015-08-21 19:57:32 +02:00
Adam Wulkiewicz
0401f58a78
[test][relops] Remove tests checking the handling of epsilon for Boxes.
2015-08-21 19:56:57 +02:00
Adam Wulkiewicz
3dcfb86cb9
[touches] For Box/Box use operators (e.g. < instead of math::smaller).
2015-08-21 19:54:57 +02:00
Adam Wulkiewicz
0d5c18ea56
[overlaps] For Box/Box use operators (e.g. < instead of math::smaller).
2015-08-21 19:54:28 +02:00
Adam Wulkiewicz
7636aa1a9e
[intersection] For Box/Box use operators (e.g. < instead of math::smaller).
2015-08-21 19:54:02 +02:00
Adam Wulkiewicz
c8e65b5082
[within][strategies] For Point/Box and Box/Box use operators (e.g. < instead of math::smaller).
2015-08-21 19:53:18 +02:00
Adam Wulkiewicz
b3c9d963a3
[disjoint] For Point/Box and Box/Box use operators (e.g. < instead of math::smaller).
2015-08-21 19:52:11 +02:00
Adam Wulkiewicz
b22a3c0530
[sections] Enlarge section bounding Boxes WRT epsilon.
...
This allows the algorithms using sections to check spatial predicates
using raw operators < (e.g. in Box/Box disjoint). There is no need to
use less performant calls to math::smaller.
Replace math::smaller usage in section functions preceeding() and
exceeding() and therefore revert the change done recently.
2015-08-21 19:41:01 +02:00
Adam Wulkiewicz
d248323369
[math][algorithms] Add expand_by_epsilon()
...
Add math::scaled_epsilon().
Optimize math::smaller().
2015-08-21 19:38:51 +02:00
Adam Wulkiewicz
8f7af3cf63
Merge pull request #319 from awulkiew/fix/nan_coordinates
...
Take special care of NaN coordinates in relate for MultiLinestring
2015-08-20 14:05:15 +02:00
Adam Wulkiewicz
0d04ad21b8
[test][views][geometries][arithmetic] Rename tests to match categories.
2015-08-19 04:10:25 +02:00
Adam Wulkiewicz
7aa3dd47f8
Merge pull request #318 from awulkiew/fix/box_eps
...
Take into account machine epsilon when handling Boxes in various algorithms.
2015-08-19 02:41:26 +02:00
Adam Wulkiewicz
31533ddf96
[test][relate] Add tests for geometries containing NaN coordinates.
2015-08-14 17:58:01 +02:00
Adam Wulkiewicz
12ba76ff70
[relate][util] Take special care about NaN coordinates in relate for MultiLinestring.
...
In places where a check must be performed, if a Point is one of the
endpoints of a Linestring contained in a MultiLinestring, std::sort() and
std::equal_range() algorithms are used. With MSVC the assertion in
std::equal_range() fails if the elements cannot be reliably compared, i.e.
in the case when Points has NaN coordinates.
Add has_nan_coordinate() utility and use it in boundary_checker and
topology_check in relate() implementation.
2015-08-14 17:50:31 +02:00
Adam Wulkiewicz
37eded96ce
[test][overlaps][touches] Make the failure message consistent with other relops tests.
2015-08-13 21:44:20 +02:00
Adam Wulkiewicz
8ba5a7f02a
[touches] Remove spaces according to coding guidelines.
2015-08-13 21:42:37 +02:00
Adam Wulkiewicz
c9076d59b0
[doc] Add 1.60 release notes (ticket, bug).
2015-08-13 21:17:19 +02:00
Adam Wulkiewicz
b741c36c34
[test][index] Add a test of rtree inserts and removes for various parameters.
2015-08-13 21:09:52 +02:00
Adam Wulkiewicz
8fcbb8e370
[index] Fix the removal of value from an empty rtree.
...
- Instead of assertion failure there is no effect and 0 is returned.
- Handle the NULL root in a similar way in insert, remove and count.
- Add runtime asserts.
2015-08-13 21:02:30 +02:00
Adam Wulkiewicz
098279e739
[index] Fix rtree removal for min elements == 1
...
Support 0-element range in elements_box() helper function.
Handle special case in remove visitor - root node containing 0 elements after underflow.
2015-08-13 00:44:33 +02:00
Adam Wulkiewicz
16981823a9
[test][touches] Add Box/Box case testing machine epsilon handling.
2015-08-05 01:12:19 +02:00
Adam Wulkiewicz
e20af985e5
[test][overlaps] Add Box/Box case testing machine epsilon handling.
2015-08-05 01:11:34 +02:00
Adam Wulkiewicz
5e3a5e9d0e
[test][disjoint] Add Pt/Box and Box/Box cases testing machine epsilon handling.
2015-08-05 01:10:49 +02:00
Adam Wulkiewicz
63eac9383e
[test][within] Add Pt/Box and Box/Box cases testing machine epsilon handling.
2015-08-05 01:10:28 +02:00
Adam Wulkiewicz
2404a20c64
[test][covered_by] Add Pt/Box and Box/Box cases testing machine epsilon handling.
2015-08-05 01:10:09 +02:00
Adam Wulkiewicz
81305a79a1
[test][intersection] Add Box/Box case testing machine epsilon handling.
2015-08-05 01:08:21 +02:00
Adam Wulkiewicz
154650f8d0
[test][union] Enable testing of a case also when rescaling is disabled.
...
Fix unused parameter warning.
2015-08-05 01:04:15 +02:00
Adam Wulkiewicz
908ac29ecb
[test][get_turns] Add test case for L/L.
2015-08-05 01:03:42 +02:00
Adam Wulkiewicz
94b198e23f
[extensions][iterators] In section_iterator take into account machine epsilon.
2015-08-05 01:02:17 +02:00