Компютърна графика: Разлика между версии

Изтрито е съдържание Добавено е съдържание
Xqbot (беседа | приноси)
м Робот Промяна: it:Computer grafica
Редакция без резюме
Ред 1:
{{обработка|Стилистично подобрение, подреждане на информацията в раздели}}
 
1. КОМПЮТЪРНА ГРАФИКА – ОСНОВНИ
'''Компютърната графика''' е полето на визуалната [[информатика]], в което посредством [[компютър|компютри]] се генерират видими изображения или се интергрира или променя визуална и пространствена информация взета от реалния свят.
ОПРЕДЕЛЕНИЯ, ХАРАКТЕРИСТИКИ И
 
ПРИЛОЖЕНИЯ
Първите успехи на компютърната графика датират от 1963, когато [[Иван Съдърланд]] ''(Ivan Sutherland)'' разработва първата компютърна програма с графичен потребителски интерфейс.
1. Въведение в компютърната графика
 
Като правило под термина “ графика “ се разбира резултати от
Компютърната графика може да се раздели на няколко подобласти: [[рендъринг]] на триизмерни сцени в реално време (често използвано в компютърни игри), [[компютърна анимация]], специални ефекти (често използвани във филми и телевизия), обработка на изображения и моделиране (често използвано за инжинерни и медицински цели). Първоначално компютърната графика е подпомагана от академичните и правителствените среди. С напредъка в качеството ѝ и навлизането ѝ в света на телевизията и киното се увеличава и подпомагането на проучванията в тази област от частни фирми.
визуално представяне на реалния свят или въображаем обект, получен по
 
традиционните методи – рисуване ( прилага се от художници – графици )
Често се споменава, че първият [[филм]], използващ компютърна графика е бил ''[[2001: Космическа одисея]]'' ([[1968]]), но анимацията е изцяло направена на ръка, а специалните ефекти са изцяло направени с конвенционални оптични и моделиращи ефекти.
или печатане на художествени образи (гравюри , литография и т.н.).
 
Крайният резултат на традиционния процес обикновено се появява на
==Начало==
двумерна повърхност – хартия или изкуствена материя.
Компютърната графика се появява малко след появяването на компютрите с отпечатването на информация и монитори с катодно лъчева тръба (CRT). С времето се развива до създаването, записването и обработката на модели и изображения на обекти.
Съществува наука наречена ИКОНИКА (от гръцката дума образ),
 
която е дял от информатиката, в която се разглежда графичната
==Компютърната графика днес==
информация и действията с нея. Икониката се занимава с графичните
В днешни дни компютърната графика е интерактивна: потребителят контролира съдържанието, структурата и изгледът на обектите посредством входни устройства като [[Компютърна клавиатура|клавиатура]], [[Мишка (хардуер)|мишка]] или регистриращ докосвания [[монитор]]. Поради близката връзка между [[входни устройства|входните устройства]] и картината на екрана управлението на входните устройства се включва в полето на компютърната графика.
структури, тяхното представяне и обработка, анализа и синтеза на
 
изображения. Важна роля за икониката имат компютрите, снабдени с
==Обработка на изображения и анализ на картини==
подходящи периферни устройства и софтуерни системи.
Компютърната графика се занимава със синтеза на изображения на реални или въображаеми обекти от техните компютърно-базирани [[модел]]и. Обработката на изображения третира обратния процес - [[анализ]]ът на сцени или реконструирането на дву- и триизмерни модели от техните изображения.
Под термина “ Компютърна графика “ се разбира създаването на
 
въображаеми или реални графични изображения чрез компютър, тяхното
Обработката на изображения има подобластите [[откриване на образци]] (pattern detection), [[разпознаване на изображения|разпознаване]], [[сценичен анализ]], [[компютърно зрение]], [[подобрение на изображения]].
съхранение и възпроизвеждане на устройства за изход - екран, принтери,
 
плотери или филмови рекордери и др..
==Използвана литература==
Какво се получава? Термина “графика” указва фактическият
'''Foley, James D., van Dam, Andries, et.al.''', ''Computer Graphics: Principles and Practice'', USA, 1990, Addison-Wesley, 1174 стр., английски език.
изход, т.е. това на което можем да го видим. Под това понятие може да се
{{Link FA|de}}
разбира нещо което е предназначено да се изобрази или изведе.
 
Компютърната графика е един от дяловете на информатиката,
[[Категория:Компютърна графика| ]]
свързани със създаването , съхраняването и обработката на визуална
 
