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.
Если не нужно изменять настройки оригинальной камеры, то можно настраивать скопированную через IBaseCamera::clone() камеру.
camera
камера, используемая для вычисления позиции.
geometry
геометрический объект, который необходимо вписать в область экрана, заданную параметром screen_area.
screenArea
область экрана, в которую нужно вписать геометрию. Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты. Если не задан, то используется текущий наклон камеры.
bearing
поворот карты. Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
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.
camera
камера, используемая для вычисления позиции.
objects
объекты карты, которые необходимо вписать в область экрана, заданную параметром screen_area.
screenArea
область экрана, в которую нужно вписать геометрию. Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты. Если не задан, то используется текущий наклон камеры.
bearing
поворот карты. Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
createRasterTileDataSource(context:sublayerName:urlTemplate:)
public func createRasterTileDataSource(
context: Context,
sublayerName: String,
urlTemplate: String
) -> Source
Создание источника, получающего растровые тайлы.
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, на который будет отправлен запрос за данными тайла.
createRawMyLocationController()
public func createRawMyLocationController() -> MyLocationController
Использует данные платформы. Координаты и ориентация маркера геопозиции изменяются моментально при получении данных.
createSmoothMyLocationController()
public func createSmoothMyLocationController() -> MyLocationController
Использует данные карты. Координаты и ориентация маркера геопозиции изменяются плавно. При использовании режима слежения, изменения маркера синхронизованы с изменениями позиции камеры.
createStyleZoomToTiltRelation(points:)
public func createStyleZoomToTiltRelation(
points: [StyleZoom: Tilt]
) -> StyleZoomToTiltRelation
Создать зависимость угла наклона камеры от стилевого zoom-уровня.
Зависимость угла наклона камеры от стилевого zoom-уровня, если создать зависимость не удалось, возвращается исключение.
getHttpCacheManager(context:)
public func getHttpCacheManager(
context: Context
) -> HttpCacheManager?
Интерфейс управления HTTP-кэшом. Null, если HTTP-кэш не используется.
getInstructionManeuver(extraInstructionInfo:)
public func getInstructionManeuver(
extraInstructionInfo: ExtraInstructionInfo
) -> InstructionManeuver
Получить манёвр, который необходимо совершить для движения по маршруту.
getLanesControlImages(laneSign:maxCount:ignoreActiveManeuver:)
public func getLanesControlImages(
laneSign: RouteLaneSign,
maxCount: UInt32,
ignoreActiveManeuver: Bool
) -> [LanesControlImage]
Получить список изображений для отображения в элементе управления полосностью. Количество изображений (без учета разделителей и многоточий) ограничено maxCount, если оно превышено, изображения с одной или обеих сторон обрезаются таким образом, чтобы осталось как можно больше изображений активных маневров. На стороне, где произошло удаление, отображается многоточие. В случае, если параметр ignoreActiveManeuver равен true, активный манёвр будет проигнорирован, и будет возвращено изображение, соответствующее всем разрешенным направлениям движения.
getLocaleManager(context:)
public func getLocaleManager(
context: Context
) -> LocaleManager
Интерфейс управления локалями приложения.
getPackageManager(context:)
public func getPackageManager(
context: Context
) -> PackageManager
Получение объекта для работы с пакетами из контекста.
getRoadMacroGraph(context:)
public func getRoadMacroGraph(
context: Context
) -> RoadMacroGraph
Получение объекта для управления глобальным дорожным графом из контекста.
getSystemMemoryManager(context:)
public func getSystemMemoryManager(
context: Context
) -> SystemMemoryManager
Получение объекта для управления использованием системной памяти.
getTerritoriesAlongRouteProvider(context:)
public func getTerritoriesAlongRouteProvider(
context: Context
) -> TerritoriesAlongRouteProvider
Получение объекта для получения списка территорий вдоль маршрута из контекста.
getTerritoryManager(context:)
public func getTerritoryManager(
context: Context
) -> TerritoryManager
Получение объекта для работы с территориями из контекста.
getVoiceManager(context:)
public func getVoiceManager(
context: Context
) -> VoiceManager
Получение объекта для управления голосами из контекста.
parseGeoJson(geoJsonData:)
public func parseGeoJson(
geoJsonData: String
) -> [GeometryMapObject]
parseGeoJsonFile(fsPath:)
public func parseGeoJsonFile(
fsPath: String
) -> [GeometryMapObject]
projectionZToStyleZ(projectionZ:latitude:)
public func projectionZToStyleZ(
projectionZ: Zoom,
latitude: Latitude
) -> StyleZoom
remainingRouteGeometry(fullRouteGeometry:currentRoutePoint:)
public func remainingRouteGeometry(
fullRouteGeometry: GeoPointRouteAttribute,
currentRoutePoint: RoutePoint
) -> GeoPointRouteAttribute
Вычисляет геометрию оставшейся части маршрута, т.е. геометрию, начинающуюся с точки, соответствующей текущей точке маршрута, и до конца маршрута. Если маршрут полностью пройден или текущая точка находится за пределами маршрута, возвращается пустая геометрия.
fullRouteGeometry
Полная геометрия всего маршрута
currentRoutePoint
Текущая позиция на маршруте
Геометрия оставшейся части маршрута
routeMatchesTruckPassZonePasses(truckPassZoneIds:passZonePasses:)
public func routeMatchesTruckPassZonePasses(
truckPassZoneIds: TruckPassZoneIdRouteLongAttribute,
passZonePasses: [TruckPassZonePass]
) -> Bool
Проверяет, достаточен ли предоставленный список пропусков для проезда пропускных зон грузового транспорта, через которые проходит маршрут.
truckPassZoneIds
Атрибут маршрута с идентификаторами пропускных зон для грузового транспорта
passZonePasses
Пропуска для проезда пропускных зон грузового транспорта
Признак достаточности пропусков для проезда по маршруту
styleZToProjectionZ(styleZ:latitude:)
public func styleZToProjectionZ(
styleZ: StyleZoom,
latitude: Latitude
) -> Zoom
toMapGeometry(geometry:)
public func toMapGeometry(
geometry: GeoPointRouteAttribute
) -> Geometry
Преобразовать геометрию маршрута в IGeometryPtr.
zoomOutToFit(camera:geometry:size:)
public func zoomOutToFit(
camera: BaseCamera,
geometry: Geometry,
size: ScreenSize? = nil
) -> CameraPosition
Вычисление позиции камеры, такой, что при неизменной точке установки камеры геометрический объект, расположенный на карте, умещается в область экрана, заданную padding’ом камеры.
Если не нужно изменять настройки оригинальной камеры, то можно настраивать скопированную через IBaseCamera::clone() камеру.
camera
камера, используемая для вычисления позиции.
geometry
геометрический объект, который необходимо вписать в область экрана, заданную padding’ом камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
zoomOutToFit(camera:objects:size:)
public func zoomOutToFit(
camera: BaseCamera,
objects: [SimpleMapObject],
size: ScreenSize? = nil
) -> CameraPosition
Вычисление позиции камеры, такой, что при неизменной точке установки камеры геометрический объект, расположенный на карте, умещается в область экрана, заданную отступом (padding) камеры.
camera
камера, используемая для вычисления позиции.
objects
объекты карты, которые необходимо вписать в область экрана, заданную padding’ом камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().