Для выполнения проектно-конструкторских работ пользователи приобретают универсальные системы автоматизированного проектирования. Однако, достаточно часто они используются в сравнительно узких областях, например, при компоновке объемных геометрических моделей машиностроительных объектов из набора заданных в базе данных моделей отдельных узлов, отработке общего вида объекта и т.п. Создавать системы, специализированные на конкретную узкую область проектных работ, можно средствами расширенного пользовательского интерфейса, предоставляемыми разработчиками универсальных систем. Очевидно, что в этом случае системы проектирования получаются избыточными, медленными и, соответственно, дорогими. Лучшим вариантом может оказаться компоновка таких систем заново из имеющихся в распоряжении разработчика базовых программных средств. В статье рассмотрен пример создания специализированной системы для проектирования каминов на основе средств комплекса Графика-81[1].

Назначение и состав системы

Система предназначена для конструирования каминов из имеющегося набора параметрически заданных типовых элементов. Набор элементов может изменяться и дополняться. Система формирует объемную геометрическую модель и может ее отображать на экране графического дисплея или на графопостроителе в виде векторного изображения или растрового с учетом цвета и направления освещения. Элементы камина размещаются в пространстве с помощью специальных средств буксировки. На основе подсчета количественных характеристик объемов и поверхностей геометрических моделей каминов система позволяет определить требуемый расход материалов. Кроме того автоматически могут создаваться спецификации с указанием сведений об изготовителе, материале, цене и т.д.

Система содержит средства взаимодействия пользователя и визуализации, геометрический процессор, подсистемы управления базой данных и вывода информации.

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

Средства визуализации отображают на экране графического дисплея проекцию геометрической модели на картинную плоскость. Проекция может быть параллельной, перспективной или косоугольной.

Геометрический процессор выполняет все операции по построению, редактированию и преобразованию моделей объектов. К операциям преобразования относятся операции поворота модели и ее отдельных элементов, масштабирования, копирования, удаления, отсечения, объединения, разности двух объектов и т.д.

В базе данных сохраняются созданные пользователем типовые модели и результаты проектирования.

Подсистема вывода позволяет отображать результаты проектирования на различных внешних устройствах, а также обмениваться информацией с другими системами (например, AutoCAD, 3D Studio) через форматы IGESI и DXF.

Для работы системы необходимо иметь IBM-совместимый компьютер минимальной конфигурации: адаптер VGA , 640 Кб оперативной памяти и 10 Мб свободной памяти на диске, операционная система DOS 3.30 и выше или MS Windows.

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

В основе системы моделирования положено представление объектов с помощью многогранников [2]. Модель многогранника состоит из описаний ограничивающих его граней. Описание каждой грани содержит топологическую и геометрическую информацию и состоит из описаний контуров грани и координат вершин этих контуров. Модель сцены имеет списковую структуру. Последовательность списков снизу вверх включает списки вершин, указателей на вершины, контуров, граней и их атрибутов, а также тел.

Геометрические модели элементов каминов могут быть введены как 2,5D-модели или твердотельные модели, которые специальным образом хранятся в общей структуре модели камина и преобразовываются при необходимости в модель многогранника.

Созданная модель многогранника позволяет осуществлять ее композицию, декомпозицию и формировать произвольные сечения. С помощью этой модели осуществляется интерфейс с другими системами геометрического моделирования полиэдров.

Средства взаимодействия и визуализации


Рис. 1

Рис. 2
Система имеет дружественный интерфейс, представленный многоуровневым иерархическим меню. На верхнем уровне имеется резидентое меню, которое всегда активно. Из резидентного меню можно вызвать любую команду. Разработаны специальные средства для формирования новых пиктографических меню, в том числе и для вывода из базы данных типовых моделей по их графическому образу. На рис.1 показан вариант представления меню на экране дисплея и пример компоновки камина из набора типовых моделей отдельных элементов. Назначения элементов пиктографического меню указаны на рис.2 и 3.

Созданные модели могут отображаться на плоскость различными способами. Она задается выбором преобразования проецирования и заданием его параметров, например, лучом зрения или поворотами плоскостей. Каждая проекция, в свою очередь, может быть векторной, представленной контурами линий, или растровой с заполненными областями, учитывающими цвет и освещение. Векторные проекции могут быть без удаления или с удалением невидимых линий (УНЛ). Растровые проекции могут быть со сглаживанием или без сглаживания полутонов. Оперативным (самым быстрым) отображением является векторное без УНЛ. Такое отображение используется чаще всего при формировании и редактировании моделей. Для устранения неоднозначности восприятия или для получения реалистичного изображения формируется изображение с УНЛ или растровая проекция. УНЛ и создание растрового изображения требуют относительно больших временных затрат и применяются реже, в основном, на конечных этапах моделирования.


Рис. 3

Рис. 4

В основе алгоритма УНЛ лежит метод количественной невидимости, при этом можно условно показать невидимые линии и сформировать проволочную модель изображения. Формирование растрового изображения c учетом цвета и освещения осуществляется сортировкой граней по глубине, сканированием строки, сглаживанием полутонов, способом Z-буфера. Каждый из этих способов дает различное качество отображения модели и требует для этого разного времени.

На рис.4 показана грубая раскраска изображения камина. На рис. 5-7 приведены примеры различной компоновки каминов из набора типовых элементов с нанесением текстуры на их поверхности. Накопленная база данных типовых элементов позволяет получить десятки тысяч вариантов компоновки каминов.

Литература

1. Артамонов Е.И. Комплекс программных средств CAD/CAM – систем ГРАФИКА-81. – Автоматизация проектирования, №1,1997, с.42-45.
2. Шурупов А.А. Система 3-х мерного геометрического моделирования "Обьемный конструктор". – Информатика-Машиностроение. 1996.№3,с.7-12.