====== Rovina ======
===== Vyjádření roviny =====
==== Parametrické vyjádření ====
=== Zápis ===
{{ planeparam.png?200|obr1: Rovina}}
* Vektorově: b = a + u t + v s
* Po složkách: b_1 = a_1 + u_1 t + v_1 s,...b_n = a_n + u_n t + v_n s
* kde:
* **a**, **b** jsou body ležící v rovině
* **u**, **v** jsou vektory ležící v rovině
* **t**, **s** jsou parametry
* **n** je dimenze prostoru, ve kterém je rovina popisována
=== Význam ===
* Bod **b** leží v rovině pokud vznikl přičtením libovolného **t**-násobku vektoru **u** a libovolného **s**-násobku vektoru **v** k jinému bodu **a**, ležícímu v téže rovině.
* Pro reprezentaci roviny je nutné uchovávat jeden bod roviny a dva její různé vektory, vycházející z tohoto bodu.
* Vektory **u** a **v** je dobré uchovávat v normalizovaném tvaru
==== Obecná rovnice (pouze v prostoru) ====
=== Zápis ===
{{ planegena.png?200|obr2: Obecná rovnice roviny}}
* Vektorově: dot(a, n) + d = 0
* Po složkách: a_1 n_1 + a_2 n_2 + a_3 n_3 + d = 0
* kde:
* **a** je bod ležící v rovině (tzn. vektor od počátku soustavy souřadnic k tomuto bodu)
* **n** je normálový vektor roviny
* **d** je vzdálenost roviny od počátku soustavy souřadnic
=== Význam ===
* Bod **a** leží v rovině pokud jeho [[skalarnisoucin|skalární součin]] s normálovým vektorem roviny **n** je po přičtení konstanty **d** roven nule
* Normálový vektor je dobré uchovávat v normalizovaném (jednotkovém) tvaru
=== Osvětlení ===
{{ planegenb.png?200|obr3: Bod neležící v rovině}}
* Podobné jako pro [[primka#Obecná rovnice (pouze v rovině)|obecnou rovnici přímky v rovině]]. Pokud je **n** v normalizovaném tvaru, je opět [[skalarnisoucin|skalární součin]] vektorů **a** a **n** [[skalarniprojekce|skalární projekcí]] **a** na **n**, jejímž výsledkem je délka ortogonálního průmětu vektoru **a** do **n**, tedy vzdálenost roviny od počátku. Konstantu **d** určíme dosazením bodu, který leží v rovině do obecné rovnice této roviny a vyjde opačná hodnota vzdálenosti roviny od počátku (viz **obr2**).
* Pokud není normálový vektor v normalizovaném tvaru, vztah platí stejně, přesvědčit se o tom můžeme stejným způsobem jako u [[primka#Obecná rovnice (pouze v rovině)|obecné rovnice přímky]]. Rozepíšeme [[skalarnisoucin|skalární součin]] pro **a** **n** jako dot(a, n) = delim{|}{delim{|}{n}{|}}{|} (delim{|}{delim{|}{a}{|}}{|} cos α) výraz v závorce je opět [[skalarniprojekce|skalární projekcí]] **a** na **n** a je násoben délkou vektoru **n**, ta je ale pro danou přímku konstantní => konstanta **c** bude také delim{|}{delim{|}{n}{|}}{|} násobkem hodnoty, které by se konstanta **c** rovnala při jednotkovém vektoru **n** => pokud dosadíme do rovnice bod, který na přímce leží, vyjde opět nula.
* Po dosazení bodu, který na dané přímce neleží, do rovnice této přímky, rovnost platit nebude (viz **obr3**).
===== Vzájemná poloha bodu a roviny - klasifikace =====
==== Bod ležící v rovině ====
* Bod z vektorového prostoru s dimenzí dim >= 3 leží v rovině, pokud po dosazení tohoto bodu do rovnice roviny nastane rovnost.
==== Bod ležící mimo rovinu ====
* Bod z vektorového prostoru s dimenzí dim >= 3 neleží v rovině, pokud po dosazení tohoto bodu do rovnice roviny nenastane rovnost.
===== Vzájemná poloha bodu a roviny - operace =====
==== Vzdálenost bodu od roviny ====
=== Parametrické vyjádření roviny ===
* Hledáme-li vzdálenost bodu **b** od roviny popsané bodem **a** a vektory **u**, **v**, postupujeme následovně:
- Za pomoci [[vektorovysoucin|vektorového součinu]] sestrojíme normálový vektor **n** k vektorům **u**, **v**
- Nalezený normálový vektor bude směrovým vektorem nové přímky, která bude procházet bodem **b**
- Nalezneme [[#Průsečík přímky a roviny|průsečík]] přímky a dané roviny
- Vzdáleností bude délka vektoru mezi nalezeným průsečíkem a bodem **b**
=== Obecná rovnice roviny (pouze v prostoru) ===
* Pro nalezení vzdálenosti **l** bodu **b** od roviny s normálovým vektorem **n**, použijeme vzorec: l = {b n + d}/{delim{|}{delim{|}n{|}}{|}}
* Výraz v čitateli představuje obecnou rovnici dané roviny, výraz ve jmenovateli je velikost jejího normálového vektoru, pokud je tedy normálový vektor už v normalizovaném tvaru, jmenovatel je roven jedné a nemusíme jej ve vzorci uvažovat.
* Z **obr2** je zřejmé že po dosazení bodu **b** do vzorce se odečte vzdálenost roviny od počátku od vzdálenosti ortogonálního průmětu bodu **b** do vektoru **n** od počátku a dostaneme tedy vzdálenost bodu **b** od dané roviny.
===== Vzájemná poloha přímky a roviny - klasifikace =====
==== Přímka protínající rovinu ====
* Přímka protíná rovinu, pokud s ní má právě jeden společný bod.
==== Přímka ležící v rovině ====
* Přímka leží v rovině pokud v této rovině leží alespoň dva její body <=> jeden bod přímky leží v rovině a směrový vektor přímky leží v rovině (je kolmý na normálový vektor roviny nebo je lineární kombinací obou směrových vektorů roviny)
==== Přímka rovnoběžná s rovinou ====
* Přímka **p** je rovnoběžná s rovinou **r**, pokud rovina obsahuje alespoň jednu přímku **p'**, která je s přímkou **p** rovnoběžná.
* Je-li přímka rovnoběžná s dvěma různoběžnými rovinami, je rovnoběžná i s jejich průsečnicí.
===== Vzájemná poloha přímky a roviny - operace =====
==== Průsečík přímky a roviny ====
{{ planelineintersect.png?200|obr4: Průsečík přímky a roviny}}
=== Parametrické vyjádření roviny ===
* Průsečík přímky p: x = a + t v a roviny r: x = b + s u + z w nalezneme tak, že všechny rovnice obou parametrických vyjádření položíme sobě rovny, dostaneme tak pro **n** rozměrný prostor (**n** >= 3) soustavu **n** rovnic o neznámých **t**, **s** a **z**. Po vyřešení soustavy zbyvá dosadit **t** do rovnic pro **p**, nebo **s** a **z** do rovnic pro **r** a získáme souřadnice průsečíku přímky **p** s rovinou **r**.
=== Obecná rovnice roviny (pouze v prostoru) ===
* Hledáme průsečík přímky p: x = a + t v a roviny r: dot(n, x) + d = 0
* Dosadíme všechny tři rovnice pro výpočet jednotlivých souřadnic bodu **x** přímky **p** za odpovídající souřadnice bodu **x** v rovnici roviny **r**
* Určíme hodnotu parametru t = -{{dot(n, a) + d}/{dot(n, v)}} a po jejím dosazení do rovnice přímky **p** dostaneme souřadnice průsečíku přímky **p** a roviny **r**.
* Poznámka: pokud je ve vztahu pro výpočet **t** jmenovatel dot(n,v) nulový, rovnice nemá řešení => průsečík neexistuje => rovina **r** a přímka **p** jsou rovnoběžné (směrový vektor přímky a normálový vektor roviny jsou na sebe kolmé).