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
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
Vissarion Fysikopoulos
1c5d10fb77
[formulas] Thomas formula return zero for distance between poles. Fixed by calling meridian formula for this case.
2017-11-01 19:44:28 +02:00
Vissarion Fysikopoulos
f458d8d28e
[formulas] [strategies] Distance point-segment use the meridian formula. Use new static version of distance strategy.
2017-11-01 17:42:48 +02:00
Adam Wulkiewicz
b17ad43f7f
[strategy] Add missing include in geographic distance strategy.
2017-10-31 16:28:41 +01:00
Adam Wulkiewicz
ede7f02f4f
Merge branch 'develop' into feature/meridian_andoyer
2017-10-31 15:50:42 +01:00
Adam Wulkiewicz
88e8e268e0
Merge pull request #410 from vissarion/feature/distance_point_segment
...
Geographic distance between a point and a segment
2017-10-31 15:46:19 +01:00
Adam Wulkiewicz
14592168c4
[relate] Fix reference to temporary (reported by clang-4.0 asan).
2017-10-27 01:22:01 +02:00
Adam Wulkiewicz
968035415f
Merge pull request #424 from awulkiew/fix/geographic_preceding
...
Fix preceding/exceeding in geographic CS
2017-10-25 23:28:14 +02:00
Adam Wulkiewicz
6665497ecc
Merge pull request #423 from awulkiew/fix/setops_la
...
Fix L/A set operations
2017-10-25 23:28:02 +02:00
Barend Gehrels
36d1fe7657
Merge branch 'feature/intvalid' into develop
2017-10-23 18:39:46 +02:00