Computação Gráfica e Processamento de Imagens. recorte ( clipping ) de : o segmentos de retas o polígonos o textos. Prof.

Documentos relacionados
Computação Gráfica e Processamento de Imagens. - mapeamento - visualização. Prof. Julio Arakaki

Algoritmos de Recorte em 2D

Instituto Tecnológico de Aeronáutica. Prof. Carlos Henrique Q. Forster Sala 121 IEC

Visualização 2D: - Transformação window to viewport - Clipping

O Problema de Visibilidade. Computação Gráfica Recorte. Onde Acontece? O que é Recorte? Renato Ferreira

Introdução ao Processamento e Síntese de imagens Recorte 2D

Introdução à Computação Gráfica Recorte. Claudio Esperança Paulo Roma Cavalcanti

Visualização 2D. Rasterização de primitivas 2D e Pipeline 2D. Soraia Raupp Musse

Pipeline Gráfico. Clipping (Recorte) Por que o recorte? INF 1366 Computação Gráfica Interativa. Clipping (Recorte)

Pipeline Gráfico Cluter & Durand, MIT

Pipeline de Visualização 2D

Rasterização de primitivas 2D e Pipeline 2D. Soraia Raupp Musse

RECORTE (CLIPPING) por janelas rectangulares

Recorte. Márcio Bueno Fonte: Material do Prof. Claudio Esperança e do Prof. Paulo Roma Cavalcanti

Recorte. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG

Aliasing Exemplo. Representação Vetorial x Matricial. Introdução ao Processamento e Síntese de imagens - Rasterização. Considerações Gerais

Pipeline de Visualização 3D

Prof. Fernando V. Paulovich 3 de maio de SCC Computação Gráca

Transformações de Visualização 2D: Clipping. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro

Aula 4: Clipping (Recorte)

Objetos definidos no seu próprio sistema de coordenadas

Recorte. Edward Angel, Cap. 7. Instituto Superior Técnico Computação Gráfica 2009/2010

Visualização 3D. Soraia Raupp Musse

Computação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda/Taguspark. 1º Exame 29 Junho de 2010

Prof. Dr. Leandro Alves Neves. Conceitos Fundamentais. Algoritmos de Conversão Matricial.

FCTUNIVERSIDADE NOVA DE LISBOA!

Computação Gráfica. Agostinho Brito. Departamento de Engenharia da Computação e Automação Universidade Federal do Rio Grande do Norte

Viewing 3D. SCC Computação Gráfica. Prof. Fernando V. Paulovich

Visualização. - Aula 4 -

Transformações 3D. Soraia Raupp Musse

Análise e Complexidade de Algoritmos

Ponto q está no polígono?

1º Teste de Computação Gráfica

Computação Gráfica - 12

Algoritmos de Rasterização e Recorte

Computação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark. Terceiro Teste 19 de Maio de 2012

Primitivos gráficos - algoritmos

The Graphics Pipeline

Revisão. Soraia Raupp Musse

Aula 7 - Representação e Descrição de Estruturas Bi-dimensionais. Prof. Adilson Gonzaga

Primitivos gráficos - algoritmos

Ponto em Polígono. António Leslie Bajuelos Departamento de Matemática Universidade de Aveiro

Transformações 3D. Soraia Raupp Musse

APOSTILA 3D (notas de aula)

Computação Gráfica. Rasterização. Aula 4. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro

GEOPROCESSAMENTO SIAD,

de Recta e Polígonos

Introdução à Computação Gráfica. Claudio Esperança Paulo Roma Cavalcanti

UFRGS - UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL DEPARTAMENTO DE DESIGN E EXPRESSÃO GRÁFICA COMPUTAÇÃO GRÁFICA 1 JÉFERSON DOUGLAS DE FAVERI

Computação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda / Taguspark. 1º Exame 6 de Junho de 2011

Neste capítulo, definimos o problema que estudamos e descrevemos os principais algoritmos

Recorte circular de cenas computacionais aplicado na separação de íris humana

