Compartir a través de


Graphics::D rawBeziers(constPen*,constPoint*,INT) (gdiplusgraphics.h)

El método Graphics::D rawBeziers dibuja una secuencia de splines de Bézier conectados.

Sintaxis

Status DrawBeziers(
  [in] const Pen   *pen,
  [in] const Point *points,
  [in] INT         count
);

Parámetros

[in] pen

Tipo: const Pen*

Puntero a un lápiz que se usa para dibujar las splines bézier.

[in] points

Tipo: const Point*

Puntero a una matriz de Objetos point que especifican los puntos de inicio, final y control de las splines bézier. La coordenada final de una spline bézier es la coordenada inicial de la siguiente spline bézier.

[in] count

Tipo: INT

Entero que especifica el número de elementos de la puntos matriz.

Valor devuelto

Tipo: estado de

Si el método se ejecuta correctamente, devuelve Ok, que es un elemento de la enumeración Status Status.

Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .

Observaciones

Una spline Bézier no pasa por sus puntos de control. Los puntos de control actúan como imanes, tirando la curva en determinadas direcciones para influir en la forma en que se doblan las splines bézier.

Ejemplos

En el ejemplo siguiente se dibuja un 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
cliente mínimo admitido Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de gdiplusgraphics.h (include Gdiplus.h)
biblioteca de Gdiplus.lib
DLL de Gdiplus.dll

Consulte también

Bézier Splines

métodos DrawBezier

drawBeziers

Dibujo bézier Splines

gráficos

pen

de punto de