PolyDraw
The PolyDraw
function draws a set of line segments and B zier curves.
BOOL PolyDraw(
HDC hdc, |
// handle to a
device context |
CONST POINT *lppt, |
// pointer to array
of points |
CONST BYTE *lpbTypes, |
// pointer to line
and curve identifiers |
int cCount |
// count of points |
); |
|
Parameters
hdc
Identifies a
device context.
lppt
Points to an
array of POINT
lpbTypes
Points to an
array that specifies how each point in the lppt array is used. Types can
be one of the following:
Type |
Meaning |
PT_MOVETO |
Specifies
that this point starts a disjoint figure. This point becomes the new current
position. |
PT_LINETO |
Specifies
that a line is to be drawn from the current position to this point, which
then becomes the new current position. |
PT_BEZIERTO |
Specifies
that this point is a control point or ending point for a B zier curve. |
|
PT_BEZIERTO
types always occur in sets of three. The current position defines the
starting point for the B zier curve. The first two PT_BEZIERTO points are the
control points, and the third PT_BEZIERTO point is the ending point. The
ending point becomes the new current position. If there are not three
consecutive PT_BEZIERTO points, an error results. |
A PT_LINETO
or PT_BEZIERTO type can be combined with the following value by using the
bitwise operator OR to indicate that the corresponding point is the last point
in a figure and the figure is closed:
Value |
Meaning |
PT_CLOSEFIGURE |
Specifies
that the figure is automatically closed after the PT_LINETO or PT_BEZIERTO
type for this point is done. A line is drawn from this point to the most
recent PT_MOVETO or MoveToEx |
|
This value
is combined with the PT_LINETO type for a line, or with the PT_BEZIERTO type
of the ending point for a B zier curve, by using the bitwise operator OR. |
|
The current
position is set to the ending point of the closing line. |
cCount
Specifies the
total number of points in the lppt array, the same as the number of
bytes in the lpbTypes array.
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero.
Remarks
The PolyDraw
function can be used in place of consecutive calls to MoveToEx
The points
contained in the lppt array and in the lpbTypes array indicate
whether each point is part of a MoveTo, LineTo, or PolyBezierTo
operation. It is also possible to close figures.
This function
updates the current position.
See Also