WEBVTT 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. 00:00:03.797 --> 00:00:06.507 Nyní se podíváme na dvě speciální proměnné: 00:00:06.507 --> 00:00:10.572 Budou se jmenovat mouseX a mouseY. 00:00:10.572 --> 00:00:12.671 Tyto proměnné nemusíte určovat sami. 00:00:12.671 --> 00:00:14.356 Popravdě byste to dělat ani neměli. 00:00:14.356 --> 00:00:16.339 Tyto proměnné už totiž existují. 00:00:16.434 --> 00:00:19.833 Program totiž nastavuje hodnoty těchto proměnných sám. 00:00:19.998 --> 00:00:23.788 Zajišťuje, že hodnotou mouseX je vždy x-ová pozice vaší myši. 00:00:24.008 --> 00:00:27.324 A hodnotou mouseY je vždy y-ová pozice vaší myši. 00:00:27.554 --> 00:00:30.953 Díky tomu je opravdu snadné si naprogramovat něco interaktivního. 00:00:30.970 --> 00:00:33.408 A to na základě polohy myši uživatele. 00:00:33.408 --> 00:00:36.086 Podívejme se na elipsu, kterou tady mám. 00:00:36.122 --> 00:00:39.337 V tomto momentě je definována hodnotami 200, 200. 00:00:40.589 --> 00:00:44.436 V případě, že použiju mouseX a mouseY, speciální proměnné, 00:00:44.497 --> 00:00:48.379 můžu ji definovat hodnotami mouseX a mouseY. 00:00:49.249 --> 00:00:51.791 V případě, že nyní projedu myší po plátně, 00:00:51.791 --> 00:00:54.853 bude elipsa vykreslována na místě kurzoru. 00:00:55.423 --> 00:00:57.260 Kopíruje pohyb mé myši. 00:00:57.398 --> 00:00:58.255 To je dost dobrý! 00:00:58.255 --> 00:00:59.255 Uhodnete, co kreslím? 00:01:00.935 --> 00:01:03.355 V případě, že se chystáte použít mouseX a mouseY, 00:01:03.365 --> 00:01:06.655 musíte se ujistit, že je používáte uvnitř funkce "draw". 00:01:06.665 --> 00:01:08.280 Protože podívejte, co se stane, 00:01:08.280 --> 00:01:12.917 když tyto dva řádky kódu přesuneme mimo tuto funkci. 00:01:13.394 --> 00:01:14.394 Vidíte? 00:01:14.871 --> 00:01:19.206 Tento kód se přehraje pouze jednou. 00:01:19.206 --> 00:01:21.811 Elipsa se tedy nakreslí jenom jednou 00:01:21.811 --> 00:01:25.979 a to v poloze mé myši na samém začátku programu. 00:01:26.725 --> 00:01:30.337 Kvůli tomu musíme mít proměnné uvnitř funkce "draw". 00:01:30.337 --> 00:01:32.226 Protože funkce "draw" je taková funkce, 00:01:32.226 --> 00:01:36.184 která je přivolávaná opakovaně v průběhu celého programu. 00:01:36.189 --> 00:01:37.719 Čili v momentě, kdy ji přivoláme, 00:01:37.719 --> 00:01:40.616 se podívá na současnou hodnotu mouseX a mouseY 00:01:40.616 --> 00:01:43.053 a podle toho nakreslí elipsu. 00:01:43.173 --> 00:01:46.333 Když se nad tím zamyslíte, celý proces je celkem podobný animaci. 00:01:46.333 --> 00:01:50.147 Průběžně mění hodnoty, jenom jiným způsobem. 00:01:50.147 --> 00:01:52.374 Teď můžeme dělat hodně zajímavých věcí. 00:01:52.573 --> 00:01:55.735 Co kdybych místo hodnot mouseX a mouseY ponechala hodnotu mouseX 00:01:55.861 --> 00:02:02.663 a určila fixní hodnotu mouseY na 300? 00:02:02.999 --> 00:02:07.558 Jak můžete vidět, elipsa následuje pouze souřadnici x. 00:02:07.558 --> 00:02:10.429 Vůbec jí nezajímá y-ová souřadnice. 00:02:10.429 --> 00:02:17.319 Co kdybych teď vrátila původní hodnoty mouseX a mouseY, 00:02:17.319 --> 00:02:20.202 ale odstranila pozadí a zakomentovala jej? 00:02:20.547 --> 00:02:25.234 Teď tady mám tuhle podivnou kresbu. 00:02:25.234 --> 00:02:27.031 To je celkem zajímavé! 00:02:27.031 --> 00:02:30.470 Nebo bych proměnné mohla prohodit. 00:02:30.684 --> 00:02:32.623 Nejdřív vrátím pozadí. 00:02:33.143 --> 00:02:37.552 Čili prohodím proměnné mouseY a mouseX. 00:02:37.712 --> 00:02:39.052 A podívejme, co se stane. 00:02:39.062 --> 00:02:41.683 Nyní je to hodně, hodně zvláštní. 00:02:41.984 --> 00:02:45.446 Ovladače myši dělají opak toho, co bych od nich očekávala. 00:02:45.576 --> 00:02:47.931 To je ale v pořádku, můžete třeba udělat hru, 00:02:47.931 --> 00:02:54.770 ve které se pomocí přehozených ovladačů snažíte něco nakreslit. 00:02:54.770 --> 00:03:00.000 A to je vše k mouseX a mouseY.