Shndërrimi i koordinatave afine të një pike gjatë ndryshimit të bazës. Shndërrimet afine duke përdorur koordinata homogjene

Problemi i transformimit të koordinataveështë si më poshtë: njohja e koordinatave të vektorëve të origjinës së re dhe të koordinatave të reja në sistemin e vjetër:

, , , (3)

shpreh koordinatat x, y pikë M në sistemin e vjetër të koordinatave, përmes koordinatave këtë pikë në sistemin e ri.

Nga formula (3) rezulton se

; ; . (4)

(sipas rregullit të trekëndëshit).

Sepse , , pastaj me përcaktimin e koordinatave të pikës , , d.m.th. ; .

Pastaj, duke përdorur formulat (4), marrim:

ku gjejmë:

(5)
;

Kështu shprehen koordinatat x, y pikë arbitrare M në sistemin e vjetër nëpërmjet koordinatave të tij në sistemin e ri .

Formulat (5) quhen formulat për transformimin e një sistemi koordinativ afine.

Koeficientët në - koordinatat e vektorit të ri në sistemin e vjetër; koeficientët , kur janë koordinatat e vektorit të ri në sistemin e vjetër, termat e lirë , janë koordinatat e origjinës së re në sistemin e vjetër:

Koordinatat e pikave M

në sistemin e ri

X
=
=
+
+
+
+

Tabela quhet matrica e tranzicionit nga baza , në bazë , .

Raste të veçanta të transformimit të afinës

Sistemet e koordinatave

1. Transferimi i fillimit.

Me këtë transformim , , A (Fig. 40).

Le të gjejmë koordinatat e vektorëve në sistemin e vjetër, d.m.th. , , Dhe:

Þ Þ , ;

Þ Þ , .

Atëherë formula (5) do të marrë formën:

RRETH "
Oriz. 40
(7)

Formulat (7) quhen formulat për zëvendësimin e vektorëve të koordinatave.

Koncepti i një këndi të drejtimit ndërmjet vektorëve.

Konvertimi i një sistemi koordinativ drejtkëndor

Koncepti i një këndi të drejtimit ndërmjet vektorëve paraqitet në një plan të orientuar.

Le të jenë vektorë jo zero të specifikuar në një rend të caktuar ( - vektori i parë, - vektori i dytë).

Nëse || , Kjo këndi i drejtimit ndërmjet vektorit dhe vektorit thirrur

magnitudë , nëse baza , - e drejtë;

magnitudë , nëse lihet baza.

Nëse , Kjo këndi i drejtimit ndërmjet tyre konsiderohet i barabartë nëse , pastaj (Fig. 42).


Konsideroni dy sisteme koordinative karteziane drejtkëndëshe dhe . Le M(x;y) V , V . Meqenëse një sistem koordinativ drejtkëndor është një rast i veçantë i një sistemi afin, ne mund të përdorim formulat (5) nga §12, por koeficientët , , , nuk mund të jetë më arbitrare.

Le të gjejmë koordinatat e vektorëve në sistemin e vjetër. Le të shqyrtojmë dy raste.

1) Bazat , dhe , janë të orientuara në mënyrë identike (Fig. 43).

A 1
A
NË 1
RRETH "
Oriz. 44
a
a

Trekëndëshat kënddrejtë Dhe e barabartë në hipotenuzë dhe kënd akut (
, ), prandaj, Dhe .

Nga ne gjejme:

Prandaj, .

Prandaj, . Atëherë formula (5) do të marrë formën:

Vini re se përcaktori i matricës së tranzicionit nga baza në bazë,

.

2) Bazat , dhe , janë të orientuara në të kundërt (Fig. 45).

RRETH
RRETH "
Oriz. 45

RRETH
RRETH "
NË 1
A
A 1
a
Oriz. 46
Le . Le t'i sjellim vektorët në një origjinë të përbashkët RRETH(Fig. 46).

Duke arsyetuar në mënyrë të ngjashme me rastin 1), marrim:

Prandaj, ; .

Atëherë formula (5) do të marrë formën:

Vini re se përcaktori i matricës së tranzicionit nga baza , në bazë , në këtë rast

Formulat (8) dhe (9) mund të kombinohen:

, Ku

.

Raste të veçanta të transformimit

Sistemi i koordinatave drejtkëndëshe

1. Transferimi i fillimit: , .

Koordinatat polare

Nëse përcaktohet një rregull me të cilin pozicioni i pikave në një plan mund të përcaktohet duke përdorur çifte të renditura numrash realë, atëherë ata thonë se një sistem koordinativ është specifikuar në plan. Përveç sistemit të koordinatave afinale, i cili u diskutua në §10, një sistem koordinativ polar në një plan përdoret shpesh në matematikë.

Sistemi i koordinatave polar futet në një plan të orientuar.

Çifti i përbërë nga një pikë RRETH dhe quhet vektori njësi sistemi i koordinatave polar dhe është caktuar ose . Drejtues drejt thirrur boshti polar, pika RRETH- shtyllë(Fig. 48).

Kështu, . Nëse M përkon me RRETH, Kjo . Për çdo pikë M rrezja e saj polare

