1. Служби

    1. Принципи графіки. Підтримування графіки обговорено в термінах наступних фундамен­тальних принципів графіки.

Графічні примітиви — будівельні блоки, використовувані для створення відображуваних об’єктів або збереження їх в архівному файлі. Загальні графічні примітиви розділені на класи елементів, що містять; лінійні, маркерні та текстові елементи, елементи заповнення області, секційні І символьні елементи. Кожен клас елементів має власні графічні примітиви. Наприклад, примітиви лінійного еле­мента охоплюють ламані лінії, дуги і сплайни. На доповнення, узагальнений примітив малювання — графічний примітив, використовуваний для звертання до залежних від пристроїв графічних примітивів.

Атрибути примітивів визначають вид графічних примітивів і класифікують як індивідуальні чи зв’язані атрибути. Кожний із класів елементів має конкретні атрибути, зв’язані чи Індивідуальні. На­приклад, зв’язаний набір атрибутів лінійного елемента охоплює тип лінії, її ширину і колір. До індиві­дуальних атрибутів лінії можна віднести закінчення лінії стрілкою (LINE CAP), що визначає вид кін­цевих точок лінійного елемента.

Вхідні примітиви чи логічні пристрої — віртуальні пристрої, розроблені для відділення при­кладної програми від реальних пристроїв вводу даних. Логічні пристрої включають пристрій пошуку (до­бору), уводу координат, вибору, присвоювання значення тощо. У термінах реальних пристроїв пристрій уводу координат можна асоціювати з лівою кнопкою миші.

Модель уводу описує зв'язки вхідних примітивів і логічних пристроїв із фізичними пристроями уводу даних і наданим прикладній програмі порядком керування пристроями. Наприклад, один Із керівних виборів можна асоціювати з реакцією логічного пристрою уводу координат, після натискання кнопки миші, на екрані оператора. Зворотний зв’язок можна зобразити у вигляді прямокутного кур­сору або підсвічування (збільшення яскравості) геометрії об’єкта згідно переміщення перехрестя кур­сору. Після відпускання кнопки її координати реєструє пристрій уводу координат, а подія стає в чергу подій, перевіряючись асинхронно прикладною програмою. Метод прикладної програми, використо­вуваний для визначення наявності даних у пристрої, зазвичай описують в термінах режимів. Загаль­ний режим — режим події. Прикладна програма певний час чекає появи в черзі певної події. Якщо за цей час не відбувається жодна подія, прикладна програма обробляє Інший процес і врешті повер­тається до перевіряння черги зі сподіваною певною подією. Якщо подія трапляється, прикладна програма визначає тип події й отримує дані для виявленого типу події. Для пристрою пошуку (добору) дані можуть подавати всілякі графічні примітиви, що перетинають певну ділянку-апертуру, можливо, визначену в системі координат пристрою.

Системи координат і відсікання. Частина підтримування графіки — засоби, що використову­ють різні системи координат. Графічний вивід для графічної системи треба описувати на основі певної системи координат, що відповідає прикладній програмі, І надавати пристрою відображення на основі його власної системи координат. Малоймовірно, що ці дві системи координат будуть збігатися. Отже, графічна система може включати ряд координатних систем і виникає потреба опису перетворень між ними. Деякі стандартні типи перетворень масштабують, обертають, перетворюють, відбивають і па­ралельно з перспективою проектують. Використовують для керування об’єктами в системі коор­динат і відображення з однієї системи координат на іншу. Зазвичай використовувані системи ко­ординат — координати моделі, зовнішня система координат, зв’язані з поданням координати, коор­динати нормалізованої проекції і координати приладу.

Відсікання — процес визначення області простору й обмеження графічного виводу цією об­ластю. Тільки примітиви об'єктів у відсіченій області мають відображуваний вивід.

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

Чіткіше концепція моделі виводу складається з:

  • конвеєрного перетворення;

  • конвеєрного тонування;

  • утримуваних структур;

  • неутримуваних структур;

  • графічних режимів;

  • віконних систем.

Збереження/архівація. Необхідні, але не трактуються в цій версії Настанови формати даних для збереження відображуваних чи тонованих зображень.

  1. Графічні служби можна узагальнити на підставі можливостей:

  • створювати, видаляти і змінювати елементи відображення;

  • визначати і редагувати глобальні й індивідуальні атрибути примітиву;

  • трансформувати (тобто масштабувати, перетворювати, обертати, відбивати, проектувати тощо) примітиви для конструювання складніших об’єктів й їхнього розташування у просторі візуалізації;

  • створювати і керувати БД примітивів, визначати і редагувати атрибути, створювати і поєдну­вати перетворення і вибірково керувати відображенням графічних примітивів;

  • відображати графічні об’єкти, створені в БД, чи примітиви безпосередньо або одночасно;

  • застосовувати алгоритми підсвічування і затінення до сукупностей графічних об’єктів із багато­разовими світловими типами і джерелами;

  • готувати дані для відображення і керування узгодженням за часом фактичного відображення даних; у деяких системах це зветься керуванням буфером кадрів;

  • зберігати і відновлювати графічні об’єкти з файлів;

  • керувати пристроями вводу даних і відновлювати дані з пристроїв уводу даних;

  • безпосередньо виводити в метафайл і відновлювати графічні дані з метафайлу;

  • одержувати відомості щодо всіх аспектів графічного середовища; наприклад, стан системи в довільний час, фактичні можливості апаратної платформи, атрибути і примітиви, підтримувані пев- ною реалізацією тощо;

  • підтримувати розподілену графіку;

  • контролювати помилки.

  1. Служби АРІ, Головні категорії графічних служб, доступних через АРІ, включають АРІ: — двовимірної (2-D) графіки;

  • тривимірної (З-D) графіки;

  • інтерфейсу пристроїв;

  • оброблення зображення.

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

