TransformLab posunout, otočit, složit

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

Tuhé transformace: co smí a co ne

Skoro všechno, co dělá stroj, jsou tuhé transformace: rameno se otáčí a posouvá, ale nic nenatahuje ani nezrcadlí. Je to natolik zvláštní podmnožina, že se vyplatí mít na ni test.

RᵀR = I   a zároveň   det R = +1dvě podmínky, obě nutné

První říká, že se zachovají délky a úhly. Druhá, že se nepřevrátila orientace. Obě jsou nutné a každá zvlášť propustí něco jiného:

  • Zkos má det = 1 a poruší první podmínku. Obsah zachová, tvar ne.
  • Zrcadlení splní první podmínku dokonale — zachová každou délku i úhel — a má det = −1. Kontrolovat jen ortogonalitu ho pustí dál, a zrcadlený rámec pak tiše převrátí každý vektorový součin, který se z něj počítá.

Drift, a proč se to musí měřit

Rotační matice vynásobená sama sebou tisíckrát už rotační matice úplně přesně není: zaokrouhlovací chyby se sčítají a ortogonalita se pomalu rozpadá. Testy v repu to změřily: po 5000 násobeních je odchylka od RᵀR = I asi 4·10⁻¹³ a determinant sedí na dvanáct míst. To je pro rovinné otáčení nic — ale je to měřená nula, ne předpokládaná, a u dlouho běžícího systému se stejný test vyplatí pouštět.

Když drift naroste, srovná se to Gram-Schmidtem (VectorLab, kapitola 9) nebo v prostoru přes kvaterniony (RotLab).

Determinant sám nestačí ani v jednom směru. Zkos má det = 1 a tuhý není; zrcadlení je ortogonální a tuhé není. Kalkulačka proto hlásí obojí zvlášť — ortogonalitu i determinant — a odmítne nabídnout levnou inverzi, dokud nesedí obě.

Vzorce v této kapitole

tuhá — kdy je transformace tuhá
RᵀR = I ∧ det R = +1 [—] kap. 5