Головна » Статті » Інформатика [ Додати статтю ]

Комп'ютерна графіка
Вступ

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

Однією з основних підсистем САПР, что забезпечує комплексне виконання проектних робіт на основі ЕОМ, є комп'ютерна графіка (КГ ).

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

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

Вивчення комп'ютерної графіки обумовлено:

• широким упровадженням системи комп'ютерної графіки для забезпечення систем автоматизованого проектування, автоматизованих систем конструювання (АСК) і автоматизованих систем технометричної інформації, що складає 60...80 % загального обсягу інформації, необхідної для проектування, конструювання і виробництва літаків, кораблів, автомобілів, складних архітектурних споруджень і т.п.:

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

• необхідністю підвищення продуктивності і якості інженерної роботи.

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

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

Розвиток комп'ютерної графіки (КГ) почався з появою пристроїв графічного ведення. Становлення КГ і широке її використання зв'язане зі створенням засобів графічного введення — виводу і дисплеїв — пристроїв побудови зображень на електронно-променевій трубці. При взаємодії користувача з комп'ютером розрізняють три режими роботи: пакетний; пасивно-интерактивный; інтерактивний.

У пакетному режимі роботи графічна інформація формується і виводиться за допомогою заздалегідь написаного пакета прикладних програм — ППП (РИС 1.1). Формування і висновок простих зображень у пакетному режимі на пристроях одержання твердих копий (телетайп, АЧПП) здійснювалося ще до початку використання комп'ютерів.

У пасивно-інтерактивному режимі роботи графічна інформація формується і виводиться за допомогою заздалегідь написаних прикладних програм, у яких в яких передбачено багаторазові запити даних у користувача (Рис. 1.2).

В інтерактивному режимі роботи графічна інформація формується і виводиться в режимі оперативно графічної взаємодії користувача і комп'ютера (Рис.1.3).

Початком сучасної інтерактивної комп'ютерної графіки можна вважати дисертацию Сазерленда (1963 р.), присвячену графічній системі SKETCHPAD. Ця система могла відтворювати і перетворювати геометричні фігури за допомогою світлового пера. Робоче поле екрана поділяється на чотири частини для побудови проекцій об'єкта: вид перед, ліворуч, зверху й у перспективі. Будь-яка зміна однієї з проекцій автоматично визначала зміну всіх інших проекцій і зображення в перспективі. Отже, зрозуміло, наскільки широкі можливості комп'ютерної графіки

для автоматизації креслярсько-графічних робіт з великим обсягом графічного матеріалу при машинному проектуванні й автоматизації виробництва в багатьох областях промисловості.У 60-роках виникає ряд дослідницьких проектів, з'являються розробки, придатні для комерційного поширення. Найбільш значними серед них були проекти фірми GENERAL MOTORS з використанням графічної системи з розподілом часу для багатьох етапів проектування автомобілів, система Digidraphic була створена фірмою для проектування лінз і дисплейна система ІВМ 2250, заснована на прототипі фірми GENERAL MOTORS.

В Україні перша інтерактивна графічна система автоматизованого проектування електронних схем була розроблена Київським політехнічним інститутом і Науково-дослідним інститутом автоматизованих систем керування і плануванні в будівництві (НДІАСК, Київ) і демонструвалася в 1969р.

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

• розробка нових методів математичного забезпечення;

• розробка програмних систем графічних мов;

• створення нових ефективних технічних засобів для проектувальників, конструкторів і дослідників;

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

• програмування для ЕОМ, методи обчислювальної математики, приладобудування.

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

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

Комп'ютерну графіку широко застосовують також при рішенні актуальної проблеми підвищення продуктивності і якості виготовлення виробів основного виробництва. Цьому сприяє автоматизована система технологічної підготовки виробництва {АСТПВ}, під якою розуміють будь-який автоматизований виробничий процес, яким керує комп'ютер. Найважливішими автоматизованими виробничими комплексами АСТПВ є: верстати з числовим програмним керуванням (ЧПК), верстат з мини-еом, програмно-керовані роботи, гнучкі виробничі системи.

Усі види інженерної діяльності, керовані комп'ютерами, об'єднані за назвою автоматизованої системи інженерного забезпечення (АСІЗ), що включає:

• планування процесу проектування з використанням комп'ютерного програмного забезпечення;

• системи автоматизованого проектування різального інструмента і процесу обробки:

• процедури автоматизованої системи керування виробництвом (АСУП);

• процедури автоматизованої системи виробничого планування (АСВП)

• системи автоматизації проектування, розміщення, оснащення на виробництві, зокрема графічну імітацію робототехніки.

Цілковиту інтеграцію областей АСІЗ разом з економічними і бухгалтерськими системами називають комп’ютерно інтегрованим виробництвом (КІВ). КІВ ще тільки починає розвиватися на основі комп'ютерної графіки і, як правило, функціонує під керуванням головних комп'ютерів із загальною базою даних.

ГЕОМЕТРИЧНЕ МОДЕЛЮВАННЯ НА ПЛОЩИНІ

