Curvas e Superfícies Paramétricas

Documentos relacionados
Curvas e Superfícies. Profª Soraia Raupp Musse

Computação Gráfica - 10

Curvas e Superfícies

Curvas e Superfícies. 35M34 Sala 3E1 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227 DIM102

Iluminação e Sombreamento

Modelagem Geométrica

REPRESENTAÇÃO DE ARCOS POR CURVAS DE BEZIER

Processamento de Malhas Poligonais

Introdução ao Processamento Gráfico

Geometria Analítica II - Aula 5 108

Aula 6. Doravante iremos dizer que r(t) é uma parametrização da curva, e t é o parâmetro usado para descrever a curva.

Objetos Gráficos Planares

Cap. 4- Interpolação Numérica Definições. Censos de BH. Qual o número de habitantes na cidade de Belo Horizonte em 1975?

Primeiro Projeto de PG: Lista de Temas Selecionados

MODELAGEM GEOMÉTRICA

MAP Segundo exercício programa Splines cúbicos

étodos uméricos INTERPOLAÇÃO, EXTRAPOLAÇÃO, APROXIMAÇÃO E AJUSTE DE FUNÇÕES Prof. Erivelton Geraldo Nepomuceno

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

4 CURVAS PARAMÉTRICAS

Objetos Gráficos Planares

Matéria das Aulas e Exercícios Recomendados Cálculo II- MAA

Matéria das Aulas e Exercícios Recomendados Cálculo II- MAA

Cálculo 2. Guia de Estudos P1

Cálculo diferencial de Funções de mais de uma variável

Equação da reta. No R 2 UNIVERSIDADE FEDERAL DO PARÁ CÁLCULO II - PROJETO NEWTON AULA 05

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

3.6 Erro de truncamento da interp. polinomial.

Construção de objeto e superfícies em OpenGL

A primeira coisa a fazer é saber quais são as equações das curvas quando elas já se encontram na melhor

TÓPICO. Fundamentos da Matemática II APLICAÇÕES NA GEOMETRIA ANALÍTICA. Licenciatura em Ciências USP/ Univesp. Gil da Costa Marques

GEOMETRIA Exercícios

(a) Determine a velocidade do barco em qualquer instante.

Exercícios de Matemática Computacional -Cap. 6 Interpolação e aproximação polinomial

6.1 equações canônicas de círculos e esferas

Equações paramétricas das cônicas

Cálculo II. Resumo Teórico Completo

4. Curvas Paramétricas e Transformações 2D

exercícios de análise numérica II

Geometria Analítica. Cônicas. Prof. Vilma Karsburg

Provável ordem de Assuntos das Aulas e Exercícios Recomendados Cálculo II- MAC 123

Métodos de Pesquisa Operacional

As funções quadráticas são usadas em diversas aplicações: - Equacionamento do movimento de um ponto com aceleração constante.

Interpolação Polinomial. Ana Paula

REPRESENTAÇÕES PARAMÉTRICAS DE CURVAS PLANAS COM O WINPLOT

APLICAÇÕES NA GEOMETRIA ANALÍTICA

UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE MATEMÁTICA LISTA DE EXERCÍCIOS DE MAT243-CÁLCULO III

Lista de exercícios. 4) Defina o conceito de função de eficiência luminosa. (Victor)

Aula 31 Funções vetoriais de uma variável real

CAPÍTULO 1 Sistemas de Coordenadas Lineares. Valor Absoluto. Desigualdades 1. CAPÍTULO 2 Sistemas de Coordenadas Retangulares 9. CAPÍTULO 3 Retas 18

Lista Determine o valor máximo e o valor mínimo da função f sujeita às restrições explicitadas:

Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas

Lista de Exercícios de Cálculo Infinitesimal II

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

Testes Formativos de Computação Numérica e Simbólica

Autores: Interpolação por Spline Cúbica e Método de Integração de Simpson para Cálculo de Campo Magnético PLANO BÁSICO: MÉTODOS NUMÉRICOS

1 a Lista de Exercícios Prof a. Vanessa Rolnik. seguir e indique o tipo de erro quando a representação não for possível.

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

Interpolação polinomial

Computação Gráfica. Representação e Modelagem

8.1 Áreas Planas. 8.2 Comprimento de Curvas

Introdução Geral a Computação Gráfica. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de Computação Gráfica

Curvas e Superfícies de Bézier

