Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы автоматизированного проектирования (Бори...docx
Скачиваний:
48
Добавлен:
09.11.2019
Размер:
1.28 Mб
Скачать

2. Технологии моделирования в mcad-системах

Существует множество терминов, для того чтобы охарактеризовать технологии описания и создания 3D-геометрических моделей в CAD-системах:

  • моделирование на базе конструктивных элементов (feature-based)

  • параметрическое (parametric/variational)

  • явное (explicit)

  • булево (Boolean)

  • гибридное (hybrid)

  • прямое (direct)

  • динамическое (dynamic)

Технологии описания 3d-геометрии

Базовые понятия, которые применяются для описания 3D-геометрии:

  • Octree

  • Facet Modeling

  • Constructive Solid Geometry (CGS)

  • Boundary Representation (B-Rep)

Octree (октадерево) – древовидная структура, создающаяся путем рекурсивного деления пространства на 8 одинаковых частей вплоть до достижения минимального размера, т.е. листа дерева.

Такой метод предполагает, что крупное и сложное тело создается путем скрепления более мелких и простых 3D-тел. Информация хранится только для непустых частей, что экономит память. В настоящее время этот метод не используется в 3D MCAD, но многие приложения для инженерного анализа и симуляции применяют октадерево или похожие методы для пространственного разбиения. Пример – построение сеток в приложения для конечно-элементного анализа (FEA).

Facet Modeling (фасетное моделирование) обычно используется в 3D-графике, когда высокая точность не требуется, например, в 3D-играх, развлекательных приложениях, географических системах. В системах 3D MCAD практически не используется, за исключением визуализации (это функция графической карты).

Constructive Solid Geometry (конструктивная блочная геометрия) описывает графические построения путем комбинирования геометрических 3D-примитивов – сферы, куба, конуса, а также тел, описываемых квадратными и кубическими уравнениями. Модели формируются путем применения к примитивам трех булевых операций: объединение, пересечение, вычитание.

Примерно до 1998 года эта технология была общепринятой в MCAD и в дальнейшем ее использование сокращалось. Последняя система с технологией CGS – это I-deas фирмы SDRC, которая была поглощена в 2001 году. Технологии I-deas были в той или иной степени интегрированы в системы Unigraphics NX и CATIA.

Проблемы чистой CGS-технологии заключаются в снижении точности при замене реальной геометрии примитивами, а также в ограниченности набора этих примитивов.

Одна из составляющих CGS-технологии исправно служит и по сей день – структура или дерево примитивов, а соответствующие булевы операторы являются основой современных CAD-систем, базирующихся на истории построений.

Boundary Representation (граничное представление) в настоящее время является наиболее точным способом представления 3D-геометрии и применяется во всех современных MCAD-системах.

Первая коммерческая реализация этой технологии – геометрическое ядро Romulus. В 70-80-х годах прошлого века на этом ядре базировалось несколько систем 3D-моделирования – Anvil, Graphtec, Unigraphics. Многие из тех, кто разрабатывал Romulus, в начале 90-х создали ядро ACIS, которое получило широко распространение. Romulus также был предшественником геометрического ядра Parasolid, которое конкурирует с ACIS.

Моделирование B-Rep изначально предполагало повышенную точность, однако разработка и модификация моделей были достаточно сложными. Проектировщики часто искали выход в создании собственных базовых примитивов, а булевы операции выполнялись даже для внесения простых изменений. Такой способ известен как явное моделирование (explicit modeling). Процедура была достаточно трудоемкой, но в результате получалась очень устойчивая и точная модель.

Кроме перечисленных технологий можно упомянуть еще одну.

В первой версии системы Pro/ENGINEER фирмы PTC создание CAD-модели основывалось на комбинации древовидной структуры CSG (гибкость) с примитивами B-Rep (точность). Такая технология получила название гибридной (hybrid). Это был большой шаг вперед.