mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-09 23:24:02 +00:00
[test][index] Add test for specific case of contains(pt).
This commit is contained in:
parent
7ec2706d50
commit
3f282b5e19
@ -12,6 +12,7 @@ build-project generated ;
|
||||
|
||||
test-suite boost-geometry-index-rtree
|
||||
:
|
||||
[ run rtree_contains_point.cpp ]
|
||||
[ run rtree_epsilon.cpp ]
|
||||
[ run rtree_insert_remove.cpp ]
|
||||
[ run rtree_intersects_geom.cpp ]
|
||||
|
45
index/test/rtree/rtree_contains_point.cpp
Normal file
45
index/test/rtree/rtree_contains_point.cpp
Normal file
@ -0,0 +1,45 @@
|
||||
// Boost.Geometry Index
|
||||
// Unit Test
|
||||
|
||||
// Copyright (c) 2016 Adam Wulkiewicz, Lodz, Poland.
|
||||
|
||||
// Use, modification and distribution is subject to the Boost Software License,
|
||||
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
#include <rtree/test_rtree.hpp>
|
||||
|
||||
#include <boost/geometry/index/rtree.hpp>
|
||||
#include <boost/geometry/geometries/geometries.hpp>
|
||||
|
||||
template <typename Params>
|
||||
void test_one()
|
||||
{
|
||||
typedef bg::model::point<double, 2, bg::cs::cartesian> Pt;
|
||||
typedef bgi::rtree<Pt, Params> Rtree;
|
||||
Rtree rtree;
|
||||
|
||||
rtree.insert(Pt(0, 0));
|
||||
rtree.insert(Pt(1, 1));
|
||||
rtree.insert(Pt(2, 2));
|
||||
rtree.insert(Pt(3, 3));
|
||||
rtree.insert(Pt(4, 4));
|
||||
rtree.insert(Pt(4, 3));
|
||||
rtree.insert(Pt(0, 3));
|
||||
|
||||
for (Rtree::const_iterator it = rtree.begin() ; it != rtree.end() ; ++it)
|
||||
{
|
||||
std::vector<Pt> result;
|
||||
rtree.query(bgi::contains(*it), std::back_inserter(result));
|
||||
BOOST_CHECK(result.size() == 1);
|
||||
}
|
||||
}
|
||||
|
||||
int test_main(int, char* [])
|
||||
{
|
||||
test_one< bgi::linear<4> >();
|
||||
test_one< bgi::quadratic<4> >();
|
||||
test_one< bgi::rstar<4> >();
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user