interface
CameraMoveController
Класс, позволяющий управлять положением камеры для нужд анимации<br/>Класс должен быть потокобезопасным.
Methods
func animationTime() -> TimeInterval
Returns
TimeInterval
CustomFollowController
Интерфейс, который можно реализовать на платформе для создания собственного контроллера слежения за параметр ами Для добавления контроллера в камеру, нужно реализовать этот интерфейс и создать объект FollowController’а передав в качестве аргумента объект, реализующий данные интерфейс.
Methods
func availableValues() -> FollowValueOptionSet
Returns
func coordinates() -> GeoPoint?
Returns
func bearing() -> Bearing?
Returns
func tilt() -> Tilt?
Returns
func styleZoom() -> StyleZoom?
Returns
ICancellable
Жетон для отмены операции, при запуске которой он был получен.
Methods
func cancel()
ICreateRoadEventView
Протокол интерфейса создания дорожного события.
Properties
var visibleAreaEdgeInsets
Видимая область с учетом размера карточки создания дорожного события.
var visibleAreaEdgeInsetsChangedCallback
((UIEdgeInsets) -> ())?
Замыкание обратного вызова при изменении видимой области.
var cancelButtonCallback
(() -> ())?
Замыкание обратного вызова при нажатии кнопки отмены.
var createRoadEventRequestCallback
((Result<AddEventResult, Error>) -> ())?
Замыкание обратного вызова с результатом создания дорожного события.
IDoubleTapAndPanGestureRecognizer
Properties
var scaleDoublingTranslation
Число точек вертикального сдвига, приводящее к изменению масштаба в два раза.<br/>Для обработчика жеста по умолчанию используется значение `-100`. Сдвиг вниз (увеличение `y`) увеличивает масштаб. Сдвиг вверх (уменьшение `y`) уменьшает масштаб. Для увеличения масштаба в 2 раза, при таком значении скорости масштабирования, нужно провести пальцем вниз на `100 pt`.
IEnergyConsumption
Протокол для настройки энергосбережения устройства.
Methods
func setFpsCallback(_ fpsCallback: FpsCallback?)
Установить функцию обратного вызова на изменение fps.
Parameters
fpsCallback
FpsCallback?
IHTTPClient
Интерфейс сетевого клиента для отправки HTTP-запросов.
Methods
func send(
request: URLRequest,
callback: @escaping RequestDataCompletionCallback
)
Функция д ля отправки запроса и получения результата выполнения через callback. Обработка результатов будет выполнена в callback.
Parameters
request
URLRequest
HTTP-запрос.
callback
RequestDataCompletionCallback
Функция обратного вызова при получении результата запроса.
IImageFactory
Methods
func make(pngData: Data, size: CGSize) -> Image
Создать изображение на основе PNG-данных.
Parameters
func make(svgData: Data, size: CGSize) -> Image
Создать изображение на основе SVG-данных.
Parameters
func make(lottieData: Data, size: CGSize) -> Image
Создать анимированное изображение на основе Lottie-данных.
Parameters
func make(image: UIImage) -> Image
Создать изображение на основе объекта UIImage. При наличии готовых PNG-данных метод `make(pngData:size:)` работает эффективнее.
Parameters
func make(imageFactory: @escaping () -> UIImage) -> Image
Создать изображение на основе отложенного объекта UIImage. Переданное замыкание вызывается отложенно в тот момент, когда нужны данные. При наличии готовых PNG-данных метод `make(pngData:size:)` работает эффективнее.
Returns
ILocationProvider
Интерфейс источника геопозиции, который реализуется на платформе.
Methods
func setCallbacks(
locationCallback: LocationCallback?,
availabilityCallback: AvailabilityCallback?
)
Устанавливает функции обратного вызова на обновление текущей гепозиции и изменение доступности источника геопозиции. Повторный вызов данного метода перезаписывает предыдущие заданные функции обратного вызова. Если оба параметра равны `nil`, то слежение за обновлением геопозиции нужно отключить.
Parameters
locationCallback
LocationCallback?
Функция обратного вызова на обновление текущей гепозиции. Если провайдер доступен (вызов `availabilityCallback` со значением true), то данный источник всегда доставляет достоверную геопозицию. Достоверная геопозиция - это геопозиция, в которой все поля имеют актуальное значение на момент ее отправки в этот канал (т.е. если точность геопозиции >= половине длины экватора Земли, то геопозиция является достоверной для любых от указанных в ней корректных координат). Если значение точности <= 0, то позиция считается недостоверной даже если `isAvailable` == true. См. метод `CLLocationManagerDelegate.locationManager(didUpdateLocations:)`.
availabilityCallback
AvailabilityCallback?
Функция обратного вызова на изменение доступности источника геопозиции. Если вызвана эта функция со значением true, то все последующие вызовы `locationCallback` будут содержать достоверную (актуальную) геопозицию. Даже если слежение за изменением геопозиции недоступно, реализация `ILocationProvider` может присылать новую геопозицию, но она будет считаться недостоверной. См. метод `CLLocationManagerDelegate.locationManager(didFailWithError:)`.
func setDesiredAccuracy(_ accuracy: DesiredAccuracy)
Задает желаемую точность определения местоположения. Если устройство не может вернуть местоположение с желаемой точностью, то оно может вернуть местоположение с меньшей точностью. Если платфора не предоставляет аналогичный по функциональности метод, то данный метод должен иметь пустую реализацию.<br/>См. метод `CLLocationManager.desiredAccuracy` и \ .
Parameters
accuracy
IMagneticHeadingProvider
Протокол, предоставляющий направление устройства относительно направления на магнитный север. Все методы данного интерфейса должны вызываться из очереди `IPositioningServicesFactory.positiningQueue`.
Methods
func setCallbacks(
headingCallback: HeadingCallback?,
availabilityCallback: AvailabilityCallback?
)
Устанавливает функции обратного вызова на обновление текущего направления и изменения доступности источника направления. Повторный вызов данного метода перезаписывает предыдущие функции обратного вызова. Если оба параметра равны `nil`, то слежение за обновлением направления нужно отключить.
Parameters
headingCallback
HeadingCallback?
Функция обратного вызова н а обновление текущего направления. См. метод `CLLocationManagerDelegate.locationManager(didUpdateHeading:)`.
availabilityCallback
AvailabilityCallback?
Функция обратного вызова на изменение доступности источника направления. Даже если слежение за изменением направления недоступно, реализация может присылать новое направление, но оно будет считаться недостоверным. См. метод `CLLocationManagerDelegate.locationManager(didFailWithError)`.
IMapControlFactory
Фабрика кнопок для добавления на карту.
Methods
func makeZoomControl() -> ZoomControl
Returns
func makeCurrentLocationControl() -> CurrentLocationControl
Returns
func makeCompassControl() -> CompassControl
Returns
func makeTrafficControl() -> TrafficControl
Returns
func makeCreateRoadEventControl() -> CreateRoadEventControl
Returns
func makeIndoorControl(_ options: IndoorControlOptions) -> IndoorControl
Parameters
func makeIndoorControl(_ options: IndoorControlOptions = .default) -> IndoorControl
Parameters
IMapControlViewFactory
Фабрика SwiftUI кнопок для добавления на карту.
Methods
func makeCurrentLocationView() -> CurrentLocationView
Returns
func makeZoomView() -> ZoomView
Returns
func makeTrafficView(colors: TrafficViewColors) -> TrafficView
Parameters
func makeIndoorView() -> IndoorView
Returns
func makeCompassView() -> CompassView
Returns
IMapCoordinateSpace
Координатное пространство карты. Если карта не существует, то преобразования координат возвращают их без изменений, а `bounds` равно `.zero`. К методам и свойствам можно обращаться только из главной очереди.
Implements: INativeScaleProvider
IMapEventProcessor
Обработчик жестов карты. Все координаты принимаются в физических точках (пикселах).
Methods
func process(event: Event)
Обработка события управления картой.
Parameters
event
Событие управления картой.
IMapFactory
Фабрика согласованых объектов карты.
Properties
var initialMapOptions
Начальные настройки карты. Не изменяются после создания карты. Можно читать из любой очереди.
var map
Контроллер карты и камеры. Можно обращаться из любой очереди, но необходима синхронизация в случае одновременного доступа.
var mapView
Слой карты. Можно читать только из главной очереди.
var mapViewOverlay
Слой карты для SwiftUI. Можно читать только из главной очереди.
var gestureView
(UIView & IMapGestureView)?
Слой обработки жестов. За создание слоя отвечает свойство `initialMapOptions.gestureViewFactory`. Можно читать только из главной очереди.
var mapEventProcessor
Обработчик жестов карты.<br/>Используется `gestureView` для управления событиями карты. Использование совместно с `gestureView` может нарушать транзакционность жестов и приводить к неопределенному поведению.
var mapCoordinateSpace
Координатное пространство карты.
var mapControlFactory
Фабрика стандартных элементов управления картой, использующих встроенный стиль.
var mapControlViewFactory
Фабрика стандартных SwiftUI элементов управления картой, использующих встроенный стиль.
var snapshotter
Инструмент для захвата изображения карты. Изображения делаются на основе текущего состояния. Можно читать из любой очереди.
var energyConsumption
Объект для настройки энергосбережения устройства.
var markerViewOverlay
Объект для работы с UIView маркерами на карте.
var mapMarkerViewOverlay
Объект для работы со SwiftUI View маркерами на карте.
IMapGestureView
Распознаватели жестов на карте по умолчанию.
Properties
var doubleTapGestureRecognizer
Распознаватель двойного прикосновения. Используется для приближения карты (уменьшения масштаба) с фиксированным коэффициентом.
var panGestureRecognizer
Распознаватель таскания. Используется для перемещения карты в плоскости. По умолчанию распознаётся таскание ровно одной точкой нажатия.
var twoFingerPanGestureRecognizer
Таскание двумя пальцами. Используется для трёхмерного наклона карты относительно горизонта.
var rotationGestureRecognizer
Жест вращения карты в плоскости.
var pinchGestureRecognizer
Изменение масштаба щипанием.
var twoFingerTapGestureRecognizer
Кратковременное прикосновение двумя пальцами. Используется для отдалени я карты (увеличения масштаба) с фиксированным коэффициентом.
var doubleTapAndPanGestureRecognizer
(UIGestureRecognizer & IDoubleTapAndPanGestureRecognizer)?
Двойное прикосновение с последующим сдвигом. Используется для управления масштабом карты.
IMapGestureViewFactory
Фабрика слоя обработки жестов. Все методы вызываются только на главной очереди.
Methods
@available(*, deprecated, message: "Please use makeGestureView(map:eventProcessor:coordinateSpace:)")
func makeGestureView(
map: Map,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureView
Создать слой обработки жестов.<br/>Устаревший метод. Необходимо использовать `makeGestureView(map:eventProcessor:coordinateSpace:)`.
Parameters
func makeGestureView(
map: Map,
eventProcessor: IMapEventProcessor,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureView
Создать слой обработки жестов.
Parameters
@available(*, deprecated, message: "Please use makeGestureView(map:eventProcessor:coordinateSpace:)")
func makeGestureView(
map: Map,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureView
Создать слой обработки жестов.
Parameters
func makeGestureView(
map: Map,
eventProcessor: IMapEventProcessor,
coordinateSpace: IMapCoordinateSpace
) -> UIView & IMapGestureView
Создать слой обработки жестов.<br/>This documentation comment was inherited from .
Parameters
IMapSnapshotter
Инструмент по захвату изображения карты.
Methods
func makeImage(
scale: CGFloat,
orientation: UIImage.Orientation
) -> Future<UIImage>
Получить изображение карты на основе её текущего состояния. Можно вызывать из любой очереди. Значение возвращается во `Future` на неопределённой очереди.<br/>Перед вызовом метода необходимо убедиться, что сцена, отображающая карту, находится в состоянии `UIScene.ActivationState.foregroundActive`. Под iOS 12 приложен ие должно находиться в состоянии `UIApplication.State.active`.
Parameters
func makeImage(
scale: CGFloat = 1,
orientation: UIImage.Orientation = .up
) -> Future<UIImage>
Получить изображение карты на основе её текущего состояния. Можно вызывать из любой очереди. Значение возвращается во `Future` на неопределённой очереди.<br/>Перед вызовом метода необходимо убедиться, что сцена, отображающая карту, находится в состоянии `UIScene.ActivationState.foregroundActive`. Под iOS 12 приложение должно находиться в состоянии `UIApplication.State.active`.
Parameters
IMapView
Протокол слоя карты.
Methods
func addObjectTappedCallback(callback: MapObjectTappedCallback)
Добавить функцию обратного вызова, которая будет вызываться при клике или при долгом клике на карту.
Parameters
callback
func addObjectLongPressCallback(callback: MapObjectTappedCallback)
Parameters
callback
func removeObjectTappedCallback(callback: MapObjectTappedCallback)
Удалить функцию обратного вызова, которая вызывалась при клике или при долгом клике на карту.
Parameters
callback
func removeLongPressCallback(callback: MapObjectTappedCallback)
Parameters
callback
Properties
var gestureView
(UIView & IMapGestureView)?
Дополнительный слой, располагающийся над всей поверхностью карты. Используется для перехвата жестов. Если заменить этот слой на иной, нужно также реализовать отправку событий карты через `IMapEventProcessor`. В случае установки `nil` встроенная обработка жестов прекратится.
var appearance
Задать активный набор тем текущего стиля и возможность автоматического переключения тем в зависимости от окружения. Если выбран `.automatic`, карта переключится на выбранную пару тем с уч ётом текущего отображения (светлого или тёмного). Эта возможность доступна начиная с iOS 13. Если же выбран `.universal`, используется только одна активная тема в любом окружении. Эта возможность доступна ранее iOS 13.
var showsAPIVersion
Показывать ли версию API в копирайте. По умолчанию `false`.
var copyrightAlignment
По умолчанию `bottomRight`.
var copyrightInsets
Отступы копирайта от границ карты. По умолчанию `.zero`. При позиционировании учитываются `safeAreaInsets` представления карты. Значения отступов не должны быть отрицательными.
var urlOpener
((URL) -> ())?
Пользовательский обработчик открытия URL при тапе в копирайт.<br/>Позволяет переопределить поведение по умолчанию, при котором переход по ссылке будет осуществлен без подтверждения со стороны пользователя.
IMarkerView
Протокол UIView маркера.
Properties
var id
UUID
Идентификатор маркера.
var position
Точка на карте, к которой осуществляется привязка.
var tapHandler
(() -> ())?
Пользовательский обработчик при тапе в UIView маркер.
IMarkerViewFactory
Фабрика для создания UIView маркеров.
Methods
func make(
/// Отображение маркера.
view: UIView,
/// Точка на карте, к которой осуществляется привязка.
position: GeoPointWithElevation,
/// Относительная точка на View, к которой осуществяется привязка.
anchor: Anchor,
/// Дополнительное смещение в пикселях по оси X.
offsetX: CGFloat,
/// Дополнительное смещение в пикселях по оси Y.
offsetY: CGFloat
) -> IMarkerView
Создать маркер.
Parameters
IMarkerViewOverlay
Протокол для работы с UIView маркерами на карте.
Methods
func removeAll()
Удалить все маркеры.
INativeScaleProvider
Протокол, описывающие преобразование точек в пикселы.
Properties
var nativeScale
Множитель для преобразования в пикселы. Если карта не существует, то значение равно `1`. Можно обращаться только из главной очереди.
var toPixels
Матрица преобразования из точек в пикселы. Множитель по x и y равен `nativeScale`.
INavigationControlView
UI-элемент навигатора.
Properties
var isVisible
Видимость элемента.
var onDidChangeVisibility
(() -> ())?
Сигнал изменения видимости элемента.
INavigationMapControlsFactory
Фабрика UI-элементов карты в навигаторе.
Methods
func makeZoomControl() -> UIControl