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

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

Computação Gráfica – Modelagem Geométrica Profa. Mercedes Gonzales Márquez.

Apresentações semelhantes


Apresentação em tema: "Computação Gráfica – Modelagem Geométrica Profa. Mercedes Gonzales Márquez."— Transcrição da apresentação:

1 Computação Gráfica – Modelagem Geométrica Profa. Mercedes Gonzales Márquez

2 Tópicos  Curvas  Superfícies  Técnicas principais de Modelagem Geométrica

3  Estuda-se dentro do escopo da Modelagem Geométrica. Curvas são a base, tanto da geração de formas simples, como círculos e elipses, quanto na criação de projetos complexos como automóveis, navios, aeronaves ou até mesmo faces e corpos humanos. Curvas e Superfícies - Introdução

4  Curvas e superfícies desempenham um papel importante em várias áreas, como criação de objetos e visualização de fenômenos científicos.  Representar uma curva como uma sucessão de linhas retas não é suficiente. O desafio maior é definir uma curva que passe por um determinado conjunto de pontos. Introdução

5  Basicamente existem duas formas principais de representar curvas: (A) Por um conjunto de pontos; (B) Por representação analítica. Representação de Curvas

6 (A) Por Conjunto de Pontos – A curva é representada por um conjunto finito de pontos conectados por pequenos segmentos de retas. Representação de Curvas

7  Para ter uma aparência “natural” deve-se usar um conjunto grande de pontos. Representação de Curvas A B

8 (B) Representação Analítica Usa uma ou mais equações. Vantagens: – Maior precisão; – Mais compacta; – Não requer área de armazenamento; – Facilidade de calcular novos pontos (caso necessário); – Facilidade de cálculo de propriedades da curva como área, inclinação, curvatura; – Maior simplicidade para ser redesenhada quando sujeita a transformações como escala, rotação, projeções, etc.

9  A representação analítica de curvas pode usar ou não parâmetros, sendo classificados como B.1. paramétricas B.2. não-paramétricas.  As formas não-paramétricas podem ser, ainda, B.2.1. explícitas B.2.2. implícitas. Representação de Curvas

10 B.1 Formas paramétricas – As coordenadas são dadas em termos de um (conjunto) de parâmetros. Usa-se um parâmetro (t, , etc.) para definir as coordenadas dos pontos da curva. P(t) = (x(t), y(t)) Exemplos: Representação de Curvas

11 B.1 Formas paramétricas P(t) = (x(t), y(t)) Exemplos: Representação de Curvas

12 B.1. Formas paramétricas P(t) = (x(t), y(t)) Exemplos: Representação de Curvas

13 B.2. Formas não-paramétricas Não há parâmetros e uma coordenada da curva é dada em função da outra, ou seja y = f(x) ou x = f(y) – Exemplos: 1) Equação de um semi-círculo de raio 2 2) Equação de uma reta y = 2x – 1 ou x = ½ (y + 1)

14 Representação de Curvas B.2.1 Forma não-paramétrica explícita : É dada por uma equação do tipo y = f(x), ou seja uma das coordenadas é explicitamente dada em função das outras. – Exemplos: 1) Equação genérica explícita de uma parábola: y = ax 2 + bx + c 2) Equação de uma reta y = mx + b 3) Polinômios: P(x) = a n x n + a n-1 x n a 2 x 2 + a 1 x 1 + a 0

15 Representação de Curvas  Obtém-se um valor de y para cada valor de x dado.

16 Representação de Curvas  B.2.2. A representação implícitas não tem essa limitação. Nela as coordenadas são relacionadas por uma função. A sua forma é

17 Representação de Curvas  Exemplo: seções cônicas. ax 2 + bxy + cy 2 + dx + ey + f = 0  Essa expressão representa a variedade de curvas planas denominadas seções cônicas. Essas curvas (cinco) são obtidas pelo corte de um cone por um plano, resultando em: círculo, elipse, parábola, hipérbole, reta.

18 Representação de Curvas

19 CônicaForma ParamétricaForma Implícita Elipse x = a cos  y = b sen  Parábolax = at 2, y = 2aty 2 – 4ax = 0 Hipérbole x = a cosh  y = b senh 

20 Exercício Veja programas circle.cpp, parabola.cpp, helix.cpp

21  É uma técnica de aproximação de curvas.  Uma curva de Bézier pode ser gerada por 3, 4, até n + 1 pontos de controle (ajuste para um polinômio de grau n).  Geralmente utiliza-se quatro pontos de controle (forma cúbica).  A curva passa pelo primeiro e pelo último ponto de controle. Curvas de Bézier

22 B0B0 B3B3 B1B1 B2B2 Figura 1

