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

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

Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Objetos gráficos planares.

Apresentações semelhantes


Apresentação em tema: "Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Objetos gráficos planares."— Transcrição da apresentação:

1 Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro Conteúdo: - Objetos gráficos planares

2 Instituto de Computação - UFF 2 Objetos gráficos: conceitos O conceito de objeto gráfico é fundamental para a Computação Gráfica e áreas afins. Um objeto gráfico representa a geometria (forma) e os atributos (propriedades) de um objeto do mundo real.

3 Instituto de Computação - UFF 3 Objetos gráficos: conceitos Objeto gráfico 3D Objeto gráfico 2D

4 Instituto de Computação - UFF 4 Objetos gráficos: conceitos A área que lida com a modelagem de objetos gráficos é denominada Modelagem Geométrica. Sistemas gráficos são sistemas de software que processam, manipulam e visualizam objetos gráficos.

5 Instituto de Computação - UFF 5 Objetos gráficos: exemplos Curva no plano

6 Instituto de Computação - UFF 6 Objetos gráficos: exemplos Região do plano com atributo de cor

7 Instituto de Computação - UFF 7 Objetos gráficos: exemplos Imagem em tons de cinza (monocromática)

8 Instituto de Computação - UFF 8 Objetos gráficos :definições Um objeto gráfico é definido por um subconjunto S R m e uma função f: S R m R n.Um objeto gráfico é definido por um subconjunto S R m e uma função f: S R m R n. O conjunto S é denominado suporte geométrico de um objeto gráfico.O conjunto S é denominado suporte geométrico de um objeto gráfico. A função f é denominada função de atributos do objeto gráfico.A função f é denominada função de atributos do objeto gráfico.

9 Instituto de Computação - UFF 9 Objetos gráficos :definições Geometria - S R 3 Objeto gráfico – geometria + atributos Cor em canais vermelho (r), verde(g) e azul(b). f: S R 3 R 3 f(p)=(r,g,b) p S

10 Instituto de Computação - UFF 10 Objetos gráficos :definições A dimensão do objeto gráfico é dada pela dimensão do suporte geométrico.A dimensão do objeto gráfico é dada pela dimensão do suporte geométrico. Um objeto gráfico é planar se a dimensão do espaço ambiente é 2 e espacial se a dimensão é 3.Um objeto gráfico é planar se a dimensão do espaço ambiente é 2 e espacial se a dimensão é 3.

11 Instituto de Computação - UFF 11 Objetos gráficos planares: curvas São objetos gráficos unidimensionais.São objetos gráficos unidimensionais. Base para a descrição de formas em Computação Gráfica:Base para a descrição de formas em Computação Gráfica: –Simples: círculos, elipses, diagramas. –Complexas: aeronaves, navios, dutos.

12 Instituto de Computação - UFF 12 Objetos gráficos planares: curvas Aplicações:Aplicações: –Descrição de objetos sintéticos. –Modelagem e visualização de dados e fenômenos científicos. –Representação de trajetórias e animação.

13 Instituto de Computação - UFF 13 Objetos gráficos planares: curvas Podem estar definidas em um espaço bidimensional ou de maior dimensão:Podem estar definidas em um espaço bidimensional ou de maior dimensão: R2R2 R3R3 x y y x z

14 Instituto de Computação - UFF 14 Objetos gráficos planares: curvas planares Curva planar (simples): subconjunto c R 2 cujas vizinhanças em cada ponto tem características de um intervalo aberto (0,1) ou semi-aberto [0,1).Curva planar (simples): subconjunto c R 2 cujas vizinhanças em cada ponto tem características de um intervalo aberto (0,1) ou semi-aberto [0,1). A B p p A p Curva não simples (topologia da letra X)

15 Instituto de Computação - UFF 15 Objetos gráficos planares: curvas planares Uma curva planar segundo a definição é denominada curva topológica planar.Uma curva planar segundo a definição é denominada curva topológica planar. Curvas topológicas planares não possuem auto-interseção.Curvas topológicas planares não possuem auto-interseção. Uma curva planar fechada tem a topologia de um círculo.Uma curva planar fechada tem a topologia de um círculo.

