3416 Commits

Author SHA1 Message Date
Adam Wulkiewicz
135b9264fd [test] Fix test case in sort_by_side and gcc variadic macros compilation error. 2021-08-02 16:49:37 +02:00
Adam Wulkiewicz
efff23114a [test] Fix static asserts by passing types. 2021-07-30 19:06:29 +02:00
Adam Wulkiewicz
789281a5d1
Merge pull request #881 from awulkiew/feature/test_dependencies
Drop dependencies in tests.
2021-07-30 13:18:22 +02:00
Barend Gehrels
42edbd30f2 [test] add testcase for issue #888 polygon 53 2021-07-28 13:10:28 +02:00
Barend Gehrels
01f8e23b0c [traverse] reverse meaning of isolation in difference 2021-07-28 13:10:28 +02:00
Barend Gehrels
14df20453f [test] remove the non used KRAMER define and rephrase/include/exclude some tests 2021-07-28 13:09:26 +02:00
Adam Wulkiewicz
08f7e66f79 [test] Drop library dependencies in tests.
If possible drop type_traits, mpl, typeof, foreach, assign.
Rearrange some includes.
2021-07-22 19:46:51 +02:00
Barend Gehrels
afa1f458a0 [test] add testcases (currently going well) 2021-07-21 11:13:45 +02:00
Vissarion Fisikopoulos
e8224f9234
Merge branch 'develop' into feature/use_side_robust_predicate 2021-07-13 16:13:48 +03:00
Adam Wulkiewicz
2922b27d52
Merge pull request #883 from awulkiew/fix/warnings
Fix various warnings, e.g. remove unused variables, etc.
2021-07-06 16:11:58 +02:00
Vissarion Fisikopoulos
954f9ee532 [tests] Remove duplicate check_inverse function 2021-07-05 16:04:56 +03:00
Vissarion Fisikopoulos
f940c16fd6 Remove sum_error function 2021-07-05 16:04:40 +03:00
Adam Wulkiewicz
ebbc58b52e Fix various warnings, e.g. remove unused variables, etc. 2021-07-05 14:15:38 +02:00
Vissarion Fisikopoulos
b3172f7b3f
Merge branch 'develop' into feature/use_side_robust_predicate 2021-07-02 18:05:57 +03:00
Vissarion Fisikopoulos
6b49308808 Move side_by_triangle to strategy/cartesian 2021-07-02 16:34:33 +03:00
Adam Wulkiewicz
3e681e31f3 [test] Fix initializer_list narrowing conversion error in get_clusters test. 2021-07-01 23:23:44 +02:00
Adam Wulkiewicz
673f14c796 Add support for DG/GC in correct, correct_closure, is_convex and reverse.
Refactor the algorithms together with detail::multi_modify.

Add tests for is_convex and correct.
2021-06-30 23:41:27 +02:00
Adam Wulkiewicz
8fddb60cdc Add support for output DynamicGeometry in convex_hull(). 2021-06-30 23:41:27 +02:00
Adam Wulkiewicz
d3be761ac5 Add support for output GeometryCollection in convex_hull.
Add relate(pt, pt) to convex_hull umbrella strategy.
Add several util::enable_if_xxx type traits.
Remove detail::as_range().

Update the tests.
2021-06-30 23:41:27 +02:00
Adam Wulkiewicz
c2c4569b88 Add support for input DG and GC in is_empty() and convex_hull(). 2021-06-30 23:41:26 +02:00
Adam Wulkiewicz
815de96b84
Merge pull request #862 from awulkiew/feature/range_rvalue
Ranges, views and iterators improvements
2021-06-30 23:11:26 +02:00
Adam Wulkiewicz
0ff39316f7
Merge pull request #832 from awulkiew/fix/area_box
Area strategies for non-cartesian boxes.
2021-06-30 23:04:07 +02:00
Vissarion Fisikopoulos
fb9b1d40ff Replace side_by_triangle with side_robust 2021-06-30 13:00:21 +03:00
Barend Gehrels
40c6544a9b [test] add cases for issues #869 and #861 2021-06-23 10:17:54 +02:00
Adam Wulkiewicz
d2434eeead Rename detail::normalized_view to detail::reverse_close_view.
Add detail::close_reverse_view performing closing and reversing in a
different order.

Use these views in algorithms.

Use different order of views in convert to preserve the starting point
of the original range.
2021-06-07 02:08:56 +02:00
Adam Wulkiewicz
32aaa05bd0 Remove range_type<> and modify detail::as_range(), plus other minor tweaks.
The rationale behind it is that in all cases range_type<> was used as
ring_type<>. There was a specialization for Box defining box_view<> but
this was semantically different than accessing a ring of geometry.

