method
AttributeValue(value)
calcPosition(camera,geometry,styleZoomToTiltRelation,screenArea,tilt,bearing,size)
fun calcPosition(
camera: BaseCamera,
geometry: Geometry,
styleZoomToTiltRelation: StyleZoomToTiltRelation? = null,
screenArea: Padding? = null,
tilt: Tilt? = null,
bearing: Bearing? = null,
size: ScreenSize? = null
): CameraPosition
Вычисление позиции камеры такой, что геометрический объект, расположенный на карте, полностью вписан в область экрана, заданную параметром screen_area.
Если не нужно изменять настройки оригинальной камеры, то можно настраивать скопированную через IBaseCamera::clone() камеру.
camera
Камера, используемая для вычисления позиции.
geometry
Геометрический объект, который необходимо вписать в область экрана, заданную параметром screen_area.
styleZoomToTiltRelation
Функция зависимости угла наклона камеры от стилевого уровня масштабирования.
screenArea
область экрана, в которую нужно вписать геометрию. Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты. Если не задан, то используется текущий наклон камеры.
bearing
поворот карты. Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
calcPosition(camera,objects,styleZoomToTiltRelation,screenArea,tilt,bearing,size)
fun calcPosition(
camera: BaseCamera,
objects: List<SimpleMapObject>,
styleZoomToTiltRelation: StyleZoomToTiltRelation? = null,
screenArea: Padding? = null,
tilt: Tilt? = null,
bearing: Bearing? = null,
size: ScreenSize? = null
): CameraPosition
Вычисление позиции камеры такой, что объекты карты полностью вписаны в область экрана, заданную параметром screen_area.
camera
Камера, используемая для вычисления позиции.
objects
Объекты карты, которые необходимо вписать в область экрана, заданную параметром screen_area.
styleZoomToTiltRelation
Функция зависимости угла наклона камеры от стилевого уровня масштабирования.
screenArea
область экрана, в которую нужно вписать геометрию. Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты. Если не задан, то используется текущий наклон камеры.
bearing
поворот карты. Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
Color(red,green,blue,alpha)
fun Color(
red: Int,
green: Int,
blue: Int,
alpha: Int = 255
): Color
createDefaultMaxTiltRestriction()
fun createDefaultMaxTiltRestriction(): StyleZoomToTiltRelation
Получаем стандартную зависимость максимального угла наклона от стилевого уровня масштабирования.
createDefaultStyleZoomToTiltRelation()
fun createDefaultStyleZoomToTiltRelation(): StyleZoomToTiltRelation
Получение зависимости угла наклона камеры от стилевого уровня масштабирования для стандартного контроллера слежения за наклоном.
createModelData(context,data)
fun createModelData(context: Context, data: ByteArray): ModelData
createModelData(context,loader)
fun createModelData(context: Context, loader: Function0<ByteArray>): ModelData
createStyleZoomToTiltRelation(points)
fun createStyleZoomToTiltRelation(points: Map): StyleZoomToTiltRelation
Создаем зависимость угла наклона камеры от стилевого уровня масштабирования.
points
Точки, по которым строится зависимость.
зависимость угла наклона камеры от стилевого уровня масштабирования, если создать зависимость не удалось - бросаем исключение.
Зависимость должна представлять собой монотонную непрерывную функцию. Если точками задана зависимость, не удовлетворяющая условиям, то функция бросает исключение. Зависимость, примерно как в 2гис, можно задать последовательностью точек 17,0,19,15,20,25 в режиме карты и 15,0,16,34,17,48 в режиме навигатора. Пусть нужно получить значение угла наклона камеры T для стилевого уровня масштабирования Z, такого что Z0 < = Z < Z1 и зависимость задана точками Z0,T0,Z1,T1. Тогда искомое значение рассчитывается по формуле T = T0 + k * (T1 - T0), где k = (Z - Z0) / (Z1 - Z0). Если Z < Z0, то T = T0. Если Z >= Z1, то T = T1.
GeoPoint(latitude,longitude)
fun GeoPoint(latitude: Double, longitude: Double): GeoPoint
GeoPointWithElevation(latitude,longitude,elevation)
fun GeoPointWithElevation(
latitude: Double,
longitude: Double,
elevation: Elevation = Elevation(0.0f)
): GeoPointWithElevation
GeoPointWithElevation(point,elevation)
fun GeoPointWithElevation(point: GeoPoint, elevation: Elevation = Elevation(0.0f)): GeoPointWithElevation
getAudioSettings(context)
getHttpCacheManager(context)
fun getHttpCacheManager(context: Context): HttpCacheManager?
Интерфейс управления HTTP-кешем. Null, если HTTP кэш не используется.
getInstructionManeuver(extraInstructionInfo)
getLanesControlImages(laneSign,maxCount,ignoreActiveManeuver)
getLocaleManager(context)
fun getLocaleManager(context: Context): LocaleManager
Интерфейс управления локалями приложения.
getPackageManager(context)
fun getPackageManager(context: Context): PackageManager
Получение объекта для работы с пакетами из контекста.
getRoadMacroGraph(context)
fun getRoadMacroGraph(context: Context): RoadMacroGraph
Получение объекта для управления глобальным дорожным графом из контекста.
getSystemMemoryManager(context)
fun getSystemMemoryManager(context: Context): SystemMemoryManager
Получение объекта для управления использованием системной памяти.
getTerritoriesAlongRouteProvider(context)
fun getTerritoriesAlongRouteProvider(context: Context): TerritoriesAlongRouteProvider
Получение объекта для получения списка территорий вдоль маршрута из контекста.
getTerritoryManager(context)
fun getTerritoryManager(context: Context): TerritoryManager
Получение объекта для работы с территориями из контекста.
getVoiceManager(context)
imageFromAsset(context,assetName,size)
fun imageFromAsset(
context: Context,
assetName: String,
size: Size? = null
): Image
context - Android контекст assetName - файл изображения size - целевой размер изображения (для SVG и Lottie игнорируется)
imageFromBitmap(context,bitmap)
fun imageFromBitmap(context: Context, bitmap: Bitmap): Image
imageFromBitmap(context,loader)
fun imageFromBitmap(context: Context, loader: Function0<Bitmap>): Image
imageFromCanvas(context,size,block)
fun imageFromCanvas(
context: Context,
size: Size,
block: Function1
): Image
imageFromLottieJSON(context,data)
fun imageFromLottieJSON(context: Context, data: ByteArray): Image
imageFromLottieJSON(context,loader)
fun imageFromLottieJSON(context: Context, loader: Function0<ByteArray>): Image
imageFromResource(context,resourceId,size)
fun imageFromResource(
context: Context,
resourceId: Int,
size: Size? = null
): Image
context - Android контекст resourceId - Android ресурс size - целевой размер изображения (для SVG и Lottie игнорируется)
imageFromSvg(context,data)
fun imageFromSvg(context: Context, data: ByteArray): Image
imageFromSvg(context,loader)
fun imageFromSvg(context: Context, loader: Function0<ByteArray>): Image
isBetterLocation(location,currentBestLocation)
fun isBetterLocation(location: Location, currentBestLocation: Location?): Boolean
kilometersPerHourToMetersPerSecond(kilometersPerHour)
max(a,b)
metersPerSecondToKilometersPerHour(metersPerSecond)
metersToUiString(meters,context)
min(a,b)
modelDataFromAsset(context,assetName)
fun modelDataFromAsset(context: Context, assetName: String): ModelData
context - Android контекст assetName - файл модели
MutableChannel()
fun MutableChannel(): MutableChannel<T>
MutableStatefulChannel(initialValue)
fun MutableStatefulChannel(initialValue: T): MutableStatefulChannel<T>
parseGeoJson(geoJsonData)
fun parseGeoJson(geoJsonData: String): List<GeometryMapObject>
parseGeoJsonFile(fsPath)
fun parseGeoJsonFile(fsPath: String): List<GeometryMapObject>
projectionZToStyleZ(projectionZ,latitude)
fun projectionZToStyleZ(projectionZ: Zoom, latitude: Latitude): StyleZoom
registerPlatformLocationSource(context,source)
fun registerPlatformLocationSource(context: Context, source: LocationSource?): Unit
Регистрация источника геопозиции. В качестве источника по-умолчанию можно использовать DefaultLocationSource.
registerPlatformMagneticSource(context,source)
fun registerPlatformMagneticSource(context: Context, source: MagneticHeadingSource?): Unit
remainingRouteGeometry(fullRouteGeometry,currentRoutePoint)
fun remainingRouteGeometry(fullRouteGeometry: GeoPointRouteAttribute, currentRoutePoint: RoutePoint): GeoPointRouteAttribute
Вычисляет геометрию оставшейся части маршрута, т.е. геометрию, начинающуюся с точки, соответствующей текущей точке маршрута, и до конца маршрута. Если маршрут полностью пройден или текущая точка находится за пределами маршрута, возвращается пустая геометрия.
fullRouteGeometry
Полная геометрия всего маршрута.
currentRoutePoint
Текущая позиция на маршруте.
Геометрия оставшейся части маршрута
Сложность операции O(N), где N = full_route_geometry.size()
routeMatchesTruckPassZonePasses(truckPassZoneIds,passZonePasses)
fun routeMatchesTruckPassZonePasses(truckPassZoneIds: TruckPassZoneIdRouteLongAttribute, passZonePasses: List<TruckPassZonePass>): Boolean
Проверяет, достаточен ли предоставленный список пропусков для проезда пропускных зон грузового транспорта, через которые проходит маршрут.
Если маршрут не проходит через какие-либо пропускные зоны для грузового транспорта, функция возвращает true
truckPassZoneIds
Атрибут маршрута с идентификаторами пропускных зон для грузового транспорта.
passZonePasses
Пропуски для проезда пропускных зон грузового транспорта.
Признак достаточности пропусков для проезда по маршруту.
styleZToProjectionZ(styleZ,latitude)
fun styleZToProjectionZ(styleZ: StyleZoom, latitude: Latitude): Zoom
toMapGeometry(geometry)
fun toMapGeometry(geometry: GeoPointRouteAttribute): Geometry
Преобразовать геометрию маршрута в IGeometryPtr.
zoomOutToFit(camera,geometry,styleZoomToTiltRelation,size)
fun zoomOutToFit(
camera: BaseCamera,
geometry: Geometry,
styleZoomToTiltRelation: StyleZoomToTiltRelation? = null,
size: ScreenSize? = null
): CameraPosition
Вычисление позиции камеры, такой, что при неизменной точке установки камеры геометрический объект, расположенный на карте, умещается в область экрана, заданную padding'ом камеры.
Если не нужно изменять настройки оригинальной камеры, то можно настраивать скопированную через IBaseCamera::clone() камеру.
camera
Камера, используемая для вычисления позиции.
geometry
Геометрический объект, который необходимо вписать в область экрана, заданную внутренними отступами (padding) камеры.
styleZoomToTiltRelation
Функция зависимости угла наклона камеры от стилевого уровня масштабирования.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().
zoomOutToFit(camera,objects,styleZoomToTiltRelation,size)
fun zoomOutToFit(
camera: BaseCamera,
objects: List<SimpleMapObject>,
styleZoomToTiltRelation: StyleZoomToTiltRelation? = null,
size: ScreenSize? = null
): CameraPosition
Вычисление позиции камеры, такой, что при неизменной точке установки камеры геометрический объект, расположенный на карте, умещается в область экрана, заданную padding'ом камеры.
camera
Камера, используемая для вычисления позиции.
objects
Объекты карты, которые необходимо вписать в область экрана, заданную внутренними отступами (padding) камеры.
styleZoomToTiltRelation
Функция зависимости угла наклона камеры от стилевого уровня масштабирования.
size
Размер области просмотра. В случае, если не указано, используется значение ICamera::size().