Ecuación para calcular por, y en la circunferencia
2 respuestas

(x-a)*(x-a)+(y-b)*(y-b)=R*R
En esta ecuación los parámetros a y b son las coordenadas del centro, y R es el radio de la circunferencia. Por ejemplo:
x*x+(y-2)*(y-2)=4
Aquí tenemos una circunferencia de radio 2 y con centro en el punto (0,2).
Espero que te sirva la respuesta y si algo no te ha quedado claro no dudes en preguntármelo.
Thorin

Atentamente. alelanve

En ese caso las coordenadas vendrían dadas por las siguientes ecuaciones:
x=RcosAlfa
y=RsenAlfa
Con esto puedes dar valores al ángulo alfa con la frecuencia que tú quieras para que gire más o menos deprisa. Conseguirás un punto a la distancia R del centro que gira alrededor de dicho centro.
Para conseguir la línea del barrido supongo que valdrá dando diferentes valores de R para el mismo ángulo.
Si necesitas algo más me preguntas otra vez.

alelanve

Si no es así, me lo dices de nuevo que intento otro procedimiento.
Thorin


Entiendo que te de problemas por el motivo de los cuadrantes. El problema es que, por ejemplo, 60º y 300º tienen el mismo coseno y si luego calculas el arcocoseno solo te da uno de los dos ángulos (en este caso te daría 60).
Para solucionarlo haz lo siguiente en función de la coordenada Y:
* Si Y es positivo: toma el angulo que te dé la operación.
* Si Y es negativo: haces 360 menos el angulo que te dé la operación y te dará el angulo que buscas.
Si te da errores me dices.
Thorin.



estamos en contacto [email protected]
- Compartir respuesta


Para trazar el contorno del radar, luego de aquí con el mismo código podes construir la línea que va rotando en la pantalla del radar, solo tienes que meter el código dentro de un Timer
ConvRAD=0.01745329
altCompas= Radio del circulo del Radar
LineRadio.X1 = X1Form 'Ubica la x1 de la linea en el centro del canvas
LineRadio.Y1 = Y1Form 'Ubica la y1 de la linea en el centro del canvas
'Trazamos la linea desde el centro
LineRadio.Y2 = (Sin(Angulo * ConvRAD) * altCompas) + LineRadio.Y1
LineRadio.X2 = (Cos(Angulo * ConvRAD) * altCompas) + LineRadio.X1
TraceCX1 = LineRadio.X2
TraceCY1 = LineRadio.Y2
Angulo = Angulo + Cangulo 'Cangulo debe tener el valor de incremento
LineRadio.Y2 = (Sin(Angulo * ConvRAD) * altCompas) + LineRadio.Y1
LineRadio.X2 = (Cos(Angulo * ConvRAD) * altCompas) + LineRadio.X1
LineRadio.Visible = True
PicTracePolarSol. Line (TraceCX1, TraceCY1)-(LineRadio. X2, LineRadio. Y2)
Guillenet74
- Compartir respuesta