Nëse M përkon me shtyllën RRETH, atëherë j është e papërcaktuar. Nga përkufizimi i këndit të drejtimit ndërmjet vektorëve (shih §13) rezulton se këndi polar

R
Oriz. 51
M
j
M 1

Le të nxjerrim formulat për kalimin nga koordinatat polare në koordinatat karteziane drejtkëndore dhe anasjelltas.

Le të jetë një sistem koordinativ polar në një plan të orientuar, , V . Le t'i bashkojmë sistemit polar një vektor njësi ortogonal me vektorin në mënyrë që baza të jetë e djathtë (Fig. 51).

, .

Le M(x;y) V . Pastaj; (Fig. 51).

Mora formulat për kalimin nga koordinatat polare në ato drejtkëndore:

Le të vendosim në katror të dy anët e këtyre barazive dhe të shtojmë:

, ku (rrënja merret me shenjën "+", sepse ). Þ Þ
;
.

a
RRETH
V
Oriz. 52
Komentoni . Kur zgjidhni probleme që përfshijnë kalimin nga koordinatat karteziane drejtkëndore në ato polare, nuk mjafton të gjesh vetëm ose thjesht , sepse Është e pamundur të përcaktohet pa mëdyshje këndi polar nga një funksion trigonometrik: në interval ka dy kënde me kosinus të njëjtë (dy kënde me sinus të njëjtë) (Fig. 52). Prandaj, ju mund të gjeni saktë këndin polar j vetëm nëse llogaritni njëkohësisht Dhe .

M 1 = (x 1, y 1), M = (x, y). Meqë pika M ndan segmentin M 0 M 1 në raport me λ, atëherë

; (1)

Me këtë transformim afinal, pikat M 0,M 1,M do të shkojnë në pikat M 0 ′,M 1 ′, M′ me të njëjtat koordinata si pikat M 0,M 1,M, por vetëm në O" Sistemi i koordinatave " 1 e" 2. Këto koordinata janë ende të lidhura me relacione (1), nga të cilat rrjedh se M′ e ndan segmentin M 0 ′M 1 ′ në lidhje me λ. Kjo vërteton teoremën.

3. Shprehje analitike e transformimeve afine (formula kalimtare).

Detyra: Si, duke ditur parametrat e një sistemi në lidhje me një tjetër, mund të përcaktohet pozicioni i një pike në të dy sistemet koordinative (d.m.th., si të gjenden formula për kalimin nga një sistem (i vjetër) në një sistem tjetër të ri.

Le të shqyrtojmë rastet e transformimit për sistemet e koordinatave afine.

1) Le të jepet sistemi R = (O, (e 1, e 2)) dhe le të jetë dhënë M = (x,y) R në të, O (0,0) R të jenë koordinatat e origjinës. e 1 (1,0) R, e 2 (0,1) R – koordinatat e vektorëve bazë.

2) Le të jepet sistemi i dytë i koordinatave R′=(O, (e 1 ′, e 2 ′)) dhe dihen parametrat që përcaktojnë bazën e re dhe origjinën e re përmes sistemit të vjetër të koordinatave, d.m.th. O'(x 0 ,y 0) R , e 1 '(C 11 ,C 12) R , e 2 '(C 12 ,C 22) R

Le të vendosim detyrën e gjetjes së koordinatave të pikës M në sistemin e ri të koordinatave (M(x′,y′) R ′). Le të shënojmë koordinatat e panjohura të pikës M(x′,y′).

Për tre pika O,O′,M: O′M=O′O +OM. О′М – vektori i rrezes së pikës M në sistemin e ri të koordinatave, që do të thotë se koordinatat e tij do të përkojnë me koordinatat e vektorit О′М në sistemin R′ (О′М↔М R′)=>О′М( x′,y′) R ′ => О′М=x′e 1 ′+y′e 2 ′ (1) ; О′О - vektori i rrezes së pikës О′ në sistemin R′, d.m.th. koordinatat e saj do të përkojnë me koordinatat e О'О↔ О' R => О'О(x 0 ,y 0) R => О'О= x 0 e 1 +y 0 e 2 (2) ; OM↔ M R => OM=xe 1 +ye 2 (3). Se. vektori О′М=ОМ −ОО′ pas zëvendësimit në këtë barazi vektoriale të zgjerimit (1), (2) dhe (3) do të ketë formën:

x′e 1 ′+y′e 2 ′= xe 1 +ye 2 −(x 0 e 1 +y 0 e 2) (4); sepse në kusht janë specifikuar parametrat që përcaktojnë koordinatat e vektorëve bazë të rinj përmes bazës së vjetër, marrim barazitë vektoriale të mëposhtme për vektorët bazë të rinj:

e 1 '(C 11,C 12) R => e 1 '= C 11 e 1 +C 21 e 2;

e 2 '(C 12,C 22) R => e 2 '= C 12 e 1 +C 22 e 2; (5)

Le të zëvendësojmë (5) në anën e majtë të (4) dhe të grupojmë në lidhje me vektorët bazë e 1 dhe e 2.