Пряма

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

Пряма в явній формі

, (1.2)

де k — тангенс кута нахилу прямої до осі абсцис; b — початкова ордината.

Рівняння (1.2) називають рівнянням з кутовим коефіцієнтом. Ця форма дуже зручна для виразу умов паралельності (k1=k2) та перпендикулярності ( ) двох прямих з кутовими коефіцієнтами k1 та k2.

В алгоритмі покриття замкненої області штриховкою рівнянням (1.2) задають сім'ю паралельних ліній штриховки, змінюючи b з фіксованим кроком.

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

Форму (1.2) застосовують також в алгоритмі перетворення симетрії відносно прямої загального положення.

Пряма в неявній формі

Ах + Ву + С = 0 (1.2)

Ліву частину цього рівняння застосовують для задання півплощин

Ах + Ву + С > 0 (1.3)

Ах + Ву + С < 0, (1.4)Якщо прийняти, яка з цих півплощин розміщена зліва, а яка справа від прямої, то цим самим можна орієнтувати пряму (1.2). Для зміни напряму прямої (1.2) на протилежний треба обидві частини рівняння (1.2) помножити на -1. При цьому півплощини (1.3) і (1.4) поміняються місцями.

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

Наприклад, внутрішність квадрата, зображеного на рис. 1.4 моделюється системою нерівностей

-у + 2 > 0, -х + 2 > 0, у + 2 > 0, х + 2 > О, (1.5)

а зовнішність квадрата, зображеного на рис. 1.5, — системою нерівностей.

у - 1 > 0, х - 1 > 0, -у - 1 > 0, -х - 1 > О, (1.6)

"Кільцева" область (рис. 1.6), яка обмежена двома попередніми квадратами моделюється системою з восьми нерівностей (1.5) і (1.6).

Обчислення координат точки перетину двох прямих. Якщо прямі задані формою (1.2)

А1Х+В1У+С1 =0, (1.7)

А2х+ В2у+ С2=0,

то координати точки перетину їх обчислюють за формулами

(1.8)

Якщо  = 0, а x О або  y0, то прямі паралельні.

Якщо =0, x= О, y= 0, то прямі збігаються.

Рівняння прямої, що проходить через дві точки, має вигляд

(1.9)

Це рівняння доцільно застосовувати тоді, коли впорядкована послідовність точок сполучається ламаною. Ця послідовність задається масивами координат хi, уi

(і =1,2, ..., n). Рівняння ланок ламаної дістанемо у вигляді

(1.10)

Рівняння (1.9) можна звести до вигляду (1.1), якщо обчислити k і b за формулами

(1.11)

та до вигляду (1.2), якщо обчислити А, В і С за формулами

(1.12)

Розглянемо ще параметричну форму за-дання прямої. Запишемо рівняння (1.9) у

вигляді

(1.13)

Звідси

, (1.14)

де s є параметром. Якщо s = 0, то X = x1| , у = y1. Якщо s = 1, то x2 = х, у = у2. Якщо

О Орієнтація кола. Перейдемо від форми задання (1.22) чи (1.24) до неявної форми задання:

x2 +y2-R2=0, (1.26)

(x-a)2+(y-b)2-R2=0. (1.27)

Якщо координати точок, які лежать усередині кола, підставити в рівняння (1.26) або (1.27), то матимемо зміну знака ''=" на "2ах – а2 = ,

звідки

(1.43)

У загальному випадку розміщення (рис. 1.11) при заданих координатах центрів і радіусах знаходимо міжцентрову відстань

(1.44)

та компонент повороту локальної системи з початком у центрі першого кола й віссю 0'х’, що збігається з 01 02, відносно глобальної системи хОу :

t=f(x,y). (1.45)

Далі знаходимо xn1,2, yn1,2 за формулами (1.43) у локальній системі та зводимо результат до глобальної системи, враховуючи, що х1=х0, у0=у1, =t.

Задача спряження двох кіл третім

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

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

Загальна вимога до програмного забезпечення розв'язування будь-якої задачі — включати аналіз сумісності поставлених умов. Це означає, що перш ніж застосувати алгоритм розв'язку, треба визначити, яким умовам мають відповідати вхідні дані.

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

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

Ще два варіанти, що відрізняються розміщенням центра шуканого кола відносно лінії центрів заданих кіл, формалізуємо наданням знака радіусу спряжувального кола. Якщо центри О1 і О2 заданих кіл не збігаються, то радіус спряжувального кола додатний, коли його центр лежить зліва, та від'ємний, коли його центр лежить справа від вектора 0102.

Центр спряжувального кола, його радіус і точки спряження ще не однозначно визначають кутовий параметр спряжувальноЇ дуги. Точки дотику поділяють спряжувальне коло на дві дуги, сума яких дорівнює 2п. Отже значенням коефіцієнта k можна поставити у відповідність кожну з двох дуг спряжувального кола. Наприклад, значенню k = 0 відповідає менша дуга, k = 1 — більша.

