2011-10-27 13 views
6

Tengo dos (x, y) puntos de inicio y fin. Quiero animar de principio a fin, pero en lugar de ir de una manera lineal, quiero crear una ruta curva.Cálculo de una curva cuádruple entre dos puntos xy

Estoy bastante seguro de que no estoy buscando una relajación porque no quiero afectar la velocidad de la animación, solo quiero calcular una trayectoria curva.

me di cuenta de que necesitaba algún tipo de punto de control, como se muestra en esta imagen:

enter image description here

Pero no tengo idea de cómo ponerlo en práctica. Me gustaría crear una función que tuvo los siguientes parámetros

function calculateXY(start, end, controlpoint, percentage); 

Dónde porcentaje sería un número de 0 - 100% de la que 0 y devolvería la posición de inicio y el 100% de la posición final.

La solución no necesita estar en Objective-C, podría estar en cualquier lenguaje de programación. Simplemente no puedo entender las matemáticas :)

Respuesta

3

Consulte el enlace this, y especialmente la ecuación 2 que parece fácil de implementar en el código.

Encontró un snippet que hace eso por usted.

Cuestiones relacionadas