sábado, 20 de septiembre de 2014

Representación y Trazado de pologonos

Polígono


Un polígono es una figura bidimensional compuesta por una secuencia finita de segmentos rectos consecutivos que cierran una región en el espacio. Estos segmentos son llamados lados, y los puntos en que se intersectan se llaman vértices. El interior del polígono es llamado área.





Polígono
(lados rectos)
No es un polígono
(tiene una curva)

No
 es un polígono
(abierto, no cerrado)

Tipos de polígonos


·                     Simple o complejo

Un polígono simple sólo tiene un borde que no se cruza con él mismo. Uno complejo se intersecta consigo mismo.



Polígono simple
(este es un pentágono)
Polígono complejo
(también es un pentágono)

·                     Cóncavo o convexo

Un polígono convexo no tiene ángulos que apunten hacia dentro. En concreto, los ángulos internos no son mayores que 180°.

Si hay algún ángulo interno mayor que 180° entonces es cóncavo.


Convexo
Cóncavo
·                     Regular o irregular

Si todos los ángulos son iguales y los lados también, es regular, si no es irregular


Regular
Irregular


Analizador Diferencial Digital



Una implementación de hardware o software de un Analizador Diferencial Digital (DDA) se usa para la interpolación lineal de variables sobre un intervalo entre un punto de comienzo y un punto de fin. Los DDAs se usan para rastreo de lineas, triangulos y polígonos. En la implementación mas simple del algoritmo DDA interpola valores en intervalo [(xinicio, yinicio), (xfin, yfin)] por calculo para cada xi las ecuaciones xi = xi−1+1, yi = yi−1 + Δy/Δx, donde Δx = xfin − xinicio y Δy = yfin − yinicio.

Si m>=0 (pendiente positiva)
  Si m<=1
    de izquierda a derecha
       * muestreo de x (Δx =1)
       * yk+1 = redondeo(yk + m) k=1,2,...
    de derecha a izquierda
       * muestreo de x (Δx =-1)
       * yk+1 = redondeo(yk - m) k=1,2,...
  Si m > 1 (para evitar la aparición de agujeros)
    de izquierda a derecha
       * muestreo de y (Δy =1)
       * xk+1 = redondeo(xk + 1/m) k=1,2,...
    de derecha a izquierda
       * muestreo de y (Δy =-1)
       * xk+1 = redondeo(xk - m) k=1,2,...
Si m<0 (pendiente negativa)
  Si |m|<1
    de izquierda a derecha
       * muestreo de x (Δx =1)
       * yk+1 = redondeo(yk + m) k=1,2,...
    de derecha a izquierda
       * muestreo de x (Δx =-1)
       * yk+1 = redondeo(yk - m) k=1,2,...
  Si |m| > 1 (para evitar la aparición de agujeros)
    de izquierda a derecha
       * muestreo de y (Δy =1)
       * xk+1 = redondeo(xk + 1/m) k=1,2,...
    de derecha a izquierda
       * muestreo de y (Δy =-1)
       * xk+1 = redondeo(xk - m) k=1,2,...

CONCLUSIÓN:

Vemos que es algo complejo la creación o manejo de estas figuras para ello existe un programa que nos facilita el manejo de estos, de nuevo OpenGL, pero siempre y cuando los polígonos sean simples y convexos.
BIBLIOGRAFIA:

http://unidadiigraficacion.blogspot.mx/2013/09/22-representacion-y-trazo-de-poligonos.html



No hay comentarios:

Publicar un comentario