6bf022bedbMerge pull request #236 from sdebionne/fix/range
Adam Wulkiewicz
2015-03-02 14:15:26 +0100
d9f95e6952[algorithms][within] Use geometry::range
Samuel Debionne
2015-03-02 09:37:44 +0100
cae3bab2fe[util][range] Fix back()
Samuel Debionne
2015-02-27 17:03:03 +0100
f74180b084[buffer] Enhance turn-in-piece for pieces around points. They now make use of monotonic sections, and get special treatment because there are no helper segments, basically the whole procedure is different
Barend Gehrels
2015-03-01 14:08:16 +0100
cf167f9a36[sectionalize] support sections in vector (so sections_type is redundant)
Barend Gehrels
2015-03-01 13:57:39 +0100
4652e56d40[buffer][test] test tests with many points only in release mode
Barend Gehrels
2015-02-28 13:06:49 +0100
ad24b1001f[test] Add define for debug/release mode (now recognized by gcc/clang/msvc)
Barend Gehrels
2015-02-28 13:06:21 +0100
c244debf53[buffer] calculate turns: use monotonic properties in two dimensions (does not give improvements for circles, however it might do for ellipses longer in y dimension)
Barend Gehrels
2015-02-28 12:58:51 +0100
483c373cf5Merge branch 'develop' of github.com:boostorg/geometry into develop
Barend Gehrels
2015-02-27 22:15:39 +0100
a6d10d610c[turns] use preceding/exceeding from headerfile
Barend Gehrels
2015-02-27 22:15:08 +0100
6afc5a464a[buffer] performance: use monotonic properties of monotonic sections to limit quadratic iterations within two overlapping sections This can improve performance with about 25%
Barend Gehrels
2015-02-27 22:11:50 +0100
d31cabb067[strategies][cartesian][buffer][point_circle] fix internal point count for small input values (less than 3): when the input point count is less than 3, set the internal point count to 3; this is important for generating valid polygons;
Menelaos Karavelas
2015-02-26 17:30:24 +0200
ac17886a10Merge pull request #232 from mkaravel/doc/update_global_copyright_year
Adam Wulkiewicz
2015-02-26 00:50:10 +0100
32d35b5c05[doc][geometry] update copyright year for the generated documentation
Menelaos Karavelas
2015-02-26 00:46:48 +0200
32175d483b[buffer][test] increase tolerance of tests added today, to support slightly varying results on different compilers
Barend Gehrels
2015-02-25 22:47:48 +0100
8d4e772daaMerge branch 'master' into bg-prepare
Barend Gehrels
2015-02-25 22:54:07 +0100
e4240650a5[buffer][test] increase tolerance of tests added today, to support slightly varying results on different compilers
Barend Gehrels
2015-02-25 22:47:48 +0100
f1fc6eaa59Merge branch 'develop' of github.com:boostorg/geometry into develop
Barend Gehrels
2015-02-25 17:54:26 +0100
979fd3cf96[buffer] change model::box by already existing type
Barend Gehrels
2015-02-25 17:53:45 +0100
3a5e2c20c4[buffer] improve performance for multi_point with many generated points by now using monotonic sections and calculate turns over overlapping sections only
Barend Gehrels
2015-02-25 17:50:25 +0100
015953ce42[sectionalize] add static assert for if ...part is used out of sectionalize
Barend Gehrels
2015-02-25 17:33:43 +0100
a18c0c2ad1[sectionalize] let sectionalize_part make use of iterators instead of range, for next commit where that is used for buffer, and range is inconvenient
Barend Gehrels
2015-02-25 17:33:16 +0100
e45fd0ef29[get_turns] move two policies to separate headerfile
Barend Gehrels
2015-02-25 17:28:09 +0100
c0f9797929[doc][release notes] add new feature: overload of is_valid with reference to enum type as second argument; update copyright header
Menelaos Karavelas
2015-02-25 15:36:28 +0200
7c49946b39[doc][examples][is_valid] fit statement into a single line
Menelaos Karavelas
2015-02-25 15:17:28 +0200
5bc4de37f0[doc][tools][doxygen_xml2qbk] modify quickbook output for enumeration types with more than 4 values; if the enumeration type has more than 4 values, these values are listed in separate lines (one per line), rather than all in a single line;
Menelaos Karavelas
2015-02-25 15:13:09 +0200
f8935b2afe[doc][examples][algorithms][is_valid] add example for is_valid (with failure value)
Menelaos Karavelas
2015-02-25 15:12:04 +0200
5c8e300ba2[doc][algorithms][is_valid] update inline documentation for the various is_valid overloads; add documentation for the overload that takes a reference to validity_failure_type;
Menelaos Karavelas
2015-02-25 15:05:29 +0200
897ccac127[doc][is_valid] import example used in the is_valid (with failure value) documentation
Menelaos Karavelas
2015-02-25 15:04:27 +0200
3ff0d4634d[doc][release_notes] add overload for is_valid that takes a string reference as second argument
Menelaos Karavelas
2015-02-24 16:40:37 +0200
0a0e83c04c[doc][reference] put is_valid in a section of its own
Menelaos Karavelas
2015-02-24 16:00:08 +0200
d462d9be29[doc][example][is_valid (with message)] add .cpp file of example for is_valid (with message)
Menelaos Karavelas
2015-02-24 15:59:23 +0200
3cf32a6cea[doc][reference][algorithms][is_valid] add doc page for is_valid with message
Menelaos Karavelas
2015-02-24 15:58:44 +0200
7f7f915f1a[doc][examples][is_valid (with message)] add example showing the usage of bg::is_valid(geometry, message_string)
Menelaos Karavelas
2015-02-24 15:57:52 +0200
8dac6ef10f[algorithms][is_valid] remove the AllowSpikes dispatch-level template parameter; the corresponding functionality is not handled by the visitor;
Menelaos Karavelas
2015-02-24 15:56:21 +0200
0f739a7e0f[algorithms][is_valid] make the template parameter AllowSpikes default to false; the policy passed to is_valid is now responsible for the handling of spikes;
Menelaos Karavelas
2015-02-24 15:46:27 +0200
6bf0289186[algorithm][is_valid] remove used code (the is_simple algorithm now passes an appropriate policy to has_spikes and has_duplicates)
Menelaos Karavelas
2015-02-24 15:44:37 +0200
deae2e2a63[algorithms][is_simple] modify calls to has_spikes and has_duplicates by providing a policy that is appropriate for simplicity testing
Menelaos Karavelas
2015-02-24 15:43:39 +0200
1ca384d933[algorithms][is_simple] add policy for is_simple algorithm to be used with has_spikes and has_duplicates
Menelaos Karavelas
2015-02-24 15:42:17 +0200
cebcabb1d4[test][algorithms][is_valid] update unit test code for is_valid to use the newly introduced free functions;
Menelaos Karavelas
2015-02-24 15:40:29 +0200
ef9069d216[test][algorithms][is_valid] rename is_valid_reason unit test to is_valid_failure; update code in unit test to reflect this change;
Menelaos Karavelas
2015-02-24 15:37:12 +0200
e4ad786f10[policies][is_valid] add new policy, the failure_type_policy, used to keep track of the failure type; this policy is used to implement the free function bool is_valid(geometry, failure_value&); the policy is templated by two boolean parameters that indicate how to handle spikes for linear geometries, and duplicate points for areal geometries;
Menelaos Karavelas
2015-02-24 15:34:03 +0200
6cc9be2206[policies][is_valid] templatize the failing_reason_policy by a boolean template parameter associated with how to handle spikes for linear geometries
Menelaos Karavelas
2015-02-24 15:32:59 +0200
ff04ef6e78[policies][is_valid] add a boolean template parameter, associated with the handling of spikes, to the default policy; the policy decided how to handle spikes using this template parameter;
Menelaos Karavelas
2015-02-24 15:31:04 +0200
f70d234426[algorithms][is_valid] pass to the policy a boolean value indicating whether the geometry is linear or not (if not linear, it is an areal geometry)
Menelaos Karavelas
2015-02-24 15:26:51 +0200
e7dedcfbfe[algorithms][is_valid] remove AllowDuplicates template parameter at dispatch level (the visitor is now responsible to determining the behavior)
Menelaos Karavelas
2015-02-24 01:54:31 +0200
8ece8a827e[test][algorithms][is_valid] rename is_valid_null_policy to is_valid_default_policy
Menelaos Karavelas
2015-02-24 01:25:08 +0200
cfb108bb1c[test][algorithms][is_valid_reason] change failure_type_policy's apply methods to return a boolean (according to newest design for policies)
Menelaos Karavelas
2015-02-24 01:24:08 +0200
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;
Menelaos Karavelas
2015-02-24 01:23:15 +0200
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)
Menelaos Karavelas
2015-02-24 01:04:03 +0200
7571989baf[algorithms][is_valid_reason] update declaration of policy (it is now a template class)
Menelaos Karavelas
2015-02-24 01:02:10 +0200
88318ab6f7[test][algorithms][is_valid] update declaration of policies (they are now templated classes)
Menelaos Karavelas
2015-02-24 01:01:22 +0200
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);
Menelaos Karavelas
2015-02-24 00:58:53 +0200
ecdf20b1a4[algorithms][is_valid] use as return value whatever the policy returns
Menelaos Karavelas
2015-02-24 00:57:56 +0200
ef32b1085a[policies][is_valid] update enum value names as per the previous commit; update failure messages accordingly;
Menelaos Karavelas
2015-02-21 20:27:43 +0200
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
Menelaos Karavelas
2015-02-21 20:24:42 +0200
5a475319ef[algorithms][is_valid] replace "holes", in debug message, by "interior rings"
Menelaos Karavelas
2015-02-21 20:23:23 +0200
0987bc93c7[test][algorithms][is_valid_reason] update unit test due to change in name of failure value related to wrong topological dimension
Menelaos Karavelas
2015-02-21 16:33:37 +0200
667d5eabc4[policies][is_valid] update failure value failure_wrong_dimension by failure_wrong_topological dimension; update corresponding message;
Menelaos Karavelas
2015-02-21 16:32:12 +0200
9357d092d8[algorithms][is_valid] rename failure type value from failure_wrong_dimension to failure_wrong_topological_dimension
Menelaos Karavelas
2015-02-21 16:29:53 +0200
e2f9d07695[test][algorithms][is_valid_reason] add unit test for new algorithm is_valid_reason
Menelaos Karavelas
2015-02-20 10:36:56 +0200
acc774640a[algorithms][is_valid] ring validity: update description of validity checking steps; check explicitly that the ring has enough distinct points; remove commented code;
Menelaos Karavelas
2015-02-20 10:33:56 +0200
bce9868365[policies][is_valid] update validity failure type value name; add message for new value related to boxes;
Menelaos Karavelas
2015-02-20 09:58:43 +0200
0f2789323a[algorithms][is_valid] update validity failure type value name
Menelaos Karavelas
2015-02-20 09:57:52 +0200
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
Menelaos Karavelas
2015-02-20 09:56:47 +0200
5ce6a05918[algorithms][is_valid] change values and names for validity failure types; add one more failure type related to boxes;
Menelaos Karavelas
2015-02-20 09:55:17 +0200
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);
Menelaos Karavelas
2015-02-20 09:53:16 +0200
b15f790052Merge pull request #225 from awulkiew/fix/cart_intersect
Adam Wulkiewicz
2015-02-20 00:53:51 +0100
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;
Menelaos Karavelas
2015-02-19 23:24:24 +0200
4aa73822f8[geometry] add the is_valid_reason algorithm
Menelaos Karavelas
2015-02-19 23:18:31 +0200
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;
Menelaos Karavelas
2015-02-19 23:16:13 +0200
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;
Menelaos Karavelas
2015-02-19 23:13:09 +0200
bf00fd45bf[policies][is_valid] add a new visit policy for the is_valid algorithm: the is_valid_null_policy policy, that does nothing
Menelaos Karavelas
2015-02-19 23:10:39 +0200
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);
Menelaos Karavelas
2015-02-19 23:08:31 +0200
873a59aa82Merge branch 'develop' of github.com:boostorg/geometry into develop
Barend Gehrels
2015-02-19 22:05:21 +0100
a071453652[algorithms][is_valid] add enumeration type for the validity failure types
Menelaos Karavelas
2015-02-19 23:05:09 +0200
2373882a2e[buffer] remove now unused type
Barend Gehrels
2015-02-19 22:05:05 +0100
81d3d14578Merge pull request #219 from sdebionne/feature/variant-over-sequence
Adam Wulkiewicz
2015-02-19 17:37:50 +0100