Forfatter:
Carl Weaver
Opprettelsesdato:
25 Februar 2021
Oppdater Dato:
1 Juli 2024
![Wolfenstein 3D sin rendermotor – Magnus Hovland Hoff – RevolverConf 2018.1](https://i.ytimg.com/vi/LuUb9Hrl-LQ/hqdefault.jpg)
Innhold
- Trinn
- Metode 1 av 5: Terminologi
- Metode 2 av 5: Undersøk problemstillingen
- Metode 3 av 5: Finne enhetsvektoren
- Metode 4 av 5: Hvordan normalisere en vektor i 2-dimensjonalt mellomrom
- Metode 5 av 5: Hvordan normalisere en vektor i n-dimensjonalt rom
En vektor er et geometrisk objekt, den er preget av retning og størrelse. Det kan representeres som et linjesegment med et utgangspunkt i den ene enden og en pil i den andre, mens lengden på segmentet tilsvarer størrelsen på vektoren, og pilen angir retningen. Vektornormalisering er en standardoperasjon i matematikk; i praksis brukes den i datagrafikk.
Trinn
Metode 1 av 5: Terminologi
1 La oss definere en enhetsvektor. En enhetsvektor av vektor A er en vektor hvis retning faller sammen med retningen til vektor A, og lengden er 1. Det kan bevises strengt at hver vektor har en og bare en enhetsvektor som tilsvarer den.
2 Lær hva vektor normalisering er. Dette er prosedyren for å finne enhetsvektoren for en gitt vektor A.
3 La oss definere en tilkoblet vektor. I et kartesisk koordinatsystem går den tilhørende vektoren fra opprinnelsen, det vil si for det 2-dimensjonale tilfellet, fra punktet (0,0). Dette gjør at vektoren bare kan spesifiseres av koordinatene til endepunktet.
4 Lær å skrive vektorer. Hvis vi begrenser oss til tilkoblede vektorer, så i notasjonen A = (x, y) peker koordinatparet (x, y) til endepunktet til vektoren A.
Metode 2 av 5: Undersøk problemstillingen
1 Bestem det som er kjent. Fra definisjonen av en enhetsvektor vet vi at utgangspunktet og retningen til denne vektoren sammenfaller med de analoge egenskapene til vektor A. I tillegg er lengden på enhetsvektoren 1.
2 Bestem hva du trenger å finne. Det er nødvendig å finne koordinatene til endepunktet til enhetsvektoren.
Metode 3 av 5: Finne enhetsvektoren
- Finn endepunktet for enhetsvektoren for vektor A = (x, y). Enhetsvektoren og vektor A danner lignende rettvinklede trekanter, så endepunktet til enhetsvektoren vil ha koordinater (x / c, y / c), der du må finne c. I tillegg er lengden på enhetsvektoren 1. Således har vi ifølge Pythagoras teorem: [x ^ 2 / c ^ 2 + y ^ 2 / c ^ 2] ^ (1/2) = 1 -> [(x ^ 2 + y ^ 2) / c ^ 2] ^ (1/2) -> (x ^ 2 + y ^ 2) ^ (1/2) / c = 1 -> c = (x ^ 2 + y ^ 2) ^ (1/2). Det vil si at enhetsvektoren til vektoren A = (x, y) er gitt av uttrykket u = (x / (x ^ 2 + y ^ 2) ^ (1/2), y / (x ^ 2 + y ^ 2) ^ (1/2)).
Metode 4 av 5: Hvordan normalisere en vektor i 2-dimensjonalt mellomrom
- Anta at vektor A starter ved opprinnelsen og slutter på (2,3), det vil si A = (2,3). Finn enhetsvektoren: u = (x / (x ^ 2 + y ^ 2) ^ (1/2), y / (x ^ 2 + y ^ 2) ^ (1/2)) = (2 / (2 ^ 2 + 3 ^ 2) ^ (1/2), 3 / (2 ^ 2 + 3 ^ 2) ^ (1/2)) = (2 / (13 ^ (1/2)), 3 / (13 ^ (1/2))). Dermed fører normaliseringen av vektoren A = (2,3) til vektoren u = (2 / (13 ^ (1/2)), 3 / (13 ^ (1/2))).
Metode 5 av 5: Hvordan normalisere en vektor i n-dimensjonalt rom
- La oss generalisere formelen for normalisering av en vektor til tilfellet med et mellomrom med et vilkårlig antall dimensjoner. For å normalisere vektoren A (a, b, c, ...), er det nødvendig å finne vektoren u = (a / z, b / z, c / z, ...), hvor z = (a ^ 2 + b ^ 2 + c ^ 2 ...) ^ (1/2).