Commit Graph

5032 Commits

Author SHA1 Message Date
Tinko Bartels
a39bf3ff13 Add robust cartesian side and in_circle predicates. 2019-08-23 14:24:56 +02:00
Adam Wulkiewicz
5679ccd08f Merge pull request #554 from awulkiew/feature/read_shapefile
[extensions][io] Add read_shapefile() implementation.
2019-08-14 16:32:25 +02:00
Adam Wulkiewicz
964fa91619 Merge pull request #561 from awulkiew/feature/point_order
Add new algorithm detail::calculate_point_order() with strategies (and optimize remove_spikes()).
2019-08-14 16:32:07 +02:00
Barend Gehrels
6c9a7e0314 Merge pull request #613 from barendgehrels/feature/changes-for-selfturns-and-tests
Feature/changes for selfturns and tests
2019-08-10 15:17:30 +02:00
Adam Wulkiewicz
88029cd238 [util] Add namespace in range::erase call to prevent the compiler instantiating c++20 std::erase. 2019-08-01 22:05:31 +02:00
Adam Wulkiewicz
27b6640510 [strategies] Add workaround for msvc-10..12 in within strategy concept check. 2019-07-30 23:53:22 +02:00
Barend Gehrels
ebfbda842e Review, rename integral_type to calc_type 2019-07-20 16:55:27 +02:00
Barend Gehrels
c421e5a434 Turn off warnings reported by some compiler settings 2019-07-20 14:07:52 +02:00
Barend Gehrels
eefd70fcb7 [self_turns] Changes for self-turns and fix dissolve 2019-07-17 16:45:03 +02:00
Barend Gehrels
422a0b768b [line] process review remarks, rename general_form to infinite_line 2019-07-10 13:03:17 +02:00
Barend Gehrels
a1e1caf8e5 [general_form] add is_degenerate predicate and use it in direction code,
instead of 4 equality checks
2019-07-03 19:38:03 +02:00
Barend Gehrels
b2412f986b [direction] use general_form for direction code 2019-07-03 14:55:46 +02:00
Barend Gehrels
3db9de9b76 [spike] Remove debug code 2019-07-03 14:43:03 +02:00
Barend Gehrels
6688360d90 [intersection] Add general_form functionality for handling of infinite
lines in the form ax + by + c = 0
This is used already at several places in the library, in those places
the general_form replaces that functionality.

The general form will (most probably) also used for segment-segment intersection.

Including unit test.