x′(C 11 e 1 +C 21 e 2)+y′(C 12 e 1 +C 22 e 2)- xe 1 -xe 2 +x 0 e 1 -ye 2 +x 0 e 1 +y 0 e 2 =0.
(x′C 11 + y′C 12 e 1 -x+x 0)e 1 + (x′C 21 +y′ C 22 -y+y 0)e 2 =0.

Sepse (e 1, e 2) formojnë një bazë, atëherë ky është një sistem linear i pavarur për të cilin barazia e fundit vektoriale plotësohet me kusht që të gjithë koeficientët në anën e majtë të jenë të barabartë me zero, d.m.th. duke pasur parasysh se

(6);

(6) - formulat për kalimin nga sistemi i vjetër R në sistemin e ri R′ për variablat x′ dhe y′.

Meqenëse kolonat e përcaktorit janë koordinatat e vektorëve bazë e 1 'dhe e 2', kjo përcaktor nuk zhduket kurrë, d.m.th. sistemi (6) është i zgjidhshëm në mënyrë unike në lidhje me ndryshoret x′ dhe y′, gjë që lejon gjithmonë gjetjen e një formule për kalimin e kundërt nga R′ në R.

Për formulat (6) ekzistojnë dy raste të veçanta

1. zëvendësimi i bazës;

2. transferimi i fillimit.

1. Sistemi R′ i marrë nga sistemi R duke zëvendësuar bazën duke ruajtur të njëjtën origjinë R=(O, (e 1 , e 2))→ R′=(O, (e 1 ′, e 2 ′)), t .e. O′(x 0 ,y 0)=O(0,0)=>x 0 =y 0 =0, atëherë formulat e zëvendësimit të bazës do të marrin formën:

(7)

2. Le të merret sistemi R′ nga R duke transferuar fillimin nga pika O në pikën O′ duke ruajtur të njëjtën bazë:
R=(O, (e 1, e 2))→ R′=(O′, (e 1, e 2))=> e 1 ′(1.0), e 2 ′(0.1),t .O. formulat do të marrin formën.

Anglisht: Wikipedia po e bën faqen më të sigurt. Po përdorni një shfletues të vjetër uebi që nuk do të jetë në gjendje të lidhet me Wikipedia në të ardhmen. Përditëso pajisjen tënde ose kontakto me administratorin e TI-së.

中文: The以下提供更长,更具技术性的更新(仅英语).

Spanjisht: Wikipedia está haciendo el sitio más seguro. Usted está shfrytëzuar dhe lundruar web viejo që nuk mund të përdoret për të krijuar një Wikipedia në të ardhmen. Actualice su dispositivo o kontakto me një informático su administrator. Más abajo hay una actualización más larga y más técnica en inglés.

ﺎﻠﻋﺮﺒﻳﺓ: ويكيبيديا تسعى لتأمين الموقع أكثر من ذي قبل. أنت تستخدم متصفح وب قديم لن يتمكن من الاتصال بموقع ويكيبيديا في المستقبل. يرجى تحديث جهازك أو الاتصال بغداري تقنية المعلومات الخاص بك. يوجد تحديث فني أطول ومغرق في التقنية باللغة الإنجليزية تاليا.

Français: Wikipédia va bientôt shton sigurinë e faqes së djalit. Vous utilisez actuellement un navigateur web ancien, qui ne pourra plus se connecter à Wikipédia lorsque ce sera fait. Merci de mettre à jour votre appareil ou de kontakter votre administrateur informatique à cette fin. Informacione suplementare plus teknika dhe në gjuhën angleze janë të disponueshme për ju.

日本語: ???す るか情報は以下に英語で提供しています。

gjermanisht: Wikipedia erhöht die Sicherheit der Webseite. Du benutzt einen alten Webbrowser, der në Zukunft nicht mehr auf Wikipedia zugreifen können wird. Bitte aktualisiere dein Gerät oder sprich deinen IT-Administrator an. Ausführlichere (und technisch detailliertere) Hinweise findest Du unten in englischer Sprache.

Italiano: Wikipedia është rendendo il sito più sicuro. Qëndroni në shfletuesin e ueb-it në një shkallë të lidhjes në Wikipedia në të ardhmen. Për favore, aggiorna il tuo dispositivo ose contatta il tuo amministratore informatico. Più in basso è disponibile un aggiornamento più dettagliato e technico në anglisht.

Magyar: Biztonságosabb më pak një Wikipedia. Një böngésző, amit használsz, nem lesz képes kapcsolódni a jövőben. Használj modernebb szoftvert vagy jelezd a problem a rendszergazdádnak. Alább olvashatod a részletesebb magyarázatot (angolul).

Svenska: Wikipedia gör sidan mer säker. Du använder en äldre webbläsare som inte kommer att kunna läsa Wikipedia dhe framtiden. Uppdatera din enhet ose kontakta me IT-administrator. Det finns en längre och mer teknisk förklaring på engelska längre ned.

हिन्दी: विकिपीडिया साइट को और अधिक सुरक्षित बना रहा है। आप एक पुराने वेब ब्राउज़र का उपयोग कर रहे हैं जो भविष्य में विकिपीडिया से कनेक्ट नहीं हो पाएगा। कृपया अपना डिवाइस अपडेट करें या अपने आईटी व्यवस्थापक से संपर्क करें। नीचे अंग्रेजी में एक लंबा और अधिक तकनीकी अद्यतन है।

