Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Ссылка платформы UIKit ссылка класса UIBezierPath

Опции
Развертывание Target:

На этой странице
Язык:

UIBezierPath

Наследование


Оператор импорта


Swift

import UIKit

Objective C

@import UIKit;

Доступность


Доступный в iOS 3.2 и позже.

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

A UIBezierPath возразите комбинирует геометрию пути с атрибутами, описывающими путь во время рендеринга. Вы устанавливаете геометрию и атрибуты отдельно и можете изменить их независимый от друг друга. Как только у Вас есть объект, сконфигурировал способ, которым Вы хотите его, можно сказать ему рисовать себя в текущем контексте. Поскольку создание, конфигурация, и представляющий процесс являются всеми отличными шагами, объекты контуров Безье могут быть снова использованы легко в Вашем коде. Можно даже использовать тот же объект представить ту же форму многократно, возможно изменяя опции рендеринга между последовательными вызовами получения.

Вы устанавливаете геометрию пути путем управления текущей точкой пути. При создании нового пустого объекта контуров текущая точка не определена и должна быть установлена явно. Для перемещения текущей точки, не таща сегмент Вы используете moveToPoint: метод. Все другие методы приводят к добавлению или линейные сегменты или сегменты кривой к пути. Методы для добавления новых сегментов всегда предполагают, что Вы запускаете в текущей точке и заканчиваетесь в некоторой новой точке, которую Вы указываете. После добавления сегмента конечная точка нового сегмента автоматически становится текущей точкой.

Единственный объект контуров Безье может содержать любое число открытых или закрытых подпутей, где каждый подпуть представляет связанную серию сегментов контура. Вызов closePath метод закрывает подпуть путем добавления сегмента прямой линии от текущей точки до первой точки по подпути. Вызов moveToPoint: метод заканчивает текущий подпуть (не закрывая его) и устанавливает начальную точку следующего подпути. Подпути объекта контуров Безье совместно используют те же атрибуты получения и должны управляться как группа. Для рисования подпутей с различными атрибутами необходимо вставить каждый подпуть его собственное UIBezierPath объект.

