Commit Graph

8536 Commits

Author SHA1 Message Date
Adam Wulkiewicz
0c78ad8489 [assign_box_corners] Fix Range concept usage. 2014-08-08 17:21:14 +02:00
Adam Wulkiewicz
800f174e28 [convert] Fix Range concept usage. 2014-08-08 17:18:06 +02:00
Adam Wulkiewicz
0101ba37c5 [append] Fix interior rings and multi Range concept usage. 2014-08-08 17:15:17 +02:00
Adam Wulkiewicz
daf4c5ac2b [index] Fix compilation error - invalid variable name in assert. 2014-08-08 17:00:56 +02:00
Adam Wulkiewicz
bd4a66ddd3 [range_by_section] Fix Range concepts conformance for interior rings and multi ranges. 2014-08-08 16:59:21 +02:00
Adam Wulkiewicz
6df273f5e7 [convert] Replace index type to unsigned 2014-08-08 16:54:34 +02:00
Adam Wulkiewicz
4089337045 [overlay] Fix Range concepts conformance for interior rings and multi ranges. 2014-08-08 16:46:27 +02:00
Adam Wulkiewicz
183124057e [index] Update copyright info 2014-08-08 15:04:10 +02:00
Adam Wulkiewicz
f24430c300 [index] Optimize R* choose_next_node - remove sort() and cleanup 2014-08-08 14:59:15 +02:00
Menelaos Karavelas
4444dd1824 [algorithms][multi][num_points] move code from multi/algorithms/ directory
to algorithms/ directory
2014-08-08 13:23:04 +03:00
Menelaos Karavelas
ba5e60fd25 [algorithms][num_segments]
* move code common to other counting algorithms in namespace
  detail::counting (in file algorithms/detail/counting.hpp)
* implement algorithm for boxes of any dimension
2014-08-08 13:20:48 +03:00
Menelaos Karavelas
d2e7bc17e8 [algorithms][num_points]
* move code common to other counting algorithms in namespace
  detail::counting (in file algorithms/detail/counting.hpp)
* implement detail::range_count using detail::num_segments::range_count
* implement algorithm for boxes of any dimension
2014-08-08 13:17:26 +03:00
Menelaos Karavelas
fe4244692d [test][algorithms][num_segments] add tests for boxes in 3, 4 and 5 dimensions 2014-08-08 13:14:31 +03:00
Menelaos Karavelas
2d539902f0 [test][algorithms][num_points] add tests for boxes in 3, 4 and 5 dimensions 2014-08-08 13:07:16 +03:00
Menelaos Karavelas
2b83e7493a [test][algorithms] add the unit tests for num_geometries and
num_interior_rings to the Jamfile
2014-08-08 13:06:25 +03:00
Menelaos Karavelas
ec87092dfa [test][algorithms][num_interior_rings] add unit test for num_interior_rings
algorithm, including test for variant support
2014-08-08 13:05:56 +03:00
Menelaos Karavelas
e9b79bce23 [test][algorithms][num_geometries] add unit test for num_geometries
algorithm, including test for variant support
2014-08-08 13:04:53 +03:00
Menelaos Karavelas
c6c2b1a1bd [algorithms][num_geometries]
* add variant support
* use common functionality in namespace detail::counting for implementing this free function
2014-08-08 13:03:31 +03:00
Menelaos Karavelas
34273f2dea [algorithms][num_interior_rings]
* add variant support
* add concept checking for the geometry
* use code in geometry::detail::counting for implementing this function
2014-08-08 13:01:29 +03:00
Menelaos Karavelas
01a8e53d2a [test][util] add the unit test for ipower to the Jamfile 2014-08-08 12:56:20 +03:00
Menelaos Karavelas
f87ff27d85 [test][util] add unit test for the ipower metafunction in the util
namespace
2014-08-08 12:55:36 +03:00
Menelaos Karavelas
c94443d3d4 [util] add compile-time Boost.MPL-based implementation for computing
the power of an integral constant; this is used for computing (at
compile-time) the number of points and segments of a box in any dimension;
2014-08-08 12:54:08 +03:00
Menelaos Karavelas
f49f321700 [algorithms][detail][counting algorithms] move common functionality of
all counting algorithms in one place and in new namespace:
geometry::detail::counting
2014-08-08 12:51:42 +03:00
Menelaos Karavelas
ac4dd2c2f7 [algorithms][buffer] fix header for inclusion of disjoint: it is
the point-box and not the box-box version that is needed; also
the call to disjoint is not done via the free function but rather
using the disjoint dispatch struct
2014-08-08 12:25:31 +03:00
Adam Wulkiewicz
8d7b70c3e0 [index] Change the condition and asserts in R*-tree redistribute_elements nth_element 2014-08-08 02:06:26 +02:00
Adam Wulkiewicz
34dcb881d1 [index] Replace partial_sort() with nth_element() in R*-tree redistribute_elements. 2014-08-08 01:38:39 +02:00
Adam Wulkiewicz
5e5044c9d3 [index] Optimize R*-tree choose_next_node by nearly minimum overlap cost - replace partial_sort() with nth_element() and sort() 2014-08-08 00:54:27 +02:00
Adam Wulkiewicz
0728c799dc [follow] Fix msvc size_t to int conversion warnings 2014-08-07 00:52:40 +02:00
Adam Wulkiewicz
3322234f6a [test] Change size type in wrapped_boost_array from int to std::size_t 2014-08-07 00:47:18 +02:00
Adam Wulkiewicz
df40ef3bc7 [follow] Fix msvc size_t to int conversion warnings 2014-08-07 00:34:00 +02:00
Adam Wulkiewicz
b5cea9aaf0 [test] Fix size_t to int conversion in test_difference 2014-08-07 00:18:06 +02:00
Adam Wulkiewicz
74a38b84dd Merge pull request #126 from mkaravel/feature/num_segments
Feature/num segments
2014-08-06 23:10:35 +02:00
Adam Wulkiewicz
a2ff852a28 [doc] Add algorithms/detail buffer and intersection directories to Doxyfile 2014-08-06 20:31:16 +02:00
Adam Wulkiewicz
3148a3bda5 [intersection] Move from multi directory. 2014-08-06 20:29:35 +02:00
Adam Wulkiewicz
64f6eac9b5 [num_interior_rings] Move from multi directory. 2014-08-06 19:39:49 +02:00
Adam Wulkiewicz
9796c27b8a [append] Move the code from multi directory 2014-08-06 19:22:06 +02:00
Barend Gehrels
96825eb7e4 [test][buffer][fix] Fix compilation errors in robustness test for buffer 2014-08-06 13:50:04 +02:00
Menelaos Karavelas
831b8dcc51 [doc][examples][num_segments] replace example multi-polygon by a valid one 2014-08-06 14:29:25 +03:00
Barend Gehrels
e1fc427e30 [buffer][fix] Mark points in buffered areas as not startable instead of discarding them
Within can have in rare cases a rounding issue. We don't discard this
point, so it can be used to continue started rings in traversal. But
will never start a new ring from this type of points.

