Desarrollo de una aplicación de Canvas HTML5 e implica la lectura de un archivo xml que describe la posición de las flechas, rectas y otras formas que necesito dibujar en el lienzo.Lienzo HTML5: cálculo de un punto x, y cuando se rota
ejemplo de la disposición XML:
<arrow left="10" top="20" width="100" height="200" rotation="-40" background-color="red"/>
<rect left="10" top="20" width="100" height="200" rotation="300" background-color="red"/>
Si el objeto se gira que implica el cálculo de la posición de un punto (llamado P la nueva posición del objeto después de la rotación) cuando se gira alrededor de otro punto (izquierda, parte superior). Estoy tratando de encontrar una fórmula/función general que pueda usar para calcular este punto P, pero mi matemática es un poco débil & No puedo identificar qué fórmula de arco/tangente estoy destinado a usar.
¿Puede ayudarme a encontrar una fórmula que pueda usar para calcular el punto P para rotaciones que pueden ser positivas & negativa?
En el ejemplo anterior: punto (14.446) es la izquierda, punto superior & punto (226,496) es el punto del objeto mediados cuando NO girar de modo que el punto = (izquierda + ancho/2 , arriba + altura/2) y el punto azul es el punto medio cuando se gira. Sé cómo calcular la longitud de la línea entre los puntos (14,446) & (226,496) pero no cómo calcular el punto azul x, posición y - Por cierto: la longitud de esta línea es la misma que la línea entre el punto azul & (14,446)
len = sqrt((496-446)^2 + (226-14)^2);
= 227.56;
Hay una cosa que debe ser mencionado al tratar con arco tangente ... Se dará el mismo ángulo cuando (x, y) está en I o en cuadrantes III y (x, y) está en los cuadrantes II o IV. El valor correcto para el ángulo debe elegirse en función de los signos de xey. – Cheery