Adam Wulkiewicz
be9d98faea
Merge pull request #444 from DanielaE/fix/retire-iterator.hpp
...
Get rid of iterator.hpp
2018-01-04 12:46:58 +01:00
Adam Wulkiewicz
355aeb4215
Merge pull request #445 from DanielaE/fix/replace-deprecated-allocator-members
...
Most members of std::allocate are deprecated in C++17
2018-01-04 12:44:51 +01:00
Daniela Engert
8e5fb4f283
Most members of std::allocate are deprecated in C++17
...
Replace them by their cousins from boost::container::allocator_traits.
Signed-off-by: Daniela Engert <dani@ngrt.de >
2018-01-03 12:52:05 +01:00
Adam Wulkiewicz
be53859b57
[formulas] Fix MSVC conversion warnings in inverse formulas.
2018-01-01 23:17:32 +01:00
Adam Wulkiewicz
fe1099019e
Merge pull request #436 from glenfe/develop
...
Use to_address free function instead of pointer_traits member
2017-12-31 20:49:40 +01:00
Daniela Engert
e244516a1b
Get rid of iterator.hpp
...
Boost's iterator.hpp is deprecated (just like std::iterator in C++17). It does nothing but pulling std::iterator into namespace boost and including standard headers 'iterator' and 'cstddef'. Therefore get rid of including iterator.hpp (it had no effect in Boost.Geometry anyway) and replace inheritance by lifting std::iterator's members into the derived class. Instantiating std::iterator is granted with lengthy warning messages by latest MSVC when compiling in C++17 mode.
Signed-off-by: Daniela Engert <dani@ngrt.de >
2017-12-30 11:33:04 +01:00
Adam Wulkiewicz
a91db3061d
[formulas] Fix conversion warning in vertex_longitude formula.
2017-12-28 22:02:33 +01:00
Adam Wulkiewicz
6ec9852697
[algorithms] Fix signed integrals MSVC conversion warnings.
2017-12-27 02:16:47 +01:00
Adam Wulkiewicz
03c48dfca2
[strategies] Fix MSVC x64 conversion warnings.
2017-12-27 01:55:01 +01:00
Adam Wulkiewicz
30bcbf2ced
[algorithms] Fix MSVC x64 conversion warnings.
2017-12-27 01:54:45 +01:00
Adam Wulkiewicz
82a177ed7f
[algorithms] Fix conversion warning in point_on_surface(). This also fixes the algorithm for negative integral coordinates.
2017-12-27 01:52:46 +01:00
Adam Wulkiewicz
5bf69ab6c6
[algorithms] Add extreme_points() overload using default strategy.
2017-12-27 01:51:02 +01:00
Adam Wulkiewicz
b6287df886
[wkt] Rearrange initialize() code to avoid not returning from function (suppress warning).
2017-12-26 14:10:02 +01:00
Adam Wulkiewicz
2ea729b520
[algorithms][strategies][util] Fix unused parameter warnings.
2017-12-24 05:05:30 +01:00
Adam Wulkiewicz
cd8c50d712
[partition] Fix wrong overlay policy passing.
2017-12-24 05:04:42 +01:00
Barend Gehrels
f6c67daba6
[difference] fix cases where ii turns were not discarded, this
...
was a todo-item, it was not yet done for difference.
Including unit testcase using this.
2017-12-20 16:22:27 +01:00
Barend Gehrels
68bc3ee07a
[dissolve] apply last change for dissolve too
2017-12-20 14:08:13 +01:00
Barend Gehrels
b28b312141
[difference] fix cases where potential inner rings have same area as
...
outer rings (located elsewhere), due to an earlier optimization
2017-12-20 14:07:51 +01:00
Barend Gehrels
11cff883b0
[intersection] Fix newly found case by removing some conditions from
...
handle_self_turns and setting ii-self-turns as non-startable instead of
discarding them.
2017-12-16 18:52:39 +01:00
Barend Gehrels
7552200cfa
[traverse] use new method operation_from_rank in two other places as well
2017-12-15 14:37:55 +01:00
Barend Gehrels
556896c7cc
[traverse] need to select on operations in selecting ranks, it is not
...
done later. Small regression found by recursive_polygons
2017-12-15 14:37:17 +01:00
Barend Gehrels
5d99d1608d
[overlay] fix new #case_recursive_boxes_82 by greatly simplifying the code.
...
patterns/aggregations were added to solve specific intersection problems
and validity in the past. In the meantime self-turns and isolation information
is much better, and those code is not needed anymore.
This also fixes the #mysql_regression_1_65_2017_08_31
This also makes union/intersection code for handling clusters much more similar
2017-12-15 13:20:41 +01:00
Barend Gehrels
f0d74e3386
[union] simplify cluster behaviour by skipping aggregation step
2017-12-15 12:34:25 +01:00
Barend Gehrels
2cd973df85
Merge branch 'develop' into feature/intvalid
2017-12-15 11:05:16 +01:00
Adam Wulkiewicz
c83bc33cb4
[overlay] Add missing includes in add_rings.hpp
2017-12-15 01:16:36 +01:00
Barend Gehrels
f0619cb19a
[enrich] combine expressions, set cluster, add comments
2017-12-06 15:43:11 +01:00
Barend Gehrels
dc7c17347f
[traverse] dont use blocked turns for region, and simplify
...
expressions by static consts
2017-12-06 15:42:27 +01:00
Barend Gehrels
080f0f22f4
[traverse] fix case where hole of one of the inputs formed a
...
disconnected interior (invalid). In the end it is fixed by only
deleting code. This code is not really old but added to fix some
cases, which are finally fixed in a more generic way.
It fixes a new case and also enhances #case_141_multi
2017-12-06 14:25:42 +01:00
Barend Gehrels
536f001483
[traverse] update debug info with removed fields
2017-12-06 11:33:56 +01:00
Barend Gehrels
d52139934c
[traverse] also remove now unused loop setting local region ids
2017-12-06 11:27:12 +01:00
Barend Gehrels
fa6d0ce2ee
[traverse] replace switch_source by inspecting region ids locally
2017-12-06 11:23:27 +01:00
Barend Gehrels
d096cc8230
[traverse] use passed turn instead of turn index
2017-12-06 11:06:50 +01:00
Barend Gehrels
8f6cf2681b
[traverse] remove from cluster switch_source which is not used anymore
2017-12-06 10:08:58 +01:00
Adam Wulkiewicz
9e882889f4
[formulas] Fix thomas direct formula for meridian segments (azi=0, lat1<0).
2017-12-04 22:31:26 +01:00
Barend Gehrels
0e9e6caded
[buffer][fix] in deflated buffers it could occur that a turn was missed
...
(so: not within original) and traveled to itself. This is fixed by checking
for deflated buffers (or inflated interior rings) if the minimum number
of turns is 3.
2017-11-29 16:27:01 +01:00
Barend Gehrels
52e26ab6c1
[dissolve] minor, fix line length
2017-11-24 13:32:19 +01:00
Barend Gehrels
bf0ebd31c5
[dissolve][fix] use rescale policy to fix some cases defined as <float>
2017-11-24 13:31:59 +01:00
Barend Gehrels
b65b212f99
[dissolve] make sure that for dissolve both startable and selection of
...
union operation does not make use of counts
2017-11-24 12:21:59 +01:00
Barend Gehrels
e474309feb
[dissolve] fix selecting the right turn for traveling to itself
...
This fixes the reported testcase #dissolve_mail_2017_10_26_a
2017-11-24 12:01:35 +01:00
Glen Fernandes
1d0dfdb9ca
Use to_address free function instead of pointer_traits member
...
The free function was accepted and voted into C++20 (P0653R2).
2017-11-23 23:26:57 -05:00
Barend Gehrels
3307dc3b2b
Merge branch 'develop' of https://github.com/boostorg/geometry into develop
2017-11-23 17:26:52 +01:00
Barend Gehrels
fc8cc479fa
[traverse] make select_source more generi
2017-11-23 17:15:48 +01:00
Barend Gehrels
751b05ddc1
[buffer] revert one change (should keep multi_index) and
...
update tests now that validity is improved (but not yet solved).
Also 2 testcases are added generating uu points
2017-11-23 17:03:41 +01:00
Barend Gehrels
88b9e041ed
[buffer] for uu-turns, use piece_index instead of multi_index because
...
a uu turn might be formed at the same source multi-index
2017-11-23 16:02:33 +01:00
Barend Gehrels
ec454bbce1
[buffer] add the necessary piece-information to operators and debug info
2017-11-23 16:01:49 +01:00
Barend Gehrels
1335aac14d
[buffer] remove exception for buffer, it is outdated and its omission
...
is necessary to calculate switch_source correctly
2017-11-23 15:44:30 +01:00
Adam Wulkiewicz
48d2d99b2b
[formulas][strategies] Move updating of state from area formulas to strategy where it should be. This also fixes conversion warning.
2017-11-23 15:32:54 +01:00
Adam Wulkiewicz
0e7614f27d
Merge pull request #433 from vissarion/feature_fix_pt_sgmt_pole
...
Fix pt-sgmt strategy for special meridian segments passing through poles
2017-11-23 02:37:11 +01:00
Adam Wulkiewicz
fde5475144
[overlay] Restore old behavior of union for invalid polygons, changeable with #define.
2017-11-23 00:08:13 +01:00
Adam Wulkiewicz
fda7dbb297
[formulas] Improve robustness and add optimization in sjoberg_intersection formula.
...
- After newton's method check the resulting longitude and finish only if
it's between segments' endpoints. If it isn't use more robust method.
- Don't perform spheroidal calculation if model is a sphere.
2017-11-22 18:49:17 +01:00