6. Принципи побудови програмних засобів машинної графіки

6.2. Основні підходи до розробки програмних засобів машинної графіки

 

Графічні мови реалізують шляхом розширення універсальних мов програмування або шляхом розробки автономних мов  

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

Нульовий рівень складають системні програми управління вводом-виводом (драйвери) графічних приладів, що створюються, як правило, з використанням мов програмування низького рівня (автокоди, ассемблери).  

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

Другий рівень складає базове програмне забезпечення машинної графіки (БПЗ МГ) - ядро розширення алгоритмічних мов. БПЗ МГ створюється як незалежне від властивостей конкретних приладів і проблемного застосування і реалізує найбільш розповсюджені функції введення, виводу і зберігання графічної інформації. Воно є предметом уніфікації як в рамках однієї мови, так і в цілому в системах машинної графіки .  

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

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

Програми другого і третього рівнів, як правило, об'єднуються в пакети прикладних програм машинної графіки (ППП МГ) і складають основу розширення алгоритмічних мов .  

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

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

Рівень 1 – пакети прикладних програм побудовані по принципу «перевернутої піраміди» . Вихідні дані в таких пакетах є загальним інтерфейсом для всіх графічних приладів, оскільки набір вихідних графічних примітивів дуже обмежений, але достатній для генерації будь-якого зображення. Цей набір може включати, наприклад, наступні примітиви: точка, відрізок прямої, алфавітно-цифровий символ .  

Істотній недолік цього підходу полягає в тому, що він сильно обмежує можливість використання (за умови збереження інваріантності) функцій ,що реалізувалися апаратно (наприклад, побудова дуг і кіл, ліній різних типів, текстів і т. п.). Це збільшує обсяг програм пакету, що моделюють ці функції, знижується ефективність використання ЕОМ, зростає час формування зображення.  

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

Рівень 2 – рівень віртуального графічного пристрою, тобто пристрою, який дає користувачу деякий уніфікований набір вхідних і вихідних функцій в незалежності від того, чи є фізичний еквівалент такого пристрою в системі чи ні. ППП МГ настроюється на такий віртуальний пристрій (графічний протокол). Підключення конкретного графічного пристрою до системи з таким пакетом у випадку різниці між ним і віртуальним пристроєм потребує розробки відповідних програм, які доповнюють даний фізичний пристрій до віртуального графічного пристрою.  

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

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

Контрольні   запитання.

1.  На якому рівні розширення алгоритмічних мов розробляють драйверні програми ?  

2.  Який рівень розширення алгоритмічних мов складає ядро розширення ?  

3.  В чому полягають недоліки принципу "перевернутої піраміди" ?  

4.  Приведіть дії, характерні різним рівням інваріантності ППП МГ до графічних приладів.

     Зміст