2.4.2 Método Directo

Se podría utilizar la ecuación de Pitágoras en coordenadas cartesianas ((x - xc)2 + (y - yc)2 = r2) para calcular la posición de los puntos de una circunferencia pasando a lo largo del eje de las x en pasos unitarios de xc -r a xc + r y calcular los valores correspondientes de y en cada posición como

y = y ± √(r2 - (xc- x))

No obstante, éste no es el mejor método para generar una circunferencia. Un problema con este planteamiento es que implica cálculos considerables en cada paso. Por otro lado, el espacio entre las posiciones de pixel trazadas no es uniforme. Se podría ajustar el espacio al intercambiar x y y (pasar por los valores de y y calcular los valores de x) siempre que el valor absoluto de la pendiente de la circunferencia sea mayor que 1. Pero esto sólo incrementa el cálculo el procesamiento que el algoritmo requiere.

Otra manera de eliminar el espacio irregular consiste en calcular los puntos a lo largo de la frontera circular utilizando las coordenadas polares r y θ. Al expresar la ecuación de la circunferencia en forma polar paramétrica, se obtiene el siguiente par de ecuaciones:

x = xc + r cosθ

y = yc + r cosθ

Cuando un despliegue se genere con estas ecuaciones utilizando un tamaño de paso angular fijo, una circunferencia se traza con puntos equidistantes a lo largo de la misma. El tamaño de paso seleccionado para θ depende de la aplicación, así como del dispositivo de despliegue. Las separaciones angulares más grandes a lo largo de la circunferencia se pueden unir con segmentos de línea recta a fin de aproximarse a la trayectoria circular. En el caso de una frontera más continua, se puede establecer el tamaño de paso como 1/r. Esto hace que se tracen posiciones de pixel que están aproximadamente una unidad aparte.

El método directo utiliza:

  •   Una función no lineal

  •   Cálculo de punto flotante,

  •   Una función de redondeo.

    Presenta saltos en los  valores para y   (en coordenadas cartesianas).

 

 

Volver arriba