PolyBezierTo function (wingdi.h)

The PolyBezierTo function draws one or more Bézier curves.


BOOL PolyBezierTo(
  [in] HDC         hdc,
  [in] const POINT *apt,
  [in] DWORD       cpt


[in] hdc

A handle to a device context.

[in] apt

A pointer to an array of POINT structures that contains the endpoints and control points, in logical units.

[in] cpt

The number of points in the lppt array. This value must be three times the number of curves to be drawn because each Bézier curve requires two control points and an ending point.

Return value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero.


This function draws cubic Bézier curves by using the control points specified by the lppt parameter. The first curve is drawn from the current position to the third point by using the first two points as control points. For each subsequent curve, the function needs exactly three more points, and uses the ending point of the previous curve as the starting point for the next.

PolyBezierTo moves the current position to the ending point of the last Bézier curve. The figure is not filled.

This function draws lines by using the current pen.


Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wingdi.h (include Windows.h)
Library Gdi32.lib
DLL Gdi32.dll

See also

Line and Curve Functions

Lines and Curves Overview