511

Масштабирование и растеризация. Составление программы по алгоритму Брезенхема на языке Phyton

Курсовая

Информатика, кибернетика и программирование

Составление программы по алгоритму Брезенхема на языке Phyton. Рассмотрение координаты в ГМ и окне отображения на экране относительно левой нижней точки соответствующего окна. Рисование линий по алгоритму Брезенхема.

Русский

2013-01-06

226 KB

12 чел.

МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

(НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)

Факультет Радиоэлектроники ЛА

Кафедра 404

Курсовая   работа

по  дисциплине  компьютерная графика

Вариант  № 6

Студент: Михайлов Н.

Группа: 04 - 204

Руководитель работы: Репнев Д.Н.

Оценка:

Дата:

Подпись преподавателя:

Москва   2012

Содержание:

Задание…………………………………………………………………………2

Этап №1. Масштабирование окон……………………………………………3

Этап №2. Отсечение…………………………………………………………..4

Этап №3. Масштабирование примитива…………………………………….5

Этап №4. Растеризация……………………………………………………….6

Задание.

Для отрезка, являющегося составной частью графической модели объекта (изделия),

координаты которого заданы  в мировых координатах, и заданных параметров дисплея и окна отображения выполнить операции:

−  масштабирования;

−  отсечения;

−  растеризации.

Координаты

отрезка, мм

(Х1,У1  Х2,У2)

Координаты окна

отображения в модели,

мм

(Х1м;У1м :Х2м;У2м)

Параметры

графического

режима

монитора,

(Хр;Ур)  точек

Координаты окна

отображения

модели, пикселей

(Х1о;У1о  Х2о;У2о)

2,2    0,15

0,0    10,10

32,24

5;5   15;15

Этап №1. Масштабирование окон.

Задание:

Режим графического адаптера 48*36. Отобразить окно ГМ  с координатами (Х1;У1)м:(Х2;У2)м =0,0    10,10  в окне монитора (Х1;У1)о:(Х2,У2)о =5;5   15;15

Решение:

Определим масштабные коэффициенты  по Х и У:

   К’х=∆Хо/∆Хм=(15-5)/(10-0)=10/10=1

   К’у=∆Уо/∆Ум=(15-5)/(10-0)=10/10=1

Для сохранения пропорций (равенства расстояний по Х и У) на экране коэффициенты масштабирования по Х и У должны быть одинаковы, а также требуется выбирать  минимальный  из рассчитанных коэффициентов. Т.к. коэффициенты получились одинаковыми, выбираем любой…

 Sx=Sy=Кх=Ку=1

Т.к. коэффициенты равны то расширять область отображения ГМ не нужно. 

   Х1оогм=Х1м=0    У1оогм=У1м=0

      Х2оогм=X2м=10   У2оогм=У1м= 10

Этап №2. Отсечение.

Задание:

Определить координаты отрезка (2 точки), расположенного в отображаемой области ГМ. Координаты отрезка X1;Y1=2;2    X2;Y2=0;15

Решение:

Из рисунка видно что отрезок пересекает верхнюю  границу  ООГМ в точке A c координатой по оси  ОY=10. Найдём координату точки А по оси OX:

У=А+Кп*Х; где

 Кп=∆У/∆Х=(У2-У1)/(Х2-Х1)=(13)/(-2)=-6,5

 А=У1-Кп*Х1=2-2*(-6.5)=15

 X=(Y-A)/Кп=(10-15)/(-6.5)=0.7692

 Новый отрезок , после отсечения, будет иметь координаты (X1;Y1)=2;2   (X2;Y2)=0.7692; 10

Этап №3. Масштабирование примитива.

Задание:

 Определить экранные координаты отрезка

Решение:

После отсечения  имеем отрезок с координатами  (X1;Y1)=2;2

(X2;Y2)= 0.769;10 в мировых координатах, который является отображаемой частью заданного отрезка..

Удобно рассматривать координаты в ГМ и окне отображения на экране относительно левой нижней точки соответствующего окна, что равносильно переноса начала координат в эту (левую нижнюю) точку окна. Обычно эту точку называют координатой окна или базовой точкой (координатой) окна.

Определим координаты отрезка  относительно координат окна

 Х1”=X1-X1ooгм=2-0=2

 У1”=У1-У1ooгм=2-0=2

 Х2”=X2-X1ooгм=0.769-0=0.769

 У2”=У2-У1ooгм=10-0=10

Определим экранные координаты отрезка

 Х1э=Х1”*Кх+Х1о=7

 У1э=У1”*Кх+У1о=7

 Х2э=Х2”*Кх+Х1о=7.769=8

 У2э=У2”*Кх+У1о=15

Этап №4. Рисование линий по алгоритму  Брезенхема.

Задание:

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

Решение:

Для растеризации линии воспользуемся целочисленным алгоритмом Брезенхема рисования линии. Блок схема алгоритма для отрезка лежащего в 3 октанте:

Составим программу по алгоритму Брезенхема на языке Phyton:

def Proga(x1,y1,x2,y2):

 Dy=y2-y1

if Dy<0:

 Dy=Dy*(-1)

else:

 Dy=Dy

Dx=x2-x1

if Dx<0:

 Dx=Dx*(-1)

else:

 Dx=Dx

d=2*Dx-Dy

n=0

x=x1

y=y1

 print 'N', 'Yi', 'Xi', 'd', 'DX', 'DY'

print n, y, x, d, Dx, Dy

 print 'N', 'Yi', 'Xi', 'd', 'DL'

