次の方法で共有


PolyDraw 関数 (wingdi.h)

PolyDraw 関数は、一連の線分とベジエ曲線を描画します。

構文

BOOL PolyDraw(
  [in] HDC         hdc,
  [in] const POINT *apt,
  [in] const BYTE  *aj,
  [in] int         cpt
);

パラメーター

[in] hdc

デバイス コンテキストへのハンドル。

[in] apt

POINT 構造体の配列へのポインター。各線分の端点と、各ベジエ曲線の端点と制御点が論理単位で格納されます。

[in] aj

lppt 配列内の各ポイントの使用方法を指定する配列へのポインター。 このパラメーターには、次のいずれかの値を指定できます。

種類 意味
PT_MOVETO
このポイントが不整合な図形を開始することを指定します。 このポイントが新しい現在位置になります。
PT_LINETO
現在の位置からこのポイントまでの線を描画し、新しい現在位置になるように指定します。
PT_BEZIERTO
この点がベジエ曲線の制御点または終点であることを指定します。

PT_BEZIERTO型は常に 3 つのセットで発生します。 現在位置はベジエ曲線の始点を定義します。 最初の 2 つのPT_BEZIERTO ポイントは制御ポイントであり、3 番目のPT_BEZIERTO ポイントは終点です。 終点が新しい現在位置になります。 連続するPT_BEZIERTO ポイントが 3 つ存在しない場合は、エラーが発生します。

 

ビット演算子 OR を使用して、PT_LINETOまたはPT_BEZIERTO型を次の値と組み合わせて、対応するポイントが図の最後のポイントであり、図形が閉じていることを示すことができます。

価値 意味
PT_CLOSEFIGURE
このポイントのPT_LINETOまたはPT_BEZIERTOの種類が完了した後、図形を自動的に閉じるかどうかを指定します。 この点から最新のPT_MOVETOまたは MoveToEx ポイント 線が描画されます。

この値は、ビットごとの演算子 OR を使用して、線のPT_LINETO型、またはベジエ曲線の終点のPT_BEZIERTO型と組み合わされます。

現在位置は、終了ラインの終点に設定されます。

[in] cpt

lpbTypes 配列内のバイト数と同じ、lppt 配列内のポイントの合計数。

戻り値

関数が成功した場合、戻り値は 0 以外です。

関数が失敗した場合、戻り値は 0 です。

備考

PolyDraw 関数は、MoveToEx、LineTo、および PolyBezierTo 関数を連続して呼び出して、不整合な図形を描画する 代わりに使用できます。 線と曲線は現在のペンを使用して描画され、図形は塗りつぶされません。 BeginPath呼び出して開始されたアクティブパスがある場合は、PolyDraw パスに追加されます。

lppt 配列および lpbTypes 配列に含まれるポイントは、各ポイントが MoveToLineTo、または PolyBezierTo 操作の の一部であるかどうかを示します。 フィギュアを閉じることもできます。

この関数は、現在の位置を更新します。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー wingdi.h (Windows.h を含む)
ライブラリ Gdi32.lib
DLL Gdi32.dll

関連項目

BeginPath の

EndPath を する

線関数と曲線関数の

LineTo

ラインと曲線の概要

MoveToEx を する

POINT

PolyBezierTo

PolyLine