UNIVERSIDADE FEDERAL DE ALAGOAS INSTITUTO DE MATEMÁTICA Aluno(a): Professor(a): Curso:

Computação Gráfica Abel J. P. Gomes. Engenharia Informática (5385) - 2º ano, 2º semestre Matemática (5828) - 2º ano, 2º semestre

MAT Cálculo II - IQ Prof. Oswaldo Rio Branco de Oliveira 2 ō semestre de 2008 Prova Substitutiva

Objetos Gráficos Espaciais

aula6 Curvas de Hermite 2016/2 IC / UFF Criadas por Charles Hermite ( )

Preliminares de Cálculo

AGRUPAMENTO DE ESCOLAS DE MIRA

2 Conceitos Básicos da Geometria Diferencial Afim

Cálculo Diferencial e Integral 2: Aproximações Lineares. Regra da Cadeia.

Transcrição:

Curvas e Superfícies Paramétricas Leandro Tonietto Computação Gráfica Jogos Digitais ltonietto@unisinos.br http://professor.unisinos.br/ltonietto/jed/cgr/curvas.pdf 5-12 Baseado nos slides do professor Christian Hofsetz

Sumário! Curvas! Hermite! Bezier! B-Splines! Tarefa! Demo! Referências 09/05/12 Leandro Tonietto 2

Introdução! Modelagem: malha poligonal X superfícies/curvas! Superfícies produzem malhas de polígonos com poucos parâmetros! Malhas de polígonos tem pelo menos tantos parâmetros quanto vértices...! Menos parâmetros significa construção e edição mais rápida! Superfícies mais suaves! Normais podem ser calculadas corretamente em qualquer ponto da superfície.! Nas malhas poligonais, no máximo por vértice.! Facilidade para animação, em relação a malha de polígonos.! Superfícies e curvas paramétricas serão utilizadas na disciplina de animação. 09/05/12 Leandro Tonietto 3

Curvas Paramétricas! Superfícies são formadas por curvas.! Algumas curvas podem ser geradas com funções do tipo y=f(x) ou x=f(y). Exemplos: parábolas.! Curvas paramétricas são dependentes de um parâmetro paramétrico: x=f(u) e y=g(u). Este parâmetro não é parte dos pontos da curva.! Uma função independente para cada eixo em cada ponto, ao longo do tempo. 09/05/12 Leandro Tonietto 4

Curvas! Exemplos:! Desenho da trajetória de um projétil! Uma função para determinar a altura do projétil (y) e outra determinar distância do projétil (x).! Neste caso, o algoritmo avaliar as funções num determinado instante para saber qual x e qual y do projétil naquele instante.! Para qualquer curva a teoria é a mesma: um função avaliada em um determinado instante! Círculo, com raio 1, centrado na origem e com t=[0,360)! x = cos(t)! y = sin(t)! Equação paramétrica do círculo (raio R, centro C):! x = cos(t) * R + Cx! y = sin(t) * R + Cy! Uma curva qualquer:! x = sin(t)! y = t*t 09/05/12 Leandro Tonietto 5

Curvas! Como gerar curvas?! Uma função para cada eixo, dados os pontos inicial e final interpolar os demais pontos.! Como interpolar dois pontos?! Avaliar a função a cada instante t! Como misturar duas linhas?! Matrizes para misturar duas linhas e produzir uma curva.! Solução: curvas paramétricas.! Definição! Equação paramétrica da linha:! x = x 0 t + (1-t)x 1! y = y 0 t + (1-t)y 1! z = z 0 t + (1-t)z 1 09/05/12 Leandro Tonietto 6

Curvas! Representação genérica da curva em 3D: Q(t) = [x(t) y(t) z(t)]! Onde: x(t), y(t) e z(t) são denominadas funções-base. 09/05/12 Leandro Tonietto 7

Curvas! Tipos de função base:! f(t) = at + b! f(t) = at 2 + bt + c! f(t) = at 3 + bt 2 + ct + d 09/05/12 Leandro Tonietto 8

Curvas! Curvas paramétricas cúbicas 2D:! f(t) = at 3 + bt 2 + ct + d! x(t) = a x t 3 + b x t 2 + c x t + d x! y(t) = a y t 3 + b y t 2 + c y t + d y + = t t 09/05/12 Leandro Tonietto 9

Curvas! Em 3D: 09/05/12 Leandro Tonietto 10

