Método Graphics::D rawBeziers(constPen*,constPoint*,INT) (gdiplusgraphics.h)
O método Graphics::D rawBeziers desenha uma sequência de splines Bézier conectados.
Sintaxe
Status DrawBeziers(
[in] const Pen *pen,
[in] const Point *points,
[in] INT count
);
Parâmetros
[in] pen
Tipo: const Pen*
Ponteiro para uma caneta que é usada para desenhar as splines Bézier.
[in] points
Tipo: const Point*
Ponteiro para uma matriz de Point objetos que especificam os pontos de início, término e controle das splines de Bézier. A coordenada final de um spline de Bézier é a coordenada inicial do próximo spline Bézier.
[in] count
Tipo: INT
Inteiro que especifica o número de elementos nos pontos matriz.
Valor de retorno
Tipo: Status
Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status.
Se o método falhar, ele retornará um dos outros elementos da enumeração Status.
Observações
Uma spline Bézier não passa por seus pontos de controle. Os pontos de controle atuam como ímãs, puxando a curva em certas direções para influenciar a forma como as splines de Bézier se curvam.
Exemplos
O exemplo a seguir desenha um par de curvas Bézier.
VOID Example_DrawBeziers(HDC hdc)
{
Graphics graphics(hdc);
// Define a Pen object and an array of Point objects.
Pen greenPen(Color(255, 0, 255, 0), 3);
Point startPoint(100, 100);
Point ctrlPoint1(200, 50);
Point ctrlPoint2(400, 10);
Point endPoint1(500, 100);
Point ctrlPoint3(600, 200);
Point ctrlPoint4(700, 400);
Point endPoint2(500, 500);
Point curvePoints[7] = {
startPoint,
ctrlPoint1,
ctrlPoint2,
endPoint1,
ctrlPoint3,
ctrlPoint4,
endPoint2};
// Draw the Bezier curves.
graphics.DrawBeziers(&greenPen, curvePoints, 7);
// Draw the control and end points.
SolidBrush redBrush(Color(255, 255, 0, 0));
graphics.FillEllipse(&redBrush, Rect(100 - 5, 100 - 5, 10, 10));
graphics.FillEllipse(&redBrush, Rect(500 - 5, 100 - 5, 10, 10));
graphics.FillEllipse(&redBrush, Rect(500 - 5, 500 - 5, 10, 10));
SolidBrush blueBrush(Color(255, 0, 0, 255));
graphics.FillEllipse(&blueBrush, Rect(200 - 5, 50 - 5, 10, 10));
graphics.FillEllipse(&blueBrush, Rect(400 - 5, 10 - 5, 10, 10));
graphics.FillEllipse(&blueBrush, Rect(600 - 5, 200 - 5, 10, 10));
graphics.FillEllipse(&blueBrush, Rect(700 - 5, 400 - 5, 10, 10));
}
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | gdiplusgraphics.h (inclua Gdiplus.h) |
biblioteca | Gdiplus.lib |
de DLL |
Gdiplus.dll |
Consulte também
Métodos DrawBezier
do ponto de