Ne po heqim mbështetjen për versionet e pasigurta të protokollit TLS, veçanërisht TLSv1.0 dhe TLSv1.1, në të cilat mbështetet softueri i shfletuesit tuaj për t'u lidhur me sajtet tona. Kjo zakonisht shkaktohet nga shfletuesit e vjetëruar, ose telefonat inteligjentë të vjetër Android. Ose mund të jetë ndërhyrje nga softueri "Web Security" i korporatës ose personal, i cili në fakt ul sigurinë e lidhjes.

Duhet të përditësoni shfletuesin tuaj të internetit ose ta rregulloni ndryshe këtë problem për të hyrë në faqet tona. Ky mesazh do të qëndrojë deri më 1 janar 2020. Pas kësaj date, shfletuesi juaj nuk do të jetë në gjendje të krijojë një lidhje me serverët tanë.

Në koordinatat homogjene, një pikë shkruhet si për çdo faktor shkallë. Për më tepër, nëse një pike i jepet përfaqësimi i saj në koordinata homogjene, atëherë koordinatat e saj dydimensionale karteziane mund të gjenden si dhe .

Kuptimi gjeometrik i koordinatave homogjene është si më poshtë (Fig. 6). pikë arbitrare në një vijë

Oriz. 6. Interpretimi gjeometrik i koordinatave homogjene

Kështu, krijohet një korrespodencë një-për-një ndërmjet pikës prodhuese me koordinatat (x, y) dhe grupit të trefishave të numrave të formës (W×x, W×y, W), W≠0, e cila lejon ne të konsiderojmë numrat W×x, W×y, W koordinatat e reja të kësaj pike. Kështu, koordinatat homogjene mund të përfaqësohen si një ngulitje e një plani dydimensional të shkallëzuar nga një faktor W në rrafshin z = W (këtu z = 1) në hapësirën tredimensionale.

Përdorimi i koordinatave homogjene rezulton të jetë i përshtatshëm kur zgjidhen edhe problemet më të thjeshta.

Nëse pajisja e ekranit funksionon vetëm me numra të plotë (ose nëse është e nevojshme të punohet vetëm me numra të plotë), atëherë për një vlerë arbitrare të W (për shembull, W=1) një pikë me koordinata uniforme (0.5; 0.1; 2.5) nuk mund të jetë perfaqesuar . Megjithatë, me një zgjedhje të arsyeshme të W, është e mundur të sigurohet që koordinatat e kësaj pike të jenë numra të plotë. Në veçanti, me W=10 për shembullin në shqyrtim kemi (5; 1; 25).

Një rast tjetër. Për të parandaluar që rezultatet e transformimit të çojnë në tejmbushje aritmetike, për një pikë me koordinata (80000; 40000; 1000), mund të merrni, për shembull, W=0.001. Si rezultat, marrim (80; 40; 1).

Sidoqoftë, aplikimi kryesor i koordinatave homogjene janë shndërrimet gjeometrike, pasi me ndihmën e trefishave të koordinatave homogjene dhe matricave të rendit të tretë, mund të përshkruhet çdo transformim afinik në rrafsh. Në mënyrë të ngjashme, duke përdorur katërfishat e koordinatave homogjene dhe matricat e rendit të katërt, mund të përshkruani çdo transformim në hapësirën tredimensionale.

Siç dihet, transformimet e përkthimit, shkallëzimit dhe rrotullimit në formën e matricës shkruhen si

P' = P × S;

Përkthimi zbatohet veçmas (duke përdorur mbledhjen) nga shkallëzimi dhe rrotullimi (duke përdorur shumëzimin). Nëse i shprehim pikat në koordinata homogjene, atëherë të tre shndërrimet mund të realizohen duke përdorur shumëzimet. Këtu do të shikojmë transformimet 2D.

Ekuacionet e transportit shkruhen në formën e një matrice transformimi të koordinatave homogjene si më poshtë:

P' = P × T (dx, dy),

.

Ndonjëherë shprehje të tilla shkruhen si më poshtë:

Konsideroni, për shembull, përkthimin me dy pika. Le të jetë e nevojshme të zhvendoset pika P në pikën P në një distancë (dx1, dy1), dhe pastaj në P'' në një distancë (dx2, dу2). Transferimi total duhet të jetë i barabartë me distancën (dх1+d2, dу1+dу2). Le t'i shkruajmë të dhënat në formë

P’ = P × T (dx1, dy1);

P'' = P' × T (dx2, dy2).

Duke zëvendësuar formulën e parë në të dytën, marrim

P'' = P × (T (dx1, dy1) × T (dx2, dy2)).

Produkti i matricës T (dx1, dy1) ∙ T (dx2, dy2) është

Kështu, transferimi që rezulton është (dx1+dx2, dy1+dy2), d.m.th. mbartjet e njëpasnjëshme janë shtuese.

Ekuacionet e shkallëzimit në formë matrice duke përdorur koordinata homogjene shkruhen si

,

.

P’ = P’ × S (Sx, Sy).