16 Instituto de Computação - UFF 16 Objetos gráficos planares: representação de curvas Curvas podem ser aproximadas através de segmentos de retas.Curvas podem ser aproximadas através de segmentos de retas. Curvas mais complexas requerem formas mais eficientes de representação.Curvas mais complexas requerem formas mais eficientes de representação.

17 Instituto de Computação - UFF 17 Objetos gráficos planares: representação de curvas Uma alternativa consiste em representar curvas analiticamente através de equações.Uma alternativa consiste em representar curvas analiticamente através de equações. Temos duas formas clássicas de representação:Temos duas formas clássicas de representação: –Paramétrica. –Implícita.

18 Instituto de Computação - UFF 18 Objetos gráficos planares: curvas planares paramétricas A descrição paramétrica de uma curva planar é uma função :I R R 2 tal que (t)=(x(t),y(t)).A descrição paramétrica de uma curva planar é uma função :I R R 2 tal que (t)=(x(t),y(t)). t (t) (t)

19 Instituto de Computação - UFF 19 Objetos gráficos planares: curvas planares paramétricas Uma curva paramétrica pode ser vista como a trajetória de um ponto se inter- pretarmos o parâmetro t como tempo.Uma curva paramétrica pode ser vista como a trajetória de um ponto se inter- pretarmos o parâmetro t como tempo. O conjunto de pontos de uma equação paramétrica ( t ) é denominado traço.O conjunto de pontos de uma equação paramétrica ( t ) é denominado traço.

20 Instituto de Computação - UFF 20 Objetos gráficos planares: curvas planares paramétricas O traço de uma equação paramétrica nem sempre corresponde a uma curva topológica.O traço de uma equação paramétrica nem sempre corresponde a uma curva topológica. Existem várias parametrizações possíveis para uma curva.Existem várias parametrizações possíveis para uma curva.

21 Instituto de Computação - UFF 21 Objetos gráficos planares: curvas planares paramétricas - exemplos Círculo: ( cos ( t ), sen ( t )), onde t é o ângulo formado pelos pelo segmento Op e o eixo das abscissas.Círculo: ( cos ( t ), sen ( t )), onde t é o ângulo formado pelos pelo segmento Op e o eixo das abscissas. p O t sen(t) cos(t)

22 Instituto de Computação - UFF 22 Objetos gráficos planares: curvas planares paramétricas - exemplos Gráfico de uma funçãoGráfico de uma função –Seja uma função f : R R. O gráfico de f é o conjunto G ( f )={( x, f ( x )) ; x I } que define uma curva topológica. –A parametrização do gráfico de uma função é dada pela equação ( t )=( t, f ( t )). ( x, f ( x )= x 2 )

23 Instituto de Computação - UFF 23 Objetos gráficos planares: curvas planares paramétricas - exemplos Reta do plano (equação vetorial): ( t )= p+vt, onde p é um ponto do R 2, v um vetor do R 2 e t R.Reta do plano (equação vetorial): ( t )= p+vt, onde p é um ponto do R 2, v um vetor do R 2 e t R. v p

24 Instituto de Computação - UFF 24 Objetos gráficos planares: representação implícita de curvas planares A descrição implícita define uma curva como o conjunto de raízes de uma equação F ( x, y ) = 0.A descrição implícita define uma curva como o conjunto de raízes de uma equação F ( x, y ) = 0. 0 F(x,y)F(x,y)F(x,y)F(x,y)yx z F(x,y)F(x,y)F(x,y)F(x,y) z=0 F(x,y) = 0

25 Instituto de Computação - UFF 25 Objetos gráficos planares: representação implícita de curvas planares Seja F:U R 2 R uma função implícita que descreve uma curva.Seja F:U R 2 R uma função implícita que descreve uma curva. O suporte geométrico da curva é dada pelos conjunto de soluções da equação F(x,y) =0.O suporte geométrico da curva é dada pelos conjunto de soluções da equação F(x,y) =0.

