マイター接合を使用した三角形の描画(VB)

説明:

三角形のパスを作成し、ExtCreatePenによってマイター接合をした三角形を描画する。パス作成時にCloseFigureを使用することにより、全ての頂点がマイター接合するようにする。

キーワード:

BeginPath, MoveToEx, LineTo, CloseFigure, EndPath, ExtCreatePen, SelectObject, StrokePath, DeleteObject

サンプルコード:

Private Sub Command1_Click()

    Dim hOldPen As Long
    Dim hPen As Long
    Dim Log As LOGBRUSH
    
    Log.lbStyle = BS_SOLID
    Log.lbColor = vbWhite
    Log.lbHatch = 0
    
    'パスブラケットのオープン
    BeginPath Picture1.hDC
    
    '三角形を記述
    MoveToEx Picture1.hDC, 100, 50, 0
    LineTo Picture1.hDC, 50, 150
    LineTo Picture1.hDC, 150, 150
    
    '以下のようにLineToで図形を閉じた場合、マイター接合されない。
    'LineTo Picture1.hDC, 100, 50
    
    '従って、CloseFigureで図形を閉じる
    CloseFigure Picture1.hDC

    'パスブラケットの終了
    EndPath Picture1.hDC
    
    'パスの描画
    hPen = ExtCreatePen( _
        PS_GEOMETRIC Or PS_SOLID Or PS_ENDCAP_FLAT Or PS_JOIN_MITER, _
        20, Log, 0, 0)

    hOldPen = SelectObject(Picture1.hDC, hPen)
   
    StrokePath Picture1.hDC
    
    '後処理
    SelectObject Picture1.hDC, hOldPen
    DeleteObject hPen

End Sub

(original text:1999/03/05 更新)

本ドキュメントの内容は保証しません。本ドキュメントによって生じた結果について、一切の責任を負いません。