Алгоритм розв'язання в цілому наводимо з урахуванням прийнятої формалізації.

Вхідні дані: x1, y1 i R1 - координати центра О1 і радіус першого кола; x2, y2 i R2 — координати центра і радіус другого кола, R — радіус спряжувального кола; k - коефіцієнт вибору спряжупальної дуги.

Вихідні дані: xc, yc - координати центра спряжувальноЇ дуги; tп — кутовий параметр початкової точки спряжувальної дуги; tд — кутовий параметр спряжувальної дуги.

Обчислення міжцентрової відстані:

(1.46)

Нехай

. (1.47)

Перевірка сумісності умов. Задача має розв'язок, якщо:

, (1.48)

або

, (1.49)

або

(1.50)

або

(1.51)

За допомогою алгоритму визначення координат точок перетину двох кіл, радіуси яких ||R|-R1| тa ||R|-R2| (див. коло), знаходять у локальній системі з початком у О1 та віссю О'х', що збігається з 0102 (рис. 1.12),

(1.52)

Координати точки контакту спряжувального кола з першим колом:

(1.53)

Координати точки спряження з другим колом:

(1.54)

Співвідношення (1.53) та (1.54) дістали з розрахунку подібних трикутників.

Визначення компонент повороту локальної системи x'О’у’ відносно глобальної XOY :

. (1.55)

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

(1.56)

Обчислення кутового параметра точок спряження відносно центра спряжувального кола:

. (1.55)

Ви'значення кутового параметра спряжувальної дуги:

. (1.58)

