Durchschnittlicher Winkel

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Durchschnittlicher Winkel

      Hallo Leute,

      Ich könnte ein paar Mathefreak/Mathenerd gebrauchen:

      gibt es hier eine Methode, das man mehr als 2x Winkel in durchschnittlicher Winkel berechnen kann? Denn

      359+359+359+0 = 1077
      1077 / 4 = 269,25°
      Eigentlich müsste es 359.25° sein.

      oder

      359+0+1 = 360
      360/3 = 120
      Eigentlich müsste es 360° sein.

      Leider ist dieser Formel für Winkel nicht geeignet. Gibt es hier eine Berechnung mithilfe von sin/cos?

      Auf Antwort würde ich mich supi freuen!

      Gruß,

      Chinafreak

      P.S. Bei Präfix fehlt "GM:S" unter Expertenrunde.


      _

      kleiner Denkfehler, die Ergebnisse stimmen zwar, aber ich rede von

      359+0+1 = 360
      360/3 = 120

      nach

      359+360+361 = 1080
      1080/3 = 360

      Den die Winkel gibt es in Game Maker nicht mehr als 359° und wird dann direkt nach 0° zurückgesetzt, wenn es mehr als 359° ist. ._.
      Ihr stinkt.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Chinafreak ()

    • Vielleicht über Vektoraddition?

      Nicht getesteter Code:

      GML-Quellcode

      1. var tx,ty;
      2. tx = 0;
      3. ty = 0;
      4. //für jeden winkel der dazuaddiert wird:
      5. var winkel = 200;//dein winkelwert
      6. tx=tx+sin(degtorad(winkel));
      7. ty=ty+cos(degtorad(winkel));
      8. var winkel = 134;//dein winkelwert
      9. tx=tx+sin(degtorad(winkel));
      10. ty=ty+cos(degtorad(winkel));
      11. var winkel = 329;//dein winkelwert
      12. tx=tx+sin(degtorad(winkel));
      13. ty=ty+cos(degtorad(winkel));
      14. //berechnung des durchschnittlichen winkels:
      15. var winkel_durchschnitt = point_direction(0,0,tx,ty);
      Alles anzeigen


      Könnte man auch wunderbar in Scripts verpacken.
      Wie gesagt, habe den Code nicht getestet (auf eventuelle Denkfehler)

      /Edit: Da beim GM die y-Achse nicht nach oben, sondern nach unten verläuft, könnte es aufgrunddessen zu falschen ergebnissen kommen (falls die point_direction() Funktion dies nicht beachtet).
      Falls es also weiterhin zu fehlern kommen sollte, versuch den Durchschnittswinkel so zu berechnen:

      GML-Quellcode

      1. //berechnung des durchschnittlichen winkels:
      2. var winkel_durchschnitt = point_direction(0,0,tx,-ty);

      oder du änderst die vektoradditionen auf der y-achse zu

      GML-Quellcode

      1. ty=ty-cos(degtorad(winkel));

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von LEWA ()

    • Danke @LEWA, es hat wunderbar funktioniert, mit kleine Änderung:

      Der Winkel war komischerweiße um 90° zurückgezogen, also habe ich folgendes gemacht:

      GML-Quellcode

      1. var tx,ty;
      2. tx = 0;
      3. ty = 0;
      4. //für jeden winkel der dazuaddiert wird:
      5. var winkel = 200+90;//dein winkelwert
      6. tx=tx+sin(degtorad(winkel));
      7. ty=ty+cos(degtorad(winkel));
      8. var winkel = 134+90;//dein winkelwert
      9. tx=tx+sin(degtorad(winkel));
      10. ty=ty+cos(degtorad(winkel));
      11. var winkel = 329+90;//dein winkelwert
      12. tx=tx+sin(degtorad(winkel));
      13. ty=ty+cos(degtorad(winkel));
      14. //berechnung des durchschnittlichen winkels:
      15. var winkel_durchschnitt = point_direction(0,0,tx,ty);
      Alles anzeigen



      So hat es am besten funktioniert, keine Ahnung wieso. Und ich musste nicht "-ty" hinschreiben, komischerweiße stimmte dann die durchschnittlicher Winkel.

      Aber jetzt funktioniert es, wie es sein sollte. Danke dir, nochmal.
      Ihr stinkt.