method
calcPosition(camera:geometry:screenArea:tilt:bearing:size:)
public func calcPosition(
camera: BaseCamera,
geometry: Geometry,
screenArea: Padding? = nil,
tilt: Tilt? = nil,
bearing: Bearing? = nil,
size: ScreenSize? = nil
) -> CameraPosition
Вычисление позиции камеры такой, что геометрический объект, расположенный на карте, полностью вписан в область экрана, заданную параметром screen_area.<p>Если не нужно изменять настройки оригинальной камеры, то можно настраивать скопированную через IBaseCamera::clone() камеру.</p>
Parameters
camera
камера, используемая для вычисления позиции.
geometry
геометрический объект, который необходимо вписать в область экрана, заданную параметром screen_area.
screenArea
область экрана, в которую нужно вписать геометрию. Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты. Если не задан, то используется текущий наклон камеры.
bearing
поворот карты. Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
Returns
calcPosition(camera:objects:screenArea:tilt:bearing:size:)
public func calcPosition(
camera: BaseCamera,
objects: [SimpleMapObject],
screenArea: Padding? = nil,
tilt: Tilt? = nil,
bearing: Bearing? = nil,
size: ScreenSize? = nil
) -> CameraPosition
Вычисление позиции камеры такой, что объекты карты полностью вписаны в область экрана, заданную параметром screen_area.
Parameters
camera
камера, используемая для вычисления позиции.
objects
объекты карты, которые необходимо вписать в область экрана, заданную параметром screen_area.
screenArea
область экрана, в которую нужно вписать геометрию. Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты. Если не задан, то используется текущий наклон камеры.
bearing
поворот карты. Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
Returns
createRasterTileDataSource(context:sublayerName:urlTemplate:)
public func createRasterTileDataSource(
context: Context,
sublayerName: String,
urlTemplate: String
) -> Source
Создание источника, получающего растровые тайлы.
Parameters
context
контекст.
sublayerName
Имя, которое будет использовано при генерации объектов. Это имя должно быть указано в стилях в условии filter слоя типа raster для атрибута db_sublayer. Пример: [“match”, [“get”, “db_sublayer”], [“NAME”], true, false]. Подробнее см. спецификацию: https://docs.2gis.com/ru/mapgl/stylespecification
urlTemplate
Шаблон url для запроса тайлов, должен содержать подстроки {x}, {y} и {z}, которые при подстановке вместо них числовых значений формируют валидный URL, на который будет отправлен запрос за данными тайла.
Returns
createRawMyLocationController()
public func createRawMyLocationController() -> MyLocationController
Использует данные платформы. Координаты и ориентация маркера геопозиции изменяются моментально при получении данных.
Returns
createSmoothMyLocationController()
public func createSmoothMyLocationController() -> MyLocationController
Использует данные карты. Координаты и ориентация маркера геопозиции изменяются плавно. При использовании режима слежения, изменения маркера синхронизованы с изменениями позиции камеры.
Returns
createStyleZoomToTiltRelation(points:)
public func createStyleZoomToTiltRelation(
points: [StyleZoom: Tilt]
) -> StyleZoomToTiltRelation
Создать зависимость угла наклона камеры от стилевого zoom-уровня.
Returns
StyleZoomToTiltRelationЗависимость угла наклона камеры от стилевого zoom-уровня, если создать зависимость не удалось, возвращается исключение.
getHttpCacheManager(context:)
public func getHttpCacheManager(
context: Context
) -> HttpCacheManager?
Интерфейс управления HTTP-кэшом. Null, если HTTP-кэш не используется.
Parameters
getInstructionManeuver(extraInstructionInfo:)
public func getInstructionManeuver(
extraInstructionInfo: ExtraInstructionInfo
) -> InstructionManeuver
Получить манёвр, который необходимо совершить для движения по маршруту.
Parameters
getLanesControlImages(laneSign:maxCount:ignoreActiveManeuver:)
public func getLanesControlImages(
laneSign: RouteLaneSign,
maxCount: UInt32,
ignoreActiveManeuver: Bool
) -> [LanesControlImage]
Получить список изображений для отображения в элементе управления полосностью. Количество изображений (без учета разделителей и многоточий) ограничено maxCount, если оно превышено, изображения с одной или обеих сторон обрезаются таким образом, чтобы осталось как можно больше изображений активных маневров. На стороне, где произошло удаление, отображается многоточие. В случае, если параметр ignoreActiveManeuver равен true, активный манёвр будет проигнорирован, и будет возвращено изображение, соответствующее всем разрешенным направлениям движения.
Parameters
getLocaleManager(context:)
public func getLocaleManager(
context: Context
) -> LocaleManager
Интерфейс управления локалями приложения.
Parameters
getPackageManager(context:)
public func getPackageManager(
context: Context
) -> PackageManager
Получение объекта для работы с пакетами из контекста.
Parameters
getRoadMacroGraph(context:)
public func getRoadMacroGraph(
context: Context
) -> RoadMacroGraph
Получение объекта для управления глобальным дорожным графом из контекста.
Parameters
getSystemMemoryManager(context:)
public func getSystemMemoryManager(
context: Context
) -> SystemMemoryManager
Получение объекта для управления использованием системной памяти.
Parameters
getTerritoriesAlongRouteProvider(context:)
public func getTerritoriesAlongRouteProvider(
context: Context
) -> TerritoriesAlongRouteProvider
Получение объекта для получения списка территорий вдоль маршрута из контекста.
Parameters
getTerritoryManager(context:)
public func getTerritoryManager(
context: Context
) -> TerritoryManager
Получение объекта для работы с территориями из контекста.
Parameters
getVoiceManager(context:)
public func getVoiceManager(
context: Context
) -> VoiceManager
Получение объекта для управления голосами из контекста.
Parameters
parseGeoJson(geoJsonData:)
public func parseGeoJson(
geoJsonData: String
) -> [GeometryMapObject]
Parameters
parseGeoJsonFile(fsPath:)
public func parseGeoJsonFile(
fsPath: String
) -> [GeometryMapObject]
Parameters
projectionZToStyleZ(projectionZ:latitude:)
public func projectionZToStyleZ(
projectionZ: Zoom,
latitude: Latitude
) -> StyleZoom
Parameters
remainingRouteGeometry(fullRouteGeometry:currentRoutePoint:)
public func remainingRouteGeometry(
fullRouteGeometry: GeoPointRouteAttribute,
currentRoutePoint: RoutePoint
) -> GeoPointRouteAttribute
Вычисляет геометрию оставшейся части маршрута, т.е. геометрию, начинающуюся с точки, соответствующей текущей точке маршрута, и до конца маршрута. Если маршрут полностью пройден или текущая точка находится за пределами маршрута, возвращается пустая геометрия.
Parameters
fullRouteGeometry
Полная геометрия всего маршрута
currentRoutePoint
Текущая позиция на маршруте
Returns
GeoPointRouteAttributeГеометрия оставшейся части маршрута
routeMatchesTruckPassZonePasses(truckPassZoneIds:passZonePasses:)
public func routeMatchesTruckPassZonePasses(
truckPassZoneIds: TruckPassZoneIdRouteLongAttribute,
passZonePasses: [TruckPassZonePass]
) -> Bool
Проверяет, достаточен ли предоставленный список пропусков для проезда пропускных зон грузового транспорта, через которые проходит маршрут.
Parameters
truckPassZoneIds
Атрибут маршрута с идентификаторами пропускных зон для грузового транспорта
passZonePasses
Пропуска для проезда пропускных зон грузового транспорта
Returns
BoolПризнак достаточности пропусков для проезда по маршруту
styleZToProjectionZ(styleZ:latitude:)
public func styleZToProjectionZ(
styleZ: StyleZoom,
latitude: Latitude
) -> Zoom
Parameters
toMapGeometry(geometry:)
public func toMapGeometry(
geometry: GeoPointRouteAttribute
) -> Geometry
Преобразовать геометрию маршрута в IGeometryPtr.
Parameters
zoomOutToFit(camera:geometry:size:)
public func zoomOutToFit(
camera: BaseCamera,
geometry: Geometry,
size: ScreenSize? = nil
) -> CameraPosition
Вычисление позиции камеры, такой, что при неизменной точке установки камеры геометрический объект, расположенный на карте, умещается в область экрана, заданную padding’ом камеры.<p>Если не нужно изменять настройки оригинальной камеры, то можно настраивать скопированную через IBaseCamera::clone() камеру.</p>
Parameters
camera
камера, используемая для вычисления позиции.
geometry
геометрический объект, который необходимо вписать в область экрана, заданную padding’ом камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
Returns
zoomOutToFit(camera:objects:size:)
public func zoomOutToFit(
camera: BaseCamera,
objects: [SimpleMapObject],
size: ScreenSize? = nil
) -> CameraPosition
Вычисление позиции камеры, такой, что при неизменной точке установки камеры геометрический объект, расположенный на карте, умещается в область экрана, заданную отступом (padding) камеры.
Parameters
camera
камера, используемая для вычисления позиции.
objects
объекты карты, которые необходимо вписать в область экрана, заданную padding’ом камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
Returns