Не полный ответ на ваш вопрос, но если у вас есть общий многоугольник (вогнутый, выпуклый и т. Д.), И вы хотите его триангулировать (возможно, для последующего рендеринга в стиле openGL), вы можете изучить пакеты «триангуляции с ограниченным Делоне» , Одним из таких примеров является пакет Triangle , который считается быстрым и надежным.
Насколько я понимаю, алгоритмы, используемые в Треугольнике, демонстрируют O(nlogn)
сложность времени выполнения.