CustomLineCap Constructors
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Initializes a new instance of the CustomLineCap class with the specified outline and fill.
Overloads
CustomLineCap(GraphicsPath, GraphicsPath) |
Initializes a new instance of the CustomLineCap class with the specified outline and fill. |
CustomLineCap(GraphicsPath, GraphicsPath, LineCap) |
Initializes a new instance of the CustomLineCap class from the specified existing LineCap enumeration with the specified outline and fill. |
CustomLineCap(GraphicsPath, GraphicsPath, LineCap, Single) |
Initializes a new instance of the CustomLineCap class from the specified existing LineCap enumeration with the specified outline, fill, and inset. |
CustomLineCap(GraphicsPath, GraphicsPath)
- Source:
- CustomLineCap.cs
- Source:
- CustomLineCap.cs
Initializes a new instance of the CustomLineCap class with the specified outline and fill.
public:
CustomLineCap(System::Drawing::Drawing2D::GraphicsPath ^ fillPath, System::Drawing::Drawing2D::GraphicsPath ^ strokePath);
public CustomLineCap (System.Drawing.Drawing2D.GraphicsPath? fillPath, System.Drawing.Drawing2D.GraphicsPath? strokePath);
public CustomLineCap (System.Drawing.Drawing2D.GraphicsPath fillPath, System.Drawing.Drawing2D.GraphicsPath strokePath);
new System.Drawing.Drawing2D.CustomLineCap : System.Drawing.Drawing2D.GraphicsPath * System.Drawing.Drawing2D.GraphicsPath -> System.Drawing.Drawing2D.CustomLineCap
Public Sub New (fillPath As GraphicsPath, strokePath As GraphicsPath)
Parameters
- fillPath
- GraphicsPath
A GraphicsPath object that defines the fill for the custom cap.
- strokePath
- GraphicsPath
A GraphicsPath object that defines the outline of the custom cap.
Examples
The following example demonstrates how to use the CustomLineCap constructor. To run this example, paste the code into a Windows Form. Handle the form's Paint event and call DrawCaps
from the form's Paint event-handling method, passing e
as PaintEventArgs.
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);
}
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
Remarks
CustomLineCap uses a fill mode of "winding" regardless of the fill mode specified for the operation.
The fillPath
and strokePath
parameters cannot be used at the same time. One parameter must be passed a null value. If neither parameter is passed a null value, fillPath
will be ignored. If strokePath
is null
, fillPath
should intercept the negative y-axis.
Applies to
CustomLineCap(GraphicsPath, GraphicsPath, LineCap)
- Source:
- CustomLineCap.cs
- Source:
- CustomLineCap.cs
Initializes a new instance of the CustomLineCap class from the specified existing LineCap enumeration with the specified outline and fill.
public:
CustomLineCap(System::Drawing::Drawing2D::GraphicsPath ^ fillPath, System::Drawing::Drawing2D::GraphicsPath ^ strokePath, System::Drawing::Drawing2D::LineCap baseCap);
public CustomLineCap (System.Drawing.Drawing2D.GraphicsPath? fillPath, System.Drawing.Drawing2D.GraphicsPath? strokePath, System.Drawing.Drawing2D.LineCap baseCap);
public CustomLineCap (System.Drawing.Drawing2D.GraphicsPath fillPath, System.Drawing.Drawing2D.GraphicsPath strokePath, System.Drawing.Drawing2D.LineCap baseCap);
new System.Drawing.Drawing2D.CustomLineCap : System.Drawing.Drawing2D.GraphicsPath * System.Drawing.Drawing2D.GraphicsPath * System.Drawing.Drawing2D.LineCap -> System.Drawing.Drawing2D.CustomLineCap
Public Sub New (fillPath As GraphicsPath, strokePath As GraphicsPath, baseCap As LineCap)
Parameters
- fillPath
- GraphicsPath
A GraphicsPath object that defines the fill for the custom cap.
- strokePath
- GraphicsPath
A GraphicsPath object that defines the outline of the custom cap.
- baseCap
- LineCap
The line cap from which to create the custom cap.
Remarks
CustomLineCap uses a fill mode of "winding" regardless of the fill mode specified for the operation.
The fillPath
and strokePath
parameters cannot be used at the same time. One parameter must be passed a null value. If neither parameter is passed a null value, fillPath
will be ignored. If strokePath
is null
, fillPath
should intercept the negative y-axis.
Applies to
CustomLineCap(GraphicsPath, GraphicsPath, LineCap, Single)
- Source:
- CustomLineCap.cs
- Source:
- CustomLineCap.cs
Initializes a new instance of the CustomLineCap class from the specified existing LineCap enumeration with the specified outline, fill, and inset.
public:
CustomLineCap(System::Drawing::Drawing2D::GraphicsPath ^ fillPath, System::Drawing::Drawing2D::GraphicsPath ^ strokePath, System::Drawing::Drawing2D::LineCap baseCap, float baseInset);
public CustomLineCap (System.Drawing.Drawing2D.GraphicsPath? fillPath, System.Drawing.Drawing2D.GraphicsPath? strokePath, System.Drawing.Drawing2D.LineCap baseCap, float baseInset);
public CustomLineCap (System.Drawing.Drawing2D.GraphicsPath fillPath, System.Drawing.Drawing2D.GraphicsPath strokePath, System.Drawing.Drawing2D.LineCap baseCap, float baseInset);
new System.Drawing.Drawing2D.CustomLineCap : System.Drawing.Drawing2D.GraphicsPath * System.Drawing.Drawing2D.GraphicsPath * System.Drawing.Drawing2D.LineCap * single -> System.Drawing.Drawing2D.CustomLineCap
Public Sub New (fillPath As GraphicsPath, strokePath As GraphicsPath, baseCap As LineCap, baseInset As Single)
Parameters
- fillPath
- GraphicsPath
A GraphicsPath object that defines the fill for the custom cap.
- strokePath
- GraphicsPath
A GraphicsPath object that defines the outline of the custom cap.
- baseCap
- LineCap
The line cap from which to create the custom cap.
- baseInset
- Single
The distance between the cap and the line.
Remarks
CustomLineCap uses a fill mode of "winding" regardless of the fill mode specified for the operation.
The fillPath
and strokePath
parameters cannot be used at the same time. One parameter must be passed a null value. If neither parameter is passed a null value, fillPath
will be ignored. If strokePath
is null
, fillPath
should intercept the negative y-axis.