Trazo de Primitivas Geométricas III

Anuncio
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Trazo de Primitivas Geométricas III
Hugo Franco, PhD
7 de marzo de 2011
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Contenido
1
Tipos de atributos de primitivas geométricas
2
Dibujo de atributos de contorno
3
Dibujo de Atributos de Relleno
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas
geométricas
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Atributos de primitivas geométricas
Relleno (brocha)
Color
Pluma
Patrón geométrico
Ancho
Color
Relleno de Patrón
Estilo
Relleno de Textura
Estática
Dinámica (Parametrizada)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Dibujo de Atributos de
Contorno
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Color de la pluma
Al momento de activar los píxeles se debe tener en cuenta el color
asignado a la pluma con la que se traza un contorno...
Cuando se usa antialiasing, se debe asignar una función de mezcla de
la intensidad en relación con el fondo sobre el que se está trazando la
primitiva (Implementación del color-buer)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Dibujo de contornos de ancho mayor a 1 píxel
Se usa la discretización de la línea
como trazo de rastreo y se activan
píxeles aledaños al píxel detectado
por el algoritmo
Dependiendo de la pendiente de la
línea, se escogen vecinos del píxel
detectado en la dirección vertical
(abajo) u horizontal (derecha)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Plumas con forma y grosor
Cuando se asume que la pluma
tiene forma (grosor mayor a 1
píxel con cabezales y empalmes
especícos) se requiere otra
estrategia para activar los píxeles
contenidos en el trazo
Optimización: evaluar los píxeles
vecinos al detectado por el trazo de
rastreo sólo en una dirección
(requiere análisis de condiciones en
los extremos)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Implementación de plumas de forma variable
Dirección
de trazo
Ejemplo de máscara rectangular
Estrategia:
Denir las vecindades de manera que
aproximen la forma de la pluma
seleccionada: máscaras
Activar vecindades a cada píxel
detectado por el algoritmo de
discretización de la recta
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Estilo de pluma
Añadiendo complejidad al elemento
de estructura pueden crearse
objetos complejos basados en
trayectorias
No son óptimos para dibujo en
tiempo real... no suelen ser de
utilidad para aplicaciones 3D
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Algoritmo de trazo de primitivas geométricas con plumas
arbitrarias
Recorrer el trayecto que une los dos
extremos de la primitiva geométrica
(segmento o región simétrica) con el
Dirección
de trazo
criterio de elección de píxeles
Detectar el píxel sobre la primitiva en la
discretización
Ubicar la máscara de activación sobre el
píxel detectado
Activar los píxeles de la vecindad que se
superponen con la máscara de activación
Permiten simular discontinuidades (líneas
punteadas)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Simulación de efectos de pluma en el dibujo
Difuminado: cambia densidad de puntos activados
Aerógrafos
Sprays
Presión: cambia grosor e intensidad
Especialmente útil con tabletas especializadas de dibujo
Mezcla: combina mediante modelos de interpolación los colores de
fondo previos al dibujo con el color de la pluma en uso
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Antialiasing/continuidad basada en plumas
Estrategia: usar máscaras que ponderen la
intensidad del color de la pluma a cada
elemento de la vecindad del píxel
detectado
Suelen usarse modelos matemáticos de
variación de la intensidad
Ejemplo: Gaussiana 2D
−
f (x, y) = Ae
x2 +y 2
2σ 2
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Atributos de Relleno
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Estilos de relleno
Primitivas básicas sin relleno
(Sketch, Wireframes)
Relleno plano (caras de objetos
sólidos con materiales planos)
Rellenos de patrón y textura
(emulan irregularidades o mosaicos
repetidos en la supercie de un
objeto según materiales complejos)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Algoritmo de la línea de barrido
Scanline
El algoritmo de relleno más simple consiste
en activar con el color del relleno las
áreas delimitadas por los contornos de la
Línea de rastreo
primitiva mediante barrido horizontal
Un píxel en una línea de barrido está
dentro de una primitiva, y debe ser
activado, si se comprende entre los píxeles
de corte entre la línea de barrido y un
contorno izquierdo y derecho de la
primitiva
Las intensidades pueden ser constantes
(rasterización 2D) o variables (rendering
3D de supercies)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Algoritmo relleno de ujo
Algoritmo recursivo para activar progresivamente
píxeles vecinos a cada píxel evaluado
Se introduce una semilla conocida como punto
interior del polígono y se marca como punto de
relleno
Se los evalúan píxeles vecinos al píxel de relleno,
si no pertenecen al contorno de la primitiva y no
están previamente marcados...
Se establecen como puntos de relleno
Se invoca de nuevo el método, con cada píxel
vecino como de relleno como semillas
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Algoritmos basados en criterios de pertenencia
Se pueden usar criterios
vectoriales
Algoritmo de vuelta impar
Si número de giros que
dan las aristas del
polígono en torno a un
punto en el sentido
horario es par, el punto es
exterior, de lo contrario, el
punto es interior
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Implementación de patrones
Similarmente a las máscaras
de forma de pluma, se
pueden modicar los
algoritmos de relleno para
incorporar patrones
Los patrones se crean
mediante la aplicación
iterativa de máscaras de
relleno en la supercie de la
primitiva gráca
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Tipos de atributos de primitivas geométricas
Dibujo de atributos de contorno
Dibujo de Atributos de Relleno
Texturas
Por forma de generación se clasican en:
Estáticas
Dinámicas
Por implementación
Plana (2D)
Proyectada (requiere transformación del dominio de la textura al
dominio de la proyección vía transformaciones tridimensionales)
Hugo Franco, PhD
Trazo de Primitivas Geométricas III
Descargar