Cuando quiero mover objetos alrededor del punto, lo hago:
point.x *= cosf(timer.timeElapsed);
point.y *= sinf(timer.timeElapsed);
¿Cómo hacer que el punto se mueva en una trayectoria de ocho o signos de infinito?
mathematics
movement
trajectory
Yevhen
fuente
fuente
Como señala Marton, hay varias curvas de "figura de ocho" que podrían ajustarse a sus necesidades. Quizás el más simple es el lemniscate de Gerono , que tiene la parametrización:
y se ve así:
Sin embargo, el lemniscate de Bernoulli puede ser visualmente más agradable; tiene una parametrización muy similar al lemniscate de Gerono, excepto que ambos ejes están escalados por un factor de
1/(sin(t)^2 + 1) = 2/(3 - cos(2*t))
:Se parece a esto:
(Animaciones hechas con Maple 13, comprimidas con GIFsicle).
fuente
Al azar encontré otro usando esta fórmula:
Como lo trazó Wolfram Alpha :
fuente
t
. Recomiendo incluir una descripción de cómo usaría esta fórmula para colocar un objeto en movimiento a lo largo del tiempo.El producto de las distancias desde cualquier punto de esa curva a (-1, 0) y a (1,0) es constante e igual a 1.
fuente