instituto de computação - uff 1 computação gráfica i professor: anselmo montenegro anselmo...

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

Upload: internet

Post on 16-Apr-2015

108 views

Category:

Documents


0 download

TRANSCRIPT

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

1

Instituto de Computação - UFF

Computação Gráfica IComputação Gráfica IProfessor:

Anselmo Montenegrowww.ic.uff.br/~anselmo

Conteúdo:

- Objetos gráficos planares

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

2

Instituto de Computação - UFF

Objetos gráficosObjetos gráficos: conceitos: 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.

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

3

Instituto de Computação - UFF

Objetos gráficosObjetos gráficos: conceitos: conceitos

Objeto gráfico 3D

Objeto gráfico 2D

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

4

Instituto de Computação - UFF

Objetos gráficosObjetos gráficos: conceitos: 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.

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

5

Instituto de Computação - UFF

Objetos gráficosObjetos gráficos: exemplos: exemplos

Curva no plano

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

6

Instituto de Computação - UFF

Objetos gráficosObjetos gráficos: exemplos: exemplos

Região do plano com atributo de cor

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

7

Instituto de Computação - UFF

Objetos gráficosObjetos gráficos: exemplos: exemplos

Imagem em tons de cinza (monocromática)

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

8

Instituto de Computação - UFF

Objetos gráficos Objetos gráficos ::definiçõesdefinições

• Um objeto gráfico é definido por um Um objeto gráfico é definido por um subconjuntosubconjunto SSRRmm e uma e uma funçãofunção ff:: S SRRm m RRnn..

• O conjunto O conjunto SS é denominado é denominado suporte suporte geométricogeométrico de um objeto gráfico. de um objeto gráfico.

• A função A função ff é denominada é denominada função de função de atributosatributos do objeto gráfico. do objeto gráfico.

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

9

Instituto de Computação - UFF

Objetos gráficos Objetos gráficos ::definiçõesdefinições

Geometria - Geometria - SSRR33 Objeto gráfico – geometria + Objeto gráfico – geometria + atributosatributos

Cor em canais vermelho (r), verde(g) e azul(b).

ff: : SSRR33 RR33

ff((pp)=()=(rr,,gg,,bb))

pS

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

10

Instituto de Computação - UFF

Objetos gráficos Objetos gráficos ::definições definições

• A A dimensãodimensão do objeto gráfico é dada pela do objeto gráfico é dada pela dimensão do suporte geométrico.dimensão do suporte geométrico.

• Um objeto gráfico é Um objeto gráfico é planarplanar se a dimensão do se a dimensão do espaço ambienteespaço ambiente é 2 e é 2 e espacialespacial se a se a dimensão é dimensão é 3. 3.

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

11

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas

• São objetos gráficos São objetos gráficos unidimensionaisunidimensionais..

• Base para a descrição de formas em Base para a descrição de formas em Computação Gráfica:Computação Gráfica:

– Simples: Simples: círculoscírculos, , elipseselipses,, diagramas diagramas..

– Complexas: Complexas: aeronavesaeronaves, , naviosnavios, , dutosdutos..

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

12

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvascurvas

• Aplicações:Aplicações:

– Descrição de Descrição de objetos sintéticosobjetos sintéticos..

– Modelagem e visualizaçãoModelagem e visualização de dados e fenômenos de dados e fenômenos científicos.científicos.

– Representação de Representação de trajetórias e animaçãotrajetórias e animação..

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

13

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvascurvas

• Podem estar definidas em um espaço Podem estar definidas em um espaço bidimensional ou de maior dimensão:bidimensional ou de maior dimensão:

R2 R3

x

y y

x

z

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

14

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planaresplanares

• Curva planar (simples):Curva planar (simples): subconjunto csubconjunto cRR2 2 cujas cujas vizinhanças em cada ponto tem características de vizinhanças em cada ponto tem características de um um intervalointervalo aberto (0,1) ou semi-aberto [0,1). aberto (0,1) ou semi-aberto [0,1).

AA BBp p

AA

p

Curva não simples Curva não simples (topologia da letra “X”)(topologia da letra “X”)

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