COMPUTAÇÃO GRÁFICA E INTERFACES

Prof. Fernando V. Paulovich 3 de agosto de SCC Computação Gráca

Fundamentos da Computação Gráfica Lista de Exercícios Marcelo Gattass TeCGraf/Departamento de Informática/PUC-Rio 19jun2003

Discretização. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG

AULA 4. Atividade Complementar 10: Sistemas lineares 2x2 e sua interpretação geométrica 31

O mundo real é muito complexo para ser representado em sua totalidade, em qualquer sistema de informações.

Introdução à Computação Gráfica Visibilidade e Recorte

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 6. Projeções

CIC 111 Análise e Projeto de Algoritmos II

DIRETORIA DE PESQUISA E PÓS-GRADUAÇÃO PROJETO: TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO NO PROCESSO DE ENSINO E APRENDIZAGEM DE MATEMÁTICA

1 Para expressar um ponto intermediário em função dos pontos extremos, precisamos

Interval Trees, Priority Search Trees, Segment Trees. João Comba. Pesquisas intervalares sobre segmentos de reta

Adobe Illustrator Material elaborado por Camila de Melo e Rossano Silva 2015

1º Exame. Computação Gráfica

CG 2013/2014 Segundo Teste LEIC Alameda/Taguspark

Computação Gráfica Viewing

Algoritmos de Varrimento para Desenho de Primitivas 2D

1º Exame. Computação Gráfica

Esta opção é utilizada para desenhar círculos, arcos, elipses, e outros grupos curvilíneos.

Movimento de um Projétil

Algoritmos geométricos

Triangulação Mapeamento em Viewport Modelação Geométrica

Ambiente Integrado para Posicionamento em Operações Militares

Prof: Heni Mirna Cruz Santos

Instituto de Computação Bacharelado em Ciência da Computação Disciplina: Computação Gráfica Primeira lista de exercícios

BANCO DE EXERCÍCIOS - 24 HORAS

Prova Fundamentos Computação Gráfica

3D no OpenGL. Visualização e Transformações Perspectiva. Transformações do Modelview. Processo

Sumário. Traçado de Retas. Antialiasing e OpenGL. 1 Introdução. 2 Conversão Segmento de Reta. 3 Algoritmo DDA. 4 Algoritmo de Bresenham

Computação Gráfica - OpenGl 02

Interseção de Semiplanos

Imagem Vetorial x Imagem Matricial. Conversão Matricial de Primitivas Gráficas. Sistema de Coordenadas do Dispositivo. Problema

SISTEMAS DE INFORMAÇÕES GEOGRÁFICAS Aula 2. SIG- Eng. Cartográfica Prof. Luciene Delazari

ALGORITMOS RASTER PARA DESENHO DE. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

18/08/2015. Capítulo 1: Armazenamento de dados. Bits e padrões de Bit. Capítulo 1: Armazenamento de Dados

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto

Câmara Virtual. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 5 Apontamentos CG

Transformações 3D. Soraia Raupp Musse

Exame de 1ª Época Computação Gráfica

Remoção de Faces Traseiras Recorte

Instituto de Computação Bacharelado em Ciência da Computação Disciplina: Computação Gráfica Primeira lista de exercícios

Preenchimento de Polígonos

Tutorial QGIS Aula 10

Computação Gráfica. Prof. André Yoshimi Kusumoto

Geometria Computacional: Polígonos

Computação Gráfica. Prof. MSc André Yoshimi Kusumoto

Transcrição:

recorte ( clipping ) de : o segmentos de retas o polígonos o textos Prof. Julio Arakaki 2005 1

