Export (0) Print
Expand All
1 out of 3 rated this helpful - Rate this topic

GraphicsPath Class

Represents a series of connected lines and curves. This class cannot be inherited.

System.Object
  System.MarshalByRefObject
    System.Drawing.Drawing2D.GraphicsPath

Namespace:  System.Drawing.Drawing2D
Assembly:  System.Drawing (in System.Drawing.dll)
'Declaration
Public NotInheritable Class GraphicsPath _
	Inherits MarshalByRefObject _
	Implements ICloneable, IDisposable

The GraphicsPath type exposes the following members.

  NameDescription
Public methodGraphicsPathInitializes a new instance of the GraphicsPath class with a FillMode value of Alternate.
Public methodGraphicsPath(FillMode)Initializes a new instance of the GraphicsPath class with the specified FillMode enumeration.
Public methodGraphicsPath(Point(), Byte())Initializes a new instance of the GraphicsPath class with the specified PathPointType and Point arrays.
Public methodGraphicsPath(PointF(), Byte())Initializes a new instance of the GraphicsPath array with the specified PathPointType and PointF arrays.
Public methodGraphicsPath(Point(), Byte(), FillMode)Initializes a new instance of the GraphicsPath class with the specified PathPointType and Point arrays and with the specified FillMode enumeration element.
Public methodGraphicsPath(PointF(), Byte(), FillMode)Initializes a new instance of the GraphicsPath array with the specified PathPointType and PointF arrays and with the specified FillMode enumeration element.
Top
  NameDescription
Public propertyFillModeGets or sets a FillMode enumeration that determines how the interiors of shapes in this GraphicsPath are filled.
Public propertyPathDataGets a PathData that encapsulates arrays of points (points) and types (types) for this GraphicsPath.
Public propertyPathPointsGets the points in the path.
Public propertyPathTypesGets the types of the corresponding points in the PathPoints array.
Public propertyPointCountGets the number of elements in the PathPoints or the PathTypes array.
Top
  NameDescription
