Vektor / Pfeil



  • Hallo,

    es gab mal diesen Beitrag zum Zeichnen / Drehen einer Pfeilspitze:

    Also - du rechnest den Winkel mit ein.
    Wenn der Winkel der Linie sagen wir mal 45° ist, die Position der Spitze ist sagen wir auf 100x / 100y

    Dann währe der Linkes drehender Winkel bzw. linke Pfeilspitze: 45° - 135° = -90°
    und der Rechte 45° + 135° = 180°

    Dann rechest du die neuen Vectoren von der Spitze aus aus. ( Was fürn dummer Satz )

    Spitze = ( 100 | 100 )
    Länge = 100
    Spitzenlänge = Länge / 10 = 10;

    linke spitze:
    x = sin( neuer winkel also -90° ) * Spitzenlänge + Aktuelle X Position also 100
    y = cos( neuer winkel also 180° ) * Spitzenlänge + Aktuelle Y Position also 100

    rechts das selbe

    Nun kannst du Zeichnen

    Jetzt meine Frage. Wenn ich das mit den aktuellen Werten der rechten Linie mache bekomme ich kein Ergebnis. Ich habe dann zwei Linien nebeneinander, die beide die gleichen y Werte Beginn und Ende haben, nur die x-Werte sind unterschiedlich. Was muss ich machen, damit die erchte Linie richtig gezeichnet wird und eine Spitze entsteht ?

    A.



  • Du mußt natürlich für beide Koordinaten einer Seitenlinie die selben Winkel verwenden:

    links:
    Xl = sin(-90°)*Länge + Xstart
    Yl = cos(-90°)*Länge + Ystart

    rechts:
    Xr = sin(180°)*Länge + XStart
    Yr = cos(180°)*Länge + YStart



  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Spiele-/Grafikprogrammierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten