Adam Wulkiewicz
1cafdc6d43
[densify] Fix default strategy type and remove wrong template parameter.
2018-01-15 19:23:43 +01:00
Adam Wulkiewicz
f35a4f927e
[doc][densify] Add documentation for densify algorithm and strategies.
...
Change strategies from structs to classes as this is the requirement of
the docs generating tool.
2018-01-12 03:01:01 +01:00
Adam Wulkiewicz
e99370beaa
[geometry] Include densify algorithm and strategies in top-most headers.
2018-01-11 18:31:42 +01:00
Adam Wulkiewicz
3daa5956f9
[densify][strategies] Throw on invalid max_distance (in algorithm), assert max_distance > 0 (in strategies).
2018-01-10 23:31:53 +01:00
Adam Wulkiewicz
3dd6413478
[strategies][densify] Support arbitrary dimension in cartesian densify strategy.
2018-01-10 23:23:33 +01:00
Adam Wulkiewicz
63562cc81b
[densify] Refactor densify_range, implement using iterators. Now it requires FwdRng.
2018-01-10 23:03:52 +01:00
Adam Wulkiewicz
27c82ca4c6
[densify][strategies] Take AssignPolicy instead of RangeOut in strategies.
...
This allows moving range handling, e.g. push_back() calls from strategies
to algorithm.
2018-01-09 12:35:31 +01:00
Adam Wulkiewicz
b04a0b97b7
[densify] Rename complexify algorithm and strategies to densify.
2017-12-06 16:15:06 +01:00
Adam Wulkiewicz
80003b79c1
Merge branch 'develop' into feature/complexify
2017-12-04 22:35:47 +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
Adam Wulkiewicz
ff2aaf1ce5
[complexify] Fix compilation errors (includes, tparams, names).
2017-12-04 22:11:31 +01:00
Adam Wulkiewicz
149d817d48
[complexify] Add variant support and make interface consistent with simplify.
2017-12-01 04:12:58 +01:00
Adam Wulkiewicz
9a23ca90f0
[strategies] Add cartesian complexify() strategy.
2017-12-01 02:52:22 +01:00
Adam Wulkiewicz
69a2516373
[strategies] Add spherical and geographic complexify() strategies.
2017-11-30 01:36:16 +01:00
Adam Wulkiewicz
f7de658c2c
[algorithms] Add complexify() algorithm.
2017-11-30 01:35:28 +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
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
Adam Wulkiewicz
1e1d050bbd
[formulas] In Andoyer formula always generate azimuth=0 for antipodal points (besides when p1 is north pole).
2017-11-22 18:41:40 +01:00
Adam Wulkiewicz
ab5fe53c6b
[envelope] Fix segment envelope for antipodal endpoints.
2017-11-20 21:07:51 +01:00
Adam Wulkiewicz
a0ab628707
[formulas] Fix formulas for antipodal endpoints (andoyer inverse, thomas direct, sjoberg intersection).
2017-11-20 21:07:00 +01:00
Barend Gehrels
44f61d05bb
Merge branch 'develop' of https://github.com/boostorg/geometry into develop
2017-11-19 16:01:09 +01:00
Adam Wulkiewicz
0b8a704ae9
[core][overlay] Improve/fix add_rings().
...
Support passing of area strategy into add_rings() and pass it from
overlay, buffer and dissolve.
Add invalid_output_exception and if preprocesor definition is
defined throw it if an intermediate result in add_rings() has negative
area which means that in non-cartesian CS too big polygon is the result.
If area of the intermediate result is 0 ignore it.
2017-11-15 21:23:49 +01:00
Barend Gehrels
1d7d9a9a00
[buffer] fix generation of buffer's interior ring when there is a touching point,
...
by selecting the right operation
2017-11-15 11:58:27 +01:00
Adam Wulkiewicz
a4ba4dc276
Merge pull request #434 from awulkiew/fix/geographic_union
...
Fix for union in geographic CS not generating result if it's too big
2017-11-15 00:25:03 +01:00
Adam Wulkiewicz
20a994c8bb
[buffer] Add missing function argument when not defined BOOST_GEOMETRY_BUFFER_USE_SIDE_OF_INTERSECTION.
2017-11-12 17:01:55 +01:00
Adam Wulkiewicz
ed21755449
[overlay] For union do not check area of result before adding polygons to the output.
2017-11-11 01:20:51 +01:00
Barend Gehrels
e9b52567fe
[buffer] avoid using the flat-end for anything else than linear features,
...
even if end-strategy is specified for polygons
2017-11-08 17:54:50 +01:00
Barend Gehrels
694299b7c7
[buffer] change last fix by adding is_flat_start/end properties to pieces.
...
These marks are used to check if a turn is really inside the generated buffer,
or on the flat end (then it should be kept).
This will NOT YET work for one-sided buffers.
2017-11-08 17:47:46 +01:00
Barend Gehrels
f6808f8277
[buffer] fix MYSQL testcase 25662426
2017-11-08 15:37:27 +01:00
Vissarion Fysikopoulos
c2ac26eab9
[strategies] [tests] Fix pt-sgmt strategy for special meridian segments passing through poles
2017-11-07 17:35:05 +02:00
Tristan Carel
b520265946
Fix documentation typos in rtree
2017-11-07 08:59:08 +01:00
Adam Wulkiewicz
a7cf3f347a
[io] Add workaround for clang-3.0_3 compilation issue.
2017-11-06 16:58:29 +01:00
Vissarion Fysikopoulos
8d412963c8
[formulas] [strategies] Move point-segment distance formula to strategies
2017-11-01 23:41:36 +02:00
Vissarion Fysikopoulos
730d91c3b7
[formulas] Missing include files and namespaces
2017-11-01 22:05:44 +02:00
Vissarion Fysikopoulos
8d29c629d0
[test] Special case handling for Pt-Sgmt distance when segment contains the pole
2017-11-01 21:01:35 +02:00
Vissarion Fysikopoulos
b1fe2ad934
[formulas] Use new distance function with meridian formula optimization everywhere in point-segment distance formula
2017-11-01 20:02:49 +02:00
Vissarion Fysikopoulos
e099a819e7
[formulas] Clean-up code/comments
2017-11-01 19:55:41 +02:00