GraphicsPath Класс

Определение

Представляет последовательность соединенных линий и кривых. Этот класс не наследуется.

public ref class GraphicsPath sealed : MarshalByRefObject, ICloneable, IDisposable
public sealed class GraphicsPath : MarshalByRefObject, ICloneable, IDisposable
type GraphicsPath = class
    inherit MarshalByRefObject
    interface ICloneable
    interface IDisposable
Public NotInheritable Class GraphicsPath
Inherits MarshalByRefObject
Implements ICloneable, IDisposable
Наследование
GraphicsPath
Реализации

Комментарии

Примечание

в .net 6 и более поздних версиях пакет System. Drawing. Common, включающий этот тип, поддерживается только в операционных системах Windows. Использование этого типа в кросс-платформенных приложениях приводит к возникновению предупреждений во время компиляции и исключений времени выполнения. Дополнительные сведения см. в разделе System. Drawing. Common, который поддерживается только в Windows.

Приложения используют пути для рисования контуров фигур, заполнения внутренних элементов фигур и создания обрезки областей. Графический модуль поддерживает координаты геометрических фигур в пути в пространстве координат мира.

Путь может состоять из любого числа фигур (вложенных путей). Каждая фигура состоит из последовательности соединенных линий и кривых или примитива геометрической фигуры. Начальная точка фигуры — это первая точка последовательности соединенных линий и кривых. Конечная точка — это последняя точка последовательности. Начальные и конечные точки примитива геометрической фигуры определяются спецификацией примитива.

Рисунок, состоящий из последовательности соединенных линий и кривых (начальные и конечные точки которых могут совпадать) является открытой фигурой, если она не закрыта явным образом. Рисунок можно закрыть явным образом с помощью CloseFigure метода, который закрывает текущую фигуру, соединив линию от конечной точки к начальной точке. Фигура, состоящая из примитива геометрической фигуры, является закрытой фигурой.

Для заполнения и вырезки (например, если путь отрисовывается с помощью FillPath), все открытые фигуры закрываются путем добавления строки из первой точки фигуры в последнюю точку.

Новая фигура неявно запускается при создании пути или закрытии фигуры. При вызове StartFigure метода создается новый рисунок явным образом.

При добавлении к пути примитив геометрической фигуры добавляет фигуру, содержащую геометрическую фигуру, а также неявно начинает новую фигуру. Следовательно, в пути всегда имеется текущая цифра. Когда линии и кривые добавляются в путь, при необходимости добавляется неявная линия для соединения конечной точки текущей фигуры с начальной точкой новых линий и кривых для формирования последовательности соединенных линий и кривых.

На рисунке имеется направление, описывающее трассировку сегментов линий и кривых между начальной точкой и конечной точкой. Направление определяется в порядке добавления линий и кривых к фигуре или определяется примитивом геометрической фигуры. Направление используется для определения внутренних контуров для обрезки и заливки.

Конструкторы

GraphicsPath()

Инициализирует новый экземпляр класса GraphicsPath со значением FillMode для объекта Alternate.

GraphicsPath(FillMode)

Инициализирует новый экземпляр класса GraphicsPath с указанным перечислением FillMode.

GraphicsPath(Point[], Byte[])

Инициализирует новый экземпляр класса GraphicsPath с заданными массивами PathPointType и Point.

GraphicsPath(Point[], Byte[], FillMode)

Инициализирует новый экземпляр класса GraphicsPath с указанными массивами PathPointType и Point и с заданным элементом перечисления FillMode.

GraphicsPath(PointF[], Byte[])

Инициализирует новый экземпляр массива GraphicsPath с заданными массивами PathPointType и PointF.

GraphicsPath(PointF[], Byte[], FillMode)

Инициализирует новый экземпляр массива GraphicsPath с указанными массивами PathPointType и PointF и заданным элементом перечисления FillMode.

Свойства

FillMode

Получает или задает перечисление FillMode, определяющее, как заполняются внутренние области фигур в этом объекте GraphicsPath.

PathData

Получает объект PathData, инкапсулирующий массивы точек (points) и типов (types) для этого объекта GraphicsPath.

PathPoints

Получает точки в контуре.

PathTypes

Получает типы соответствующих точек в массиве PathPoints.

PointCount

Получает число элементов в массиве PathPoints или PathTypes.

Методы

AddArc(Int32, Int32, Int32, Int32, Single, Single)

Присоединяет дугу эллипса к текущей фигуре.

AddArc(Rectangle, Single, Single)

Присоединяет дугу эллипса к текущей фигуре.