Curvas! Como especificar estas curvas:! Diretamente, informando os 12 valores para as equações (ax, bx,... cz, dz).! Indiretamente, dados alguns pontos, traçar a curva que passará por eles.! Facilita para o usuário. 09/05/12 Leandro Tonietto 11

Curvas! Aproximação X Interpolação! Dado um número n de pontos para traçar uma curva:! Interpolar os pontos (passar todos eles)! Aproximar os pontos (pontos que definem a convex hull da curva) 09/05/12 Leandro Tonietto 12

Curvas! Aproximação X Interpolação X! Curvas são expressas como interpolação polinomial.! O resulta pode não ser o esperado, por causa das oscilações.! A aproximação permite obter resultados mais interessantes. 09/05/12 Leandro Tonietto 13

Curvas! Segmentos de curvas:! Cada polinômio, de cada equação geral, possui 4 coeficientes; 4 condições são necessárias: Q(t) = [x(t) y(t) z(t)] = [t 3 t 2 t 1] a x a y a z b x b y b z c x c y c z d x d y d z 09/05/12 Leandro Tonietto 14

! Forma geral para representação das curvas:! Matriz de geometria (G) e Matriz de Base (M) Curvas! Na disciplina veremos as Matrizes M de que fixa para cada tipo de curva.! A matriz G é dada pelos pontos de controle, portanto, parâmetros da curva Pontos de controle Regra ou equações da curva 09/05/12 Leandro Tonietto 15

Curvas - Hermite! Curva é determinada por dois pontos de controle e dois vetores que determinam a tangente da curva nestes dois pontos, além das derivadas nestes dois pontos.! É feita a interpolação dos pontos da curva.! Para uma curva Hermite temos então:! P 1 e P 4, que são os pontos de início e fim! R 1 e R 4, que são os vetores de tangente em cada um dos pontos. 09/05/12 Leandro Tonietto 16

Curvas - Hermite! Exemplos de curvas Hermite: 09/05/12 Leandro Tonietto 17

Curvas - Hermite! Mistura de funções dadas pelos pontos de controle P1 e P4 e pelos vetores tangentes R1 e R4:! Um ponto em uma curva Hermite num instante t, é dado pela ponderação do valor de cada uma das curvas dos fatores de controle no instante t. 09/05/12 Leandro Tonietto 18

Curvas - Hermite! Polinômino que define cada uma das curvas é:! x(t) = P x = a x t 3 + b x t 2 + c x t + d x! De acordo com a solução proposta:! Para t = 0 (instante inicial):! P1 x = a x 0 3 + b x 0 2 + c x 0 + d x ; ou M Hx =[ 0 0 0 1 ] T! Para t = 1 (instante final):! P4 x = a x 1 3 + b x 1 2 + c x 1 + d x ; ou M Hx =[ 1 1 1 1 ] T! Tangentes (R1 e R4) podem ser obtidas pela derivada:! Para t = 0 (no instante inicial):! R1 x = 3a x 0 2 + 2b x 0 1 + c x 0 0 + 0; ou M Hx =[ 0 0 1 0 ] T! Para t = 1 (no instante final):! R4 x = 3a x 1 2 + 2b x 1 1 + c x 1 0 + 0; ou M Hx =[ 3 2 1 0 ] T 09/05/12 Leandro Tonietto 19

Curvas - Hermite! Formulação para Hermite (Q(t)=TMG):! T é invariante: [t 3 t 2 t 1]! G: G H = P 1 P 4 R 1 R 4 G Hx = P 1x P 4x R 1x R 4x G Hy = P 1y P 4y R 1y R 4y 09/05/12 Leandro Tonietto 20

Curvas - Hermite! M H : M H = 0 0 0 1 1 1 1 1 0 0 1 0 3 2 1 0-1 = 2-2 1 1-3 3-2 -1 0 0 1 0 1 0 0 0 09/05/12 Leandro Tonietto 21

Curvas - Hermite! Função de mistura Hermite: [t 3 t 2 t 1] 2-2 1 1-3 3-2 -1 0 0 1 0 1 0 0 0 P 1 P 4 R 1 R 4 09/05/12 Leandro Tonietto 22

Curvas - Hermite! Q(t) é soma ponderada dos elementos G H. Revolvendo a multiplicação das matrizes: 09/05/12 Leandro Tonietto 23