Якщо k = 0 і |t| > п або k = 1 і |t[ < л, то

.

Екстремальні випадки задачі спряження

Під екстремальними розуміють випадки. коли деякі вхідні дані досягають екстремальних значень. Так, наведений вище алгоритм повною мірою можна застосовувати в екстремальних випадках, коли R1 = О або R2= 0. При цьому задача зводиться до знаходження кола заданого радіуса, яке проходить через фіксовану точку та дотикається до другого кола. Цей алгоритм застосовують також тоді, коли одночасно R1= О та R2=0. Тут йдеться про знаходження кола заданого радіуса, яке проходить через дві фіксовані точки.

Випадок, коли радіус спряжувального кола дорівнює нулю, тривіальний. Розглядуваний алгоритм до формуй (1.52) включно збігається з алгоритмом знаходження координат точок перетину двох кіл, а формули (1.53)...(1.58) втрачають зміст.Розглянемо випадки, коли радіус спряжувального кола R досягає екстремальних значень, що дістанемо виразів (1.47) ... (1.51) при зміні в них знаків нерівності на знаки рівності, тобто R = А та R = В. Тут радіус спряжувaльного кола перетворюється в залежну величину, яка не може входити у вхідні дані.

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

Неважко показати, що центр шуканого кола та точки його спряження з заданими колами лежать на лінії їхніх центрів. Тому, не змінюючи умови формалізації щодо знаків R1та R2, накладемо нову умову на коефіцієнт k: при k = 1 спряжувальна дуга розміщена зліва, а при k = -1 справа від вектора .

Нарешті, варіант екстремального значення радіуса спряжувального кола формaлізуємо за допомогою коефіцієнта р, при р == 1 маємо R = А,

а при р = -1 — R = В.

Алгоритми нерухомого та рухомого екранів

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

Екранування замкненим багатокутником (нерухомим екраном). Нехай n-кутник задано масивами координат його вершин xi, yi, (i = 1.2. .... m) так, що вершини впорядковані в напрямі проти руxу стрілки годинника, а x1 = xm, y1= уm. Щоб визначити належність точки M (Xо, Yо) до внутрішності n-кутника, обчислимо суму кутів між суміжними променями, що сполучають точку М з вершинами n-кутннка. Маємо

(1.76)

Цю формулу дістали, застосувавши формулу площі трикутника з вершинами (х0,у0), (хі,уі), (хі+1,уі+1), а саме:

(1.77)

де знак "+" відповідаг впорядкуванню вершин у напрямі проти руху стрілки годинника.

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

Нехай на площину х0у проекціюються лінії рівня деякої поверхні (рис. 1.13). АВСDЕF— найближча лінія, видима всіма своїми вузлами та ланками. Наступну лінію рівня STLWRK екрануємо попередньою лінією. Вузол L лежить у зоні екрана. 3най-демо точку перетину U ланок ВС та TL, а також точку перетину V ланок СD та LW. Ці точки, по-перше, обмежують видимі частини ланок TL та LW, а по-друге, їх включають як вузлові в екран STUCVWRK, за допомогою якого визначатимуть видимість наступної лінії рівня.

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

вузли ліній рівня слід брати на однакових інтервалах, тобто 1-2=2-3=... =5-6;

належність точок до екрана визначають порівнянням координат відповідних вузлів, наприклад yL< уC, тому вузол L- екранується:

якщо на деякому інтервалі з'являється додатний вузол, наприклад вузол U на інтервалі 2-3, то відповідну ланку при наступному екрануванні треба випробовувати

не тільки на порівняння ординати у на межах інтервалу, а й на перетин з двома

підданками TU та UС.

Площа та координати центра ваги плоскої фігури

Як відомо, площу елементарної фігури, обмеженої графіком у = f(x), віссю Ох та прямими x=c, x=d, визначають як

. (1.79)

Координати центра ваги елементарної фігури:

(1.80)

де

- (1.81)

статичний момент площі елементарної фігури відносно осі 0x;

(1.82)

статичний момент площі елементарної фігури відносно осі Оу.

У формулах (1.79), (1.81) і (1.82) верхній знак відповідає f(x) > 0, a нижній -

f(x) < 0.

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

Вважатимемо, що вузли р контурів, які обмежують область, визначаються масивами координат хij, yij (i=1,2,…, mi; j=1,2,.., p) та умовами замкненості x1j= xmj, y1j=ymj. Отже, кожний контур містить nj=mj-1 вузлів , які не збігаються. Нехай також вузли обмежувальних контурів упорядковані так, що матеріальна площа лежить справа від напряму впорядкування.Тоді згідно з означенням плоскої фігури та прийнятими домовленостями знак перед правими частинами виразів (1.79), (1.81) і (1.82) можна опустити. Елементарною фігурою буде трапеція, а підінтегральною функцією — лінійна функція.

ГЕОМЕТРИЧНЕ МОДЕЛЮВАННЯ У ПРОСТОРІ

Задання площини та ліній

Площина у просторі. Площину в прямокутних декартових координатах задають у неявній формі

Ах + Ву + Сz+D=0. (1.83)

Ця площина поділяє простір на два півпростори, які можна визначити коефіцієнтом

. (1.84)

Для координат x1, y1, z1, будь-якої точки першого півпростору р=1, для точки, яка належить другому півпростору, р = 1, а якщо точка належить площині , то р = 0.

У нарисній геометрії площину задають, проекціями її визначника: трьома точками. що не належать одній прямій: точкою та прямою, що не проходить через точку, двома перетинними прямими: двома паралельними прямими, плоскою фігурою; слідами. Від графічної форми задання будь-яким визначником доцільно перейти. Взявши на площині три неколінійні точки М0(х0, у0, z0), M1(X1, Y2, Z3), М2,(x2, y2, z2) та підставивши координати їх у формули для визначення коефіцієнтів А, В, С, D.

Дістанемо

, , ,

. (1.85)

Як уже зазначалося окремим випадком задання площини є той, коли вона за своїм положенням відносно деякої координатної системи с площиною рівня.

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

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

• розв'язувати позиційні задачі на цій поверхні;

• використовуючи допоміжні січні площини загального (у термінах нарисної геометрії) положення.

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

(1.86)

Завдяки введеним спеціальним системам координат та їхнім властивостям щодо піднесення будь-якої площини до такої системи, де вона є площиною рівня, з'являється практично доцільний спосіб задання прямої та плоскої кривої лінії у відповідній системі спеціальних координат виразами

(1.87)

або

(1.88)

Ці рівняння можна віднести до залежності прямокутних декартових координат від спеціальних.

Застосовуючи рівняння інцидентності площин прямої чи плоскої кривої, визначимо тип системи та значення t за наведеним алгоритмом. Підставивши формули дістанемо параметричні рівняння прямої чи плоскої кривої.

Функція для прямої мас вигляд

, (1.89)

де k і b відіграють ту саму роль на площині t=const у декартовій прямокутній системі u0v, що й у системі xОу .

Для кола радіуса r, координати центра якого в системі u0v є (a,b), функція має вигляд

. (1.90)

Для цього самого кола функції (1.88) набувають вигляду

(1.91)

Розглянемо тепер форми задання ще одного класу просторових кривих: гвинтових та квазігвинтових ліній.

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

(1.92)

Якщо в циліндричній системі координат радіус гвинтової лінії дорівнює r, то в узагальненій циліндричній системі він дорівнює . В обох випадках крок гвинтової лінії становить. 2k.

Квазігвинтовою називають лінію, що зі сталим кроком напинається на поверхню обертання. Квазігвинтова лінія в гіперболічних координатах задається функціями (1.92). Якщо u=c=0, то вона розміщена на конусі, якщо u=c0, то вона розміщена на однопорожнинному гіперболоїді.

Задання поверхонь

У неявній формі центральні поверхні обертання другого порядку задають, функцією

(1.93)

Залежно відзначень параметрів, що входять у рівняння (1.93), воно визначає:

стиснений еліпсоїд (р = 1, q= 1, а > с);

витягнутий еліпсоїд (р = 1,q=1, a < с);

сферу (р = 1,q=1, a = с);

однопорожнинний гіперболоїд (р = -1,q=1);

двопорожнинний гіперболоїд (р = -1,q = -1);

конус (р = -1, q = 0).

Після переходу згідно з залежністю до циліндричних координат та розв'язання рівняння відносно u дістанемо

(1.94)

або після підстановки u в рівняння матимемо рівняння цього класу поверхонь у параметричній формі:

(1.95)

Рівняння циліндра, вісь якого збігається з Оz, у неявній формі мас вигляд

(1.96)

а в параметричній формі

(1.97)

Рівняння гіперболічного параболоїда в явній формі

(1.98)Розглянемо інші класи поверхонь, що задають внутрішнім рівнянням у спеціальних координатах. Внутрішні рівняння класів та підкласів поверхонь в узагальнених циліндричних та гіперболічних координатах, як правило, збігаються. Внутрішні рівняння можна діставати в явній, неявній та параметричній формах. У параметричній формі параметр t є одним з функціональних параметрів, а другим параметром є інший, який відрізняється від змінних u та v.

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

Лінійчаті поверхні задають рівнянням

(1.99)

Внутрішні рівняння підкласів лінійчатих поверхонь дістають при певних значеннях функцій та . Якщо

(1.100)

то маємо поверхні однакового нахилу до площини хОу.

Якщо (1.101)

то маємо поверхні з площиною паралелізму х0у. Якщо

(1.102)

то маємо однопорожнинний гіперболоїд обертання.

Розгортні поверхні в узагальнених циліндричних координатах задають рівняннями

(1.103)

а в гіперболічних координатах — рівняннями

(1.104)

Внутрішні рівняння ребра обертання цієї поверхні знайдемо підстановкою u = 0 в рівняння (1.103) або (1.104) відповідно.

Циліндр в узагальнених циліндричних координатах, однопорожнинний гіперболоїд у гіперболічних:

u=c=const, v=v. (1.105)

Гвинтові поверхні в узагальнених циліндричних та квазігвинтові поверхні в гіперболічних координатах:

v=f(u)+kt. (1.106)

Зокрема, якщо f(u) = bu(b=const), то маємо лінійчату поверхню

v=bu+kt. (1.107)

Розгортні гвинтові поверхні в узагальнених циліндричних координатах:

. (1.108)

Розгортні квазігвинтові поверхні в гіперболічних координатах:

. (1.109)

Циклічними називають поверхні, що утворюються колом.

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

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

Циклічні поверхні в неявній формі задають рівнянням

. (1.110)

При (t) = соnst маємо трубчаті поверхні:

. (1.111)

Якщо то дістаємо поверхні обертання:

. (1.112)

Якщо то маємо гвинтові чи квазігвинтові циклічні поверхні:

. (1.113)

Якщо , то маємо каналові поверхні в узагальнених циліндричних координатах:

, (1.114)

а якщо то каналові поверхні в гіперболічних координатах:

. (1.115)

Різьблену поверхню Монжа в узагальнених циліндричних координатах задають рівнянням

, (1.116)

зокрема, циклічну

(1.117)

а гелікоїд

(1.118)

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

Визначником правильної призми доцільно вважати: r—радіус вписаного в призму циліндра, який може бути внутрішнім параметром узагальненої циліндричної системи: tn — кутовий параметр однієї з граней (кут між площиною хОz та променевою площиною, що проходить через 0z і лінію дотику деякої грані призми та циліндра системи); h -- висота призми. При цьому вважають, що нижня основа призми лежить на площині х0у. а верхня па площині z= h; n -- кількість гранєй.

Рівняння граней призми дістанемо у вигляді (1.87), надаючи t таких значень:

. (1.119)

Якщо підставимо у рівняння (1.88) значення ti з рівняння (1.119) та

(1.120)

то матимемо рівняння ребер призми.

Визначником пранильноїпірашди є:  -кут нахилу грані до осі Оz, що збігається з внутрішнім параметром гіперболічної системи, tn — кутовий параметр однієї з гра-ней (кут між площиною хОу і променевою площиною, що проходить через Оz. та лінію дотику деякої грані до конуса системи), h— висота піраміди. Вважають що вершина піраміди лежить у початку координат, а основа — на площині.

Рівняння граней піраміди дістанемо у вигляді (1.88), надаючи t значення з рівняння (1.119).

Рівняння ребер піраміди знайдемо як рівняння прямих, що проходять через дві точки S(0, 0, 0) та Аі (хі, уі, zi):

(1.121)

де xi, yi, визначають підстановкою значень ti з формули (1.119): v =-h та

. (1.122)

Алгоритми розв'язання позиційних задач

Перетин кривих поперхонь площиною.Якщо поверхня задана у прямокутних декартових координатах явною чи неявною формою, а січна площина — будь-яким визначником, то взявши координати трьох неколінійних точок, що належать січній площині, обчислимо коефіцієнти А, В, С, D за формулами (1.85) і дістанемо рівняння січної площини в неявній формі (1.83).

Визначимо тип системи, в якій січна площина є площиною рівня, а також обчислимо параметр відповідної системи спеціальних координат. У результаті матимемо рівняння січної площини в параметричній формі. Підставивши здобуті вирази у рівняння поверхні зведемо його до рівняння з двома змінними u та v. Якщо це рівняння можна розв'язати відносно однієї із змінних, тобто знати функцію v = v(u), то, надаючи u значення і деяким кроком маємо відповідні значення. Оскільки uOv є прямокутною декартовою системою на січній площині, то лінія перетину, віднесена до цієї системи, визначається в натуральному вигляді. Що6 скласти її рівняння у просторі, треба підставити відповідні значення u та v в параметричні рівняння січної площини. Приклад.

Нехай треба знайти рівняння лінії перетину центральної поверхні обертання другого порядку (1.93) і площини, заданої трьома точками M0(x0, y0, z0), M1 (X1, Y0, Z1), M2 (x2, y2, z2). Застосування формулу (1.85) дістанемо: А0, В0, С0, D0), знаходимо