После конфигурирования геометрии и атрибутов пути Безье, Вы рисуете путь в текущем графическом контексте с помощью stroke и fill методы. stroke метод прослеживает схему пути с помощью текущего цвета обводки и атрибутов объекта контуров Безье. Точно так же fill метод заполняет область, включенную путем с помощью текущего цвета заливки. (Вы выбираете цвет обводки и цвет заливки с помощью UIColor класс.)

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

  • Создает и возвращает новое UIBezierPath объект.

    Объявление

    Objective C

    + (UIBezierPath *)bezierPath

    Возвращаемое значение

    Новый пустой объект контуров.

    Оператор импорта

    Objective C

    @import UIKit;

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новое UIBezierPath объект инициализируется с прямоугольным контуром.

    Объявление

    Swift

    init(rect rect: CGRect) -> UIBezierPath

    Objective C

    + (UIBezierPath *)bezierPathWithRect:(CGRect)rect

    Параметры

    rect

    Прямоугольник, описывающий путь для создания.

    Возвращаемое значение

    Новый объект контуров с прямоугольным контуром.

    Обсуждение

    Этот метод создает закрытый подпуть путем запуска в источнике rect и добавление линейных сегментов в направлении по часовой стрелке (относительно системы координат по умолчанию).

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новое UIBezierPath объект, инициализированный с овальным путем, нанесенным в указанном прямоугольнике

    Объявление

    Swift

    init(ovalInRect rect: CGRect) -> UIBezierPath

    Objective C

    + (UIBezierPath *)bezierPathWithOvalInRect:(CGRect)rect

    Параметры

    rect

    Прямоугольник, в котором можно нанести овал.

    Возвращаемое значение

    Новый объект контуров с овальным путем.

    Обсуждение

    Этот метод создает закрытый подпуть, приближающий овальное использование последовательности кривых Bézier. Путь создается в направлении по часовой стрелке (относительно системы координат по умолчанию). Если rect параметр указывает квадрат, нанесенный путь является кругом.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новое UIBezierPath объект инициализируется с округленным прямоугольным контуром.

    Объявление

    Swift

    init(roundedRect rect: CGRect, cornerRadius cornerRadius: CGFloat) -> UIBezierPath

    Objective C

    + (UIBezierPath *)bezierPathWithRoundedRect:(CGRect)rect cornerRadius:(CGFloat)cornerRadius

    Параметры

    rect

    Прямоугольник, определяющий основную форму пути

    cornerRadius

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

    Возвращаемое значение

    Новый объект контуров с округленным прямоугольным контуром.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новое UIBezierPath объект инициализируется с округленным прямоугольным контуром.

    Объявление

    Swift

    init(roundedRect rect: CGRect, byRoundingCorners corners: UIRectCorner, cornerRadii cornerRadii: CGSize) -> UIBezierPath

    Objective C

    + (UIBezierPath *)bezierPathWithRoundedRect:(CGRect)rect byRoundingCorners:(UIRectCorner)corners cornerRadii:(CGSize)cornerRadii

    Параметры

    rect

    Прямоугольник, определяющий основную форму пути.

    corners

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

    cornerRadii

    Радиус каждого овального угла. Значения, больше, чем половина ширины или высоты прямоугольника, фиксируются соответственно к половине ширины или высоты.

    Возвращаемое значение

    Новый объект контуров с округленным прямоугольным контуром.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новое UIBezierPath объект инициализируется с дугой круга.

    Объявление

    Swift

    init(arcCenter center: CGPoint, radius radius: CGFloat, startAngle startAngle: CGFloat, endAngle endAngle: CGFloat, clockwise clockwise: Bool) -> UIBezierPath

    Objective C

    + (UIBezierPath *)bezierPathWithArcCenter:(CGPoint)center radius:(CGFloat)radius startAngle:(CGFloat)startAngle endAngle:(CGFloat)endAngle clockwise:(BOOL)clockwise

    Параметры

    center

    Указывает, что центральная точка круга (в текущей системе координат) раньше определяла дугу.

    radius

    Указывает, что радиус круга раньше определял дугу.

    startAngle

    Указывает стартовый угол дуги (измеренный в радианах).

    endAngle

    Указывает угол конца дуги (измеренный в радианах).

    clockwise

    Направление, в котором можно нарисовать дугу.

    Возвращаемое значение

    Новый объект контуров с указанной дугой.

    Обсуждение

    Этот метод создает открытый подпуть. Создаваемая дуга находится на периметре указанного круга. Когда нарисовано в системе координат по умолчанию, запуск и углы конца основываются на круге модуля, показанном на рисунке 1. Например, указание угла запуска 0 радианы, угол конца π радианы и установка clockwise параметр к YEStrue рисует нижнюю половину круга. Однако указание то же запускает и заканчивает углы, но установку clockwise набор параметра к NOfalse рисует верхнюю часть круга.

    Рисунок 1Angles в системе координат по умолчанию image: ../Art/radians_circle.png

    После вызова этого метода текущая точка установлена в точку на дуге под углом конца круга.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новое UIBezierPath объект инициализируется с содержанием Базового Графического контура.

    Объявление

    Swift

    init(CGPath CGPath: CGPath!) -> UIBezierPath

    Objective C

    + (UIBezierPath *)bezierPathWithCGPath:(CGPathRef)CGPath

    Параметры

    CGPath

    Базовый Графический контур, из которого можно получить информацию о начальном тракте. Если этот параметр nil, метод повышает исключение.

    Возвращаемое значение

    Новый объект контуров с указанной информацией о пути.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Создает и возвращает новый bezier объект контуров с обратным содержанием текущего пути.

    Объявление

    Swift

    func bezierPathByReversingPath() -> UIBezierPath

    Objective C

    - (UIBezierPath *)bezierPathByReversingPath

    Возвращаемое значение

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

    Обсуждение

    Инвертирование пути не обязательно изменяет появление пути, когда представлено. Вместо этого это изменяет направление, в котором нарисованы сегменты контура. Например, инвертирование пути прямоугольника (чьи линейные сегменты обычно рисуются, запускаясь в источнике и продолжаясь в направлении против часовой стрелки) заставляет свои линейные сегменты быть нарисованными в направлении по часовой стрелке вместо этого. Рисование обратного пути могло влиять на появление заполненного образца, в зависимости от образца и правила заливки в использовании.

    Этот метод инвертирует каждый полный или частичный подпуть в объекте контуров индивидуально.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 6.0 и позже.

  • Перемещает текущую точку получателя к указанному расположению.

    Объявление

    Swift

    func moveToPoint(_ point: CGPoint)

    Objective C

    - (void)moveToPoint:(CGPoint)point

    Параметры

    point

    Точка в текущей системе координат.

    Обсуждение

    Этот метод неявно заканчивает текущий подпуть (если таковые имеются) и устанавливает текущую точку в значение в point параметр. При окончании предыдущего подпути этот метод фактически не закрывает подпуть. Поэтому первые и последние точки предыдущего подпути не подключены друг к другу.

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Добавляет прямую линию к пути получателя.

    Объявление

    Swift

    func addLineToPoint(_ point: CGPoint)

    Objective C

    - (void)addLineToPoint:(CGPoint)point

    Параметры

    point

    Пункт назначения линейного сегмента, указанного в текущей системе координат.

    Обсуждение

    Этот метод создает сегмент прямой линии, запускающийся в текущей точке и заканчивающийся в точке, указанной point параметр. После добавления линейного сегмента этот метод обновляет текущую точку к значению в point.

    Необходимо установить текущую точку пути (использующий moveToPoint: метод или посредством предыдущего создания линейного сегмента или сегмента кривой) перед вызовом этого метода. Если путь пуст, этот метод ничего не делает.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Добавляет дугу к пути получателя.

    Объявление

    Swift

    func addArcWithCenter(_ center: CGPoint, radius radius: CGFloat, startAngle startAngle: CGFloat, endAngle endAngle: CGFloat, clockwise clockwise: Bool)

    Objective C

    - (void)addArcWithCenter:(CGPoint)center radius:(CGFloat)radius startAngle:(CGFloat)startAngle endAngle:(CGFloat)endAngle clockwise:(BOOL)clockwise

    Параметры

    center

    Указывает, что центральная точка круга (в текущей системе координат) раньше определяла дугу.

    radius

    Указывает, что радиус круга раньше определял дугу.

    startAngle

    Указывает стартовый угол дуги (измеренный в радианах).

    endAngle

    Указывает угол конца дуги (измеренный в радианах).

    clockwise

    Направление, в котором можно нарисовать дугу.

    Обсуждение

    Этот метод добавляет указанную дугу, начинающуюся в текущей точке. Создаваемая дуга находится на периметре указанного круга. Когда нарисовано в системе координат по умолчанию, запуск и углы конца основываются на круге модуля, показанном на рисунке 1. Например, указание угла запуска 0 радианы, угол конца π радианы и установка clockwise параметр к YEStrue рисует нижнюю половину круга. Однако указание то же запускает и заканчивает углы, но установку clockwise набор параметра к NOfalse рисует верхнюю часть круга.

    После вызова этого метода текущая точка установлена в точку на дуге под углом конца круга.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 4.0 и позже.

  • Добавляет кубическую кривую Bézier к пути получателя.

    Объявление

    Swift

    func addCurveToPoint(_ endPoint: CGPoint, controlPoint1 controlPoint1: CGPoint, controlPoint2 controlPoint2: CGPoint)

    Objective C

    - (void)addCurveToPoint:(CGPoint)endPoint controlPoint1:(CGPoint)controlPoint1 controlPoint2:(CGPoint)controlPoint2

    Параметры

    endPoint

    Конечная точка кривой.

    controlPoint1

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

    controlPoint2

    Вторая контрольная точка для использования при вычислениях кривой.

    Обсуждение

    Этот метод добавляет кубическую кривую Bézier от текущей точки, до конца указывают указанный endPoint параметр. Эти две контрольных точки определяют искривление сегмента. Рисунок 2 показывает, что приближение кубического Bézier изгибает данный ряд начальных точек. Точное искривление сегмента включает сложное математическое отношение между всеми точками и хорошо документируется онлайн.

    Рисунок 2A кубическая кривая Bézier image: ../Art/uibezier_curve.jpg

    Необходимо установить текущую точку пути (использующий moveToPoint: метод или посредством предыдущего создания линейного сегмента или сегмента кривой) перед вызовом этого метода. Если путь пуст, этот метод ничего не делает. После добавления сегмента кривой этот метод обновляет текущую точку к значению в point.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Добавляет квадратичную кривую Bézier к пути получателя.

    Объявление

    Swift

    func addQuadCurveToPoint(_ endPoint: CGPoint, controlPoint controlPoint: CGPoint)

    Objective C

    - (void)addQuadCurveToPoint:(CGPoint)endPoint controlPoint:(CGPoint)controlPoint

    Параметры

    endPoint

    Конечная точка кривой.

    controlPoint

    Контрольная точка кривой.

    Обсуждение

    Этот метод добавляет квадратичную кривую Bézier от текущей точки, до конца указывают указанный endPoint параметр. Отношения между текущей точкой, контрольной точкой и конечной точкой - то, что определяет фактическую кривую. Рисунок 3 показывает некоторые примеры квадратичных кривых и приблизительной формы кривой на основе некоторых демонстрационных точек. Точное искривление сегмента включает сложное математическое отношение между точками и хорошо документируется онлайн.

    Примеры кривой рисунка 3Quadratic image: ../Art/quadratic_bezier_curve.gif

    Необходимо установить текущую точку пути (использующий moveToPoint: метод или посредством предыдущего создания линейного сегмента или сегмента кривой) перед вызовом этого метода. Если путь пуст, этот метод ничего не делает. После добавления сегмента кривой этот метод обновляет текущую точку к значению в point.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Закрывает последний раз добавленный подпуть.

    Объявление

    Swift

    func closePath()

    Objective C

    - (void)closePath

    Обсуждение

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Удаляет все точки из получателя, эффективно удаляя все подпути.

    Объявление

    Swift

    func removeAllPoints()

    Objective C

    - (void)removeAllPoints

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Добавляет содержание указанного объекта контуров к пути получателя.

    Объявление

    Swift

    func appendPath(_ bezierPath: UIBezierPath)

    Objective C

    - (void)appendPath:(UIBezierPath *)bezierPath

    Параметры

    bezierPath

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

    Обсуждение

    Этот метод добавляет, что команды раньше создавали путь в bezierPath до конца пути получателя. Этот метод явно не пытается соединить подпути в двух объектах, несмотря на то, что операции в bezierPath мог бы все еще вызвать тот эффект.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • CGPath Свойство

    Базовое Графическое представление пути.

    Объявление

    Swift

    var CGPath: CGPath

    Objective C

    @property(nonatomic) CGPathRef CGPath

    Обсуждение

    Это свойство содержит снимок пути в любом данном моменте времени. Получение этого свойства возвращает неизменный объект контуров, который можно передать Базовым Графическим функциям. Сам объект контуров принадлежит UIBezierPath возразите и допустимо только, пока Вы не делаете дальнейшие модификации к пути.

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • currentPoint Свойство

    Текущая точка в графическом контуре. (только для чтения)

    Объявление

    Swift

    var currentPoint: CGPoint { get }

    Objective C

    @property(nonatomic, readonly) CGPoint currentPoint

    Обсуждение

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

    См. также

    пустой

  • lineWidth Свойство

    Ширина строки пути.

    Объявление

    Swift

    var lineWidth: CGFloat

    Objective C

    @property(nonatomic) CGFloat lineWidth

    Обсуждение

    Ширина строки определяет толщину перечеркиваемого пути получателя. Ширина 0 интерпретируется как самая тонкая строка, которая может быть представлена на определенном устройстве. Фактическая представленная ширина строки может варьироваться от указанной ширины целых 2 пикселями устройства, в зависимости от позиции строки относительно пиксельной сетки и текущих настроек сглаживания. Ширина строки может также быть затронута масштабными коэффициентами, указанными в текущей матрице преобразования активного графического контекста.

    Ширина строки по умолчанию 1.0.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • lineCapStyle Свойство

    Форма конечных точек путей, когда перечеркиваемый.

    Объявление

    Swift

    var lineCapStyle: CGLineCap

    Objective C

    @property(nonatomic) CGLineCap lineCapStyle

    Обсуждение

    Стиль окончания линии применяется к запуску и конечным точкам любых открытых подпутей. Это свойство не влияет на закрытые подпути. Стиль окончания линии по умолчанию kCGLineCapButt.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • lineJoinStyle Свойство

    Форма соединений между связанными сегментами перечеркиваемого пути.

    Объявление

    Swift

    var lineJoinStyle: CGLineJoin

    Objective C

    @property(nonatomic) CGLineJoin lineJoinStyle

    Обсуждение

    Стиль соединения строки по умолчанию kCGLineJoinMiter.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • miterLimit Свойство

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

    Объявление

    Swift

    var miterLimit: CGFloat

    Objective C

    @property(nonatomic) CGFloat miterLimit

    Обсуждение

    Предельный угол стыка помогает Вам избежать скачков по путям, использующим kCGLineJoinMiter стиль соединения. Если отношение длины среза — т.е. диагональная длина соединения среза — к толщине строки превышает предельный угол стыка, соединение преобразовывается в косоугольное соединение. Предельный угол стыка по умолчанию равняется 10, который приводит к преобразованию срезов, угол которых в соединении составляет меньше чем 11 градусов.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • flatness Свойство

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

    Объявление

    Swift

    var flatness: CGFloat

    Objective C

    @property(nonatomic) CGFloat flatness

    Обсуждение

    Значение плоскости измеряет самое большое допустимое расстояние (измеренный в пикселях) между точкой на истинной кривой и точкой на представленной кривой. Меньшие значения приводят к более гладким кривым, но требуют большего количества времени вычисления. Большие значения приводят к более зубчатым кривым, но представляются намного быстрее. Значение плоскости по умолчанию 0.6.

    В большинстве случаев Вы не должны изменять значение плоскости. Однако Вы могли бы увеличить стоимость плоскости временно для минимизации количества времени, которое она занимает для рисования формы временно (такой как во время прокрутки).

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • usesEvenOddFillRule Свойство

    Булевская переменная, указывающая, используется ли ровно-нечетное вьющееся правило для рисования путей.

    Объявление

    Swift

    var usesEvenOddFillRule: Bool

    Objective C

    @property(nonatomic) BOOL usesEvenOddFillRule

    Обсуждение

    Если YEStrue, путь заполняется с помощью ровно-нечетного правила. Если NOfalse, это заполняется с помощью ненулевого правила. Оба правила являются алгоритмами для определения который области пути заполниться текущим цветом заливки. Луч нарисован из точки в данной области к точке где угодно вне границ пути. Общее количество пересеченных строк пути (включая неявные строки пути) и направление каждой строки пути тогда интерпретируется следующим образом:

    • Для ровно-нечетного правила, если общее количество пересечений пути нечетно, точка считается в пути, и соответствующая область заполнена. Если число пересечений даже, точка считается вне пути, и область не заполнена.

    • Для ненулевого правила пересечение слева направо соединяет количества каналом как +1 и пересечение справа налево количества пути как-1. Если сумма пересечений является ненулевой, точка считается в пути, и соответствующая область заполнена. Если сумма 0, точка вне пути, и область не заполнена.

    Значение по умолчанию этого свойства NOfalse. Для получения дополнительной информации о проветривании правил и как они применяются к подпутям, посмотрите Кварц 2D Руководство по программированию.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Устанавливает перечеркивающий строку образец для пути.

    Объявление

    Swift

    func setLineDash(_ pattern: UnsafePointer<CGFloat>, count count: Int, phase phase: CGFloat)

    Objective C

    - (void)setLineDash:(const CGFloat *)pattern count:(NSInteger)count phase:(CGFloat)phase

    Параметры

    pattern

    Массив C-стиля значений с плавающей точкой, содержащий длины (измеренный в точках) линейных сегментов и разрывов в образце. Значения в альтернативе массива, начиная с первой продолжительности линейного сегмента, сопровождаемой первой длиной разрыва, сопровождаемой второй продолжительностью линейного сегмента, и т.д.

    count

    Число значений в pattern.

    phase

    Смещение, при котором можно начать рисовать образец, измерилось в точках вдоль образца пунктирной линии. Например, значение фазы 6 для образца 5-2-3-2 заставил бы получение начинаться посреди первого разрыва.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Получает перечеркивающий строку образец для пути.

    Объявление

    Swift

    func getLineDash(_ pattern: UnsafeMutablePointer<CGFloat>, count count: UnsafeMutablePointer<Int>, phase phase: UnsafeMutablePointer<CGFloat>)

    Objective C

    - (void)getLineDash:(CGFloat *)pattern count:(NSInteger *)count phase:(CGFloat *)phase

    Параметры

    pattern

    На вводе, массиве C-стиля значений с плавающей точкой, или nil если Вы не хотите значения образца. На выводе этот массив содержит длины (измеренный в точках) линейных сегментов и разрывов в образце. Значения в альтернативе массива, начиная с первой продолжительности линейного сегмента, сопровождаемой первой длиной разрыва, сопровождаемой второй продолжительностью линейного сегмента, и т.д.

    count

    На вводе, указателе на целое число или nil если Вы не хотите число записей образца. На выводе, числе записей, записанных в pattern.

    phase

    На вводе, указателе на значение с плавающей точкой или nil если Вы не хотите фазу. На выводе это значение содержит смещение, при котором можно начать рисовать образец, измеренный в точках вдоль образца пунктирной линии. Например, фаза 6 в образце 5-2-3-2 заставила бы получение начинаться посреди первого разрыва.

    Обсуждение

    Массив в pattern параметр должен быть достаточно большим для содержания всех возвращенных значений в образце. Если Вы не уверены сколько значений, там мог бы быть, можно вызвать этот метод дважды. В первый раз Вы вызываете его, не передавайте значение для pattern но используйте возвращенное значение в count параметр для выделения массива чисел с плавающей точкой, которые можно тогда передать во втором разе.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Красит область включенной путем получателя с помощью текущих свойств получения.

    Объявление

    Swift

    func fill()

    Objective C

    - (void)fill

    Обсуждение

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

    Нарисованная область включает пиксели прямо до, но не включая, сама строка пути. Для путей с большими ширинами строки это может привести к перекрытию между областью заливки и перечеркиваемым путем (который самостоятельно центрируется на строке пути).

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Красит область включенной путем получателя с помощью указанного режима смешивания и значений прозрачности.

    Объявление

    Swift

    func fillWithBlendMode(_ blendMode: CGBlendMode, alpha alpha: CGFloat)

    Objective C

    - (void)fillWithBlendMode:(CGBlendMode)blendMode alpha:(CGFloat)alpha

    Параметры

    blendMode

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

    alpha

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

    Обсуждение

    Этот метод заполняет путь с помощью текущего цвета заливки и таща свойства (плюс указанный режим смешивания и значение прозрачности). Если путь содержит какие-либо открытые подпути, этот метод неявно закрывает их прежде, чем нарисовать область заливки.

    Нарисованная область включает пиксели прямо до, но не включая, сама строка пути. Для путей с большими ширинами строки это может привести к перекрытию между областью заливки и перечеркиваемым путем (который самостоятельно центрируется на строке пути).

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Чертит линию вдоль пути получателя с помощью текущих свойств получения.

    Объявление

    Swift

    func stroke()

    Objective C

    - (void)stroke

    Обсуждение

    Проведенная линия центрируется на пути с его сторонами, параллельными сегменту контура. Этот метод применяет текущие свойства получения к представленному пути.

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Чертит линию вдоль пути получателя с помощью указанного режима смешивания и значений прозрачности.

    Объявление

    Swift

    func strokeWithBlendMode(_ blendMode: CGBlendMode, alpha alpha: CGFloat)

    Objective C

    - (void)strokeWithBlendMode:(CGBlendMode)blendMode alpha:(CGFloat)alpha

    Параметры

    blendMode

    Режим смешивания определяет, как перечеркиваемый путь составляется с любым существующим представленным содержанием.

    alpha

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

    Обсуждение

    Проведенная линия центрируется на пути с его сторонами, параллельными сегменту контура. Этот метод применяет текущий цвет обводки и свойства получения (плюс указанный режим смешивания и значение прозрачности) к представленному пути.

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

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

    Объявление

    Swift

    func addClip()

    Objective C

    - (void)addClip

    Обсуждение

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

    usesEvenOddFillRule свойство используется, чтобы определить, используется ли ровно-нечетное или ненулевое правило для определения области, включенной путем.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Возвращает булево значение, указывающее, содержит ли область, включенная получателем, указанную точку.

    Объявление

    Swift

    func containsPoint(_ point: CGPoint) -> Bool

    Objective C

    - (BOOL)containsPoint:(CGPoint)point

    Параметры

    point

    Точка для тестирования против пути, указанного в системе координат объекта контуров.

    Возвращаемое значение

    YEStrue если точка считается во вложенной области пути или NOfalse если это не.

    Обсуждение

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

    Точка не считается включенной путем, если бы это в открытом подпути, независимо от того, была ли та область бы нарисована во время операции заполнения. Поэтому для определения мыши совершает нападки на открытых контурах, необходимо создать копию объекта контуров и явно закрыть любые подпути (использующий closePath метод) прежде, чем вызвать этот метод.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • empty Свойство

    Булево значение, указывающее, имеет ли путь какие-либо допустимые элементы. (только для чтения)

    Объявление

    Swift

    var empty: Bool { get }

    Objective C

    @property(readonly, getter=isEmpty) BOOL empty

    Обсуждение

    Допустимые элементы пути включают команды, чтобы переместиться в указанную точку, чертить линию или сегмент кривой или закрыть путь. Таким образом путь не считают пустым, даже если все, что Вы делаете, вызвать moveToPoint: метод.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • bounds Свойство

    Ограничительный прямоугольник пути. (только для чтения)

    Объявление

    Swift

    var bounds: CGRect { get }

    Objective C

    @property(nonatomic, readonly) CGRect bounds

    Обсуждение

    Значение в этом свойстве представляет наименьший прямоугольник, полностью включающий все точки в путь, включая любые контрольные точки для Bézier и квадратичных кривых.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Преобразовывает все точки в путь с помощью указанной матрицы аффинного преобразования.

    Объявление

    Swift

    func applyTransform(_ transform: CGAffineTransform)

    Objective C

    - (void)applyTransform:(CGAffineTransform)transform

    Параметры

    transform

    Матрица преобразования для применения к пути.

    Обсуждение

    Этот метод применяет указанное преобразование к точкам пути сразу. Модификации, сделанные к объекту контуров, являются постоянными. Если Вы не хотите постоянно изменять объект контуров, необходимо рассмотреть применение преобразования к копии.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.

  • Углы прямоугольника.

    Объявление

    Swift

    struct UIRectCorner : RawOptionSetType { init(_ rawValue: UInt) init(rawValue rawValue: UInt) static var TopLeft: UIRectCorner { get } static var TopRight: UIRectCorner { get } static var BottomLeft: UIRectCorner { get } static var BottomRight: UIRectCorner { get } static var AllCorners: UIRectCorner { get } }

    Objective C

    enum { UIRectCornerTopLeft = 1 << 0, UIRectCornerTopRight = 1 << 1, UIRectCornerBottomLeft = 1 << 2, UIRectCornerBottomRight = 1 << 3, UIRectCornerAllCorners = ~0 }; typedef NSUInteger UIRectCorner;

    Константы

    • TopLeft

      UIRectCornerTopLeft

      Верхний левый угол прямоугольника.

      Доступный в iOS 3.2 и позже.

    • TopRight

      UIRectCornerTopRight

      Верхний правый угол прямоугольника.

      Доступный в iOS 3.2 и позже.

    • BottomLeft

      UIRectCornerBottomLeft

      Нижний левый угол прямоугольника.

      Доступный в iOS 3.2 и позже.

    • BottomRight

      UIRectCornerBottomRight

      Нижний правый угол прямоугольника.

      Доступный в iOS 3.2 и позже.

    • AllCorners

      UIRectCornerAllCorners

      Все углы прямоугольника.

      Доступный в iOS 3.2 и позже.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 3.2 и позже.