Создание поверхности корпуса корабля из облака точек

Я новичок в CGAL или любой теории создания поверхностных сеток. Дело в том, что я хочу создать инструмент для создания поверхностной сетки корабля из облака точек. Корабль состоит из свободных поверхностей. Также имеет несколько плоских сторон (например, верхняя дека, плоское дно, плоская сторона и транец).

Я начал с примера CGAL, реконструкция поверхности по набору точек. Думаю, пример хорошо передает гладкую поверхность. Мне интересно, может ли метод, представленный в примере, обрабатывать поверхности с острыми краями. Или я не уверен, есть ли более простой способ сделать поверхностную сетку из облака точек.

Буду признателен, если кто-нибудь даст мне подсказку или совет по созданию поверхностной сетки на корпусе корабля.

Заранее спасибо.


person Seong    schedule 13.07.2015    source источник


Ответы (1)


При реконструкции поверхности важен способ оценки нормалей. Алгоритм реконструкции CGAL принимает набор точек + нормали. Для оценки нормалей существует несколько методов, подробнее в:

http://doc.cgal.org/latest/Point_set_processing_3/index.html#Point_set_processing_3NormalEstimation

В частности, в вашем случае важны параметры edge_sensitivity и sharpness_angle, чтобы точно восстановить острые края поверхности.

Другая возможность - сегментировать набор точек на несколько частей, реконструировать каждую часть независимо, а затем объединить их.

person BrunoLevy    schedule 24.07.2015