Produkti i matricës S(Sx1, Sy1) × S(Sx2, Sy2) është

Kështu, shkallëzimet e njëpasnjëshme janë shumëfishuese.

Së fundi, ekuacioni i rrotullimit (në një sistem me dorën e djathtë) mund të përfaqësohet si

.

Rrotullimet e njëpasnjëshme janë shtesë.

Përbërja e transformimeve 2D duke përdorur koordinata homogjene. Produkti i matricës quhet në raste të ndryshme bashkim, lidhje, bashkim Dhe përbërjen. Ne do të përdorim të fundit nga termat e listuar.

Konsideroni, për shembull, rrotullimin e një objekti në lidhje me një pikë arbitrare P1. Meqenëse ne dimë vetëm si të rrotullohemi rreth origjinës, ne e ndajmë problemin origjinal në tre nënprobleme:

Përkthimi, në të cilin pika P1 është zhvendosur në origjinë;

Kthesë;

Një përkthim në të cilin një pikë nga origjina kthehet në pozicionin e saj origjinal P1.

Sekuenca e këtyre transformimeve është paraqitur në Fig. 7.1.

Oriz. 7.1. Rrotulloni një objekt rreth një pike arbitrare

Transformimi që rezulton duket si

Duke përdorur një qasje të ngjashme, ju mund të shkallëzoni një objekt në lidhje me një pikë arbitrare P1: zhvendoseni P1 në origjinë, shkallëzoni atë, zhvendoseni përsëri në pikën P1. Transformimi që rezulton në këtë rast do të duket si

Le të shqyrtojmë një transformim më kompleks. Le të supozojmë se duhet të shkallëzojmë, rrotullojmë dhe pozicionojmë një objekt në vendndodhjen e dëshiruar (shtëpia në Fig. 7.2), ku qendra e rrotullimit dhe shkallëzimit është pika P1.

Oriz. 7.2. Shembull i sekuencës së konvertimit

Sekuenca e transformimeve përbëhet nga lëvizja e pikës P1 në origjinë, shkallëzimi dhe rrotullimi, dhe më pas lëvizja nga origjina në një pozicion të ri P2. Struktura e të dhënave të programit të aplikacionit që përmban këtë transformim mund të përmbajë faktorin(ët) e shkallës, këndin e rrotullimit dhe sasitë e përkthimit, ose matrica e transformimit që rezulton mund të shkruhet:

T (-x1, -y1) × S (Sx, Sy) × R (A) × T (x2, y2).

Në përgjithësi, shumëzimi i matricës është jokomutativ. Nëse M1 dhe M2 përfaqësojnë përkthim elementar, shkallëzim ose rrotullim, komutativiteti vlen në rastet e veçanta vijuese:

M1 M2
Përkthe shkallëzimin Rrotullimi i shkallëzimit (në Sx=Sy) Përkthe Zoom Rotate Rotate

Përbërja e formës më të përgjithshme, e përbërë nga veprimet R, S dhe T, ka matricën

Pjesa e saj e sipërme 2 × 2 është matrica e kombinuar e rrotullimit dhe shkallëzimit, ndërsa tx dhe ty përshkruajnë përkthimin neto. Për të llogaritur P∙M si prodhim i një vektori dhe një matrice 3 × 3, kërkohen 9 operacione shumëzimi dhe 6 operacione mbledhjeje. Struktura e kolonës së fundit të matricës së përgjithësuar na lejon të thjeshtojmë veprimet aktuale të kryera.

Së pari, le të përcaktojmë se çfarë janë transformimet? Le të themi se kemi një model (për thjeshtësi, le të jetë një trekëndësh). Dhe tre hapësira koordinative: hapësira e objektit (në të cilën përshkruhet ky trekëndësh), hapësira botërore dhe hapësira e kamerës. Pra, një transformim është një shprehje e koordinatave të një objekti të vendosur në një sistem koordinativ (objekt), duke përdorur koordinatat e një sistemi tjetër koordinativ (së pari të botës, dhe më pas të dhomës).

Siç kam shkruar më parë, përdorimi i hapësirave të ndryshme koordinative e bën më të lehtë krijimin e një bote virtuale. Objektet krijohen në hapësirën e objektit dhe çdo objekt ka hapësirën e vet të koordinatave. Hapësira botërore lidh të gjitha objektet e botës virtuale dhe ju lejon të bëni gjëra shumë të vështira shumë të thjeshta (për shembull, objektet në lëvizje). Pasi të krijohet skena dhe të gjitha objektet të zhvendosen, koordinatat e botës shndërrohen në hapësirën e koordinatave të kamerës. Ne do të përdorim vetëm një aparat fotografik, por në situata të jetës reale është e mundur të krijohen disa. Disa kamera, për shembull, u përdorën në lojën e shkëlqyer Earth 2150: Escape from the blu planet.

Pra, për çfarë po flas: transformimet janë të nevojshme për të përdorur hapësira të shumta koordinative.

Së pari, le të kujtojmë diçka për vektorët. Figura e mëposhtme do të na ndihmojë për këtë:

