Садржај
1. Робот Карел - линијски програми и бројачка петља
1.1. Линијски програми
1.2. Бројачка петља for
1.3. Квиз
1.4. Вежбање
2. Робот Карел - условна петља и гранање
2.1. Условне петље
2.2. Гранање
2.3. Квиз
2.4. Вежбање
3. Робот Карел - задаци за вежбање
3.1. Робот Карел - задаци за вежбање
4. Корњача графика - линијски програми и петље
4.1. Наредбе корњаче
4.2. Линијски програми
4.3. Петље
4.4. Квиз
4.5. Вежбање
5. Корњача графика - гранање, угнежђене петље, функције, торке и листе
5.1. Гранање
5.2. Угнежђене петље
5.3. Функције
5.4. Торке и листе
5.5. Квиз
5.6. Вежбање
6. Корњача графика - задаци за вежбање
6.1. Корњача графика - задаци вежбање
7. Израчунавања - изрази, оператори, променљиве
7.1. Основне аритметичке операције и примена
7.2. Променљиве - места за смештање података
7.3. Тестирање и дебаговање програма
7.4. Квиз
7.5. Вежбање
7.6. Израчунавања - додатни задаци
8. Израчунавања - цели и реални бројеви, дељење
8.1. Цели и реални бројеви
8.2. Реално и целобројно дељење
8.3. Позициони запис бројева
8.4. Квиз
8.5. Вежбање
8.6. Цели и реални бројеви, дељење - додатни задaци
9. Израчунавања - коришћење и дефинисање функција
9.1. Коришћење функција
9.2. Дефинисање функција
9.3. Квиз
9.4. Вежбање
10. Израчунавања - задаци за вежбање
10.1. Израчунавања - задаци за вежбање
11. Гранање
11.1. Гранање
11.2. Комбинација више логичких услова
11.3. Конструкција if-elif-else
11.4. Квиз
11.5. Вежбање
11.6. Гранање - додатни задатак
12. Понављање - петље
12.1. Понављање - петља for
12.2. Понављање - условна петља while
12.3. Угњежђене петље
12.4. Квиз
12.5. Вежбање
12.6. Петље - додатни задaтак
13. Контрола тока - вежбање
13.1. Контрола тока - задаци вежбање
14. Структуре података
14.1. Торке и листе
14.2. Функције за рад са торкама и листама
14.3. Ниске
14.4. Скупови и речници
14.5. Квиз
14.6. Вежбање
15. Примена петље у структурама података
15.1. Примена петље у торци, листи и ниски
15.2. Примена петље у речнику
15.3. Квиз
15.4. Вежбање
16. Откривање и исправљање грешака
16.1. Откривање и исправљање грешака, коришћење дебагера
17. Програмирање 2Д графике - Увод у Pygame
17.1 Увод у Pygame
17.2 Основна структура Пајгејм програма
18. Увод у Pygame - Координатни систем и боје
18.1. Координатни систем
18.2. Боје
18.3. Квиз - координатни систем и боје
19. Цртање основних облика
19.1. Дужи
19.2. Правоугаоници и елипсе
19.3. Кругови и многоуглови
19.4. Домаћи задатак
19.5. Квиз - цртање облика
20. Напредне технике цртања
20.1. Симетрија
20.2. Центрирање облика
20.3. Релативно задавање координата и димензија
20.4. Домаћи задатак
20.5. Квиз - Цртање
21. Цртање основних облика - утврђивање
21.1. Релативно задавање координата - утврђивање
21.2. Домаћи задатак
21.3. Квиз - релативне координате и димензије
22. Цртање правилних облика помоћу петљи
22.1. Правилно распоређивање облика
22.2. Генератор случајних бројева
22.3. Распоређивање боја
22.4. Домаћи задатак
22.5. Квиз - петље
23. Гранање и угнежђене петље
23.1. Гранање
23.2. Угнежђене петље
23.3. Домаћи задатак
23.4. Квиз - угнежђене петље и гранање
24. Приказ слика и текста
24.1. Приказ слике и текста
24.2. Вежбање
24.3. Слике и текст - квиз
25. Анимације
25.1. Анимације
25.2. Анимације - примери
25.3. Како раде анимације
25.4. Квиз - анимације
26. Анимације - задаци
26.1. Анимације - задаци
26.2. Анимације - домаћи
27. Анимације кретања
27.1. Анимације кретања
27.2. Анимације кретања домаћи
27.3. Квиз - анимације кретања
28. Анимације сусрета објеката
28.1. Анимације - сусрети објеката на екрану
28.2. Домаћи - сусрети објеката на екрану
28.3. Квиз - сусрети објеката на екрану
29. Догађаји
29.1. Догађаји увод
29.2. Догађаји тастатуре
29.3. Догађаји миша
29.4. Квиз - догађаји
30. Комбиновање догађаја и анимација
30.1. Комбиновање догађаја и анимација
30.2. Домаћи задатак
30.3. Квиз - догађаји и анимације
31. Пајгејм квиз
31.1. Пајгејм - завршни квиз

