Coordonate omogene

În matematică, coordonatele omogene, introduse de August Ferdinand Möbius, permit transformări afine prin reprezentarea lor sub forma unei matrici. Coordonatele omogene permit, de asemenea, efectuarea calculelor în spații proiective într-un mod similar cu cel în care coordonatele carteziene o fac în spațiul euclidian.

Coordonatele omogene ale unui punct din spațiul proiectiv de dimensiune n sunt de obicei scrise ca (x: y: z: ...: w), un vector linie de lungime n + 1, altele decât (0: 0: 0: ... : 0). Două seturi de coordonate, care sunt proporționale denotă același punct din spațiul proiectiv: pentru orice non-zero c scalar din domeniu care stă la baza K, (cx : cy : cz : ... : cw) reprezintă același punct. Prin urmare, acest sistem de coordonate poate fi explicat după cum urmează: în cazul în care spațiul proiectiv este construit dintr-un spațiu vectorial V de dimensiune n + 1, se introduc coordonatele în V, prin alegerea unei baze, și utilizarea acestora în P (V), clasele de echivalență proporționale non-zero vectori în V.

Produsul scalar în cazul coordonatelor omogene

Există două feluri de înmulțire scalară: una pentru puncte neproiectate și alta pentru puncte proiectate.

Se consideră un scalar a și un punct 3-D neproiectat (x : y : z). Atunci

a ( x : y : z ) = ( a x : a y : a z ) . {\displaystyle a(x:y:z)=(ax:ay:az).}

Se observă că

( x : y : z ) a ( x : y : z ) {\displaystyle (x:y:z)\equiv a(x:y:z)}

deși

( x : y : z ) a ( x : y : z ) . {\displaystyle (x:y:z)\neq a(x:y:z).}

Fie acum un scalar a și un punct 3-D proiectat [x : y : z]. Atunci

a [ x : y : z ] = [ a x : a y : z ] {\displaystyle a[x:y:z]=[ax:ay:z]}

astfel încât

[ x : y : z ] a [ x : y : z ] . {\displaystyle [x:y:z]\neq a[x:y:z].}

Se observă totuși un caz special - dacă a = z = 0 {\displaystyle a=z=0} , formula de mai sus dă [0:0:0] ca rezultat, care după cum se știe nu reprezintă niciun punct. Într-adevăr, 0 {\displaystyle 0\cdot \infty } e nedefinită, așa că nu este o imperfecțiune în definiție.

Combinații liniare de puncte descrise prin coordonate omogene

Fie o pereche de puncte A and B pe 3-spațiu proiectiv, a căror omogene coordonate sunt

A : [ X A : Y A : Z A : W A ] , {\displaystyle \mathbf {A} :[X_{A}:Y_{A}:Z_{A}:W_{A}],}
B : [ X B : Y B : Z B : W B ] . {\displaystyle \mathbf {B} :[X_{B}:Y_{B}:Z_{B}:W_{B}].}

Este de dorit a se găsi combinația liniară a A + b B {\displaystyle a\mathbf {A} +b\mathbf {B} } unde a și b sunt coeficienți ajustabili, cu condiția ca a , b 0 {\displaystyle a,b\neq 0} , sau (mai exact) ca a A , b B 0 {\displaystyle a\mathbf {A} ,b\mathbf {B} \neq 0} , pentru a evita punctele degenerate. Există trei cazuri de luat în considerare:

  • ambele puncte aparțin 3-spațiilor afine,
  • ambele puncte aparțin planului de la infinit,
  • un punct este afin și celălalt este la infinit.

Utilizarea în grafica digitală

Coordonatele omogene sunt omniprezente în grafica digitală deoarece rezolvă problema reprezentării translației și a proiecției ca operații matriciale.

Coordonatele omogene permit tuturor transformărilor afine să fie reprezentate prin operații matriciale. O translație in R 2 : ( x , y ) ( x + a , y + b ) {\displaystyle \mathbb {R} ^{2}:(x,y)\rightarrow (x+a,y+b)} poate fi reprezentată ca

( 1 0 a 0 1 b 0 0 1 ) ( x y 1 ) = ( x + a y + b 1 ) , {\displaystyle {\begin{pmatrix}1&0&a\\0&1&b\\0&0&1\end{pmatrix}}{\begin{pmatrix}x\\y\\1\end{pmatrix}}={\begin{pmatrix}x+a\\y+b\\1\end{pmatrix}},}

unde vectorii coloană sunt coordonatele omogene ale celor două puncte. Toate transformările liniare ca rotație și reflexie față de origine pot fi si ele reprezentate prin matrici de forma

( a b 0 c d 0 0 0 1 ) . {\displaystyle {\begin{pmatrix}a&b&0\\c&d&0\\0&0&1\end{pmatrix}}.}

Mai mult toate transformările proiective pot fi reprezentate prin alte matrici. Această reprezentare simplifică calculul în grafica digitală deoarece toate transformările necesare pot fi efectuate prin înmulțirea matricilor. Ca rezultat, o serie de transformări afine pot fi combinate simplu prin înmulțirea succesivă a matricilor. Aceasta se realizează în sisteme grafice în timp real ca OpenGL and DirectX care pot folosi plăci video moderne pentru efectuarea de operații cu coordonate omogene.

Vezi și

  • Coordonate carteziene
  • Coordonate cilindrice
  • Coordonate polare
  • Coordonate triliniare
Portal icon Portal Matematică