Çfarë shohim këtu: hapësira e koordinatave botërore e formuar nga boshtet x, y, z. Vektorët njësi i, j, k quhen vektorë njësi ose vektorë bazë të hapësirës së koordinatave botërore. Duke përdorur shumën e këtyre vektorëve, mund të merrni çdo vektor në hapësirën e koordinatave botërore.

v- një vektor që lidh origjinën e koordinatave të botës dhe origjinën e koordinatave të objektit. Gjatësia e vektorit v është e barabartë me distancën midis origjinës së koordinatave botërore dhe origjinës së koordinatave të objektit. Merrni parasysh formën vektoriale v=(5,2,5):

v= x* i+ y* j+ z* k = 5*i + 2*j + 5*k

Siç shkrova më lart, me ndihmën e vektorëve bazë mund të përfaqësoni çdo pikë (vektor) të një hapësire të caktuar, gjë që tregon ky ekuacion.

Vektorët fq,q,r- vektorët bazë të hapësirës së objektit. Ju lutemi vini re se i,j,k nuk do të jetë domosdoshmërisht e barabartë fq,q,r.

Në këtë figurë, kam hequr një numër detajesh: në hapësirën e koordinatave të objektit, janë specifikuar tre pika që formojnë një trekëndësh. Përveç kësaj, unë nuk tregova kamerën, e cila drejtohet drejt trekëndëshit.

Transformimet e koordinatave lineare duke përdorur matrica

Së pari, le të shohim vektorët njësi i,j,k, të cilat në drejtim përkojnë me boshtet koordinative të hapësirës botërore dhe quhen vektorë njësi ose vektorë bazë të hapësirës botërore.

Le t'i shkruajmë këta vektorë në formë koordinative si matrica:

i= [i x i y i z] = [1 0 0] j= [ j x j y j z ] = [ 0 1 0 ] k= [ k x k y k z ] = [ 0 0 0 ]

Këtu vektorët përfaqësohen me matrica 1x3 (matrica rreshtash).

Ne mund të shkruajmë këta vektorë bazë duke përdorur një matricë:

Dhe madje, ajo që është shumë më e rëndësishme, ne mund t'i shkruajmë këta vektorë si kjo:

Siç mund ta shihni, rezultati është një matricë njësi me madhësi 3x3 ose 4x4.

Do të duket, çfarë nuk shkon me këtë? Thjesht mendoni, është e mundur të shkruani disa vektorë bazë të trashë të hapësirës në një matricë. Por jo, nuk do të "mendoni"!!! Këtu fshihet një nga sekretet më të tmerrshme të programimit 3D.

Siç shkrova më lart, çdo pikë që është e pranishme në botën virtuale mund të shkruhet në formë vektoriale:

v= x* i+ y* j+ z* k

Ku v- pika në hapësirë, x,y,z - koordinatat e pikës v, A i,j,k- vektorët bazë të hapësirës. Vini re se këtu po flasim për një pikë, por po shohim një vektor. Shpresoj të mbani mend se një vektor dhe një pikë janë në thelb e njëjta gjë.

Formula e mësipërme quhet forma vektoriale e një vektori. Ekziston një emër tjetër - një kombinim linear i vektorëve. Kjo është e vërtetë, meqë ra fjala.

Tani le të shohim përsëri vektorin v. Le ta shkruajmë në një matricë rresht: v = [ 5 2 5 ]

Vini re se gjatësia e vektorit vështë distanca nga origjina e hapësirës koordinative botërore deri në origjinën e hapësirës koordinative të objektit.

Le të përpiqemi ta shumëzojmë këtë vektor me një matricë në të cilën janë shkruar vektorët bazë të hapësirës botërore (shpresoj të mbani mend formulën e shumëzimit të matricës):

Si rezultat, marrim ekuacionin e mëposhtëm:

v M = [ (xi x + yj x + zk x) (xi y + yj y + zk y) (xi z +yj z + zk z) ]

Ne kemi një vektor. Ato. Rezultati i shumëzimit të një vektori me një matricë është një vektor. Në këtë rast, vektori nuk ka ndryshuar. Por nëse elementët e matricës nuk janë njësh (në diagonalen kryesore) dhe zero (të gjithë elementët e tjerë), por disa numra të tjerë, atëherë vektori do të ndryshojë. Prandaj, mund të themi se matrica M kryen një transformim të hapësirave koordinative. Konsideroni formulën e përgjithshme:

a, b janë vektorë, M është matrica e transformimit të hapësirave koordinative. Formula mund të lexohet si më poshtë: "Matrica M e shndërron pikën a në pikën b".

Për qartësi, le të shohim një shembull. Duhet të konvertojmë koordinatat nga hapësira e objektit (p,q) në hapësirën botërore (i,j):

i,j- vektorët bazë të hapësirës botërore, fq,q- vektorët bazë të hapësirës së objektit. Në foto mund të shihni se hapësira e koordinatave të objektit rrotullohet me -45 gradë rreth boshtit z (nuk është e dukshme në figurë). Përveç kësaj, vektorët q,fq 1.5 herë më shumë vektorë i,j, që do të thotë se objektet e përcaktuara në hapësirën e objektit do të duken një herë e gjysmë më të vogla në hapësirën botërore.

