У меня есть однокомпонентная треугольная сетка в CGAL. Я хочу заполнить дыры, а затем применить операцию скелетонирования потока средней кривизны. Я могу использовать «Операции» > «Обработка полигональной сетки» > «Заполнение отверстий» для триангуляции, уточнения и выравнивания отверстий. Я ожидаю, что теперь, когда отверстия исправлены, сетка станет единой, закрытой, водонепроницаемой и готовой к скелетонированию. Но когда я выполняю «Операции» > «Скелетирование сетки триангулированной поверхности» > «Скелет средней кривизны», я получаю ошибку «Сетка не представляет собой единую замкнутую сетку. Она имеет 10 компонентов» или какое-то другое число. Это наводит меня на мысль, что мне нужно объединить исходную сетку и компоненты с «заполненными отверстиями», но я не уверен.
Раньше я использовал скелетонизацию MCF, и для этого требуется одна замкнутая сетка. Раньше я решал эту проблему, выполняя плотную альфа-переноску и затем скелетонируя результат. Однако альфа-перенос вводит нежелательные соединения и может работать медленно. Я пытаюсь просто восстановить исходную сетку без альфа-обертывания.
Подробнее здесь: https://stackoverflow.com/questions/798 ... nents-cgal