<PackageReference Include="System.Drawing.Common" Version="11.0.0-preview.1.26104.118" />

System.Drawing.Drawing2D.GraphicsPath

Represents a series of connected lines and curves. This class cannot be inherited.
namespace System.Drawing.Drawing2D { public sealed class GraphicsPath : MarshalByRefObject, ICloneable, IDisposable { public FillMode FillMode { get; set; } public PathData PathData { get; } public int PointCount { get; } public byte[] PathTypes { get; } public PointF[] PathPoints { get; } public GraphicsPath(); public GraphicsPath(FillMode fillMode); public GraphicsPath(PointF[] pts, byte[] types); public GraphicsPath(PointF[] pts, byte[] types, FillMode fillMode); public GraphicsPath(ReadOnlySpan<PointF> pts, ReadOnlySpan<byte> types, FillMode fillMode = FillMode.Alternate); public GraphicsPath(Point[] pts, byte[] types); public GraphicsPath(Point[] pts, byte[] types, FillMode fillMode); public GraphicsPath(ReadOnlySpan<Point> pts, ReadOnlySpan<byte> types, FillMode fillMode = FillMode.Alternate); public object Clone(); public void Dispose(); public void Reset(); public void StartFigure(); public void CloseFigure(); public void CloseAllFigures(); public void SetMarkers(); public void ClearMarkers(); public void Reverse(); public PointF GetLastPoint(); public bool IsVisible(float x, float y); public bool IsVisible(PointF point); public bool IsVisible(float x, float y, Graphics graphics); public bool IsVisible(PointF pt, Graphics graphics); public bool IsVisible(int x, int y); public bool IsVisible(Point point); public bool IsVisible(int x, int y, Graphics graphics); public bool IsVisible(Point pt, Graphics graphics); public bool IsOutlineVisible(float x, float y, Pen pen); public bool IsOutlineVisible(PointF point, Pen pen); public bool IsOutlineVisible(float x, float y, Pen pen, Graphics graphics); public bool IsOutlineVisible(PointF pt, Pen pen, Graphics graphics); public bool IsOutlineVisible(int x, int y, Pen pen); public bool IsOutlineVisible(Point point, Pen pen); public bool IsOutlineVisible(int x, int y, Pen pen, Graphics graphics); public bool IsOutlineVisible(Point pt, Pen pen, Graphics graphics); public void AddLine(PointF pt1, PointF pt2); public void AddLine(float x1, float y1, float x2, float y2); public void AddLines(params PointF[] points); public void AddLines(ReadOnlySpan<PointF> points); public void AddLine(Point pt1, Point pt2); public void AddLine(int x1, int y1, int x2, int y2); public void AddLines(params Point[] points); public void AddLines(ReadOnlySpan<Point> points); public void AddArc(RectangleF rect, float startAngle, float sweepAngle); public void AddArc(float x, float y, float width, float height, float startAngle, float sweepAngle); public void AddArc(Rectangle rect, float startAngle, float sweepAngle); public void AddArc(int x, int y, int width, int height, float startAngle, float sweepAngle); public void AddBezier(PointF pt1, PointF pt2, PointF pt3, PointF pt4); public void AddBezier(float x1, float y1, float x2, float y2, float x3, float y3, float x4, float y4); public void AddBeziers(params PointF[] points); public void AddBeziers(ReadOnlySpan<PointF> points); public void AddBezier(Point pt1, Point pt2, Point pt3, Point pt4); public void AddBezier(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4); public void AddBeziers(params Point[] points); public void AddBeziers(ReadOnlySpan<Point> points); public void AddCurve(params PointF[] points); public void AddCurve(PointF[] points, float tension); public void AddCurve(PointF[] points, int offset, int numberOfSegments, float tension); public void AddCurve(ReadOnlySpan<PointF> points); public void AddCurve(ReadOnlySpan<PointF> points, float tension); public void AddCurve(params Point[] points); public void AddCurve(Point[] points, float tension); public void AddCurve(Point[] points, int offset, int numberOfSegments, float tension); public void AddCurve(ReadOnlySpan<Point> points); public void AddCurve(ReadOnlySpan<Point> points, float tension); public void AddClosedCurve(params PointF[] points); public void AddClosedCurve(PointF[] points, float tension); public void AddClosedCurve(ReadOnlySpan<PointF> points); public void AddClosedCurve(ReadOnlySpan<PointF> points, float tension); public void AddClosedCurve(params Point[] points); public void AddClosedCurve(Point[] points, float tension); public void AddClosedCurve(ReadOnlySpan<Point> points); public void AddClosedCurve(ReadOnlySpan<Point> points, float tension); public void AddRectangle(RectangleF rect); public void AddRectangles(params RectangleF[] rects); public void AddRectangles(ReadOnlySpan<RectangleF> rects); public void AddRectangle(Rectangle rect); public void AddRectangles(params Rectangle[] rects); public void AddRectangles(ReadOnlySpan<Rectangle> rects); public void AddRoundedRectangle(Rectangle rect, Size radius); public void AddRoundedRectangle(RectangleF rect, SizeF radius); public void AddEllipse(RectangleF rect); public void AddEllipse(float x, float y, float width, float height); public void AddEllipse(Rectangle rect); public void AddEllipse(int x, int y, int width, int height); public void AddPie(Rectangle rect, float startAngle, float sweepAngle); public void AddPie(float x, float y, float width, float height, float startAngle, float sweepAngle); public void AddPie(int x, int y, int width, int height, float startAngle, float sweepAngle); public void AddPolygon(params PointF[] points); public void AddPolygon(ReadOnlySpan<PointF> points); public void AddPolygon(params Point[] points); public void AddPolygon(ReadOnlySpan<Point> points); public void AddPath(GraphicsPath addingPath, bool connect); public void AddString(string s, FontFamily family, int style, float emSize, PointF origin, StringFormat format); public void AddString(string s, FontFamily family, int style, float emSize, Point origin, StringFormat format); public void AddString(string s, FontFamily family, int style, float emSize, RectangleF layoutRect, StringFormat format); public void AddString(string s, FontFamily family, int style, float emSize, Rectangle layoutRect, StringFormat format); public void Transform(Matrix matrix); public RectangleF GetBounds(); public RectangleF GetBounds(Matrix matrix); public RectangleF GetBounds(Matrix matrix, Pen pen); public void Flatten(); public void Flatten(Matrix matrix); public void Flatten(Matrix matrix, float flatness); public void Widen(Pen pen); public void Widen(Pen pen, Matrix matrix); public void Widen(Pen pen, Matrix matrix, float flatness); public void Warp(PointF[] destPoints, RectangleF srcRect); public void Warp(PointF[] destPoints, RectangleF srcRect, Matrix matrix); public void Warp(PointF[] destPoints, RectangleF srcRect, Matrix matrix, WarpMode warpMode); public void Warp(PointF[] destPoints, RectangleF srcRect, Matrix matrix, WarpMode warpMode, float flatness); public void Warp(ReadOnlySpan<PointF> destPoints, RectangleF srcRect, Matrix matrix = null, WarpMode warpMode = WarpMode.Perspective, float flatness = 0.25); public int GetPathTypes(Span<byte> destination); public int GetPathPoints(Span<PointF> destination); } }