Manifold Geometry // Многообразная Геометрия

Geometric modeling

Подписаться на эту рубрику по RSS

Заметки на геометрическую тематику.

Удаление нескольких граней

Анализ Положения позволяет удалить выбранную грань, причем для ее поиска можно использовать диалог "Find face", вызываемый комбинацией клавиш "Ctrl+F":

Этот диалог позволяет ввести индекс или реальный адрес в памяти (пригодится, если вы занимаетесь дебагом), после чего приложение найдет соответствующую грань и подкрасит ее. Поиск граничных элементов по их внутренним идентификаторам особенно удобен для интерактивного выбора «битых» граней и ребер, которые иногда даже не могут быть отображены в 3D-сцене. Однако, с таким подходом есть сложности. Допустим, вы собираетесь удалить грани с индексами 2, 3 и 6 из вашей CAD-модели. Для примера возьмем простой кубик, но на практике вы часто понятия не имеете, где искомые грани находятся и как они выглядят.

Удалив грань с номером 2, вы неминуемо обнаружите, что внутренняя индексация модели сместилась. Так, грань номер 3 теперь оказалась на противоположной стороне кубика, а грань номер 6 и вовсе исчезла (поскольку их всего осталось 5).

Последовательные индексы граничных элементов не являются инвариантами процесса моделирования, поэтому необходим сервис т.н. «топологического именования». Чтобы им воспользоваться, даем команду "init-naming" в консоли Analysis Situs. Теперь каждая грань модели имеет уникальное имя, производное от ее серийного индекса на момент инициализации сервиса именования (так, грань 3 получает имя "face_3"). Сервис именования позволяет ввести для граничных элементов инвариантные индексы (имена), которые не меняются в процессе редактирования формы. В поддержку этой функциональности, диалог "Find face" будет расширен в версии 0.3.2 программы Analysis Situs.

Теперь интересующие нас грани можно искать по их именам, а для удаления граней 2, 3 и 6 нужно последовательно найти и удалить грани с именами "face_2", "face_3" и "face_6".