Я новичок в CGAL, уверен, что мой вопрос очень простой.
Я пытаюсь использовать CGAL для выполнения некоторой триангуляции Делоне. У меня есть сетка с N трехмерными точками над сферой, и я хочу триангулировать сферу, используя эти точки в качестве вершин треугольников. Мне просто нужно получить список вершин таких треугольников:
id_triangle1 вершина_1 вершина_2 вершина_3 id_triangle2 вершина_1 вершина_2 вершина_3 .......
Я сделал это для выполнения триангуляции:
std::vector<Point> P;
for(i=0;i<NSPOINTS;i++)
P.push_back(Point(GRID[i].x,GRID[i].y,GRID[i].z));
// building Delaunay triangulation.
Delaunay dt(P.begin(), P.end());
Проблема в том, что я не знаю, как получить итоговую триангуляцию. Я понял, как получить face_iterator, но не знаю, что оттуда делать:
Delaunay::Finite_faces_iterator it;
for (it = dt.finite_faces_begin(); it != dt.finite_faces_end(); it++){
std::cout << dt.triangle(it) << std::endl;
}
Я не уверен, правильно ли это перебирать треугольники, и если это ... треугольник = лицо ?? ¿, я имею в виду, что каждая позиция итератора имеет только треугольник¿? Как я могу правильно получить x, y и z каждого треугольника¿? ¿