|| ДонНТУ > Портал магістрів ДонНТУ
Магiстр ДонНТУ Хлепiтько Iгорь Вiкторович

Хлепiтько Iгорь Вiкторович

Факультет: Обчислювальної техніки та інформатики
Спеціальність: Програмне забезпечення автоматизованих систем
Керівник: доцент Карабчевський В.В.


[Біографія]


Дослідження засобів розробки систем геометричного моделювання


Вступ

На даному етапі розвитку комп'ютерних технологій системи геометричного моделювання є незамінним компонентом у багатьох галузях виробничої діяльності людини. В останні роки в інженерній практиці широко застосовуються обчислювальні можливості персональних комп'ютерів для виконання розрахунків, автоматизації проектування, організації і планування експериментальних досліджень, для обробки результатів випробування машин, механізмів, апаратів. Крім того, зараз необхідна комплексна комп'ютеризація інженерної діяльності на всіх етапах життєвого циклу виробів. Широке визнання отримали такі системи як AutoCAD, 3D MAX, SolidWorks і т.д. Всі вони володіють власними перевагами і недоліками, кожна система має величезний функціонал, що дозволяє вирішити більшість завдань в тій чи іншій галузі, але й за ліцензійну копію такого продукту доведеться викласти солідну суму.

У більшості випадків при купівлі однієї з ціх систем використовується лише мала частина величезного функціоналу, наданого розробниками даної системи. І тоді на підприємстві може бути ухвалене рішення про написання власної системи, яка має досить обмежений набор функцій, який, однак, дозволяє вирішити поставлену задачу.

Така проблема також виникає у більшості вищих навчальних закладів нашої країни. В даний час для інженера будь-якої спеціальності навички та вміння рішення виробничих і наукових задач з допомогою обчислювальних машин є необхідними. Однак покупка ліцензійних копій більшості графічних систем навчальним закладам не по кишені і тоді єдиним виходом є створення власних систем геометричного моделювання.

У цьому випадку багато часу іде на розробку власних класів та їх зв'язування, написання функцій для роботи з графічними об'єктами і т.д. За рахунок необхідності написання системи «з нуля» значно збільшується час розробки системи і виникає необхідність мати деяку бібліотеку класів і функцій, що дозволить легко і швидко створювати прості графічні системи для вирішення конкретної задачі. Крім того, для швидкого і зручного використання цієї бібліотеки доцільно створити деяку візуальну середу, яка дозволить максимально прискорити і спростити роботу програміста при створенні графічної системи.

Актуальність теми

Актуальність даної роботи полягає в необхідності скорочення часових витрат на розробку систем геометричного моделювання.

Мета і завдання роботи

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

Основні завдання, які необхідно вирішити:

- дослідження існуючих засобів, призначених для розробки систем геометричного моделювання;

- аналіз даних систем і виявлення основних переваг та недоліків кожної з них з метою виявлення оптимальної структури для розробляємої системи;

- розробка візуальної середи проектування даної структури.

Новизна роботи

Новизна роботи полягає в застосуванні нового підходу у проектуванні графічних систем, який полягає у використанні візуальної середи розробки. У цій середі найбільш поширені блоки програмного коду надані у вигляді графічних об’єктів. На даний момент всі засоби розробки систем геометричного моделювання представлені у вигляді деяких графічних ядер, що не завжди зручно. Розробляєма система також являє собою графічне ядро, однак його функції використовуються не прямо, а через візуальну середу.

Аналіз досягнень і публікацій

На даний момент засобам розробки систем геометричного моделювання приділяється величезна увага. Виділяють три типи ядер: ліцензуємі ядра, приватні та ядра, які поставляються у вихідному коді [1].

Ліцензуємі ядра геометричного моделювання розробляються однією компанією, яка ліцензує їх іншим компаніям для їх CAD-систем. До числа таких ядер відносяться Parasolid (UGS) і ACIS 3D Geometric Modeler (Spatial / Dassault Systemes). Використання таких ядер в даному випадку є не доцільним через їх високу вартість.

Приватні ядра геометричного моделювання розробляються виключно у власних цілях, і використання таких ядер не є можливим. Прикладом таких ядер служать Thinkdesign kernel (think3 Inc.) І VX Overdrive (Varimetrix Corp.).

