Я надеюсь на эквивалент CGAL (в C ++) - я хочу выпуклое разбиение полигонов или хотя бы триангуляцию. Это также должно быть бесплатно. В предыдущем вопросе предлагалось JTS , но, похоже, эти функции не выполняются.
JTS поддерживает триангуляцию Делоне, но не ограниченную триангуляцию (дыры): http://lin -ear-th-inking.blogspot.com / 2009/04 / Делоне-триангуляции-в-JTS-111.html
Для ограниченной триангуляции Делоне вы можете использовать Poly2Tri . Работает довольно хорошо, но не может триангулировать многоугольники с отверстиями, где отверстия касаются контура или другого многоугольника.
В настоящее время я использую тесселятор OpenGl (перенасыщение) с java-оберткой javl (http://jogamp.org/)) для триангуляции в java. Вы должны реализовать правильные обратные вызовы и поиграть там.
Ни один из них не удовлетворяет всем (моим) потребностям, но до сих пор я не нашел лучшего.
GeoTools имеет довольно обширную библиотеку алгоритмов манипулирования геометрией, но, конечно, так же, как и JTS, она несколько ГИС-ориентирована.
CGAL имеет SWIG-управляемые привязки с 2012 года. 2D триангуляция и сетка, соответствующие 2D, являются ее частью. Пожалуйста, посетите github wiki для дальнейшей информации.
Вы можете попробовать GeoLib, который является отличным пакетом геометрии.
GeoLib