2016-08-07 131 views
-1

Hey, ich habe ein Problem mit Vektormathematik, das ich lösen muss, damit mein Code funktioniert. Was ich versuche, ist, dies zu tun:Wie berechnet man einen Vektor basierend auf einem zentralen Ursprung

Können sagen wir drei Objekte haben:

  • Objekt A ist das zentrale Objekt
  • Objekt B nur wenige Meter entfernt von A auf einem 45-Grad von A der ist Position
  • Objekt C auch ein paar Meter entfernt von A ist aber auf einem 90-Grad-Winkel von A Position

ein bisschen wie folgt aus:

B 
AC 

Nun, was ich tun muss, ist ein Vektor-Koordinatenpunkt 10m weiter weg von A zu bekommen, auf den sich sowohl B als auch C bewegen, wenn A aktiviert ist. Wenn ich also A aktiviere, wird B entlang des 45 ° -Winkels zu currentPos + newPos weitergehen und C wird sich im 90-Grad-Winkel zu currentPos + newPos bewegen. All dies muss auf der Position von A basieren. Die Objekte müssen sich von der zentralen Position von A wegbewegen.

Vektor Mathe ist etwas, das ich nicht zu vertraut bin, und ich bin ein bisschen kämpfen hier, um herauszufinden, wie man die neue Position für B und C basierend auf ihrem aktuellen Winkel zu A und A Position, dachte ich würde Sie mehr kenntnisreiche Leute um Hilfe bitten.

Würden Sie bitte irgendwelche Antworten auf eine einfache Art und Weise schreiben, damit ich die Idee leicht in Code umwandeln kann.

Danke!

Antwort

0

Ich folge Ihrem Bild, das ich einen Null-Grad-Winkel von A's Position für C nennen würde. Nehmen wir an, wir nennen Ihren Standort von A (0,0).

Es sieht so aus, als könnten Sie in Ihrem Fall (10,0) den aktuellen Punkt von C hinzufügen. Für B könnte man (5sqrt (2), 5sqrt (2)). Um allgemein n Einheiten in einem Winkel Theta (in Radian in den meisten Sprachen) zu bewegen, addieren Sie n (cos (Theta), Sinus (Theta)).

Ich nehme diesen Ansatz, weil Sie sagten, dass der Winkel bekannt war und A das Zentrum unseres Universums war und alles relativ dazu ist. Wenn dies nicht der Fall wäre, könnte stattdessen ein Ansatz in Frage kommen, der B-A und C-A als Vektoren betrachtet und ihre Größe annimmt und dann die richtigen Mengen von ihnen hinzufügt.