Ядра, доступні у вихідному коді також розробляються та підтримуються однією компанією, після чого вони ліцензуються іншим компаніям для використання в CAD-програмах. Однак розробники таких ядер забезпечують їх вихідний код, що є дуже зручним для користувачів, які мають групи розробки. Використання таких ядер дозволяє отримати досить великий функціонал для вирішення більшості задач, поставлених перед програмістом проектувальником. Це такі ядра як Open CASCADE (Matra Datavision) і SMLib (Solid Modeling Solutions).

В [2] були розглянуті проблеми, пов'язані з побудовою навчаючих систем геометричного моделювання. Пізніше було прийнято рішення про створення системи, описаної в [3]. У ході роботи були зроблені висновки про необхідність створення інструментарію, що дозволяє скоротити часові витрати при побудові схожих систем, використовуючи накопичені навички і знання. В [4] був описаний функціонал розробляємого ядра, сформульовані проблеми, що виникають при побудові ядра. На основі даного ядра була розроблена система, описана в [5]. Її основним завданням є побудова тривимірного представлення з комплексного креслення в навчальних цілях для вирішення завдань прикладної геометрії, а також демонстрація можливостей ядра. Візуальна середа розробки систем геометричного моделювання призначена для спрощення використання даного ядра, а також для скорочення витрат часу на вивчення можливостей ядра.

Постановка задачі

Метою даної роботи є побудова візуальної середи, що задовольняє вишевказаним вимогам. Результатом роботи даної середи проектування є програмний код розробленої користувачем графічної системи на мові С++.

Можна виділити дві складові частини даної середи проектування: графічне ядро, що містить основний набір функцій і класів і, власне, сама візуальна середа, що дозволяє використовувати ядро для вставки блоків коду в проект користувача.

Створення візуальної середи

На даному етапі розробки реалізовано графічне ядро, що містить класи для роботи з такими геометричними об'єктами як точка, лінія, коло, еліпс, сплайн, а також функції для роботи з цими об'єктами. До таких функцій відносяться функції повороту об'єкта на довільний кут щодо довільної точки, перенесення об'єкта, для відрізків реалізовані функції вирівнювання (align) і подовження (lengthen), аналогічні однойменним функціям системи AutoCAD. При розробці даного ядра була використана структура, наближена до структури ядра Open CASCADE, описаного в [6].

Сама візуальна середа в значній мірі нагадує середу Delphi. Вона містить дизайнер форм, редактора вихідного тексту, палітру компонентів і інспектор об'єктів.

На рисунку 1 показана головна форма в процесі розробки:

Рис.1 Головна форма майбутньої середи геометричного моделювання

Рис.1 Головна форма майбутньої середи геометричного моделювання

При створенні нового проекту в візуальній середі, створюється файл проекту формату xml, який містить опис розробляємої програми. В файлі проекту зберігаються основні атрібути головної форми (наприклад, положення, колір фону, тип рамки) і компонентів, доданих проектувальником на форму. Крім того, створюється файл з кодом програми на мові С + +, який відображається в редакторі вихідного тексту і може бути при необхідності змінений користувачем. Редактор вихідного тексту і згенерований код показано на рисунку 2.

Рис.2 Редактор вихідного тексту

Рис.2 Редактор вихідного тексту

Палітра компонентів показана на рисунку 3.

Рис.3 Палітра компонентів

Рис.3 Палітра компонентів

Змінювати значення атрибутів компонент користувач може за допомогою інспектора об'єктів. На рисунку 4 показані інспектор об'єктів та атрибути головної форми системи.

Рис.4 Використання інспектора об'єктів для редагування атрибутов головної форми проекту

Рис.4 Використання інспектора об'єктів для редагування атрибутов головної форми проекту

Застосування розроблених засобів

Для більш наочної демонстрації можливостей даної візуальної середи розглянемо графічну систему для побудови тривимірного представлення з комплексного креслення.

На малюнку 5 показано рішення задачі про знаходженні вертикалі і горизонталі площини, заданої трьома точками, за допомогою цієї системи.

Рис.5 Знаходження горизонталі й фронталі площини, заданої трикутним відсіком
			(анімований рисунок складається з 20 кадрів затримка 100 мс. зроблений у MP Gif Animator)