detail::as_range() was taking a range type and returning a reference to
this range which was inconsistent with ring_return_type<>.

Remove unneeded begin() and end() functions in non-mutable ranges
closeable_view<> and detail::normalized_view<>.

Add specialization of ring_type<> for linestrings since there is already
specialization of ring_return_type<>.

Fix some compilation errors.
2021-06-06 00:00:52 +02:00
Adam Wulkiewicz
cad76bf9a0 Refactor iterators and views allowing to pass them as temporaries.
Do not store pointers to ranges in iterators and views.

Implement copy ctors in iterators allowing to convert compatible
iterators.

In copy ctors use enable_if instead of static_assert.
2021-06-05 02:13:00 +02:00
Adam Wulkiewicz
2fc1a3fe8f Add support for ranges passed by rvalue in range utilities.
This allows to pass temporary ranges and proxies without the need to
explicitly create variables.
2021-06-05 00:35:10 +02:00
Adam Wulkiewicz
c9edabe0f7 [test][disjoint] Add cases for DG and GC with explicitly defined strategies. 2021-06-03 16:03:51 +02:00
Adam Wulkiewicz
b1b29ec41d [clear] Add support for GeometryCollection in clear(). 2021-06-02 22:48:20 +02:00
Adam Wulkiewicz
4c84757d68 Merge branch 'develop' into feature/gc 2021-06-02 13:54:10 +02:00
Adam Wulkiewicz
8e3785ed67
Merge pull request #855 from awulkiew/feature/strategies_improvements
Umbrella strategies improvements
2021-06-02 13:40:15 +02:00
Barend Gehrels
e22bf290b1 [test] changes in recursive polygons buffer test 2021-06-02 11:46:31 +02:00
Barend Gehrels
1d4b2e5df2 [test] adapt testcases and / or expectations 2021-06-02 11:46:31 +02:00
Adam Wulkiewicz
e966bdd370 [length] Add support for DynamicGeometry and GeometryCollection in length(). 2021-06-02 01:30:18 +02:00
Adam Wulkiewicz
9849f23b5c Add DynamicGeometry adaptation for std::any. 2021-05-29 23:09:12 +02:00
Adam Wulkiewicz
6e71295d64 Add DynamicGeometry adaptation for std::variant. 2021-05-28 18:36:39 +02:00
Adam Wulkiewicz
251f7d15e0 Move algorithms/visit.hpp to algorithms/detail/visit.hpp 2021-05-28 17:30:26 +02:00
Adam Wulkiewicz
c7ae87d15c Merge branch 'develop' into feature/gc 2021-05-28 17:09:11 +02:00
Adam Wulkiewicz
667471e5ed Improve visit traits and algorithms.
Add support for rvalue references in visit traits and algorithms.
Move visit algorithms to detail namespace.
Rename visit_iterator trait to iter_visit.
Add tests for visit traits and algorithms.
Remove unneeded comments.
2021-05-28 01:48:26 +02:00
Vissarion Fisikopoulos
5702548348
Add missing cases for geographic segment-box disjoint (#853) 2021-05-26 10:49:06 +03:00
Vissarion Fisikopoulos
cade8d6ba6 Make line innterpolate tests more robust 2021-05-25 10:51:35 +03:00
Adam Wulkiewicz
dda2898215 [is_convex] Add support for Polygons. 2021-05-24 21:30:32 +02:00
Adam Wulkiewicz
ec3b3b5de2 [strategies] Remove SeriesOrder from umbrella strategies and improve the implementation.
Use custom versions of enable_if for distance() getters.
Use default keyword in default ctors.
Remove unneeded strategy_converter specialization.
2021-05-24 21:30:32 +02:00
Vissarion Fisikopoulos
00f8c5a2bf Update line_interpolate tests 2021-05-24 17:51:08 +03:00
Adam Wulkiewicz
83f18e8d8d [test] Add missing include in approximately_equals test. 2021-05-21 19:06:44 +02:00
Adam Wulkiewicz
b858969108
Merge pull request #840 from awulkiew/feature/strategies_rest
Umbrella strategies for various algorithms.
2021-05-21 16:55:45 +02:00
Adam Wulkiewicz
a5c8258d56 [io] Add support for GeometryCollection in WKT read and write. 2021-05-21 02:00:45 +02:00
Adam Wulkiewicz
a1ccbcdea7 [io][util] Add support for DynamicGeometry in read_wkt()
Replace variant support in wkt write.
Add util::sequence_find_if.
2021-05-20 00:42:04 +02:00
Barend Gehrels
10142a6703 [turns] have all discarding of start_turns in one place and clean up clusters before assigning 2021-05-19 09:27:44 +02:00