Можно ли принудительно применить ребра (ограниченную триангуляцию Delaunay) в Delaunay scipy.spatial?

Я экспериментирую с реализацией триангуляции Делоне Кулла в scipy.spatial. .

Можно ли сгенерировать триангуляцию таким образом, чтобы сохранить ребра, определенные входными вершинами? (РЕДАКТИРОВАТЬ: т.е. ограниченную триангуляцию Делоне.) То же самое можно сделать с помощью пакета треугольников для Python.

Например, на картинке ниже есть несколько треугольников (синие), которые не учитывают расположение краев (красный), которые определяются вершинами. Есть ли способ обеспечить соблюдение этих ребер таким образом, чтобы они во всех случаях были частью результата триангуляции?

Триангуляция Делоне


person songololo    schedule 22.05.2015    source источник


Ответы (1)


То, что вы ищете, называется ограниченной триангуляцией Делоне, и, к сожалению, реализация scipy.spatial не поддерживает ее.

Как вы отметили, в triangle есть такая функция - почему бы не использовать ее вместо этого?

person cfh    schedule 22.05.2015
comment
Да, в настоящее время я использую треугольник, который хорошо подходит для моих целей, хотя базовый пакет треугольника (который он обертывает) иногда вызывает сбой моего скрипта python, поэтому я искал алгоритм резервного копирования для «на всякий случай». - person songololo; 22.05.2015
comment
@shongololo: Может быть, стоит сообщить об этом как об ошибке в треугольнике, если это действительно причина? - person cfh; 22.05.2015
comment
@cfh привет, да, сделали, но проблема не может быть воспроизведена в их системе (с использованием Linux, а я использую Mac) - person songololo; 22.05.2015
comment
@shongololo: я нашел другую библиотеку, которая может работать с ограниченным Delaunay и имеет неофициальные привязки Python. Код не поддерживается, но, возможно, он сработает для вас. - person cfh; 22.05.2015
comment
Poly2Tri выглядит интересным и имеет хорошую репутацию, но инструкции по привязкам Python кажутся загадочными, а относительно старая реализация заставляет меня задаться вопросом, совместим ли он с Python 3? - person songololo; 23.05.2015
comment
Проводилась ли какая-либо работа по добавлению ограничений в более поддерживаемую библиотеку за последние 2+ года с момента первоначального задания этого вопроса? - person kuanb; 17.08.2017