while y<y2:

 if d<0:

  DL=2*Dx

 else:

  DL=2*(Dx-Dy)

  x-=1

 d+=DL

 y+=1

 n+=1

 print n, y, x, d, DL

 print "KONEC"

Программа выведет ответ :

Proga(7, 7, 8, 15)

N Yi Xi d DX DY

0 7 7 -6 1 8

N Yi Xi d DL

1 8 7 -4 2

2 9 7 -2 2

3 10 7 0 2

4 11 6 -14 -14

5 12 6 -12 2

6 13 6 -10 2

7 14 6 -8 2

8 15 6 -6 2

KONEC

Занесём полученные данные в таблицу:

Yi

Xi

d

0

7

7

-6

1

8

7

-4

2

9

7

-2

3

10

7

0

4

11

6

-14

5

12

6

-12

6

13

6

-10

7

14

6

-8

8

15

6

-6

  Нарисуем растр экрана:

Большая синяя рамка это «экран монитора», а маленькая это окно на экране


 

А также другие работы, которые могут Вас заинтересовать

20309. Серебряный век в русском искусстве 103.5 KB
  Новая концепция искусства 2. Литература музыка театр соединение видов искусства Заключение Литература Введение В России первой трети прошлого века произошел мощный духовный всплеск вбросивший в сокровищницу мировой культуры немало значительных идей и произведений в сферах религиозной и философской мысли всех видов искусства. На взлет творческой активности Серебряного века повлияло постоянно укрепляющееся ощущение наиболее чуткими мыслителями и художниками нарастающего глобального никогда не случавшегося еще в истории человечества...
20310. Театр эпохи Просвещения 920 KB
  Театр эпохи Просвещения. Западноевропейский театр в эпоху Просвещения Театр от греч. Родовое понятие театра подразделяется на виды театрального искусства: драматический театр оперный балетный театр пантомимы и т. Происхождение термина связано с древнегреческим античным театром где именно так назывались места в зрительном зале от греческого глагола теаомай смотрю .
20311. Сценические эффекты в театре XIX века 55.5 KB
  Кроме этого появление электрических двигателей послужило мощным толчком для развития механического оборудования сцены. Классические люкипровалы превратились в подъемноопускные площадки и лифтовые сцены греческие выкатные площадки эккиклемы в платформы вывозящие в пределы игровой зоны целые декорационные комплексы небольшие круглые вращающиеся площадки времен театра Возрождения и барокко в различные системы поворотных кругов примитивные веревочные ручные подъемы в механизированные и немеханизированные штанкетные подъемы. Ответы на эти...
20312. Древнерусское искусство: архитектура, иконопись, литература, театр 242 KB
  С образованием государственности и принятием христианства из Византии на Русь пришли новые для нее виды монументальной живописи мозаика и фреска а также станковая живопись иконопись. Византия познакомила русских художников с новой для них техникой живописи дала им иконографический канон неизменность которого строго оберегалась церковью. Это в известной степени сковывало художественное творчество и предопределяло более длительное и устойчивое византийское влияние в живописи нежели в архитектуре. Самые ранние из сохранившихся...
20313. Театр эпохи Романтизма 174 KB
  Театр в эпоху романтизма 27 марта Международный день театра. Во Франции где были сильны традиции классицизма формирование сценического романтизма длилось дольше протекало в острой борьбе с классицизмом. В 1827 было опубликовано предисловие Гюго к его драме Кромвель теоретический манифест романтизма.
20314. Роль фактурной обработки декораций в создании зримого образа спектакля 54.5 KB
  Фактурная обработка декораций занимает одно из ведущих мест в производстве оформления для сцены. Художественное качество исполняемых декораций находится в прямой зависимости от правильно выбранного способа обработки технологии изготовления фактур. Режиссер должен быть знаком с основным технологическим процессом изготовления декораций материалами и инструментами приспособлениями для изготовления бутафории влияющими на качественные характеристики стилевой целостности всего зрелища.
20315. СЦЕНОГРАФИЯ (художественно-декорационное оформление) 121.5 KB
  Вследствие того что образный строй сценографии основывается на зрительном восприятии в конкретном произведении он выражается через определенный материал обладающий параметрами пространства. Развитие простых видов искусства в которых доминирует отдельный вид пространственного вида материала является для сценографии своеобразным лабораторным экспериментом в результате которого проверяется одна из его граней. Дать представление о видах способах и средствах выразительности сценографии о технических возможностях сцены и сценического...
20316. Акимов Н.П. как режиссер и художник 202.5 KB
  Николай Акимов Дата рождения: 16 апреля 1901 Место рождения: город Харьков Дата смерти: 6 сентября 1968 67 лет Место смерти: Москва Гражданство: Российская империя СССР Жанр: театральный режиссёр театральный педагог Награды: Никола́й Па́влович Аки́мов 1901 1968 советский живописец и книжный график театральный художник режиссёр и педагог с 1935по 1949 и с 1956 до конца жизни возглавлявший Ленинградский театр Комедии Народный артист РСФСР Народный артист СССР1960[1].1 Театр им.2 Новый театр Ленинградский театр им.3 Ленинградский...
20317. Европейская культура средневековья: философия, архитектура, литература, театр, музыка 107.5 KB
  Содержание: Введение Особенности культуры западноевропейского Средневековья Аспекты интеллектуальной и художественной культуры западноевропейского Средневековья: Философия Литература Театр и драматургия Музыка Архитектура и строительство Изобразительное искусство Заключение Литература Введение Средние века это время которое находится посередине между Античностью и Новым Временем и по какойто невероятной причине не имеет своего собственного названия.222 14] Историческая ситуация средних веков не может быть както однозначно...