Kezdőoldal » Számítástechnika » Programozás » Hogyan tudom elforgatni az...

Hogyan tudom elforgatni az "irányt"?

Figyelt kérdés

Csak hobbiként programozom, amit tudok, azt internetről tanultam, tehát nem vagyok valami profi programozó.


A kérdésem az lenne, hogy hogyan tudom elforgatni az "irányt"


Az irány például: X:1 Y:0 azaz jobbra mutat.

Mindegy merre mutat, de a nullától való távolsága mindig egy.


Hogyan tudok egy olyan algoritmust írni, amivel elforgatná valamennyi fokkal?


pl.: X:1 Y:0 Forgat(X,Y,90) = X:0 Y:1;


Az irány és a távolság algoritmusok már megvannak.


-------

Function Tavolsag(X1,Y1,X2,Y2:Real):Real;

begin

Result:= sqrt(sqr(x1-x2)+sqr(y1-y2));

end;

-------


-------

Function Irany(X,Y: Real):TPR; //a TPR az az X és Y, csak Real

var X1,Y1,cs,Tav:Extended; Ir:TPR;

begin

X1:=X;Y1:=Y;


tav:= Tavolsag(0,0,X1,Y1); Ir.X:=0; Ir.Y:=0;

If Tav>0 then begin

Ir.X:=X1/Tav;

Ir.Y:=Y1/Tav;


Result:=Ir; end else begin Result:=Ir; end;

-------


Function Forgat(Irany: TPR; Fok: Real): TPR;

begin

???

end;


Köszönöm :)



2015. ápr. 24. 13:35
 1/2 Tengor ***** válasza:
Az "irányt" vektornak hívjuk. [link]
2015. ápr. 24. 13:52
Hasznos számodra ez a válasz?
 2/2 iostream ***** válasza:

Ha egységvektorról van szó, akkor ajánlom figyelmedbe ezt az ábrát:

[link]

Főleg a kör részét. Nem tudom, mikor tanultál trigonometriát, de a sin/cos gyakorlatilag pontosan az, ami neked kell.

2015. ápr. 24. 17:21
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!