GraphicsPath
GraphicsPath – класс, представляющий последовательность соединенных линий и кривых. Приложения используют контуры для отображения очертаний фигур, заполнения внутренних областей фигур, создания областей отсечения.
Контур может состоять из любого числа фигур (контуров). Каждая фигура либо составлена из последовательности линий и кривых, либо является геометрическим примитивом. Начальная точка фигуры – первая точка в последовательности соединенных линий и кривых. Конечная точка – последняя точка в последовательности.
Фигура, состоящая из последовательности соединенных линий и кривых (чьи начальная и конечная точки могут совпадать), является разомкнутой фигурой, если она не замкнута явно. Фигура может быть замкнута явно с помощью метода CloseFigure, который замыкает фигуру путем соединения конечной и начальной точек линией. Фигура, состоящая из геометрического примитива, является замкнутой.
Для целей заполнения и отсечения (например, если контур визуализируется с помощью метода Graphics.FillPath ) все разомкнутые фигуры замыкаются путем добавления линии от первой точки фигуры к последней.
Новая фигура начинается неявно, когда создается контур или фигура замыкается. Новая фигура создается явно, когда вызывается метод StartFigure.
Когда к контуру добавляется геометрический примитив, то он добавляет фигуру, содержащую геометрический примитив, а также неявно начинает новую фигуру. Следовательно, в контуре всегда существует текущая фигура. Когда линии и кривые добавляются к контуру, то добавляется неявная линия, соединяющая конечную точку текущей фигуры с начальной точкой новых линий и кривых, чтобы сформировать последовательность соединенных линий и кривых.
У фигуры есть направление, определяющее, как отрезки прямых и кривых следуют от начальной точки к конечной. Направление задается либо порядком добавления линий и кривых к фигуре, либо геометрическим примитивом. Направление используется для определения внутренних областей контура для целей отсечения и заполнения. О структуре и назначении классов можно судить по списку членов класса, который представлен ниже.
Конструкторы
GraphicsPath -конструктор |
Инициализирует новый экземпляр класса GraphicsPath с перечислением FillMode из Alternate
|
Свойства
FillMode |
Получает или задает перечисление FillMode, определяющее, как заполняются внутренние области фигур в объекте GraphicsPath
|
PathPoints |
Получает точки в контуре |
PathTypes |
Получает типы соответствующих точек в массиве PathPoints
|
PointCount |
Получает число элементов в массиве PathPoints или PathTypes
|
Методы
AddArc |
Присоединяет дугу эллипса к текущей фигуре |
AddBezier |
Добавляет в текущую фигуру кривую Безье третьего порядка |
AddBeziers |
Добавляет в текущую фигуру последовательность соединенных кривых Безье третьего порядка |
AddClosedCurve |
Добавляет замкнутую кривую к данному контуру. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива |
AddCurve |
Добавляет в текущую фигуру кривую сплайна. Используется кривая фундаментального сплайна, поскольку кривая проходит через все точки массива |
AddEllipse |
Добавляет эллипс к текущему пути |
AddLine |
Добавляет отрезок прямой к объекту GraphicsPath
|
AddLines |
Добавляет последовательность соединенных отрезков прямых в конец объекта GraphicsPath
|
AddPath |
Добавляет указанный объект GraphicsPath к данному контуру |
AddPie |
Добавляет контур сектора к данному контуру |
AddPolygon |
Добавляет многоугольник к данному контуру |
AddRectangle |
Добавляет прямоугольник к данному контуру |
AddRectangles |
Добавляет последовательность прямоугольников к данному контуру |
AddString |
Добавляет строку текста в данный путь |
ClearMarkers |
Удаляет все маркеры из данного контура |
Clone |
Создает точную копию данного контура |
CloseAllFigures |
Замыкает все незамкнутые фигуры в данном контуре и открывает новую фигуру. Каждая незамкнутая фигура замыкается путем соединения ее начальной и конечной точек линией |
CloseFigure |
Замыкает текущую фигуру и открывает новую. Если текущая фигура содержит последовательность соединенных линий и кривых, то метод замыкает ее путем соединения начальной и конечной точек линией |
CreateObjRef (унаследовано от Marshal By RefObject ) |
Создает объект, который содержит всю необходимую информацию для конструирования прокси-сервера, используемого для коммуникации с удаленными объектами |
Dispose |
Освобождает все ресурсы, используемые объектом GraphicsPath
|
Equals (унаследовано от Object ) |
Определяет, равны ли два экземпляра Object
|
Flatten |
Преобразует каждую кривую в данном контуре в последовательность соединенных отрезков прямых |
GetBounds |
Возвращает прямоугольник, ограничивающий объект GraphicsPath
|
GetHashCode (унаследовано от Object) |
Служит хэш-функцией для конкретного типа, пригоден для использования в алгоритмах хэширования и структурах данных, например, в хэш-таблице |
GetLastPoint |
Получает последнюю точку массива PathPoints объекта GraphicsPath
|
GetLifetimeService (унаследовано от MarshalByRefObject ) |
Извлекает служебный объект текущего срока действия, который управляет средствами срока действия данного экземпляра |
GetType (унаследовано от Object ) |
Возвращает Type текущего экземпляра |
InitializeLifetimeService (унаследовано от MarshalByRefObject ) |
Получает служебный объект срока действия, для управления средствами срока действия данного экземпляра |
IsOutlineVisible |
Указывает, содержится ли определенная точка внутри (под) контура объекта GraphicsPath при отображении его с помощью указанного объекта Pen
|
IsVisible |
Определяет, содержится ли указанная точка в объекте GraphicsPath
|
Reset |
Очищает массивы PathPoints и PathTypes и устанавливает FillMode в Alternate
|
Reverse |
Изменяет порядок точек в массиве PathPoints объекта GraphicsPath на противоположный |
SetMarkers |
Устанавливает маркер на объекте GraphicsPath
|
StartFigure |
Открывает новую фигуру, не замыкая при этом текущую. Все последующие точки, добавляемые к контуру, добавляются к новой фигуре |
ToString (унаследовано от Object ) |
Возвращает String, который представляет текущий Object
|
Transform |
Применяет матрицу преобразования к объекту GraphicsPath
|
Warp |
Применяет преобразование перекоса, определяемое прямоугольником и параллелограммом, к объекту GraphicsPath
|
Widen |
Заменяет данный контур кривыми, которые окружают область, заполняемую при отображении контура указанным пером |
Защищенные методы
Finalize |
Переопределен. См. Object.Finalize. В языках C# и C++ для функций финализации используется синтаксис деструктора
|
MemberwiseClone (унаследовано от Object ) |
Создает неполную копию текущего Object
|