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
Barend Gehrels
94ce58de02
[overlay] fix bug in new code, it should check for the operation because
...
it can happen that union travels to itself and that is irrelevant
2017-10-23 11:26:21 +02:00
Barend Gehrels
38c38397cc
[within] remove unused constants
2017-10-23 10:10:16 +02:00
Barend Gehrels
b39b9a319b
[dissolve] reject negative child rings of negative parents (the parents
...
are reversed later), the same way as positive child rings of positive parents
are removed. This fixes the hexagram case and also dissolve_10 (both ccw)
2017-10-20 15:11:19 +02:00
Barend Gehrels
13a8d13cb6
[dissolve] fix cases where turns were missed because 1) they were on adjacent
...
segments and 2) vertical segments were not sectionalized properly for this purpose.
2017-10-20 12:48:13 +02:00