Интеграция CAD-систем и генераторов трехмерных неструктурированных сеток

Авторы: Копысов С.П., Рычков В.Н., Пономарев А.Б.

Источник: http://www.ccas.ru/gridgen/ggta02/abstracts/Kopysov1.pdf

Конечные моделирование элементов начинается с постановки задачи и исследования проекта. Перед производством необходимо разработать 3D-объект, создать его элементов и определить граничные условия. Последнее задает вычислительную модель помимо графической модели. В процессе производства, распределение входных данных в сетке генератора достаточно трудно. Расшифровка графических файлов данных (*. DWG, *. СБ, *. IGS т.д.) является наиболее часто используемым методом. Не только CAD-системы поддерживают любые типов графических файлов, но они обладают разнообразными возможностями для отображения 3D. Таким образом, целесообразно использование графических моделей в производстве вычислительной сетки (для создания элементов и определения граничных условий) с помощью любого генератора трехмерных сеток, который соответствует требованиям.

Подход к интеграции CAD и генераторов трехмерных неструктурированных сеток рассматривается в данной работе. Большие различия между их геометрическими ядрами являются основной проблемой в процессе интеграции. В отличие от CAD-системе, генератору сетки необходимо исчерпывающее описание объекта, включая твердотельные и поверхностные данные.

Геометрическое ядро является основной частью CAD-системы. Геометрические данные, которыми оперирует ядро CAD-системы, в основном предназначены для разработки дизайна объекта. На данный момент существуют два широко используемых геометрических ядра: Parasolid и ACIS.

Parasolid является наиболее быстрым объектно-ориентированным геометрическим ядром. Parasolid предоставляет твердотельное моделирование. CAD / CAM-систем, основанные на ядре Parasolid: SolidWorks (SolidWorks Corp), Solid Edge, Unigraphics Modeling (Unigraphics Solutions), IronCAD (VDS) и т.д.

ACIS - это объектно-ориентированная геометрическая библиотека C + +, включающая в себя каркасные, поверхностные и объемные модели, широкий спектр геометрических операций по конструированию и эксплуатации сложных моделей. Кроме того, ACIS позволяет объединять поверхностное и твердотельное моделирование. CAD / CAM-систем, основанные на ядре ACIS: AutoCAD 2000, Mechanical Desktop Autodesk Inventor (Autodesk вкл.), IronCAD (VDS), T-FLEX CAD (Top Systems) и т.д.

Геометрическое ядро является неотъемлемой частью генераторов сеток, но его основной целью является полное описание геометрии объектов, включая всю необходимую информацию для выполнения алгоритма сетки. Наиболее подходящие генераторы сеток имеют объектно-ориентированный интерфейс и объектно-ориентированное геометрическое ядро. Комплексная система состоит из следующих подсистем: AutoCAD, генератора трехмерных неструктурированных сеток и интегратора. Интегратор состоит из C + + библиотеки инкапсулированных COM-объектов генерации сетки и VBA-проекта, связанного с AutoCAD. Объекты интегратора взаимодействуют через интерфейс СОМ. Взаимодействие описывается следующим образом.

- AutoCAD и VBA-проект активированы одновременно. Когда проект открыт, VBA-проект расширяет интерфейс AutoCAD путем добавления новых пунктов меню для настройки и запуска генератора сетки.

- В среде AutoCAD открывается новый документ для хранения сгенерированной сетки.

- COM-объект C + + библиотеки генератора сетки получает указатели на геометрическую модель и проект-контейнер для сетки. После этого геометрическая модель из Auto-CAD проецируется на геометрическую модель генератора. Фактически происходит преобразование данных между двумя графическими форматами. В данном случае это возможно, т.к. геометрическое ядро имеет необходимый функционал. Технология COM и объектно-ориентированный подход позволяет избежать тяжелого программирования для конвертирования форматов данных.

- Генератор создает сетку на основе набора С++ объектов.

- Геометрическая модель сетки (созданная генератором сетки) проецируется на окно Auto-CAD и копируется в проект-контейнер.

Интеграция CAD-систем и генераторов сетка является продуктивным методом формирования данных для вычислений. Это имеет большое практическое значение для разработки сложных программных систем. Теперь является возможным отображения числовых параметров на 3D сетке и обработка картографических данных.