Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

3d-rotaatiot

24 views
Skip to first unread message

TERO ELSILA

unread,
Jul 30, 1996, 3:00:00 AM7/30/96
to

Eli ongelmani on monesti lukemani ja panttaamani ongelma
jota en ole saanut johdettua vaikka mita teen,
taman pitaisi olla helppo lukion kayneille, mutta
henk.koht. en saa tata selvitettya.
oikeastaa ton 3d:n vois unohtaa tuolta otsikosta.

Xuusi=Cos(kulma)*X-Sin(kulma)*Y
Yuusi=Sin(kulma)*X+Cos(kulma)*Y

Eli tuo rotaatoi pisteen X,Y pisteeseen Xuusi,Yuusi kulma:n verran,
ja sen se tekeekin, mutta ongelma on sen johtaminen.

Tero

Jukka Heino

unread,
Jul 30, 1996, 3:00:00 AM7/30/96
to

In article <8C5707B.013B...@amme.heureka.fi>,
tero....@amme.heureka.fi says...

En tiedä, kuinka paljon kompleksilukuja lukiossa nykyään käsitellään.
Ko. rotaatio on joka tapauksessa helppo nähdä, kun ajattelee pistettä
kompleksitasossa, ja muistaa, kuinka kompleksilukujen kertolasku
menee "graafisesti". (Millaisella luvulla X+Yi on kerrottava jotta
piste vain kiertyy origon ympäri.) Varsinainen johtaminen taitaa mennä
Eulerin kaavan avulla.
--
Jukka


Jyrki Alakuijala

unread,
Jul 31, 1996, 3:00:00 AM7/31/96
to

> Xuusi=Cos(kulma)*X-Sin(kulma)*Y
> Yuusi=Sin(kulma)*X+Cos(kulma)*Y

Tama nyt ei ole mitaan tiedetta, vaan peruskoulumatematiikan
oppikirjakysymys, mutta vastaan kuitenkin.

Tuota kaavaa nyt ei tarvitse sen kummemmin johtaa. Sen periaate
on seuraava:

P_uusi = pyorahdys(P_vanha),

jossa pyorahdys on jaettu kahteen osaan:
P_vanha:n x akselin suuntaisen komponentin pyorayttamiseen ja
P_vanha:n y akselin suuntaisen komponentin pyorayttamiseen:

P_uusi = x-suunta * P_vanha_x + y-suunta * P_vanha_y

pyoraytyksessa x:n suunta ei olekaan enaa (1,0) ja y:n (0,1),
vaan niita on kaannetty. Tama on vahan niinkuin pyoraytyksen
perusidea :-)

Pyoraytyksessa seka x-suunnan ja y-suunnan pituus taytyy
kuitenkin olla 1 ja lisaksi suuntien taytyy olla kohtisuorassa
toisiaan kohti. Lisaksi suuntien taytyy olla kaantynyt annetun
kulman verran. Kaannetaanpa siis x-suunta (1,0):sta kulman verran:

(piirra kolmio, jossa x-suunta on hypotenuusa ja x-suunnan x- ja
y-componentit ovat kateetteja)

saadaan sinin ja kosinin maaritelmista (etta x-suunnan x-komponentti
on cos(kulma) ja y-komponentti sin(kulma)).

Sitten kun teet vastaavan y-akselille, saatkin "yllattaen" y-suunnan
x-komponentiksi -sin(kulma) ja y-komponentiksi cos(kulma).

Jos valitset kulman pyorimissuunnan toiseksi, vaihtuu sinien merkit.

Toivottavasti tama meni perille...

--Jyrki


Ari Lehtonen

unread,
Aug 1, 1996, 3:00:00 AM8/1/96
to

TERO ELSILA wrote:
>
> Eli ongelmani on monesti lukemani ja panttaamani ongelma
> jota en ole saanut johdettua vaikka mita teen,
> taman pitaisi olla helppo lukion kayneille, mutta
> henk.koht. en saa tata selvitettya.
> oikeastaa ton 3d:n vois unohtaa tuolta otsikosta.
>
> Xuusi=Cos(kulma)*X-Sin(kulma)*Y
> Yuusi=Sin(kulma)*X+Cos(kulma)*Y
>
> Eli tuo rotaatoi pisteen X,Y pisteeseen Xuusi,Yuusi kulma:n verran,
> ja sen se tekeekin, mutta ongelma on sen johtaminen.
>
> Tero
Katso ensin mita tapahtuu x- ja y-akseleiden suuntaisille
yksikkovektoreille (1,0) (tassa X=1, Y=0) ja (0,1) (tassa
X=0, Y=1). Kuvasta katsoen tulosvektorit ovat
(Cos(kulma), Sin(kulma)) ja (-Sin(kulma), Cos(kulma)),
eli kuten pitaa. Kierto on lineaarikuvaus, joten m.v.
vektorille (X,Y) = X (1,0) + Y (0,1) kierretty vektori on
kierto(X,Y) = X kierto(1,0) + Y kierto(0,1) = (Xuusi, Yuusi).

Ari Lehtonen

Vuokko Vuori

unread,
Aug 1, 1996, 3:00:00 AM8/1/96
to