(1.124)

Підставивши ці вирази дістанемо параметричні рівняння січної площини:

(1.125)

Тепер підставимо вирази (1.125) у рівняння поверхні (1.93). У результаті матимемо

(1.126)

Це рівняння другого ступеня відносно u та v, тобто його можна розв'язати відносно будь-якої з цих змінних.

Натуральний вигляд лінії перетину знайдемо побудовою графіка функції (1.126) за її рівнянням у системі uОv. Масиви координат uі, vі, що визначаються в процесі побудови, підставимо в параметричні рівняння січної площини (1.125). Дістанемо просторові координати хі уі zі , точок, які визначають лінію перетину. Наведемо приклади програмної реалізації цього алгоритму для двох поверхонь, що перетинаються площиною.

На рис. 23.1 наведено в ізометричній проекції поверхню еліпсоїда обертання за функцією (1,93) при а = 3, с = 5, р = 1, q = 1, що перетинаються площиною [див. рівняння (1.85)] при А = 1, В = 3, С = 16, D = -16.

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

Застосуємо наведений алгоритм для побудови лінії перетину прямої призми та

площини. Нехай січна площина має такі коефіцієнти A, B, C, D при яких виконуються рівності (1.124) і (1.125). Позначимо і підставимо вирази (1.124) у рівняння (1.85), що при значеннях t згідно з рівнянням (1.119) є рівнянням граней призми, В результаті матимемо