23 Curvas de Bézier  Onde B i representa cada um dos n+1 pontos de controle considerados e J n,i (t) são as funções que combinam a influência de todos os pontos (blending functions).  A curva paramétrica de Bézier é definida como:  Essas funções são descritas pelos polinômios de Bernstein como:

24 Curvas de Bézier (i = 0, 1,..., n) são os coeficientes binomiais.  Essas funções J n,i (t) devem satisfazer as condições: J n,i (t)  0 para todo i entre 0 e 1, isto é 0 ≤ t ≤ 1 e também:  onde n é o grau dos polinômios e:

25 Curvas de Bézier  Expressões que definem as curvas de Bézier: – Para três pontos de controle  polinômios com grau 2. P(t) = (1 – t) 2 B 0 + 2t (1 – t) B 1 + t 2 B 2, onde t inicialmente é 0.

26 Curvas de Bézier  Expressões que definem as curvas de Bézier: – Para quatro pontos de controle  polinômios com grau 3. P(t) = (1 – t) 3 B 0 + 3t (1 – t) 2 B 1 + 3t 2 (1 – t)B 2 + t 3 B 3, onde t inicialmente é 0.

27 § Material auxiliar para melhor entendimento de curvas e superfícies de Bézier, veja applets java em 03/demos/geometry.html 03/demos/geometry.html § Exercício: Faça um programa que dado um número n, permita o ingresso interativo (pelo cliques do mouse) de n+1 pontos de controle e construa a curva de Bézier correspondente. Preste atenção que as coordenadas da cena diferem ligeiramente das coordenadas da tela onde os cliques serão feitos. Curvas de Bézier - Algoritmo

28 1. Falta de controle local : Uma alteração em um ponto no polígono de Bézier acarreta alterações em toda a curva de Bézier. Indesejável quando desejamos fazer ajustes finos. 2. O grau do polinômio cresce com o número de pontos de controle do polígono de controle. Curvas de Bézier - Problemas

29 - Generalização da idéia de curva de Bézier. - Sejam B ij, i=0,...,m, j=0,...,n, um conjunto de pontos no R 3 de tal forma que sua projeção no plano x0y seja formada pelos vértices de mn retângulos de mesmas dimensões. A superfície de Bézier definida no domínio [0,1]x[0,1] é Superfícies Bézier Onde J ni e K mj são os polinômios de Bernstein.

30 Superfícies Bézier

31 Outras representações de Superfícies

32 Representação Octree: (estrutura de árvore) Envolve o objeto por um cubo que em seguida é subdividido em 8 cubos menores. Cada um deles pode ser : Cheio, vazio ou cheio-vazio. Os nós cheios ou vazios são terminais, enquanto os cheio-vazios não são.

33 Representação Octree: Exemplo

34

35  Consiste em construir um objeto a partir da combinação operatória (união, interseção e diferença) de dois ou mas sólidos. Geometria Sólida Construtiva (CSG)

36

37  Uma superfície é descrita quando uma curva C1 (curva geratriz) é deslocada no espaço, ao longo de uma trajetória dada por uma outra curva C2 (caminho o diretriz). - Varredura translacional (Extrusão ou superfícies geradas por deslocamento) Varredura (Sweeping)

38 - Varredura rotacional (ou superfícies de revolução) Varredura (Sweeping)

39 - Varredura rotacional (ou superfícies de revolução) Varredura (Sweeping)

40 - Coleções de polígonos (ou faces) que, juntos, formam a “pele” ou “casca” do objeto • Forma rápida e prática para representar objetos Estrutura de Dados. Lista contígua das coordenadas de todos os vértices que compõem cada face. - Arestas implícitas - Faces explícitas Malha de Polígonos

41 - Coleções de polígonos (ou faces) que, juntos, formam a “pele” ou “casca” do objeto • Forma rápida e prática para representar objetos Malha de Polígonos

42 Superfície de Revolução - Tarefa § Material auxiliar para melhor entendimento de curvas e superfícies, veja programa torus.c, superficies.c e o executável swprj.exe § O programa torus.c (disponível no site da disciplina) desenha a superfície chamada torus. § O executável swprj.exe permite desenhar uma curva geratriz que dará origem a uma superfície de revolução § O programa superfícies.c permite desenhar uma curva de Bézier como curva geratriz e a partir dela obter uma superfície de revolução.

43 Superfície de Revolução - Tarefa § Compare o programa torus.cpp da pasta Code com o programa torus.c disponibilizado no site da disciplina. Para consulta de comandos novos use o livro RedBook disponibilizado também no site da disciplina. § Desenhar um cilindro como superfície de revolução usando um segmento de reta como curva geratriz.


Carregar ppt "Computação Gráfica – Modelagem Geométrica Profa. Mercedes Gonzales Márquez."

Apresentações semelhantes


Anúncios Google