26 Instituto de Computação - UFF 26 Objetos gráficos planares: representação implícita de curvas planares O conjunto de raízes de F(x,y)=0 é a imagem inversa do 0 e é indicada por F -1 (0) = {(x,y) R 2 | F(x,y)=0}.O conjunto de raízes de F(x,y)=0 é a imagem inversa do 0 e é indicada por F -1 (0) = {(x,y) R 2 | F(x,y)=0}. 0 yx z F(x,y)F(x,y)F(x,y)F(x,y) z=0 F -1 (0)

27 Instituto de Computação - UFF 27 Objetos gráficos planares: representação implícita de curvas planares Exemplos:Exemplos: –(Equação implícita da reta) ax+by+c=0, ab 0ax+by+c=0, ab 0 –(Equação implícita do círculo) x 2 +y 2 -r 2 = 0x 2 +y 2 -r 2 = 0

28 Instituto de Computação - UFF 28 Objetos gráficos planares: representação implícita de curvas planares Nem sempre a equação implícita define uma curva topológica.Nem sempre a equação implícita define uma curva topológica. Uma condição suficiente é o de que não haja pontos singulares. Ou seja, grad(F) 0, para todo ponto ( x 0, y 0 ) F -1 ( 0 ).Uma condição suficiente é o de que não haja pontos singulares. Ou seja, grad(F) 0, para todo ponto ( x 0, y 0 ) F -1 ( 0 ).

29 Instituto de Computação - UFF 29 Objetos gráficos planares: representação implícita de curvas planares F(x, y) = x 2 – y 2 – kF(x, y) = x 2 – y 2 – k grad F(x, y) = (2x, – 2y)grad F(x, y) = (2x, – 2y) (logo, grad F(x, y) = 0 x = y = 0 )(logo, grad F(x, y) = 0 x = y = 0 ) k = 1 : não há pontos singularesk = 1 : não há pontos singulares p x 2 -y 2 -1

30 Instituto de Computação - UFF 30 Objetos gráficos planares: representação implícita de curvas planares F(x, y) = x 2 – y 2 – kF(x, y) = x 2 – y 2 – k grad F(x, y) = (2x, – 2y)grad F(x, y) = (2x, – 2y) (logo, grad F(x, y) = 0 x = y = 0 )(logo, grad F(x, y) = 0 x = y = 0 ) k = 0: (0, 0) é um ponto singulark = 0: (0, 0) é um ponto singular p x 2 -y 2

31 Instituto de Computação - UFF 31 Objetos gráficos planares: regiões planas Correspondem a subconjuntos bidimensionais do plano.Correspondem a subconjuntos bidimensionais do plano.

32 Instituto de Computação - UFF 32 Objetos gráficos planares: objetos implícitos ou paramétricos – quando utilizar Depende do problema.Depende do problema. Consideraremos dois problemas fundamentais:Consideraremos dois problemas fundamentais: –Amostragem pontual –Classificação Ponto-Conjunto

33 Instituto de Computação - UFF 33 Objetos gráficos planares: objetos implícitos ou paramétricos – amostragem pontual Dado um objeto gráfico 2D com suporte geométrico S determinar um conjunto de pontos p 1, p 2,..., p n tais que p i S.Dado um objeto gráfico 2D com suporte geométrico S determinar um conjunto de pontos p 1, p 2,..., p n tais que p i S. p1p1 p2p2 p3p3 p4p4 p5p5 p6p6 p7p7 p8p8 p9p9

34 Instituto de Computação - UFF 34 Objetos gráficos planares: objetos implícitos ou paramétricos – amostragem pontual Objetos paramétricos – fácilObjetos paramétricos – fácil –Tomar amostras no espaço de parâmetros I e avaliar a função em tais amostras. –Tomar amostras no espaço de parâmetros I e avaliar a função γ(t) em tais amostras. t 1 = 0 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t 9 = 1 I p 1 = γ(t 1 )=γ(t 9 ) p 2 = γ(t 2 ) p 3 = γ(t 3 ) p 4 = γ(t 4 ) p 5 = γ(t 5 ) p 6 = γ(t 6 ) p 7 = γ(t 7 ) p 8 = γ(t 8 ) t8t8