15

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planaresplanares

• Uma curva planar segundo a definição é Uma curva planar segundo a definição é denominada denominada curva topológica planarcurva topológica planar..

• Curvas topológicas planares Curvas topológicas planares não possuem não possuem auto-interseçãoauto-interseção..

• Uma Uma curva planar fechadacurva planar fechada tem a topologia tem a topologia de um círculo.de um círculo.

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

16

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação dede curvascurvas

• Curvas podem ser aproximadas através Curvas podem ser aproximadas através de segmentos de retas.de segmentos de retas.

• Curvas mais complexas requerem formas Curvas mais complexas requerem formas mais eficientes de representação.mais eficientes de representação.

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

17

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação dede curvascurvas

• Uma alternativa consiste em representar Uma alternativa consiste em representar curvas analiticamente através de curvas analiticamente através de equaçõesequações..

• Temos duas formas clássicas de Temos duas formas clássicas de representação:representação:

– ParamétricaParamétrica..– ImplícitaImplícita..

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

18

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planares paramétricasplanares paramétricas

• A descrição A descrição paramétricaparamétrica de uma curva de uma curva planar é uma função planar é uma função : :IIRRRR22 tal que tal que ((tt))==((xx((tt)),y,y((tt))))..

tt

((tt))

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

19

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planares paramétricasplanares paramétricas

• Uma curva paramétrica pode ser vista Uma curva paramétrica pode ser vista como a como a trajetóriatrajetória de um ponto se inter- de um ponto se inter- pretarmos o parâmetro pretarmos o parâmetro tt como tempo . como tempo .

• O conjunto de pontos de uma equação O conjunto de pontos de uma equação paramétrica paramétrica ((tt)) é denominado é denominado traçotraço..

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

20

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planares paramétricasplanares paramétricas

• O traço de uma equação paramétrica O traço de uma equação paramétrica nem sempre corresponde a uma curva nem sempre corresponde a uma curva topológica.topológica.

• Existem várias parametrizações possíveis Existem várias parametrizações possíveis para uma curva.para uma curva.

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

21

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planares paramétricas - exemplosplanares paramétricas - exemplos

• Círculo: Círculo: ((coscos((tt),),sensen((tt)))), onde , onde tt é o ângulo é o ângulo formado pelos pelo segmento formado pelos pelo segmento OpOp e o eixo e o eixo das abscissas.das abscissas.

pp

OO

tt sensen((tt))

coscos((tt))

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

22

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planares paramétricas - exemplosplanares paramétricas - exemplos

• Gráfico de uma funçãoGráfico de uma função– Seja uma função Seja uma função ff:: R RRR. O . O gráfico de fgráfico de f é o conjunto é o conjunto

GG((ff)={()={(xx,,ff((xx)) ; )) ; xxII} } que define uma curva topológica.que define uma curva topológica.– A parametrização do gráfico de uma função é dada A parametrização do gráfico de uma função é dada

pela equação pela equação ((tt)=()=(tt,,ff((tt)).)).

(x,f(x)=x2)

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

23

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : curvas curvas planares paramétricas - exemplosplanares paramétricas - exemplos

• Reta do plano (equação vetorial):Reta do plano (equação vetorial): ((tt)=)=pp++vtvt, onde , onde pp é um ponto do é um ponto do RR22,, vv um vetor do um vetor do RR22 e e ttRR..

vv

pp

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

24

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planaresimplícita de curvas planares

• A descrição implícita define uma curva A descrição implícita define uma curva como o como o conjunto de raízesconjunto de raízes de uma de uma equação equação FF((xx,,yy) = 0.) = 0.

00

FF((xx,,yy))

yy

xx

zz

FF((xx,,yy))

z=0

FF((xx,,yy) = ) = 00

FF((xx,,yy) = ) = 00

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

25

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planaresimplícita de curvas planares

• Seja Seja FF::UURR22RR uma função implícita que uma função implícita que descreve uma curva.descreve uma curva.

• O O suporte geométricosuporte geométrico da curva é dada pelos da curva é dada pelos conjunto de soluçõesconjunto de soluções da equação da equação FF((xx,,yy) =) =00..

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

