Commit Graph

2087 Commits

Author SHA1 Message Date
Menelaos Karavelas
5a71e83bd5 [algorithms][is_valid] remove all explicit usages of debug macro;
clean-up/polish debug-related code;
2014-06-20 13:41:00 +03:00
Menelaos Karavelas
36def7632c [algorithms][is_valid] move complement graph debug-related printing
code to separate function
2014-06-20 13:39:57 +03:00
Menelaos Karavelas
357a818cea [algorithms][is_valid] helper class for debugging the various phases
of the validity algorithms; currently implemented only for polygons;
2014-06-20 13:38:39 +03:00
Menelaos Karavelas
ab67385c68 [algorithms][is_valid] move debugging-related printing of turns in
is_valid/debug_print_turns.hpp
2014-06-20 13:37:28 +03:00
Menelaos Karavelas
1a0e2519da [algorithms][is_simple] update debugging-related includes 2014-06-20 13:36:48 +03:00
Menelaos Karavelas
100af837ec [algorithms][is_simple] rename debug_linear.hpp to debug_print_boundary_points.hpp;
remove code related to printing turns (to be put in another file);
2014-06-20 13:35:57 +03:00
Menelaos Karavelas
2eea41b82e Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-06-20 12:30:18 +03:00
Barend Gehrels
52c41b9d34 [overlay] reverted change of returning left seg_id < right seg_id
because it is already tested before as beging equal in these cases
2014-06-19 21:46:50 +02:00
Adam Wulkiewicz
844616d8fa Merge pull request #64 from awulkiew/fix/erase
Replace the explicit call to Range::erase()
2014-06-19 20:46:27 +02:00
Adam Wulkiewicz
a9babd113f [overlay] Change the placement of const modifier (guidelines). 2014-06-19 20:45:56 +02:00
Barend Gehrels
24b503212e [buffer] In case of the same contents, compare just seg_ids
to have a reliable order
2014-06-19 19:11:22 +02:00
Barend Gehrels
3261c52976 [buffer] Avoid warnings 2014-06-19 19:10:49 +02:00
Barend Gehrels
c5de26945b [overlay] use uniform robust policy, this obsoletes zoom_to_robust 2014-06-19 19:10:28 +02:00
Menelaos Karavelas
faab25232f [algorithms][detail] make sure we are not going to get an unused
variable warning (on MSVC)
2014-06-19 17:07:37 +03:00
Menelaos Karavelas
46ae61138a [algorithms][detail] polish comment phrasing 2014-06-19 16:42:02 +03:00
Menelaos Karavelas
67397491fc [algorithms][is_valid] make the policy passed to self turns for polygons
a stateless policy
2014-06-19 16:36:07 +03:00
Menelaos Karavelas
4052cc85f9 [algorithms][is_simple] multi-linestring simplicity check:
pass an appropriate predicate based interrupt policy to self turns,
so that when an unacceptable turn is found, self turn stops and returns
2014-06-19 16:33:56 +03:00
Menelaos Karavelas
62dc84e14f [policies] rename predicate_based_interrupt_policy to
stateless_predicate_based_interrupt_policy; added a new version
of predicate_based_interrupt_policy that takes a predicate object
(possibly with state) at construction;
2014-06-19 16:31:37 +03:00
Menelaos Karavelas
d67bad5925 [algorithms][detail] add version that takes as argument a predicate object
(possibly with state)
2014-06-19 16:30:39 +03:00
Menelaos Karavelas
70d22970e2 [algorithms][is_valid] optimize call to self turns:
replace the no_interrupt_policy used in self turns by a custom
interrupt policy that stops when a non-acceptable turn is found
2014-06-19 14:56:30 +03:00
Menelaos Karavelas
50c3185417 [policies] add a predicate-based interrupt policy: the policy
is passed a predicate (that has a static apply method) and reports
that intersections exist if at least one of the turns in the checked
range is not acceptable according to the predicate
2014-06-19 14:53:24 +03:00
Menelaos Karavelas
59099bf721 [algorithms][detail,is_simple,is_valid] change the valud of the
AllowEmptyRange template parameter of check_iterator_range from
false to true
2014-06-19 14:03:49 +03:00
Adam Wulkiewicz
6a969b2b49 [overlay] Add missing copyright info. 2014-06-19 02:43:46 +02:00
Adam Wulkiewicz
43d0ef60f3 [range] Add erase() taking non-mutable iterators (in-line with C++11 std::vector) + tests. 2014-06-19 02:40:39 +02:00
Adam Wulkiewicz
a552a0de67 [overlay] Replace *begin(rng) with front(rng) 2014-06-19 01:11:53 +02:00
Adam Wulkiewicz
66c1acb9c5 Merge pull request #65 from mkaravel/feature/is_simple
[algorithms][is_valid] attempt to fix MSVC compilation errors
2014-06-19 01:01:48 +02:00
Menelaos Karavelas
0e18e8ec8c [algorithms][is_valid] attempt to fix MSVC compilation errors 2014-06-18 23:16:13 +03:00
Adam Wulkiewicz
9f7828b7ec [overlay][range] Replace the explicit call to Range::erase() with version using std::copy() and traits::resize<> 2014-06-18 19:42:44 +02:00
Barend Gehrels
ea222cd5b3 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-06-18 14:24:53 +02:00
Barend Gehrels
e4e948753b [turns] remove is_discarded() function 2014-06-18 14:24:42 +02:00
Barend Gehrels
4415da952b [buffer] For clusters (occuption), avoid using turns as starting point
This enables the "get_occupation" again, but skips the get_left_turns function
2014-06-18 14:18:43 +02:00
Barend Gehrels
fccd2c2b7f [buffer][fix] add required parameter for visit policy 2014-06-18 14:13:57 +02:00
Barend Gehrels
2ba27734e4 [buffer] remove unused segment-map 2014-06-18 14:05:53 +02:00
Barend Gehrels
bbfe279782 [buffer] disable enlarged-cluster approach
temporary disabled with a define - if everything OK it will go completely
2014-06-18 14:04:24 +02:00
Barend Gehrels
84d240ee9d [buffer][test] visit collection twice for mapping 2014-06-18 14:02:18 +02:00
Barend Gehrels
54c59c2665 [overlay] remove unused MSM approach
This drops the reported MSM dependancy
2014-06-18 14:01:11 +02:00
Menelaos Karavelas
52ab626f69 [algorithms][is_valid] in polygon validity algorithm, replace
the robustness policy used from no_rescale_policy to the
appropriate rescale_policy type
2014-06-18 14:27:13 +03:00
Menelaos Karavelas
dbbcf4c1ff [algorithms][is_simple] implement the new directory/file structure 2014-06-18 14:04:50 +03:00
Menelaos Karavelas
89c5113bce [algorithms][is_valid] implement the new directory/file structure 2014-06-18 14:00:05 +03:00
Menelaos Karavelas
092a8633e2 [algorithms][detail,is_valid] rename number_of_distinct_values to
num_distinct_consecutive_points and move it to namespace
boost::geometry::detail; also rename and move corresponding file
to boost/geometry/algorithms/detail;
2014-06-18 13:23:48 +03:00
Menelaos Karavelas
27ea2de6ab [algorithms][is_valid] rename N to MaximumNumber 2014-06-18 13:10:58 +03:00
Menelaos Karavelas
ec63be14e2 [algorithms][is_valid] in number_of_distinct_values, make size const 2014-06-18 13:06:10 +03:00
Menelaos Karavelas
c94ecdbb4d [algorithms][is_simple] add variant support 2014-06-18 12:54:09 +03:00
Menelaos Karavelas
b0a5adc503 [algorithms][is_valid] add variant support 2014-06-18 12:53:53 +03:00
Menelaos Karavelas
d92960154a [algorithms][is_valid] make implementation of number_of_distinct_points
more generic: number_of_distinct_values for ranges that also takes an
additional template parameter to indicate how many distinct values
to search for
2014-06-18 04:36:20 +03:00
Menelaos Karavelas
6cecfeea9f [algorithms][is_valid] move implementation of number_of_distinct_points
in separate file; re-design implementation of is_valid for linestrings;
2014-06-18 04:34:45 +03:00
Menelaos Karavelas
332eb42789 [algorithms][is_valid] remove trailing space 2014-06-18 03:47:02 +03:00
Barend Gehrels
56d163fe1e [is_valid] fix unit test linkage problem with two/three_or_more 2014-06-16 19:04:05 +02:00
Menelaos Karavelas
b05dd041a6 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/is_simple 2014-06-16 14:30:58 +03:00
Adam Wulkiewicz
76b13c42bc [util][math] Add the conversion to double (C++11 approach) before passing the integral argument to std::sqrt() 2014-06-16 13:04:22 +02:00