Computação Gráfica Aula 11 Curvas Prof. Leo
Curvas Introdução Importante para criação de objetos e visualização de fenômenos científicos Servem de base para modelagem de formas: Simples : círculos, elípses, etc Complexas: automóveis, aeronaves, navios, etc
Curvas Representação Para representar uma curva, pode ser suficiente apenas definir uma sucessão de linhas Curvas e superfícies mais complexas irão demandar uma maneira mais eficiente de representação: Definir uma curva que passe por um determinado conjunto de pontos Definir a melhor curva para representar um determinado conjunto de pontos
Curvas Representação Formalmente, as curvas podem ser representadas de diversas formas: Por um conjunto de pontos Através de sua representação analítica Não paramétricas Paramétricas De 3ᵃ Ordem
Curvas Representação – Conjunto de Pontos Uma curva pode ser representada por um conjunto finito de pontos Na verdade, qualquer representação de curvas ou retas contém um número infinito de pontos
Curvas Representação – Conjunto de Pontos A curva pode ser representada por um número grande de pontos ou pela conexão deles por segmentos adequados
Curvas Representação – Conjunto de Pontos No caso de uma quantidade limitada de pontos, pode-se utilizar retas para conectá-los E, para alcançar uma suavidade maior, pode-se acrescentar uma maior quantidade de pontos
Curvas Representação – Analítica A representação analítica utiliza uma ou mais equações Vantagens: É mais precisa Não requer área de armazenamento Facilita o cálculo de novos pontos É mais fácil obter propriedades da curva (inclinação, área) Pode ser: Não Paramétrica Paramétrica
Curvas Representação – Analítica – Não Paramétrica A forma não paramétrica não recebe parâmetros, sendo calculada através de uma equação de y em x (ou vice-versa): Ordem da curva Y = ax2 + bx + c Equação da parábola a = 1 b = -2 c = 0 Para: É gerada:
Curvas Representação – Analítica – Não Paramétrica Certas curvas, chamadas de seções cônicas, podem ser obtidas a partir do corte de um cone por um plano
Curvas Representação – Analítica – Paramétrica Na forma paramétrica, usa-se um parâmetro para definir as coordenadas dos pontos da curva A posição do ponto na curva é definida com base no valor do parâmetro Ex: Formalmente, a posição de um ponto na curva é dada por: x = 10 cos θ = fx(θ) y = 10 sen θ = fy(θ) x = t+1 = fx(t) y = 2t+1 = fy(t) Independe do sistema de coordenadas. Ex: pode-se acrescentar mais uma coordenada z facilmente P (t) =( x (t) , y (t) )
Curvas Representação – Analítica – Paramétrica de 3ᵃ Ordem Problema: algumas curvas não podem ser facilmente descritas por expressões analíticas em toda sua extensão Solução: união de diversas curvas Novo problema: manter a continuidade das conexões Nova solução: usadas curvas representadas por polinômios cúbicos Muito conhecidas pelos usuários da CG, as curvas paramétricas de terceira ordem são: Hermite, Bézier e Splines Geradas por um polinômio cúbico e pela definição de um conjunto determinado de pontos de controle
Curvas Charles Hermite (1822 – 1901) Paramétrica de 3ᵃ Ordem – Hermite Charles Hermite (1822 – 1901) Uso de polinômios de 3ª ordem e 4 fatores: Ponto inicial Ponto final Vetor de controle de saída Vetor de controle de chegada Permite um maior controle Formas suaves e homogêneas Formas bruscas, loops
Curvas Hermite Os módulos de T1 e T2 funcionam como pesos na determinação da curva. Figura 1: Elementos da curva de Hermite Figura 2: As diferentes curvas formadas por alteração na direção de T1 e T2.
Curvas Bézier O grau da curva (do polinômio) é dado pelo número de pontos do polígono de controle menos 1 A curva de Bézier está contida no fecho convexo do polígono de controle A curva interpola o primeiro e último ponto do polígono de controle Utiliza 4 fatores: Ponto inicial Ponto final 2 pontos de controle das tangentes nos extremos
Curvas Controle Global: Bézier Movendo-se a posição de 1 só ponto, toda a forma da curva se modifica
Curvas Bézier – Junção de Curvas
Curvas Spline A base de Bézier não é própria para a modelagem de curvas longas Bézier única: suporte não local Trechos emendados: restrições não são naturais Base alternativa: B-Splines Modelagem por polígonos de controle sem restrições adicionais Grau do polinômio independe do número de pontos de controle Não passa pelos pontos de controle Controle local Alteração de um vértice afeta curva apenas na vizinhança
Curvas Spline
Curvas Comparativo Bézier Spline Hermite