Так, наприклад, для КГ у видавництві часто використовують для виконання однієї роботи Photoshop та CorelDraw, що призводить до додаткових фінансових витрат. У деяких графічних програмах, наприклад, у CorelDraw є внутрішні програмні засоби розширення можливостей. Гнучкою реалізацією системи, яка дозволяє розширюівати графічні можливості є OpenGL (відкита графічна мова). Цю мову буде розглянуто нижче. Підхід оболонка це те, що навколо нас. Існують та поширюються сотні графічних програм різного призначення. Популярні програми що досить поширені, мають версії, які фактично відображують їх розвиток у часі. Прикладів багато – це версії Photoshop, CorelDraw, а особливо ACAD, який мав більше 15 версій. Існують певні правила при створенні властивостей версій. Ось деякі з них - перегляд на давніших версіях документів які підготовлені на молодших, можливість у старших версіях вивести документ у форматі попередньої версії, відсутність суттєвої зміни інтерфейсу, наявність у Хелпі відмінностей від попередньої версії та інші. Суттєвим питанням є обгрунтованість появи нових версій. При цьому виникає багато питань.
Суттєвим недоліком цього підходу є складнощі налаштування функцій програмної системи на клас задач, що вирішуються. Досить часто наші художники використовують і Photoshop, і CorelDraw для вирішення однієї задачі. “Якщо придбав” для нашої країни явище тимчасове, охорона авторських прав скоро стане не винятком, а правилом, і тоді при використанні систем будуть рахувати гроші, що витрачаються.
Позитивною якістю цього підходу є доступність та широка розповсюдженність.
Значні можливості надає використання відкритої графічної мови яка не тільки дозволяє розширення функцій, але й використовує прийняті стандарти у структурі графічних даних і сама є стандартизованою такою графічною мовою є OpenGL яку буде розглянуто нижче.
Підхід “ядро”.
Цей підхід визначає виділення частини функцій, які загальні для широкого кола задач.
Його графічна інтерпретація надана нижче

Наскільки коло задач може бути “широким” це питання скоріше не технічне, а філософське. Якщо Фj (і) - і-ті функції j-ої реалізації, то вірним є співвідношення, яке надано нижче.
![]()
Тобто ядра для супер широкого класу задач не існує. Але для більшості важливих задач, таких як автоматизоване проектування 3-и вимірних обєктів, підхід ядро існує і широко та ефективно використовується. Таким ядром був у 80-і роки GKS, а у 90-і і зараз PHIGS. Він забезпечує побудову та роботу з 3D-графікою, у динаміці та при ієрархічному уявленні об’єктів. Крім цього у системі забезпечено значний рівень незалежності від технічних пристроїв, класу задач та систем програмування. Використовується багаторівнева структура даних (її три рівні розглянуто у лекції, присвяченій формуванню вікон)
Розробка PHIGS відноситься до 90-х років минулого сторіччя. Зараз накопичено багатий досвід і виконано сотні ефективних розробок. Так наприклад у Європі майже всі авто розробляються за допомогою системи САТІА (дивись лекцію по цій системі), що побудована на основі цього ядра. Важливим є те, що ця система розроблена на техніці фірми ІВМ. І ядро працює як на машинах RISC, так і на потужніх комп’ютерах родини ES-9000. При побудові програмного забезпечення для конкретних галузей виділяють певні напрямки, наприклад, твердотільна графіка, штампи та пресформи, трубопроводи та інше. Потужня корпоративна мережа IBM надає можливість ефективно спілкуватися розробникам, які використовують цю систему у всьому світі.
Програмне забезпечення систем на основі ядра має шарову модель, яка надана на малюнку.

Нижнім рівнем є операційна система, вона забезпечує роботу всіх компонентів і на малюнку на ній всі вони стоять. Далі йде ядро, яке зв’язано з зовнішніми пристроями через графічні драйвери. Якщо пристрій не має функцій, які обумовлено ядром, то вони додаються у графічному драйвері. Над ядром знаходиться шар проблемно-незалежних графічних програм, далі йде шар проблемно-залежних програм і потім мовний шар, і на верхньому рівні – прикладні програми. Така побудова графічних систем спрощує зміну та розширення функцій системи.
40. Стандартизація графічних систем
Ціль стандартизації - зорієнтувати розробників Графічних Систем (ГС) на створення програм, що переносяться між різними обчислювальними системами, полегшити швидке вивчення та засвоєння методів і засобів графічного програмування, вказати напрями вдосконалення апаратурних рішень. ГС що розробляються, не повинні залежати від графічних пристроїв, обчислювальних засобів, мови програмування та області застосування. Розглянемо узагальнену схему графічних систем