25.1. Анимације

Вероватно већ знаш да цртани односно анимирани филм настаје тако што се на екрану брзо смењују сличице, при чему је свака следећа слика веома слична претходној (ликови на слици су само мало померени у односу на претходни положај).

Производња цртаног филма

Од почетка производње цртаног филма, цртачи слика које ће брзим смењивањем чинити цртани филм, цртали су их на папиру. Данас се сличице цртају на рачунару, обично тако што цртачи цртају такозване кључне слике а рачунар генерише мноштво међуслика које су међусобно сличне а налазе се између две кључне слике.

На пример, од наредних осам сличица лика у различитим положајима:

https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci1.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci2.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci3.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci4.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci5.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci6.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci7.png https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci8.png

настаје следећа анимација трчања:

https://petljamediastorage.blob.core.windows.net/root/Media/Default/Kursevi/OnlineNastava/kurs-prvi/liktrci.gif

Анимације подразумевају брзу промену слике на екрану (на пример, 20 пута у секунди), у правилним временским интервалима (на пример, на сваких 50 милисекунди). Свака тако кратко приказана слика назива се оквир или фрејм анимације (енг. frame).

У програмима са којима смо се до сада сусретали слика се није мењала током извршавања и цртање смо вршили само једном, пре главне петље програма у којој смо чекали да корисник искључи прозор (нпр. пре позива функције pygamebg.wait_loop из библиотеке PyGameBg).

У програмима са анимацијом цртање ћемо вршити унутар тела главне петље где се обично позива функција која садржи наредбе за цртање. (нпр. унутар функције pygamebg.frame_loop из библиотеке PyGameBg).

Програмирање анимација на сајту Петље

Анимације које следе разликоваће се по томе који подаци одређују оно што се на слици налази, коду који извршава цртање и коду који мења податке када се прелази на наредни фрејм.

Цртање и прелазак са тренутног на наредни фрејм издвојићемо у две помоћне функције које ти треба да напишеш.

Главну петљу програма која те две функције позива ћемо ми писати у „сивом делу кода“.

Твој задатак ће бити и да дефинишеш променљиве које описују оно што се налази на екрану током анимације. Обично су то координате објеката, тј. ликова који се током анимације померају, њихова брзина, али и неки други подаци који се мењају током анимације.

Прикажимо кроз примере технику која олакшава прављење анимација. Засновани су на библиотеци PyGameBg па ће „сиви кôд“ бити једноставан!

Посебна функција за цртање у програму без анимације

Нацртајмо три концентрична круга у главном програму.

Дефинишимо сада функцију crtaj коју ћемо позвати из главног програма (пребацићемо позив у сиви део кода).

Насумично одређивање боје позадине током анимације

Наредни програм приказује анимацију у којој насумично смењујемо боју позадине. Дефинисана је функцију crtaj која тражи боју а затим се позадина прозора боји том бојом. Боју одређује посебна функција nasumicna_boja. Користимо библиотеку PyGameBg па анимацију покрећемо позивом pygamebg.frame_loop(4, crtaj), што значи да се функција crtaj позива четири пута у секунди.

Претходна лекција
Следећа лекција
A- A+
Тема
Темa

Prijavi problem


Obeleži sve kategorije koje odgovaraju problemu

Još detalja - opišite nam problem


Uspešno ste prijavili problem!
Status problema i sve dodatne informacije možete pratiti klikom na link.
Nažalost nismo trenutno u mogućnosti da obradimo vaš zahtev.
Molimo vas da pokušate kasnije.