Círculos, Elipses & Curvas de Bézier (Rasterizer2D.cs)
O arquivo Rasterizer2D.cs reúne os métodos analíticos e incrementais para rasterização de cônicas e curvas livres.
1. Algoritmo do Círculo do Ponto Médio (Midpoint Circle)
O círculo possui simetria perfeita em 8 setores ( cada). Por essa razão, o algoritmo calcula os pontos apenas para 1/8 do círculo e plota instantaneamente os 8 pontos simétricos:
void Plot8Points(int xc, int yc, int x, int y, Color c){ bmp.SetPixel(xc + x, yc + y, c); bmp.SetPixel(xc - x, yc + y, c); bmp.SetPixel(xc + x, yc - y, c); bmp.SetPixel(xc - x, yc - y, c); bmp.SetPixel(xc + y, yc + x, c); bmp.SetPixel(xc - y, yc + x, c); bmp.SetPixel(xc + y, yc - x, c); bmp.SetPixel(xc - y, yc - x, c);}A variável de decisão de erro começa com e é atualizada apenas com adições de números inteiros a cada passo.
2. Curvas Paramétricas de Bézier Cúbicas
Controladas por 4 pontos: ponto inicial , pontos de controle e , e ponto final .
Polinômio de Bernstein Cúbico ():
👉 Próximo Passo: Aprenda sobre Preenchimento Scanline & Recorte Cohen-Sutherland.