A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Rasterização, Anti-aliasing e Preenchimento

Apresentações semelhantes


Apresentação em tema: "Rasterização, Anti-aliasing e Preenchimento"— Transcrição da apresentação:

1 Rasterização, Anti-aliasing e Preenchimento
Alex F. V. Machado

2 Rasterização: Revisão
O que é rasterização? Que métricas podemos usar para definir se um algoritmo de rasterização de seguimentos de reta é melhor do que um outro? Quais foram os algorimos de rasterização de seguimentos de retas estudados? Aplique o algoritmo de Bresenham para unir os pontos das seguintes imagens, posteriormente defina sua forma de aplicação.

3 Amostragem, Aliasing, e Anti-aliasing
A linha, que no universo físico é contínua, é amostrada em uma matriz finita 2D de pixels. Tal discretização pode causar distorções visuais como cisalhamento ou efeito de escada. Essas distorções são chamadas de aliasing. Para reduzir o problema de aliasing, usa-se uma técnica chamada anti-aliasing. A técnica consiste em uma superamostragem (uma vez que o aliasing é causada por uma subamostragem)

4 SUPERAMOSTRAGEM Superamostragem = Amostrar um objeto numa resolução maior do que será reconstruído. dividir os pixels em sub-pixels (i.e. 9), aplicar o algoritmo de Bresenham nesses sub-pixels contar o número de sub-pixels “acesos” por pixel 2 3 1 O pixel será aceso com intensidade proporcional ao número de sub-pixels acesos.

5 Exemplo de Anti-aliasing em Linhas
Observe que quando a cor de fundo não é preto, o anti-aliasing deve fazer uma composição da intensidade com a cor de fundo. Anti-aliasing é necessário não só para linhas, mas também para polígonos e texturas (o que já é mais complicado)

6 Rasterização de Círculos
Mesma idéia de avaliar incrementalmente uma função que classifica o ponto médio entre um pixel e outro com relação a uma função implícita Apenas um octante precisa ser avaliado, os demais são simétricos Para cada pixel computado, oito são pintados Derivação um pouco mais difícil que a da reta Outras cônicas podem também ser rasterizadas de forma semelhante E V1 V0 C(x,y) = 0 SE V1’ x y

7 Preenchimento de regiões
Fill methods: 2 algoritmos Boundary Fill Flood Fill (para bordas multicoloridas) Atuam ao nível do pixel Interessantes para aplicações do tipo painting Scanline-Fill Approaches Atuam no nível dos polígonos Melhor performance

8 Fill Methods Algoritmos não tratam objetos isoladamente
Dá-se um ponto interior a figura e prossegue-se até a borda Similar a função existente em aplicativos do tipo paintbrush Denominados seed-fill (preenchimento a partir da semente) Dado um pixel qualquer, quais são seus vizinhos? 4-connected 8-connected

9 Fill Methods Inicia com um ponto dentro de uma região
Pinta o interior até a próxima aresta Deve ser definida a cor da aresta Pinta regiões 4-connected ou 8-connected Regiões 4-connected são mais rápidas, mas podem apresentar problemas

10 Fill Methods Algoritmo recursivo
Preenche vizinhos da semente que atendem ao critério Aplica o algoritmo recursivamente tomando esses vizinhos como sementes Termina quando nenhum vizinho atende o critério

11 Algoritmo de Preenchimento
Fill Methods Algoritmo de Preenchimento Pseudo-código: Procedure FloodFill (x, y, cor, novaCor) Se pixel (x, y) = cor então pixel (x, y) ← novaCor FloodFill (x + 1, y, cor , novaCor) FloodFill (x, y + 1, cor , novaCor) FloodFill (x - 1, y, cor , novaCor) FloodFill (x, y - 1, cor , novaCor) Uso abusivo de recursão pode ser contornado preenchendo intervalos horizontais iterativamente

12 Algoritmos scanline-fill (Rasterização de Polígonos)
Operação fundamental em computação gráfica Polígono é dado por uma lista de vértices Último vértice = primeiro vértice Usar conceito de paridade

13 Algoritmos scanline-fill (Rasterização de Polígonos)
y Algoritmo clássico usa técnica de varredura Arestas são ordenadas Chave primária: y mínimo Chave secundária: x mín. Exemplo: (e,d,a,b,c) Linha de varredura perpendicular ao eixo y percorre o polígono (desde ymin até ymax) Intervalos horizontais entre pares de arestas são preenchidos ymax ymin a b c d e x


Carregar ppt "Rasterização, Anti-aliasing e Preenchimento"

Apresentações semelhantes


Anúncios Google