method
AttributeValue(value)
calcPosition(camera,geometry,screenArea,tilt,bearing,size)
fun calcPosition(
camera: BaseCamera,
geometry: Geometry,
screenArea: Padding? = null,
tilt: Tilt? = null,
bearing: Bearing? = null,
size: ScreenSize? = null
): CameraPosition
Вычисление позиции камеры такой, что геометрический объект, расположенный на карте,
полностью вписан в область экрана, заданную параметром screen_area.<p>Если не нужно изменять настройки оригинальной камеры,
то можно настраивать скопированную через IBaseCamera::clone() камеру.</p>
Parameters
camera
Камера, используемая для вычисления позиции.
geometry
Геометрический объект, который необходимо вписать в область экрана, заданную параметром screen_area.
screenArea
область экрана, в которую нужно вписать геометрию.
Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты.
Если не задан, то используется текущий наклон камеры.
bearing
поворот карты.
Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра.
В случае, если не указано, используется значение ICamera::size().
Returns
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.<p>Если не нужно изменять настройки оригинальной камеры,
то можно настраивать скопированную через IBaseCamera::clone() камеру.</p>
Parameters
camera
Камера, используемая для вычисления позиции.
geometry
Геометрический объект, который необходимо вписать в область экрана, заданную параметром screen_area.
styleZoomToTiltRelation
Функция зависимости угла наклона камеры от стилевого уровня масштабирования.
screenArea
область экрана, в которую нужно вписать геометрию.
Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты.
Если не задан, то используется текущий наклон камеры.
bearing
поворот карты.
Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра.
В случае, если не указано, используется значение ICamera::size().
Returns
calcPosition(camera,objects,screenArea,tilt,bearing,size)
fun calcPosition(
camera: BaseCamera,
objects: List<SimpleMapObject>,
screenArea: Padding? = null,
tilt: Tilt? = null,
bearing: Bearing? = null,
size: ScreenSize? = null
): CameraPosition
Вычисление позиции камеры такой, что объекты карты полностью вписаны в область экрана,
заданную параметром screen_area.
Parameters
camera
Камера, используемая для вычисления позиции.
objects
Объекты карты, которые необходимо вписать в область экрана, заданную параметром screen_area.
screenArea
область экрана, в которую нужно вписать геометрию.
Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты.
Если не зад ан, то используется текущий наклон камеры.
bearing
поворот карты.
Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра.
В случае, если не указано, используется значение ICamera::size().
Returns
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.
Parameters
camera
Камера, используемая для вычисления позиции.
objects
Объекты карты, которые необходимо вписать в область экрана, заданную параметром screen_area.
styleZoomToTiltRelation
Функция зависимости угла наклона камеры от стилевого уровня масштабирования.
screenArea
область экрана, в которую нужно вписать геометрию.
Если не задана, то для расчёта используется padding камеры.
tilt
наклон карты.
Если не задан, то используется текущий наклон камеры.
bearing
поворот карты.
Если не задан, то используется текущий поворот камеры.
size
Размер области просмотра.
В случае, если не указано, используется значение ICamera::size().
Returns
Color(red,green,blue,alpha)
fun Color(
red: Int,
green: Int,
blue: Int,
alpha: Int = 255
): Color
Parameters
createDefaultStyleZoomToTiltRelation()
fun createDefaultStyleZoomToTiltRelation(): StyleZoomToTiltRelation
Получение зависимости угла наклона камеры от стилевого уровня масштабирования
для стандартного контроллера слежения за наклоном.
Returns
createRasterTileDataSource(context,sublayerName,urlTemplate)
fun createRasterTileDataSource(
context: Context,
sublayerName: String,
urlTemplate: String
): Source
Создание источника, получающего растровые тайлы.
Parameters
context
контекст.
sublayerName
имя, которое будет использовано при генерации объектов.
Это имя должно быть указано в стилях в условии filter слоя типа raster для атрибута db_sublayer.
Пример: ["match", <a href="#">get,db_sublayer</a>, <a href="#">NAME</a>, true, false]
Подробнее см. спецификацию: https://docs.2gis.com/ru/mapgl/stylespecification
urlTemplate
Шаблон url для запроса тайлов, должен содержать подстроки {x}, {y} и {z},
которые при подстановке вместо них числовых значений формируют валидный URL,
на который будет отправлен запрос за данными тайла.
Returns
createRawMyLocationController()
fun createRawMyLocationController(): MyLocationController
Использует данные платформы. Координаты и ориентация маркера
геопозиции изменяются моментально при получении данных.
Returns
createSmoothMyLocationController()
fun createSmoothMyLocationController(): MyLocationController
Использует данные карты. Координаты и ориентация маркера
геопозиции изменяются плавно. Пр и использовании режима слежения,
изменения маркера синхронизованы с изменениями позиции камеры.
Returns
createStyleZoomToTiltRelation(points)
fun createStyleZoomToTiltRelation(points: Map): StyleZoomToTiltRelation
Создаем зависимость угла наклона камеры от стилевого уровня масштабирования.
Parameters
points
Точки, по которым строится зависимость.
Returns
StyleZoomToTiltRelationзависимость угла наклона камеры от стилевого уровня масштабирования, если создать зависимость не
удалось - бросаем исключение.
<p>Зависимость должна представлять собой монотонную непрерывную функцию.
Если точками задана зависимость, не удовлетворяющая условиям, то функция бросает исключение.
Зависимость, примерно как в 2гис, можно задать последовательностью точек <a href="#">17,0,19,15,20,25</a> в режиме карты
и <a href="#">15,0,16,34,17,48</a> в режиме навигатора.
Пусть нужно получить значение угла наклона камеры T для стилевого уровня масштабирования Z, такого что Z0
<
= Z
<
Z1 и
зависимость задана точками <a href="#">Z0,T0,Z1,T1</a>. Тогда искомое значение рассчитывается по формуле
T = T0 + k * (T1 - T0), где k = (Z - Z0) / (Z1 - Z0). Если Z
<
Z0, то T = T0. Если Z >= Z1, то T = T1.</p>
GeoPoint(latitude,longitude)
fun GeoPoint(latitude: Double, longitude: Double): GeoPoint
Parameters
GeoPointWithElevation(latitude,longitude,elevation)
fun GeoPointWithElevation(
latitude: Double,
longitude: Double,
elevation: Elevation = Elevation(0.0f)
): GeoPointWithElevation
Parameters
GeoPointWithElevation(point,elevation)
fun GeoPointWithElevation(point: GeoPoint, elevation: Elevation = Elevation(0.0f)): GeoPointWithElevation