Lineární zobrazení a matice Euklidovská rovina Matematika I – 3b Geometrie v rovině Jan Slovák Masarykova univerzita, Fakulta informatiky 3. 10. 2012 Lineární zobrazení a matice Euklidovská rovina Obsah přednášky 1 Lineární zobrazení a matice 2 Euklidovská rovina Lineární zobrazení a matice Euklidovská rovina Přiřazení F, které respektuje operace sčítání a násobení s vektory a skaláry nazýváme lineární zobrazení (zobrazuje přímky na přímky nebo body): F(a · v + b · w) = a · F(v) + b · F(w) pro všechny a, b ∈ R, v, w ∈ R2. Vždy můžeme zapisovat taková zobrazení pomocí matic a jejich násobení, které definujeme takto: A = a b c d , v = x y A · v = a b c d · x y = ax + by cx + dy . Lineární zobrazení a matice Euklidovská rovina Podobně, místo vektoru v zprava násobíme jinou maticí B stejného rozměru jako je A. Prostě aplikujeme předchozí formule po jednotlivých sloupcích matice B a obrdržíme jako výsledek opět matice. Snadno ověříme tzv. asociativitu násobení: (A · B) · C = A · (B · C). Stejně snadno je vidět i distributivita A · (B + C) = A · B + A · C, neplatí však komutativita a existují „dělitelé nuly“. Např. 0 1 0 0 · 0 0 0 1 = 0 1 0 0 , 0 0 0 1 · 0 1 0 0 = 0 0 0 0 . Lineární zobrazení a matice Euklidovská rovina Zajímavé je podívat se, kdy existuje inverze. Poznáme to pomocí vztahu ad − bc = 0. Výrazu ad − bc = 0 říkáme determinant matice A a píšeme pro něj det A = ad − bc, případně det A = a b c d = ad − bc. Lineární zobrazení a matice Euklidovská rovina Jestliže k výsledku lineárního zobrazení ještě dovolíme přičíst pevný vektor T = (w, z), tj. naše zobrazení bude v = x y → A · v + T = ax + by + w cx + dy + z , máme popsána právě všechna tzv. afinní zobrazení roviny do sebe. Známými příklady jsou všechny afinní podobnosti. Lineární zobrazení pak odpovídají těm afinním zobrazením, které zachovávají pevný bod O. Jak tedy vypadají transformace souřadnic a jejich inverze? Lineární zobrazení a matice Euklidovská rovina V rovině máme definovánu velikost vektorů a vzdálenost bodů. Definujeme také pojem úhel vektorů. V pozadí je koncept skalární součin. Pro vektory v = (vx , vy ), w = (wx , wy ) vx wx + vy wy Pak v = v2 x + v2 y = v · v. Lineární zobrazení a matice Euklidovská rovina Úhel ϕ dvou vektorů v, w vyjadřujeme pomocí funkce cos ϕ, která je dána hodnotou reálné první souřadnice jednotkového vektoru, jehož úhel s vektorem (1, 0) je ϕ. Zjevně je pak druhá souřadnice takového vektoru dána reálnou hodnotou 0 ≤ sin ϕ ≤ 1 splňující (cos ϕ)2 + (sin ϕ)2 = 1. Obecně pak pro dva vektory v a w popisujeme jejich úhel pomocí souřadnic v = (vx , vy ), w = (wx , wy ) takto: cos ϕ = vx · wx + vy · wy v · w . Lineární zobrazení a matice Euklidovská rovina Příkladem lineárního zobrazení, které zachovává velikosti, je rotace o předem daný úhel ψ. Je dána formulí s maticí Rψ: v = x y → Rψ · v = cos ψ − sin ψ sin ψ cos ψ · x y . Aplikací na jednotkový vektor (1, 0) dostáváme skutečně právě očekávaný výsledek (cos ψ, sin ψ). Lineární zobrazení a matice Euklidovská rovina Rotaci kolem jiného bodu P = O + w, snadno napíšeme formulí s pomocí translací: x y = v → v − w → Rψ · (v − w) → Rψ · (v − w) + w = cos ψ(x − wx ) − sin ψ(y − wy ) + wx sin ψ(x − wx ) + cos ψ(y − wy ) + wy . Lineární zobrazení a matice Euklidovská rovina Dalším příkladem je tzv. zrcadlení vzhledem k přímce. Opět nám stačí popsat zrcadlení vzhledem k přímkám procházejícím počátkem O a ostatní se z nich odvodí pomocí translací. Hledáme matici Zψ zrcadlení vzhledem k přímce s jednotkovým směrovým vektorem v svírajícím úhel ψ s vektorem (1, 0). Např. Z0 = 1 0 0 −1 a obecně můžeme psát (otočíme do „nulové“ polohy, odzrcadlíme a vrátíme zpět) Zψ = Rψ · Z0 · R−ψ. Lineární zobrazení a matice Euklidovská rovina Díky asociativitě násobení matic spočteme: Rψ = cos 2ψ sin 2ψ sin 2ψ − cos 2ψ . Povšimněme si nyní Zψ · Z0 = cos 2ψ sin 2ψ sin 2ψ − cos 2ψ · 1 0 0 −1 = cos 2ψ − sin 2ψ sin 2ψ cos 2ψ . To lze zformulovat jako Theorem Otočení o úhel ψ obdržíme následným provedením dvou zrcadlení vzhledem ke směrům, které spolu svírají úhel 1 2 ψ. Tvrzení lze také odvodit ryze geometrickou úvahou. Pak náš výpočet dokazuje právě standardní formule pro goniometrické funkce dvojnásobného úhlu, které jsme po cestě použili. Lineární zobrazení a matice Euklidovská rovina Hlubší je následující rekapitulace předchozích úvah: Theorem Lineární zobrazení euklidovské roviny je složeno ze zrcadlení právě, když je dáno maticí R splňující R = a b c d , ab + cd = 0, a2 + c2 = b2 + d2 = 1. To nastane právě, když toto zobrazení zachovává velikosti. Otočením je přitom právě tehdy, když je determinant matice R roven jedné, což odpovídá sudému počtu zrcadlení. Při lichém počtu zdrcadlení je determinant roven −1. Lineární zobrazení a matice Euklidovská rovina Obsah trojúhelníka Závěrem našeho malého výletu do geometrie se zaměřme na pojem obsah. Trojúhelník je vymezen dvojicí vektorů v a w, které přiloženy do počátku O zadají zbylé dva vrcholy. Chtěli bychom tedy najít formuli (skalární funkci vol), která dvěma vektorům přiřadí číslo rovné obsahu vol ∆(v, w) takto definovaného trojúhelníku ∆(v, w). Ze zadání je vidět, že by mělo platit vol ∆(v + v , w) = vol ∆(v, w) + vol ∆(v , w) vol ∆(av, w) = a vol ∆(v, w) a přidejme požadavek vol ∆(v, w) = − vol ∆(w, v), který odpovídá představě, že opatříme plochu znaménkem podle toho, v jakém pořadí bereme vektory. Lineární zobrazení a matice Euklidovská rovina Pokud vektory v a w napíšeme do sloupců matice A, pak A = (v, w) → det A splňuje všechny tři naše požadavky. Kolik takových zobrazení ale může být? Každý vektor umíme vyjádřit pomocí dvou souřadných vektorů v = (1, 0) a w = (0, 1) a evidentně tedy každá možnost pro vol ∆ je jednoznačně určena už vyčíslením na této jediné dvojici argumentů (v, w). Jsou si tedy všechny možnosti rovny až na skalární násobek. Ten umíme určit požadavkem vol ∆((1, 0), (1, 0)) = 1 2 , tj. volíme orientaci a měřítko. Vidíme tedy, že determinant zadává plochu rovnoběžnostěnu určeného sloupci matice A (a plocha trojúhelníku je tedy poloviční). Lineární zobrazení a matice Euklidovská rovina Předchozí popis hodnot pro orientovaný objem nám dává do rukou elegantní nástroj pro určování viditelnosti orientovaných úseček. Orientovanou úsečkou rozumíme dva body v rovině R2 s určením pořadím. Můžeme si ji představovat jako šipku od prvého k druhému bodu. Taková orientovaná úsečka nám rozděluje rovinu na dvě poloroviny, říkejme jim „levou“ a „pravou“. Jestliže uvažujeme obvyklou orientaci „proti směru hodinových ručiček“ pro hranici mnohoúhelníku, pak pozorovatel nalevo od orientované úsečky (tj. uvnitř takového mnohoúhelníka) tuto vidí a naopak pozorovatel napravo ji nevidí. Má tedy smysl ptát se, jestli je orientovaná úsečka [A, B] v rovině viditelná z bodu C. Lineární zobrazení a matice Euklidovská rovina Spočtěme orientovanou plochu příslušného trojúhelníku zadaného vektory A − C a B − C. Pokud jsme s bodem C nalevo od úsečky, pak při naší orientaci bude vektor A − C dříve než ten druhý a proto výsledná plocha (tj. hodnota determinantu) bude kladná. To odpovídá situaci, kdy úsečku vidíme. Naopak, při opačné poloze bude výsledkem záporná hodnota determinantu a podle zjistíme, že úsečku nevidíme. Uvedený jednoduchý postup je často využíván pro testování polohy při standardních úlohách v 2D grafice.