Curvas - Hermite! Algoritmo para geração de inc pontos: WG=0.5; // Fator atenuação das tangentes T1 e T2 x0 = X[0], y0 = Y[0]; for(t=0; t<=1; t += inc) { x =(( 2*pow(t,3) -3*pow(t,2) +0*t +1)*X[i]+ (-2*pow(t,3) +3*pow(t,2) +0*t +0)*X[i+1]+ ( 1*pow(t,3) -2*pow(t,2) +1*t +0)*WG*T1X+ ( 1*pow(t,3) -1*pow(t,2) +0*t +0)*WG*T2X); y =(( 2*pow(t,3) -3*pow(t,2) +0*t +1)*Y[i]+ (-2*pow(t,3) +3*pow(t,2) +0*t +0)*Y[i+1]+ ( 1*pow(t,3) -2*pow(t,2) +1*t +0)*WG*T1Y+ ( 1*pow(t,3) -1*pow(t,2) +0*t +0)*WG*T2Y); plot(x,y); // ou para a linha // plotline(x0,y0,x,y); // x0 = x; y0 = y; } 09/05/12 Leandro Tonietto 24

Curvas - Bézier! Pierre Bézier, projetista da Renault, nos anos 70, criou modelos matemáticos para representar curvas e superfícies a partir de alguns pontos de controle. Objetivo: facilitar a mudança das formas.! Curvas de Bézier são computadas com o algoritmo de De Casteljau.! Utiliza 4 polinômios de ordem 3 para determinar a ponderação dos pontos da curva.! Funções de mistura são a base da Bézier! Também chamadas de polinômio de Bernstein! Forma geral dos polinômios:! b i n (u) = c i u i (1 u) n i 09/05/12 Leandro Tonietto 25

Curvas - Bézier! Polinômio de Berstein Polinômios de Bernstein de grau 3 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 b03(u) b13(u) b23(u) b33(u) 0.1 0 0 0.2 0.4 0.6 0.8 1 u 09/05/12 Leandro Tonietto 26

Curvas - Bézier! Existe uma relação entre Hermite e Bézier: os vetores tangentes iniciais e finais são determinados pelos vetores P1P2 e P3P4 e são relacionados com R1 e R4 na Hermite da seguinte forma: 09/05/12 Leandro Tonietto 27

Curvas - Bézier! Propriedades:! Primeiro e último pontos são interpolados! A tangente no primeiro ponto de controle é paralela a linha que liga o primeiro e o segundo ponto de controle! A tangente do último é paralela a linha ligando o penúltimo e o último ponto de controle! A curva fica inteiramente dentro do convex hull dos pontos de controle! As polinomiais de Bernstein (funções de base) somam 1 e são sempre positivos! Podem ser renderizadas de várias formas! Por exemplo, algoritmo de subdivisão, De Casteljau 09/05/12 Leandro Tonietto 28