Recorte ( clipping ) Ponto Processo de visualização que leva em conta apenas o conteúdo da janela de desenho. Assumindo que a janela para recorte seja uma área retangular, um ponto (x,y) será desenhado numa área de tela se obedecer as seguintes inequações: xwmin <= x <= xwmax ywmin <= y <= ywmax onde, as bordas da janela podem ser uma janela de coordenadas globais ou as bordas de uma viewport. Retas (segmentos de retas) Para realizar o recorte de segmentos de retas, é necessário testar se o segmento esta totalmente fora ou totalmente dentro da área de recorte. Caso contrário, deve-se achar as intersecções do segmento com as bordas da janela de recorte. P9 P4 P2 P10 P2 P3 P1 P8 P1 P5 P6 P5 P6 P8 P7 P7 Antes do clipping Depois do clipping 2

Cohen-Sutherland line clipping É um dos mais antigos e populares algoritmos baseados em recorte de segmentos de reta. Todas as extremidades dos segmentos são codificadas através de um código binário de 4 dígitos, que identifica a localização do ponto em relação às bordas da área de recorte. Uma possível codificação poderia ser: 1001 1000 1010 (xwmax, ywmax) Onde: 0001 (xwmin, ywmin) 0000 0010 bit1: left bit2: right bit3: below bit4: above 0101 0100 0110 Se uma extremidade tem código 0101 então, este ponto esta à esquerda e abaixo da janela. Assim, para fazer o recorte em função de uma janela pré-estabelecida, deve -se seguir as seguintes regras: Os segmentos de reta cujas extremidades tem códigos 0000, estão totalmente dentro da área de recorte. Os segmentos de reta que possuem códigos das extremidades com 1 no mesmo bit, estão totalmente fora da área de recorte. Os segmentos que não são identificadas como totalmente dentro ou totalmente fora, deverão ser recortados de acordo com o algoritmo a seguir: 3

P2 P2 P2 P3 P1 P1 P4 Para os segmentos da figura, temos: 1. Verificar a posição relativa de P1 em função da janela (right, left, below ou above): abaixo da janela 2. Procurar a intersecção com a borda inferior da janela e definir P1 3. Verificar a posição de P2 em relação à janela: esquerda e acima da janela. Definir P2 e P2 através da intersecção com a borda esquerda e superior, respectivamente. 4. Armazenar segmento definido por P1 e P2. Cálculo dos pontos de intersecção das linhas com as bordas da janela: Seja um segmento de reta definido por: (x1, y1) e (x2, y2), o ponto de intersecção (x, y) é dado por: Para intersecção com as bordas verticais: y = y1 + m(x - x1), onde x pode valer xwmin ou xwmax. Para intersecção com as bordas horizontais: x = x1 + (y - y1)/m, onde y pode valer ywmin ou ywmax. Onde, 4

m = (y2-y2)/(x2-x1) Polígonos: Um polígono é formado por um conjunto de segmentos de retas interligados e formando uma área fechada. A utilização de algoritmos para recorte de polígonos, acarretará em uma série de segmentos não conectados como na figura abaixo. Desta maneira, os algoritmos para recorte de polígonos deverão recortar os segmentos de retas e também fechar as áreas formadas após o recorte. Incorreto Correto 5

Sutherland-Hodgeman polygon clipping V2 V2 V2 IN V2 Left Clipper Right Clipper botton Clipper Top Clipper V2, V2, V2, V2 OUT V2, V2 Este algoritmo, funciona bem para polígonos convexos. Para polígonos côncavos pode ocorrer a seguinte situação: Produz duas áreas conectadas. CORRETO 6

Este tipo de problema ocorre quando o polígono a ser recortado tem duas ou mais áreas separadas após o recorte. A solução para este problema, é a utilização de um algoritmo mais genérico. Weiler-Atherton Polygon Clipping V2 V4 V4 V6 V5 V5 Algoritmo: Seguir as bordas do polígono no sentido horário e aplicar as seguintes regras: Para um par de vértices outside to inside, segue-se a borda do polígono, armazenando-se o ponto de intersecção. Para um par de vértice inside to outside, segue-se a borda da janela. 7

clipping de textos Envoltória no texto Envoltória sobre cada caractere Sem envoltória Para texto vetorial, utiliza-se clipping de retas. Para texto matricial, verifica-se cada pixel da matriz de caractere em relação às bordas da janela. 8