35 Instituto de Computação - UFF 35 Objetos gráficos planares: objetos implícitos ou paramétricos – amostragem pontual Objetos implícitos – mais difícilObjetos implícitos – mais difícil –Necessário encontrar as raízes de f(x,y)=0. –As raízes podem consistir de um conjunto infinito sendo necessário tomar um subconjunto finito.

36 Instituto de Computação - UFF 36 Objetos gráficos planares: objetos implícitos ou paramétricos – classificação ponto-conjunto Classificação Ponto-Conjunto: Dado um ponto p R 2 e um objeto gráfico com suporte S, determinar se p S.Classificação Ponto-Conjunto: Dado um ponto p R 2 e um objeto gráfico com suporte S, determinar se p S. S p S ?

37 Instituto de Computação - UFF 37 Objetos gráficos planares: objetos implícitos ou paramétricos – classificação ponto-conjunto Objetos implícitos – simples.Objetos implícitos – simples. –Basta avaliar o sinal da função f(x,y) no ponto p=(x 0,y 0 ) S = f(x,y) = x 2 +y 2 -2=0 p 1 = (1,1) S, f(1,1) = 0 p 2 = (0,0) interior a S, f(0,0) < 0 p 3 = (0,2) exterior a S, f(0,2) > 0 p1p1 p3p3 p2p2

38 Instituto de Computação - UFF 38 Objetos gráficos planares: objetos implícitos ou paramétricos – classificação ponto-conjunto Objetos paramétricos – mais complicado.Objetos paramétricos – mais complicado. –Requer a verificação da existência de soluções para o sistema dado pelas equações x(t) = x 0 e y(t) = y 0. p = (1,1)

39 Instituto de Computação - UFF 39 Objetos gráficos planares: como especificar uma região planar A forma mais simples consiste em descrever a curva que delimita sua fronteira.A forma mais simples consiste em descrever a curva que delimita sua fronteira. Teorema de Jordan: Uma curva topológica fechada divide o plano em duas regiões abertas, uma limitada e a outra ilimitada. A fronteira entre as duas regiões é dada por.Teorema de Jordan: Uma curva topológica fechada divide o plano em duas regiões abertas, uma limitada e a outra ilimitada. A fronteira entre as duas regiões é dada por. Fronteira Fronteira Região ilimitada Região limitada

40 Instituto de Computação - UFF 40 Objetos gráficos planares: como especificar uma região planar Precisamos então:Precisamos então: 1.Especificar a fronteira da curva. 2.Especificar um método para determinar quais pontos pertencem a região interna ou externa da curva. A segunda parte é fácil de ser resolvida se a fronteira é uma curva implícita.A segunda parte é fácil de ser resolvida se a fronteira é uma curva implícita.

41 Instituto de Computação - UFF 41 Objetos gráficos planares: representação de curvas e regiões Os objetos gráficos definidos no universo matemático precisam ser representados discretamente.Os objetos gráficos definidos no universo matemático precisam ser representados discretamente. A representação, em geral, apresenta uma versão aproximada dos objetos gráficos definidos matematicamente.A representação, em geral, apresenta uma versão aproximada dos objetos gráficos definidos matematicamente.

42 Instituto de Computação - UFF 42 Objetos gráficos planares: representação de curvas e regiões A estratégia utilizada se baseia em :A estratégia utilizada se baseia em : –O dividir o suporte geométrico do objeto gráfico ou o espaço onde ele está inserido. –Obter uma representação simples em cada elemento da subdivisão.

43 Instituto de Computação - UFF 43 Objetos gráficos planares: representação de curvas e regiões Assim obtemos duas formas de representação:Assim obtemos duas formas de representação: –Decomposição intrínseca ( o suporte geométrico é subdividido) ( o suporte geométrico é subdividido) –Decomposição espacial ( o espaço onde o suporte está mergulhado é subdividido). ( o espaço onde o suporte está mergulhado é subdividido).