26

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planaresimplícita de curvas planares

• O conjunto de raízes de O conjunto de raízes de FF((xx,,yy)=)=00 é a é a imagem inversa do 0imagem inversa do 0 e é indicada por e é indicada por FF-1-1((00)) = {(= {(x,y) x,y) R R2 2 | F| F((x,yx,y)=)=00}}..

00

yy

xx

zz

FF((xx,,yy))

z=0

FF-1-1((00))

FF-1-1((00))

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

27

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planares implícita de curvas planares

• Exemplos:Exemplos:

– (Equação implícita da reta)(Equação implícita da reta)• axax++byby++cc==00, , abab00

– (Equação implícita do círculo)(Equação implícita do círculo)• xx22++yy22--rr22 = = 0 0

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

28

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planares implícita de curvas planares

• Nem sempre a equação implícita define Nem sempre a equação implícita define uma curva topológica.uma curva topológica.

• Uma condição suficiente é o de que não Uma condição suficiente é o de que não haja pontos haja pontos singularessingulares. Ou seja, . Ou seja, gradgrad((FF) ) 00, para todo ponto , para todo ponto ((xx00,,yy00))FF-1-1((00))..

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

29

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planares implícita de curvas planares

• FF((x, yx, y)) = x = x22 –– y y2 2 –– k k

• grad Fgrad F((x, yx, y)) == ((2x, – 2y2x, – 2y))

• (logo, (logo, grad Fgrad F((x, yx, y)) == 0 0 x x == y y == 0 0))• k k == 1 1: não há pontos singulares: não há pontos singulares

px2-y2-1

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

30

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação implícita de curvas planares implícita de curvas planares

• FF((x, yx, y)) = x = x22 – y – y2 2 – k– k • grad Fgrad F((x, yx, y)) = = ((2x, – 2y2x, – 2y)) • (logo, (logo, grad Fgrad F((x, yx, y)) = 0 = 0 x = y = 0 x = y = 0))• k k == 0 0: (: (0, 00, 0)) é um ponto singular é um ponto singular

px2-y2

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

31

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : regiões planasregiões planas

• Correspondem a subconjuntos Correspondem a subconjuntos bidimensionais do plano.bidimensionais do plano.

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

32

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos objetos implícitos ou paramétricos – quando utilizarou paramétricos – quando utilizar

• Depende do problemaDepende do problema..

• Consideraremos dois problemas Consideraremos dois problemas fundamentais:fundamentais:

– Amostragem pontualAmostragem pontual– Classificação Ponto-ConjuntoClassificação Ponto-Conjunto

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

33

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos ou objetos implícitos ou paramétricos – amostragem pontualparamétricos – amostragem pontual

• Dado um objeto gráfico 2D com suporte Dado um objeto gráfico 2D com suporte geométrico geométrico SS determinar um conjunto de determinar um conjunto de pontos pontos pp11,,pp22,...,,...,ppnn tais que tais que ppiiSS..

p1

p2p3

p4

p5

p6

p7

p8

p9

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

34

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos objetos implícitos ou paramétricos – amostragem pontualou paramétricos – amostragem pontual

• Objetos paramétricos – fácilObjetos paramétricos – fácil– Tomar amostras no Tomar amostras no espaço de parâmetrosespaço de parâmetros II

e e avaliar a funçãoavaliar a função γ(t) em tais amostras.em tais amostras.

t1= 0 t2 t3 t4 t5 t6 t7 t9= 1

