[JAVA] Object in een circelbeweging laten bewegen

Pagina: 1
Acties:
  • 269 views sinds 30-01-2008
  • Reageer

  • Wijnbo
  • Registratie: December 2002
  • Laatst online: 13:47

Wijnbo

Electronica werkt op rook.

Topicstarter
Hallo, ik ben bezig voor school om een object in een circel te laten bewegen, mbv Swing. Verder niet zo heel boeiend, maar of ik zie iets over het hoofd of mijn wiskunde is bagger ;)

http://nl.wikipedia.org/wiki/Sinus_en_cosinus

Hier staat een leuk plaatje rechtsbovenin met waarden die Cos(hoek) bv zou moeten geven. Wanneer ik in windows rekenmachine Cos(5) doe mbv graden krijg ik netjes de waarden die ook in dat plaatje worden weergegeven. 0,9961... Wannee ik dit echter in java doe (Math.cos(5)) krijg ik heel wat anders! (0,283...) Wat doe ik verkeerd?

  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 14:43
Al eens nagedacht over Graden / Radialen?

  • Wijnbo
  • Registratie: December 2002
  • Laatst online: 13:47

Wijnbo

Electronica werkt op rook.

Topicstarter
Ja.. maar met Math.toDegrees kom ik er ook niet... Dan krijg ik 16,25 :')

  • Daspeed
  • Registratie: Maart 2001
  • Laatst online: 14:43
kun je't zelf niet omrekenen met de tabel in wikipedia?

Verwijderd

Math.cos/sin etc functies verwachten de hoek in radialen. Als je graden opgeeft moet je deze dus zelf eerst naar radialen omrekenen, bijvoorbeeld:


Java:
1
Math.cos(Math.toRadians(hoekInGraden))

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Lees gewoon in de documentatie voor alle functies die je gebruikt met welke eenheden ze gebruiken en converteer de goede richting op.

Denk logisch na en doe de conversie op de juiste plek. Als daar een fout resultaat uit komt, plaats dan de hele berekening, dat zegt meer dan 'Math.toDegrees help niet!!!11' ;)

{signature}


  • Wijnbo
  • Registratie: December 2002
  • Laatst online: 13:47

Wijnbo

Electronica werkt op rook.

Topicstarter
Voutloos schreef op maandag 12 februari 2007 @ 17:39:
Lees gewoon in de documentatie voor alle functies die je gebruikt met welke eenheden ze gebruiken en converteer de goede richting op.

Denk logisch na en doe de conversie op de juiste plek. Als daar een fout resultaat uit komt, plaats dan de hele berekening, dat zegt meer dan 'Math.toDegrees help niet!!!11' ;)
Ik converteerde inderdaad de verkeerde kant op.. bedankt, Math.cos(Math.toRadians(n) werkt inderdaad wel. Ik voel me best wel dom nu. Tijd voor koffie. En Tubbie bedankt 8)

  • Marcj
  • Registratie: November 2000
  • Laatst online: 12:49
Het is trouwens volgens mij veel makkelijker om van 0 .. 2*pi te rekenen ipv 0..360 graden. Dat scheelt weer wat omrekenen. Gewoon in radialen denken ;)

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Marcj schreef op maandag 12 februari 2007 @ 19:22:
Het is trouwens volgens mij veel makkelijker om van 0 .. 2*pi te rekenen ipv 0..360 graden. Dat scheelt weer wat omrekenen. Gewoon in radialen denken ;)
Totdat er gebruiker-input bij komt kijken.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


  • Marcj
  • Registratie: November 2000
  • Laatst online: 12:49
Grijze Vos schreef op maandag 12 februari 2007 @ 19:32:
[...]

Totdat er gebruiker-input bij komt kijken.
Ik ga er van uit dat als je een cirkelbeweging wil maken, dat je niet aan de gebruiker vraagt hoeveel graden dit moet zijn.

  • .oisyn
  • Registratie: September 2000
  • Nu online

.oisyn

Moderator Devschuur®

Demotivational Speaker

Grijze Vos schreef op maandag 12 februari 2007 @ 19:32:
[...]

Totdat er gebruiker-input bij komt kijken.
Wat Marcj zegt, bovendien lijkt het me dan handig om die gebruikersinput, wat meestal een string is, dan ook gewoon op te slaan als radialen in een float :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
En al zou je dat aan de gebruiker vragen dan moet je toch de waarde inderdaad al converteren van een string. Dat lijkt me dan ook het uitgelezen moment om ook meteen naar radialen te converteren.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”

Pagina: 1