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
Barend Gehrels
0f098948b2
[wkt] Avoid any breaking change in wkt by using the old default for rings,
...
and for boxes take by default always all 5 points
2017-10-19 16:36:09 +02:00
Barend Gehrels
38aa0c24a9
[correct] Split off correct_closure from correct
...
Including unit test
2017-10-19 15:51:43 +02:00
Barend Gehrels
917b18e66c
[wkt] apply the wkt change for all geometries instead of only polygon.
...
This is necessary for the splitted correct_closure algorithm, which needs
an exact WKT representation of its geometry
2017-10-19 15:27:47 +02:00
Barend Gehrels
fac0c80692
[overlay] fix sort order, which might contain duplicate turn_index
...
values in e.g. buffer
2017-10-18 15:34:07 +02:00
Barend Gehrels
877ef98340
[overlay] add check to skip self-turns in rings, boxes, and polygons without
...
interior rings or multi-polygons with only one such polygon
2017-10-11 14:58:44 +02:00
Barend Gehrels
b20aeba724
[overlay] fix cases where non-traversed rings were incorrectly added.
...
This also changes the order of checks
2017-10-11 13:54:48 +02:00
Barend Gehrels
4d1b094e6a
[overlay] discard self-turns i/u for intersection traveling to themselves
2017-10-11 12:58:29 +02:00
Barend Gehrels
9a022331b2
[overlay] insert missing curly brace (earlier commit error)
2017-10-11 10:42:52 +02:00
Barend Gehrels
8a136b86b1
Merge branch 'develop' into feature/intvalid
2017-10-11 10:19:58 +02:00
Barend Gehrels
1187e1e805
[dissolve] fix case with two triangles which needs to be corrected w.r.t.
...
next turn if there is only one turn
2017-10-06 15:46:20 +02:00
Barend Gehrels
a73246bbd2
[dissolve] change in order of algorithm / comment
2017-10-06 13:46:01 +02:00
Barend Gehrels
7783eb6a24
[overlay] distinguish dissolve intersection/union to be able to avoid
...
self-turn being true for dissolve (otherwise all is true), to avoid having
those turns discarded.
This fixes some (but not all) of the regressions detected earlier
2017-10-06 12:30:48 +02:00
Barend Gehrels
5eed687af3
[dissolve] clear turns between the two phases of enrich/traverse
2017-10-06 11:21:50 +02:00
Barend Gehrels
6e02971a66
[test] enhance dissolve SVG with information from visitor
2017-10-06 10:52:42 +02:00
Barend Gehrels
2ece2f2fca
[dissolve] pass visitor, this makes dissolve_overlay_visitor redundant
2017-10-06 10:01:46 +02:00
Barend Gehrels
aaf2a5f4d6
[dissolve] use the map, which is now passed, instead of the old one
...
which was created explicitly
2017-10-06 10:00:36 +02:00
Barend Gehrels
641ee18257
[dissolve] fix call to traverse which needs extra argument now
...
(which is not (yet) used for dissolve)
2017-10-06 09:18:10 +02:00
Barend Gehrels
9e230f972f
Merge branch 'develop' into feature/intvalid
2017-10-04 18:25:37 +02:00
Barend Gehrels
65a5c2ba53
[overlay] fix bug (it always returned false), and it should not consider
...
all turns in a cluster here. This fixes #case_recursive_boxes_76
Including unit test
2017-10-04 18:12:37 +02:00
Barend Gehrels
c5710b2ab9
[overlay] skip ranks of isolated regions
2017-10-04 14:00:40 +02:00
Barend Gehrels
6cce6a0686
[overlay] add explaining pictures
2017-09-27 13:24:18 +02:00
Barend Gehrels
210b662597
[overlay] correct (partly) the behaviour of isolation detection for
...
an isolated ring, connected to another isolated ring which is
connected multiple times to it
2017-09-27 13:05:25 +02:00
Barend Gehrels
3160ee6804
[overlay] fix additional case where isolation information was incorrect.
...
Including unit test. This also influences two other testcases but they
are not completely fixed by this fix
2017-09-20 17:00:52 +02:00
Barend Gehrels
ca62efc16d
[overlay] extract method has_single_connection_point
2017-09-20 13:32:22 +02:00
Barend Gehrels
f572abf5c1
[overlay] fix case which was not detected as isolated because it was
...
not clustered. Isolation is now independent on clustering.
Including unit test
2017-09-20 12:52:18 +02:00
Barend Gehrels
79e0e5d258
[overlay] for convenience and for next step, add is_clustered method
2017-09-20 12:43:09 +02:00
Barend Gehrels
35e426700c
[overlay] split methods to assign connected regions when all region ids are assigned
2017-09-20 11:04:51 +02:00
Barend Gehrels
31f1872e46
[overlay] fix debug information
2017-09-20 10:21:50 +02:00
Adam Wulkiewicz
d139bfd597
[formulas][strategies] Add authalic_radius_sqr() formula and use it in geographic area strategy.
2017-09-14 21:19:01 +02:00
Barend Gehrels
800baaac14
[overlay] fix recent change, assign best_code (this avoids regression in buffer)
2017-09-13 16:05:59 +02:00
Barend Gehrels
1849ddca84
[overlay] need to mark cc turns as traversed to avoid regression in
...
cases 75 and 76 which otherwise would have a duplicate ring in union
2017-09-13 13:08:11 +02:00
Barend Gehrels
ce9928a1aa
[overlay] fix case which needed a specific selection of a matching ranked point
2017-09-13 13:07:10 +02:00
Adam Wulkiewicz
650451f977
[formulas][strategies] Add/use mean_radius and unit_spheroid functions.
2017-09-12 20:55:04 +02:00
Max Kellermann
2bc6737309
enrich_intersection_points: fix to_index0/to_index1 confusion
...
Found by Coverity:
"pointless_expression: The expression to_index1 >= 0 && to_index1 >=
0 does not accomplish anything because it evaluates to either of its
identical operands, to_index1 >= 0."
2017-09-08 15:21:15 +02:00
Barend Gehrels
6e4c61d202
[overlay] add check for self-cluster, which should be located within
...
the other geometry to avoid creating false rings
2017-09-06 14:40:44 +02:00
Barend Gehrels
564b261197
fix int cluster_id to signed_size_type
2017-09-06 11:43:36 +02:00
Barend Gehrels
df96ce3bcd
fix more region_id occurences to signed_size_type
2017-09-06 11:43:14 +02:00
Barend Gehrels
5125f938d8
Fix std::size_t types of turn_index to signed_size_type
2017-09-06 11:42:31 +02:00
Barend Gehrels
25ee55003b
Fix int types of region_id to signed_size_type
2017-09-06 11:36:22 +02:00
Barend Gehrels
41ae79cf15
Fix for C++03
2017-09-06 10:58:46 +02:00
Barend Gehrels
e9c1ed497f
Merge branch 'develop' of https://github.com/boostorg/geometry into develop
2017-09-06 09:40:11 +02:00
Barend Gehrels
ccd85b37d0
[buffer] add parameter added in the meantime
2017-08-30 18:45:39 +02:00
Adam Wulkiewicz
1bc57cc645
Merge branch 'develop' into fix/strategy_winding
...
Conflicts:
include/boost/geometry/strategies/strategies.hpp
2017-08-30 13:42:39 +02:00
Adam Wulkiewicz
c5e12820e1
Merge pull request #413 from awulkiew/fix/non_cartesian_compare
...
Fix non-cartesian compare function objects (bg::less, bg::equal_to, bg::greater).
2017-08-30 13:39:57 +02:00
Barend Gehrels
0591aa63ea
Merge branch 'develop' into feature/intvalid
2017-08-30 13:30:46 +02:00
Barend Gehrels
64a7c46ab7
[overlay] finetune condition by still deleting colocated self-ii turns
...
when there are also blocked turns in the cluster
2017-08-30 12:58:43 +02:00
Barend Gehrels
a449c39e6f
[overlay] fix missing ring due to discarded self-intersection turn
2017-08-30 12:56:48 +02:00
Barend Gehrels
32705f5b32
[overlay] change is_closed to using count_left for decision to
...
include polygons
2017-08-23 15:37:00 +02:00