Садржај
1. Програмирање у пајтону - Увод у Pygame
2. Координатни систем
3. Боје
4. Дужи
5. Квадрати, правоугаоници и елипсе
6. Кругови и многоуглови
7. Симетрично пресликане координате
8. Скалирање и центрирање, релативно задавање координата и димензија
9. Релативно задавање координата - утврђивање
10. Слике и текст
11. Цртање уз помоћ петљи
12. Цртање уз помоћ петљи 2
13. Гранање
14. Угнежђене петље
15. Цртање уз помоћ петљи - обнављање
16. Завршни квиз
7.2. Домаћи задатак¶

Циљ овог задатка је да направимо програм који црта кућицу. Приликом цртања кућице применићемо знање о израчунавању координата. Да би лакше дошли до крајњег решења, одговори на наредни низ питања која се сва односе на цртеж кућице:

Основу кућице чини жути правоугаоник ширине 180 и висине 160 пиксела. Ако је прозор у коме се црта димензије 300 пута 300 пиксела, ако је испод кућице остављена маргина од 20 пиксела и ако је правоугаоник хоризонтално центриран унутар прозора, кoje су координате горњег левог угла жутог правоугаоника (напиши их у облику уређеног пара)?
Изнад врха крова остављена је маргина од 20 пиксела. Које су координате тачке у којој се налази врх крова (напиши их у облику уређеног пара)?
Q-56: Кров је нацртан у облику испуњеног многоугла (тј. троугла). Чиме
се може допунити наредба за исцртавање pg.draw.polygon(prozor, pg.Color("red"), ???)
да
би се нацртао кров?
Леви и десни прозор су распоређени симетрично. Које су координате горњег
левог угла десног прозора (напиши их у облику уређеног пара ), ако је леви прозор исцртан наредбом
pg.draw.rect(prozor, pg.Color("skyblue"), (80, 140, 50, 50))
?
Q-57: Врата димензије 60 пута 80 пиксела су постављена симетрично у односу на средину кућице. Како се може израчунати положај горњег левог темена врата? Означи све поступке који су тачни.
Q-58: Која од наредних наредби исцртава хоризонталну линију на десном прозору:
Q-59: Желимо да нацртамо вертикалну црну дуж по средини левог прозора, који је нацртан као квадрат димензије 50, чије је горње лево теме у (80,140). Означи тврђења која исправно одређују координате те дужи:
На основу свега реченог можеш и да нацрташ кућицу.
import pygame as pg, random
import pygamebg
(sirina, visina) = (300, 300) # otvaramo prozor
prozor = pygamebg.open_window(sirina, visina, "Kucica")
# osnova kuće
# krov
# levi prozor
# desni prozor
# vrata
# prikazujemo prozor i čekamo da ga korisnik isključi
pygamebg.wait_loop()
(PyGame_house)