MKOverlayPathRenderer
MKOverlayPathRenderer
класс рисует наложение карты, форма которого представлена a CGPathRef
тип данных. Поведение рисования значения по умолчанию этого класса состоит в том, чтобы применить текущие атрибуты заливки объекта, заполнить путь, применить текущие атрибуты обводки, и затем перечеркнуть путь.
Можно использовать этот класс как есть или разделить на подклассы для определения дополнительных способов поведения получения. Если Вы разделяете на подклассы, необходимо переопределить createPath
метод и использование, что метод для создания надлежащего объекта контуров. Для изменения пути лишите законной силы его и воссоздайте путь с помощью любых новых данных, которые получил подкласс.
Наследование
-
NSObject
-
MKOverlayRenderer
-
MKOverlayPathRenderer
-
MKCircleRenderer
-
MKPolygonRenderer
-
MKPolylineRenderer
-
NSObject
-
MKOverlayRenderer
-
MKOverlayPathRenderer
-
MKCircleRenderer
-
MKPolygonRenderer
-
MKPolylineRenderer
Оператор импорта
Swift
import MapKit
Objective C
@import MapKit;
Доступность
Доступный в OS X v10.9 и позже.
-
цвет заливки цвет заливки
Свойство -
strokeColor strokeColor
Свойство -
ширина линий ширина линий
СвойствоШтриховая ширина для использования для пути.
Обсуждение
Значение по умолчанию этого свойства 0.
Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Стиль соединения строки для применения к углам пути.
Обсуждение
Стиль соединения строки по умолчанию
kCGLineJoinRound
.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Стиль окончания линии для применения к открытым концам пути.
Обсуждение
Стиль окончания линии применяется к запуску и конечным точкам любых открытых подпутей. Это свойство не влияет на закрытые подпути. Стиль окончания линии по умолчанию
kCGLineCapRound
.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
miterLimit miterLimit
СвойствоПредельное значение, помогающее избежать скачков в соединениях между связанными линейными сегментами.
Обсуждение
Предельный угол стыка помогает Вам избежать скачков по путям, использующим
kCGLineJoinMiter
стиль соединения. Если отношение длины среза — т.е. диагональная длина соединения среза — к толщине строки превышает предельный угол стыка, соединение преобразовывается в косоугольное соединение. Предельный угол стыка по умолчанию равняется 10, который приводит к преобразованию срезов, угол которых в соединении составляет меньше чем 11 градусов.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
lineDashPhase lineDashPhase
СвойствоСмещение (в точках), в котором можно начать рисовать пунктирный узор.
Обсуждение
Используйте это свойство, чтобы начать проводить пунктирную линию отчасти через сегмент или разрыв. Например, значение фазы
6
для скороговорки 5-2-3-2 заставил бы получение начинаться посреди первого разрыва.Значение по умолчанию этого свойства
0
.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
lineDashPattern lineDashPattern
СвойствоМассив чисел, указывающих пунктирный узор для использования для пути.
Объявление
Swift
var lineDashPattern: [AnyObject]!
Objective C
@property(copy) NSArray *lineDashPattern
Обсуждение
Массив содержит один или больше
NSNumber
объекты, указывающие длины (измеренный в точках) линейных сегментов и разрывов в образце. Значения в альтернативе массива, начиная с первой продолжительности линейного сегмента, сопровождаемой первой длиной разрыва, сопровождаемой второй продолжительностью линейного сегмента, и т.д.Это свойство установлено в
nil
по умолчанию, который не указывает пунктирного узора строки.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Путь, представляющий форму наложения.
Обсуждение
Получение значения этого свойства заставляет путь создаваться (использование
createPath
метод), если это уже не существует. Можно присвоить объект контуров этому свойству явно. При присвоении нового объекта контуров этому свойству средство рендеринга наложения хранит сильную ссылку к пути, который Вы обеспечиваете.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Создает путь для наложения.
Объявление
Swift
func createPath()
Objective C
- (void)createPath
Обсуждение
Реализация по умолчанию этого метода ничего не делает. Подклассы должны переопределить его и использовать его для создания
CGPathRef
тип данных, который будет использоваться для рисования. После создания пути Ваша реализация должна присвоить егоpath
свойство.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Обновляет путь, связанный со средством рендеринга наложения.
Объявление
Swift
func invalidatePath()
Objective C
- (void)invalidatePath
Обсуждение
Вызовите этот метод, когда изменение в информации о пути потребовало бы, чтобы Вы воссоздали путь наложения. Этот метод устанавливает
path
свойство кnil
и говорит средству рендеринга наложения восстанавливать изображение своего содержания.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Применяет текущие связанные со штрихом свойства получения получателя к указанному графическому контексту.
Объявление
Swift
func applyStrokePropertiesToContext(_
context
: CGContext!, atZoomScalezoomScale
: MKZoomScale)Objective C
- (void)applyStrokePropertiesToContext:(CGContextRef)
context
atZoomScale:(MKZoomScale)zoomScale
Параметры
context
Графический контекст раньше рисовал содержание представления.
zoomScale
Текущий масштаб изменения масштаба используется для рисования.
Обсуждение
Это - удобный метод для применения всех свойств получения, используемых при перечеркивании пути. Этот метод применяет цвет обводки, ширину строки, соединение строки, окончание линии, предельный угол стыка, фазу тире строки, и тире строки приписывает указанному графическому контексту. Этот метод применяет масштабный коэффициент в
zoomScale
параметр к ширине строки и пунктирному узору строки автоматически так, чтобы строки масштабировались соответственно.Этот метод не сохраняет текущее состояние графики прежде, чем применить новые атрибуты. Если Вы хотите сохранить существующее состояние, необходимо сохранить его сами и восстановить его позже, когда Вы заканчиваете рисовать.
Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Применяет текущие связанные с заливкой свойства получения получателя к указанному графическому контексту.
Объявление
Swift
func applyFillPropertiesToContext(_
context
: CGContext!, atZoomScalezoomScale
: MKZoomScale)Objective C
- (void)applyFillPropertiesToContext:(CGContextRef)
context
atZoomScale:(MKZoomScale)zoomScale
Параметры
context
Графический контекст раньше рисовал содержание представления.
zoomScale
Текущий масштаб изменения масштаба используется для рисования.
Обсуждение
Это - удобный метод для применения всех свойств получения, используемых при заполнении пути. Этот метод применяет текущий цвет заливки к указанному графическому контексту.
Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Чертит линию вдоль указанного пути.
Объявление
Swift
func strokePath(_
path
: CGPath!, inContextcontext
: CGContext!)Objective C
- (void)strokePath:(CGPathRef)
path
inContext:(CGContextRef)context
Параметры
path
Путь для рисования.
context
Графический контекст, в котором можно нарисовать путь.
Обсуждение
Необходимо выбрать текущий цвет обводки прежде, чем вызвать этот метод. Обычно Вы делаете это путем вызова
applyStrokePropertiesToContext:atZoomScale:
метод до получения. ЕслиstrokeColor
свойство в настоящее времяnil
, этот метод ничего не делает.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.
-
Заполняет область, включенную указанным путем.
Объявление
Swift
func fillPath(_
path
: CGPath!, inContextcontext
: CGContext!)Objective C
- (void)fillPath:(CGPathRef)
path
inContext:(CGContextRef)context
Параметры
path
Путь к заливке.
context
Графический контекст, в котором можно нарисовать путь.
Обсуждение
Необходимо установить текущий цвет заливки прежде, чем вызвать этот метод. Обычно Вы делаете это путем вызова
applyFillPropertiesToContext:atZoomScale:
метод до получения. ЕслиfillColor
свойство в настоящее времяnil
, этот метод ничего не делает.Оператор импорта
Objective C
@import MapKit;
Swift
import MapKit
Доступность
Доступный в OS X v10.9 и позже.