Share via


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

Il metodo Graphics::D rawBeziers disegna una sequenza di spline connesse bézier.

Sintassi

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

Parametri

[in] pen

Tipo: penna const *

Puntatore a una penna usata per disegnare le spline di Bézier.

[in] points

Tipo: punto* const

Puntatore a una matrice di oggetti Point che specificano i punti di partenza, fine e controllo degli spline di Bézier. La coordinata finale di una spline Bézier è la coordinata iniziale della successiva spline di Bézier.

[in] count

Tipo: INT

Intero che specifica il numero di elementi nella matrice di punti .

Valore restituito

Tipo: Stato

Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .

Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .

Commenti

Una spline di Bézier non passa attraverso i punti di controllo. I punti di controllo agiscono come magneti, trascinando la curva in determinate direzioni per influenzare il modo in cui le spline di Bézier si piegano.

Esempio

L'esempio seguente disegna una coppia di curve 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));
}

Requisiti

   
Client minimo supportato Windows XP, Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione gdiplusgraphics.h (include Gdiplus.h)
Libreria Gdiplus.lib
DLL Gdiplus.dll

Vedi anche

Bézier Splines

Metodi DrawBezier

DrawBeziers

Disegno di Bézier Splines

Grafica

Penna

Point