информация. Историята на нейното възникване е близка. През 50-те
[[ar:رسوميات حاسوبية]]
години в Масачузетския институт за първи път се конструира графичен
[[az:Kompüter qrafikası]]
екран. Началото на компютърната графика поставя Айвън Садърланд
[[bn:কম্পিউটার গ্রাফিক্‌স]]
през 1962г. с разработената от него система Sketchpad в същия институт.
[[bs:Računarska grafika]]
Много скоро гигантите в автомобилостроенето и самолетостроенето
[[ca:Infografia]]
осъзнаван огромния потенциал на компютърната графика и моделирането
[[cs:Počítačová grafika]]
при проектиране, чертане и производство. General Motors, Boeing,
[[da:Computergrafik]]
McDonnell – Douglas, Renault и Matra Datavision започват практически да
[[de:Computergrafik]]
използват компютърната графика и моделиране.
[[el:Γραφικά υπολογιστών]]
2
[[en:Computer graphics]]
С масовото навлизане на персоналните компютри, снабдени с
[[eo:Komputila grafiko]]
графични растерни дисплеи, графични входни и изходни устройства през
[[es:Computación gráfica]]
80-те години се обърна особено внимание на графичния софтуер. Все по
[[fa:گرافیک رایانه‌ای]]
голямо внимание започва да се отдела на моделирането, интеграцията му
[[fi:Tietokonegrafiikka]]
и ефективността на обработката. Заговори се за симулация и анимация на
[[fr:Infographie]]
обекти. Днес компютърната графика има вече много дялове и все по
[[he:גרפיקה ממוחשבת]]
тясно се интегрира с останалите области на информатиката.
[[hr:Računalna grafika]]
2. Предмет на компютърната графика
[[hu:Számítógépes grafika]]
Предмет на компютърната графика е синтезирането на изображения на
[[id:Grafika komputer]]
обекти на базата на създадени за този обект подходящи описания –
[[it:Computer grafica]]
компютърни модели.
[[ja:コンピュータグラフィックス]]
Обратният процес – анализиране на образи, създаване на модели
[[ko:컴퓨터 그래픽스]]
на един обект въз основа на един или няколко графични образа е предмет
[[lt:Kompiuterinė grafika]]
на “Обработката на изображения” (Image Processing).Тя включва много
[[nl:Computergraphics]]
други дисциплини като: - подобряване на изображения; разпознаване на
[[no:Datagrafikk]]
образи и символи; анализ на сцени; реконструиране на обекти;
[[pl:Grafika komputerowa]]
компютърно зрение и др.
[[pt:Computação gráfica]]
Компютърната графика е наука за методите за създаване и
[[ro:Grafica computerizată]]
обработка на модели и техните визуални образи с помощта на компютър
[[ru:Компьютерная графика]]
Фиг.1.1
[[scn:Computer Grafica]]
Тези методи днес са изключително интерактивни - потребителя
[[simple:Computer graphics]]
на една графична система може динамично да управлява вида,
[[sk:Počítačová grafika]]
структурата и начина на изобразяване на обектите, използвайки т.н.
[[sr:Рачунарска графика]]
3
[[sv:Datorgrafik]]
графичен диалог. Друг вид – пасивна графика е само една нейна част,
[[th:คอมพิวเตอร์กราฟิกส์]]
която засяга методите за визуализация на обекти.
[[tk:Kompýuter grafikasy]]
Някои от по-важните дялове на компютърната графика са:
[[uk:Комп'ютерна графіка]]
- растерна графика (Raster Graphics) – включва алгоритми за
[[ur:شمارندی تخطیط]]
визуализация върху растерни дисплеи;
[[vi:Đồ họa máy tính]]
- графично взаимодействие ( Graphics User Interface) – методи за
[[zh:计算机图形学]]
организиране на комуникацията “човек – компютър” с помощта
на визуални средства;
- геометрично моделиране (Geometric Modeling) – методи за
представяне на геометричната форма на обектите и тяхното
обработване от приложните програми;
- визуализиране на обекти и фотореализъм (Image Rendering) –
алгоритми и методи за изобразяване на обекти, създаване на
реалистични картини и повърхнини, чрез отчитане на различни
оптически ефекти, осветяване и др.
- Моделиране на криви и повърхнини (Computer – Aided Geometric
design) – математически методи за представяне и обработване на
фигури с произволни криволинейни граници;
- изчислителна геометрия (Computation Geometry) - алгоритми за
решаване на геометрични и комбинаторни задачи.
-
3. Основни определения, характеристика и приложение на
компютърната графика
За да се реализира компютърна графика са необходими:
- Входни графични устройства (дигитайзери, скенери ,
мишки и др.)
- Програмно осигуряване на компютърна графика
- приложна програма;
- графична система.
- Технически средства за графичен изход
- дисплеи (монитори);
- устройства за изход върху постоянен носител(HD,CD,
дискети);
- печатащи устройства (принтери);
- чертожни устройства (плотери).
4
- Графични стандарти на програмно осигуряване и
графични формати
Върху тези въпроси по подробно ще се спрем в следващите лекции.
Що се отнася до приложението на компютърната графика, може
да се каже че тя варира от визуализация на икономическа, статистическа,
демографска и физическа информация. Ще се опитаме да изброим по
важните от тях:
- Визуализация на не графична информация
(Presentation graphics). Икономически, статистически,
демографски и други модели по принцип те не са
графически но имат отношение към геометрията.
Визуализацията на резултатите от много анализи и
изчисления във вид на схеми, диаграми, карти и др., се
оказа много полезно за по бързото възприемане на
информацията.
- Визуализация на резултати от изследвания (Scientific
visualization) Тези приложения показват графично
резултати от изследвания или поведение на обекти, в
които формата играе важна роля. Такива са
визуализацията на абстрактни математически фигури,
векторни полета, деформации на механични
структури, ядрени и химически реакции,
физиологични системи, функциониране на органи и
др.
- Управление на процеси (Process control and simulation)
Тези приложения не само визуализират поведението
5
на определени реални или моделирани процеси но
дават възможност и потребителя да ги употребява –
заводи, фабрики, електростанции, комуникационни
мрежи, космически кораби и спътници. Особено място
заемат симулираните процеси – тренажори за летци,
моряци, шофьори и др.
- Автоматизирано проектиране и производство
(Computer – Aided Design and Manufacturing –
CAD/CAM) Особено важно приложение на КГ и
геометричното моделиране. След първите системи за
автоматизиране чертожната дейност, днес целта е де се
автоматизира целия цикъл на проектиране и
производство на детайли и сглобяването им в областта
на машиностроенето, електротехниката,
строителството и др.
- Бюро тика (Office automation) С навлизането на
персоналните компютри във всеки кабинет много хора
използват техните средства за текстообработка,
управление на документи, планиране на дейности,
счетоводство, комуникация и предпечатна подготовка
и др.
- Изкуство, реклама и анимация (Computer art)
Средствата на компютърната графика могат да се
използват за създаване на компютърни картини,
междинни сцени и мултипликационни филми.
- Геодезия , картография и фотограметрия (Geodesy,
Mapping and Fotogrametry) Приложението на
компютърната графика в тази област през последните
години заема особено място. Специфичността на
информацията и особено големия брой данни водят до
създаване на специални графични системи за
обработка. Тук ще споменем създаването на ЦММ,
ЦМР, ЦМТК, ЦМЕК, ЦМКП, ЦМРиЗП, ЦМ на
земеделските имоти и гори, ЦК за въздушна и морска
навигация, Ц метеорологични карти, ЦМ на
археологически обекти и др. Особено внимание се
обръща на ГИС . Това е информационна система с
широк спектър на действие и в близкото бъдеще без
нейната намеса трудно ще се управлява всяка сфера на
администрация, образование, икономика и наука.
6
Класификация на приложенията на компютърната графика
1. В зависимост от размерите които характеризират обектите
•Двумерни
- с визуални контури (отсечки и дъги);
- с черно-бели визуални равнинни фигури;
•Тримерни
- с пространствени обекти само от ребра;
- с пространствени обекти от равнинни стени;
- с пространствени обекти с граници произволни
повърхнини.
2. В зависимост от състоянието на обекта
•Статични
•Динамични
3. В зависимост от типа на обекта
•Реални – модели на реално съществуващи обекти;
•Абстрактни – въображаеми структури и модели.
4. В зависимост от визуализацията на обектите
•визуализацията на обектите е краен продукт – карта, реклама и др.
•визуализацията на обектите е междинна информация – проектиране и
управление на процеси за взимане на решение.
5. В зависимост от интерактивността на компютърната графика.
Тук възможностите са много вариращи от приложни програми в които
потребителя задава поредица от данни и след получава визуален образ на
т.н. интерактивно проектиране, при което потребителя започва работа
върху празен екран, създава нови графични елементи, включва стари,
асемблира ги и ги структурира така, че в резултат да получи образа на
желания обект. Подобни са САПР.
4. Системи за компютърна графика
Представляват изчислителни комплекси със съответните апаратни
и програмни средства, позволяващи ефективна обработка на графична
информация.
Такава система трябва да има поне едно изходно устройство – дисплей.
Главен компютър може да изпълнява основните приложни програми за
графично моделиране, за поддържане на базата данни, библиотеките и
архивите. Поради огромните количества информация и изчислителни
7
операции, изискванията към главните компютри нарастват
пропорционално на системата и големината на обработваните обекти.
Независимо от създаването на свръх мощни системи за
компютърна графика се развива и персоналната компютърна графика.
В класическата си интегрална структура системата за компютърна
графика има едно или няколко работни места с всички необходими
входно-изходни устройства.
Персоналните системи за компютърна графика (ПАРМ-
персонални автоматизирани работни места) се изграждат на основата на
съвременните микрокомпютри и микрографична периферия, която в
последно време добива качествата на професионална. Както преди
няколко години компютрите заляха света, така и ПАРМ ще стане най-
масовата форма на компютърна графика главно поради ефективното
отношение цена/качество. Видът, компановката, функционалните
възможности и потребителските качества на тези системи постоянно се
усъвършенства.
2. ГРАФИЧНА СИСТЕМА. ПРОГРАМНО
ОСИГУРЯВАНЕ И ОПИСАНИЕ НА
МОДЕЛА ЗА ГРАФИЧНАТА СИСТЕМА
1.ПРОГРАМНО ОСИГУРЯВАНЕ ЗА КОМПЮТЪРНА
ГРАФИКА
На фиг. 1.1 е представена концептуалната схема на програмна
система за интерактивна графика.
Фиг.1.1
Една такава система има три компонента:
•моделът, който се създава,обработва и визуализира;
•приложната програма, която се грижи за създаването му,
извършването на операции върху него, както и за организирането му
във вид удобен за визуализация;
8
•графичната система - предоставя набор от средства за визуализация,
които приложната програма използва, за да изобрази графично данни
от този приложен модел.Графичната система е тази част от
програмното осигуряване, която е най-тясно свързана с техническите
устройства и която фактически извършва визуализацията, след като
приложната програма точно е задала какво трябва да се изобрази.
1.1. Приложна графична програма
Естествено е приложни програми да се разработват много по-често от
базови графични системи. Всяка приложна програма отразява
спецификата на
съответната приложна област, а дори и отделните програми в една и съща
област могат да бъдат много различни. Въпреки огромните различия,
всяка приложна графична програма извършва три основни дейности,
които имат определено значение:
- моделиране;
- описание на модела за графичната система;
- интерактивна работа.
1.2.МОДЕЛИРАНЕ
Що е модел? – това е обект от различно естество, способен да замени друг
обект, благодарение на определено съответствие между свойствата на
обектите.
Що е моделиране? – процес на построяване на модела и изследване на
съответствието между модела и изходния обект, с цел получаване на нова
информация за него.
Структурата на моделирането включва:
•постановка на задачата;
•създаване или избор на най – икономичен модел;
•изследване на съответствието между модел и изходен обект.
Всяка приложна програма решава конкретна задача:
•изобразяване на молекулната структура на различни химични
вещества:
•проектирането на вътрешната архитектура на една сграда;
•анализ на движението на различни механизми;
•преместване и визуализация на различни векторни полета;
•електромагнетиката;
•хидродинамиката и др.
За решаването на тази задача приложната програма построява и използва
геометричен модел на обектите, с които работи. Огромна част от
програмисткия труд се влага именно в проектирането, създаването,
9
обработването и съхраняването на този модел. Моделите биват най-
различни (ние ще разгледаме най-много използваните видове които
описват геометричната форма на обектите, с които приложната програма
и нейният потребител боравят.
ОПИСАНИЕ НА МОДЕЛА ЗА ГРАФИЧНАТА СИСТЕМА
Описанието на геометричната форма в модела е пряко свързано с
поставения приложен проблем и е напълно независим от графическата
система. За да бъде визуализиран приложния модел или някаква част от
него, е необходимо той да бъде представен в термините на графичната
система, която извършва самото изобразяване. Ако например графичната
система може да изобразява само вектори, а моделът е съвкупност от
пространствени фигури, то приложната програма трябва да може да
опише всяка пространствена фигура чрез вектори.
Моделът е това, което е съхранено за един обект, а дейността описание
за графичната система е един вид интерпретация на съхранените данни
за получаване на тези, които са необходими за визуализация. Тук винаги
стои дилемата - каква информация да се съхранява в модела и каква да се
изчислява непосредствено преди визуализация.
Например: правоъгълник със заоблени върхове може да се съхранява в
модела като затворен контур от отсечки и допирателни дъги и тогава
описанието му за графична система, която визуализира отсечки и дъги ще
е тривиално. Същият правоъгълник може също да бъде представен чрез
краищата на диагонала си и радиуса на заобляне на върховете му. Тогава
модулът за описанието на модела за същата графичната система ще
трябва да изчисли краищата на отсечките и дъгите на този заоблен
правоъгълник по данните в модела.
Приложната програма трябва също така да може да представи за
визуализация само определена част от модела или някакъв определен
негов изглед. При визуализирането на модел от пространствени фигури с
двумерна графична система например трябва да се зададе проекцията и да
се генерира плоският образ на пространствената сцена съобразно тази
проекция.
10
Фиг.1.2
ИНТЕРАКТИВНА РАБОТА
Една графична програма взаимодейства с потребителя най-често по
графичен начин - чрез графични образи (графичен вход и изход или само
графичен изход). В някои приложения не се налага много често намеса на
потребителя, а в други приложните програми са организирани като набор
от програмни модули, всеки от които се активира и извършва определена
дейност след интерактивно извикване по команда от потребителя. По-
голяма част от интерактивната работа протича по циклична схема:
•избор на команда на командата;
•изпълнение на команда;
•предоставяне на възможност за избор на нова команда.
Фиг.1.3
11
Взаимодействието между приложната програма и потребителя с
графични средства е същността на т-нар. графичен диалог. На въпросите
на графичния диалог - как да се организира, кой да играе водеща роля
(приложната програма или потребителя), какви средства и похвати да се
използват в типични ситуации - е посветена четвърта глава на тази книга.
1.3. Графична система
Графичната система е сравнително независима от решаваните приложни
задачи. Нейните функции са да обслужва графичния вход и изход при
наличните графични устройства. Най-простата графична система е
библиотека от подпрограми, които могат да се използват при
програмиране на езици на високо ниво като С. Паскал и ФОРТРАН за
визуализиране на прости геометрични елементи: отсечки, дъги, символи и
др. Една такава библиотека, наречена "Базов Графичен Пакет" ние
представяме в трета глава. Нейната основна цел е да освободи
приложната програма от детайлите по визуализацията
върху конкретните устройства, каквито са растерните алгоритми.
Фиг.1.4
Растеризирането на отсечки и дъги за растерните устройства е само една
част от това, което графичната система извършва. Тя решава още
следните глобални задачи:
• Да предостави на приложната програма възможност за работа в
координатна система, типична за геометричния модел, който тя
обработва;
12
• Да се грижи да изобразява само тази част от модела, която в определен
момент е необходима за работата на приложната програма:
• Еднотипно да определя положението на видимата част от модела върху
всички налични графични устройства;
• Да предостави еднотипни функции за установяване на визуалните
атрибути – цвят, тип на линията, дебелина, образец за запълване и др. - на
изобразяваните графични примитиви;
Това са само основните задачи на графичната система. Все по-голямо
голямо внимание се отделя на предоставяне на средства за по-лесно
описание на моделите: визуализация на пространствени криви и
произволни повърхнини, както и предоставяне на средства за
структуриране в приложни термини и дори геометрично моделиране.
2. ПРЕНОСИМОСТ И ГРАФИЧНИ СТАНДАРТИ.
Програмното осигуряване на първите графични устройства е било на
сравнително ниско ниво, разработени от самите производители на
устройства и естествено твърде зависимо от техните конкретни
особености.
•Може би най-популярен графичен пакет от началото на 70-те години
става РLOT-10, разработен като базово програмно осигуряване на
графичните дисплеи Tektronix 4010, за чиято популярност
споменахме по-горе. За да може да се осигури преносимост на
приложните програмни продукти от една платформа на друга, както и
преносимост на знанията на самите приложни програмисти, в средата
на 70-те започва разработването на спецификация за графична
система. Като резултат през 1977 год. се създава документацията на
системата Core, която е обновена отново през 1979 год. Въпреки че не
става официален стандарт, много производители създават нейни
реализации, които се използват широко до 1985 год., когато се
въвежда като официален стандарт системата GKS (Graphics Kernel
System). За разлика от Соге, GKS е само двумерна система. В GKS за
пръв път се въвежда концепцията за работна станция, дефинира се
система от абстрактни входни устройства (ние ще разгледаме
подробно тези устройства в четвърта глава), която се използва
широко и днес и се въвежда спецификация за обмен на графични
данни (графичен метафайл). В тази система се въвеждат и групи от
логически свързани графични примитиви, наречени "сегменти",
които не могат да се съдържат един в друг.
•През 1988 год., GKS-3D става също официален стандарт, но бива
почти моментално изместен от много по-сложната, също тримерна, но
13
с много по-големи възможности система PHIGS (Programmer’s
Hierarchical Interactive Graphics System).Тя е първата система, която
с ориентирана не само към визуализация, но и към моделиране на
визуализираните обекти. Групите от логически свързани примитиви
(наречени структури) вече могат да са вложени една в друга, да
бъдат редактирани и визуализирани, при което системата практически
предлага на приложния програмист една графична йерархична база от
данни. Всяка съхранена структура може да съдържа и не графични
данни, което цели да даде на програмистите всички необходими
средства за геометрично моделиране. Примитивите на PHIGS
включват и рационални криви и повърхнини освен стандартните
отсечки, дъги, окръжности, многоъгълници и текст. Скоро след това
се появява PHIGS+, в който са реализирани средства за псевдо
реалистична визуализация върху растерни дисплеи. Реализациите на
тази система са много големи програмни продукти и тяхното
ефективно използване е възможно най-вече на компютри с
достатъчно бързо действие и графични устройства с автоматично
отсичане, трансформация, отстраняване на невидими линии и стени.
Успоредно с тези системи се разработват и други графични системи,
каквато е например библиотеката ОрепGL, на фирмата Silicon
graphics.
•С появата на персоналните компютри, снабдени с евтини растерни
дисплеи, започва разработването и елементарни графични пакети за
растерна графика. Най-популярни стават пакетите за компютри от
типа на Арр1е и IBM РС. В средата на 80-те вече се появяват и
първите системи за работа в прозорци, при които графичното
взаимодействие е много важен елемент. За да се осигури преносимост
и на програми, които не са непременно графични, но използват
графичен диалог, между отделни компютри и устройства,а също и
между отделни операционни системи през 1984 год. в Масачузетския
технологичен институт се създава системата X Windows System.
Проектирана на принципа клиент-сървер, тя позволява изпълнение на
графични програми в мрежа от различни по тип и операционни
системи компютри.
•На базата на тази и подобни на нея системи като Арр1е Macintish и
MS-Windows, се създава спецификация за това как трябва да се води
графичният диалог – от ресурси с които се работи ( като бутони,
списъци, менюта, прозорци и др.) и вида, в който те се изобразяват, до
начина, по който те се организират за представяне на определен тип
информация или пък за получава на такава. Целта е всички приложни
14
програми да изглеждат по подобен начин, за да се минимизира
времето, за което един потребител започва ефективно да работи с
една нова програма. Това води до създаване на спецификации за
организирането на графичното взаимодействие (и
редица реализации) като ХUI, Open Looc, OSF/Motif, InterViews и
много други. Разбира се и цели операционни системи в които
описаните средства стават неделима част: Арр1е Масintosh, OD/2 и
Windows NT.
•Системите за работа в прозорци се концентрират върху
систематизиране
на интерактивните възможности и се ограничават с визуализация,
която е растерна и двумерна. При тях липсват сегменти или
структури, потребителски координатни системи и елементи от
моделирането. Не след дълго идва и съчетаването на тези системи с
първите, които имат тези възможности. Появява се спецификацията и
някои реализации на системата РЕХ (PHIGS Extension to X Windows
System), чиято цел е да съчетае възможностите за моделиране на
PHIGS и интерактивните средства на X Windows System.
•Друго направление е стандартизацията на обменът на графична
информация. Реализираният в GKS метафайл се оказва
недостатъчен за обменна данни между такива приложни програми
като системите за автоматизирано проектиране и чертане (Computer-
Aided Design and DraftingSystemCADD). Появяват се други стандарти
като IGES (Initial Graphics Exchange Specification), който има може
би най-много реализации, но много рядко съответстващи на пълната
спецификация.
•Наред с тези стандарти започва да се обръща особено внимание и на
съхраняването на растерни изображения (GIF, TIFF, JPEG), както
с компресиране, така и с възможност за представяне на изменения за
нуждите на анимацията – MPEG.
Основният недостатък при описанието на един геометричен модел се
оказва невъзможността да се опишат цялостно връзките между отделните
елементи в геометричния модел, както и екземпляри от отделни негови
етапи на създаване. Опит да се направи това е разработването на
стандарта Step, някои части на които са официално приети.
15
3. ТЕХНИЧЕСКИ СРЕДСТВА ЗА
КОМПЮТЪРНА ГРАФИКА
1. ТЕХНИЧЕСКИ СРЕДСТВА ЗА ГРАФИЧЕН ИЗХОД
Техническите средства за графичен изход са интересни за нас само от
гледна точка на принципите, на които те са построени, тъй като тяхната
архитектура пряко влияе както на използваните алгоритми в графичните
програми, така и на структурирането на тези програми.
1.2. Графични дисплеи
Интерактивността в компютърната графика изисква визуализация върху
устройства, образите върху които да могат да се променят бързо. Най-
широко използвани за тази цел са графичните дисплеи, а от тях пък са
тези с електронно-лъчева тръба, които твърде малко се отличават от
телевизионните приемници. Много от качествата на тези дисплеи ги
правят най-важните устройства в компютърната графика и гарантират
масовото им използване и в бъдеще,
Електронно-лъчевата тръба (ЕЛТ) е построена на следния принцип: сноп
от електрони, излъчван от нагрят катод и ускоряван от високо
напрежение към вътрешността на екран, която е покрита с фосфор
(луминофор) се фокусира от специална система по магнитен път, за да
достигне определена точка от това фосфорно покритие. Цветните ЕЛТ
разполагат с покритие оттри различни цвята луминофор: най-често
червен, зелен и син - RGB. Екранът представлява съвкупност от малки
цветни точки, групирани по три т-нар. триади. Три отделни катода (за
всеки от цветовете) излъчват електрони, които минават през метална
маска преди да достигнат фосфорното покритие. Тази маска осигурява
попадението на трите лъча само върху три съседни луминофорни точки
от различни цветове (една единствена триада), които пък осветени
едновременно изобразяват цвета, съответствуващ на смесването на трите
интензитета.
Не е нужно да се спираме подробно. върху детайлите на горния процес.
Това, което е важно за нас е, че светлинният импулс на луминофора
затихва експоненциално с времето, така че образът се нуждае от
непрекъснато
прерисуване дори и тогава, когато е статичен. При честота на
прерисуване типично 60Hz вече се създава илюзията за постоянно
изображение. За постигане на напълно не трептящ образ (flicker-free
image) обаче в повечето случаи е
16
необходима честота 70-90Нz. В зависимост от начина за регенерация на
образа дисплеите с ЕЛТ биват два вида: векторни и растерни.
Тук няма да разглеждаме такива средства като дисплеите с течни
кристали или плазмените дисплеи, защото от гледна точка на
програмиста те са също растерни устройства.
ВЕКТОРНИ ДИСПЛЕИ. Тези дисплеи са били разработени в средата на
60-те години и са били широко използвани до масовото навлизане на
персоналните компютри и растерните устройства. Те се наричат често
още и дисплеи с произволно регенериране (random-scan display) заради
това, че прерисуването се извършва, като се изчертава поредица от
вектори, които могат да бъдат разположени произволно в изображението.
В този смисъл визуализирането на един вектор не зависи от неговото
положение върху екрана. Архитектурата на векторния дисплей е показана
на фиг. 1-2.
Изображението (във вид на вектори и символи) се съхранява в памет,
наречена дисплеен буфер като последователност от команди за
специализиран процесор, наречен дисплеен процесор. Тази
последователност често се нарича и дисплейна програма. Дисплейният
процесор интерпретира командите и за
всеки вектор изпраща координатите на краищата му към генератор на
вектори, който го преобразува в напрежения, които управляват
движението на електронния лъч от началото до края на вектора.
Последната команда в дисплейната програма е винаги безусловен преход
към нейното начало, което осигурява непрекъснатата регенерация на
образа.
Очевидно е, че при такава архитектура честотата на прерисуване силно
зависи от сложността на образа. При качеството на дисплеите от 60-те
години няколко хиляди вектора са били горната граница на визуализация
без видимо трептене. С увеличаването на бързодействието в следващите
години, дисплейните процесори се усложняват значително и започват да
обработват структурирани дисплейни програми, да изпълняват
геометрични трансформации, отсичане и дори успоредни и перспективни
проекции за визуализиране на пространствени обекти. Необходимостта от
циклично изпълнение на дисплейната програма води до ограничение в
нейната дължина. Това пък от своя страна изисква структуриране на
образа така, че да не се повтаря описанието на еднакви елементи. От тези
години датира сегментацията на изображението (разгледана в трета
глава) и матричното представяне на геометрични трансформации и
проекции.
ДИСПЛЕИ СЪС ЗАПОМНЯЩА ЕЛЕКТРОННО-ЛЪЧЕВА ТРЪБА.
17
За да се реши проблемът с трептенето на образа на векторните дисплеи
при голям брой вектори, в края на 60-те години се разработват дисплеи,
при които луминофорът има много дълго време на светлинно затихване
(повече от 1 час). При тези дисплеи практически няма нужда от
регенерация, а промяната на изображението се извършва при пълно
изтриване на екрана и визуализирането изцяло на новия образ. Като
резултат се получава стабилно изображение за сметка на някои
ограничения върху интерактивността и възможностите за промяна на
образа. Тази технология позволява създаване на сравнително евтини
графични дисплеи, които веднага стават масовото графично устройство.
Дори и днес много графични системи предлагат емулация на дисплеи
като Tectonics 4010, за който като първи достъпен дисплей от този вид са
написани извънредно много програми.
РАСТЕРНИ ДИСПЛЕИ. В началото на 70-те години започва
разработването на евтините растерни дисплеи, основани на принцип,
близък до този на телевизионната развивка.
При черно-белите дисплеи дисплейният буфер се заменя от правоъгълна
матрица (растер), която представя цялата област на екрана във вид на
редове и стълбове от нули и единици, като всяка нула отбелязва точка,
която не е осветена, а всяка единица - светеща точка. Тази матрица често
се нарича бит-карта на екрана (bitmap).
В цветните дисплеи на всяка точка от екрана (наричана пиксел – рiхel) се
съпоставят по няколко бита, превръщайки по този начин матрицата на
растера в тримерна матрица с дълбочина от 8 до 96 бита. 24 бита са
достатъчни за кодирането на 16 милиона различни цвята. Тримерната
матрица от нули и единици носи името пикселна карта за да се отличава
от бит-картата, която е характерна за дисплеите с един бит за пиксел.
Броят на битовете, отделени за всеки пиксел (третата размерност в тази
матрица) често се наричa дълбочина на дисплея или брой равнини на
дисплея. На фиг. 1-4 е показана пикселната карта на един растерен
дисплей с 12 равнини - по четири бита за всеки от основните цветове
(червен, зелен и син) - и -начинът, по който е кодиран цветът в тази карта
на точката, намираща се в горния ляв ъгъл на екрана.
При растерните дисплеи, дисплейният процесор се опростява
неимоверно. Една част - наричана просто видео-контролер по аналогия с
контролерите на други периферни устройства - се отделя от него и
започва да изпълнява една единствена задача: да сканира ред след ред
(отгоре-надолу и после отново) матрицата на растера и да изпраща
аналогови сигнали към катода на ЕЛТ за емисия на електрони за всеки
елемент от един ред, който е различен от нула.
18
Този тип дисплей често е наричан и дисплей с последователно
регенериране , тъй като пътят на електронния лъч е фиксиран, след-
вейки обхождането на растерната матрица, а интензитетът му зависи от
съдържанието на съответната растерна клетка. Успехът на растерните
дисплеи се дължи най-много на сравнително евтината памет в началото
на 70-те, което при този вид дисплеи е основният компонент.
Предимствата пред векторните дисплеи са цената, независимостта на
регенерацията от сложността на изображението и не на последно място
възможността за ефективно запълване на области (дори и с образци),
което се оказва много полезно при визуализацията на пространствени
обекти. Недостатъците са главно в тяхната дискретност: един вектор
трябва първо да бъде превърнат в поредица от пиксели, при което изчезва
структурираността на елементите - изображението се състои само от
пиксели. Това оказва определено влияние при разработването на
програмно осигуряване. Алгоритмите за получаване на растеризираии
образи на геометрични обекти са предмет на растерната графика, която
ние ще разгледаме в следващата глава. Друга последица от дискретността
е стъпаловидността на изображението, за визуалното отстраняване на
което започват да се разработват допълнителни програмни средства.
Растерните дисплеи се различават по разделителната способност на
устройството. Тя е пряко свързана с размерността на матрицата на
растера, а оттам и с необходимата дисплейна памет. Съвременните
масово използвани растерни дисплеи имат разделителна способност
1280х1024 пиксела при размери между 14 и 21 инча по диагонал. Много
от специализираните модели имат апаратно реализирани възможности за
визуализация на пространствен обекти с премахване на невидимите
линии и повърхности; осветяване с отчитане на оптически ефекти като
сенки, полусенки, прозрачност и др.; изпълнение на пространствени
трансформации над моделите им; визуализиране на произволни
повърхнини чрез рационални сплайн-функции и др.
1.2.2 Устройства за изход върху постоянен носител
Тук ще направим съвсем кратък преглед на устройствата, които се
използват за постоянен графичен изход, наричани с общото име
устройства за изход върху постоянен носител . Те са необходими при
окончателното визуализиране на резултата от работата на една приложна
графична програма - създаване на технически чертежи, архитектурни
планове, географски карти, илюстрации, компютърни картини и др. При
тях естествено няма изискване за интерактивност, тъй като няма и
промяна на изображението. Подобно на дисплеите устройствата за изход
върху постоянен носител могат да бъдат класифицирани в две основни
групи: растерни и векторни.
19
ПЕЧАТАЩИ УСТРОЙСТВА (ПРИНТЕРИ). Принципите, на които са
построени различните печатащи устройства са много различни. Те са
изключително растерни устройства, при които образът се създава чрез
последователно сканиране и следователно изисква предварително
растеризиране.
• Матричните (иглени) печатащи устройства са построени на принципа
на пишещата машина, но с глава, която представлява матрица от 7 до 24
игли, които при хоризонталното движение на главата върху хартията
отпечатват няколко реда от растера. За разлика от растерните дисплеи,
тук един ред може да бъде отпечатан няколко пъти с различни
отмествания, при което могат да се разработят допълнителни методи за
премахване на стъпаловидния ефект. Цветен печат се постига с
използването на няколко ленти, но резултатът рядко е удовлетворителен.
• Принтерите с впръскване на мастило са евтини устройства за цветен
печат. Една глава с три мастилени инжектора сканира листа хартия и
впръсква на пиезоелектричен принцип комбинация от трите основни
цвята, при смесването на които се получава желаният.
• Лазерните принтери са също растерни устройства, при които лазерен
лъч сканира въртящ се, положително зареден селенов барабан. Точките, в
които лъчът докосва барабана губят положителния си товар и в крайна
сметка положително заредени остават само тези, които трябва да са
черни. Прахообразно мастило (тонер) залепва върху положително
заредените области и после се нанася върху хартия. Лазерният принтер е
снабден с микропроцесор, който извършва растеризирането, Някои
принтери могат да интерпретират и програми, написани на специализиран
език.
• Електростатичните принтери зареждат отрицателно специална хартия
и след това нанасят течен, положително зареден тонер върху нея. Те
също, подобно на лазерните принтери, може да имат микропроцесор за
извършване на растеризация и интерпретация на специализирани
програми.
• Термопринтерите са подобни на електростатичните, само че
принципът се прилага към специална лента, покрита с восък, която при
нагряване го разтопява и отдела полепналото върху нея мастило върху
обикновен лист хартия.
ЧЕРТОЖНИ УСТРОЙСТВА (ПЛОТЕРИ).
Плотерите са най-често век- торни устройства, при които
специален държач движи писалка, която чертае върху хартиен лист.
Предимствата на плотерите са най-вече в по-голямата точност
(разделителната им способност е типично 40 точки на милиметър което е
повече от три пъти по-добро от принтерите с 300 точки на инч) както при
20
позициониране, така и при използване на точна дебелина на линиите.
Друго предимство са техните размери (съответно и на листа, върху който
се изчертава изображението), които са значително по-големи от тези на
принтерите. Движението на писалката при изчертаването на един вектор
не е плавно. То се разбива на много стъпкови движения най-често в осем
посоки, но поради голямата разделителна способност векторите
изглеждат гладки.
Планшетен плотер
Барабанен плотер
фиг. 1-5
Плотерите са снабдени с микропроцесор, който интерпретира пробрама
на специализиран език за описание на векторни образи.
Основните команди на този език са:
- вдигане на перото от хартиения лист;
21
- спускане на перото върху хартиения лист;
- придвижване от текущата позиция до определена точка.
Допълнителните команди включват: чертане на дъги от окръжност,
елипси, символи с произволен наклон и размер, задаване на типове линии,
щриховане и др.
Използват се най-често два вида плотери (фиг. 1-5):
•плоски (планшетни, при които листът хартия е неподвижен, едно
рамо се движи в едната посока (най-често по ширината листа), а по
това рамо в другата посока се движи държачът на пиката. Началото на
координатната система е най-често в един ъглите на листа.
•барабанни , при които хартията се движи в едната посока
посредством въртене върху барабан, а писалката се движи от държача
в другата посока. Тези плотери са удобни при големите формати А1-
АО, Тук трябва да отбележим, че високата разделителна способност и
големите размери налагат използване на цели числа, които излизат
извън интервала . Поради тази причина координатното начало може
да е разположено в центъра на листа хартия (за да се използват и
отрицателните двубайтови цели числа за координати на точките).
LCD, Plasma & HDTV
Основни концепции на LCD технологията
Течните кристали представляват органични съединения с дълги
молекули, които в естествено състояние се характеризират с наличие на
близко и отсъствие на далечно подреждане, т.е. най-често съседните
молекули се разположени успоредно по дължина една на друга, но като
цяло съвкупността им е по-скоро хаотична. В LCD панелите течните
кристали се затварят между две успоредни прозрачни плоскости с много
фино набраздена вътрешна повърхност. Молекулите на течните кристали
следват ориентацията на вътрешните набраздявания, и тъй като двете
плоскости са набраздени под ъгъл 90° една спрямо друга, това води до
своеобразно „усукване” на молекулите. Пътят на светлинните лъчи
зависи от подреждането на молекулите и при преминаване през слоя от
течни кристали светлината може да промени направлението си.
При типичния TN (Twisted Nematic) дисплей току що описаната
течнокристална структура се загражда от двете страни с допълнителни
поляризационни филтри, чиито вектори на поляризация са взаимно
перпендикулярни. При движението си през тях светлината се поляризира
от първия филтър, но преминавайки през „усуканите” течни кристали
завърта направлението на поляризация на 90° и по този начин достига до
22
втория филтър с подходящата ориентация, за да премине напълно
безпрепятствено през него. Ако обаче приложим електрично напрежение,
молекулите на кристалите се „изправят” следвайки посоката на силовите
му линии. Тогава вече светлината остава непроменена при пресичането на
течнокристалния слой и достигайки до втория поляризационен филтър се
блокира напълно, т.е. на екрана в съответната зона се образува черен
пиксел. Казано накратко, при отсъствие на напрежение светлината
преминава безпрепятствено и формира светъл пиксел, а при прилагане на
напрежение тя е блокирана и на екрана се образува черен пиксел. Ролята
на светлинен източник изпълнява флуоресцентната подсветка, чиито лъчи
се разпределят равномерно по цялата площ на екрана.
Първата значителна стъпка за усъвършенстване на LCD дисплеите
е преминаването към TFT (Thin Film Transistor). При тях управляващите
транзистори, които подават напрежението върху слоя от течни кристали,
се метализират в тънък слой (откъдето идва и името им) директно върху
всеки субпиксел. Поради този директен контрол на ниво субпиксел, TFT
дисплеите са поне 10 пъти по-бързи от първоначалните STN модели.
Всъщност, времето на реакция (индикатор за бързината, с която
пикселите на екрана превключват от бяло в черно и обратно), е много
важен параметър за дисплея и неговите качества. Колкото по-ниско е
времето на реакция, толкова по-„пъргава” е матрицата на дисплея и
толкова по-добре се справя тя при точното възпроизвеждане на най-
динамичните сцени от филмите. С помощта на редица авангардни
технологии, времето за реакция на съвременните панели достигна и
подмина границата от 8ms и на практика напълно изчезна проблема с
неприятното замазване на образа след бързо движещите се по екрана
обекти. Другият основен проблем при старите LCD панели бе малкия
ъгъл на виждане, който ги правеше непригодни за внедряване на
телевизионния пазар. Напоследък обаче се появиха IPS (In Plane
Switching) и S-IPS (Super IPS) панели, които значително разширяват ъгъла
на виждане във всички посоки. Аналогично действие има и въведената от
Fujitsu MVA (Multi Domain Vertical Alignment) технология. Без да се
спираме в излишни детайли около тяхната същност, ще сравним крайния
ефект от прилагането на S-IPS или MVA. Предимствата на MVA – при
него се губи по-малко яркост, отколкото при IPS. Контрастът при MVA
обикновено е по-висок, но за сметка на това деградира в по-голяма степен
при увеличаване на зрителния ъгъл в сравнение с IPS. Недостатъците на
MVA дисплеите – по-скъпи са от S-IPS и не са толкова убедителни в
предаването на черното. Обърнете внимание, че някои производители
(Sony и Samsung например) използват PVA технология за по-широк ъгъл
на видимост на дисплеите, която по същество е сходна с MVA.
23
Основни концепции на плазмената технология
Плазмените панели, наричани често PDP (Plasma Display Panel) са
изградени от огромен брой клетки, пълни с червен, зелен и син фосфор,
които формират отделните цветни пиксели. При прилагане на напрежение
върху миниатюрни прозрачни електроди, разделени от диелектричен слой
MgO и разположени в среда от смесени благородни газове неон и аргон,
между въпросните електроди възниква плазмен разряд, съпроводен с
емисии на ултравиолетовата светлина. Тези емисии взаимодействат с
фосфора и го карат да излъчва светлина във видимия диапазон на
спектъра. Всеки пиксел се състои от три субпиксела – червен, зелен и син.
Интензитетът на цветовете се контролира чрез промяна на броя и
дължината на приложените върху съответните електроди управляващи
импулси.
Сравнение между специфичните особености на двете технологии
Икономичност
Плазмените телевизори категорично консумират много повече
електроенергия от икономичните LCD панели.
Време на живот
Почитателите на TFT LCD изтъкват като основен контрааргумент
във вреда на плазмените телевизори факта, че с времето върху екрана на
плазмата се „прогарят” силуетите на някои статични изображения. При
употреба с рекламна цел на публични места, където плазменият дисплей
показва денонощно едни и същи лога или статични картини, това
наистина може да се превърне в проблем. При домашна употреба обаче,
когато плазмата се използва за гледане на DVD филми и телевизионни
програми, тя ще издържи дълги години без каквато и да е видима промяна
в качеството на изображението.
Честота на опресняване
При LCD от ключово значение е времето на отклик (по принцип
това е времето за превключване на пиксела от напълно бяло до напълно
черно състояние и обратно), което повечето производители напоследък
мерят между две различни нива на сивото с аргумента, че това дава по-
адекватна представа за качествата на телевизора при употребата му в
реалния живот. До скоро LCD се представяше много по-зле от CRT и
плазмите в това отношение, но последните S-IPS и MVA екрани
поизравниха везните, а внедряването на ODC (Over Driving Circuitry) на
практика напълно заличи изоставането им.
Ъгъл на виждане
Причината да се отделя такова внимание на този параметър, е
стремежът да се избегнат дразнещите промени в цветовете при промяна
на зрителния ъгъл. Плазмите по принцип нямат подобен проблем, а
24
прилагането на новите технологии в TFT (като гореописаната S-IPS
например) реши напълно въпроса и за LCD.
Електроника
Факт е, че производителите на TFT панели са много по-малко от
производителите на LCD телевизори, т.е. често се случва различни
модели LCD телевизори да използват абсолютно идентични TFT панели.
Нека това обаче не ви заблуждава – телевизорите с еднакви панели може
да демонстрират съществена разлика в качеството на картината, в
зависимост от типа и качеството на електронните компоненти,
използвани за обработка на сигнала.
Яркост
Плазмите теоретично имат по-висока пикова яркост от LCD, но те
пък от своя страна се характеризират с отлична средна яркост и то по
протежението на целия екран, поради което реалните изображения често
изглеждат по-ярки при LCD.
Контраст
В тъмна стая, контрастът на LCD и плазмените телевизори
изглежда сходен, но истината е че LCD леко изостават по този показател,
поради факта, че подсветката е непрекъснато включена и колкото и добри
да са поляризационните филтри на екрана, част от светлината винаги се
промъква през тях. От своя страна плазмите също не са с идеален
контраст поради ефекта на послесветене на фосфора. В осветена стая
обаче контрастът на LCD телевизорите изглежда на по-добро ниво.
Разделителна способност
От чисто технологична гледна точка е много по-лесно да бъдат
произведени LCD телевизори с висока резолюция, отколкото плазмени
такива. В таблицата към текста сме посочили означенията и стойностите
на основните разделителни способности при телевизорите.
Работен режим Хоризонтална х вертикална разделителни способности
VGA 640 x 480
SVGA 800 x 600
XGA 1024 x 768
SXGA 1280 x 1024
UXGA 1600 x 1200
HDTV 1920 x 1080
HDTV plus 1920 x 1200
QXGA 2048 x 1536
Какво всъщност е HDTV
Традиционните телевизионни приемници изобразяват картината с
резолюция 480 линии. При HDTV (High Definition Television) картината
се характеризира с много по-висока разделителна способност, от където
25
идва и името на самия стандарт. Двата основни работни режима на HDTV
са 720p (720 линии при поредова развивка на екрана с честота на
опресняване 60 Hz) и считания от мнозина за “истински HDTV режим”
1080i, изобразяващ на екрана цели 1080 хоризонтални линии. HDTV
програмите по принцип се излъчват във формат на екрана 16:9, който е
по-широк от традиционния формат 4:3 и е особено подходящ за домашно
кино.
Какво означават буквите “i” и “p” след 720p и 1080i
Символът “i” след параметрите на разделителната способност
идва от interlaced и означава, че екранната развивка е презредова, т.е. на
първия пас се визуализират половината от линиите, а другата половина
остават за следващия пас. Тъй целият процес протича достатъчно бързо
(честота на опресняване 60Hz означава че се извършват по 60 паса в
секунда) човешкото око възприема картината като едно цяло, но на
практика пълният кадър се сглобява два пъти по бавно, т.е. при честота
60Hz имаме 30 пълни кадъра в секунда. Означението “p” идва от
“progressive” т.е. в случая развивката е поредова (често означавано в
продуктовите каталози на български като “прогресивно сканиране”). В
този режим информацията за линиите се изпраща последователно към
екрана, т.е. линиите се визуализират една след друга на всеки пас. В
резултат на това изходното изображение е по-стабилно и по-качествено.
Кой режим е по-добър – 1080i или 720p
На практика в режим 1080i (1920 х 1080) на екрана се появяват 2
милиона пиксела 30 пъти в секунда, а в режим 720p (1280 x 720) те
съответно са 1 милион, но се обновяват 60 пъти в секунда. Някои хора
предпочитат 720p заради по-стабилната картина. Други залитат по посока
на високата резолюция на 1080i. В крайна сметка, изборът опира и до
чисто субективното усещане, което картината оставя у зрителя. Сравнете
образа при двата различни режима и преценете кой вариант ви
удовлетворява повече. Двата режима ще продължат да съществуват
успоредно още дълги години и съвместимостта на бъдещото HDTV
оборудване с тях е гарантирана, така че не бива да се притеснявате за
инвестициите си в скъп телевизор. Те няма да отидат на вятъра, след като
единият формат изчезне за сметка на другия, тъй като такова нещо просто
не се предвижда в обозримо бъдеще.
26
4. ДВУМЕРНА ГРАФИКА – ИЗХОДНИ
ГРАФИЧНИ ПРИМИТИВИ (ОТСЕЧКА,
МАРКЕР, ОКРЪЖНОСТ)
4.1 Общи положения
Графическите данни се делят на:
•Векторни;
•Растерни.
Пикселът (pixel - picture element) e най-малкия базов елемент
т.е. точка разположена на правилна мрежа (растер) и формираща образ. В
компютърната графика за указване на местоположението на графичните
обекти се използват математически координати, физически и логически
пиксели. Физически пиксели – реални точки, изобразени на устройства за
изход. Те са най-малките елементи на изобразяваната повърхнина и
заемат определена площ. Разстоянията между два съседни пиксела са
различни в зависимост от избора на изображението. При голяма
разрешаваща способност (много пиксели на единица площ) се получава
сливане на съседни пиксели.
Логически пиксели – те са подобни на математическите точки,
имат местоположение но не заемат физическото пространство. При
27
Бял пиксел
(1,1)
Физически пиксел
показване значението на логическия пиксел на дисплей на практика се
изобразява физически пиксел.
••••••
••••••
••••••
••••••
••••••
••••••
В зависимост от това дали картината, която се създава с помощта
на дадена графическа система (ГС) създава илюзия за двумерно или
тримерно пространство различават се съответно :
•двумерни ГС;
•тримерни ГС.
Възможността на една ГС се определя преди всичко от това какви
визуализиращи параметри тя обработва или от функциите на
приложния интерфейс. Различават се 4 базисни групи от такива
функции:
1. Графичен изход на ГС – обхваща изходните примитиви и
техните атрибути, посредством които се изгражда картината.
2. Графичен вход на ГС – обхваща функции които осигуряват
въвеждане на графична и не графична информация.
3. Графичен вход на ГС – обхваща функции, които имат
отношение към координатната система използвана от ГС,
координатни трансформации, транслации и др.
Сегменти, изходни примитиви и атрибути , които се разглеждат
,като една логическа единица която се подлага на различни модификации
(преместване, ротация,мащабиране и др.).
28
Бял пиксел
(1,1)
Логически пиксел
Концептуална схема на Graphic Kernel System (GKS)
визуализационна система
Графичната информация, която се генерира от системата и се
прехвърля към всички активни работни станции, се изгражда от
изходни графични примитиви. Различаваме следните типове примитиви:
1. ПОЛИЛИНИЯ (polyline) - представлява последователност от
свързани отсечки и се определя от координатите на крайните
точки на всяка отсечка.
2. ПОЛИМАРКЕР (polymarker)—представлява множество от
графични символи от символи от един и същи тип.
3. ТЕКСТ (text) - последователност от буквено-цифрови
символи.
4. ЗАПЪЛНЕНА ОБЛАСТ (fill area) —равнинен полигон,
който може да е запълнен с даден цвят или щриховка.
5. ПИКСЕЛНА ПОСЛЕДОВАТЕЛНОСТ (pixel array) -
генериране на пиксели с еднакъв цвят.
6. ОБОБЩЕН ЧЕРТОЖЕН ПРИМИТИВ (generalised drawing
primitivе)
представлява обръщение към интелигентните функции на
работната станция, които могат да изчертаят
интерполационна крива, окръжност, елипса и др. За
изчертаването на тези чертожни примитиви се задава
идентификатор или набор от точки и допълнителни данни.
Всеки изходен примитив има три типа параметри:
•геометрични,
•негеометрични;
•идентификатори.
29
Първите два типа са свързани с изобразяването на примитива,
докато третият е свързан с неговото идентифициране при
интерактивна операция. Стойностите на тези параметри се записват в
списък на състоянието.
При генерирането на примитива неговите параметри се
присъединяват към него и не могат да се изменят в п oнататъшната
обработка.
Геометричните параметри управляват формата и размера на
примитивите, например параметър на височина на текста. Тези параметри
не са зависими от работните станции и се задават в моделни координати.
Генерират се отделно за всеки примитив.
Текущата стойност на геометричните параметри се напомня в
моделни координати. Когато те се присъединяват към генериран
графичен примитив, тяхната стойност подлежи на същата транс-
формация, на която се подлагат и координатните параметри на
примитива.
Негеометричните параметри указват начина за изобразяване
на обекта - цвят, тип на линията и др. Те могат да бъдат зададени по два
начина като присъединени или като индивидуални. В първия случай се
задава индекс към присъединена таблица, която съдържа всички
параметри на примитива. Така зададените примитиви са зависими от
работната станция, всяка от които има
няколко присъединени таблици. Индивидуалното задаване представлява
прикрепване на параметъра към примитива, което е не
зависимо от особеностите на работната станция.
Ако цветът е зададен като негеометричен параметър, той
представлява индекс към отделна таблица на цветовете. Всяка работна
станция има само една таблица на цветовете.
Идентифициращ параметър е т. нар. посочващ идентификатор,
присъединен към примитива или към сегмента. При посочва-
нето па примитива или сегмента с интерактивно средство съответният
посочващ идентификатор се изпраща към приложната програма за
идентификацията му.
За изброените примитиви се задават съответно.
За ПОЛИЛИНИЯ - индекс, тип на линията, мащабен коефициент
на широчината на линията, индекс към таблицата на цветовете, посочващ
идентификатор.
За ПОЛИМАРКЕР—индекс, тип на маркера, мащабен
коефициент, цвят, посочващ идентификатор.
За ТЕКСТ—индекс, шрифт, коефициент на разширение на
буквите, разстояние между буквите, височина на буквите, посочващ
идентификатор.
30
За ЗАПЪЛНЕНА ОБЛАСТ — индекс, интериорен стил, индекс на
стил (използува се таблица на стиловете), индекс за цвят,
размер на запълващата фигура.
За ПИКСЕЛНА ПОСЛЕДОВАТЕЛНОСТ и за ОБОБЩЕН
ЧЕРТОЖЕН ПРИМИТИВ — посочващи идентификатори.
Към всяка работна станция се формират следните таблици
на параметри: свързана таблица за полилиния, свързана таблица за
полимаркер, свързана таблица за текст, свързана таблица за запълнена
област, таблица на графични образи (щриховка и др.). таблица на
цветовете. Стойностите в тези таблици могат да се сменят динамично.
Параметри (атрибути) на полилиния. Полилинията няма
геометрични параметри. Изобразяването и се определя от параметъра
индекс,
чрез който се извършва обръщение към свързаната таблица за
полилинията на конкретната станция или се задават индивидуални
негеометрични параметри.
Типът на линията определя дали линията е прекъсната или не-
прекъсната. Непрекъсната линия може да се изобразява в най-
различни модификации.
Ширината на линията се получава, като номиналната широчина с
зададения мащабен коефициент.
Параметри на полимаркер. Няма геометрични параметри.
Изображението му се управлява от параметри (тип на маркера,
мащабен коефициент на размера на маркера, индекс към таблицата на
цветовете). Те или се задават индивидуално, или чрез индекс се
обръща към свързаната таблица на конкретна
дисплейна станция.
Стандартизирани са сладните типове маркери с номера от 1
до 5 (1 – точка, 2 – знак плюс, 3 - звезда, 4 - окръжност, 5 – кръст). Типове
с номер, по-големи от 5, се формират индивидуално за станциите.
Размерът на маркера се изчислява, като номиналният размер
се умножава с мащабния коефициент.
Маркерът е видим на екранната област само ако указаната
координатна позиция е в екранния прозорец.
Какво е примитив и атрибут ?
Например за изходен графичен примитив се приема полилинията
(poliline) (x1,y1,x2,y2,…xn,yn). Полилинията включва една или повече
отсечки. Графични атрибути на полилинията са:
•тип на линията (line type);
•дебелина (line width)
•цвят на линията (line color).
31
4.2 РАСТЕРИЗИРАНЕ НА ГРАФИЧНИ ПРИМИТИВИ
4.2.1. Общи положения
Алгоритмите за растерна графика имат за цел да обслужват
визуализацията върху растерни устройства. Необходимостта от
специални алгоритми за генериране и манипулиране на растерни
изображения се налага поради широкото използване на растерните
дисплеи за силно динамични задачи като анимация, симулация в реално
време, т.нар. симулация на реална среда и др. Тези задачи изискват
изпълнение на операциите с голяма скорост, която се постига и когато
самите алгоритми са много ефективни и отчитат особеностите на
растерните дисплеи. Търсенето на бързодействие е причината и едно от
съвременните направления в изследванията в тази област да е създаването
на паралелни алгоритми за растерна графика.
Ще разгледаме най-често използваните алгоритми за генериране
на растерни изображения на основните геометрични обекти (графичните
примитиви) - отсечка, окръжност, дъга и текстов символ, както и
начините за запълване на области, зададени с многоъгълници и
окръжности.
При представянето на растерните дисплеи по-горе казахме, че
изображението се описва в т.нар. бит-карта или пикселна карта, която е
една правоъгълна матрица. Елементите на тази матрица (пикселите» са
фиксиран брой битове, които задават цвета и интензитета на съответната
точка от екрана. Адресацията на всеки пиксел в тази растерна матрица
става чрез двойка целочислени координати, всяка от които варира във
фиксиран целочислен интервал [0,тахХ\ и [0,тахУ\ съответно. Числата
тахХ+\ и тахУ+1 са различни за всеки растерен дисплей и отразяват броя
на пикселите по всяка от координатните оси.
Координатната система, определена върху растерната мрежа за
повечето растерни дисплеи е с координатно начало в горния ляв ъгъл на
растера (съответно и на екрана». Но ние обаче ще считаме, че
координатната система на растера е декартова, т.е. к