Compartilhar via


Splines de Bézier

Uma spline de Bézier é uma curva especificada por quatro pontos: dois pontos de extremidade (p1 e p2) e dois pontos de controle (c1 e c2). A curva começa em p1 e termina em p2. A curva não passa pelos pontos de controle, mas os pontos de controle atuam como ímãs, puxando a curva em determinadas direções e influenciando a maneira como a curva se curva. A ilustração a seguir mostra uma curva de Bézier junto com seus pontos de extremidade e de controle.

ilustração mostrando um spline de bézier com dois pontos de extremidade e dois pontos de controle

Observe que a curva começa em p1 e se move em direção ao ponto de controle c1. A linha tangente da curva em p1 é a linha desenhada de p1 a c1. Observe também que a linha tangente no ponto de extremidade p2 é a linha desenhada de c2 para p2.

Para desenhar uma spline Bézier, você precisa de um objeto Graphics e um objeto Pen . O objeto Graphics fornece o método DrawBezier e o objeto Pen armazena atributos da curva, como largura e cor da linha. O endereço do objeto Pen é passado como um dos argumentos para o método DrawBezier. Os argumentos restantes passados para o método DrawBezier são os pontos de extremidade e os pontos de controle. O exemplo a seguir desenha um spline Bézier com ponto de partida (0, 0), pontos de controle (40, 20) e (80, 150) e ponto final (100, 10).

myGraphics.DrawBezier(&myPen, 0, 0, 40, 20, 80, 150, 100, 10);

A ilustração a seguir mostra a curva, os pontos de controle e duas linhas tangentes.

ilustração mostrando uma spline de bézier com dois pontos de extremidade, dois pontos de controle e duas linhas tangentes

As splines de Bézier foram desenvolvidos originalmente por Pierre Bézier para projetos da indústria automotiva. Desde então, eles se mostraram muito úteis em muitos tipos de design auxiliado por computador e também são usados para definir as estruturas de tópicos das fontes. Splines de Bézier podem gerar uma grande variedade de formas, algumas das quais são mostradas na ilustração a seguir.

ilustração mostrando três splines de bézier