Menelaos Karavelas
e7dedcfbfe
[algorithms][is_valid] remove AllowDuplicates template parameter at dispatch level
...
(the visitor is now responsible to determining the behavior)
2015-02-24 01:54:31 +02:00
Menelaos Karavelas
8ece8a827e
[test][algorithms][is_valid] rename is_valid_null_policy to is_valid_default_policy
2015-02-24 01:25:08 +02:00
Menelaos Karavelas
cfb108bb1c
[test][algorithms][is_valid_reason] change failure_type_policy's apply
...
methods to return a boolean (according to newest design for policies)
2015-02-24 01:24:08 +02:00
Menelaos Karavelas
3e8a56cae0
[policies][is_valid] rename is_valid_null_policy to is_valid_default_policy;
...
change file name with the definition of default policy from null_policy.hpp
to default_policy.hpp;
2015-02-24 01:23:15 +02:00
Menelaos Karavelas
279177756a
[algorithms][is_valid] change default value for dispatch boolean template
...
parameter regarding allowance of duplicates to false (the behavior is now
determined by the visitor)
2015-02-24 01:04:03 +02:00
Menelaos Karavelas
7571989baf
[algorithms][is_valid_reason] update declaration of policy (it is now a template class)
2015-02-24 01:02:10 +02:00
Menelaos Karavelas
88318ab6f7
[test][algorithms][is_valid] update declaration of policies (they are now templated classes)
2015-02-24 01:01:22 +02:00
Menelaos Karavelas
03399ad3c0
[policies][is_valid] modify the is_valid policies' apply methods to return a boolean value;
...
templatize policies with a boolean that controls whether duplicate points are to be allowed or not
(by default they are allowed);
2015-02-24 00:58:53 +02:00
Menelaos Karavelas
ecdf20b1a4
[algorithms][is_valid] use as return value whatever the policy returns
2015-02-24 00:57:56 +02:00
Menelaos Karavelas
31ecf743e8
[test][algorithms][is_valid_reason] update enum values names
2015-02-21 20:28:47 +02:00
Menelaos Karavelas
ef32b1085a
[policies][is_valid] update enum value names as per the previous commit;
...
update failure messages accordingly;
2015-02-21 20:27:43 +02:00
Menelaos Karavelas
004b5af7fc
[algorithms][is_valid] replace validity failure enumeration value names as follows:
...
failure_holes_outside -> failure_interior_rings_outside
failure_nested_holes -> failure_nested_interior_rings
2015-02-21 20:24:42 +02:00
Menelaos Karavelas
5a475319ef
[algorithms][is_valid] replace "holes", in debug message, by "interior rings"
2015-02-21 20:23:23 +02:00
Menelaos Karavelas
0987bc93c7
[test][algorithms][is_valid_reason] update unit test due to change
...
in name of failure value related to wrong topological dimension
2015-02-21 16:33:37 +02:00
Menelaos Karavelas
667d5eabc4
[policies][is_valid] update failure value failure_wrong_dimension by
...
failure_wrong_topological dimension; update corresponding message;
2015-02-21 16:32:12 +02:00
Menelaos Karavelas
9357d092d8
[algorithms][is_valid] rename failure type value from failure_wrong_dimension
...
to failure_wrong_topological_dimension
2015-02-21 16:29:53 +02:00
Menelaos Karavelas
c098f89e51
[algorithms][is_valid_reason] add missing #include; rename variable "sstr" to "stream";
2015-02-21 16:20:32 +02:00
Menelaos Karavelas
e2f9d07695
[test][algorithms][is_valid_reason] add unit test for new algorithm is_valid_reason
2015-02-20 10:36:56 +02:00
Menelaos Karavelas
acc774640a
[algorithms][is_valid] ring validity: update description of validity checking steps;
...
check explicitly that the ring has enough distinct points; remove commented code;
2015-02-20 10:33:56 +02:00
Menelaos Karavelas
bce9868365
[policies][is_valid] update validity failure type value name;
...
add message for new value related to boxes;
2015-02-20 09:58:43 +02:00
Menelaos Karavelas
0f2789323a
[algorithms][is_valid] update validity failure type value name
2015-02-20 09:57:52 +02:00
Menelaos Karavelas
42e74f6019
[algorithms][is_valid] distinguish between the cases where the box has lower
...
than expected dimension, and when the corners are not given in correct order
2015-02-20 09:56:47 +02:00
Menelaos Karavelas
5ce6a05918
[algorithms][is_valid] change values and names for validity failure types;
...
add one more failure type related to boxes;
2015-02-20 09:56:12 +02:00
Menelaos Karavelas
f3464e4dd9
[test][algorithms][is_valid] clean-up code; add a few more test cases;
...
declare free functions as inline (if not already declared as such);
2015-02-20 09:53:16 +02:00
Menelaos Karavelas
50487af848
[algorithms][is_valid_reason] add in-line documentation
2015-02-19 23:31:35 +02:00
Menelaos Karavelas
ae28913d8c
[test][algorithms][is_valid][is_valid_reason] update validity testing
...
to account for the design changes regarding the visit policy; add basic
testing for is_valid_reason;
2015-02-19 23:24:24 +02:00
Menelaos Karavelas
4aa73822f8
[geometry] add the is_valid_reason algorithm
2015-02-19 23:18:31 +02:00
Menelaos Karavelas
8f2a535a49
[algorithms][is_valid_reason] implement the is_valid_reason algorithm
...
by passing the failing_reason_policy as the visit policy in the is_valid
algorithm and then returning the message recorded by the policy;
2015-02-19 23:16:13 +02:00
Menelaos Karavelas
2930d649ae
[policies][is_valid] add a new visit policy for the is_valid algorithm:
...
the failing_reason_policy policy; this policy is useful for detecting the
reason for which is_valid fails, as well as for having a convenient message
describing the type of failure and, possibly, information related to the failure;
this policy can be used to implement the is_valid_reason algorithm;
2015-02-19 23:13:09 +02:00
Menelaos Karavelas
bf00fd45bf
[policies][is_valid] add a new visit policy for the is_valid algorithm:
...
the is_valid_null_policy policy, that does nothing
2015-02-19 23:10:39 +02:00
Menelaos Karavelas
b2ff6d51c5
[algorithms][is_valid] add support for visit policy; add one more
...
boolean template parameter at the dispatch level that controls if
empty multi-geometries are valid (the default value is true, i.e.,
empty multi-geometries are considered as valid);
2015-02-19 23:08:31 +02:00
Menelaos Karavelas
a071453652
[algorithms][is_valid] add enumeration type for the validity failure types
2015-02-19 23:05:09 +02:00
Adam Wulkiewicz
81d3d14578
Merge pull request #219 from sdebionne/feature/variant-over-sequence
...
Fix point_type traits for variant over MPL sequence
2015-02-19 17:37:50 +01:00
Adam Wulkiewicz
b9da50da29
Merge pull request #228 from mkaravel/fix/test_sym_difference
...
[test][algorithms][sym_difference] rename duplicate case id so that it is unique
2015-02-19 17:33:05 +01:00
Menelaos Karavelas
6e6867ed43
[test][algorithms][sym_difference] rename duplicate case id so that it is unique
2015-02-19 10:45:43 +02:00
Barend Gehrels
5a23867aaa
Merge branch 'develop' of github.com:boostorg/geometry into develop
2015-02-18 15:16:45 +01:00
Barend Gehrels
34e8b70820
[doc] add to doc the fix for largely deflated interior rings
2015-02-18 15:16:30 +01:00
Barend Gehrels
845611e251
[buffer][test] add tests for multi-polygons with inner rings and large distances
...
Also tests are added where the generated deflated ring around an interior ring
is located exactly within another interior ring
2015-02-18 15:12:39 +01:00
Barend Gehrels
b0fdfc5d7a
[buffer] fix erroneous rings for deflated interior rings which are untouched
2015-02-18 15:10:06 +01:00
Barend Gehrels
18d6103abd
[disjoint] add disjoint_point_box like there is also disjoint_box_box to
...
avoid calling dispatch from buffer
2015-02-18 15:04:22 +01:00
Adam Wulkiewicz
d885b66ada
Merge pull request #226 from mkaravel/fix/test_is_valid_add_case_ids
...
Fix/test is valid add case ids
2015-02-18 14:37:09 +01:00
Barend Gehrels
2201ebf86e
[buffer] fix the case where a side was skipped because detected as equal, followed
...
by an end-cap. This caused further problems. Detection of empty sides is now delegated
to the strategy
2015-02-18 12:20:05 +01:00
Barend Gehrels
3c2a450742
[buffer][test] add testcase for crossing multi-linestring
...
which was fixed already by previous commit (flat-ends)
2015-02-18 10:32:04 +01:00
Barend Gehrels
6c5cb48211
[buffer][fix] avoid false detection of turn in piece: turns cannot be located
...
in flat end pieces or in concave pieces
2015-02-18 10:20:26 +01:00
Menelaos Karavelas
4ab7a4fcd1
[test][algorithms][is_valid] allow WKTs to be passed directly to the tester;
...
make the case ID the first argument of the tester;
2015-02-18 11:16:53 +02:00
Adam Wulkiewicz
bd6e07797f
[test][buffer] Add tests for Areal and negative distance (failing for polygon with hole and big distance).
2015-02-18 00:35:29 +01:00
Adam Wulkiewicz
7f9b2f86f8
[test][buffer] Add Linear cases failing for end_flat and big distance.
2015-02-17 21:15:39 +01:00
Adam Wulkiewicz
7253299961
Merge pull request #227 from mkaravel/fix/add_test_cases_to_douglas_peucker
...
[test][strategies][douglas peucker] add more test cases
2015-02-17 20:48:19 +01:00
Menelaos Karavelas
a8130faa8a
[test][strategies][douglas peucker] add more test cases
2015-02-17 16:09:25 +02:00
Menelaos Karavelas
a3a531f30e
[test][algorithms][is_valid] add case ID to east test cases; add test cases provided
...
by Barend Gehrels coming from buffer computations;
2015-02-17 08:25:45 +02:00