Public methodAddArc(Rectangle, Single, Single)Appends an elliptical arc to the current figure.
Public methodAddArc(RectangleF, Single, Single)Appends an elliptical arc to the current figure.
Public methodAddArc(Int32, Int32, Int32, Int32, Single, Single)Appends an elliptical arc to the current figure.
Public methodAddArc(Single, Single, Single, Single, Single, Single)Appends an elliptical arc to the current figure.
Public methodAddBezier(Point, Point, Point, Point)Adds a cubic Bézier curve to the current figure.
Public methodAddBezier(PointF, PointF, PointF, PointF)Adds a cubic Bézier curve to the current figure.
Public methodAddBezier(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)Adds a cubic Bézier curve to the current figure.
Public methodAddBezier(Single, Single, Single, Single, Single, Single, Single, Single)Adds a cubic Bézier curve to the current figure.
Public methodAddBeziers(Point())Adds a sequence of connected cubic Bézier curves to the current figure.
Public methodAddBeziers(PointF())Adds a sequence of connected cubic Bézier curves to the current figure.
Public methodAddClosedCurve(Point())Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
Public methodAddClosedCurve(PointF())Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
Public methodAddClosedCurve(Point(), Single)Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
Public methodAddClosedCurve(PointF(), Single)Adds a closed curve to this path. A cardinal spline curve is used because the curve travels through each of the points in the array.
Public methodAddCurve(Point())Adds a spline curve to the current figure. A cardinal spline curve is used because the curve travels through each of the points in the array.
Public methodAddCurve(PointF())Adds a spline curve to the current figure. A cardinal spline curve is used because the curve travels through each of the points in the array.
Public methodAddCurve(Point(), Single)Adds a spline curve to the current figure.
Public methodAddCurve(PointF(), Single)Adds a spline curve to the current figure.
Public methodAddCurve(Point(), Int32, Int32, Single)Adds a spline curve to the current figure.
Public methodAddCurve(PointF(), Int32, Int32, Single)Adds a spline curve to the current figure.
Public methodAddEllipse(Rectangle)Adds an ellipse to the current path.
Public methodAddEllipse(RectangleF)Adds an ellipse to the current path.
Public methodAddEllipse(Int32, Int32, Int32, Int32)Adds an ellipse to the current path.
Public methodAddEllipse(Single, Single, Single, Single)Adds an ellipse to the current path.
Public methodAddLine(Point, Point)Appends a line segment to this GraphicsPath.
Public methodAddLine(PointF, PointF)Appends a line segment to this GraphicsPath.
Public methodAddLine(Int32, Int32, Int32, Int32)Appends a line segment to the current figure.
Public methodAddLine(Single, Single, Single, Single)Appends a line segment to this GraphicsPath.
Public methodAddLines(Point())Appends a series of connected line segments to the end of this GraphicsPath.
Public methodAddLines(PointF())Appends a series of connected line segments to the end of this GraphicsPath.
Public methodAddPathAppends the specified GraphicsPath to this path.
Public methodAddPie(Rectangle, Single, Single)Adds the outline of a pie shape to this path.
Public methodAddPie(Int32, Int32, Int32, Int32, Single, Single)Adds the outline of a pie shape to this path.
Public methodAddPie(Single, Single, Single, Single, Single, Single)Adds the outline of a pie shape to this path.
Public methodAddPolygon(Point())Adds a polygon to this path.
Public methodAddPolygon(PointF())Adds a polygon to this path.
Public methodAddRectangle(Rectangle)Adds a rectangle to this path.
Public methodAddRectangle(RectangleF)Adds a rectangle to this path.
Public methodAddRectangles(Rectangle())Adds a series of rectangles to this path.
Public methodAddRectangles(RectangleF())Adds a series of rectangles to this path.
Public methodAddString(String, FontFamily, Int32, Single, Point, StringFormat)Adds a text string to this path.
Public methodAddString(String, FontFamily, Int32, Single, PointF, StringFormat)Adds a text string to this path.
Public methodAddString(String, FontFamily, Int32, Single, Rectangle, StringFormat)Adds a text string to this path.
Public methodAddString(String, FontFamily, Int32, Single, RectangleF, StringFormat)Adds a text string to this path.
Public methodClearMarkersClears all markers from this path.
Public methodCloneCreates an exact copy of this path.
Public methodCloseAllFiguresCloses all open figures in this path and starts a new figure. It closes each open figure by connecting a line from its endpoint to its starting point.
Public methodCloseFigureCloses the current figure and starts a new figure. If the current figure contains a sequence of connected lines and curves, the method closes the loop by connecting a line from the endpoint to the starting point.
Public methodCreateObjRefCreates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Public methodDisposeReleases all resources used by this GraphicsPath.
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public methodFlattenConverts each curve in this path into a sequence of connected line segments.
Public methodFlatten(Matrix)Applies the specified transform and then converts each curve in this GraphicsPath into a sequence of connected line segments.
Public methodFlatten(Matrix, Single)Converts each curve in this GraphicsPath into a sequence of connected line segments.
Public methodGetBoundsReturns a rectangle that bounds this GraphicsPath.
Public methodGetBounds(Matrix)Returns a rectangle that bounds this GraphicsPath when this path is transformed by the specified Matrix.
Public methodGetBounds(Matrix, Pen)Returns a rectangle that bounds this GraphicsPath when the current path is transformed by the specified Matrix and drawn with the specified Pen.
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetLastPointGets the last point in the PathPoints array of this GraphicsPath.
Public methodGetLifetimeServiceRetrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodInitializeLifetimeServiceObtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Public methodIsOutlineVisible(Point, Pen)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen.
Public methodIsOutlineVisible(PointF, Pen)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen.
Public methodIsOutlineVisible(Int32, Int32, Pen)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen.
Public methodIsOutlineVisible(Point, Pen, Graphics)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen and using the specified Graphics.
Public methodIsOutlineVisible(PointF, Pen, Graphics)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen and using the specified Graphics.
Public methodIsOutlineVisible(Single, Single, Pen)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen.
Public methodIsOutlineVisible(Int32, Int32, Pen, Graphics)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen and using the specified Graphics.
Public methodIsOutlineVisible(Single, Single, Pen, Graphics)Indicates whether the specified point is contained within (under) the outline of this GraphicsPath when drawn with the specified Pen and using the specified Graphics.
Public methodIsVisible(Point)Indicates whether the specified point is contained within this GraphicsPath.
Public methodIsVisible(PointF)Indicates whether the specified point is contained within this GraphicsPath.
Public methodIsVisible(Int32, Int32)Indicates whether the specified point is contained within this GraphicsPath.
Public methodIsVisible(Point, Graphics)Indicates whether the specified point is contained within this GraphicsPath.
Public methodIsVisible(PointF, Graphics)Indicates whether the specified point is contained within this GraphicsPath.
Public methodIsVisible(Single, Single)Indicates whether the specified point is contained within this GraphicsPath.
Public methodIsVisible(Int32, Int32, Graphics)Indicates whether the specified point is contained within this GraphicsPath, using the specified Graphics.
Public methodIsVisible(Single, Single, Graphics)Indicates whether the specified point is contained within this GraphicsPath in the visible clip region of the specified Graphics.
Public methodResetEmpties the PathPoints and PathTypes arrays and sets the FillMode to Alternate.
Public methodReverseReverses the order of points in the PathPoints array of this GraphicsPath.
Public methodSetMarkersSets a marker on this GraphicsPath.
Public methodStartFigureStarts a new figure without closing the current figure. All subsequent points added to the path are added to this new figure.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Public methodTransformApplies a transform matrix to this GraphicsPath.
Public methodWarp(PointF(), RectangleF)Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.
Public methodWarp(PointF(), RectangleF, Matrix)Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.
Public methodWarp(PointF(), RectangleF, Matrix, WarpMode)Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.
Public methodWarp(PointF(), RectangleF, Matrix, WarpMode, Single)Applies a warp transform, defined by a rectangle and a parallelogram, to this GraphicsPath.
Public methodWiden(Pen)Adds an additional outline to the path.
Public methodWiden(Pen, Matrix)Adds an additional outline to the GraphicsPath.
Public methodWiden(Pen, Matrix, Single)Replaces this GraphicsPath with curves that enclose the area that is filled when this path is drawn by the specified pen.
Top

