Как получить доступ к значениям, хранящимся в flann::Matrix

Я работаю с фланговой библиотекой с облаками точек. У меня есть этот метод адаптера, который преобразует мои собственные точки во фланго-используемые точки

flann::Matrix<float> * converterFlann::convertArray(vector<Point *> *P){

    float points[P->size()*3];

    int j = 0;
    for (int i = 0; i<P->size(); i++){

        points[j] = P->at(i)->getX(); j++;
        points[j] = P->at(i)->getY(); j++;
        points[j] = P->at(i)->getZ(); j++;
    }

    P->at(0)->print();
    cout << points[0] << " " << points[1] << " " << points[2] << endl;

    flann::Matrix<float> *nari = new flann::Matrix<float>(points, P->size(), 3);

    cout << *nari[0][0] << " " << *nari[0][1] << " " << *nari[0][2] << endl;

    return nari;
}

И результат этого метода

Printing my point:         (-0.06325,   0.0359793,  0.0420873) Index: 0
Printing from points array: -0.06325 0.0359793 0.0420873
Printing from flann:        -0.06325 -0.06275 -0.0645

Я не понимаю, почему печать с фланга:: Матрица, Y и Z отличаются. Я искал некоторую документацию о процедуре хранения flann::Matrix, но я не смог найти никакого ответа. Я считаю, что мой доступ типа массива правильный, но он не работает.

Заранее спасибо.:D

0 ответов

Другие вопросы по тегам