Я искал по всему интернету и не могу найти ясного смысла для следующих двух подпрограмм в poly2tri:
/**
* Get CDT triangles
*/
std::vector<Triangle*> GetTriangles();
/**
* Get triangle map
*/
std::list<Triangle*> GetMap();
Единственное отличие, которое я нахожу, это тип контейнера, вы можете видеть полный источник здесь
Помимо этого, единственная документированная ссылка это.
/// Constrained triangles
vector<Triangle*> triangles;
/// Triangle map
list<Triangle*> map;
Так в чем же разница между ними? Я использовал getTriangles () для рисования меша OpenGL, и он отлично работает, но я беспокоюсь, что это неправильно.
Когда вы триангулируете простой многоугольник, вы также можете получить треугольники вне границы многоугольника, когда многоугольник вогнутый.
Я думаю, что карта содержит все треугольники, а GetTriangles возвращают только треугольники внутри данного многоугольника.
Других решений пока нет …