Как создать CGAL Nef_polyhedron_3 из буфера вершин / индексов? - PullRequest
0 голосов
/ 01 февраля 2019

Я хочу сделать выпуклое разложение на триангулированной сетке.Глядя на документацию CGAL, выпуклая декомпозиция работает на типе CGAL::Nef_polyhedron_3, который может быть построен на типе CGAL::Polyhedron_3.Но моя входная сетка представлена ​​в виде буфера вершин + индексного буфера следующим образом:

struct Mesh {
    std::vector<Vector3> vertices;
    std::vector<int32_t> triangles;
};

Как мне преобразовать это в многогранник CGAL?Я знаю, что могу написать файл OFF и загрузить его в объект многогранника CGAL, но я не хочу вводить издержки дискового ввода-вывода, если мне это не нужно.

1 Ответ

0 голосов
/ 04 февраля 2019

Ваш вклад представлен в виде супа-полигона, как мы его называем в CGAL.Существуют функции, позволяющие проверить, действительно ли они являются полигональной сеткой, и, если это так, есть функции для построения из нее полигональной сетки, включая Polygon_3.Посмотрите здесь и здесь .

...