<Return[PQ]><Top>

PolyDraw

Declare Function Api_PolyDraw& Lib "gdi32" Alias "PolyDraw" (ByVal hDC&, lppt As POINTAPI, lpbTypes As byte, ByVal cCount&)

Declare Function PolyDraw Lib "gdi32" Alias "PolyDraw" (ByVal hdc As Long, lppt As POINTAPI, lpbTypes As Byte, ByVal cCount As Long) As Long

直線とベジエ曲線の組み合わせを描画する。

パラメータ
hdc
    デバイスコンテキストを指定する。
lppt
    複数の POINT 構造体からなる 1 つの配列へのポインタを指定する。

    これらの構造体で、各直線の 2 つの端点、および各ベジエ曲線の端点と制御点を指定する。
lpbTypes
    lppt 配列内の各点の使い方を指定する 1 つの配列へのポインタを指定する。次のタイプのいずれかを指定する。

    タイプ                   

意味                                                                                                                                                

    PT_MOVETO

この点から不連続な図形を開始することを示す。この点は、新しい現在の位置になる。

    PT_LINETO

現在の位置からこの点(配列内の点)まで直線を描画することを指定する。この点は、新しい現在の位置になる。

    PT_BEZIERTO

この点がベジエ曲線の制御点または端点であることを示す。

    PT_BEZIERTO

 

 

タイプは、常に 3 つの点を 1 組とする。現在の位置はベジエ曲線の始点である。

最初の 2 つの PT_BEZIERTO 点は制御点であり、3 番目の PT_BEZIERTO 点は終点である。

終点が新しい現在の位置になる。 PT_BEZIERTO 点が 3 つ連続していない場合、1 つのエラーが発生する。

    PT_LINETO タイプ、または PT_BEZIERTO タイプは、ビット単位の OR 演算子を使って次の値と組み合わせること ができる。

    その結果、対応する点が図形の終点であり、その点で図形を閉じることを指定できる。

 

    値                            

意味                                                                                                                                                

    PT_CLOSEFIGURE

 

 

 

PT_LINETO タイプ、または PT_BEZIERTO タイプのこの点を処理した後で、図形を自動的に閉じるよう指定す

る。この点から、直前の PT_MOVETO の点、または MoveToEx 関数で指定された点へ直線が描画される。
直線の PT_LINETO タイプ、またはベジエ曲線の PT_BEZIERTO タイプの終点を、ビット単位の OR 演算子を

使ってこのPT_CLOSEFIGURE 値と組み合わせる。図形を閉じた線の終点が、新しい現在の位置になる。

cCount
    lppt 配列内の点の総数を指定する。この総数は、lpbTypes 配列内のバイト数と等しい値である。
 

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。
    Windows NT/2000:拡張エラー情報を取得するには、GetLastError 関数を使う。