Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Лекция 2. Растровая графика

Содержание

ПримитивыТочкиЛинииПрямоугольники (со сторонами, параллельными границам экрана)МногоугольникиШрифтыЗаливка областейПлоское отсечение
URL: 	http://www.school30.spb.ru/cgsg/cgc/E-mail: 	CGSG@yandex.ruРастроваяграфикаURL: 	http://www.school30.spb.ru/cgsg/cgc/E-mail: 	CGSG@yandex.ru ПримитивыТочкиЛинииПрямоугольники (со сторонами, параллельными границам экрана)МногоугольникиШрифтыЗаливка областейПлоское отсечение Line Line: Digital Differential Analyzer (DDA)(x,y)x2-x1y2-y1slope Line: Алгоритм Брезенхема (метод центральной точки)точка (x,y) «ниже» прямойточка (x,y) «лежит» на прямойточка (x,y) «выше» прямой Line: Алгоритм Брезенхема (метод центральной точки)P(x,y)M(x+1,y+1/2)f(x,y)Подставляем точку M в функцию f:если f(M) Line: Алгоритм Брезенхема (метод центральной точки)P(x,y)ME(x+2,y+1/2)f(x,y)Подставляем точку M в функцию f:если f(M) Line: Алгоритм Брезенхема (метод центральной точки)P1(x1,y1)M0(x+1,y+1/2)f(x,y)Известны приращения f.Найдем первоначальное значение для точки (x1,y1) Line: Алгоритм Брезенхема (метод центральной точки)Сохранились вещественные числа.Сделаем замену: 2f = eТогда Line: Алгоритм Брезенхема (метод центральной точки) Line: Алгоритм с использованием Fixed Point (DDA)Fixed Point – вещественные числа с CircleR Circle: Алгоритм Брезенхема (метод центральной точки)Подставляем точку M в функцию f:если f(M) Circle: Алгоритм Брезенхема (метод центральной точки)P(x,y)MESEMSEMEf(x,y)Изменения значения f(M) при переходек новым точкам (E или SE): Circle: Алгоритм Брезенхема (метод центральной точки)Определили приращения f.Найдем первоначальное значение для точки Circle: Алгоритм Брезенхема (метод центральной точки)Дополнительная оптимизация:Просчитаем изменение приращений по направлениям E Circle: Алгоритм Брезенхема (метод центральной точки) Polygon Flood Fill Flood Fill TextШрифтыРастровые	Векторные	Контурные Text0x3C0x460x860x860x860xFE0x860x00Справа показана битовая кодировка каждой строки (в шестнадцатеричном виде) УпражнениеРекомендуется реализовать растровые алгоритмы с помощью программы из первого упражнения. Растровые шрифты необходимо загружать из файла.
Слайды презентации

Слайд 2 Примитивы
Точки
Линии
Прямоугольники (со сторонами, параллельными границам экрана)
Многоугольники
Шрифты
Заливка областей
Плоское отсечение

ПримитивыТочкиЛинииПрямоугольники (со сторонами, параллельными границам экрана)МногоугольникиШрифтыЗаливка областейПлоское отсечение

Слайд 4 Line: Digital Differential Analyzer (DDA)


(x,y)
x2-x1

y2-y1

slope

Line: Digital Differential Analyzer (DDA)(x,y)x2-x1y2-y1slope

Слайд 5
Line: Алгоритм Брезенхема (метод центральной точки)

точка (x,y) «ниже»

Line: Алгоритм Брезенхема (метод центральной точки)точка (x,y) «ниже» прямойточка (x,y) «лежит» на прямойточка (x,y) «выше» прямой

прямой
точка (x,y) «лежит» на прямой
точка (x,y) «выше» прямой


Слайд 6
Line: Алгоритм Брезенхема (метод центральной точки)

P(x,y)
M(x+1,y+1/2)
f(x,y)
Подставляем точку M

Line: Алгоритм Брезенхема (метод центральной точки)P(x,y)M(x+1,y+1/2)f(x,y)Подставляем точку M в функцию f:если

в функцию f:
если f(M) > 0 выбираем точку NЕ
если

f(M) <= 0 выбираем точку Е

E

NE


Слайд 7
Line: Алгоритм Брезенхема (метод центральной точки)

P(x,y)
ME(x+2,y+1/2)
f(x,y)
Подставляем точку M

Line: Алгоритм Брезенхема (метод центральной точки)P(x,y)ME(x+2,y+1/2)f(x,y)Подставляем точку M в функцию f:если

в функцию f:
если f(M) > 0 выбираем точку NЕ
если

f(M) <= 0 выбираем точку Е

