Я разработчик игры с открытым исходным кодом, Bitfighter. В соответствии со следующим сообщением SO мы использовали отличную библиотеку "Triangle" для генерации сетчатой зоны для использования с нашими игровыми AI (роботами):
Триангуляция многоугольника с отверстиями
Однако мы столкнулись с небольшой проблемой, когда хотим упаковать нашу игру для Debian - использование библиотеки "Треугольник" сделает нашу игру считающейся "несвободной".
Мы были очень довольны работой библиотеки "Треугольник" и не хотим отказываться от нее; однако нам также не нравится заниматься вопросами лицензии. Поэтому мы приступили к поиску подходящей, разрешительно-лицензированной замены, которая может соответствовать "Треугольнику" в его надежности и скорости.
Мы ищем библиотеку C или С++ для разделения больших, сложных областей на треугольники, которые могут обрабатывать любые нерегулярные многоугольники, размещенные вместе каким-либо образом, а также дыры. Надежность - наша основная потребность, скорость почти такая же важная.
Я нашел poly2tri, но он страдает от ошибки, в которой он не может обрабатывать многоугольники с совпадающими ребрами.
Мы нашли несколько библиотек, но все, похоже, страдают от того или иного: либо слишком медленного, либо не обрабатывают дыры, либо страдают от некоторой ошибки. В настоящее время мы тестируем polypartition, и у нас есть большие надежды.
Каковы наилучшие альтернативы большой библиотеке "Треугольник" , но имеют разрешительную лицензию?