09/05/12 Leandro Tonietto 29 Curvas - Bézier! Forma matricial = = = 1 3 3 1 0 3 6 3 0 0 3 3 0 0 0 1 ] [1 ) ( ) ( 3 2 `1 0 3 2 03 B B B u u u u u M M p p p p M p p é a matriz de coeficientes da base Bézier onde

Curvas - Bézier! Desenho da curva de Bézier:! Renderização por segmentos de reta (linha poligonal)! Evoluir ou obter pontos observando a curva em cada instante u = u 1, u 2,..., u n.! Intervalo entre u i e u i+1 determina a qualidade e custo de amostragem da curva.! É possível implementar o algoritmo usando incrementos diferenciados para u: quando mais alta a curvatura, maior a amostragem! Formas de desenho:! Evoluir polinômios de Berstein! Implementar algoritmo de De Casteljau 09/05/12 Leandro Tonietto 30

Curvas - Bézier! Algoritmo: x0 = X[0], y0 = Y[0]; for(t=0; t<=1; t+=inc){ x=((-1*pow(t,3) +3*pow(t,2) -3*t +1)*X[i] + ( 3*pow(t,3) -6*pow(t,2) +3*t +0)*X[i+1] + (-3*pow(t,3) +3*pow(t,2) +0*t +0)*X[i+2] + ( 1*pow(t,3) +0*pow(t,2) +0*t +0)*X[i+3]); y=((-1*pow(t,3) +3*pow(t,2) -3*t +1)*Y[i] + ( 3*pow(t,3) -6*pow(t,2) +3*t +0)*Y[i+1] + (-3*pow(t,3) +3*pow(t,2) +0*t +0)*Y[i+2] + ( 1*pow(t,3) +0*pow(t,2) +0*t +0)*Y[i+3]); plot(x, y); // ou para a linha // plotline(x0,y0,x,y); // x0 = x; y0 = y; } 09/05/12 Leandro Tonietto 31

Curvas Algoritmo De Casteljau! Slides da referência [6] p 10 p 20 p 11 p 02 p 12 u = 0.5 p 01 p 03 p 21 p 00 p 30 09/05/12 Leandro Tonietto 32

Curvas Continuidade! Para assegurar a continuidade entre segmentos de curva, definem-se restrições adicionais de continuidade:! 2 tipos de continuidade:! Continuidade paramétrica, denotada por C n onde n = graus de continuidade! Continuidade geométrica, denotada por G n 09/05/12 Leandro Tonietto 33

Curvas Complexas! Uma Bezier ou Hermite cúbica pode representar apenas um conjunto pequeno de curvas! No máximo dois pontos de inflexão! É possível resolver aumentando o grau das equações? Só que:! Mais pontos de controle e polinomiais com expoentes mais alto! Problemas:! Precisão! Controle não é local um ponto influencia toda a curva!! Solução: juntar curvas cúbicas!! A curva final pode ser separada em várias partes, cada uma delas representada por uma curva paramétrica cúbica! Controle local: Cada ponto de controle influencia apenas uma parte limitada da curva! Interação e projeto é muito mais fácil 09/05/12 Leandro Tonietto 34

Curvas Complexas! Bézier com 7 pontos de controle 09/05/12 Leandro Tonietto 35

Curvas Complexas! Continuidade C 0 : Último ponto da primeira = primeiro ponto da segunda! Continuidade C 1 : C 0 e segmento p 2 p 3 da primeira com mesma direção e comprimento que o segmento p 0 p 1 da segunda! Continuidade C 2 : C 1 e + restrições sobre pontos p 1 da primeira e p 2 da segunda p 1 p 2 p 3 p 0 p 3 p 0 p 1 Slide de [6] 09/05/12 Leandro Tonietto 36 p 2

Curvas Complexas! Continuidades (em [7])... 09/05/12 Leandro Tonietto 37

Curvas B-Splines! Spline Cúbica Natural:! Usada para calcular curvatura natural de objetos como uma barra ou fita metálica.! Pontos de controle influenciam sobre toda a curva.! Forma geral: f K (x)=a 3 (x-x k ) 3 + a 2 (x-x k ) 2 + a 1 (x-x k ) + a 0! B-Splines são uma versão simplificado SCN.! Implementa controle local sobre os pontos.! Na mudança de um ponto p i, apenas o p i-1 e o p i+1 sofrem mudanças.! Faz aproximação aos pontos.! Curvas de ponderação. 09/05/12 Leandro Tonietto 38

Curvas B-Splines! Definição genérica:! Para m+1 pontos de controle! M >= 3 P0,P1,..,Pn! Teremos curvas com m-2 segmentos! Q3,Q4,..,Qm 09/05/12 Leandro Tonietto 39

Curvas B-Splines uniformes! Significa que a variável paramétrica não está espaçada em intervalos uniformes*! Cada um dos m-2 segmentos é definido por 4 dos m+1 pontos de controle! Segmento Q i = P i-3, P i-2, P i-1, P i! GS=[P i-3 P i-2 P i-1 P i ], 3 <= i <= m 09/05/12 Leandro Tonietto 40

Curvas B-Splines uniformes! Os valores u i do espaço de parâmetro que delimitam os intervalos são chamados de nós! Podemos pensar em intervalos regulares por enquanto (B-Splines uniformes) isto é, u i = 1 B i 1 (u) B i (u) B i+1 (u) u i 1 u i u i+1 u i+2 u i+3 u i+4 u 09/05/12 Leandro Tonietto 41

09/05/12 Leandro Tonietto 42 Curvas B-Splines uniformes! Funções de mistura: i i i i p t p t t t p t t p t Q t 6 6 1 3 3 3 6 4 6 3 6 ) (1 ) ( 3 1 2 3 2 2 3 3 3 + + + + + + + = 0 <=1 <= t

Curvas B-Splines uniformes! Algoritmo: x0 = X[0], y0 = Y[0]; for(t=0; t<=1; t+=inc) { x=(((-1*pow(t,3) +3*pow(t,2) -3*t +1)*X[i] + ( 3*pow(t,3) -6*pow(t,2)+0*t+4)*X[i+1] (-3*pow(t,3) +3*pow(t,2)+3*t+1)*X[i+2] + ( 1*pow(t,3) +0*pow(t,2)+0*t+0)*X[i+3])/6); y=(((-1*pow(t,3) +3*pow(t,2) -3*t +1)*Y[i] + ( 3*pow(t,3) -6*pow(t,2) +0*t +4)*Y[i+1] + (-3*pow(t,3) +3*pow(t,2) +3*t +1)*Y[i+2] + ( 1*pow(t,3) +0*pow(t,2) +0*t+0)*Y[i+3])/6); plot(x0,y0,x,y); x0=x; y0=y; } 09/05/12 Leandro Tonietto 43

Curvas B-Splines não uniformes! O intervalo geométrico entre valores dos nós não é necessariamente uniforme! Logo as funções de blending não são as mesmas para cada segmento. Maior flexibilidade! NURBS = Non-uniform rational B-splines! Rational significa que os segmentos de curva podem ser expressos por razões entre polinômios cúbicos! Ex: x(t) = x(t)/w(t) 09/05/12 Leandro Tonietto 44

Curvas B-Splines não uniformes! Funções são razões! Avaliados em coordenadas homogêneas: [ x( t), y( t), z( t), w( t)]! NURBS (Non-Uniform Rational B-Splines): x(t), y(t), z(t) e w(t) são B-splines não uniformes! Vantagens:! Invariantes sob transformações perspectivas e portanto podem ser avaliadas no espaço da imagem x( t) y( t) z( t),, w( t) w( t) w( t)! Podem representar perfeitamente seções cônicas tais como círculos, elipses, etc Slide de [6] 09/05/12 Leandro Tonietto 45

09/05/12 Leandro Tonietto 46 Curvas B-Splines não uniformes Slide de [6]! Parametrização do círculo:! Por exemplo, uma parametrização conhecida do círculo é dada por! Podemos expressar essa parametrização em coordenadas homogêneas por: 2 2 2 1 2 ) ( 1 1 ) ( u u u y u u u x + = + = 2 2 1 ) ( 2 ) ( 1 ) ( u w u u u y u u x + = = =

Tarefa de programação! Tarefas de programação:! Implementar gerador de curvas! Dados os pontos de controle, desenhar curvas conforme o tipo escolhido pelo usuário:! Hermite! Bezier! B-spline! O usuário pode ainda, editar os pontos de controle; neste caso, o sistema deve redesenhar a curva com os novos pontos de controle.! Tratar cálculo de projétil como uma curva! Solicitar ao usuário um ponto inicial, uma direção e uma força. A partir destes parâmetros gerar um ponto da curva a ser desenhado. Usar fórmula do cálculo balística para isto.! Seria muito interessante mostrar um projétil se deslocando em função tempo.! É possível ainda colocar outros elementos físicos: gravidade, vento, peso e etc. 09/05/12 Leandro Tonietto 47

Tarefa de programação! Sugestão de classes 09/05/12 Leandro Tonietto 48

Demos! Bézier:! http://www.doc.ic.ac.uk/~dfg/ AndysSplineTutorial/Beziers.html! http://www.nbb.cornell.edu/neurobio/ land/oldstudentprojects/cs490-96to97/ anson/bezierpatchapplet/ 09/05/12 Leandro Tonietto 49

Referências bibliográficas 1. AGOSTON, Max K. Computer Graphics and Geometric Modeling: Implementation and Algorithms. Springer. 2005. 2. Slides sobre CG dos professores: Christian Hofsetz, Cristiano Franco, Marcelo Walter e Soraia Musse. 3. Aula de CG do prof. Márcio Pinho. Puc-RS. http://www.inf.pucrs.br/~pinho/cg/aulas/curvas/ Curvas.htm. 4. Material sobre curvas, prof. Acioli. UFF. http://www.ic.uff.br/~aconci/curvas.pdf. 5. FOLEY!! 6. Claudio Esperança, Paulo Roma Cavalcanti. Introdução à Computação. http://www.lcg.ufrj.br/cursos/cos-751/curvas-ppt. 7. WRIGHT Jr., Richard S; LIPCHAK, Benjamin; HAEMEL, Nicholas. OpenGL Superbible: Comprehenive Tutorial and Reference. 4 ed. Addison-Wesley, 2007. 09/05/12 Leandro Tonietto 50