¿Cómo rotar un triángulo dibujado en java?
De hecho, es fácil rotar los triángulos dibujados por Java. En primer lugar, debes comprender que Java no puede dibujar cosas dinámicas. Todas las cosas dinámicas se borran y se vuelven a dibujar.
Un triángulo está compuesto por 3 rectas. Solo necesitas usar el teorema de Pitágoras para calcular las posiciones de los tres puntos del triángulo dibujado la próxima vez, que son los puntos donde se unen los tres lados. Luego presione la línea de puntos nuevamente. (Existe un método de subrayado en la API de Java)
El problema ahora es cómo calcular las posiciones de tres puntos que deben dibujarse la próxima vez si se conocen las posiciones de tres puntos actuales. Para que quede claro sobre esto, si desea que un triángulo gire, primero debe determinar el centro de un círculo. El triángulo girará alrededor de este centro de círculo, por lo que si el triángulo gira, también necesitará un centro de círculo.
Después de posicionar el centro del círculo, comienza el cálculo. Puedes usar un bolígrafo para dibujar en el papel, conectar el centro del círculo con tres puntos y luego dibujar tres círculos (los bordes de cada uno). círculo pasan por un punto del triángulo), y luego el punto más común de rotación de estos tres puntos en los tres círculos es que la velocidad angular de cada movimiento es la misma.
Ya hay datos en este momento: la posición de los tres puntos, la posición del centro del círculo y el ángulo que cambia el punto (es decir, la velocidad angular) durante cada movimiento. , comience el cálculo desde un punto, primero saque la X de este punto y la coordenada Y, calcule la diferencia entre la coordenada X de este punto y el punto X del centro del círculo y la diferencia de la coordenada Y. Utilice el teorema de Pitágoras para encontrar el ángulo entre el punto actual y la línea horizontal, y luego agregue la velocidad angular del siguiente movimiento de este punto. Este ángulo se puede usar para calcular el ángulo entre este punto y la línea horizontal después del. siguiente movimiento. Después del siguiente movimiento, dibuja una línea horizontal desde Y hasta el centro del círculo, y una línea vertical desde X hasta el centro del triángulo rectángulo. La hipotenusa es la distancia entre el centro del círculo y este punto. De esta forma, se pueden calcular las longitudes de los dos lados exteriores del triángulo rectángulo, que es la diferencia XY entre el punto y el centro del círculo. De esta forma, se puede calcular la posición del punto después del siguiente movimiento. .
Fórmula de cálculo específica:
Centro del círculo (círculo x, círculo y)
Uno de los tres puntos (punto x1, punto y1)
Velocidad angular en movimiento (ángulo z)
La diferencia x desde el punto hasta el centro del círculo es el punto x del círculo x1 (diferencia x)
La diferencia y desde el punto al centro del círculo es el círculo y-punto y1 (Diferencia y)
//Calcula la distancia desde el centro del círculo al punto (teorema de Pitágoras: la suma de los cuadrados del dos lados rectángulos = el cuadrado de la hipotenusa)
Distancia L = Math.sqrt (Diferencia x*Diferencia x + Diferencia y*Diferencia y);
// Calcular el ángulo horizontal de la línea desde el punto actual hasta el centro del círculo (3.14159 es pi)
Ángulo horizontal actual a = Math.atan(diferencia y/diferencia x)*180/3.14159;
// Calcula la coordenada x del siguiente punto
El ángulo horizontal del siguiente punto = ángulo horizontal actual a + Ángulo z;
x del siguiente punto = Matemáticas .cos(ángulo del siguiente punto)*distancia L;
y del siguiente punto = Math.sin(ángulo del siguiente punto)*distancia L;
Finalmente, la próxima vez que vuelvas a dibujar , cambie las coordenadas xey de este punto a las calculadas: se encontrarán la x del siguiente punto y la y del siguiente punto. Se gira el triángulo.
Estoy agotado. Dame puntos extra. Incluso si no hay tarifa por conocimiento, debe haber tarifa por trabajo duro.