In article <8C5707B.013B...@amme.heureka.fi> tero....@amme.heureka.fi (TERO ELSILA) writes:
> Xuusi=Cos(kulma)*X-Sin(kulma)*Y
> Yuusi=Sin(kulma)*X+Cos(kulma)*Y

> Eli tuo rotaatoi pisteen X,Y pisteeseen Xuusi,Yuusi kulma:n verran,
> ja sen se tekeekin, mutta ongelma on sen johtaminen.

Ajattele pisteet vektoreina. Saat uuden pisteen koordinaatit suoraan
vanhan pisteen käännetystä paikkavektorista. Jaa aluksi vanhan
pisteen paikkavektori y- ja x-akselin suuntaiseksi komponenteiksi,
käännä molempia komponentteja halutun kulman a verran, jaa käännetyt
vanhan paikkavektorin komponetit x- ja y-akselin suuntaisiksi
komponenteiksi ja laske ne yhteen.

Eli Pvanha=(Xvanha,Yvanha) komponentteina on Pvanha=(Xvanha,0) + (0,Yvanha)

Puusi = käännetty(Xvanha,0) + käännetty(0,Yvanha) =
(cosa*Xvanha,sina*Xvanha) + (-sinaY*vanha,cosa*Yvanha)


Tämän pitäisi ymmärtää jo lukion eväin. Kompleksiluvuilla saman voi
tehdä suraavasti:

Ajatellaan XY-taso kompleksitasoksi. Pisteet ovat siis
kompleksilukuja, jotka voidaan esittää polaarimuodossa. Elikkä
Pvanha=exp(r)*exp(i*fii), missä exp(r) on vektorin Pvanha pituus ja fii on
sen kulma x-akseliin nähden. Kerrotaan Pvanha luvulla exp(i*a), jolloin
Puusi = Pvanha*exp(i*a) = exp(r)*exp(i*(a+fii)). Kun palautetaan
Puusi takaisin polaarimuodosta "tavalliseen" muotoon Xuusi+Yuusi*i,
saadaan haluttu kaava. Apuna voi käyttää Eulerin kaava
exp(i*fii) = cosfii + i*sinfii.

Toivottavasti näistä oli jotain iloa =*)

Vuokko





--
Nasu istui kotiovensa edessä ja puhalteli tyytyväisenä voikukan höytyviä
yrittäen saada selville, tapahtuiko se tänä vuonna, ensi vuonna, joskus, vai
ei koskaan. Hän oli juuri saanut selville että se ei tapahtuisi koskaan ja
yritti muistella mikä se oli ollut toivoen ettei se ollut mitään mukavaa.
-Nalle Puh

Jukka Liukkonen

unread,
Aug 1, 1996, 3:00:00 AM8/1/96
to

TERO ELSILA (tero....@amme.heureka.fi) wrote:
[snip]
: Xuusi=Cos(kulma)*X-Sin(kulma)*Y
: Yuusi=Sin(kulma)*X+Cos(kulma)*Y

: Eli tuo rotaatoi pisteen X,Y pisteeseen Xuusi,Yuusi kulma:n verran,
: ja sen se tekeekin, mutta ongelma on sen johtaminen.

[snip]

Kaava seuraa välittömästi kompleksilukujen kertolaskun kaavasta.
Jos kompleksilukuja ei saa käyttää, niin sovelletaan summan sinin ja
kosinin kaavoja:

sin(a+b) = sin(a)*cos(b) + cos(a)*sin(b)
cos(a+b) = cos(a)*cos(b) - sin(a)*sin(b)

Nämä ja paljon muuta löydetään esim. Eric's Treasure Trove of Mathematics
-sivulta osoitteesta

http://www.gps.caltech.edu/~eww/math/math0.html

Olkoon Alpha positiivisen x-akselin ja origosta pisteeseen (X,Y) piirretyn
janan välinen kulma, R janan pituus ja Beta annettu kiertokulma. Tällöin

X = R*cos(Alpha)
Y = R*sin(Alpha)

ja

Xuusi = R*cos(Alpha+Beta) =
R*cos(Alpha)*cos(Beta) - R*sin(Alpha)*sin(Beta) =
X*cos(Beta) - Y*sin(Beta)

Yuusi = R*sin(Alpha+Beta) =
R*sin(Alpha)*cos(Beta) + R*cos(Alpha)*sin(Beta) =
Y*cos(Beta) + X*sin(Beta)

Yleisen kolmiulotteisen kierron yksilöimiseen ei riitä yksi kulma, vaan
niitä tarvitaan peräti kolme: esim. kiertoakselin yksilöinti vaatii
kaksi kulmaa, joiden lisäksi pitää ilmoittaa kiertokulma ko. akselin
suhteen tapahtuvassa kierrossa. Matriisilaskenta on kätevä työkalu
tämäntyyppisissä laskutehtävissä. Tampereen teknillisessä korkeakoulussa
on valmistettu mielenkiintoinen matriisilaskennan hypermediakurssi.
Siihen päästään käsiksi osoitteella

http://matwww.ee.tut.fi/matriisi/toc73109.html

Terv. Jukka

0 new messages