|
| Vinkel mellem to punkter Fra : Lobais |
Dato : 08-02-05 07:52 |
|
Hej gruppe,
jeg sidder og mangler en metode, der kan returnere en vinkel fra 0-359, ud
fra to koordinat set. f.eks. vinkel(int x, int y, int xx, int yy);
Findes der noget standart algebra, elle har java lavet noget på forhånd?
--
Lobais - http://thomas.ahle.dk/
Einstein - Science without religion is lame, religion without science is blind.
| |
Niels Dybdahl (08-02-2005)
| Kommentar Fra : Niels Dybdahl |
Dato : 08-02-05 09:18 |
|
> Hej gruppe,
> jeg sidder og mangler en metode, der kan returnere en vinkel fra 0-359, ud
> fra to koordinat set. f.eks. vinkel(int x, int y, int xx, int yy);
> Findes der noget standart algebra, elle har java lavet noget på forhånd?
I "matematikken" bruger man arcus tangens: a=arctan(dy/dx), hvor dx og dy er
afstanden i hhv x og y retning. Denne formel giver problemer så snart dx er
meget lille, så i programmeringssprog har man normalt en funktion som hedder
atan2 som klarer det: a=atan2(dy,dx). Som sædvanlig regner Java i radianer
og ikke i grader.
Hilsen Niels
| |
Lobais (08-02-2005)
| Kommentar Fra : Lobais |
Dato : 08-02-05 12:00 |
|
Tue, 08 Feb 2005 09:17:56 +0100. skrev Niels Dybdahl:
>> Hej gruppe,
>> jeg sidder og mangler en metode, der kan returnere en vinkel fra 0-359, ud
>> fra to koordinat set. f.eks. vinkel(int x, int y, int xx, int yy);
>> Findes der noget standart algebra, elle har java lavet noget på forhånd?
>
> I "matematikken" bruger man arcus tangens: a=arctan(dy/dx), hvor dx og dy er
> afstanden i hhv x og y retning. Denne formel giver problemer så snart dx er
> meget lille, så i programmeringssprog har man normalt en funktion som hedder
> atan2 som klarer det: a=atan2(dy,dx). Som sædvanlig regner Java i radianer
> og ikke i grader.
Så jeg bruger Math.atan2() og regner videre om til grader, men metoden
modtager jo kun ét punk, så hvad skal jeg videre gøre for at få
vinklen af en linje?
--
Lobais - http://thomas.ahle.dk/
Einstein - Science without religion is lame, religion without science is blind.
| |
Jonathan Stein (08-02-2005)
| Kommentar Fra : Jonathan Stein |
Dato : 08-02-05 13:09 |
|
Lobais wrote:
> Så jeg bruger Math.atan2() og regner videre om til grader, men metoden
> modtager jo kun ét punk, så hvad skal jeg videre gøre for at få
> vinklen af en linje?
Som du skriver, vil to punkter give dig en linje - hvad er det for en
vinkel, du ønsker?
Er det f.eks. vinklen til X-aksen, til Y-aksen, vinklen mellem to
fiktive linjer fra de to punkter til 0,0 - eller måske retningen fra
punkt 1 til punkt 2 ?
M.v.h.
Jonathan
--
Er din e-mail vigtig? Er du træt af virus og spam i mailen?
Virus-scanning og spam-filtrering på alle mail-konti. På redundant
mail-setup med daglig backup.
http://www.jsp-hotel.dk/
| |
Niels Dybdahl (08-02-2005)
| Kommentar Fra : Niels Dybdahl |
Dato : 08-02-05 13:53 |
|
> >> jeg sidder og mangler en metode, der kan returnere en vinkel fra 0-359,
ud
> >> fra to koordinat set. f.eks. vinkel(int x, int y, int xx, int yy);
> >> Findes der noget standart algebra, elle har java lavet noget på
forhånd?
> >
> > I "matematikken" bruger man arcus tangens: a=arctan(dy/dx), hvor dx og
dy er
> > afstanden i hhv x og y retning. Denne formel giver problemer så snart dx
er
> > meget lille, så i programmeringssprog har man normalt en funktion som
hedder
> > atan2 som klarer det: a=atan2(dy,dx). Som sædvanlig regner Java i
radianer
> > og ikke i grader.
>
> Så jeg bruger Math.atan2() og regner videre om til grader, men metoden
> modtager jo kun ét punk, så hvad skal jeg videre gøre for at få
> vinklen af en linje?
dx=xx-x
dy=yy-y
Hilsen Niels
| |
Lobais (08-02-2005)
| Kommentar Fra : Lobais |
Dato : 08-02-05 19:41 |
|
Tue, 08 Feb 2005 13:53:11 +0100. skrev Niels Dybdahl:
> dx=xx-x
> dy=yy-y
Ah, smart.
--
Lobais - http://thomas.ahle.dk/
Einstein - Science without religion is lame, religion without science is blind.
| |
|
|