I

))2(),2(cos())(),((:)( 2 tsenttytxRIt

p1= γ(t1)=γ(t9)

p2= γ(t2)

p3= γ(t3)

p4= γ(t4)

p5= γ(t5)

p6= γ(t6)

p7= γ(t7)

p8= γ(t8)t8

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

35

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos objetos implícitos ou paramétricos – amostragem pontualou paramétricos – amostragem pontual

• Objetos implícitos – mais difícilObjetos implícitos – mais difícil

– Necessário encontrar as raízes de Necessário encontrar as raízes de ff((x,yx,y)=)=00..

– As raízes podem consistir de um conjunto infinito As raízes podem consistir de um conjunto infinito sendo necessário tomar um subconjunto finito.sendo necessário tomar um subconjunto finito.

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

36

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos ou objetos implícitos ou paramétricos – classificação ponto-conjuntoparamétricos – classificação ponto-conjunto

• Classificação Ponto-ConjuntoClassificação Ponto-Conjunto: Dado um : Dado um ponto ponto ppRR22 e um objeto gráfico com suporte e um objeto gráfico com suporte SS, determinar se , determinar se ppSS..

S

pS?

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

37

Instituto de Computação - UFF

2

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos ou objetos implícitos ou paramétricos – classificação ponto-conjuntoparamétricos – classificação ponto-conjunto

• Objetos implícitos – simples.Objetos implícitos – simples.– Basta avaliar o sinal da função Basta avaliar o sinal da função ff((xx,,yy)) no ponto no ponto

pp=(=(xx00,,yy00))

S = f(x,y) = x2+y2-2=0

p1 = (1,1) S, f(1,1) = 0

p2 = (0,0) interior a S, f(0,0) < 0

p3 = (0,2) exterior a S, f(0,2) > 0

p1

p3

p2

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

38

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : objetos implícitos ou objetos implícitos ou paramétricos – classificação ponto-conjuntoparamé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 Requer a verificação da existência de soluções para o

sistema dado pelas equações sistema dado pelas equações xx((tt) = ) = xx00 e e yy((tt) = ) = yy00..

p = (1,1)

))(),(cos())(),((:)( 2 tsenttytxRIt

422)(

22)cos(

)),(2),cos(2())(),(()1,1(

ttsen

t

tsenttytxSp

2

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

39

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : como como especificar uma região planarespecificar uma região planar

• A forma mais simples consiste em descrever a A forma mais simples consiste em descrever a curva que curva que delimita sua fronteiradelimita sua fronteira..

• Teorema de Jordan: Teorema de Jordan: Uma curva topológica fechada Uma curva topológica fechada divide o divide o plano em duas regiões abertas, uma limitada e a outra plano em duas regiões abertas, uma limitada e a outra ilimitada. A fronteira entre as duas regiões é dada por ilimitada. A fronteira entre as duas regiões é dada por ..

Fronteira Fronteira

Região ilimitadaRegião limitada

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

40

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : como como especificar uma região planarespecificar uma região planar

• Precisamos então:Precisamos então:

1.1. Especificar a Especificar a fronteira da curvafronteira da curva. .

2.2. Especificar um método para Especificar um método para determinar determinar quais pontos pertencem a região interna ou quais pontos pertencem a região interna ou externaexterna da curva. da curva.

• A segunda parte é fácil de ser resolvida se a A segunda parte é fácil de ser resolvida se a fronteira é uma curva implícita.fronteira é uma curva implícita.

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

41

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de curvas e regiõesde curvas e regiões

• Os objetos gráficos definidos no universo Os objetos gráficos definidos no universo matemático precisam ser matemático precisam ser representados representados discretamentediscretamente..

• A representação, em geral, apresenta uma A representação, em geral, apresenta uma versão versão aproximadaaproximada dos objetos gráficos dos objetos gráficos definidos matematicamente.definidos matematicamente.

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

42

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de curvas e regiõesde curvas e regiões

• A estratégia utilizada se baseia em :A estratégia utilizada se baseia em :

– O O dividirdividir o suporte geométrico do o suporte geométrico do objeto gráfico ou o espaço onde ele objeto gráfico ou o espaço onde ele está inserido.está inserido.

– Obter uma Obter uma representação simplesrepresentação simples em cada em cada elemento da subdivisãoelemento da subdivisão..

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

43

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de curvas e regiõesde curvas e regiões

• Assim obtemos duas formas de representação:Assim obtemos duas formas de representação:

– Decomposição intrínsecaDecomposição intrínseca (( o suporte geométrico é o suporte geométrico é

subdividido)subdividido)

– Decomposição espacialDecomposição espacial (( o espaço onde o suporte está o espaço onde o suporte está

mergulhado é subdividido).mergulhado é subdividido).

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

44

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação por decomposição intrínsecapor decomposição intrínseca

• Neste caso o suporte geométrico é Neste caso o suporte geométrico é subdividido.subdividido.

• Cada parte da subdivisão é Cada parte da subdivisão é representada por um elemento mais representada por um elemento mais simples.simples.

• A representação por A representação por elementos elementos lineareslineares é uma das mais utilizadas. é uma das mais utilizadas.

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

45

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação por decomposição espacialpor decomposição espacial

• O modo mais comum : baseado O modo mais comum : baseado na na representação matricialrepresentação matricial..

• Objetivo: representar a geometria Objetivo: representar a geometria do objeto através de um conjunto do objeto através de um conjunto de retângulos.de retângulos.

Curva

Região

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

46

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação por decomposição espacialpor decomposição espacial

• Podemos especificar cada Podemos especificar cada célula de dois modos:célula de dois modos:

– Pelas coordenadas de um Pelas coordenadas de um dos seus vértices.dos seus vértices.

– Pelo centróide.Pelo centróide.

• Os centróides das células Os centróides das células definem um outro reticulado: definem um outro reticulado: o o reticulado dualreticulado dual..

Centróides

Reticulado dual

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

47

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação linear por parteslinear por partes

• Neste tipo de representação decompomos o Neste tipo de representação decompomos o objeto em objeto em elementos lineareselementos lineares..

• Exemplos:Exemplos:– Curva representada por uma Curva representada por uma curva poligonalcurva poligonal..– Região do plano representada por uma Região do plano representada por uma região região

poligonalpoligonal11 ou especificada por uma ou especificada por uma triangulação.triangulação.

1 1 delimitada delimitada por uma curva poligonalpor uma curva poligonal

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

48

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de curvas – curvas poligonaisde curvas – curvas poligonais

• Seja Seja pp11,,pp22,...,,...,ppnn um conjunto de pontos distintos do plano. um conjunto de pontos distintos do plano.

• Uma Uma curva poligonalcurva poligonal é definida pelo conjunto de é definida pelo conjunto de segmentos segmentos pp11pp22,,pp22pp33,...,,...,ppn-1n-1ppnn..

• Os pontos Os pontos ppii são denominados são denominados vérticesvértices da curva poligonal da curva poligonal

os segmentos os segmentos ppiippi+1i+1 definem as definem as arestasarestas da curva. da curva.

pp11

ppii

PPi+1i+1

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

49

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de curvas – curvas poligonaisde curvas – curvas poligonais

• Curvas poligonais são muito utilizadas por dois Curvas poligonais são muito utilizadas por dois motivos:motivos:

– São São fáceisfáceis de se especificar e representar. de se especificar e representar.– Aproximam uma grande variedade de curvas.Aproximam uma grande variedade de curvas.

ε

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

50

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de regiões – triangulações 2Dde regiões – triangulações 2D

• Triangulação de uma região do plano: Triangulação de uma região do plano: coleção coleção T T = = {{TTii}} de triângulos de triângulos tal que: tal que:

• para dois triângulos distintos para dois triângulos distintos TTii e e TTjj em em TT, , com com TTiiTTjj temos:temos:

– TTiiTTjj é um vértice em comum ou, é um vértice em comum ou,

– TTiiTTjj é uma aresta em comum. é uma aresta em comum.

• Triangulações fornecem uma solução tanto Triangulações fornecem uma solução tanto para o problema de para o problema de representaçãorepresentação quanto de quanto de reconstruçãoreconstrução..

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

51

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : representação representação de regiões – triangulações 2Dde regiões – triangulações 2D

• Exemplo de triangulação:Exemplo de triangulação:

• Contra-exemplos:Contra-exemplos:

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

52

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : PoligonizaçãoPoligonização

• Representação da curva (região) através de Representação da curva (região) através de sua decomposição em segmentos (sua decomposição em segmentos (polígonos)polígonos)..

• Os métodos de poligonização dependem da Os métodos de poligonização dependem da descrição do objeto gráfico: paramétrica ou descrição do objeto gráfico: paramétrica ou implícita.implícita.

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

53

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas paramétricasde curvas paramétricas

• O O método uniformemétodo uniforme é o método mais simples é o método mais simples para poligonizar uma curva paramétrica.para poligonizar uma curva paramétrica.

• Seja uma curva Seja uma curva ((tt)) definida em um intervalo definida em um intervalo II=[=[aa,,bb]]. .

1.1. Obtemos uma partição uniforme Obtemos uma partição uniforme aa==tt00<<tt11<...<<...<ttnn==bb

do intervalo do intervalo II..

2.2. Avaliamos a curva nos pontos Avaliamos a curva nos pontos ttii obtendo uma obtendo uma

sequência de pontos sequência de pontos pp00,,pp11,...,,...,ppnn onde onde ppii = = (t(tii))..

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

54

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas paramétricasde curvas paramétricas

• O O método uniformemétodo uniforme é o método mais simples é o método mais simples para poligonizar uma curva paramétrica.para poligonizar uma curva paramétrica.

t1= 0 t2 t3 t4 t5 t6 t7 t8= 1

I

2:)( RIt

p1= γ(t1)

p2= γ(t2)

p3= γ(t3)

p4= γ(t4)

p5= γ(t5)

p6= γ(t6)

p7= γ(t7)

p8= γ(t8)

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

55

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas paramétricasde curvas paramétricas

• Observe que é importante Observe que é importante estruturarestruturar a seqüência de a seqüência de pontos de forma que a topologia original do objeto seja pontos de forma que a topologia original do objeto seja preservada.preservada.

• Esta estruturação é realizada Esta estruturação é realizada ordenando-se os pontos ordenando-se os pontos da seqüênciada seqüência de acordo com a ordem das amostras de acordo com a ordem das amostras tomadas do intervalo.tomadas do intervalo.

• A reconstrução então envolve um processo de A reconstrução então envolve um processo de amostragemamostragem e e estruturação estruturação (ordenação).(ordenação).

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

56

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde curvas implícitas

• Para poligonizar uma curva Para poligonizar uma curva definida definida implicitamente por uma função implicitamente por uma função FF::UURR22RR devemosdevemos tomar amostras do conjunto tomar amostras do conjunto FF-1-1((00))..

• Além disso, é necessário fornecer uma Além disso, é necessário fornecer uma estruturação estruturação adequada às amostras tomadas.adequada às amostras tomadas.

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

57

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde curvas implícitas

• Solução:Solução:1.1. Determinar uma Determinar uma triangulação do domíniotriangulação do domínio de de FF..

2.2. Aproximar Aproximar FF em cada triângulo por uma em cada triângulo por uma função função linear linear F’F’..

3.3. Solucionar Solucionar F’F’((x,yx,y))=0=0 em cada triângulo. A em cada triângulo. A solução é em geral um solução é em geral um segmento de retasegmento de reta..

4.4. A estruturação das amostras é A estruturação das amostras é induzidainduzida pela pela estrutura da triangulação subjacenteestrutura da triangulação subjacente..

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

58

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde curvas implícitas

• Determinamos uma Determinamos uma triangulação do domíniotriangulação do domínio de de FF..

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

59

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde curvas implícitas

• Em cada triângulo calculamos os valores Em cada triângulo calculamos os valores FF((v11), ),

FF((v22), ), FF((v33))..

v1

v2 v3

v3

v2

v1

FF((v11))FF((v33))

FF((v22))

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

60

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde curvas implícitas

• Se os sinais nos vértices forem todos iguais, consideramos que a curva não intersecta o triângulo.

v3

v2

v1

v2 v3

--

----

FF((v11)) FF((v33))

FF((v22))

v1

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

61

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde 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.

v1

v2 v3

v3

v2

v1++

++--

FF((v11))

FF((v33))

FF((v22))

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

62

Instituto de Computação - UFF

Objetos gráficos planaresObjetos gráficos planares: : Poligonização Poligonização de curvas implícitasde curvas implícitas

• Resultado:

+

+

-