Rotation bestimmen (double)
-
Bitte

-
interpreter schrieb:
Bitte

Oh, ich fürchte, ich muss dich nochmal belästigen.
Ich habe jetzt folgendes ausprobiert:
Zwei Figuren.
Die erste Figur wird tastaturgesteuert bewegt.
Die zweite Figur wird NICHT bewegt sondern schaut die ganze Zeit auf Figur 1.(Hab eine Funktion "LookAt(int xpos , int ypos)" geschrieben so wie u es gesagt hast: atan((x2-x) / (y2-y); ))
Das Problem ist jetzt folgendes:
1 : Die zweite Figur (die zugleich auf die erste Figur schaut), schaut schon in die Richtung der erste Figur. Allerdings findet diese Drehung (in die entsprechende Richtung) nur ruckelig statt.
Und noch was komisches:Die zweite Figur richtet sich plötzlich auf 0 Grad aus, wenn die 45 Grad-Marke überschritten wurde. (Wenn Figur 1 so darsteht, dass die Rotation der Figur2 45 Gad überschreitet.)
ps: Ja, ich hab Radianten in Grad umgerechnet.
Ich hoffe, dass du (oder auch jemand anders) helfen kannst.
-
*push*
Kann mir niemand helfen?

-
ich wolte dir ja helfen aber jemmand hat den betirag geloescht^^
ich hatte geschrieben das du dir ein c++ tutorail ankucken solst am besten das von www.volkard.de den das ist gut ^^
alternartiv kanst du auch alles mit tangens machen und vieleicht hast du die positionen als integer diviediert und deshalb rukelt es so^^

-
strummelbunzi schrieb:
ich wolte dir ja helfen aber jemmand hat den betirag geloescht^^
ich hatte geschrieben das du dir ein c++ tutorail ankucken solst am besten das von www.volkard.de den das ist gut ^^
alternartiv kanst du auch alles mit tangens machen und vieleicht hast du die positionen als integer diviediert und deshalb rukelt es so^^

Tu mir einen gefallen. Poste in nächster Zeit bitte NICHT in Threads, die von MIR erstellt worden sind.
Danke.
Back to topic:
Warum wird der Wert bei arctan (oder atan) nach 45 Grad , 0 Grad? Gibt es eine mathematische Erklärung oder muss der Fehler in meinem Programm liegen?
-
der feller liegt in deinem programm ^^
ich habe dir doch gesaggt das du woll die integers dividierst und das "ruckelt" ^^
-
strummelbunzi schrieb:
der feller liegt in deinem programm ^^
ich habe dir doch gesaggt das du woll die integers dividierst und das "ruckelt" ^^1 : Stimmt. Hab durch integer dividiert.
2 : Hab deinen letzten post nicht gelesen, da ich nicht alles lese, was du schreibst.
-
Was heißt NACH 45 Grad? Und atan übergibt man keine Winkel. Da die Winkelfunktionen keine bijektiven Abbildungen sind, kannst du nicht einfach so bedenkelos umkehren, sondern musst dir stets genau die einzelnen Intervalle anschauen.
-
interpreter schrieb:
Was heißt NACH 45 Grad? Und atan übergibt man keine Winkel. Da die Winkelfunktionen keine bijektiven Abbildungen sind, kannst du nicht einfach so bedenkelos umkehren, sondern musst dir stets genau die einzelnen Intervalle anschauen.
Hat sich erledigt. Diesmal hatte strummelbunzi recht. Ich hab durch ints geteilt statt durch doubles. Jetzt funktioniert es einwandfrei.
Danke.
(zu 45 Grad: Ich hab während der Laufzeit die Winkelgröße ausgenen lassen. Und nach 45 Grad zeigte es 0 an. Aber das Problem besteht NICHT mehr. Funktioniert wie gesagt: EINWANDFREI!)
-
das war auch der grund weshalb ich seinen trollbeitrag nicht gelöscht hab und er ärgert sich jetzt sicherlich sehr mit seinem schnellschuss doch mal geholfen zu haben *hahaha...*