Вибір графічного стандарту для використання АРІ залежатиме від ряду факторів: профілю за­стосування, повної архітектури системи, доступного обладнання, наявної взаємодії БД із приклад­ною програмою, розуміння ефективності системи, вимог інтерфейсу користувача, стратегії керу­вання й інших зовнішніх факторів. Метою створення сумісного набору графічних стандартів у GKS, GKS-3D, PHIGS, PHIGS PLUS тощо (описаних у 4.10.5.1) є уможливлення робити такий вибір найгнуч- кішим чином.

  1. Служби ЕЕІ. Головні категорії графічних служб EEI POSIX-OSE містять:

  • протоколи;

  • формати файлу.

Вибір використовуваного стандарту залежить від ряду факторів: профілю застосування, архі­тектури системи, доступного обладнання, розуміння ефективності системи й інших факторів.

  1. Стандарти, специфікації і недокументоеані служби

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

Див. таблицю 24.

  1. Стандарти POSIX-OSE

Стандарти, перелічені у цьому підрозділі, є частиною POSIX-OSE.

Таблиця 24 —• Стандарти підтримування графіки в Еталонній моделі POSIX-OSE

Служби

Тип

Специфікація

Підрозділ

Двовимірна (2-D) графіка

S

ISO/IEC 9592-1:1997, ISO/IEC 9592-2:1997, ISO/IEC 9592-3:1997 (PHIGS); ISO/IEC 7942-1:1994, ISO/IEC 7942-2:1997, ISO/IEC 7942-3:1999, ISO/IEC 7942-4:1998 (GKS); ISO/IEC 9636-1:1991, ISO/IEC 9636-2:1991, ISO/IEC 9636-3:1991, ISO/IEC 9636-4:1991, ISO/IEC 9636-5:1991, ISO/IEC 9636-6:1991 (CGI)

4.10.5.1

Тривимірна (З-D) графіка

S

ISO 8805:1988 (GKS-3D), ISO/IEC 9592-1:1997, ISO/IEC 9592-2:1997, ISO/IEC 9592-3:1997 (PHIGS), ISO/IEC 9636-1:1991, ISO/IEC 9636-2:1991, ISO/IEC 9636-3:1991, ISO/IEC 9636-4:1991, ISO/IEC 9636-5:1991, ISO/IEC 9636-6:1991 (CGI)

4.10.5.1

Оброблення зображення

S

ISO/IEC 12087-1:1995, ISO/IEC 12087-2:1994, ISO/IEC 12087-3:1995/Amd 1:1996, ISO/IEC 12087-5:1998 (IP!)

4.10.5.1

Протоколів

р

PEX Specification

4.10.5.2.2

Форматів файлів

S

ISO/IEC 8632-1:1999, ISO/IEC 8632-2:1992/Amd 1:1994/ /Amd 2:1995, ISO/IEC 8632-3:1999, ISO/IEC 8632-4:1999 (CGM), ISO/IEC 9592-1:1997, ISO/IEC 9592-2:1997,

ISO/IEC 9592-3:1997 (PHIGS 2-3)

4.10.5.1

Тестування відповідності

S

ISO/IEC 10641:1993

4.10.5.1




Таблиця 25 — Мовні прив’язки стандартів графіки

Стандарт

LISS

Ada

APL

Basic

Ci

C++

Лісп

Фортран

Модула~2

Паскаль

PL/1

Пролог

Кобол

PHIGS


S



S



S






GKS


S



S


E

S






GKS-3D


S



s


S

S






CGI


s












IPI





E











Примітка. Тут LISS — доступна незалежна від мов специфікація; S — офіційний чинний стандарт; Е — вихідний стандарт або проект стандарту; Р — загальноприйнята опублікована специфікація; G (дар) — прогалина (відсутність специфікацій).

Стандарт PHIGS програміста ієрархічної інтерактивної графіки. ISO/IEC 9592:1997 утрьох ча­стинах є стандартом комп’ютерної графіки й оброблення зображення. У частині 1 описані функціо­нальні характеристики PHIGS, у частині 2 — формат архівних файлів, а в частині 3 — специфіка­ція відкритого кодування текстів для архівних файлів. Прив'язки до основних мов програмування міс­тить ISO/IEC 9593; у ISO/IEC 9593-1:1990/Amd 1:1995 —для Фортрану, у ISO/IEC 9593-3:1990 — для Ади, у ISO/IEC 9593-4:1991/Amd 1:1994/Amd 2:1998 —для Сі.

PHIGS (РгодгаммегЧ Hierarchical Interactive Graphics Standard) — функціональна специфікація інтерфейсу між прикладною програмою й її системою підтримування графіки. Надає такі графічні можливості:

  • високий ступінь взаємодії;

  • багаторівневе, ієрархічне структурування графічних даних;

  • проста модифікація графічних даних І співвідношень між даними;

  • тривимірний (З-D) і двовимірний (2-D) графічний увід-вивід;

  • автономне збереження (і пошук) графічних даних.

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

Об'єкти визначені в графічній базі даних PHIGS послідовністю елементів, разом з елементами відображення, атрибутами, перетворенням та ініціюванням інших об’єктів і описів об’єктних частин. Елементи згруповані в об’єкти, що названі структурами і можуть зв’язуватися різними шляхами, зок­рема геометричними, ієрархічними або відповідно до притаманних властивостей чи характеристик, визначених прикладною програмою.

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