1 00:00:00,289 --> 00:00:03,797 Jak si vytvořit vlastní proměnné a jak je používat, to jsme se už naučili. 2 00:00:03,797 --> 00:00:06,507 Nyní se podíváme na dvě speciální proměnné: 3 00:00:06,507 --> 00:00:10,572 Budou se jmenovat mouseX a mouseY. 4 00:00:10,572 --> 00:00:12,671 Tyto proměnné nemusíte určovat sami. 5 00:00:12,671 --> 00:00:14,356 Popravdě byste to dělat ani neměli. 6 00:00:14,356 --> 00:00:16,339 Tyto proměnné už totiž existují. 7 00:00:16,434 --> 00:00:19,833 Program totiž nastavuje hodnoty těchto proměnných sám. 8 00:00:19,998 --> 00:00:23,788 Zajišťuje, že hodnotou mouseX je vždy x-ová pozice vaší myši. 9 00:00:24,008 --> 00:00:27,324 A hodnotou mouseY je vždy y-ová pozice vaší myši. 10 00:00:27,554 --> 00:00:30,953 Díky tomu je opravdu snadné si naprogramovat něco interaktivního. 11 00:00:30,970 --> 00:00:33,408 A to na základě polohy myši uživatele. 12 00:00:33,408 --> 00:00:36,086 Podívejme se na elipsu, kterou tady mám. 13 00:00:36,122 --> 00:00:39,337 V tomto momentě je definována hodnotami 200, 200. 14 00:00:40,589 --> 00:00:44,436 V případě, že použiju mouseX a mouseY, speciální proměnné, 15 00:00:44,497 --> 00:00:48,379 můžu ji definovat hodnotami mouseX a mouseY. 16 00:00:49,249 --> 00:00:51,791 V případě, že nyní projedu myší po plátně, 17 00:00:51,791 --> 00:00:54,853 bude elipsa vykreslována na místě kurzoru. 18 00:00:55,423 --> 00:00:57,260 Kopíruje pohyb mé myši. 19 00:00:57,398 --> 00:00:58,255 To je dost dobrý! 20 00:00:58,255 --> 00:00:59,255 Uhodnete, co kreslím? 21 00:01:00,935 --> 00:01:03,355 V případě, že se chystáte použít mouseX a mouseY, 22 00:01:03,365 --> 00:01:06,655 musíte se ujistit, že je používáte uvnitř funkce "draw". 23 00:01:06,665 --> 00:01:08,280 Protože podívejte, co se stane, 24 00:01:08,280 --> 00:01:12,917 když tyto dva řádky kódu přesuneme mimo tuto funkci. 25 00:01:13,394 --> 00:01:14,394 Vidíte? 26 00:01:14,871 --> 00:01:19,206 Tento kód se přehraje pouze jednou. 27 00:01:19,206 --> 00:01:21,811 Elipsa se tedy nakreslí jenom jednou 28 00:01:21,811 --> 00:01:25,979 a to v poloze mé myši na samém začátku programu. 29 00:01:26,725 --> 00:01:30,337 Kvůli tomu musíme mít proměnné uvnitř funkce "draw". 30 00:01:30,337 --> 00:01:32,226 Protože funkce "draw" je taková funkce, 31 00:01:32,226 --> 00:01:36,184 která je přivolávaná opakovaně v průběhu celého programu. 32 00:01:36,189 --> 00:01:37,719 Čili v momentě, kdy ji přivoláme, 33 00:01:37,719 --> 00:01:40,616 se podívá na současnou hodnotu mouseX a mouseY 34 00:01:40,616 --> 00:01:43,053 a podle toho nakreslí elipsu. 35 00:01:43,173 --> 00:01:46,333 Když se nad tím zamyslíte, celý proces je celkem podobný animaci. 36 00:01:46,333 --> 00:01:50,147 Průběžně mění hodnoty, jenom jiným způsobem. 37 00:01:50,147 --> 00:01:52,374 Teď můžeme dělat hodně zajímavých věcí. 38 00:01:52,573 --> 00:01:55,735 Co kdybych místo hodnot mouseX a mouseY ponechala hodnotu mouseX 39 00:01:55,861 --> 00:02:02,663 a určila fixní hodnotu mouseY na 300? 40 00:02:02,999 --> 00:02:07,558 Jak můžete vidět, elipsa následuje pouze souřadnici x. 41 00:02:07,558 --> 00:02:10,429 Vůbec jí nezajímá y-ová souřadnice. 42 00:02:10,429 --> 00:02:17,319 Co kdybych teď vrátila původní hodnoty mouseX a mouseY, 43 00:02:17,319 --> 00:02:20,202 ale odstranila pozadí a zakomentovala jej? 44 00:02:20,547 --> 00:02:25,234 Teď tady mám tuhle podivnou kresbu. 45 00:02:25,234 --> 00:02:27,031 To je celkem zajímavé! 46 00:02:27,031 --> 00:02:30,470 Nebo bych proměnné mohla prohodit. 47 00:02:30,684 --> 00:02:32,623 Nejdřív vrátím pozadí. 48 00:02:33,143 --> 00:02:37,552 Čili prohodím proměnné mouseY a mouseX. 49 00:02:37,712 --> 00:02:39,052 A podívejme, co se stane. 50 00:02:39,062 --> 00:02:41,683 Nyní je to hodně, hodně zvláštní. 51 00:02:41,984 --> 00:02:45,446 Ovladače myši dělají opak toho, co bych od nich očekávala. 52 00:02:45,576 --> 00:02:47,931 To je ale v pořádku, můžete třeba udělat hru, 53 00:02:47,931 --> 00:02:54,770 ve které se pomocí přehozených ovladačů snažíte něco nakreslit. 54 00:02:54,770 --> 00:03:00,000 A to je vše k mouseX a mouseY.