44 Instituto de Computação - UFF 44 Objetos gráficos planares: representação por decomposição intrínseca Neste caso o suporte geométrico é subdividido.Neste caso o suporte geométrico é subdividido. Cada parte da subdivisão é representada por um elemento mais simples.Cada parte da subdivisão é representada por um elemento mais simples. A representação por elementos lineares é uma das mais utilizadas.A representação por elementos lineares é uma das mais utilizadas.

45 Instituto de Computação - UFF 45 Objetos gráficos planares: representação por decomposição espacial O modo mais comum : baseado na representação matricial.O modo mais comum : baseado na representação matricial. Objetivo: representar a geometria do objeto através de um conjunto de retângulos.Objetivo: representar a geometria do objeto através de um conjunto de retângulos. Curva Região

46 Instituto de Computação - UFF 46 Objetos gráficos planares: representação por decomposição espacial Podemos especificar cada célula de dois modos:Podemos especificar cada célula de dois modos: –Pelas coordenadas de um dos seus vértices. –Pelo centróide. Os centróides das células definem um outro reticulado: o reticulado dual.Os centróides das células definem um outro reticulado: o reticulado dual. Centróides Reticulado dual

47 Instituto de Computação - UFF 47 Objetos gráficos planares: representação linear por partes Neste tipo de representação decompomos o objeto em elementos lineares.Neste tipo de representação decompomos o objeto em elementos lineares. Exemplos:Exemplos: –Curva representada por uma curva poligonal. –Região do plano representada por uma região poligonal 1 ou especificada por uma triangulação. 1 delimitada por uma curva poligonal

48 Instituto de Computação - UFF 48 Objetos gráficos planares: representação de curvas – curvas poligonais Seja p 1, p 2,..., p n um conjunto de pontos distintos do plano.Seja p 1, p 2,..., p n um conjunto de pontos distintos do plano. Uma curva poligonal é definida pelo conjunto de segmentos p 1 p 2, p 2 p 3,..., p n-1 p n.Uma curva poligonal é definida pelo conjunto de segmentos p 1 p 2, p 2 p 3,..., p n-1 p n. Os pontos p i são denominados vértices da curva poligonal os segmentos p i p i+1 definem as arestas da curva.Os pontos p i são denominados vértices da curva poligonal os segmentos p i p i+1 definem as arestas da curva. p1p1p1p1 pipipipi P i+1

49 Instituto de Computação - UFF 49 Objetos gráficos planares: representação de curvas – curvas poligonais Curvas poligonais são muito utilizadas por dois motivos:Curvas poligonais são muito utilizadas por dois motivos: –São fáceis de se especificar e representar. –Aproximam uma grande variedade de curvas. ε

50 Instituto de Computação - UFF 50 Objetos gráficos planares: representação de regiões – triangulações 2D Triangulação de uma região do plano: coleção T = {T i } de triângulos tal que:Triangulação de uma região do plano: coleção T = {T i } de triângulos tal que: para dois triângulos distintos T i e T j em T, com T i T j temos:para dois triângulos distintos T i e T j em T, com T i T j temos: –T i T j é um vértice em comum ou, –T i T j é uma aresta em comum. Triangulações fornecem uma solução tanto para o problema de representação quanto de reconstrução.Triangulações fornecem uma solução tanto para o problema de representação quanto de reconstrução.

51 Instituto de Computação - UFF 51 Objetos gráficos planares: representação de regiões – triangulações 2D Exemplo de triangulação:Exemplo de triangulação: Contra-exemplos:Contra-exemplos:

52 Instituto de Computação - UFF 52 Objetos gráficos planares: Poligonização Representação da curva (região) através de sua decomposição em segmentos (polígonos).Representação da curva (região) através de sua decomposição em segmentos (polígonos). Os métodos de poligonização dependem da descrição do objeto gráfico: paramétrica ou implícita.Os métodos de poligonização dependem da descrição do objeto gráfico: paramétrica ou implícita.

53 Instituto de Computação - UFF 53 Objetos gráficos planares: Poligonização de curvas paramétricas O método uniforme é o método mais simples para poligonizar uma curva paramétrica.O método uniforme é o método mais simples para poligonizar uma curva paramétrica. Seja uma curva (t) definida em um intervalo I=[a,b].Seja uma curva (t) definida em um intervalo I=[a,b]. 1.Obtemos uma partição uniforme a=t 0