. (1.126а)

Це є рівнянням лінії перетину і рані призми із січною площиною у системі uОv на січні із площині. Підставляючи замість u його значення з рівняння (1.120), знайдемо координати uі та VІ, точок перетину ребер призми із січною площиною. Нагадаємо, що замість t треба підставляти у рівняння (1.126а) послідовно значення з формули (1.119).

Масиви просторових координати xі , yі , zі , вершин шуканої лінії перетину знайдемо підстановкою uі та vі, у рівняння (1.125).

Приклади програмної реалізації наведеного алгоритму показано на рис.1.14-1.16. В ізометричній проекції подано правильну дванадцятигранну призму, висота якої 12 см, радіус описаного циліндра 5см, а кутовий параметр однієї з вершин нижньої основи становить 0,13 рад. ІІризму перетинає прощина

Використовуючи замість (1.85) рівняння сім’ї площин (1,86), матимемо алгоритм побудови лінії перетину правильної піраміди та площини. На рис.1.117 подано ізометричну проекцію правильної дванадцятигранної піраміди, висота якої 12 см, кут між бічною гранню і висотою 0,35 рад, а кутовий параметр основи вершин основи становить 0.26 рад. Піраміду перетинає площина

.

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

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

Площинний алгоритм. Позначимо функціональний параметр рівняння лінії через s. Нехай розв'язок лежить в інтервалі s1Обчислимо значення спеціальних координат u, v, t у системі, до якої віднесено поверхню. Підставляючи значення t у внутрішнє рівняння поверхні, дістанемо ріння лінії рівня t=const цієї поверхні. Скориставшись формулами та враховуючи, що роль x і у відіграють u і v відповідно, визначимо належність точки М до внутрішності чи зовнішності лінії рівня t = соnst заданої поверхні.

Якщо точка М належить до зовнішності лінії рівня, то функціональний параметр наступної довільної точки М визначаємо за формулою (1.127). надаючи s1 значення sM. Якщо точка M належить до внутрішності, то значення sM надаємо s2. Ітераційний процес продовжуємо доти, доки виконується умова , де  визначає наперед задану точність.

Значення функціонального параметра довільної точки, при якому виконується ця умова, треба підставити в рівняння лінії, щоб дістати просторові координаті x, y, z шуканої точки перетину.

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

Просторовий алгоритм. Для поверхонь другого порядку (1.119). (1.122) при розгляді питання про належність довільної точки до внутрішності чи зовнішності поверхні не обов'язково переходити до рівняння лінії ріння цієї поверхні. Досить підставити координати x, y, z довільної точки в рівняння (1.119) або (1.122). Якщо знак "=" - змінюється на знак “>” , то довільна точка належить до зовнішності, якщо на знак " < ", то до внутрішності поверхні.

Просторовий алгоритм більше нічим не відрізняється від площинного.

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

