Hey,
ich bräuchte eine Funktion die mir die Z Rotation eines Fahrzeuges wieder gibt, wenn es einen bestimmten Punkt 'anschauen' soll. Hätte da jemand was für mich ? Wäre sehr hilfreich
Sollte so etwa in der Art auschauen: GetAngleBetweenVehicleAndPoint(vehicleid, Float: x, Float: y)
Winkel zwischen Fahrzeug und Punkt berechnen
- Oskaar1994
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
-
Ich habe es ausch schon probiert bzw. gesucht nur das Problem ist, dass die Funktion die ich habe, auch höhere Werte als 360 ausgibt oder auch -1. Aber die Rotation geht ja nur von 0 bis 360, das ist das Problem.
-
Dann zeig uns doch mal her, was du da rechnest. Wenn deine Rechnung irgendwas unter bzw über 0/360 ausgibt, muss der Rechenweg ja einen Fehler aufweisen.
-
Dann zeig uns doch mal her, was du da rechnest. Wenn deine Rechnung irgendwas unter bzw über 0/360 ausgibt, muss der Rechenweg ja einen Fehler aufweisen.
Das kann vorkommen wenn beide koordinaten negativ sind jedoch kann man das von 360 abziehenreturn ((Winkel < 0)?(360-Winkel):(Winkel));
-
Negative Koordinaten sollten bei der Sinusrechnung aber egtl nicht stören und trotzdem positive Winkel ergeben.
-
Das habe ich im Moment, aber es ist halt nicht mit der Z Angle eines Fahrzeuges kompatibel.
stock Float:GetAngleBetweenPoints(Float:x1, Float:y1, Float:x2, Float:y2){
new Float:angle = atan2(y2-y1, x2-x1);
return angle;
} -
Du musst auch nicht mit Tangens arbeiten, sondern mit Sinus
-
Habe mich leider noch nie mit der Sinus Rechnung befasst und habe 0 Ahung davon, lässt sich das auf die Schnelle lernen oder brauche ich Zeit dafür ?
-
Du musst auch nicht mit Tangens arbeiten, sondern mit Sinus
Da solltest ihm noch dazu den Tipp geben wenn er mit Sinus arbeitet das er GetVehicleDistanceFromPoint verwenden muss jedoch ist es insgesamt ein geringerer Rechenaufwand
mit Tangents zu rechnen -
breadfish.de
Hat das Thema geschlossen.