автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Исследование и разработка объектно-ориентированной системы геометрического моделирования
Автореферат диссертации по теме "Исследование и разработка объектно-ориентированной системы геометрического моделирования"
На правах рукописи УДК 681.3.082
ЩЕДРИН Сергей 1<ихайдович
ЕОаШЩШАНМЕ Н РАЗРАБОТКА <Ш1ЖПЯЬСИШ!тП>€ШШКт С:СТП,"1 ГЕШЕТИРЕЕСШГО &1£ШРСВЛИ11Я
Специальность 05.13.11 - Математическое и прогршггтго -обеспечение вычислительных машин, юишлексов, опстсм ц сетей
Автореферат диссертация на соискание ученой степени кандидата фнвико-математических наук
Цссква - 1992
N '"V
Работа выполнена в Институте проблем кибернетики РАН
Научный руководитель : член-корреспондент РАН
Е П. ИЕанников
Официальные оппоненты : доктор фивико-математических наук
С. а Клименко
кандидат фиаико-иатематических наук (1Е. Педанов
Ведущая организация : Институт прикладной математики
им. Ы. Е Келдыша РАН
Защита состоится " " 1993г. в часов на
васедании специализированного совета К. 003.78.01 Института проблем кибернетики РАН
Адрес: 117312, Москва, ул. Вавилова дом 37
Автореферат разослан " " 19921'.
Учений секретарь специализированного совета К. 003.78.01 к.ф.-м. н. А. 3. Ишмухаметов
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
В диссертации рассмотрен вопрос использования объектно-ориентированного подхода при реализации системы геометрического моделирования в полном объеме, включая фазы конечноэ-лементного моделирования и проведения физических расчетов.
Актуальность те!<ы. Твердотельное моделирование и трехмерная графита составляют наиболее значительную часть в общем объеме компонент систем визуализации научных исследований и САПР.
Традиционным недостатком систем данного класса является невозможность их непосредственной интеграции с прикладными программами, проводящими физическое моделирование и численный анализ. -1ункции систем геометрического моделирования заканчиваются после проектирования геометрической формы, что значительно снимает их потребительские качества. Отсутствие интегрирующей роли геометрического ядра системы приводит к невоз-иожности реализации единого проекта, объединяющего основные фазы проектирования и проведения научных исследований.
Поэтому актуально проведение разработки объектно-ориентированной системы геометрического моделирования, обладающей мобильностью, расширяемостью, легко настраиваемой на различные области приложений и способной интегрироваться с прикладными расчетными программами.
Цйльез данного исследования было проведение анализа структуры современных систем геометрического моделирования, выделение их основных компонент, наиболее труднореализуемых частей и раврабйтка технологии их реализации.
Научная шшсша работы заключается в разработанной автором методологии анализа и синтеза систем геометрического моделирования. Она мо;кет служить примером проектирования сложных прикладных систем с использованием объектно-ориентированной технологии. Объектно-ориентированный подход в реализации органично привел к формированию объектно-ориентированной конструктивной модели, которая содержит в себе описание бинарных деревьев, пространственную геометрию и физические свойства пространственных объектов, позволяет производить реалистическую визуализацию тел, моделировать динамику и физические свойства проектируемых изделий. Одним из основных достоинств разработанной объектно-ориентированной конструктивной модели является ее расширяемость. Т. е. на основе универсального объектно-ориентированного базиса возможно расширение модели посредством реализации и включения в нее новых операций геометрического и физического характера, что позволяет производить быструю ее настройку на конкретные прикладные области применения. Также на этой основе была спроектирована система пользовательского интерфейса, иредставляюшэя совокупность объектов коммуникации (окон) пользователя и прикладной графической программы, которая обеспечивает разработчика привычной многооконной оболочкой, позволяет работать как на плоскости, так и в пространстве, обеспечивает мобильность создаваемого программного обеспечения.
Практическая аначшасть проделанной работы заключается в возможности использования разработанной технологии при создании систем научной визуализации и САПР, использующих элементы геометрического моделирования й графического интерфейса.
Лплробадия работы и публикации. Предложенные идеи были аппробированы автором и успешно им использованы при реализации прототипа системы геометрического моделирования. В этой системе был также спроектирован наиболее труднореализуемый в системах геометрического моделирования граничный аппроксиматор конструктивной модели. Основные результаты работы докладывались на Всесоюзной конференции "Современные проблемы информатики, вычислительной техники и автоматизации" (г. Москва, 1988г.), на I Всесоюзной научно-технической конференции "Прогнозирование создания гибких производственных систем и робото-технических комплексов в условиях интенсификации производства" (г.Киев, 1990г.), на школе-семинаре молодых ученых "Нашинная графика и автоматизация проектирования в радиоэлектроншсе" (г.Челябинск, 1990г.), на семинарах.в Институте проблем кибернетики РАН, а также на других семинарах и рабочих Естречах.
По результатам исследования имеется 5 печатных работ. Компоненты системы, касающиеся графического взаимодействия с пользователем, использованы сторонними организациями. Документы о внедрении и использовании прилагаются в диссертации.
Объем м структура ¡сжсертацин. Диссертация состоит из введения, четырех глав, заключения, приложения. Ее общий объем 93 страницы, в том числе, 12 рисунков, 1 таблица и список литературы из 40 наименований.
СОДЕРЖАНИЕ РАБОТЫ
Во введении изложена постановка исследуемой проблемы, обосновывается ее актуальность, формулируются основные цели диссертационной работы. Дается краткое описание диссертации.
В первой главе проведен анализ систем • пространственного геометрического моделирования, элементов реалистической графики и пользовательского интерфейса. Это позволило выделить ключевые вопросы, вставдие перед разработчиками подобных систем.
Реализация проекта, связанного с разработкой системы геометрического моделирования, требует тщательного анализа комп- , лекса взаимосвяаанных вопросов. Ключевыми среди них являются выбор схемы внутреннего представления пространственных объектов, ориентация на наиболее аффективные методы- визуализации модели, учет вопросов графической стандартизации и взаимодействия с пользователем.
В разделе 1.1 проводится обзор различных способов описания геометрических моделей, а такме известных систем. Целью этапа является выбор схемы внутреннего представления для моделирования геометрических форм.
Ядром пространственной модели является его геометрическая модель. Геометричеасая пространственная модель и ее характеристическая Функция, классифицирующая пространственную точку по отношению к моделируемому объекту, составляют основную сущность системы геометрического моделирования (СГМ).
Осноьными подходами в геометрическом моделировании являются СЗи-модель(конструктивная; и В-модель(граничная). Визуализация В-модели как и процесс пошагового построения модели вначигельно проще, чем в СБа-подходе, но требует больших объ-еыов памяти.
Геометрическая модель должна точно описывать объект проектирования беа какой-либо аппроксимации. Поэтому за основу Е[нбр§на СЗЗ-модель. Только из нее возможны преобразования в остальные изустные схемы моделирования: граничную, Еокселъную (октальную) и др. Однако полиэдральная В-модель такие необходима в системе.
. - 7 - .
• I
Поэтому в системе необходимо комбинирование Iконструктивной и граничной модели. Т. е. должен быть реализован граничной, алпроксиматор конструктивной модели. При этом граничная модель должна быть "насыщена" топологической информацией о связях между элементами поверхности.
Предложенная смешанная схема моделирования позволит оптимально в зависимости от стоящих задач использовать оба варианта геометрического описания тела.
В разделе 1. 2 проводится краткий обзор методов визуализации, графических стандартов и систем взаимодействия с пользо- • вателе;м. Эти вопросы такие должны быть учтены на. начальном этапе проектирования системы, т. к. они могут оказать существенное влияние на архитектуру системы.
Визуализация пространственных сцен занимает ключевое место в процессе эксплуатации и проектирования систем, ориентированных на работу с объемными объектами. Мэжно выделить следующие виды отображения пространственных объектов:
- каркасное;
- векторное с удалением невидимых линий;
- полутоновое.
Используя каркасное представление, легто выполнять функции редактирования, позиционирования, привязки объекта. Однако с повышением сложности пространственной сцены информационность такого изображения резко падает.
Векторное представление с удалением невидимых линий выполняется достаточно медленно. Представление с удалением невидимых линий более информативно, чем каркасное и часто пспаяь- ■ эуется для оформления чертежной документации. В случае гране-вой аппроксимации объекта для этого представления пространственную сцену необходимо списать набором ориентированных многоугольников, причем для каждого ребра желательно указать-
смежные грани. Здесь очевидно влияние методов визуализации на . структуру граничной модели.
Полутоновое представление возможно как для. твердотельной так и для поверхностной модели. Выполняется очень медленно и требует больших вычислительных мощностей для достижения' эффекта "реального времени" при организации взаимодействия иеззду пользователем и прикладной задачей. В этом случае может использоваться как CSG так и В-модели. Вводится характеристика материала.
В процессе реализации сложной графической системы не . должны, конечно, быть забыты вопросы стандартизации графических систем и систем пользовательского взаимодействия, т. к. это может оказать существенное влияние на процесс проектирования системы.
В стандарте PHIGS зафиксированы многие принципиальные решения, определяющие технологию 3-мерной графики 90-х годов. В PHIGS разделены вопросы геометрического моделирования и вопросы графического ввода/вывода. Принятый в PHI6S подход к описанию данных (графовые "структуры") является весьма общим и близок к описанию моделей пространственных объектов. . Поэтому при разработке концепции системы геометрического моделирования должна быть сделана попытка найти точки соприкосновения ее с концептуальной моделью PHIGS.
За время, прошедшее с начала разработки стандарта, появились и утвердились ь качестве фактичесшх стандартов системы управления окнами и средства разработки пользовательских интерфейсов - такие как X-Vindow и базирующиеся на ней системы . управления пользовательским интерфейсом OpenLook, OSF/Ktotif и'. др.- в среде ОС UNIX, MS Windows - в-среде ЬБ-ЮЗ. Использование систем управления интерфейсом пользователя позволяет обеспечить более высокий уровень переносимости программ и пре-
• - 9 -
доставляет ПП богатые возможности как по части графического вывода, так и по части взаимодействия о внешними устройствами.
Одним из центральных вопросов проектирования системы интерактивного пространственного взаимодействия является вопрос о способах интеграции средств интерактивного взаимодействия с пользователем, предоставляемые PHICG, с таковыми же, предоставляемыми оконными системами. Одни из наиболее перспективных решений; принятые при разработке нескольких коммерческих реализаций PHIGS, являются: РЕК - PHIGS Extensions to XI1 (MIT X Consort lurn), Unigraphics (McDonnel Douglas) и др.
После проведенного з данной главе анализа система в полном варианте реализации mo.yjst быть предстаьлеьа в виде набора следующих крупных компонент:
- геометрическое ядро;
- подсистема кспечноэлг.-'/ентного моделирования и проведения числеиных расчетов;
- подсистема взаимодействия с пользователем;
- |1071'Н1Стема реалистической ьчзуализации.
Подьоря основной итог главы, делается вывод о том, что реализация подобного проекта требует четкой методологии его реализации , которая позволила бы осуществить органичное интегрирование яоегс проекта. Для решении этого ногрсеа выбрана объектно-ориентированная технология, которан .позволит yjneamo решить поставленную задачу.
Во второй г;о«о рнромотреч «опрос разработки обадт-но-ориеьтированьой конструктивной модели. Спроектированы классы, реализующие ее. Прок.июлм-шй элглннт конструктивной модели есть ибгекг соот'хстьуь^зго класса, а с нао-л^ш^м тела Физическими характеристиками объекты соотьетствую^го класса приобретают операции, связанные с их численным анализом и физическим моделированием. Разработанная модель обладает
гибкостью, легко расширяема,■ геометрически точна и обладает рядом других достоинств. Полученная в данной . главе объект- .; но-ориентированная конструктивная модель твердотельных пространственных объектов позволяет интегрировать процедуру геометрического проектирования q задачами конечноэлементного моделирования и проведением численных расчетов, т.е. объединить основные фазы проектирования в общий технологический процесс получения готовой продукции. В результате ядро системы геомет- ' рического моделирования строится на основе иерархического перечня классов.
Традиционный ке подход интерпретирует СЗЗ-модель лишь как геометрическую, оставляя за ее пределами физическую сущность объекта, кинематику и фазу физического моделирования.
В СБО-модели каждый узел бинарного дерева представляет некий пространственный объект или операцию над объектами, результатом которой, как правило, является такие пространственный объект. По мере восхождения по дереву он изменяет свою форму: она усложняется и все больше приближается к желаемой. Далее объект приобретает цвет, - фактуру. Из таких разнородных по своим характеристикам объектов формируется сложная компоновочная структура, возможно задание кинематических параметров пространственных перемещений. Такие объекты могут быть подвергнуты физическому моделированию.
В описанной схеме моделирования пространственных объектов просматриваются и удачно могут быть применены на практике идеи ООП. Во-первых, описанное уровневое расслоение модели повволя- , ет ввести классы. В преломлении к модели тип класса становится синонимом уроьневой иерархии модели. Объект класса есть пространственное тело (в модели это увел СЕСа-дерева).
Таким образом, реализация пространственной модели сводится к проектированию влаосов. Каждый клаосг (уровень модели)
№
инкапсулирует свойства и операции, присущие только ему. При ' проектирование классов пространственных объектов трудно переоценить идею наследования, которая собственно и реализует иерархию модели. На каждом новом модельном уровне добавляются лишь новые свойства и операции, которые образуют новый класс. Свойство полиморфизма классов позволяет абстрагировагься о? операций общих для всех уровней и насыщать эти операции новым!! качества;«!. .
Процесс проектирования объектно-ориентированного ядра системы органично вписался в сущность объектно-ориентироаанно-'го подхода. Расслоив технологический процесс создания новых видов пространственных изделий, произведена фазовая классификация, которая привели ;; созданию иерархичэсгай структуры классов пространственных объектов. Далее сработали сеноиш-э концепции ООП:
- наследование классов;
- инкапсуляция;
- пороадениа экземпляров через объектные классы (объе;:т класса си-ал синонимом пространственного объэкга);
- полиморфизм и перегрузка.
Описана процедура включения а модель новых нримитш ннх . геометрических сЗъеетоз, геометрич^-г-их операций и операций , физического и кийемнтичьск'Л'о моделирования. С зтой точки арз-ния и следует понимать термин расширимости раьр-аЗотаннсй «модели, ее геометрическую, фкаичзекую и кииемкткчгек/ю сущность.
Кроме ьтого, каждый пространственный объект (объе!:? соот-- ветстБущыо класса ¡/.одели) кол^т быть рассмотрел как элемент бинарного дерева, вюшчавдсго все нуобходти операции по работе с ним (а том числе редактирование). По^гок/ еи;л-ез прост' раиственных конструкций возможен с использованием данных рэ-дакторсгак функций древовидных объектов, встроенных в шог.
Часто это представляет более удобный механизм пространственного манипулирования, особенно яри работе с объектами компоновочной природы.
Иерархия спроектированных классов ьыглкдиг следующим образом:
ВТгее1кхкг - - РЬуз1са1Г©Н<1 - АозевЫуБоНс!
Таким образом, в данной главе удалось построить объектно-ориентированное ьдро, иитегрируыдее всю систему.
Трсгья глаиа посвящена вопросу реализации граничного апп-роксиматора конструктивной модели. Многочисленные частные случаи пересечений пространственных объектов сведены к конечному числу ситуаций, подлежащих обработке. ■ Эначенле проблема граничной нллро.чс-лмации в процессе реализации подобных систем трудно переоценить. Это находит подтверждение при анализе современных периодических изданий, касел!Д/;>:ся вопросов твердотельного модемров&и.чя и реалистической графики. Количество работ по данной тематике не имеет тенденции к понижению.
Рс-ализыдил грйннчног-о аппроксим^тора, а в особенности часть, вшюалй&^я т с с ре тлко-ь- но к с т в с и I; ь операции, г^ляетсд одной и.ч н.члбоаее слоадш проблем проектирования снеге!.« твердотельного мсделироЕсни;!.
Раздсгх 3.2 посьяярн радреча'йма неустойчивых ситуаций в задаче классификации многогранников. Дяя ьор.шадости проведения анализа всех ьоомоаи-.ых ситуаций вводится' разбнодь» всех пересеченнД типа ребро-грань на классы зквивалентностей ц сведении мнолеетва всех ситуаций к конечному числу. В результате все ьозкюкнье случаи сесднтси к 16 классам пересечении.
Раайионме на классы пересечений позволяют сформировать необходимый ш-гчиолительиый ба'лю, повысить ниде:ыость работы модуля классификации тел, производить вариантное наполнение информацией и необходимую обработку в каждом конкретном слу-
■ чае-
Раздел 3.2.4 описьшает разрешение особых ситуаций касаний объектов. Для этого классическая формула выполнения теодети-КО"множественных операций длл многогранных объектов расшрепа с учетом таких ситуаций. Если обозначить операцию взятия гра- • ницы тела S -> b(S), то это будет следующий набор формул: Ь(А+В) - Ь{'Л за В') <+> t('D пкэ А*) <+> Ь('Л in. Щ Ь(А-В) » Ь('Л rsio В') <+> ШПЬС'З в Г)] <+> ШГ£Ь('А "а В*)3 b{A~D) - Ь('А 3 3') <+> Ь{'В 3 А') <+> Ъ('А на В')
Эти формулы учитывают случай касания объектов по граням, что отражается наличием третьей компонента Здесь операция NOT Cb(S)3 означает реверсирование ориентация контуров граней тела S.
Теперь разреиение случаев касания по граням в процессе классификации тел сводится к поиску третьей компоненты формул. Если случаев касания нет, то третья компонента есть пустое множество. Известны подходы, когда производится переклассификация данной компоненты к одной из двух первых. В данном случае она вычисляется непосредственно.
Далее сделан вывод, что в процессе разрешения случаев . касания остается определить компоненту Ь( ' А на В' ) только п случае одинаковонаправленпых нормалей граней касанпл.
В разделе 3.3 описывается процесс разработки необходимых 1 топологических операций для выполнения процедуры классификации многогранников.
В четвертой главе проводится разработка пользовательского интерфейса, ориентированного на взаимодействие в пространстве.
Комплексное проектирование системы геометрического моделирование предполагает решение вопроса пользовательского взаимодействия, осуществляемого■при работе с системой. Здесь должен быть учтен ряд факторов, влияющих на ее наиболее эффектив-
- 14 - .
ную реализации. Среди них молио выделить такие, как учет спе-г цифики работы пользователя системы геометрического моделирования, осущзствляшрго манипуляции как в пространстве, так и на плоскости, интегрирование ее со стандартизованными системами оконного взаимодействия, изолированность ее от остальных компонент системы, ее мобильность (от которой будет зависеть мобильность графических прикладных программ, 1 создаваемых на ее базе) и некоторые другие факторы. Используемая объектно-ориентированная технология создания системы пользовательского интерфейса позволила успешно разрешить поставленные задачи. В данной главе описано проектирование классов оконного взаимодействия, базирующееся на принципе полиморфизма ООП.
В разделе 4.2 рассмотрен конвейер видовых преобразований системы взаимодействия с пользователем, на базе которого далее будет спроектирована система оконных классов:
13 - Цу г Езг ж Но г 1!Ь г ИсЪ г Нзр г ж Ш Здесь каждая матрица представляет собой фазу конвейера видовых преобразований.
В разделе 4.4 проводится разработка оконных классов. В результате иерархия классов выглядит так:
ВазеШгх1тг - \iindmi_2D - Шгк$яэ_ЗВ В разделах 4.5 и 4. б описана реализация операций трехмерного ввода класса Утс1ок_30. В результате подучены два набора базисов пространственного перемещения трехмерного курсора в ваданной в пространстве плоскости перемещения:
П1(2Г1,0,(-Л/С)21), П2{0,у2.(-В/С)у2) и п1(*1,(-А/В)х1,0), п2(0,0,г2). Создание такой объектно-ориентированной системы взаимодействия с пользователем окончательно позволяет сделать вывод об объектно-ориентированной природе системы геометрического моделирования. Теперь функцией оболочки системы (как и других
прикладных программ) становится управление обгеотгист: пространственными телами и объектами-окн&вд. А все управление производится посредством встроенных в сбъекты операций.
Например, программа реалистическюй визуализации получас-? на. вход два объекта, один предстагляе? пространственное тело, предназначенное для визуализации, а другой есть окно, в которое будет осуществляться вывод нзображнил. Таким образом, система становится объектно-управляемой, и все осталъпке необходимые компоненты разрабатываются по этому да принципу.
Окончательный вывод данной главы: с реализацией объе:сг"о-ориентированной системы пользовательского-взаимодействия система геометрического моделирог.ания окончательно приобретаем объеютю-ориеитирсвакную сухость.
ЗШГЛЕШК '
Приведем основные результаты диссертационной раоогы:
1. Произведена четаья структуризация системы геометрического моделирований, после чего она представляйся перечнем изолированных компонент.
2. Разработана объектно-ориентировапная нетидо^огня реа1;мац!:*л системы геомэтрического моделирования. На. ее основе скисаюсь возможным произвести реализацию систем в полном обч-еме с интегрированием важнейших фаз проектирования .пространственных изделий.
3. Спроектировано объектно-ориентированное ядро, предо тзляк>-щее иерархически пострсэннуй перечень классов и интгтрирукгдо е£сь проект.
4 Разработал модуль граничной аппрскслмацич конструктивной модели. Все случаи пересечений пространственных многогранных
- 16 -
объектов сведены к конечному числу классов пересечений.
5. Реализованная объектно-ориентированная система пользовательского интерфейса изолирует прикладные программы, использующие графический диалог, от объектно-ориентированного ядра. Благодаря этому реализация графических программ значительно упрощается и выглядит как взаимодействие объектов "пространственное тело" с объектом "пространственное окно" посредством встроенных в них операций.
6. Все остальные компоненты системы являются по сути программами управления взаимодействием объектов. Таким образом, на самом верхнем уровне система сохраняет свою объектно-ориентированную сушдость.
Основные положения диссертации изложены в следующих печатных работах:
1. Силин А. Я., Кубекин Э. Н., Щедрин С. И
"Система машинной графики для задач автоматизированного * проектирования радиоэлектронной аппаратуры". Междуведомственный тематический научный сборник "Автоматизация проектирования электронной аппаратуры". Таганрог: ТРТИ, 1985, вып. 4.-120с. стр.47.
2. Шэдрин С. Ы.
"Система геометрического моделирования". Тезисы доклада на Всесоюзной конференции "Современные проблемы информатики, вычислительной техники и автоматизации", г. Москва, 1988г. стр. 30.
3. Крейндлин А. И., Щедрин С. М.
"Интерактивная система геометрического моделирования для проектирования конструкций робототехнических систем". Тезисы доклада на I Всесоюзной научно-технической конференции "Прогнозирование создания гибких
• - 17 -
производственных систем и робототехничесгагх комплексов в условиях интенсификации производства". г.Киев 1990г. стр.44. 4. КреЛндлин Л. II, Г,едрил С. М.
"Система проектирования и компоновки объемных злэконтов конструкций РЭА".
Тезисы докгзда на пколе-сештаре шло дых ученнх "»•¡эн'-'гчг-гл графика *и автоматизация проектирования в радкоэле1с?рои::::э". г. Челябинск 1990г. стр.61. Б, Щедрин С. II
■ "Разрешение неустойчивых ситуаций в вадаче клетгфлкац-п многогранников" В печати.
-
Похожие работы
- Объектно-ориентированная методология эволюционной разработки математического обеспечения
- Последование и разработка объектно-ориентированной системы геометрического моделирования
- Автоматизация инженерно-графических работ на базе типовых табулированных программных инструментов и параметрически-управляемого геометрического моделирования
- Разработка инструментальных средств для создания традиционных и объектно-ориентированных геоинформационных систем
- Объектный подход при формировании структур и хранилищ данных в технологической подготовке опытного производства
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность