Компютърна графика Генериране на графично изображение (визуализация) гл.ас. д-р инж. М. Иванова

Содержание

Слайд 2

Обработка на информацията в графичната система Две нива на обработка Основна

Обработка на информацията в графичната система

Две нива на обработка
Основна обработка
Визуализационна обработка

Основна

обработка

Бази от данни

Геометрично моделиране. Приложни програми

Графични програми

Интерактивен диалог

Екранна картина

Дисплеен файл
Кадров буфер

Визуализация

Слайд 3

Състав на дисплейната картина Графичните примитиви са основни графични елементи, които

Състав на дисплейната картина

Графичните примитиви са основни графични елементи, които се

използват за изграждане на дисплейния образ.
Обикновено в инженерната практика примитиви се наричат тези елементи, които се генерират апаратно в дисплейната станция или плотера.
В този смисьл типични примитиви са:
точка,
вектор (отсечка),
буквено-цифров символ (текст).
Слайд 4

Графични примитиви - стандартен набор 1. Полилиния (Poliline) - представлява последователно

Графични примитиви - стандартен набор

1. Полилиния (Poliline) - представлява последователно свьрзани

отсечки и се определя от координатите на крайните точки на всяка отсечка.
2. Полимаркер(Polimarker) - представлява множество от графични символи (маркери) от един и сьщи тип , зададени чрез координатите на своите центрове.
3. Текст (Text) - последователност (низ) от буквено-цифрови символи.

текст

Слайд 5

Графични примитиви - стандартен набор 4. Запълнена област (Fill Area) -

Графични примитиви - стандартен набор

4. Запълнена област (Fill Area) - равнинен

многоъгъник, който може да бьде празен, запьлнен с даден цвят или с щриховка .
5. Матрица от клетки (Cell Array) - матрица от клетки, запълнени с различни цветове .
6. Обобщен чертожен примитив (Generalized Drawing Primitive) - по-сложни фигури, като окръжност, интерполирана крива, елипса и др.
Слайд 6

Графични примитиви - параметри Всеки примитив има три типа параметри: Геометрични

Графични примитиви - параметри

Всеки примитив има три типа параметри:
Геометрични – управляват

формата и размера на примитива
Негеометрични – указват начина на изобразяване: цвят, тип на линията
Идентификатори – за улавяне на примитива с интерактивно средство
Слайд 7

Координатни системи

Координатни системи

Слайд 8

Моделен прозорец Всяка избрана моделна подобласт за визуализация на включените в

Моделен прозорец

Всяка избрана моделна подобласт за визуализация на включените в тази

подобласт обекти се нарича моделен прозорец. От този прозорец се генерира образ вьрху екранната област или вьрху областта на графичното устройство.
Слайд 9

Функция прозорец, функция изрязване Преобразуването на моделния прозорец в екранен образ

Функция прозорец, функция изрязване

Преобразуването на моделния прозорец в екранен образ се

нарича функция прозорец.
Друга функция, директно свьрзана с функцията прозорец, е т.нар. изрязване, с което се определя кои части от зададения гафичен обект попадат в екранната област.
Слайд 10

Проекции При централна проекция обемьт за визуализация е пирамида, а при

Проекции

При централна проекция обемьт за визуализация е пирамида, а при паралелна

проекция пирамидата се модифицира в проекционна призма.
Слайд 11

Основни трансформации на картината Основни трансформации са: Транслация – преместване на

Основни трансформации на картината

Основни трансформации са:
Транслация – преместване на картинен сегмент
Ротация

– завъртане около точка или ос
Мащабиране – свиване или разширяване на елемент
Слайд 12

Производни трансформации а) разтягане или свиване по дадена ос - извьршва

Производни трансформации

а) разтягане или свиване по дадена ос - извьршва се

чрез транслация на дадени контурни линии или точки от тях, другите линии остават непроменени;
б) огледало (осева симетрия) - построява се огледален образ на картинния елемент;
в) разтягане(като ластик) - в резултат на интерактивна намеса врьх или отсечка от дадена фигура се премества в произволна посока, при което свьрзаните рьбове се разтягат като ластик; указаното разтягане по ос (т.а) може да се счита частен случай на метода на ластика;
г) зуминг (лупа) - последователно мащабиране в прогресия с еднакви мащабни коефициенти по две оси, така че да се получи впечатление за отдалечаване или приближаване на картината или сегмент от нея (подобно е на вариооптичния ефект вьв фотографията);
д) превьртане - динамично изобразяване на ротацията на елементи от картината около дадена ос, чиято ориентация непрекьснато се сменя в пространството.
Слайд 13

Генериране на изображения на графични примитиви Полилиния Y=mx+b – растерни устройства

Генериране на изображения на графични примитиви

Полилиния
Y=mx+b – растерни устройства
m= =
b= Y1-mX1
∆y=m

∆x – векторни устройства
Слайд 14

Генериране на изображения на графични примитиви Полилиния – алгоритъм на Брезенхайм

Генериране на изображения на графични примитиви

Полилиния – алгоритъм на Брезенхайм
Y=m(xi+1)+b
d1=Y-yi=m(xi+1)+b-yi
d2=(yi+1)-Y=yi+1-m(xi+1)-b
d1-d2=2m(xi+1)-2yi+2b-1
p1=2∆y- ∆x

Слайд 15

Генериране на изображения на графични примитиви Стъпки в алгоритъма: Запомнят се

Генериране на изображения на графични примитиви

Стъпки в алгоритъма:
Запомнят се координатите на

крайните точки на отсечката: (X1,Y1) и (X2,Y2)
Изчисляват се ∆x, ∆y, p1. Ако p1<0 – следващия пиксел е: (X1+1, Y1), в противен случай е: (X1+1, Y1+1)
Координата X нараства с 1.
(xi+1, yi) ако pi<0
(xi+1, yi+1) ако pi>0
Повтаря се стъпка 3 до достигане xi=X2.
Слайд 16

Генериране на изображения на графични примитиви

Генериране на изображения на графични примитиви

Слайд 17

Генериране на изображения на графични примитиви - изглаждане 0 1 2

Генериране на изображения на графични примитиви - изглаждане

0 1 2 3

4 5 6 7 8 9 10 11
Слайд 18

Генериране на изображения на графични примитиви

Генериране на изображения на графични примитиви

Слайд 19

Генериране на изображения на графични примитиви

Генериране на изображения на графични примитиви

Слайд 20

Генериране на изображения на графични примитиви Запълнена област – растерни графични

Генериране на изображения на графични примитиви

Запълнена област – растерни графични устройства


Метод на сканиращата линия – през запълнената област се премества мислена линия успоредна на една от осите

А

В

С

D

F

E

G

H

I

1

2

3

4

1

2

3

4

5

Слайд 21

Генериране на изображения на графични примитиви Метод на сканиращата линия –

Генериране на изображения на графични примитиви

Метод на сканиращата линия – изглаждащи

процедури

xi xi+1 xi+2 x

y
yi+2
yi+1
yi

Слайд 22

Генериране на изображения на графични примитиви Окръжност – алгоритъм на Брезенхайм

Генериране на изображения на графични примитиви

Окръжност – алгоритъм на Брезенхайм

Слайд 23

Генериране на изображения на графични примитиви Окръжност – алгоритъм на Брезенхайм

Генериране на изображения на графични примитиви

Окръжност – алгоритъм на Брезенхайм

d1

x

y

d2

xi+1


yi
y
yi-1

y2=r2-(xi+1)2

d1=yi2-y2=yi2-r2+(xi+1)2

d2=y2-(yi-1)2=r2-(xi+1)2-(yi-1)2

pi=d1-d2=2 (xi+1)2+yi2 +(yi-1)2-2r2

Ако pi<0 - (xi+1, yi)
Ако pi>0 - (xi+1, yi-1)

Слайд 24

Генериране на изображения на графични примитиви Окръжност – алгоритъм на Брезенхайм

Генериране на изображения на графични примитиви

Окръжност – алгоритъм на Брезенхайм

Ако d1<0,

d2<0, pi<0 - (xi+1, yi)
Ако d1>0, d2<0, pi>0 - (xi+1, yi-1)

x

y

xi+1


yi
yi-1

Слайд 25

Определяне и скриване на невидими линии Алгоритъм на Коен-Съдърленд

Определяне и скриване на невидими линии

Алгоритъм на Коен-Съдърленд