Barend Gehrels
4f90bcd4a5
[fix] handle ix/ix as ux/ux
...
This fixes case #77 ; case #72 is fixed by earlier changes
2015-12-06 18:21:35 +01:00
Barend Gehrels
99045b5c47
[fix] handle_colocations, discard_colocated was not refreshed
2015-12-06 18:07:48 +01:00
Barend Gehrels
0c9d365d4b
[fix] copy_segment_points did not use reverse, fixed. It is now similar to
...
copy_segments
This somehow influences one unit test case but that will be handled later.
2015-12-06 18:01:19 +01:00
Barend Gehrels
90485acf79
Merge branch 'develop' into feature/fix_tangencies
2015-12-06 17:45:12 +01:00
Adam Wulkiewicz
5d02ff6aed
[index] Add workarounds for uninitialized variable warnings reported by GCC-4.4 -O2.
2015-12-01 23:46:11 +01:00
Barend Gehrels
285e0ad61d
Merge branch 'develop' into feature/fix_tangencies
2015-11-28 09:10:28 +01:00
Menelaos Karavelas
beabe33efc
[strategies][distance][spherical equatorial] fix comment written in Greek characters
2015-11-27 12:29:34 +02:00
Menelaos Karavelas
4dedae6eb7
Merge pull request #335 from mkaravel/fix/is_valid_invalid_coordinates
...
Boost.Trac ticket 11711
2015-11-26 23:30:58 +02:00
Barend Gehrels
fa202f7821
[enrich] remove now obsolete flag for clustered
2015-11-22 14:11:05 +01:00
Barend Gehrels
17c83298d4
[overlay] remove (handling of) discarded in enrich/traverse.
...
Discarded is still there but not used or assigned in any sorting
2015-11-22 14:10:02 +01:00
Barend Gehrels
2945201838
[overlay] pass inverse flag for difference and use it
...
to reverse condition on interior/exterior touch
2015-11-22 14:01:05 +01:00
Barend Gehrels
fdcf6df915
typo
2015-11-21 19:02:00 +01:00
Barend Gehrels
939bf656f9
[intersection/enrich] don' t skip after ii if it is about interior rings,
...
they should be traversed. This fixes case mysql_21965285_b_inv
and helps for cases #58 (no backtracking)
2015-11-21 19:01:51 +01:00
Barend Gehrels
6fb034581a
[traverse] fix situations for ii by checking if in a cc case (where either
...
one can be selected normally) one of the options leads to the starting turn.
This, together with previous commit (finish early), fixes the many
variants of case #58
2015-11-21 18:56:40 +01:00
Barend Gehrels
88d2276b69
[traverse] fix situations for ii by checking if current ring is
...
finished immediately (without switching to other source as ii does)
2015-11-21 18:54:00 +01:00
Barend Gehrels
a9903f8c7f
[overlay] fix ordering ii-turns and skip turns afterwards
2015-11-18 17:33:23 +01:00
Barend Gehrels
67ac81e5b2
[overlay] fix cases where intersection point is in the middle of the
...
first segment, and not at the endpoint
2015-11-18 14:53:00 +01:00
Barend Gehrels
a48a935064
[overlay] self-tangencies, similarly as handling side left/right,
...
handle cases where one leg continues collinearly
2015-11-18 11:14:35 +01:00
Menelaos Karavelas
348b7f7f56
[algorithms][is_valid] check invalid floating-point coordinates using
...
boost::math::isfinite instead of boost::math::isnan and boost::math::isinfinite;
2015-11-18 10:46:58 +02:00
Menelaos Karavelas
719d0f6f49
[util] apply coding rules
2015-11-18 10:27:20 +02:00
Menelaos Karavelas
045522d9cb
Merge branch 'develop' of github.com:boostorg/geometry into fix/is_valid_invalid_coordinates
2015-11-18 09:58:37 +02:00
Barend Gehrels
2e7e21dd31
[overlay] don' t discard for difference too
2015-11-15 12:33:13 +01:00
Barend Gehrels
e2764a795b
[overlay] sort on cc too. Also, sort/fix cases where ux is considered for intersection too.
...
They are discarded now, besides the sorting order is fixed (but that
alone does not help)
2015-11-15 11:55:13 +01:00
Barend Gehrels
c7d419785e
[overlay] in less_by_segment_ratio, sort turns where operation occurs
...
(and not in the other turn) first
2015-11-14 11:23:37 +01:00
Barend Gehrels
d038e58f16
[overlay] check for sides w.r.t. both, this fixes two cases for
...
intersection
2015-11-13 20:08:14 +01:00
Barend Gehrels
b891bbe741
[overlay] use same functionality also for intersection
2015-11-13 19:29:55 +01:00
Barend Gehrels
e97bbb4da1
[overlay] fix cases where IP is not at endpoint. This fixes the last
...
union/buffer cases with less_by_segment_ratio instead of handle_tangencies
2015-11-12 19:46:29 +01:00
Jiri Drbalek
cb9c581365
[algorithms][centroid] Fix crash when multi-geometry contains empty geometry
2015-11-11 21:24:26 +00:00
Barend Gehrels
242c619b35
[overlay] handle ux/ui and ui/ui in a more generic way, for union,
...
checking the relative sides of the outgoing segments (in the sorting)
2015-11-11 21:50:34 +01:00
Barend Gehrels
529b8e804c
[overlay] fix ux/ux cases by sort order
...
(instead of handle tangencies)
2015-11-11 16:18:19 +01:00
Barend Gehrels
6b0be79ff3
[enrich] move indexed_turn_operation/sort to separate source file to
...
reuse it for handle_touch
Also, remove the unused member variable m_strategy from it
Conflicts:
include/boost/geometry/algorithms/detail/overlay/enrich_intersection_points.hpp
2015-11-11 15:54:47 +01:00
Barend Gehrels
4a05869d2f
[overlay] turn off handle_tangencies
2015-11-11 15:43:29 +01:00
Barend Gehrels
9ec7e5f3d3
Merge branch 'develop' of https://github.com/boostorg/geometry into develop
2015-11-11 10:27:42 +01:00
Menelaos Karavelas
d9317bdba6
Merge pull request #334 from mkaravel/fix/is_simple_for_empty_geometries
...
Boost.Trac tickets 11709 and 11710
2015-11-10 08:06:17 +02:00
Adam Wulkiewicz
450cfb42be
[arithmetic] Add missing include in determinant.hpp
2015-11-08 05:30:07 +01:00
Menelaos Karavelas
a69456a7e3
[algorithms][is_valid] check if the coordinates of a geometry are valid or not;
...
coordinates are considered invalid if they are off floating point type and either
NaN or infinite;
2015-11-06 12:16:07 +02:00
Menelaos Karavelas
80c706df39
[algorithms][is_simple] patch the is_simple algorithm to address Boost.trac tickets
...
11709 and 11710;
Ticket 11709 (is_simple segfault): modify the is_simple algorithm to check a linestring
for emptiness; if an empty linestring is discovered, return false; the actual return
value does not really matter as empty linestrings are considered as invalid, which means
that the behavior of is_simple for empty linestrings is undefined; on the other hand,
we do want to avoid segfaults, which is achieved with the patch; the same approach has
been applied to emtpy rings, and as a result to empty polygons;
Ticket 11710 (empty geometry logic): modify the behavior of the is_simple algorithm with
respect to empty multi-geometries; the old behavior was considering empty multi-geometries
as non-simple, whereas the current behavior is the opposite; this change has been made in
order to be consistent with the fact that empty multi-geometries are considered as valid;
2015-11-05 14:56:18 +02:00
Barend Gehrels
cd6bfc54d4
[colocations] extract code to separate function
2015-11-04 13:22:41 +01:00
Barend Gehrels
7ee6bd99b1
[buffer] prefix traits::detail namespace
2015-11-01 11:17:32 +01:00
Barend Gehrels
085d641dab
[difference] fix colocations
2015-10-31 20:06:39 +01:00
Barend Gehrels
c1aeab008b
[enrich] add overlay_type template parameter
...
which will be used later
2015-10-31 19:35:18 +01:00
Barend Gehrels
d6b7e052ba
[union] fix new case #80 to discard i/i turn of interior ring with
...
interior ring, in case of a colocation
2015-10-31 18:53:55 +01:00
Barend Gehrels
4cc8112544
[colocations] fix: the condition to select on uu or ux should be there
2015-10-31 12:26:09 +01:00
Barend Gehrels
013420fd07
[colocations] fix debug info
2015-10-31 11:00:41 +01:00
Barend Gehrels
7cfe3dc337
[union] instead of checking on u/u, sort/check
...
on exterior ring/interior rings such that also cases with u/x are handled
This fixes case mysql_21964049
2015-10-31 10:56:27 +01:00
Barend Gehrels
ac5bc527e7
[union] fix cases where a polygon is touching the interior ring of another
...
polygon at a point where that interior ring touches its exterior ring
2015-10-28 19:48:34 +01:00
Barend Gehrels
f98e0ed947
Merge pull request #324 from jeremy-murphy/pj_units
...
Split pj units at divisor, support fractional multipliers.
2015-10-17 10:42:57 +02:00
Adam Wulkiewicz
3e22205687
Merge pull request #329 from springmeyer/fix-lineclip-int
...
[algorithms][intersection] Fixes liang_barsky for integral data
2015-10-14 23:41:08 +02:00
Dane Springmeyer
6f214c54c6
use select_most_precise + better naming of TemplateType
2015-10-14 11:36:50 -07:00
Barend Gehrels
533543e86b
[traverse][robustness] in case of cc, instead of arbitrary candidate,
...
take candidate with largest remaining distance. This fixes some
errors if rescaling is turned off.
2015-10-14 17:15:53 +02:00