Изменения значения f(M) при переходе
к новым точкам (E или NE):

E

NE

MNE(x+2,y+3/2)


M


Слайд 8
Line: Алгоритм Брезенхема (метод центральной точки)

P1(x1,y1)
M0(x+1,y+1/2)
f(x,y)
Известны приращения f.

Найдем

Line: Алгоритм Брезенхема (метод центральной точки)P1(x1,y1)M0(x+1,y+1/2)f(x,y)Известны приращения f.Найдем первоначальное значение для точки (x1,y1)

первоначальное значение для точки (x1,y1)


Слайд 9
Line: Алгоритм Брезенхема (метод центральной точки)


Сохранились вещественные числа.
Сделаем

Line: Алгоритм Брезенхема (метод центральной точки)Сохранились вещественные числа.Сделаем замену: 2f =

замену: 2f = e
Тогда помеченные строки изменяться на:
e =

2 * dy - dx;
e > 0
e = e + 2 * dy - 2 *dx;
e = e + 2 * dy
и e – целое число.






Слайд 10
Line: Алгоритм Брезенхема (метод центральной точки)


Line: Алгоритм Брезенхема (метод центральной точки)

Слайд 11 Line: Алгоритм с использованием Fixed Point (DDA)

Fixed Point

Line: Алгоритм с использованием Fixed Point (DDA)Fixed Point – вещественные числа

– вещественные числа с фиксированной точкой.
Рассмотрим 4-байтное целое:
2b целая

часть

2b дробная часть

Точность 1/65536
Если x и y fixed point, то
сложение не изменяется (x+y)
вычитание не изменяется (x-y)
целая часть – «двоичный сдвиг» вправо на 16 бит (x >> 16)
из целого: x = a << 16


Слайд 12
Circle
R








CircleR

Слайд 13 Circle: Алгоритм Брезенхема (метод центральной точки)




Подставляем точку M

Circle: Алгоритм Брезенхема (метод центральной точки)Подставляем точку M в функцию f:если

в функцию f:
если f(M) >= 0 выбираем точку SЕ
если

f(M) < 0 выбираем точку Е

Слайд 14 Circle: Алгоритм Брезенхема (метод центральной точки)




P(x,y)
M
E
SE
MSE
ME
f(x,y)
Изменения значения f(M)

Circle: Алгоритм Брезенхема (метод центральной точки)P(x,y)MESEMSEMEf(x,y)Изменения значения f(M) при переходек новым точкам (E или SE):

при переходе
к новым точкам (E или SE):


Слайд 15 Circle: Алгоритм Брезенхема (метод центральной точки)

Определили приращения f.
Найдем

Circle: Алгоритм Брезенхема (метод центральной точки)Определили приращения f.Найдем первоначальное значение для

первоначальное значение для точки (x1,y1)

Все приращения - целые. Сравнение

f с 0 строгое: ‘<‘.
Поэтому из первоначального f можно вычесть 1/4..

Слайд 16 Circle: Алгоритм Брезенхема (метод центральной точки)


Дополнительная оптимизация:
Просчитаем изменение

Circle: Алгоритм Брезенхема (метод центральной точки)Дополнительная оптимизация:Просчитаем изменение приращений по направлениям

приращений по направлениям E и SE (incrE=2*x+3 и incrSE=2*(x-y)+5)

для избавления от доступа к переменным.
Если выбрана точка E, то ‘x’ увеличивается на 1 и:
incrE=incrE+2 и incrSE=incrSE+2

Если выбрана точка SE, то ‘x’ увеличивается на 1, ‘y’ уменьшается на 1 и:
incrE=incrE+2 и incrSE=incrSE+4
Изначальные значения:
incrE=3 и incrSE=5-2*R

Слайд 17 Circle: Алгоритм Брезенхема (метод центральной точки)


Circle: Алгоритм Брезенхема (метод центральной точки)

Слайд 18 Polygon

Polygon

Слайд 19 Flood Fill


Flood Fill

Слайд 20 Flood Fill

Flood Fill

Слайд 21 Text

Шрифты
Растровые Векторные Контурные

TextШрифтыРастровые	Векторные	Контурные

Слайд 22 Text

0x3C
0x46
0x86
0x86
0x86
0xFE
0x86
0x00
Справа показана битовая кодировка каждой строки (в шестнадцатеричном виде)

Text0x3C0x460x860x860x860xFE0x860x00Справа показана битовая кодировка каждой строки (в шестнадцатеричном виде)

  • Имя файла: lektsiya-2-rastrovaya-grafika.pptx
  • Количество просмотров: 101
  • Количество скачиваний: 0