Рис.5 Знаходження горизонталі й фронталі площини, заданої трикутним відсіком (анімований рисунок складається з 20 кадрів затримка 100 мс. зроблений у MP Gif Animator)

У даній системі використані такі компоненти як головне меню, строка стану, робоча область, список об'єктів і система координат.

Для роботи з графічними об'єктами створюється дві робочі області. Зліва розташовується область для роботи з двовимірними об'єктами. З нею зв'язується двовимірна система координат, в якій вказується її центр і напрямок осей.Справа створюється область для роботи з тривимірними об'єктами, вказується для неї тривимірна система координат. Після цього на форму міститься прихований компонент «список об'єктів».

Висновки

Використання сполучення візуальних компонентів і функцій ядра дозволить розробнику графічної системи позбутися довгої рутинної роботи при створенні інтерфейсу графічної системи та скоротить часові витрати на побудову системи в цілому. Розроблюєма система має зручний інтуїтивно зрозумілий інтерфейс та легко освоюється користувачем.

Система дозволяє користувачеві використовувати стандартні функції для створення геометричних об'єктів, виконання модифікації таких об'єктів, а також виконання видових операцій над усіма об'єктами в цілому. Область застосування розроблюваної візуальної середи досить велика. Дана система може використовуватися як в навчальних цілях, для побудови простих систем геометричного моделювання призначених для демонстрації задач нарисної геометрії, так і на виробництві, для створення спеціалізованих графічних систем з мінімальними тимчасовими витратами.

Також планується вдосконалення даної середи, нарощування її функціональних можливостей, модифікація інтерфейсу для максимальної зручності користувача. Побудова тривимірного представлення на даному етапі можливо лише у випадку, коли проекціями є відрізки. У найближчому майбутньому також планується усунути цей недолік, дозволити користувачеві створювати поверхні більшістю можливих засобів, реалізувати функції для роботи з твердотілим об'єктами.

Література

1. Обзор ядер геометрического моделирования // Сайт поддержки пользователей САПР под редакцией Виктора Ткаченко [электронный ресурс]: http://www.cad.dp.ua/obzors/karnel.php

2. Карабчевський В.В. Засоби розробки навчальних систем для курсу “Інженерна графіка” // Прикладна геометрія та інженерна графіка. Міжвідомчий науково-технічний збірник. Випуск 71. Київ: КНУБА. – 2002. – С. 195-200.

3. Карабчевский В.В., Хлепитько И.В. Графический редактор для работы с параметризованными двумерными объектами // Матеріали III наукової конференції молодих учених та студентів «Інформатика та комп’ютерні технології». Донецьк: ДонНТУ. – 2007. – С. 278-280.

4. Карабчевский В.В., Хлепитько И.В. Разработка проблемно-ориентированных систем геометрического моделирования Наукові праці Донецького національного технічного університету. Серiя "Проблеми моделювання та автоматизації проектування динамічних систем" (МАП-2007). Випуск: 6 (127) - Донецьк: ДонНТУ. - 2007. – С. 234-239.

5. Карабчевський В.В., Хлепітько І.В. Засоби розробки систем геометричного моделювання. Наукові нотатки. Міжвузівський збірник (за напрямом «Інженерна механіка»). Випуск 22. Частина 1. «Сучасні проблеми геометричного моделювання (квітень, 2008). – Луцьк, 2008. – С. 133-137.

6. Использование Open CASCADE для создания приложений // Журнал «САПР и графика» [электронный ресурс]: http://www.sapr.ru/article.aspx?id=7878&iid=319

7. Зоммер В. AutoCAD – 2007. Руководство чертежника, конструктора, архитектора. – М.: ООО «Бином – Пресс», 2007 . – 816 с.

8. Аммерал Л. Машинная графика на персональных компьютерах. Пер. с англ. – М.: “Сол Систем”, 1992. – 232 с.

9. Аммерал Л. Интерактивная трехмерная машинная графика. Пер. с англ. – М.: “Сол Систем”, 1992. – 317 с.

10. Шишкин Е.В., Боресков А.В. Компьютерная графика. Полигональные модели. – М.: ДИАЛОГ – МИФИ, 2001. – 464с.

Примітка

На час написання цього автореферату магістерська робота не є закінченною. Остаточний варіант роботи може бути отриманий у автора або його керівника після 1 січня 2010 р.


[Біографія]