Commit Graph

1714 Commits

Author SHA1 Message Date
Adam Wulkiewicz
8dcd329db7 [index] Use default_comparable_distance_result whenever possible 2014-05-14 15:13:01 +02:00
Barend Gehrels
06346ee2ea Merge pull request #24 from mkaravel/feature/distance-for-merge
Feature/distance for merge
2014-05-14 12:35:59 +02:00
Menelaos Karavelas
b8eaf21fb5 [comparable distance] make comparable_distance(g1, g2) return default_comparable_distance_result 2014-05-13 10:53:25 +03:00
Menelaos Karavelas
cea8dd1b0d [distance] polish code; make clear when the result of comparable or regular strategy is used; 2014-05-11 23:21:22 +03:00
Menelaos Karavelas
15c711cf53 [distance] polish code; make clear when the result of comparable or regular strategy is used;
re-write geometry_to_geometry_rtree class so that is uses comparable distances for internal computations;
2014-05-11 23:16:17 +03:00
Menelaos Karavelas
d6b3abcfc1 [distance] re-write segment-box distance code without strategy::distance::services::strategy_point_point;
fix bug in segment-box comparable distance when the segment degenerates to a point;
2014-05-09 23:05:20 +03:00
Menelaos Karavelas
54ff519466 [stategies][distance] remove strategy::distance::services::strategy_point_point from distance strategies and distance strategy concept 2014-05-09 23:02:39 +03:00
Menelaos Karavelas
5777fd5b8d [overlay] the specialization of intersection_insert for linestring/box computes the intersection, but pretends as if it works for difference as well;
quick fix: further specialize this specialization of intersection insert so that it works only for overlay_intersection;
problem and quick fix related to boost trac ticket #10019;
2014-05-09 09:33:32 +03:00
Menelaos Karavelas
a7d02e0391 [distance][test] enable segment-segment distance computations 2014-05-09 00:20:24 +03:00
Menelaos Karavelas
226dcc4e6c [comparable distance] fix comments so that they make sense wrt to the code they refer to 2014-05-09 00:02:17 +03:00
Menelaos Karavelas
47c1cfe9b6 [strategies][distance] re-implement the dfeault distance result using the default strategy from detail::distance::default_strategy 2014-05-08 23:59:11 +03:00
Menelaos Karavelas
73858fc359 [comparable distance] simplify the definition of the default comparable strategy using the class detail::distance::default_strategy 2014-05-08 23:56:55 +03:00
Menelaos Karavelas
4598228ea0 [distance] re-implement the default strategy type in free function distance(g1, g2); remove inclusion of unused headers; 2014-05-08 23:50:28 +03:00
Menelaos Karavelas
cd77588326 [strategies] implement default_comparable_distance_result class 2014-05-08 23:48:38 +03:00
Menelaos Karavelas
e729f37bbe [distance] perform reverse-dispatch for default strategy 2014-05-08 23:47:22 +03:00
Menelaos Karavelas
3d25114c8e [distance] remove inclusion of default_distance_result (not used) 2014-05-08 22:33:56 +03:00
Menelaos Karavelas
aecc7c8015 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/distance-for-merge 2014-05-08 17:29:00 +03:00
Menelaos Karavelas
1a2ef5c2bc [disjoint] add specializations for linestring/multilinestring, multilinestring/multilinestring; fixed specialization for polygon/multilinestring 2014-05-08 16:39:09 +03:00
Menelaos Karavelas
23f8b97fac [index] include comparable_distance algorithm 2014-05-08 15:59:15 +03:00
Menelaos Karavelas
8a7a14bc53 [index] replace call to comparable_distance_near by bg::comparable_distance 2014-05-08 15:52:53 +03:00
Menelaos Karavelas
203aa991ae [index] replace #include <boost/geomerty/geometry.hpp> by the necessary includes 2014-05-08 15:46:25 +03:00
Adam Wulkiewicz
9ea4b6bf6c [index] Add the support for std::pair<> and boost/std::tuple<> registered as Indexable 2014-05-08 14:42:45 +02:00
Menelaos Karavelas
d289118bd9 [strategies] add the point-box and box-box pythagoras strategies in strategies/strategies.hpp 2014-05-08 15:26:57 +03:00
Menelaos Karavelas
752de3060a [iterators] add free function has_one_element, that tests whether an iterator range has a unique element (has size 1) 2014-05-08 15:15:16 +03:00
Menelaos Karavelas
b1eaf94bfe [strategies][distance] add a template parameter to default distance strategy corresponding to the second geometry of the distance strategy 2014-05-08 15:12:59 +03:00
Menelaos Karavelas
3c64533d7d [distance] add primary dispatch definition under algorithms/dispatch 2014-05-08 15:11:54 +03:00
Menelaos Karavelas
55f63b77df [distance] update distance.hpp: primary dispatch is under algorithms/dispatch/, details are under algorithms/detail/distance/ 2014-05-08 15:10:24 +03:00
Menelaos Karavelas
0600a3419f [strategies][distance] add tags for point-box and box-box strategies 2014-05-08 15:08:09 +03:00
Menelaos Karavelas
cfc4e7a3c9 [multi][distance] move multi/algorithms distance code under algorithms/ keep the file as a placeholder and include algorithms/distance.hpp 2014-05-08 15:06:19 +03:00
Menelaos Karavelas
ddc5ddf0ff [comparable distance] add free function for comparable distance that takes a strategy 2014-05-08 15:04:23 +03:00
Menelaos Karavelas
e783d7ca2e [distance] dispatches for various geometry combinations with the point-point strategy;
the point-point strategy is not the natural distance strategy for these geometry pairs;
the dispatches have been added for backward compatibility;
2014-05-08 15:01:03 +03:00
Menelaos Karavelas
ab6588f9b2 [distance] implementation for distance(multi-point,range) 2014-05-08 15:00:07 +03:00
Menelaos Karavelas
8553124d37 [distance] base cose for distance computations using the R-Tree 2014-05-08 14:58:05 +03:00
Menelaos Karavelas
e1e227c022 [distance] segment-box distance computation 2014-05-08 14:57:44 +03:00
Menelaos Karavelas
3051652a5b [distance] add implementation for distance computation between a polygon and a segment or a box 2014-05-08 14:57:11 +03:00
Menelaos Karavelas
26dfb26d69 [distance] add implementation for distance computation between a range and a segment or a box 2014-05-08 14:53:21 +03:00
Menelaos Karavelas
5d04ac7c92 [distance] segment-to-segment distance computation 2014-05-08 14:52:51 +03:00
Menelaos Karavelas
22142c9040 [distance] add distance code for multi-to-multi geometry combinations and dispatch specializations;
some of the code in this file originated from multi/algorithms/distance.hpp
2014-05-08 14:52:13 +03:00
Menelaos Karavelas
6bac8b43a1 [distance] add distance code for single-to-multi geometry combinations and dispatch specializations;
some of the code in this file originated from multi/algorithms/distance.hpp
2014-05-08 14:49:27 +03:00
Menelaos Karavelas
ad2fbc9e5b [distance] add helper classes for choosing default strategies 2014-05-08 14:49:01 +03:00
Menelaos Karavelas
17d3f0e78e [strategies][distance] add class to convert a distance result from comparable to regular distance result if needed;
add implementation of this for cartesian coordinates (applies sqrt);
2014-05-08 14:47:19 +03:00
Menelaos Karavelas
f9825be6bf [distance] add implementation of distance(point, geometry); most of the origina code was in algorithms/distance.hpp; the point-box combination was added;
point_to_range takes only one strategy now; all intermediate distance computations done with comaprable distances (conversion happens at the end);
2014-05-08 14:43:38 +03:00
Menelaos Karavelas
ebc8d5cf63 [distance] add distance(box, box) detail implementation 2014-05-08 14:43:10 +03:00
Menelaos Karavelas
affc4340c2 [strategies][distance] add cartesian strategy for point-box and box-box distance computation 2014-05-08 13:49:24 +03:00
Menelaos Karavelas
1e3041e748 [overlay][P/P, L/L] replace BOOST_AUTO_TPL by the exact type 2014-05-08 01:28:09 +03:00
Barend Gehrels
899c94b148 Merge branch 'develop' of github.com:boostorg/geometry into develop 2014-05-07 13:15:22 +02:00
Adam Wulkiewicz
dffd4a4f64 Merge pull request #22 from mkaravel/feature/setops
Feature/setops
2014-05-07 11:58:11 +02:00
Adam Wulkiewicz
6407199617 Merge pull request #21 from mkaravel/feature/point_iterator
Feature/point iterator
2014-05-07 11:57:20 +02:00
Barend Gehrels
22f3c65b5d [doc] Added doc for parameters Doxygen was missing 2014-05-07 11:40:57 +02:00
Menelaos Karavelas
51c601bb49 [point_iterator_type] replace #include of type traits by the specific one used (is_const) 2014-05-06 22:02:26 +03:00