This fixes p17
2014-08-06 13:27:52 +02:00
Menelaos Karavelas
4743a67ec6 [doc][examples][num_segments] remove unnecessary includes 2014-08-06 14:22:18 +03:00
Menelaos Karavelas
c81e8ac430 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/num_segments 2014-08-06 14:13:46 +03:00
Barend Gehrels
734432fe50 Merge pull request #125 from mkaravel/fix/convert-missing-typename
[algorithms][convert, extreme_points] add missing typename
2014-08-06 13:13:07 +02:00
Menelaos Karavelas
c9b5e09fff [algorithms][convert, extreme_points] add missing typename 2014-08-06 14:08:46 +03:00
Menelaos Karavelas
be586b5947 Merge branch 'develop' of https://github.com/boostorg/geometry into feature/num_segments 2014-08-06 14:02:26 +03:00
Menelaos Karavelas
f4aeb4f7c6 [algorithms][is_valid] use bg::partition to test whether polygons
(not associated with any turns) do not intersect/overlap each other
2014-08-06 13:37:08 +03:00
Menelaos Karavelas
9641372738 [algorithms][is_valid] make the visitor for partition more generic
(semantically) so that it fits the semantics of the visitor needed
for partition in the multipolygon case
2014-08-06 13:35:35 +03:00
Barend Gehrels
727a1d5997 Merge pull request #123 from MarekKurdej/fix/narrowing-conversion-warnings
Fix warnings about narrowing conversions on 64-bit systems with 32-bit int
2014-08-06 12:26:47 +02:00
Menelaos Karavelas
5cf1371594 [algorithms][is_valid] fix bug in collecting ring iterators not
associated with turns; rename overlaps_ring to overlaps_box;
rewrite expand_box and overlaps_box in a more generic way (the
arguments are considered now as generic iterators, not necessarily
iterators or rings);
2014-08-06 13:17:28 +03:00
MarekKurdej
a65a94afbc Fix warnings about narrowing conversions on 64-bit systems with 32-bit int. 2014-08-06 11:55:31 +02:00
Menelaos Karavelas
94ebb3bf72 [algorithms][is_valid] use bg::partition to check whether the interior
rings of a polygon (that are disjoint from each other and from the
exterior ring) do not overlap with each other
2014-08-06 12:36:20 +03:00