Todo parecía tan sencillo hasta que tuve que programarlo realmente.Encontrar punto en Circle en Android
Lo que tengo
he subido una imagen para explicarlo mejor.
que tienen un círculo y sé
- es el radio
- coordenadas del centro de
- coordenadas iniciales de cada botón (los círculos rojos).
Quiero ser capaz, cuando girar la imagen círculo gris, con 10 grados, para el cálculo de los botones rojos nuevas coordenadas (X1Y1, x2y2).
Esto no debería ser difícil de lograr para alguien que sabe matemáticas, pero no pude encontrar una solución adecuada. También busqué por aquí y no pude encontrar una solución funcional. Cualquier ayuda es muy apreciada. Gracias
La solución de trabajo, como Felice que a continuación es:
-primero cuidar de ángulo de giro, en cada REDIBUJA simplemente se incrementará
angle = angle+mainRotationAngle;
float x = (float) (center.X + Math.cos(angle*Math.PI/180F) * radius
float y = (float) (center.Y + Math.sin(angle*Math.PI/180F) * radius
button.setX(x);
button.setY(y);
Usted ha hecho mi día Felice. Muchas gracias por su ayuda. He publicado el código de Android en funcionamiento en la publicación de la pregunta. – Alin
@Alin de nada :) –
En realidad, después de probar esto un poco más, los botones se vuelven locos. Mientras deslizo el círculo, después de un rato los botones ya no están en la misma línea. Depuración para ver de qué se trata. ¿Alguna idea mientras tanto? En caso de que gire el círculo en la otra dirección (no en el sentido de las agujas del reloj) ¿cambia la fórmula? – Alin