Për të vizualizuar se si modeli i hapësirës së objektit do të duket pas transformimit, mund të shtoni një kornizë për vektorët i,j:

Ju mund të vizatoni të njëjtën kornizë për fq,q, por nuk e ngatërrova vizatimin.

Tani, le të themi se kemi vizatuar një trekëndësh në hapësirën e objektit (Fig. a). Në hapësirën botërore, ky trekëndësh do të rrotullohet me 45 gradë dhe do të reduktohet me një të tretën (Fig. b):

Tani le të mbledhim të gjithë elementët e enigmës: siç e dimë, transformimi mund të bëhet duke përdorur një matricë. Rreshtat e matricave janë vektorët bazë. Koordinatat e vektorëve bazë të hapësirës së koordinatave botërore në hapësirën e objektit janë si më poshtë:

i = [ 0.473 0.473 ] j = [ -0.473 0.473 ]

Si i zbuluam koordinatat? Së pari, ne e dimë se hapësirat koordinative rrotullohen në lidhje me njëra-tjetrën me 45 gradë. Së dyti, vektorët bazë të hapësirës së objektit janë 1.5 herë më të gjatë se vektorët e bazës së hapësirës botërore. Duke e ditur këtë, ne llogaritëm lehtësisht koordinatat e vektorëve i,j.

Si rezultat, marrim matricën e mëposhtme të transformimit (në këtë rast, rrotullim ose rrotullim):

Ose në hapësirën tredimensionale:

Të gjitha vlerat janë të përafërta.

Kjo është një matricë për transformimin e koordinatave nga hapësira e objektit në hapësirën inerciale (ju kujtoj se vektorët bazë të hapësirës inerciale përkojnë me vektorët bazë të hapësirës botërore). Për të kthyer një trekëndësh nga hapësira e objektit në hapësirë ​​inerciale, duhet të shumëzoni të gjitha pikat (vektorët) e trekëndëshit me matricën e transformimit.

Në shembullin e fundit, kemi hasur në dy transformime: rrotullim dhe shkallëzim. Të dy këto transformime janë lineare.

Tani që kemi parë shembuj të transformimeve lineare, mund të njihemi me përkufizimin:

Transformimet lineare janë transformime koordinative që nuk shtrembërojnë hapësirat. Ato. të gjitha vijat paralele mbeten paralele (gjithsesi ka një përjashtim). Ose thjesht: me transformime lineare, një trekëndësh nuk do të kthehet kurrë në një rreth ose një katror, ​​por do të mbetet gjithmonë një trekëndësh.

Tani që kuptojmë përafërsisht se çfarë janë transformimet lineare, le të shohim formulat specifike:

Shkalla

k 1 ,k 2 ,k 3 - faktorët e shkallëzimit. Nëse k 1, objektet rriten.

Rrotullimi

Rrotullimi rreth boshtit x:

Rrotullimi rreth boshtit y:

Rrotullimi rreth boshtit z:

Nga rruga, është kjo matricë (e rrotullimit rreth boshtit z) që kemi përdorur më sipër.

Rrotullimi mund të jetë jo vetëm rreth boshteve që formojnë hapësirën e koordinatave, por edhe rreth vijave të drejta arbitrare. Formula për rrotullimin rreth një vije të drejtë arbitrare është mjaft komplekse, ne nuk jemi ende gati ta konsiderojmë atë.

Gjëja më e rëndësishme që duhet të mbani mend nga sa më sipër është kjo: rreshtat e matricës së transformimit përmbajnë vektorët bazë të hapësirës së re të koordinatave, të shprehura në terma të koordinatave të hapësirës së vjetër të koordinatave. .

Nëse e kuptoni këtë gjë të thjeshtë (që matrica përmban vektorët bazë të hapësirës së re), atëherë duke parë matricën e transformimit, mund të shihni lehtësisht hapësirën e re të koordinatave.

Dhe gjëja e fundit:
Transformimet lineare nuk mund të lëvizin objektet. Ato. objektet mund të zmadhohen/zvogëlohen, mund të rrotullohen, por do të mbeten të palëvizshme.

Transformimet afine

Transformimet afine janë shndërrime lineare me përkthim. Duke përdorur transformimet afinale ju mund të lëvizni objekte.

Formula është shumë e thjeshtë:

A = bM + v;

Ku b është pika e fillimit, M është matrica e transformimit linear, a është pika e transformimit dhe v është vektori që lidh dy hapësirat. Ose me fjalë të tjera, është një vektor, gjatësia e të cilit është e barabartë me distancën midis dy hapësirave koordinative.

Në figurën në fillim të mësimit nevojitet transformimi afin: së pari një transformim linear nga hapësira e objektit në hapësirën inerciale dhe më pas transferimi i të gjitha pikave të hapësirës së objektit në hapësirën botërore duke përdorur vektorin v.

Për të thjeshtuar llogaritjet në programimin e grafikës 3D, përdoren vektorët 4D, matricat 4x4 dhe të ashtuquajturat koordinata homogjene. Dimensioni i katërt nuk luan ndonjë rol, ai është futur vetëm për të thjeshtuar llogaritjet.

