0
dynamic_quadratic으로 rtree를 만들고 계약자에게 패킹 알고리즘을 사용할 범위를 지정하고 싶습니다. 여기 정규 코드로 수행하기위한 코드입니다.dynamic_quadratic을 사용하여 rtree에서 알고리즘을 패킹
namespace bg = boost::geometry;
namespace bgi = boost::geometry::index;
typedef bg::model::point<double , 3, bg::cs::cartesian> BoostPoint;
typedef std::pair<BoostPoint, unsigned> PointValue;
std::vector<PointValue> points;
for(...)
{
//fill in the points vector
}
bgi::rtree< PointValue, bgi::quadratic<16> > rtree_points(points);
내가 함께 할 수있는 방법 :
bgi::rtree< PointValue, bgi::dynamic_quadratic > rtree_points(points);
?
는 Alredy이 예를 살펴 :
packing algorithm in rtree in boost
번째 생성자 파라미터하지만 BGI'생성자 :: dynamic_quadratic'로'BGI :: dynamic_quadratic' 객체를 전달할 필요가 RTREE의 노드의 요소들의 최대 수를 얻어 (이 BGI '에 해당 : 2 차 템플릿 매개 변수). 귀하의 예제에서 점의 크기'std :: vector'는'bgi :: dynamic_quadratic'으로 암시 적으로 변환됩니다 (아마도 이것은 허용되어서는 안됩니다). 그래서 모든 요소를 포함하는 하나의 거대한 노드 만 갖는 rtree를 생성하십시오. 이 rtree는 어떤 것도 가속화하지 않습니다. 대신 bgi :: dynamic_quadratic (16)을 두 번째 매개 변수로 전달해야합니다. –