2010-02-19 4 views
5

У меня есть несколько треугольников 1000s, соединенных в сетку 2D-сетки. Он представляет собой поток воды. Эта сетка является триангуляцией delaunay. Мне нужно объединить треугольники обратно в минимальное количество простых полигонов, так что каждый многоугольник является ограниченным, чтобы не иметь внутренних отверстий. Выходные многоугольники должны иметь одинаковую форму.Упрощение сетки сетки

Есть ли известный алгоритм для этого?

+0

Вы можете сделать BFS с проверкой, если следующий треугольник находится в одной плоскости с остальной частью полигона? (если это так, отметьте его пройденным и добавьте его в многоугольник, иначе ничего не сделайте) Возможно, с этим может возникнуть проблема, но я не вижу его сразу – glebm

ответ

0

отвечая на мой собственный вопрос :)

Я нашел лучший способ сделать это состоит в использовании методов многоугольника союза, подобные дизъюнктному подмножество сращивания. Вот блог на быстрой реализации путем использования пространственных индексов

http://lin-ear-th-inking.blogspot.com/2007/11/fast-polygon-merging-in-jts-using.html

Смежные вопросы