次の方法で共有


CustomLineCap コンストラクタ (GraphicsPath, GraphicsPath)

指定したアウトラインと塗りつぶしを使用して、CustomLineCap クラスの新しいインスタンスを初期化します。

名前空間: System.Drawing.Drawing2D
アセンブリ: System.Drawing (system.drawing.dll 内)

構文

'宣言
Public Sub New ( _
    fillPath As GraphicsPath, _
    strokePath As GraphicsPath _
)
'使用
Dim fillPath As GraphicsPath
Dim strokePath As GraphicsPath

Dim instance As New CustomLineCap(fillPath, strokePath)
public CustomLineCap (
    GraphicsPath fillPath,
    GraphicsPath strokePath
)
public:
CustomLineCap (
    GraphicsPath^ fillPath, 
    GraphicsPath^ strokePath
)
public CustomLineCap (
    GraphicsPath fillPath, 
    GraphicsPath strokePath
)
public function CustomLineCap (
    fillPath : GraphicsPath, 
    strokePath : GraphicsPath
)

パラメータ

  • fillPath
    カスタム キャップの塗りつぶしを定義する GraphicsPath オブジェクト。
  • strokePath
    カスタム キャップのアウトラインを定義する GraphicsPath オブジェクト。

解説

CustomLineCap は、操作に対して指定されている塗りつぶしモードに関係なく、"winding" 塗りつぶしモードを使用します。

fillPath パラメータと strokePath パラメータは、同時には使用できません。いずれかのパラメータには null 値を渡す必要があります。いずれのパラメータにも null 値が渡されない場合は、fillPath が無視されます。strokePath が null 参照 (Visual Basic では Nothing) の場合、fillPath は負の y 軸を受け取る必要があります。

使用例

CustomLineCap コンストラクタを使用する方法を次の例に示します。この例を実行するには、コードを Windows フォームに貼り付けます。フォームの Paint イベントを処理して DrawCaps を呼び出します。このとき、フォームの Paint イベント処理メソッドで、e を PaintEventArgs として渡します。

Protected Sub DrawCaps(ByVal e As PaintEventArgs)
    Dim hPath As New GraphicsPath()

    ' Create the outline for our custom end cap.
    hPath.AddLine(New Point(0, 0), New Point(0, 5))
    hPath.AddLine(New Point(0, 5), New Point(5, 1))
    hPath.AddLine(New Point(5, 1), New Point(3, 1))

    ' Construct the hook-shaped end cap.
    Dim HookCap As New CustomLineCap(Nothing, hPath)

    ' Set the start cap and end cap of the HookCap to be rounded.
    HookCap.SetStrokeCaps(LineCap.Round, LineCap.Round)

    ' Create a pen and set end custom start and end
    ' caps to the hook cap.
    Dim customCapPen As New Pen(Color.Black, 5)
    customCapPen.CustomStartCap = HookCap
    customCapPen.CustomEndCap = HookCap

    ' Create a second pen using the start and end caps from
    ' the hook cap.
    Dim capPen As New Pen(Color.Red, 10)
    Dim startCap As LineCap
    Dim endCap As LineCap
    HookCap.GetStrokeCaps(startCap, endCap)
    capPen.StartCap = startCap
    capPen.EndCap = endCap

    ' Create a line to draw.
    Dim points As Point() = {New Point(100, 100), New Point(200, 50), _
        New Point(250, 300)}

    ' Draw the lines.
    e.Graphics.DrawLines(capPen, points)
    e.Graphics.DrawLines(customCapPen, points)

End Sub
protected void DrawCaps(PaintEventArgs e)
{
    GraphicsPath hPath = new GraphicsPath();

    // Create the outline for our custom end cap.
    hPath.AddLine(new Point(0, 0), new Point(0, 5));
    hPath.AddLine(new Point(0, 5), new Point(5, 1));
    hPath.AddLine(new Point(5, 1), new Point(3, 1));

    // Construct the hook-shaped end cap.
    CustomLineCap HookCap = new CustomLineCap(null, hPath);

    // Set the start cap and end cap of the HookCap to be rounded.
    HookCap.SetStrokeCaps(LineCap.Round, LineCap.Round);

    // Create a pen and set end custom start and end
    // caps to the hook cap.
    Pen customCapPen = new Pen(Color.Black, 5);
    customCapPen.CustomStartCap = HookCap;
    customCapPen.CustomEndCap = HookCap;

    // Create a second pen using the start and end caps from
    // the hook cap.
    Pen capPen = new Pen(Color.Red, 10);
    LineCap startCap;
    LineCap endCap;
    HookCap.GetStrokeCaps(out startCap, out endCap);
    capPen.StartCap = startCap;
    capPen.EndCap = endCap;

    // Create a line to draw.
    Point[] points = { new Point(100, 100), new Point(200, 50), 
        new Point(250, 300) };

    // Draw the lines.
    e.Graphics.DrawLines(capPen, points);
    e.Graphics.DrawLines(customCapPen, points);

}

プラットフォーム

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1、1.0

参照

関連項目

CustomLineCap クラス
CustomLineCap メンバ
System.Drawing.Drawing2D 名前空間