Conteúdos da cadeira

Curvas e superfícies

Curvas paramétricas de Bézier avaliadas por de Casteljau e a passagem a superfícies.

Markdown

Perguntar sobre esta página

ChatGPTClaudePerplexityGeminiCopiar e abrir

Envia o link e pede à IA para ler a página. No Gemini, cola a pergunta copiada.

Ver pergunta para copiar
Nesta página

Malhas de triângulos aproximam superfícies suaves à força de subdivisão. As curvas e superfícies paramétricas descrevem a suavidade diretamente com fórmulas, e só no fim se convertem em triângulos para renderizar. São elas que desenham letras, carroçarias e personagens. A curva de Bézier é a porta de entrada: simples, geométrica e com um algoritmo de avaliação que se faz à mão.

Curvas paramétricas

Uma curva paramétrica é uma função P(t)\mathbf{P}(t) que para cada tt num intervalo (normalmente [0,1][0, 1]) devolve um ponto. Uma curva de Bézier cúbica fica definida por quatro pontos de controlo P0,P1,P2,P3P_0, P_1, P_2, P_3: a curva começa em P0P_0, termina em P3P_3 e os dois do meio puxam-na sem a tocar. Mover um ponto de controlo deforma só a vizinhança, o que torna a edição intuitiva.

A avaliação faz-se pelo algoritmo de de Casteljau: interpolação linear repetida. Para um dado tt, interpola cada par de pontos adjacentes com peso tt, obtendo menos um ponto; repete até restar um só, que é P(t)\mathbf{P}(t). Com t=0,5t = 0{,}5 cada passo é uma média simples, ideal para fazer à mão.

Exemplo: um ponto da curva

Sejam P0=(0,0)P_0 = (0, 0), P1=(1,2)P_1 = (1, 2), P2=(3,2)P_2 = (3, 2) e P3=(4,0)P_3 = (4, 0), com t=0,5t = 0{,}5. Primeira ronda de médias:

Q0=P0+P12=(0,5, 1),Q1=P1+P22=(2, 2),Q2=P2+P32=(3,5, 1).Q_0 = \frac{P_0 + P_1}{2} = (0{,}5,\ 1), \qquad Q_1 = \frac{P_1 + P_2}{2} = (2,\ 2), \qquad Q_2 = \frac{P_2 + P_3}{2} = (3{,}5,\ 1).

Segunda ronda:

R0=Q0+Q12=(1,25, 1,5),R1=Q1+Q22=(2,75, 1,5).R_0 = \frac{Q_0 + Q_1}{2} = (1{,}25,\ 1{,}5), \qquad R_1 = \frac{Q_1 + Q_2}{2} = (2{,}75,\ 1{,}5).

Ronda final:

S=R0+R12=(2, 1,5).S = \frac{R_0 + R_1}{2} = (2,\ 1{,}5).

O ponto da curva em t=0,5t = 0{,}5 é (2, 1,5)(2,\ 1{,}5). Repara que ficou abaixo dos pontos de controlo do meio, que estão em altura 2: a curva não passa por eles, apenas é atraída. E repara ainda que o algoritmo subdivide a curva ao meio como bónus: os pontos P0,Q0,R0,SP_0, Q_0, R_0, S definem a metade esquerda e S,R1,Q2,P3S, R_1, Q_2, P_3 a metade direita.

De curvas a superfícies

Uma superfície paramétrica é S(u,v)\mathbf{S}(u, v) com dois parâmetros: uma grelha de pontos de controlo em vez de uma fila. O retalho de Bézier bicúbico usa 4×44 \times 4 pontos e avalia-se aplicando de Casteljau numa direção e depois na outra. Coser vários retalhos exige continuidade nas fronteiras, e é aí que entram as variantes usadas na indústria (splines, B-splines, NURBS), que garantem suavidade automática entre troços. Para a cadeira, fixa a ideia central: a superfície suave nasce de pontos de controlo e só vira malha de triângulos na altura de desenhar.

Ver o ficheiro no GitHub

À tua maneira

Escolhe como preferes ler.

Aparência
Ajustar cores e largura
Cor de destaque do tema FEUP
Tipo de letra

Álgebra, lógica e uma ideia de cada vez.

As tuas escolhas ficam guardadas neste navegador.

Pesquisar

Escreve para pesquisar em todo o site.

para escolher · Enter para abrir · Esc para fechar

Atalhos de teclado

Clica numa tecla para a mudar. Esc cancela. Backspace desativa.

PesquisarCtrl / Cmd K

Os atalhos não interferem enquanto escreves. Tab e Enter funcionam sempre.