AddArc(RectangleF, Single, Single)

Присоединяет дугу эллипса к текущей фигуре.

AddArc(Single, Single, Single, Single, Single, Single)

Присоединяет дугу эллипса к текущей фигуре.

AddBezier(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32)

Добавляет в текущую фигуру кривую Безье третьего порядка.

AddBezier(Point, Point, Point, Point)

Добавляет в текущую фигуру кривую Безье третьего порядка.

AddBezier(PointF, PointF, PointF, PointF)

Добавляет в текущую фигуру кривую Безье третьего порядка.

AddBezier(Single, Single, Single, Single, Single, Single, Single, Single)

Добавляет в текущую фигуру кривую Безье третьего порядка.

AddBeziers(Point[])

Добавляет в текущую фигуру последовательность соединенных кривых Безье третьего порядка.

AddBeziers(PointF[])

Добавляет в текущую фигуру последовательность соединенных кривых Безье третьего порядка.

AddClosedCurve(Point[])

Добавляет замкнутую кривую к этому контуру. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddClosedCurve(Point[], Single)

Добавляет замкнутую кривую к этому контуру. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddClosedCurve(PointF[])

Добавляет замкнутую кривую к этому контуру. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddClosedCurve(PointF[], Single)

Добавляет замкнутую кривую к этому контуру. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddCurve(Point[])

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddCurve(Point[], Int32, Int32, Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(Point[], Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(PointF[])

Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива.

AddCurve(PointF[], Int32, Int32, Single)

Добавляет в текущую фигуру кривую сплайна.

AddCurve(PointF[], Single)

Добавляет в текущую фигуру кривую сплайна.

AddEllipse(Int32, Int32, Int32, Int32)

Добавляет эллипс в текущий контур.

AddEllipse(Rectangle)

Добавляет эллипс в текущий контур.

AddEllipse(RectangleF)

Добавляет эллипс в текущий контур.

AddEllipse(Single, Single, Single, Single)

Добавляет эллипс в текущий контур.

AddLine(Int32, Int32, Int32, Int32)

Добавляет отрезок прямой к текущей фигуре.

AddLine(Point, Point)

Добавляет отрезок прямой к этому объекту GraphicsPath.

AddLine(PointF, PointF)

Добавляет отрезок прямой к этому объекту GraphicsPath.

AddLine(Single, Single, Single, Single)

Добавляет отрезок прямой к этому объекту GraphicsPath.

AddLines(Point[])

Добавляет последовательность соединенных отрезков прямых в конец этого объекта GraphicsPath.

AddLines(PointF[])

Добавляет последовательность соединенных отрезков прямых в конец этого объекта GraphicsPath.

AddPath(GraphicsPath, Boolean)

Добавляет указанный объект GraphicsPath к этому контуру.

AddPie(Int32, Int32, Int32, Int32, Single, Single)

Добавляет контур сектора к данному контуру.

AddPie(Rectangle, Single, Single)

Добавляет контур сектора к данному контуру.

AddPie(Single, Single, Single, Single, Single, Single)

Добавляет контур сектора к данному контуру.

AddPolygon(Point[])

Добавляет многоугольник к этому контуру.

AddPolygon(PointF[])

Добавляет многоугольник к этому контуру.

AddRectangle(Rectangle)

Добавляет прямоугольник к этому контуру.

AddRectangle(RectangleF)

Добавляет прямоугольник к этому контуру.

AddRectangles(Rectangle[])

Добавляет последовательность прямоугольников к данному контуру.

AddRectangles(RectangleF[])

Добавляет последовательность прямоугольников к данному контуру.

AddString(String, FontFamily, Int32, Single, Point, StringFormat)

Добавляет строку текста в этот контур.

AddString(String, FontFamily, Int32, Single, PointF, StringFormat)

Добавляет строку текста в этот контур.

AddString(String, FontFamily, Int32, Single, Rectangle, StringFormat)

Добавляет строку текста в этот контур.

AddString(String, FontFamily, Int32, Single, RectangleF, StringFormat)

Добавляет строку текста в этот контур.

ClearMarkers()

Удаляет все токены из этого контура.

Clone()

Создает точную копию этого контура.

CloseAllFigures()

Замыкает все незамкнутые фигуры в этом контуре и открывает новую фигуру. Каждая незамкнутая фигура замыкается путем соединения ее начальной и конечной точек линией.

CloseFigure()

Замыкает текущую фигуру и открывает новую фигуру. Если текущая фигура содержит последовательность соединенных линий и кривых, метод замыкает ее путем соединения начальной и конечной точек линией.

CreateObjRef(Type)

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.

(Унаследовано от MarshalByRefObject)
Dispose()

Освобождает все ресурсы, используемые этим объектом GraphicsPath.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Finalize()

Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как он будет уничтожен во время сборки мусора.

Flatten()

Преобразует каждую кривую в данном контуре в последовательность соединенных отрезков прямых.

Flatten(Matrix)

Применяет указанное преобразование, а затем преобразует каждую кривую в данном объекте GraphicsPath в последовательность соединенных отрезков прямых.

Flatten(Matrix, Single)

Преобразует каждую кривую в этом объекте GraphicsPath в последовательность соединенных отрезков прямых.

GetBounds()

Возвращает прямоугольник, ограничивающий этот объект GraphicsPath.

GetBounds(Matrix)

Возвращает ограничивающий прямоугольник для этого объекта GraphicsPath, когда данный контур преобразуется с помощью указанного объекта Matrix.

GetBounds(Matrix, Pen)

Возвращает ограничивающий прямоугольник для этого объекта GraphicsPath, когда данный контур преобразуется с помощью указанного объекта Matrix и отображается с помощью заданного объекта Pen.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetLastPoint()

Получает последнюю точку массива PathPoints для этого объекта GraphicsPath.

GetLifetimeService()
Является устаревшей.

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.

(Унаследовано от MarshalByRefObject)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
InitializeLifetimeService()
Является устаревшей.

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
IsOutlineVisible(Int32, Int32, Pen)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen.

IsOutlineVisible(Int32, Int32, Pen, Graphics)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen и использовании заданного объекта Graphics.

IsOutlineVisible(Point, Pen)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen.

IsOutlineVisible(Point, Pen, Graphics)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen и использовании заданного объекта Graphics.

IsOutlineVisible(PointF, Pen)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen.

IsOutlineVisible(PointF, Pen, Graphics)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen и использовании заданного объекта Graphics.

IsOutlineVisible(Single, Single, Pen)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen.

IsOutlineVisible(Single, Single, Pen, Graphics)

Указывает, содержится ли определенная точка внутри контура этого объекта GraphicsPath при его отображении с помощью указанного объекта Pen и использовании заданного объекта Graphics.

IsVisible(Int32, Int32)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath.

IsVisible(Int32, Int32, Graphics)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath, путем использования заданного объекта Graphics.

IsVisible(Point)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath.

IsVisible(Point, Graphics)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath.

IsVisible(PointF)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath.

IsVisible(PointF, Graphics)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath.

IsVisible(Single, Single)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath.

IsVisible(Single, Single, Graphics)

Указывает, содержится ли указанная точка внутри этого объекта GraphicsPath в видимой вырезанной области заданного объекта Graphics.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неполную копию текущего объекта MarshalByRefObject.

(Унаследовано от MarshalByRefObject)
Reset()

Очищает массивы PathPoints и PathTypes и устанавливает FillMode в Alternate.

Reverse()

Изменяет порядок точек в массиве PathPoints этого объекта GraphicsPath на противоположный.

SetMarkers()

Устанавливает токен на этом объекте GraphicsPath.

StartFigure()

Открывает новую фигуру, не замыкая при этом текущую фигуру. Все последующие точки, добавляемые к контуру, добавляются к этой новой фигуре.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
Transform(Matrix)

Применяет матрицу преобразования к этому объекту GraphicsPath.

Warp(PointF[], RectangleF)

Применяет преобразование перекоса, определяемое прямоугольником и параллелограммом, к этому объекту GraphicsPath.

Warp(PointF[], RectangleF, Matrix)

Применяет преобразование перекоса, определяемое прямоугольником и параллелограммом, к этому объекту GraphicsPath.

Warp(PointF[], RectangleF, Matrix, WarpMode)

Применяет преобразование перекоса, определяемое прямоугольником и параллелограммом, к этому объекту GraphicsPath.

Warp(PointF[], RectangleF, Matrix, WarpMode, Single)

Применяет преобразование перекоса, определяемое прямоугольником и параллелограммом, к этому объекту GraphicsPath.

Widen(Pen)

Добавляет дополнительное очертание к контуру.

Widen(Pen, Matrix)

Добавляет дополнительное очертание в объект GraphicsPath.

Widen(Pen, Matrix, Single)

Заменяет данный объект GraphicsPath кривыми, окружающими область, заполняемую при отображении контура указанным пером.

Применяется к

См. также раздел