На верхньому рівні знаходиться база даних (БД), де зберігаються моделі об'єктів і середовища. Стандарт верхнього рівня IGES - Initial Graphics Exchange Specification - визначає формати даних в БД і формати, що використовуються для обміну даними між графічними системами. Наступний рівень інтерфейсу містить зв'язок між програмами користувача і базовим програмним забезпеченням комп'ютерної графіки. Він є основним напрямом у розвитку стандартів. Міжнародна організація по стандартизації ISO підготувала і прийняла стандарт на графічне ядро GKS 2D (ISO 7942) і (GKS - 3D). Ці стандарти зорієнтовані на 2- і 3- вимірну графіку.
Подальшим розвитком цих стандартів є Programmer`s Hierarhical Interactive Graphics System]. Стандарти GKS як і PHIGS, мають набір функцій для програмування в області комп'ютерної графіки. У ньому дається семантика функцій (але не синтаксис), тому GKS - мовно незалежне ядро графічних систем. Для його реалізації дозволяється прив'язка до конкретних мов (СІ++, ФОРТРАН, ПАСКАЛЬ, БЕЙСИК, та ін.). Необхідно стандартизувати також прості графічні системи. Окрім того розробникам термінальних графічних станцій і персональних ЕОМ потрібні рекомендації по зовнішньому інтерфейсу - інтерфейсу третього рівня, що представлений у ISO розробками проектів стандартів CGI (Computer Graphics Interface) і CGM (Computer Graphics Metafile). Ці інтерфейси забезпечують розробку програмних графічних систем, незалежних від конкретних апаратних пристроїв.
41. Стандарт PHIGS та його функції
Один із суттєвих недоліків стандартів CORE, GKS - ZD, GKS - 3D відсутність можливості організації багаторівневих структур даних. Ця властивість є важливою для побудови систем автоматизації проектування, обробки інформації та інших систем. У основі стандарту PHIGS лежить: можливість організації багаторівневих структур даних, робота з трьохвимірними об'єктами, реалізація динамічного управління об'єктами Стандарт PHIGS є розвитком стандарту GKS і має з ним загальні примітиви виводу та їх атрибути, уявлення робочої станції WORK STATION (WS), графічне введення, обробку помилок. Обидва стандарти підтримують концепцію множини віртуальних WS і централізовану пам'ять даних. Дані під керуванням програми користувача можуть бути виданими на будь-яку відкриту WS. Кожна WS зберігає таблицю опису, список стану залежних від WS атрибутів і вміщує в собі тільки одну поверхню зображення, яка адресується, на прямокутний простір координат пристрою WS. Для цієї прямокутної поверхні зображення являється у відповідності прямокутна область у нормалізованих координатах і один чи декілька логічних пристроїв вводу для кожного класу, які працюють у трьох оперативних режимах; підтримується вивід ряду шрифтів, типів ліній, розмірів символів і т. п.; описуються ломані, напівмаркери, тексти, заповнення площин, контури і кольори.
Важлива характеристика WS - можливість керування зміною зображення і реалізація цього керування програмою користувача. Для формування потрібних візуальних ефектів зміну зображення можна затримати і виконати через певний час. Керування зображенням і, таким чином, доступ у центральну пам'ять на цей проміжок часу передається WS. Можливості WS, що пов'язані з відновленням зображення, і потреби програм користувачів враховуються, коли задають режими вимірювання зображення. Режими модифікації MODIFICATION MODE визначають, який візуальний ефект потрібний і як це пов'язано зчитанням з центральної пам'яті, а режими затримки DEFFERAL MODE визначають момент, коли візуальний ефект з'явиться на екрані.
Вилучення частини зображення при використанні ряду пристроїв потребує повної повторної побудови усього зображення, тобто неявної регенерації, що аналогічна за виконанням до функції REDRAW, після якої зображення точно відповідає вмісту пам'яті і стану таблиці WS.
Варіантів дій, при яких потрібна неявна регенерація, досить багато (використання зміни атрибутів, перетворень що виконуються в WS, вставки виконавчих елементів в ієрархічну структуру, вилучення примітивів з менш пріоритетних структур і т. п.).
Режим модифікації визначається так:
NIVE без негайних візуальних ефектів
UWOR відновлення без неявної регенерації
UQUM використання швидких методів відновлення
PRIN виконання регенерації (при необхідності )
Швидкі методи відновлення використовуються для регенерації динамічних картин без використання неявної регенерації.
Режим затримки керує моментом зміни картинки і може бути розглянуто п'ять станів:
ASAP - так швидко, як тільки можливо
BNIG - перед наступною глобальною взаємодією*
BNIL - перед наступною локальною взаємодією**
ASTI - через певний час
WAIT - до запиту з програми користувача
Затримані дії у будь-який час можуть бути візуалізовані функцією відновлення WS UPDATE WK або зміною стану режиму затримки.
Чищення поверхні екрана і вивід нового зображення виконуються функцією REDRAW ALL STRUCTURE, яка може виконуватися для отримання безлічі копій поточного зображення для виробництва фільмів і підтримки мультиплікаційного "оживлення" зображення.
Основні відмінності між стандартами GKS і PHIGS містяться в організації графічних даних і використанні процесу їх перетворення. У стандарті GKS графічні примітиви об`єднані у безліч незалежних один від одного сегментів. При формуванні складного зображення відкривається сегмент на WS, у який потрібні сегменти вмикаються функцією INSERT, після чого новий сегмент займає місце у пам`яті сегментів. Створений сегмент не можна змінити, за виключенням його атрибутів (видимості, виділення яскравості, пріоритету) і матриці сегментного перетворення.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 |


