Академический Документы
Профессиональный Документы
Культура Документы
Discretización
Primitivas Gráficas
• Puntos
Se definen por su posición y color.
• Segmentos de recta
Se definen por las coordenadas de sus extremos.
• Circunferencias
Se definen por las coordenadas del centro y el radio.
Incluyen arcos de circunferencia y elipses.
• Polígonos
Se definen con las coordenadas de sus vértices.
1
Técnicas de Discretización
Técnicas basadas en la ecuación diferencial:
DDA (Digital Diferential Analisis) evalúa la ecuación
diferencial de la primitiva a graficar en intervalos
discretos.
Discretización de rectas
(Scan Converting Lines)
dy ∆y y1 − y 0
m= = =
dx ∆x x1 − x 0
2
DDA Digital Differential Analizer
•Camina a lo largo del eje x desde X0 hasta X1.
yi = m * xi + B
y i + 1 = m * ( x i + 1) + B
Y simplificando:
y i +1 = y i + m
dy = y1 - y0;
dx = x1 - x0;
m = dy / dx;
y = y0;
3
Extensión por simetría
∆y < 0 A
∆x < 0 B
∆y
>1 C
∆x
Desventajas de DDA
4
Midpoint (Bresenham's) Algorithm
•No requiere función de redondeo.
y
•P •E
•D
10
5
Segmento de recta por
Bresenham
El error es la distancia entre el centro del pixel y el segmento de recta,
medido en dirección del eje y positivo del espacio de pantalla, o sea
hacia abajo.
Si el error en P es e, habra que actualizar el error para el siguiente
pixel como: x
1
Si se elige E y
• • m
e=e+m
Si se elige D
e = e + m-1 •
11
si es e > 0
entonces elegir D
sino elegir E
12
6
Segmento de recta por
Bresenham
∆y
Otra economía: e0 = m − 0 .5 = − 0 .5
∆x
Como se testea el error por cero, se puede multiplicar por 2∆x
sin alterar la inecuación, entonces queda:
Paso E
e0 = 2 ∆ y − ∆ x e = e + 2∆y
Paso D
e = e + 2∆y − 2∆x
Desde esta forma todas las operaciones son sumas y restas enteras
13