54 Instituto de Computação - UFF 54 Objetos gráficos planares: Poligonização de curvas paramétricas O método uniforme é o método mais simples para poligonizar uma curva paramétrica.O método uniforme é o método mais simples para poligonizar uma curva paramétrica. t 1 = 0 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t 8 = 1 I p 1 = γ(t 1 ) p 2 = γ(t 2 ) p 3 = γ(t 3 ) p 4 = γ(t 4 ) p 5 = γ(t 5 ) p 6 = γ(t 6 ) p 7 = γ(t 7 ) p 8 = γ(t 8 )

55 Instituto de Computação - UFF 55 Objetos gráficos planares: Poligonização de curvas paramétricas Observe que é importante estruturar a seqüência de pontos de forma que a topologia original do objeto seja preservada.Observe que é importante estruturar a seqüência de pontos de forma que a topologia original do objeto seja preservada. Esta estruturação é realizada ordenando-se os pontos da seqüência de acordo com a ordem das amostras tomadas do intervalo.Esta estruturação é realizada ordenando-se os pontos da seqüência de acordo com a ordem das amostras tomadas do intervalo. A reconstrução então envolve um processo de amostragem e estruturação (ordenação).A reconstrução então envolve um processo de amostragem e estruturação (ordenação).

56 Instituto de Computação - UFF 56 Objetos gráficos planares: Poligonização de curvas implícitas Para poligonizar uma curva definida implicitamente por uma função F:U R 2 R devemos tomar amostras do conjunto F -1 (0).Para poligonizar uma curva definida implicitamente por uma função F:U R 2 R devemos tomar amostras do conjunto F -1 (0). Além disso, é necessário fornecer uma estruturação adequada às amostras tomadas.Além disso, é necessário fornecer uma estruturação adequada às amostras tomadas.

57 Instituto de Computação - UFF 57 Objetos gráficos planares: Poligonização de curvas implícitas Solução:Solução: 1.Determinar uma triangulação do domínio de F. 2.Aproximar F em cada triângulo por uma função linear F. 3.Solucionar F(x,y)=0 em cada triângulo. A solução é em geral um segmento de reta. 4.A estruturação das amostras é induzida pela estrutura da triangulação subjacente.

58 Instituto de Computação - UFF 58 Objetos gráficos planares: Poligonização de curvas implícitas Determinamos uma triangulação do domínio de F.Determinamos uma triangulação do domínio de F.

59 Instituto de Computação - UFF 59 Objetos gráficos planares: Poligonização de curvas implícitas Em cada triângulo calculamos os valores F( 1 ), F( 2 ), F( 3 ).Em cada triângulo calculamos os valores F( v 1 ), F( v 2 ), F( v 3 ). v1v1 v2v2 v3v3 v3v3 v2v2 v1v1 F(1)F(v1)F(1)F(v1) F(3)F(v3)F(3)F(v3) F(2)F(v2)F(2)F(v2)

60 Instituto de Computação - UFF 60 Objetos gráficos planares: Poligonização de curvas implícitas Se os sinais nos vértices forem todos iguais, consideramos que a curva não intersecta o triângulo. v3v3 v2v2 v1v1 v2v2 v3v F(1)F(v1)F(1)F(v1) F(3)F(v3)F(3)F(v3) F(2)F(v2)F(2)F(v2) v1v1

61 Instituto de Computação - UFF 61 Objetos gráficos planares: Poligonização de curvas implícitas Senão, estimamos por interpolação linear a interseção com cada lado em que há variação de sinal e obtemos aproximação da curva. v1v1 v2v2 v3v3 v3v3 v2v2 v1v F(1)F(v1)F(1)F(v1) F(3)F(v3)F(3)F(v3) F(2)F(v2)F(2)F(v2)

62 Instituto de Computação - UFF 62 Objetos gráficos planares: Poligonização de curvas implícitas Resultado: + + -


Carregar ppt "Instituto de Computação - UFF 1 Computação Gráfica I Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Objetos gráficos planares."

Apresentações semelhantes


Anúncios Google