Геометричну модель відображення лінії чи поверхні засобами комп'ютерної графіки дістають методом проекцювання та сполучення точок, які лежать на лінії, впорядкованих відповідно із зростанням або спаданням значення функціонального параметра. Вхідні дані у вигляді рівняння лінії та інтервалу значень функціонального параметра дають змогу обчислити координати x, y, z послідовності точок.

Щодо візуалізації поверхні, то проекції відтворюють деякі характерні для поверхні лінії: ребра багатогранників, лінії, обвідну проекції кривої поверхні, межі відсіку поверхні. Ефективний спосіб візуалізації кривої поверхні полягає в попередньому визначенні на поверхні сім'ї або сітки координатних ліній та відображенні на проекції видимих відрізків (рис.1.17 …рис.1.22 ) та відповідно для прямокутних ізометрії, диметрії та косокутної диметрії.

Точкове відображення простору на фронтальну площину проекцій визначено формулами

, (1.128)

а на горизонтальну площину проекцій — формулами

. (1.129)

Визначення лінії, обвідної проекції поверхні. Нехай поверхня задана в параметричній формі:

(1.130)

Як було показано, явна форма задання поверхні є окремим випадком задання у формі (1.130). До форми (1.130) приводить також задання поверхні внутрішнім рівнянням у спеціальних координатах.

Застосовуючи формули відповідного точкового перетворення простору при проекціюванні, можна записати

. (1.131)

де х, у -- прямокутні декартові координати проекцій точок; f, — функції, що реалізують ланцюжок —одну з функцій -- (1.128), (1.129).

Проаналізувавши вирази (1.131), дійдемо висновку, що ці рівняння відповідають

рінянням двох сімей ліній u=const, t=const Кожна сім'я залежить від одного параметра. Як відомо, такі сім'ї мають обвідну, рівняння якої

. (1.132)

Обвідна (1.132) поділяє точки на поверхні (1.130) на два класи, що визначаються знаком нерівності, в яку перетворюється ліва частина (1.132) після підстановки внутрішніх координат u, t довільної точки на поверхні. Отже, в результаті підстановки внутрішніх координат u, t точки на поверхні ліву частину (1.132) дістанемо один з трьох випадків:

І=0, (1.133)

коли точка належить обвідній. За цієї умови можна скласти рівняння обвідної і побудувати її:

І>0, (1.134)

коли точка є видимою на проекції;

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

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

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

Табл.1.2 Поверхні в ортогональних проекціях та в ізометрії ізометрії

Поверхня № Рис. Внунтрішнє рівняння Вираз І в рівнянні (1.32)

Циліндр U=0

Конус u=0

Елыпсоїд

Гелікоїдальний

циліндр

Циклічна G-поверхня

Щодо побудови проекції обвидної, то в багатьох випадках це можна зробити, розв'язуючи рівняння (1.123) відносно однієї з дих змінних. Так для циліндра та конуса

(див. табл. 1.1) обидва розв'язки не залежать від другої змінної, для центральних поверхонь другого порядку рівняння (1.123) є квадратним відносно лінійної змінної. Розв'язки цього рівняння використано також для каналової поверхні, різьбленої поверхні Монжа, катеноїда, псевдосфери.

Для гранних поверхонь алгоритм визначення видимості полягає в порівнянні знаків лівої частини (1.123) для суміжних граней.

Якщо

Іі>0, Іі+1 > 0, (1.136)

то ребро, по якому перегинаються ці грані, видиме;

якщо

Іі Іі+1 < 0, (1.137)

то ребро контурне;

якщо

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

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

Склад вхідних даних геометричної моделі зумовлений вимірюванням на фізичній моделі. Вимірюють насамперед координати точок, які називають опорними. Найпростіша схема визначення опорних точок на поверхні передбачає розміщення їх у сім'ї площин рівня. Так, щоб визначити опорні точки на фізичній моделі, на неї наносять n + 1 лінію її перетину з площинами рівня однієї сім'ї та m + 1 лінію перетину з площинами ріння другої сім'ї. Ці лінії називають координатними або і лініями каркаса.

Координати опорних точок мають індекси, які відповідають номерам ліній каркаса, що проходять через відповідну опорну точку (і = 0, 1, ..., n; j = 0, 1, ....m). Оскільки вимірюють координати лише опорних точок, то до визначення лінії в проміжках між суміжними опорними точками та до визначення поверхні в проміжках між двома парами суміжних ліній каркаса різних сімей називають інтерполяцією. Якщо до визначення виконують у проміжках перед початковою опорною точкою (початкового лінією каркаса) або після кінцевої точки (кінцевої лінії каркаса), то його називають екстаполяцією.

З математичної точки зору рівняння лінії каркаса на площині рівня j= k можна дістати у вигляді

(1.149)

Коефіцієнти аі,к знайдемо підстановкою замість х і у значень хi,j і уi,j та розв'язанням системи n + і лінійних рівнянь. Аналогічно можна дістати рівняння лінії каркаса i = l, який належить іншій сім'ї, у вигляді

