c# - quaternion - Calculando el movimiento XY basado en el ángulo de rotación?
transform rotation c# (2)
Digamos que tengo un objeto en el espacio 2D que puede girar y luego debe moverse de acuerdo con su ángulo de rotación.
Por ejemplo:
Si el ángulo es 0 (apuntando hacia arriba), entonces
on_timer
debería moverse 1 por Y y 0 por X.Si el ángulo es 45, entonces debería moverse 1 en Y y 1 en X.
Si apunta 90 grados, luego 0 por Y y 1 por X.
Si apunta 135 grados, luego -1 por Y y +1 por X, etc.
¿Conoces alguna función para calcular esto?
Mira esto: http://msdn.microsoft.com/en-us/library/system.drawing.drawing2d.matrix.aspx (ejemplos en la parte inferior de la página)
bueno, parece moverse a diferentes velocidades para diferentes ángulos.
Para 0 degress (hacia arriba) se movió por 1, pero 45 grados movió sqrt (1 ^ 2 + 1 ^ 2) = 1.41.
Creo que quieres ver a Sin y Cos.
X += Speed * Math.Cos(angle);
Y += speed * Math.Sin(angle);
Saludos Gert-Jan