Herkese selamlar rtree, boost aralık değerleri ile oluşturulduğunda ambalajlama algoritmasını kullanır. Paketleme algoritması kullanarak rtree örneğine ihtiyacım var. İşte o boost en hızlı biri olarak göründüğü gibi algoritma ambalaj ile RTree oluşturmak istiyorum kuadratik algoritmasınıPaketleme algoritması rtree içinde boost içinde
using point = bg::model::point < int, 2, bg::cs::cartesian >;
using pointI = std::pair<point, std::size_t>;
vector<point> contourCenters // has some value
bgi::rtree< pointI, bgi::quadratic<16> > rtree;
vector<pointI> cloud;
for (size_t i = 0; i < contourCenters.size(); ++i)
{
int x = contourCenters[i].get <0>();
int y = contourCenters[i].get <1>();
cout << "Contour Centers: (" << x << "," << y << ")";
cloud.push_back(mp(x, y, i));
rtree.insert(make_pair(contourCenters[i], i));
}
kullanan benim kodudur. Lütfen bana destek algoritması ile bir rtree oluşturmak için bana rehberlik.
Zarif bir çözüm için teşekkürler. Destek belgelerini görüyorsam http://www.boost.org/doc/libs/1_58_0/libs/geometry/doc/html/geometry/spatial_indexes/introduction.html dört tane RTree var. Bu şekilde başlatıldığında bu kuadratik rtree yerleştirme rtree olur. Rtree tanım satırını aşağıdaki gibi değiştirirsem ne olur: bgi :: rtree> rtree (bulut); –
Prem
bunu biraz daha açıklayabilseydiniz gerçekten yardımcı olur .... – Prem
@Prem: Bu kurucu özel bir toplu yükleme algoritması kullanır, bu yüzden daha sonra ağaçtan öğe eklemediğiniz sürece paketleme algoritmasının önemli olmadığını düşünüyorum. . – Nemo