. (1.150)

Здобуті рівняння дають змогу обчислити значення коефіцієнта аi,j. У сукупності з координатами x, y, z рівняння (1.148) чи (1.149) визначають цифрову геометричну модель поверхні. Алгоритм обчислення координати точки, яка належить поверхні і не збігається з жодною опорною точкою, тобто b = x при будь-яких значеннях z = с та c z. при будь-яких значеннях j має такий вигляд.

1. Користуючись n + 1 рівнянням (1.148) та значеннями коефіцієнта аi,j, підставимо в кожне з них замість xj, значення bj . Дістанемо значення yb,j .

2. Користуючись n + і рівнянням (1.149) та значеннями zi,j i yc,j знаходимо значення n + 1 коефіцієнта ab,j як результат розв'язання системи n + 1 лінійних рівнянь.

3. Підставивши нове рівняння (1.149) коефіцієнти якого (ab,j) визначені, значення c замісті z, знайдемо шукане значення y.

ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ КОМП'ЮТЕРНОЇ ГРАФІКИ

Програміська модель інтерактивної графікиПроцес удосконалення програмного забезпечення комп'ютерної графіки був досить довгим і повільним. Пройдено шлях від апаратно залежних пакетів програм низького рівня, які поставляються виготовниками разом з конкретними дисплеями, до апаратно-незалежних пакетів високого рівня. Основна мета апаратно-незалежного пакета полягає в тому. щоб забезпечити його мобільність при переході від однієї ЕОМ до іншої. У процесі розв'язання цієї задачі група американської асоціації з використання обчислювальних машин (GGRAPH) запропонувала проект графічної системи СОRЕ SУSТЕМ, а спеціалісти Німеччини розробили графічну базову систему Graphikal Keгnel System (GKS), прийняту Міжнародною організацією по стандартизації (IS0) як міжнародний графічний стандарт Draft International Standart— ISO/DIS. Ця система звільняє програміста від урахування особливостей графічних пристроїв при розробці програмного забезпечення, при цьому користувачеві доступні різноманітні графічні пристрої. Відповідно до викладеного підходу при розробці програмних засобів комп'ютерної графіки виділяються такі задачі: моделювання, які призначені для створення, перетворення та зберігання моделей геометричних об'єктів (моделюючі системи); відображення цих моделей на графічних пристроях та організації графічного інтерфейса користувача та ЕОМ (базова графічна система). Склад програмного забезпечення відбивається у програміській моделі інтерактивної комп'ютерної графіки .До нього входять три компоненти: моделююча система, базова графічна система та прикладна структура даних (база даних).

Моделююча система здобуває інформацію та засилає її у бази даних, а також надсилає графічні команди до графічної системи.

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

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

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

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

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

Результати роботи підпрограм безпосередньо відображуються на обладнаннях графічного виведення. БГП працює з обладнанням введення — виведення графічної інформації (ГІ) через програму-драйвер операційної системи. Програма-драйвер реалізує взаємодію із системою та виконання інструмента (графопобудовника, електронного променя графічного дисплея, підсвічування точки та ін.).Образно кажучи, графічну систему можна порівняти з "уявлюваною фотокамерою". Моделююча система дає уявлюваній фотокамері опис сцени, яка складається з одного (чи більше) об'єкта деякого штучного світу (дво- чи тривимірного). Потім ця камера створює вигляд об'єкта в цьому світі. Як і у разі використання фотоапарата "Поляроїд", зроблений знімок відразу "проявляється" і майже миттєво може бути показаний на видовій поверхні. Уявлювана камера діє як реальна: вона може побудувати знімок сцени тільки з візуальних елементів найнижчого рівня та нічого не знає щодо їх організації чи структури. Тому моделююча система описує об'єкти для графічної системи як графічні примітиви нижнього рівня.

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

Якщо використовується графічний стандарт GKS, то забезпечується крім цього незалежність і від технічних засобів комп'ютерної графіки, що досягається завдяки введенню поняття графічної робочої станції, яка є абстракцією фізичного пристрою. Логічні пристрої введення призначені для введення: координат (LOCATOR), дійсних чисел (VALUATOR.), послідовності координат (STROKE), рядка символів (STRING), однієї з альтернатив (СНОІСЕ), елемента зображення (RІСК).

Пристрій виведення забезпечує виведення:

• ламаної (POLYLINE);

• послідовності маркерів спеціальних символів з центрами у визначених точках (POLYMARKER);

• рядка тексту (ТЕХТ);

• заповненої площі (FILL AREA);

• масиву клітин (CELL ARRAY);

• узагальненого графічного примітива (GENERALIZED DRAWING PRIMITIVE).

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

Крім того, у рамк
Категорія: Інформатика | Додав: КрАсАв4іК (30.12.2012)
Переглядів: 965 | Рейтинг: 0.0/0
Всього коментарів: 0
Додавати коментарі можуть лише зареєстровані користувачі.
[ Реєстрація | Вхід ]