This makes parallel_continue obsolete.
2019-07-03 14:40:45 +02:00
Vissarion Fisikopoulos
c92ccab382 Remove unused parameters (#608)
[algorithms] Remove unused parameters

* [algorithms] Use ignore unused instead of macros

* [algorithms] Use ignore unused instead of macros 2
2019-07-02 19:30:51 +03:00
tinko92
5a13eea5ed [strategies] Add a constructor that takes QVM matrix_type to matrix_transformers. 2019-07-01 16:19:43 +02:00
Adam Wulkiewicz
bb7cf70069 [index] Fix get_strategy return value and take care about references to temporaries. 2019-07-01 14:46:55 +02:00
Adam Wulkiewicz
c3e8642f52 [strategies] Remove typename keywords. 2019-07-01 14:45:58 +02:00
Adam Wulkiewicz
614c05423e [algorithms] Pass strategy into get_rescale_policy() internally used to get envelope and expand strategies. 2019-06-28 21:45:01 +02:00
Adam Wulkiewicz
850c58f464 [strategies] Add getters for expand box strategies in envelope box strategies. 2019-06-28 21:43:55 +02:00
Adam Wulkiewicz
03fdd412b0 [strategies] Add envelope_box_strategy_type to intersection strategies. 2019-06-28 21:43:03 +02:00
Adam Wulkiewicz
60894adf03 Merge branch 'develop' into feature/undefined_cs 2019-06-28 15:10:01 +02:00
Adam Wulkiewicz
b4634fdb45 [algorithms][io] Add missing includes. 2019-06-28 14:35:28 +02:00
Adam Wulkiewicz
38ae42e442 Merge branch 'develop' into feature/undefined_cs 2019-06-28 14:29:52 +02:00
Adam Wulkiewicz
39e19c469c [algorithms] Remove typedef in is_valid. 2019-06-28 14:12:40 +02:00
Barend Gehrels
48c6e2b02d Merge pull request #607 from barendgehrels/fix/various_warnings
Fix/various warnings
2019-06-27 18:10:28 +02:00
Barend Gehrels
4252e34f2f Merge pull request #606 from barendgehrels/fix/buffer_miter_intersection_point
Fix of issue #596 - [buffer] fix line/line intersection point calculation for some cases,
2019-06-27 18:09:36 +02:00
Adam Wulkiewicz
33014baa5d Merge pull request #572 from awulkiew/fix/azimuth_validity
Fix azimuth validity in geographic_point_circle buffer strategy.
2019-06-26 15:25:37 +02:00
Barend Gehrels
e46c6ee70f [fix] add method which was added later, for integer types 2019-06-26 14:54:58 +02:00
Barend Gehrels
c905acf964 [const] disable various compiler warnings 2019-06-26 14:53:35 +02:00
Barend Gehrels
6dcf062d8f [valid] Fix warning (iterator variables shadow earlier declarations)
by moving the code to a specific function
2019-06-26 14:51:54 +02:00
Barend Gehrels
283a0bc571 [buffer] fix line/line intersection point calculation for some cases,
now using general form (which will be used later more widely). This fixes
some numerical issues.
Including testcase, reported as #596
2019-06-26 14:45:42 +02:00
Vissarion Fisikopoulos
a38924a0f2 Merge pull request #595 from vissarion/fix/dist_pt_seg_short
Fix inaccuracy in geographic point-segment distance computation
2019-06-25 12:59:49 +03:00
Vissarion Fysikopoulos
5e0e1cf75c [strategy] Put bisection method for distance pt-sgmt into detail namespace 2019-06-25 12:31:30 +03:00
Adam Wulkiewicz
d772e36632 [algorithms] Propagate CS-specific strategies in algorithms. 2019-06-24 12:20:04 +02:00
Adam Wulkiewicz
7bf8c0dca8 [strategies] Add headers to strategies.hpp 2019-06-24 12:19:21 +02:00
Adam Wulkiewicz
cf6d5b4618 [index] Allow passing strategy into the rtree with bgi::parameters<>. 2019-06-24 12:18:45 +02:00
Adam Wulkiewicz
147c5711c0 [strategies] Implement index/rtree (umbrella) strategies. 2019-06-24 12:17:52 +02:00
Adam Wulkiewicz
be9114bb66 [policies] Get CSTag in rescale_policy_type, by default taken from Geometry type. 2019-06-24 12:16:35 +02:00
Adam Wulkiewicz
1d07ed1b3d [policies] Get default compare strategy with 2 different point types. 2019-06-24 12:14:48 +02:00
Adam Wulkiewicz
9777b2a0cb [strategies] Add strategies getters in disjoint and distance strategies (Seg/Box). 2019-06-24 12:09:06 +02:00
Adam Wulkiewicz
4c40b5ffb1 [strategies] Do not use BoxIn type as temporary type (may be non-mutable). 2019-06-24 12:05:07 +02:00
Adam Wulkiewicz
f62214787d [strategies] Add model() getter to geographic side strategy. 2019-06-24 12:04:07 +02:00
Adam Wulkiewicz
a24578181f [strategies] Allow now specifying Point types in point_in_poly_* strategies. 2019-06-24 12:03:23 +02:00
Vissarion Fysikopoulos
d226019924 [strategies] Initialize delta_g4 in newton method for pt-segment distance 2019-06-18 15:17:10 +03:00
Vissarion Fysikopoulos
5e509c0639 [stategies] Add meridian case optimization for degenerate segments 2019-06-18 15:15:11 +03:00
Vissarion Fysikopoulos
30979a59e0 [strategies] Avoid divisions by zero 2019-06-13 12:09:43 +03:00
Barend Gehrels
d5d0564a1d [doc] Document define. 2019-06-05 10:48:39 +02:00
Adam Wulkiewicz
ec62cc9afa [strategies] Refactor within/covered_by Box/Box strategies. 2019-06-04 22:43:29 +02:00
Adam Wulkiewicz
2832223ba6 [algorithms][strategies] Propagate CS-specific strategies in algorithms. 2019-06-04 20:04:38 +02:00