Applications use paths to draw outlines of shapes, fill the interiors of shapes, and create clipping regions. The graphics engine maintains the coordinates of geometric shapes in a path in world coordinate space.

A path may be composed of any number of figures (subpaths). Each figure is either composed of a sequence of connected lines and curves or a geometric shape primitive. The starting point of a figure is the first point in the sequence of connected lines and curves. The ending point is the last point in the sequence. The starting and ending points of a geometric shape primitive are defined by the primitive specification.

A figure that consists of a sequence of connected lines and curves (whose starting and ending points may be coincident) is an open figure, unless it is closed explicitly. A figure can be closed explicitly, by using the CloseFigure method, which closes the current figure by connecting a line from the ending point to the starting point. A figure that consists of a geometric shape primitive is a closed figure.

For purposes of filling and clipping (for example, if a path is rendered using FillPath), all open figures are closed by adding a line from the figure's first point to its last point.

A new figure is implicitly started when a path is created or when a figure is closed. A new figure is explicitly created when the StartFigure method is called.

When a geometric shape primitive is added to a path, it adds a figure containing the geometric shape, and also implicitly starts a new figure. Consequently, there is always a current figure in a path. When lines and curves are added to a path, an implicit line is added as needed to connect the ending point of the current figure to the starting point of the new lines and curves to form a sequence of connected lines and curves.

A figure has a direction that describes how line and curve segments are traced between the starting point and the ending point. The direction is defined in the order that lines and curves are added to a figure, or is defined by the geometric shape primitive. The direction is used in determining the path interiors for clipping and fill.

.NET Framework

Supported in: 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.