Një vektor katërdimensional, siç mund ta keni marrë me mend, përdor katër komponentë: x, y, z dhe w. Komponenti i katërt i vektorit quhet koordinata homogjene.

Është shumë e vështirë të paraqesësh një koordinatë homogjene gjeometrikisht. Prandaj, do të shqyrtojmë një hapësirë ​​homogjene tredimensionale me koordinata (x,y,w). Le të imagjinojmë se një plan dydimensional është përcaktuar në pikën w=1. Prandaj, një pikë dy-dimensionale përfaqësohet në një hapësirë ​​homogjene nga koordinatat e mëposhtme (x,y,1). Të gjitha pikat në hapësirë ​​që nuk janë në rrafsh (ato janë në rrafshe ku w != 1) mund të llogariten duke projektuar në një plan dydimensional. Për ta bërë këtë, ju duhet të ndani të gjithë përbërësit e kësaj pike në një homogjene. Ato. nëse w!=1, në rrafshin “fizik” (ku punojmë dhe ku w=1) koordinatat e pikës do të jenë si më poshtë: (x/w,y/w,w/w) ose (x/w ,y/w ,1). Shikoni foton:

Koordinatat e vektorëve janë si më poshtë:

V 1 = [ 3 3 3 ] v 2 = [ 3 1 0 ] v 3 = [ 3 -2 -2 ]

Këta vektorë projektohen në planin "fizik" (w=1) si më poshtë:

V 1 = [ 1 1 1 ] v 3 = [ -1,5 1 1 ]

Figura tregon tre vektorë. Ju lutemi vini re se kur një pikë shtrihet në rrafshin w=0, atëherë kjo pikë nuk mund të projektohet në planin fizik (vektori v 2).

Për çdo pikë në planin fizik, ka një numër të pafund pikash në hapësirën homogjene.

Në hapësirën katërdimensionale gjithçka është saktësisht e njëjtë. Ne punojmë në hapësirën fizike ku w = 1: (x,y,z,1). Nëse, si rezultat i llogaritjeve, w != 1, atëherë duhet të ndani të gjitha koordinatat e pikës në një homogjene: (x/w,y/w,z/w,w/w) ose (x/ w,y/w,z/w,1). Ekziston edhe një rast i veçantë kur w = 0. Këtë do ta shohim më vonë.

Tani le të kalojmë në praktikë: pse dreqin na duhet një koordinatë homogjene?

Siç kemi zbuluar tashmë, një matricë 3x3 përfaqëson një transformim linear, d.m.th. nuk përmban transferim (lëvizje). Një vektor i veçantë përdoret për transferim (dhe ky është një transformim afin):

V = aM + b

Ato. ne i shumëzojmë të gjitha pikat (vektorët) e objektit me matricën e transformimit M për të shkuar në sistemin koordinativ inercial (vektorët bazë të të cilit përkojnë me vektorët bazë të sistemit të koordinatave botërore), dhe më pas arrijmë në hapësirën botërore duke përdorur vektorin b . Më lejoni t'ju kujtoj se vektori b lidh fillimin e hapësirës së objektit dhe fillimin e hapësirës botërore.

Pra, duke përdorur katër dimensione, ju mund të grumbulloni si transformimet lineare (rotacioni, shkallëzimi) ashtu edhe përkthimi në një matricë.

Le të imagjinojmë që përbërësi i katërt është gjithmonë i barabartë me një (edhe pse tashmë kemi zbuluar se kjo nuk është kështu). Tani transformimi linear mund të përfaqësohet duke përdorur një matricë 4x4:

Le të shohim formulën për shumëzimin e vektorëve me një matricë transformimi në hapësirën katër-dimensionale:

V x = (xi x + yj x + zk x + w*0) v y = (xi y + yj y + zk y + w*0) v z = (xi z + yj z + zk z + w*0) v w = (x*0 + y*0 + z*0 + w*1) Siç mund ta shohim, përbërësit e vektorit të transformuar duke përdorur një matricë 4x4 janë të barabartë me komponentët e vektorit të transformuar duke përdorur një matricë 3x3. Komponenti i katërt, siç ramë dakord, do të jetë gjithmonë i barabartë me një, kështu që thjesht mund të hidhet poshtë. Prandaj, mund të themi se transformimet e kryera nga matricat me madhësi 3x3 dhe 3x4 janë ekuivalente.

Tani le të shohim matricën e transferimit:

Shumëzoni çdo vektor nga hapësira e objektit (shih figurën në fillim të mësimit) me këtë matricë dhe mund ta shprehni këtë vektor në hapësirën e koordinatave botërore (kjo është nëse vektorët bazë të hapësirave të objektit dhe botës janë të barabartë).

Ju lutemi vini re se ky është gjithashtu një transformim linear, vetëm në hapësirën katër-dimensionale.

Duke përdorur produktin e matricës, ne mund të kombinojmë matricën e rrotullimit dhe matricën e përkthimit:

Kjo matricë e fundit është pikërisht ajo që na duhej që në fillim. Ju duhet të kuptoni mirë se çfarë nënkuptojnë saktësisht të gjithë elementët e tij (me përjashtim të kolonës së 4-të).



Ju pëlqeu artikulli? Ndani me miqtë tuaj!