Adam Wulkiewicz
95ffd9efbc
[strategies] Relocate CS-specific winding strategies.
2017-08-22 01:11:51 +02:00
Adam Wulkiewicz
74f13547be
[strategies] Update intersection and within strategies after change in winding strategy.
2017-08-22 00:33:39 +02:00
Adam Wulkiewicz
9f4682403e
[strategies] Fix winding strategy for specific cases in spherical and geographic.
...
Implement as separate strategies per CS: cartesian_winding,
spherical_winding and geographic_winding. The last one taking Geodesic
FormulaPolicy and Spheroid (interface consistent with other geographic
strategies).
Leave agnostic winding strategy for backward compatibility, sort of
because SideStrategy parameter was removed so it's compatible with Boost
1.63 and below. Internally using one of the above strategies.
2017-08-22 00:28:08 +02:00
Adam Wulkiewicz
11ce2ac02e
[algorithms] Fix direction_code different Point types handling and unused variable warning.
2017-08-14 17:39:18 +02:00
Adam Wulkiewicz
98b8821be6
[sectionalize] Add full namespace to function call (mingw workaround).
2017-08-02 02:52:02 +02:00
Adam Wulkiewicz
35897a6a81
Merge pull request #412 from awulkiew/fix/algorithms_side_strategy
...
Geographic coordinate system related fixes.
2017-07-31 18:30:25 +02:00
Adam Wulkiewicz
e7463b35f0
[buffer][overlay] Fix get_turns/secionalize/partition for non-cartesian CS.
...
- Handle longitudes differently in section_functions preceding() and
exceeding().
- Calculate directions in sectionalize differently for longitudes.
- Update buffer and get_turns due to the above changes.
2017-07-27 03:31:35 +02:00
Adam Wulkiewicz
925b715f4d
[algorithms] direction_code(): Add support for non-cartesian CSes.
2017-07-21 03:36:15 +02:00
Adam Wulkiewicz
6519f7a411
[strategies] Fix geographic area strategy for sphere (a==b), error being NaN result.
2017-07-20 18:27:11 +02:00
Adam Wulkiewicz
77c54c50d9
[algorithms] Fix direction_code for very close coordinates and use it in point_is_spike_or_equal to fix it too.
2017-07-18 14:38:19 +02:00
Adam Wulkiewicz
7dcba58943
[algorithms] Use user-defined side strategy in various algorithms
...
... instead of using the default one created internally.
It affects buffer, is_simple, is_valid, is_convex, point_on_surface,
remove spikes and various overlay algorithms.
2017-07-14 16:13:38 +02:00
Barend Gehrels
8012d17ca6
Merge branch 'feature/intvalid' into develop
2017-07-05 17:08:52 +02:00
Barend Gehrels
de8273ab92
[is_valid] fix, using touch_only information, and checking border_point
...
instead of touching point
2017-07-05 14:37:29 +02:00
Adam Wulkiewicz
a51a331df9
Merge pull request #405 from awulkiew/feature/area_strategy
...
Add missing propagation of area strategy in buffer, is_valid and overlay.
2017-07-05 13:51:43 +02:00
Adam Wulkiewicz
0b62b81fb4
Merge pull request #403 from awulkiew/fix/non_cart_intersection
...
Handle degenerated segments near poles in spherical and geographic intersection strategies.
2017-07-05 13:51:31 +02:00
Barend Gehrels
4ccd4e43ce
[is_valid] add extra info to turn to determine validity
...
Including unit test adaptions. Results are verified visually with SVG
2017-07-05 13:06:15 +02:00
Adam Wulkiewicz
a2168a97d9
[overlay] Add missing const&.
2017-07-04 16:03:54 +02:00
Adam Wulkiewicz
e241a9a0b3
Merge pull request #408 from vissarion/patch-3
...
Fix problematic initialization of strategy passed as contant reference
2017-07-04 17:02:52 +03:00
Adam Wulkiewicz
a911872bf5
[disjoint] Remove unwanted double ;
2017-07-04 15:58:05 +02:00
Adam Wulkiewicz
41cb466a34
Merge pull request #406 from vissarion/patch-1
...
Fix uninitialized variable in topology check of multilinestrings
2017-07-04 16:55:53 +03:00
Vissarion Fisikopoulos
b6bfbe514a
Update get_turn_info_helpers.hpp
2017-07-04 11:17:13 +03:00
Vissarion Fisikopoulos
bcae6f1e81
Update box_box.hpp
2017-07-04 09:58:05 +03:00
Vissarion Fisikopoulos
7ad0c0b8ff
Update topology_check.hpp
2017-07-04 09:38:49 +03:00
Adam Wulkiewicz
47e5cf5c96
[extensions][dissolve] Use area strategy got from intersection strategy.
2017-07-04 04:48:13 +02:00
Adam Wulkiewicz
8a12ebdb69
[buffer][is_valid][overlay] Use area strategy got from intersection strategy.
2017-07-04 04:45:37 +02:00
Adam Wulkiewicz
4122cab822
[correct] Allow passing area strategy into correct().
2017-07-04 04:42:13 +02:00
Adam Wulkiewicz
1026f9fd36
[strategies] Handle degenerated segments near poles in spherical and geographic intersection strategies.
2017-07-02 19:04:12 +02:00
Adam Wulkiewicz
0a56ddd654
[formulas] Fix VS std::max compilation error in vertex_longitude.
2017-06-30 17:00:00 +02:00
Barend Gehrels
60c9b096b1
Merge branch 'feature/intvalid' into develop
...
# Conflicts:
# include/boost/geometry/algorithms/intersects.hpp
# include/boost/geometry/algorithms/touches.hpp
2017-06-27 20:33:46 +02:00
Barend Gehrels
58e1c0bc51
[is_valid] remove false negatives from two touching interior rings
2017-06-25 17:18:26 +02:00
Barend Gehrels
c7c4800ca6
[is_valid] remove false negatives from two touching exterior rings, touching
...
each other at the touching point of an interior ring
2017-06-25 16:59:34 +02:00
Barend Gehrels
7ada36fab2
[overlay] remove debug code, submitted by accident
2017-06-25 14:17:51 +02:00
Barend Gehrels
ee3f5ea20d
[union] fix generating of false interiors by checking count_left
2017-06-25 13:56:01 +02:00
Barend Gehrels
4a116eb66e
[overlay] fix layout
2017-06-25 13:04:23 +02:00
Barend Gehrels
bfc3785cad
[overlay] Dont consider turns already discarded
2017-06-25 12:10:17 +02:00
Barend Gehrels
16213a6b1d
[union] Fix handling unions with 3 or more open spaces, where it
...
needs to check region ids to select the right to continue with
2017-06-25 12:04:49 +02:00
Barend Gehrels
e36f96d13c
[overlay] Prepare aggregation to be used for unions too
2017-06-25 11:28:34 +02:00
Barend Gehrels
63ee8f1fea
[overlay] Dont discard any self-turns in clusters
2017-06-25 11:27:19 +02:00
Barend Gehrels
6f55525db5
[traverse] remove is_touching as a reference parameter in several
...
methods, was not used anymore
2017-06-14 12:16:34 +02:00
Barend Gehrels
f832c2d334
[traverse] move reversal to union itself to finetune that later,
...
and pass open_count
2017-06-14 12:10:17 +02:00
Barend Gehrels
2ac50e8b3d
[overlay] split sourcefile, extract patterns
2017-06-14 11:37:24 +02:00
Barend Gehrels
437be1b2b0
[overlay] fix cases with mixed operations (no testcase)
2017-06-14 10:29:15 +02:00
Barend Gehrels
604be619d9
[overlay] fix aggregations, include blocked as from
2017-06-14 10:28:47 +02:00
Barend Gehrels
412fc452da
[overlay] Relax case 2, allow both continue and intersection
...
Fixes new #case_recursive_boxes_53
2017-06-13 20:29:25 +02:00
Barend Gehrels
31b2a89c6d
[overlay] remove duplicate condition
2017-06-13 20:18:51 +02:00
Barend Gehrels
2dbc55ed7d
[dissolve] fix compilation errors reported by Johan
2017-06-12 20:30:09 +02:00
Barend Gehrels
3cd4f325ec
[traverse] fix another similar case #case_137_multi now with two
...
different outgoing arcs
2017-06-07 22:48:18 +02:00
Barend Gehrels
9993d3697f
[traverse] fix cases where touching interior/exterior is approached
...
from two different directions, and leave in one direction
2017-06-07 22:35:44 +02:00
Barend Gehrels
ef22284629
[traverse] refactor new method to make more options
2017-06-07 22:28:57 +02:00
Barend Gehrels
bf159328e5
[traverse] fix errors in isolation detection in switch detector by
...
taking clusters into account
2017-06-07 15:20:35 +02:00