Wenn ich ein Objekt um einen Punkt bewegen möchte, mache ich Folgendes:
point.x *= cosf(timer.timeElapsed);
point.y *= sinf(timer.timeElapsed);
Wie kann man Punkte auf der Flugbahn mit dem Acht- oder Unendlichzeichen bewegen?
mathematics
movement
trajectory
Yevhen
quelle
quelle
Wie Marton feststellt, gibt es mehrere "Achterkurven", die Ihren Anforderungen entsprechen könnten. Das vielleicht einfachste ist das Lemniskat von Gerono mit der Parametrisierung:
und sieht so aus:
Die Lemniskate von Bernoulli mag jedoch optisch ansprechender sein; Es hat eine Parametrisierung, die der Lemniskate von Gerono sehr ähnlich ist, mit der Ausnahme, dass beide Achsen mit dem folgenden Faktor skaliert sind
1/(sin(t)^2 + 1) = 2/(3 - cos(2*t))
:Es sieht aus wie das:
(Mit Maple 13 erstellte Animationen, die mit GIFsicle komprimiert wurden.)
quelle
Ich habe zufällig eine andere gefunden, die diese Formel verwendet:
Wie von Wolfram Alpha geplottet :
quelle
t
. Ich würde empfehlen, eine Beschreibung hinzuzufügen, wie Sie diese Formel verwenden, um ein sich bewegendes Objekt im Laufe der Zeit zu positionieren.Das Produkt der Abstände von einem beliebigen Punkt auf dieser Kurve zu (-1, 0) und zu (1,0) ist konstant und gleich 1.
quelle