Skip to main content

class

ActivityTracker

ActivityTracker(
platformContext: Context,
model: Model,
speedBound: Double = 4.2,
timeThreshold: Duration = Duration.ofMilliseconds(20000)
)

Navigator extension that monitors user activity and emits a signal when the user has stopped using the navigator and can be turned off.

Parameters

platformContext

Context.

model

Model of the navigator which status is being monitored.

speedBound

Upper speed limit in m/s, above which in the Finished state of the navigator it is considered that the navigator is active, i.e. the movement continues.

timeThreshold

The amount of time the navigator's Finished state monitors movement below the threshold to determine if the navigator is inactive. If during this time the movement rate is below the set threshold, or there is no location and speed data, the Navigator is considered inactive.

Properties

val stopChannel

Active state of this flag indicates that the navigator needs to be stopped. If navigation stops in the Finished state, (the movement stops or its speed falls below the threshold) and this state persists for some time, the flag is set to true, otherwise it is set to false.

val stop

Active state of this flag indicates that the navigator needs to be stopped. If navigation stops in the Finished state, (the movement stops or its speed falls below the threshold) and this state persists for some time, the flag is set to true, otherwise it is set to false.

AddEventResult

Result of adding an event (event object or error).

AddEventResult(event: RoadEvent)
Parameters
AddEventResult(error: AddEventError)
Parameters
Methods
fun match(event: Function1, error: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isEvent

val asEvent

val isError

val asError

val value

Address

Address as a set of separate components.

Address(
drillDown: List<AddressAdmDiv>,
components: List<AddressComponent>,
buildingName: String?,
postCode: String?,
buildingCode: String?,
fiasCode: String?,
addressComment: String?
)

Address as a set of separate components.

Parameters

drillDown

components

buildingName

postCode

buildingCode

fiasCode

addressComment

Properties

val drillDown

Set of administrative division objects where the described object is located.

val components

Full address of an object may contain several separate address components.

val buildingName

Name of the building.

val postCode

ZIP code.

val buildingCode

Unique ZIP code of the building.

val fiasCode

FIAS code of the building.

val addressComment

Comment on the address. Example: "office 301; 9th floor"

AddressAdmDiv

Object of administrative division.

AddressAdmDiv(type: String, name: String)

Object of administrative division.

Parameters

type

name

Properties

val type

The type of the administrative unit. One of the following:

  • country
  • region (province/territory/republic, etc.)
  • district_area - district of the region
  • city
  • settlement
  • division
  • district
  • living_area - residential estate, microdistrict
  • place

val name

AddressComponent

Address component: street, house number, or verbal description of location.

AddressComponent(streetAddress: AddressStreet)
Parameters

streetAddress

AddressComponent(number: AddressNumber)
Parameters
AddressComponent(location: AddressLocation)
Parameters
Methods
fun match(
streetAddress: Function1,
number: Function1,
location: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isStreetAddress

val asStreetAddress

val isNumber

val asNumber

val isLocation

val asLocation

val value

AddressLocation

Used for components that are difficult to describe with a specific address.

AddressLocation(comment: String)

Used for components that are difficult to describe with a specific address.

Parameters

comment

Properties

val comment

Text description of the building location.

AddressNumber

House number used as a full address. In some settlements, only the house number is indicated, without the street (for example, Krasnoobsk).

AddressNumber(number: String, fiasCode: String?)

House number used as a full address. In some settlements, only the house number is indicated, without the street (for example, Krasnoobsk).

Parameters

number

fiasCode

Properties

val number

House number, including fractions and letters. Can be a proper noun if it is a common practice in the location.

val fiasCode

FIAS street code.

AddressStreet

Regular address with a street name and a building number.

AddressStreet(
street: String,
number: String,
fiasCode: String?
)

Regular address with a street name and a building number.

Parameters

street

number

fiasCode

Properties

val street

Street name.

val number

House number, including fractions, building numbers, and letters.

val fiasCode

FIAS street code.

AddRoadEventButton

Button for adding a road event.

AddRoadEventButton(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Button for adding a road event.

Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: AddRoadEventCardModel): Unit
Parameters

AddRoadEventCard

Card for adding a road event.

AddRoadEventCard(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Card for adding a road event.

Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: AddRoadEventCardModel): Unit
Parameters
Properties

const MAX_DESCRIPTION_LENGTH

AddRoadEventCardModel

Model of the card for adding a road event.

Implements: java.lang.AutoCloseable
AddRoadEventCardModel(roadEventManager: RoadEventManager, map: Map)

Model of the card for adding a road event.

Parameters

roadEventManager

map

Methods
fun onEventTypeClicked(type: RoadEventType): Unit

Action that occurs when the event type selection control is clicked.

Parameters
fun onLaneClicked(lane: Lane): Unit

Action that occurs when the lane selection control is clicked.

Parameters

lane

Returns
fun onDescriptionEntered(description: String): Unit

Action that occurs when entering description.

Parameters

description

Returns
fun onSendClicked(): Unit

Action that occurs when the submit button is clicked.

Returns
fun close(): Unit
Returns
Properties

val eventTypeChannel

Selected event type.

val lanesChannel

val canSelectLanesChannel

Whether it is possible to set lanes.

val descriptionChannel

Entered description.

val markerPositionChannel

Marker position on the screen.

val canSendChannel

Whether it is possible to send an event.

val resultChannel

Result of sending the event.

AddRoadEventControl

Base class for controls for adding road events.

Extends: android.widget.FrameLayout
AddRoadEventControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Base class for controls for adding road events.

Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: AddRoadEventCardModel): Unit
Parameters
@CallSuper
fun detachFromModel(): Unit
Returns
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns

AddRoadEventControls

Set of controls for adding road events. Consists of a card with event parameters, a "Submit" button, and a marker indicating the location of adding an event on the map.

AddRoadEventControls(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Set of controls for adding road events. Consists of a card with event parameters, a "Submit" button, and a marker indicating the location of adding an event on the map.

Parameters

context

attrs

defStyle

Methods
fun show(): Unit
Returns
fun hide(): Unit
Returns
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns
Properties

val cardHeightChannel

Height in pixels to which the card is expanded.

AddRoadEventMarker

Marker for adding a road event.

AddRoadEventMarker(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Marker for adding a road event.

Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: AddRoadEventCardModel): Unit
Parameters
fun detachFromModel(): Unit
Returns

AlternativeRouteSelector

Selects an alternative route.

Methods
fun selectAlternativeRoute(trafficRoute: TrafficRoute): Unit

Selects an alternative route. If the passed route does not match one of the current alternative routes, nothing happens. Otherwise, the appropriate alternative route becomes the current active route.

Parameters

trafficRoute

Alternative route which should be selected as a current active route.

Returns

AlternativeRoutesProviderSettings

Settings of searching for alternative routes and a better route.

Properties

var alternativeRoutesEnabled

Flag to enable/disable suggesting alternative routes. By default, this option is enabled.

var betterRouteEnabled

Flag to enable/disable suggesting a better route. By default, this option is enabled.

var routeSearchDelay

Delay before searching for alternative routes when starting a trip on a route or after switching to another route. Must be not less than 5 seconds. The default value is 20 seconds.

var betterRouteTimeCostThreshold

Minimum travel time difference between the original route and the alternative route for which the alternative route is considered a better route.

var betterRouteLengthThreshold

Minimum total length of route edges that differ between the original route and the alternative route at which the alternative route is considered a better route.

var routerType

Type of a search engine for finding alternative routes.

Anchor

Image anchor point. (0, 0) - upper-left corner, (1, 1) - lower-right corner.

Anchor(x: Float = 0.5f, y: Float = 0.5f)

Image anchor point. (0, 0) - upper-left corner, (1, 1) - lower-right corner.

Parameters
Properties

AndroidAutoMapSession

Car App session that renders a map on the surface provided by the AppManager.

Supports both shift and scale gestures.

The map's visibility is tied to the session's Lifecycle:

  • Map becomes visible during the onStart event.
  • Map becomes hidden during the onStop event.

Action.PAN must be included in the Template. Otherwise, the surface won't be available.

Next permissions are already declared in the SDK:

  • androidx.car.app.ACCESS_SURFACE
  • androidx.car.app.NAVIGATION_TEMPLATES

AndroidAutoMapSession(mapOptions: MapOptions)

Car App session that renders a map on the surface provided by the AppManager.

Supports both shift and scale gestures.

The map's visibility is tied to the session's Lifecycle:

  • Map becomes visible during the onStart event.
  • Map becomes hidden during the onStop event.

Action.PAN must be included in the Template. Otherwise, the surface won't be available.

Next permissions are already declared in the SDK:

  • androidx.car.app.ACCESS_SURFACE
  • androidx.car.app.NAVIGATION_TEMPLATES

Parameters

mapOptions

The configuration of the map. The following parameters are not utilized:

Methods
fun onMapReady(map: Map): Unit

Provides a map when it is successfully initialized.

Parameters

map

Returns
fun onMapReadyException(exception: Exception): Unit

Provides an exception in case of an error during initialization.

Parameters

exception

Returns
fun onMapClicked(x: Float, y: Float): Unit

Forwards the SurfaceCallback#onClick event.

Parameters
fun setTheme(theme: MapTheme): Unit

Applies the theme to the map.

This takes effect only after the map has been initialized (i.e., after onMapReady has been called). To set a theme before the map is initialized, use the mapOptions#mapTheme.

Parameters

theme

Theme to be applied. The loadingBackground attribute is not utilized.

Returns

ApartmentRange

Range of apartments.

ApartmentRange(start: String, end: String? = null)

Range of apartments.

Parameters
Properties

val start

Beginning of the range/stored value. Currently, only numeric values are possible, while there are no apartments with suffixes in the data yet.

val end

End of the range. If absent, the range consists of a single start value. Otherwise, it is an arithmetic progression from start to end in increments of 1.

Attribute

Additional attribute. Example: { tag: "hotel_room_internet", name: "Free internet in rooms" }

Attribute(tag: String, value: String)

Additional attribute. Example: { tag: "hotel_room_internet", name: "Free internet in rooms" }

Parameters

tag

value

Properties

val tag

Tag.

val value

Value.

Attributes

Interface for managing map object properties.

Only map objects have properties, but you can set default properties for the entire map, the style, and the source (see ISource for details).

Methods
fun setAttributeValue(name: String, value: AttributeValue): Unit

Sets a property.

Parameters

name

Property name.

value

Returns
fun setAttributeValues(values: Map, attributesToRemove: List<String> = listOf()): Unit

Sets a property set.

Parameters

values

Set of the "name":"value" pairs for the added property.

attributesToRemove

List of names of properties to be removed.

Returns
fun removeAttribute(name: String): Unit

Deletes a property.

Parameters

name

Name of a property to delete.

Returns
fun getAttributeValue(name: String): AttributeValue

Gets a property.

Parameters

name

Name of a property to get.

Returns
Properties

val attributeNames

Gets a list of properties.

val changed

Gets a channel that notifies about property changes.

AttributeValue

Properties of map objects.

AttributeValue()
AttributeValue(boolean: Boolean)
Parameters

boolean

AttributeValue(number: Double)
Parameters

number

AttributeValue(integer: Long)
Parameters

integer

AttributeValue(string: String)
Parameters

string

AttributeValue(data: ByteArray)
Parameters
AttributeValue(array: List<AttributeValue>)
Parameters
AttributeValue(item: Map)
Parameters

item

Methods
fun match(
empty: Function0<T>,
boolean: Function1,
number: Function1,
integer: Function1,
string: Function1,
data: Function1,
array: Function1,
item: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isEmpty

val isBoolean

val asBoolean

val isNumber

val asNumber

val isInteger

val asInteger

val isString

val asString

val isData

val asData

val isArray

val asArray

val isObject

val asObject

val value

AudioSettings

Class for managing the sound.

All methods can be called from any thread.

Properties

var volume

Sound volume level (0-100).

var mute

Sound playing is disabled.

var audioFocusPolicy

Behavior of other applications sounds with the requested focus.

AudioStreamReader

Methods
fun read(): List<Short>

Description of the callback function type that the audio driver calls to read audio data stream.

AuthorInfo

Information about the author of the event or the photo.

AuthorInfo(type: AuthorType, name: String)

Information about the author of the event or the photo.

Parameters
Properties

val type

Content author category.

val name

String containing the name of the user who added the event or the photo.

  • Username if the author is an authorized user and has agreed to have their name displayed.
  • Empty string for an anonymous user or a user who has refused to have their name displayed.

AvailableCallback

Methods
fun setAvailable(available: Boolean): Unit

Availability of the audio device to the application.

Parameters

available

Indication of the audio device availability to the application.

Returns

BaseCamera

Camera.

Sets the parameters for projecting the map onto the screen.

Methods
fun clone(): BaseCamera

Creates a copy of the current camera.

Returns
fun changePosition(positionChange: CameraPositionChange): Unit

Changes only a part of the camera position parameters.

The call interrupts flyover and gesture processing, and also resets following of changed parameters, and when changing coordinates, also resets following the style zoom level and direction.

Parameters

positionChange

Returns
Properties

val projection

Projection.

Used to get a screen point from a map point and a map point from a screen point. Camera parameters are fixed at the time of the call.

val positionChannel

Gets the current camera position.

var position

Gets the current camera position.

val zoomRestrictionsChannel

Gets current zoom level limits.

var zoomRestrictions

Gets current zoom level limits.

val deviceDensityChannel

Gets the DPI ratio to the device's base DPI.

val deviceDensity

Gets the DPI ratio to the device's base DPI.

val sizeChannel

Gets the size of the viewing area.

var size

Gets the size of the viewing area.

val paddingChannel

Gets current paddings from the screen edges.

var padding

Gets current paddings from the screen edges.

val positionPointChannel

Point on the screen to which the camera position is attached. The point is set based on paddings.

var positionPoint

Point on the screen to which the camera position is attached. The point is set based on paddings.

val visibleArea

Area of intersection of the camera visibility pyramid and the surface of the map.

val visibleRectChannel

Rectangle indicating the visible area of the map.

val visibleRect

Rectangle indicating the visible area of the map.

val maxTiltRestrictionChannel

Gets the current function of the maximum camera tilt angle dependency on the style zoom level.

var maxTiltRestriction

Gets the current function of the maximum camera tilt angle dependency on the style zoom level.

val viewportRestrictionChannel

Gets the viewport restrictions.

var viewportRestriction

Gets the viewport restrictions.

Bearing

The angle between the directions of two objects or between the direction of the object and the north. The angle is measured clockwise. The range of values is 0°,360°.

Bearing(value: Double = 0.0)

The angle between the directions of two objects or between the direction of the object and the north. The angle is measured clockwise. The range of values is 0°,360°.

Parameters

value

Properties

val value

BearingFollowController

Controller following the map bearing.

BearingFollowController(
bearingSource: BearingSource,
animationDuration: Duration = Duration.ofMilliseconds(1000),
valueThreshold: Bearing = Bearing(value = 1.0)
)

Creates a controller for following the map direction.

Parameters

bearingSource

Source of information about direction.

animationDuration

Non-negative duration of change in real direction.

valueThreshold

Non-negative threshold value of considered change in real direction.

BetterRouteInfo

Information about an available alternative route.

BetterRouteInfo(trafficRoute: TrafficRoute, startPoint: RoutePoint)

Information about an available alternative route.

Parameters

trafficRoute

startPoint

Properties

val trafficRoute

Alternative route.

val startPoint

The point on the alternative route, from which the movement starts in case of switchingt to this route.

BetterRoutePromptControl

Dialog prompting you to switch to a route with a lower expected arrival time.

BetterRoutePromptControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Dialog prompting you to switch to a route with a lower expected arrival time.

Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: Model): Unit
Parameters

model

Returns
Properties

val visibilityChannel

BicycleBriefRouteInfo

Basic information about the cycling route.

BicycleBriefRouteInfo(length: RouteDistance, landmark: String)

Basic information about the cycling route.

Parameters

length

landmark

Properties

val length

Route length.

val landmark

Landmark.

BicycleInstructionCrossroad

Description of maneuvers when passing through an intersection or a pedestrian crossing.

BicycleInstructionCrossroad(landmark: BicycleInstructionCrossroadLandmark = BicycleInstructionCrossroadLandmark.NONE, maneuvers: List<BicycleInstructionCrossroadManeuver>)

Description of maneuvers when passing through an intersection or a pedestrian crossing.

Parameters
Properties

val landmark

val maneuvers

A chain of consecutive maneuvers.

BicycleInstructionCrossroadManeuver

BicycleInstructionCrossroadManeuver(direction: BicycleInstructionCrossroadManeuverDirection = BicycleInstructionCrossroadManeuverDirection.STRAIGHT, turnAngle: Int = 0)
Parameters
Properties

val direction

val turnAngle

Angle of rotation in degrees -180,180.

BicycleInstructionFinish

End of the cycling part of the route.

BicycleInstructionFinish()

End of the cycling part of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

BicycleInstructionStart

Beginning of the cycling part of the route.

BicycleInstructionStart()

Beginning of the cycling part of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

BicycleRouteSearchOptions

Bicycle route search options.

BicycleRouteSearchOptions(
avoidCarRoads: Boolean = false,
avoidStairways: Boolean = false,
avoidUnderpassesAndOverpasses: Boolean = false,
excludedAreas: List<ExcludedArea> = listOf()
)

Bicycle route search options.

Parameters

avoidCarRoads

avoidStairways

avoidUnderpassesAndOverpasses

excludedAreas

Properties

val avoidCarRoads

Avoid highways.

val avoidStairways

Avoid stairways.

val avoidUnderpassesAndOverpasses

Avoid underground and elevated passages.

val excludedAreas

Excluded areas (not more than 25).

BoolRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): BoolRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<BoolRouteLongEntry>

Elements partially or completely covered by the begin,end segment.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

Last element.

val entries

BoolRouteLongEntry

Extended route element - segment and value on it.

BoolRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: Boolean
)

Extended route element - segment and value on it.

Parameters
Properties

val point

val length

val value

Borders

Borders(
snapping: Double?,
isLg: Boolean,
value: String,
min: Double,
max: Double,
currentMin: Double? = null,
currentMax: Double? = null
)
Parameters

snapping

isLg

value

min

max

currentMin

currentMax

Properties

val snapping

Sets the pull to a value that is a multiple of this number.

val isLg

Indication of using a logarithmic scale.

val value

Value by which the filtering occurs.

val min

Lower bound of the set of values.

val max

Upper bound of the set of values.

val currentMin

Currently set minimum value.

val currentMax

Currently set maximum value.

BriefExtraRouteInfo

Additional information about the route for a specific type of transport.

BriefExtraRouteInfo(bicycle: BicycleBriefRouteInfo)
Parameters
BriefExtraRouteInfo(car: CarBriefRouteInfo)
Parameters
BriefExtraRouteInfo(pedestrian: PedestrianBriefRouteInfo)
Parameters
BriefExtraRouteInfo(publicTransport: PublicBriefRouteInfo)
Parameters

publicTransport

BriefExtraRouteInfo(scooter: ScooterBriefRouteInfo)
Parameters
Methods
fun match(
bicycle: Function1,
car: Function1,
pedestrian: Function1,
publicTransport: Function1,
scooter: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isBicycle

val asBicycle

val isCar

val asCar

val isPedestrian

val asPedestrian

val isPublicTransport

val asPublicTransport

val isScooter

val asScooter

val value

BriefPublicTransportCard

Card that displays brief information about a public transport route. Unlike a PublicTransportCard, it does not contain information about transfers.

Extends: android.widget.FrameLayout
BriefPublicTransportCard(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Card that displays brief information about a public transport route. Unlike a PublicTransportCard, it does not contain information about transfers.

Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns

BriefPublicTransportCardModel

Model for BriefPublicTransportCard.

BriefPublicTransportCardModel(route: TrafficRoute, context: Context)

Model for BriefPublicTransportCard.

Parameters
Properties

val title

Title. Estimated travel time, for example, "1 hour 42 minutes".

val transports

Transport information.

val description

Description. Number of transfers and walking time, e.g. 1transfer,15min walk.

BriefRoadEvent

BriefRoadEvent(
id: Long = 0,
eventType: RoadEventType = RoadEventType.OTHER,
lanes: EnumSet<Lane>
)
Parameters
Properties

val id

val eventType

val lanes

BriefRouteInfo

Basic route information.

BriefRouteInfo(duration: Duration, extraInfo: BriefExtraRouteInfo)

Basic route information.

Parameters
Properties

val duration

Driving time along the route.

val extraInfo

Additional information about the route for a specific type of transport.

BriefRouteInfoSearchPoints

Points used to request searching for the basic route information.

BriefRouteInfoSearchPoints(startPoint: RouteSearchPoint, finishPoint: RouteSearchPoint)

Points used to request searching for the basic route information.

Parameters
Properties

val startPoint

Starting point of the route.

val finishPoint

Finish point of the route.

BuildingId

Building ID.

BuildingId(value: Long = 0)

Building ID.

Parameters

value

Properties

val value

BuildingInfo

Information about building.

BuildingInfo(
buildingName: String? = null,
purposeName: String? = null,
purposeCode: PurposeCode? = null,
buildingLevels: BuildingLevels? = null
)

Information about building.

Parameters

buildingName

purposeName

purposeCode

buildingLevels

Properties

val buildingName

Name of the building.

val purposeName

Description of the purpose of the building.

val purposeCode

Code of the purpose of the building.

val buildingLevels

Information about floor plans of the building.

BuildingLevels

Information about the floor plans of the building.

BuildingLevels(defaultLevelId: LevelId, levels: List<LevelInfo>)

Information about the floor plans of the building.

Parameters

defaultLevelId

levels

Properties

val defaultLevelId

ID of the default floor plan.

val levels

All floor plans of the building.

CalloutMapPosition

Route callout position.

CalloutMapPosition(
mapId: MapId,
calloutPosition: GeoPoint?,
routePoint: RoutePoint?
)

Route callout position.

Parameters

mapId

calloutPosition

routePoint

Properties

val mapId

ID of the map for which the position is given.

val calloutPosition

Position on the map.

val routePoint

Position of a lane callout on the route.

Camera

Camera to start moving the map and adjust tracking.

Methods
fun move(moveController: CameraMoveController): Future<CameraAnimatedMoveResult>
Parameters

moveController

Animated camera movement controller.

Returns
fun move(
position: CameraPosition,
time: Duration = Duration.ofMilliseconds(300),
animationType: CameraAnimationType = CameraAnimationType.DEFAULT
): Future<CameraAnimatedMoveResult>
Parameters

position

Final camera position.

time

Time allotted for moving the map

animationType

Camera animation type.

Returns
fun move(
point: GeoPoint,
zoom: Zoom,
tilt: Tilt?,
bearing: Bearing,
time: Duration = Duration.ofMilliseconds(300),
animationType: CameraAnimationType = CameraAnimationType.DEFAULT
): Future<CameraAnimatedMoveResult>

Starts the animated map movement using the built-in map movement controller.

Resets the current map tracking mode and interrupts gesture processing.

Parameters

point

Point of the final camera position.

zoom

Zoom level in the final camera position.

tilt

Tilt in the final camera poition or an empty value if it is necessary to use the value from the follow controller or the current one depending on the active following mode.

bearing

Bearing in the final camera position.

time

Time allotted for moving the map

animationType

Camera animation type.

Returns
fun processMovementAndStop(): Unit

Sets the camera position according to the current time and stops animated movement.

Calling the method interrupts the flyover and gesture processing, and also resets the tracking mode.

Returns
fun setBehaviour(behaviour: CameraBehaviour): Unit
Parameters

behaviour

Returns
fun addFollowController(followController: FollowController): Unit

Adds a tracking controller.

There can be several different ones, for example, a controller for tracking the scale, map tilt, geolocation, etc.

Parameters

followController

Returns
fun removeFollowController(followController: FollowController): Unit

Removes the tracking controller.

Parameters

followController

Returns
fun setCustomFollowController(followController: CustomFollowController): Unit

Adds a tracking controller implemented on the platform.

Only one such controller can be installed. If you install multiple controllers, only the last one installed is used.

Parameters

followController

Returns
fun removeCustomFollowController(): Unit

Removes the tracking controller implemented on the platform.

Returns
Properties

val stateChannel

Gets the current state of the camera.

val state

Gets the current state of the camera.

val behaviourChannel

val behaviour

Camera tracking mode.

CameraBehaviour

Camera tracking mode.

Camera modes are degraded according to the following rules:

  • Map shift sets to None the following events: DirectMapShiftEvent, MapShiftBeginEvent, DirectMapRotationEvent with the specified event center, DirectMapScalingEvent with the specified event center, ScaleMapEvent with the specified event center
  • Rotation of the map relative to the position point blocks the publication of Bearing events: MapRotationBeginEvent, RotateMapToNorthEvent, DirectMapRotationEvent without event center
  • Changing the scale relative to the position point blocks the publication of StyleZoom events: MapScalingBeginEvent, DirectMapScalingEvent without event center, ScaleMapEvent without event center
  • Tilt locks the publication of Tilt events: DirectMapTiltEvent

CameraBehaviour(position: FollowPosition?, tilt: FollowTilt = FollowTilt.OFF)

Camera tracking mode.

Camera modes are degraded according to the following rules:

  • Map shift sets to None the following events: DirectMapShiftEvent, MapShiftBeginEvent, DirectMapRotationEvent with the specified event center, DirectMapScalingEvent with the specified event center, ScaleMapEvent with the specified event center
  • Rotation of the map relative to the position point blocks the publication of Bearing events: MapRotationBeginEvent, RotateMapToNorthEvent, DirectMapRotationEvent without event center
  • Changing the scale relative to the position point blocks the publication of StyleZoom events: MapScalingBeginEvent, DirectMapScalingEvent without event center, ScaleMapEvent without event center
  • Tilt locks the publication of Tilt events: DirectMapTiltEvent

Parameters
Properties

CameraBehaviourChange

Change tracking mode.

CameraBehaviourChange(newBehaviour: CameraBehaviour, changeReason: CameraBehaviourChangeReason = CameraBehaviourChangeReason.APPLICATION)

Change tracking mode.

Parameters
Properties

val newBehaviour

New tracking mode.

val changeReason

Reason for changing tracking mode.

CameraNotifier

Warns you when you enter the traffic camera coverage area.

CameraNotifier(model: Model)

Navigator extension that warns you when you enter the traffic camera coverage area.

Parameters

model

Model of the navigator which status is being monitored.

Properties

val cameraProgressChannel

Progress of passing the traffic camera coverage area.

val cameraProgress

Progress of passing the traffic camera coverage area.

CameraPosition

Camera position.

CameraPosition(
point: GeoPoint,
zoom: Zoom,
tilt: Tilt = Tilt(value = 0.0f),
bearing: Bearing = Bearing(value = 0.0)
)

Camera position.

Parameters

point

zoom

tilt

bearing

Properties

val point

Map point corresponding to the camera position (see ICamera::position_point()).

val zoom

Zoom level. 0 is the entire world inscribed in a square of 256x256 logical pixels (see LogicalPixel).

val tilt

Tilt angle of the direction of vertical view.

0 - nadir (look vertically down), the maximum value is 60 degrees.

val bearing

Rotation angle of the direction of horizontal view relative to the north direction. Counted clockwise, in degrees.

CameraPositionChange

Description of changing some of the camera position parameters.

CameraPositionChange(
point: GeoPoint? = null,
zoom: Zoom? = null,
tilt: Tilt? = null,
bearing: Bearing? = null
)

Description of changing some of the camera position parameters.

Parameters

point

zoom

tilt

bearing

Properties

val point

val zoom

val tilt

val bearing

CameraPositionPoint

Relative screen position of the point to which the camera is attached.

Screen area is set by paddings. x - offset from the left edge of the screen area, y - offset from the top edge. Allowed range of padding values: (0.0f, 1.0f) 0,0 - the upper-left corner of the screen area, 1,1 - the lower-right corner.

CameraPositionPoint(x: Float = 0.5f, y: Float = 0.5f)

Relative screen position of the point to which the camera is attached.

Screen area is set by paddings. x - offset from the left edge of the screen area, y - offset from the top edge. Allowed range of padding values: (0.0f, 1.0f) 0,0 - the upper-left corner of the screen area, 1,1 - the lower-right corner.

Parameters
Properties

CameraProgressInfo

Information about the progress of passing the camera zone.

CameraProgressInfo(
camera: RouteCamera,
position: RoutePoint,
progress: Float = 0.0f
)

Information about the progress of passing the camera zone.

Parameters

camera

position

progress

Properties

val camera

Camera for which the passing progress is being monitored.

val position

Position of the camera on the route.

val progress

Progress of passing the camera coverage area, 0.1.

CameraRouteAttribute

Container that describes a point attribute of a route. Each element is stored as a point on the route (at which the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<CameraRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): CameraRouteEntry?

Finds the nearest element, the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): CameraRouteEntry?

Finds the nearest element, the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

Last element.

val entries

CameraRouteEntry

Route element - point and value in it.

CameraRouteEntry(point: RoutePoint, value: RouteCamera)

Route element - point and value in it.

Parameters
Properties

val point

val value

CameraZoomRestrictions

Acceptable zoom range.

CameraZoomRestrictions(minZoom: Zoom = Zoom(value = 0.0f), maxZoom: Zoom = Zoom(value = 20.0f))

Acceptable zoom range.

Parameters

minZoom

maxZoom

Properties

val minZoom

The minimum zoom level must be less than the maximum one.

val maxZoom

Maximum scale is limited to 20.

CancelEvent

Event of canceling the current action.

For example, can be called when a gesture is canceled, the window focus is lost, or when the mouse capture is lost. It can also be called from within the map when changing the zoom level restrictions, applying changes to the tracking mode, and setting the interactive mode of the map.

CancelEvent()

CarBriefRouteInfo

Basic car route information.

CarBriefRouteInfo(
length: RouteDistance,
landmark: String,
trafficSpeed: CarBriefRouteInfoTrafficSpeed
)

Basic car route information.

Parameters
Properties

val length

Route length.

val landmark

Landmark.

val trafficSpeed

CarInstructionCrossroad

Description of maneuvers at the crossroads.

CarInstructionCrossroad(
direction: CarInstructionCrossroadDirection = CarInstructionCrossroadDirection.STRAIGHT,
turnAngle: Int = 0,
landmark: CarInstructionCrossroadLandmark = CarInstructionCrossroadLandmark.NONE,
exitName: String
)

Description of maneuvers at the crossroads.

Parameters
Properties

val direction

Direction of traffic at the intersection.

val turnAngle

Angle of rotation in degrees -180,180.

val landmark

val exitName

Name of the exit.

CarInstructionFinish

End of the car section of the route.

CarInstructionFinish()

End of the car section of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

CarInstructionRoundabout

Description of maneuvers at a roundabout.

CarInstructionRoundabout(
type: CarInstructionRoundaboutType = CarInstructionRoundaboutType.ENTRY,
turnAngle: Int = 0,
exitNumber: Int = 0,
exitName: String
)

Description of maneuvers at a roundabout.

Parameters

type

turnAngle

exitNumber

exitName

Properties

val type

val turnAngle

Angle of rotation in degrees -180,180.

val exitNumber

Exit number - 1,inf or 0 if exit number is unknown.

val exitName

Name of the exit.

CarInstructionStart

Beginning of the car section of the route.

CarInstructionStart()

Beginning of the car section of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

CarInstructionUTurn

U-turn on the road (not at the intersection).

U-turn at the intersection is described by the Crossroad instruction.

CarInstructionUTurn(exitName: String)

U-turn on the road (not at the intersection).

U-turn at the intersection is described by the Crossroad instruction.

Parameters

exitName

Properties

val exitName

Name of the exit.

CarRouteSearchOptions

Parameters for finding a car route.

CarRouteSearchOptions(
avoidTollRoads: Boolean = false,
avoidUnpavedRoads: Boolean = false,
avoidFerries: Boolean = false,
avoidLockedRoads: Boolean = true,
routeSearchType: RouteSearchType = RouteSearchType.JAM,
excludedAreas: List<ExcludedArea> = listOf()
)

Parameters for finding a car route.

Parameters

avoidTollRoads

avoidUnpavedRoads

avoidFerries

avoidLockedRoads

routeSearchType

excludedAreas

Properties

val avoidTollRoads

Avoid toll roads.

val avoidUnpavedRoads

Avoid dirt roads.

val avoidFerries

Avoid ferries.

val avoidLockedRoads

Avoid closed roads. When set to true, the route search does not take into account road sections that are closed to traffic. If set to false, the route can be built through blocked sections of roads if it is impossible to build a route without passing through blocked sections.

val routeSearchType

Route search type.

val excludedAreas

Excluded areas (not more than 25).

Certificate

SSL certificate.

Certificate(system: SystemCertificate)
Parameters
Certificate(fromFile: CertificateFromFile)
Parameters
Certificate(fromAsset: CertificateFromAsset)
Parameters
Methods
fun match(
system: Function1,
fromFile: Function1,
fromAsset: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isSystem

val asSystem

val isFromFile

val asFromFile

val isFromAsset

val asFromAsset

val value

val default

Default certificates. System certificates and the state ones shipped with the SDK.

CertificateFromAsset

SSL certificate from asset.

CertificateFromAsset(path: String)

SSL certificate from asset.

Parameters

path

Properties

val path

Path relative to the asset root directory.

CertificateFromFile

SSL certificate from a file.

CertificateFromFile(path: String)

SSL certificate from a file.

Parameters

path

Properties

val path

File path.

CheckableGroupedItem

Single element from GroupCheckableItem.

Properties

val text

Gets a text description of an element.

val values

Gets a list of values ​​by which filtering occurs. Usually one value.

var isChecked

Gets the state of an element.

CheckableItem

Base representation of a checkable item from a CheckableItemsGroup.

Properties

val type

Gets the type of the checked element.

val filterType

Gets a list of filters that describe the current state of the widget. Can be used when forming a search query.

CheckableItemsGroup

Widget for representing a group of checked items.

Properties

val items

Gets a group of widget elements.

Checkbox

Checkbox widget.

Properties

val filterType

Gets the filter type that the widget represents.

val checkedText

Gets the signature text for a “checked” checkbox.

val uncheckedText

Gets the signature text for a “non-checked” checkbox.

val values

Gets a list of values ​​by which filtering occurs. Usually one value.

var isChecked

Gets the state of the widget.

Circle

Circle.

Circle(options: CircleOptions)
Parameters
Properties

var position

Location of the circle center.

var radius

Circle radius.

var color

Circle fill color.

var strokeWidth

Width of the circle outline.

var strokeColor

Circle outline color.

var dashedStrokeOptions

CircleOptions

Parameters for creating a geometric map object of the "Circle" type.

CircleOptions(
position: GeoPoint,
radius: Meter,
color: Color = Color(),
strokeWidth: LogicalPixel = LogicalPixel(value = 0.0f),
strokeColor: Color = Color(),
dashedStrokeOptions: DashedStrokeCircleOptions? = null,
visible: Boolean = true,
userData: Any? = null,
zIndex: ZIndex = ZIndex(value = 0),
levelId: LevelId? = null
)

Parameters for creating a geometric map object of the "Circle" type.

Parameters

position

radius

color

strokeWidth

strokeColor

dashedStrokeOptions

visible

userData

zIndex

levelId

Properties

val position

Geographical position.

val radius

Radius in meters.

val color

Fill color.

val strokeWidth

Width of the circle outline.

val strokeColor

Line color of the circle outline.

val dashedStrokeOptions

val visible

Visibility flag.

val userData

User data (not used inside the SDK, only needed for API users).

val zIndex

Object rendering level.

val levelId

Link to the floor plan of the building.

ClusterObject

Cluster of objects.

Properties

val position

Gets the position of the cluster on the map.

val objectCount

Gets the number of tokens in the cluster.

val objects

Gets a list of markers in the cluster.

val geometryObject

Gets a cluster geometric object.

ClusterOptions

Cluster marker settings.

ClusterOptions(attributes: Map, userData: Any? = null)

Cluster marker settings.

Parameters

attributes

userData

Properties

val attributes

Cluster attributes.

val userData

User data. Returned in IClusterObject.

Color

Color

Color(argb: Int = 4278190080.toInt())

Color

Parameters

argb

Properties

val argb

val red

val green

val blue

val alpha

CompassControl

Compass control.

CompassControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0,
layout: Int = R.layout.dgis_compass_control
)

Compass control.

Parameters

context

attrs

defStyle

layout

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns

CompassControl

CompassControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters

context

attrs

defStyle

CompassControlModel

Compass control model. The control consists of a compass button. When the button is pressed, the map camera changes the angle in the north direction. If the map camera faces the north, the control must be hidden. Thread-safe.

CompassControlModel(map: Map)
Parameters

map

Methods
fun onClicked(): Unit
Returns
Properties

val bearingChannel

val bearing

ComplexGeometry

Compound geometry consisting of a set of simple or compound geometries.

An arbitrary level of nesting of compound geometries in a set is supported.

ComplexGeometry(geometries: List<Geometry>)
Parameters

geometries

Properties

val elements

ContactInfo

Way to contact the organization.

ContactInfo(
type: String,
displayText: String,
value: String,
comment: String?
)

Way to contact the organization.

Parameters

type

displayText

value

comment

Properties

val type

Type of the contact. One of the following:

  • email
  • website
  • phone
  • fax
  • pobox - P.O. box
  • icq
  • jabber
  • skype
  • vkontakte
  • twitter
  • odnoklassniki
  • youtube
  • linkedin
  • googleplus
  • pinterest
  • whatsapp
  • viber
  • telegram

val displayText

Contact value to display.

val value

Technical value of the contact. Depending on the contact type, it has the following semantics:

  • email - email address
  • website - full URL
  • phone - phone number in international format, for example: "+73831234567"
  • fax - phone number in international format, for example: "+73831234567"
  • pobox - mailing address
  • icq - user ID
  • jabber - user ID
  • skype - user ID
  • vkontakte - full URL
  • twitter - full URL
  • odnoklassniki - full URL
  • youtube - full URL
  • linkedin - full URL
  • googleplus - full URL
  • pinterest - full URL
  • whatsapp - full URL
  • viber - full URL
  • telegram - full URL

val comment

Clarifying information about the contact.

Context

Context - the environment required for the SDK to work.

CoordinatesFollowController

Controller for following the coordinates of the map position.

CoordinatesFollowController(animationDuration: Duration = Duration.ofMilliseconds(1000), valueThreshold: Meter = Meter(value = 0.1f))

Creates a controller for following the coordinates of the map position.

Parameters

animationDuration

Duration of change in real position.

valueThreshold

Non-negative threshold value of considered change in real position.

CustomDashboardButton

Class for replacing the standatd button for adding road events in the navigator dashboard.

CustomDashboardButton(icon: Int, onClick: Function0<Unit>)

Class for replacing the standatd button for adding road events in the navigator dashboard.

Parameters

icon

onClick

Properties

val icon

ID of a Drawable resource to be used as a button icon.

val onClick

Action that is taken upon the button click.

CustomizableDashboardButton

DashboardButtonAbsent

Used in DefaultNavigationControls.setCustomDashboardButton to indicate that the action button must be hidden.

DashboardControl

DashboardControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns
fun attachToModel(model: Model): Unit
Parameters

model

Returns
fun collapse(action: Function0?<Unit> = null): Unit
Parameters

action

Returns
fun toggleExpandedState(): Unit
Returns
Properties

val remainingRouteInfoControl

var onFinishClicked

var onShowRouteClicked

var isFreeRoam

val headerHeight

DashedPolylineOptions

Dashed polyline options.

DashedPolylineOptions(dashLength: LogicalPixel = LogicalPixel(value = 5.0f), dashSpaceLength: LogicalPixel = LogicalPixel(value = 2.0f))

Dashed polyline options.

Parameters

dashLength

dashSpaceLength

Properties

val dashLength

Length of the dashed line.

val dashSpaceLength

Length of the space between dashes.

DashedStrokeCircleOptions

DashedStrokeCircleOptions(dashLength: LogicalPixel = LogicalPixel(value = 5.0f), dashSpaceLength: LogicalPixel = LogicalPixel(value = 2.0f))
Parameters

dashLength

dashSpaceLength

Properties

val dashLength

Dash length.

val dashSpaceLength

Length of the space between dashes.

DayTime

Time moment within a day.

DayTime(hours: Byte, minutes: Byte)

Time moment within a day.

Parameters

hours

minutes

Properties

val hours

Hours, 0-23.

val minutes

Minutes, 0-59.

DefaultLocationSource

Implementation of the default location source (recommended for use). If available, GMS is used, otherwise - LocationManager.

DefaultLocationSource(context: Context)

Implementation of the default location source (recommended for use). If available, GMS is used, otherwise - LocationManager.

Parameters

context

Methods
@Synchronized
fun activate(listener: LocationChangeListener): Unit
Parameters
@Synchronized
fun deactivate(): Unit
Returns
@Synchronized
fun setDesiredAccuracy(accuracy: DesiredAccuracy): Unit
Parameters

accuracy

Returns
fun onPermissionGranted(): Unit

The method must be called after receiving permissions to use the location.

Returns
@Synchronized
fun onProvidersChanged(): Unit
Returns
Properties

val lastLocation

Currently best known geolocation. If there is no currently known geolocation, null is returned. The returned geolocation may be unreliable, such as being out of date and/or not meeting the required accuracy.

var isGMSAllowed

Whether to use GMS.

DefaultNavigationControls

Navigator UI controls suggested for default use: lane information, speed limit, indication of the next maneuver, etc. SDK users can also create their own UI controls and use the navigator UI model to get event notifications while navigating a route.

DefaultNavigationControls(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Navigator UI controls suggested for default use: lane information, speed limit, indication of the next maneuver, etc. SDK users can also create their own UI controls and use the navigator UI model to get event notifications while navigating a route.

Parameters

context

attrs

defStyle

Methods
fun setCustomDashboardButton(button: CustomizableDashboardButton): Unit

Replaces the stardard button for adding road events in the navigator dashboard.

Must be called before adding DefaultNavigationControls to the UI controls hierarchy.

Parameters
fun onConfigurationChanged(newConfig: Configuration): Unit
Parameters

newConfig

Returns
fun attachToManager(manager: NavigationManager): Unit
Parameters

manager

Returns
fun attachToModel(model: Model): Unit
Parameters

model

Returns
fun onAttachedToWindow(): Unit
Returns
Properties

var onFinishClicked

var isFreeRoamDefault

Default state of the navigator control. It is needed to set the correct initial state of controls. This property can be set only until the control is displayed.

DefaultRasterUrlTemplate

DefaultRasterUrlTemplate(urlTemplate: String)
Parameters

urlTemplate

Properties

val urlTemplate

DeviceDensity

Multiplier calculated as the ratio of DPI to the base DPI of the device.

For Android, it corresponds to resources.displayMetrics.density. For iOS, it corresponds to nativeScale.

Must be positive.

DeviceDensity(value: Float = 0.0f)

Multiplier calculated as the ratio of DPI to the base DPI of the device.

For Android, it corresponds to resources.displayMetrics.density. For iOS, it corresponds to nativeScale.

Must be positive.

Parameters

value

Properties

val value

DevicePpi

Device display resolution, in pixels per inch.

Must be positive.

DevicePpi(value: Float = 0.0f)

Device display resolution, in pixels per inch.

Must be positive.

Parameters

value

Properties

val value

DGis

Entry point to the 2GIS SDK. At the start of work, you must call initialize.

Methods
@JvmStatic
fun initialize(
appContext: Context,
httpOptions: HttpOptions = HttpOptions(),
logOptions: LogOptions = LogOptions(LogLevel.WARNING),
vendorConfig: VendorConfig = VendorConfig(),
keySource: KeySource = KeySource(KeyFromAsset("dgissdk.key")),
dataCollectConsent: PersonalDataCollectionConsent = PersonalDataCollectionConsent.GRANTED,
platformHttpClient: HttpClient? = null,
platformAudioDriver: AudioDriver? = null,
mapOptions: GlobalMapOptions = GlobalMapOptions()
): Context

You must call this method before working with the SDK.

Parameters

appContext

Android application context.

httpOptions

Network client settings.

logOptions

Logging parameters.

vendorConfig

Overrides the SDK configuration.

keySource

Key source.

dataCollectConsent

Consent to data collection and data processing.

platformHttpClient

Network client to be used instead of the standard one.

platformAudioDriver

Platform audio driver.

mapOptions

Settings applied to all maps.

Returns
Context

sdkContext required for SDK services to work.

@JvmStatic
fun context(): Context
Returns

DgisMapObject

2GIS map object.

Information about the object can be obtained via directory.

Properties

val id

Stable numeric object identifier.

DgisObjectId

DgisObjectId(objectId: Long = 0, entranceId: Long = 0)
Parameters

objectId

entranceId

Properties

val objectId

Stable numeric object identifier.

Null identifier does not match any object.

val entranceId

Stable numeric identifier of the entrance for the object_id

Null identifier means that the entrance is not set.

DgisSource

Main interface of 2GIS data sources.

Methods
fun setHighlighted(directoryObjectIds: List<DgisObjectId>, highlighted: Boolean): Unit

Sets or removes the highlight of objects.

Adds a "selected" attribute to an object, which can be used in styles.

Parameters

directoryObjectIds

Identifiers of modifiable objects.

highlighted

Sets or removes the highlight.

Returns
@JvmStatic
fun createDgisSource(context: Context, workingMode: DgisSourceWorkingMode = DgisSourceWorkingMode.ONLINE): Source

Creats a source that retrieves data from 2GIS servers or uses pre-loaded data in operation.

Parameters

context

workingMode

Returns
Properties

val highlightedObjectsChannel

Gets a list of identifiers of selected objects.

val highlightedObjects

Gets a list of identifiers of selected objects.

DirectMapControlBeginEvent

Event of starting the direct map control. Tells the map to handle direct map control events. Direct control events only work from DirectMapControlBeginEvent to DirectMapControlEndEvent. After the direct control event sequence has ended, kinematics may start. Kinematics uses the time the event occurred, so using the time received from the system is better than filling in the value during processing. Kinematics works only for moving the map, not for rotation and scaling.

DirectMapControlBeginEvent()

DirectMapControlEndEvent

Event of ending the direct map control. Ends the direct map control started after getting the DirectMapControlBeginEvent. Direct map control events are described in DirectMapControlBeginEvent.

DirectMapControlEndEvent(timestamp: Duration)
Parameters

timestamp

DirectMapRotationEvent

Event of the direct map rotation. Direct map control events are described in DirectMapControlBeginEvent.

DirectMapRotationEvent(
bearingDelta: Bearing,
timestamp: Duration,
rotationCenter: ScreenPoint? = null
)
Parameters

bearingDelta

Changes the angle of the map rotation, in degrees. Positive values correspond to the direction of counter-clockwise rotation.

timestamp

Time of the system event generation.

rotationCenter

Point on the screen around which the map rotates. If no point is specified, the rotation is done relatively to the map position point.

Properties

val bearingDelta

Change of the map rotation angle.

val rotationCenter

Point on the screen around which the map rotates.

DirectMapScalingEvent

Event of direct map scaling. Direct map control events are described in DirectMapControlBeginEvent.

DirectMapScalingEvent(
zoomDelta: Float,
timestamp: Duration,
scalingCenter: ScreenPoint? = null
)
Parameters

zoomDelta

Amount by which the current zoom value changes.

timestamp

Time of the system event generation.

scalingCenter

Point on the screen around which the map is scaled. If no point is given, scaling is done relatively to the map position point.

Properties

val zoomDelta

Amount by which the current zoom value changes.

val scalingCenter

Point on the screen around which the map is scaled.

DirectMapShiftEvent

Direct map shift event. Direct map control events are described in DirectMapControlBeginEvent.

DirectMapShiftEvent(
screenShift: ScreenShift,
shiftedPoint: ScreenPoint,
timestamp: Duration
)
Parameters

screenShift

Change of the screen position of the map relative to the previous one, in pixels.

shiftedPoint

Center point from which the map is shifted.

timestamp

Time of the system event generation.

Properties

val screenShift

Change of the screen position of the map compared to the previous position, in pixels.

val shiftedPoint

Center point from which the map is shifted.

DirectMapTiltEvent

Direct camera tilt event. Direct map control events are described in DirectMapControlBeginEvent.

DirectMapTiltEvent(delta: Float, timestamp: Duration)
Parameters

delta

Tilt change in degrees.

timestamp

Time of the system event generation.

Properties

val delta

Tilt change in degrees.

DirectoryFilter

Filters for the directory.

DirectoryFilter(workTime: WorkTimeFilter?, dynamic: List<DynamicFilter>)

Filters for the directory.

Parameters
Properties

val workTime

Filter by opening hours.

val dynamic

Dynamic filters.

DirectoryObject

Directory object.

Methods
fun formattedAddress(type: FormattingType): FormattedAddress?

String representation of the address formatted according to the specified length requirement.

Parameters
Properties

val types

Object type. There can be several ones, for example, Sun City shopping center is a branch of the organization and a building at the same time. The first type in this list is the main one.

val title

Object title.

val titleAddition

Additional information for the title. Example: "(apt. 1-12)"

val subtitle

Object subtitle.

Can be an empty string if the value is missing.

val description

Object description.

val id

Stable numeric object identifier.

val markerPosition

Feature point where the marker should be placed.

val address

Object address as a set of components.

val attributes

Additional object attributes.

val contextAttributes

Contextual additional object attributes.

val timeZoneOffset

Shift of the object's local time relative to UTC in seconds at the current moment.

val openingHours

Object opening hours.

val contactInfos

Object contacts.

val reviews

Reviews.

val parkingInfo

Additional information about parking.

val workStatus

Work status.

val levelId

ID of the floor where the object is located.

val buildingLevels

Information about the floor plans of the building.

val entrances

Information about the entrances.

val tradeLicense

Information about the organization license.

val buildingInfo

Information about building.

DoubleRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route at which the element is located and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<DoubleRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): DoubleRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): DoubleRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

Last element.

val entries

DoubleRouteEntry

Route element - point and value in it.

DoubleRouteEntry(point: RoutePoint, value: Double)

Route element - point and value in it.

Parameters
Properties

val point

val value

DragBeginData

Data on the beginning of dragging: drag start point and an object being dragged.

DragBeginData(point: ScreenPoint, item: RenderedObject)

Data on the beginning of dragging: drag start point and an object being dragged.

Parameters
Properties

Duration

Class representing a period of time.

Implements: kotlin.Comparable
Methods
operator fun unaryMinus(): Duration
Returns
operator fun plus(other: Duration): Duration
Parameters

other

Returns
operator fun minus(other: Duration): Duration
Parameters

other

Returns
operator fun times(scale: Int): Duration
Parameters

scale

Returns
operator fun times(scale: Double): Duration
Parameters

scale

Returns
operator fun div(scale: Int): Duration
Parameters

scale

Returns
operator fun div(scale: Double): Duration
Parameters

scale

Returns
fun compareTo(other: Duration): Int
Parameters

other

Returns
fun toString(): String
Returns
@JvmStatic
fun ofMilliseconds(milliseconds: Long): Duration
Parameters

milliseconds

Returns
@JvmStatic
fun ofSeconds(seconds: Long): Duration
Parameters

seconds

Returns
@JvmStatic
fun ofMinutes(minutes: Long): Duration
Parameters

minutes

Returns
@JvmStatic
fun ofHours(hours: Long): Duration
Parameters

hours

Returns
@JvmStatic
fun ofDays(days: Long): Duration
Parameters

days

Returns
Properties

val inMilliseconds

val inSeconds

val inMinutes

val inHours

val inDays

val ZERO

DynamicFilter

Dynamic filters for search results.

DynamicFilter(flagFilter: FlagFilter)
Parameters

flagFilter

DynamicFilter(rangeFilter: RangeFilter)
Parameters

rangeFilter

DynamicFilter(sortingFilter: SortingFilter)
Parameters

sortingFilter

Methods
fun match(
flagFilter: Function1,
rangeFilter: Function1,
sortingFilter: Function1
): T
Parameters

flagFilter

rangeFilter

sortingFilter

Returns
T
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isFlagFilter

val asFlagFilter

val isRangeFilter

val asRangeFilter

val isSortingFilter

val asSortingFilter

val value

DynamicRouteInfo

DynamicRouteInfo(roadEvents: RoadEventRouteAttribute, traffic: Traffic)
Parameters
Properties

val roadEvents

val traffic

DynamicRouteInfoSettings

Settings for receiving dynamic route data.

Properties

var updatePeriod

Frequency at which dynamic route data should be updated.

Elevation

Non-negative elevation of the point above the surface in meters.

Elevation(value: Float = 0.0f)

Non-negative elevation of the point above the surface in meters.

Parameters

value

Properties

val value

EmptyFollowController

Base class for custom controllers. Can be used as the basis for implementing a controller on a platform.

EmptyFollowController()

Base class for custom controllers. Can be used as the basis for implementing a controller on a platform.

Methods
fun availableValues(): EnumSet<FollowValue>

St of value types that this controller can manage.

fun requestValues(values: EnumSet<FollowValue>): Unit

Tells the controller which values it provides are in use. This frees up resources associated with calculating unused values. The method can be called multiple times with different values, in which case the last one is considered relevant.

Parameters
fun setNewValuesNotifier(notifier: NewValuesNotifier?): Unit

Installs a notifier that notifies about new values. The notifier must be stored in the implemented controller

Parameters

notifier

Returns
fun coordinates(): GeoPoint?

Geographical coordinates.

Returns
fun bearing(): Bearing?

Bearing. Method is called only after calling request_values with appropriate parameters.

Returns
fun tilt(): Tilt?

Map tilt.

Returns
fun styleZoom(): StyleZoom?

Style zoom level of the map.

Returns

EntranceGeometry

Geometry for displaying the entrance on the map.

EntranceGeometry(entrancePoints: List<GeoPoint>, entrancePolylines: List<List<GeoPoint>>)

Geometry for displaying the entrance on the map.

Parameters

entrancePoints

entrancePolylines

Properties

val entrancePoints

Entrance location.

val entrancePolylines

Geometry of arrows pointing to the entrance.

EntranceInfo

Information about the entrance to the building.

EntranceInfo(
id: DgisObjectId,
buildingNumber: String?,
porchName: String?,
porchNumber: String?,
apartmentRanges: List<ApartmentRange>,
geometry: EntranceGeometry?
)

Information about the entrance to the building.

Parameters

id

buildingNumber

porchName

porchNumber

apartmentRanges

geometry

Properties

val id

Identifier of the entrance object.

val buildingNumber

Number of the house to which the entrance belongs.

val porchName

Non-empty entrance name. Filled only for porches (entrances in residential buildings). Can take the values of the entrance name (eg "Entrance 1") or the building number if the entrance has its own address.

val porchNumber

Non-empty entrance number. Filled only for porches (entrances in residential buildings). Can take values of the entrance number (eg "1") or the building number if the entrance has its own address.

val apartmentRanges

Numbers of apartments related to the entrance.

val geometry

Geometry for displaying the entrance on the map.

Event

Base class for all handled events.

EventsProcessingSettings

EventsProcessingSettings(rotationCenter: RotationCenter, scalingCenter: ScalingCenter)
Parameters

rotationCenter

scalingCenter

Properties

val rotationCenter

Point around which the map is rotated.

val scalingCenter

Point relative to which the map is scaled.

ExceedSpeedLimitSettings

Settings for detection of exceeding the maximum allowed speed limit.

Properties

var exceedSpeedNotificationEnabled

Enable/disable detection of exceeding the maximum allowed speed limit.

var allowableSpeedExcess

Allowed overspeed in m/s, default is 0.

ExcludedArea

Excluded area to be avoided when building a route.

ExcludedArea(
type: ExcludedAreaType = ExcludedAreaType.POINT,
severity: ExcludedAreaSeverity = ExcludedAreaSeverity.SOFT,
extent: RouteDistance,
points: List<GeoPoint>
)

Excluded area to be avoided when building a route.

Parameters
Properties

val type

Type of the excluded area.

val severity

Priority of excluding the area.

val extent

Size of the excluded area (not more than 25 km).

val points

Coordinates of the points of the excluded area (not more than 500).

ExtraInstructionInfo

ExtraInstructionInfo(bicycleStart: BicycleInstructionStart)
Parameters
ExtraInstructionInfo(bicycleFinish: BicycleInstructionFinish)
Parameters
ExtraInstructionInfo(bicycleCrossroad: BicycleInstructionCrossroad)
Parameters
ExtraInstructionInfo(carStart: CarInstructionStart)
Parameters
ExtraInstructionInfo(carFinish: CarInstructionFinish)
Parameters
ExtraInstructionInfo(carCrossroad: CarInstructionCrossroad)
Parameters
ExtraInstructionInfo(carRoundabout: CarInstructionRoundabout)
Parameters
ExtraInstructionInfo(carUturn: CarInstructionUTurn)
Parameters
ExtraInstructionInfo(pedestrianStart: PedestrianInstructionStart)
Parameters
ExtraInstructionInfo(pedestrianFinish: PedestrianInstructionFinish)
Parameters
ExtraInstructionInfo(pedestrianCrossroad: PedestrianInstructionCrossroad)
Parameters
ExtraInstructionInfo(pedestrianIndoorFloorChange: PedestrianInstructionIndoorFloorChange)
Parameters

pedestrianIndoorFloorChange

ExtraInstructionInfo(pedestrianIndoorEnter: PedestrianInstructionIndoorEnter)
Parameters
ExtraInstructionInfo(pedestrianIndoorExit: PedestrianInstructionIndoorExit)
Parameters
ExtraInstructionInfo(scooterStart: ScooterInstructionStart)
Parameters
ExtraInstructionInfo(scooterFinish: ScooterInstructionFinish)
Parameters
ExtraInstructionInfo(scooterCrossroad: ScooterInstructionCrossroad)
Parameters
Methods
fun match(
bicycleStart: Function1,
bicycleFinish: Function1,
bicycleCrossroad: Function1,
carStart: Function1,
carFinish: Function1,
carCrossroad: Function1,
carRoundabout: Function1,
carUturn: Function1,
pedestrianStart: Function1,
pedestrianFinish: Function1,
pedestrianCrossroad: Function1,
pedestrianIndoorFloorChange: Function1,
pedestrianIndoorEnter: Function1,
pedestrianIndoorExit: Function1,
scooterStart: Function1,
scooterFinish: Function1,
scooterCrossroad: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isBicycleStart

val asBicycleStart

val isBicycleFinish

val asBicycleFinish

val isBicycleCrossroad

val asBicycleCrossroad

val isCarStart

val asCarStart

val isCarFinish

val asCarFinish

val isCarCrossroad

val asCarCrossroad

val isCarRoundabout

val asCarRoundabout

val isCarUturn

val asCarUturn

val isPedestrianStart

val asPedestrianStart

val isPedestrianFinish

val asPedestrianFinish

val isPedestrianCrossroad

val asPedestrianCrossroad

val isPedestrianIndoorFloorChange

val asPedestrianIndoorFloorChange

val isPedestrianIndoorEnter

val asPedestrianIndoorEnter

val isPedestrianIndoorExit

val asPedestrianIndoorExit

val isScooterStart

val asScooterStart

val isScooterFinish

val asScooterFinish

val isScooterCrossroad

val asScooterCrossroad

val value

File

File identifier.

Can be not only a file in the file system, but also an arbitrary data source.

File(path: String)

File in the file system.

Parameters

path

Path to the file.

Methods
@JvmStatic
fun fromString(contents: String): File

File with contents from the given string.

Parameters

contents

File contents.

Returns
@JvmStatic
fun fromAsset(context: Context, path: String): File

File from Android assets.

Parameters

context

path

Path relative to the asset's root directory.

Returns

FinishRouteControl

FinishRouteControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns
fun expand(): Unit
Returns
Properties

val heightChannel

var onFinishClicked

var isParkingButtonVisible

FlagFilter

Filter of the flag type.

FlagFilter(
tagName: String,
displayName: String,
flagValue: Boolean?
)

Filter of the flag type.

Parameters

tagName

displayName

flagValue

Properties

val tagName

Filter tag.

val displayName

Filter name to display.

Depends on the output language. Not all names can be translated.

val flagValue

Flag value

FloatRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): FloatRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<FloatRouteLongEntry>

Elements partially or completely covered by the begin,end segment.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

val entries

FloatRouteLongEntry

Extended route element - segment and value on it.

FloatRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: Float
)

Extended route element - segment and value on it.

Parameters
Properties

val point

val length

val value

FloorInfo

Information about the floor plan for the marker - an element of search results.

FloorInfo(levelId: LevelId, buildingId: BuildingId)

Information about the floor plan for the marker - an element of search results.

Parameters

levelId

buildingId

Properties

val levelId

Floor plan identifier.

val buildingId

Building ID.

FollowControl

Control to enable location marker tracking.

FollowControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Control to enable location marker tracking.

Parameters

context

attrs

defStyle

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns

FollowController

Class that allows you to manage the camera position and the geolocation marker. All of its methods' implementations must be thread-safe. Most methods have trivial default implementations available (thus the FollowController responsible for scaling is not required to override coordinates() and similar methods).

FollowPosition

Settings for following the direction, tilt, and zoom level.

FollowPosition(bearing: FollowBearing = FollowBearing.OFF, styleZoom: FollowStyleZoom = FollowStyleZoom.OFF)

Settings for following the direction, tilt, and zoom level.

Parameters
Properties

val bearing

val styleZoom

FormattedAddress

Human-readable representation of the address.

FormattedAddress(
drilldownAddress: String?,
streetAddress: String?,
addressComment: String?,
postCode: String?
)

Human-readable representation of the address.

Parameters

drilldownAddress

streetAddress

addressComment

postCode

Properties

val drilldownAddress

Address from the drilldown. Example: "Novosibirsk, Kirovsky district".

val streetAddress

Address within the settlement. Example: "Nikolaeva, 11".

val addressComment

Comment on the address. Example: "301 office; 9th floor".

val postCode

Postal code of the object with the building code, if any. Example: "630088", "630007/XBVJF8".

Fps

Frames per second, frame rate.

Fps(value: Int = 0)

Frames per second, frame rate.

Parameters

value

Properties

val value

FreeRoamSettings

Properties

var onRoutePrefetchLength

Road graph tiles are loaded into the HTTP cache during navigation if they correspond to a section of the route from the current position to the specified distance. The default value is 5 km.

Tiles are not loaded into the HTTP cache if the parameter matches zero or negative distance.

var onRoutePrefetchRadiusMeters

When caching road graph tiles during navigation, tiles are loaded into the HTTP cache if they are closer than the specified distance in meters from the route line. The default value is 1 km.

Tiles are not loaded into the HTTP cache, if the parameter corresponds to zero or negative distance.

var prefetchRadiusMeters

Road graph tiles are loaded into the HTTP cache if they are closer than the specified distance in meters from the current position. The default value is 2 km.

Tiles are not loaded into the HTTP cache if the parameter corresponds to a zero or negative distance.< /p>

Geometry

Geometry object.

Methods
fun intersects(geometry: Geometry): Boolean

Determines whether a given geometry intersects with another geometry object.

Parameters

geometry

Geometry object to check for intersection. When calculating the intersection with IPointGeometry, the elevation is ignored.

Returns
Properties

val kind

val bounds

Minimum size of rectangle containing geometry.

val minPoint

Minimum point of the bounding box.

val maxPoint

Maximum point of the bounding box.

GeometryMapObject

Geometric object of the map.

Methods are thread-safe.

The object is displayed on the map under the following conditions:

  • the object is visible;
  • the object is added to the data source;
  • the data source containing the object is added to the map;
  • the display parameters in the map styles are applicable to this object. For more information about displaying objects on the map, see ISource.

Properties

val geometryChannel

var geometry

Object geometry.

val objectAttributes

Gets the properties of the map object for reading and modifying.

val isVisibleChannel

Current object visibility flag.

var isVisible

Current object visibility flag.

val isDraggableChannel

Current object relocation flag.

var isDraggable

Current object relocation flag.

val bounds

Minimum size of rectangle containing geometry.

GeometryMapObjectBuilder

Class for setting properties and then creating geometric objects.

GeometryMapObjectBuilder()
Methods
fun setObjectAttribute(name: String, value: AttributeValue): GeometryMapObjectBuilder
Parameters
fun setObjectAttributes(values: Map): GeometryMapObjectBuilder

Sets the properties of the map object.

Parameters

values

Set of "name":"value" pairs for the added properties of a map object.

The method does not replace the entire set of object properties, i.e. if a property is absent in values, but has already been added to the object previously, it will not be changed.

Returns
fun setGeometry(geometry: Geometry): GeometryMapObjectBuilder

Sets the geometry of the map object.

Parameters
fun setVisible(visible: Boolean): GeometryMapObjectBuilder

Sets the visibility of the map object.

Parameters
fun setDraggable(draggable: Boolean): GeometryMapObjectBuilder

Sets the possibility of dragging a map object.

Parameters
fun setUserData(userData: Any?): GeometryMapObjectBuilder

Installing user data.

User data is not used in any way in the SDK and is only returned it to the user.

Parameters
fun createObject(): GeometryMapObject

Constructs a map object.

The object must have geometry

After calling this function, GeometryMapObjectBuilder becomes unsuitable for setting the parameters of a map object or for creating an object.

fun setObjectAttribute(name: String, value: Boolean): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: Long): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: Int): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: Double): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: Float): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: String): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: ByteArray): GeometryMapObjectBuilder
Parameters
fun setObjectAttribute(name: String, value: Color): GeometryMapObjectBuilder
Parameters

GeometryMapObjectSource

Source of geometric map objects.

Methods
fun clusteringObjects(position: CameraPosition): List<MapObject>

Gets a list of objects participating in clustering given a camera position. The list contains both clusters and geometric objects.

Parameters
fun addObject(item: GeometryMapObject): Unit

Adds an object to the source.

Adding objects by group is more efficient than adding one by one, especially when the source has already been added to one or more maps.

Adding is asynchronous, thread-safe, the method can be used from any thread.

For a source with clustering, addition is not yet implemented, an exception will be thrown.

Parameters
fun addObjects(objects: List<GeometryMapObject>): Unit

Adds multiple objects to the source.

Adding objects by group is more efficient than adding one by one, especially when the source has already been added to one or more maps.

Adding is asynchronous, thread-safe, the method can be use from any thread.

For a source with clustering, addition is not yet implemented, an exception will be thrown.

Parameters
fun removeObject(item: GeometryMapObject): Unit

Deletes an object from the source.

The deletion is asynchronous, thread-safe, the method can be used from any thread.

Parameters
fun removeObjects(objects: List<GeometryMapObject>): Unit

Removes objects from the source.

Parameters
fun removeAndAddObjects(objectsToRemove: List<GeometryMapObject>, objectsToAdd: List<GeometryMapObject>): Unit

Removes and adds objects to the source.

Parameters

objectsToRemove

objectsToAdd

Returns
fun clear(): Unit

Removes all objects from the source.

Returns
Properties

val objects

Gets all objects added to the source.

val sourceAttributes

Gets default property values for all objects added to the source (see IAttributes).

GeometryMapObjectSourceBuilder

GeometryMapObjectSourceBuilder(context: Context)
Parameters

context

Methods
fun setSourceAttribute(name: String, value: AttributeValue): GeometryMapObjectSourceBuilder

Sets the property of map objects common to the entire source (see ISource).

Parameters

name

property name

value

property value

Returns
fun setSourceAttributes(values: Map): GeometryMapObjectSourceBuilder

Sets properties of map objects common to the entire source.

Parameters

values

Set of the "name":"value" pairs for properties.

Returns
fun addObject(item: GeometryMapObject): GeometryMapObjectSourceBuilder

Adds a map geometry object to the source.

Parameters
fun addObjects(objects: List<GeometryMapObject>): GeometryMapObjectSourceBuilder

Adds several geometric map objects to the source.

Parameters
fun createSource(): GeometryMapObjectSource

Creates a source of geometric objects.

After calling this function, you cannot use the GeometryMapObjectSourceBuilder to create a data source or set data source parameters.

GeoPoint

Point in a spherical coordinate system that, together with a geodetic coordinate system (e.g. WGS84), indicates a point on the Earth's surface. This structure is not tied to a specific geodetic coordinate system. However, this module contains free functions that operate on this structure in a specific coordinate system (to determine the coordinate system used, see the documentation for the functions).

GeoPoint(latitude: Latitude, longitude: Longitude)

Point in a spherical coordinate system that, together with a geodetic coordinate system (e.g. WGS84), indicates a point on the Earth's surface. This structure is not tied to a specific geodetic coordinate system. However, this module contains free functions that operate on this structure in a specific coordinate system (to determine the coordinate system used, see the documentation for the functions).

Parameters

latitude

longitude

Methods
fun move(bearing: Bearing, meter: Meter): GeoPoint

Calculates the point obtained by moving the original point in the specified direction by the specified distance.

Parameters

bearing

meter

Returns
fun withElevation(elevation: Elevation = Elevation(0.0f)): GeoPointWithElevation
Parameters
fun bearing(point: GeoPoint): Bearing

Calculates the direction (bearing, i.e. the angle between true north and the direction of travel, counted clockwise) between two points.

Parameters

point

Returns
fun distance(point: GeoPoint): Meter

Calculates the minimum (great circle) distance between two points.

Parameters

point

Returns
Properties

val isValid

val latitude

val longitude

GeoPointRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<GeoPointRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): GeoPointRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): GeoPointRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun calculateGeoPoint(routePoint: RoutePoint): SegmentGeoPoint?

Calculates a GeoPoint from a known RoutePoint.

Parameters

routePoint

Returns
SegmentGeoPoint?

Calculated geographical coordinates and the direction of the segment pointed to by the route_point parameter. If the route is empty or the route_point goes beyond the route, null is returned.

The complexity of the operation is O(log2(N)), where N = route_geometry .size()

fun calculateClosestPoint(point: GeoPoint): RoutePoint?

Calculates the nearest point on the route to the given geographic coordinates of a point.

Parameters

point

Point projected on the route.

Returns
RoutePoint?

Nearest point on the route. If the route is empty of both range.first and range.second points are located before of after the route, null is returned.

Operation complexity is O(N), where N = route_geometry.size()

Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

Last element.

val entries

val length

Route length.

GeoPointRouteEntry

Route element - point and value in it.

GeoPointRouteEntry(point: RoutePoint, value: GeoPoint)

Route element - point and value in it.

Parameters
Properties

val point

val value

GeoPointWithElevation

Pint in a geographic coordinates system (latitude, longitude, elevation).

Elevation is calculated in meters above the surface, not above the sea level.

GeoPointWithElevation(
latitude: Latitude,
longitude: Longitude,
elevation: Elevation = Elevation(value = 0.0f)
)

Pint in a geographic coordinates system (latitude, longitude, elevation).

Elevation is calculated in meters above the surface, not above the sea level.

Parameters

latitude

longitude

elevation

Methods
fun bearing(point: GeoPoint): Bearing

Calculates the direction (bearing, i.e. the angle between the north direction and the direction of travel, counted clockwise ) for projecting a point onto the map and a given point.

Parameters

point

Returns
fun distance(point: GeoPoint): Meter

Calculates the minimum (by great circle) distance between the projection of a point on the map and a given point.

Parameters

point

Returns
fun move(bearing: Bearing, meter: Meter): GeoPointWithElevation

Calculates the point obtained by moving the projection of the origin point in the specified direction by the specified distance.

Parameters
Properties

val latitude

val longitude

val elevation

val point

GeoRect

Rectangular area in a spherical coordinate system (for example, WGS84). This structure is not tied to a specific geodesic coordinate system.

GeoRect(southWestPoint: GeoPoint, northEastPoint: GeoPoint)

Rectangular area in a spherical coordinate system (for example, WGS84). This structure is not tied to a specific geodesic coordinate system.

Parameters

southWestPoint

northEastPoint

Methods
fun contains(rect2: GeoRect): Boolean
Parameters

rect2

Returns
fun contains(point: GeoPoint): Boolean

Whether the rectangle contains a point. Points located on the boundary are also considered to belong to the rectangle.

Parameters

point

Returns
fun expand(rect2: GeoRect): GeoRect
Parameters

rect2

Returns
fun expand(point: GeoPoint): GeoRect

Expands the rectangle. Returns the minimum rectangle containing the original rectangle and point.

Parameters

point

Returns
fun intersects(rect2: GeoRect): Boolean

Whether the rectangles intersect, i.e. have common points. Rectangles with common points only on the border are also considered to intersect.

Parameters

rect2

Returns
Properties

val isValid

Checks the rectangle for validity.

val isDegenerate

Checks the rectangle for degeneracy. If the points in the rectangle are equal, then it degenerates to a point. A degenerate rectangle is a valid rectangle. An invalid rectangle is not degenerate.

val southWestPoint

Southwest point, lower-left border of the rectangle.

val northEastPoint

Northeast point, upper-right border of the rectangle.

GestureManager

Class for managing gesture processing.

Methods
fun enableGesture(gesture: Gesture): Unit
Parameters

gesture

Returns
fun disableGesture(gesture: Gesture): Unit
Parameters

gesture

Returns
fun gestureEnabled(gesture: Gesture): Boolean
Parameters

gesture

Returns
fun setSettingsAboutMapPositionPoint(settings: EventsProcessingSettings): Unit

Sets the point relative to which the scaling and rotation take place.

Parameters

settings

Event handling settings.

When the function is called, gesture recognition tools are recreated.

Returns
fun setTargetGeoPoint(geoPoint: GeoPoint?): Unit

Sets the geolocation, relatively to which scaling and rotation is done.

Parameters

geoPoint

Returns
fun setMutuallyExclusiveGestures(rules: List<EnumSet<Gesture>>): Unit

Sets a list of rules for excluding simultaneous triggering of multiple gestures.

The passed list is extended with default rules, which do not allow the tilt management gesture to be triggered simultaneously with other gestures. Each rule contains a list of gestures that cannot be triggered simultaneously. For example, if the Scaling and Rotation gestures are specified in the rule, these gestures will not work simultaneously. If multiple gestures from the rule are called simultaneously, the gesture with higher priority will be triggered. The order of gesture priorities (in descending order): (Shift ->) Tilt -> Scaling -> Rotation -> MultiTouchShift

Parameters
Properties

var enabledGestures

var scalingSettings

var rotationSettings

var multitouchShiftSettings

var tiltSettings

GlobalMapOptions

Global map settings. They are specified during the SDK initialization and used for all maps.

GlobalMapOptions(graphicsApi: GraphicsApi = GraphicsApi.OPEN_GL)

Global map settings. They are specified during the SDK initialization and used for all maps.

Parameters

graphicsApi

Properties

val graphicsApi

Graphics API.

GradientPolylineOptions

Gradient polyline options.

GradientPolylineOptions(
borderWidth: LogicalPixel = LogicalPixel(value = 0.0f),
secondBorderWidth: LogicalPixel = LogicalPixel(value = 0.0f),
gradientLength: LogicalPixel = LogicalPixel(value = 1.0f),
borderColor: Color = Color(),
secondBorderColor: Color = Color(),
colors: List<Color>,
colorIndices: ByteArray
)

Gradient polyline options.

Parameters

borderWidth

secondBorderWidth

gradientLength

borderColor

secondBorderColor

colors

colorIndices

Properties

val borderWidth

Line border width.

val secondBorderWidth

Width of the second line border.

val gradientLength

Gradient line length.

val borderColor

Border color.

val secondBorderColor

Second border color.

val colors

Gradient polyline color picker.

val colorIndices

Color indices of the gradient polyline. The number of indices must be 1 less than the number of polyline points.

GroupCheckableItem

Set of elements that works as a radio group.

Properties

val items

Gets a set of group elements.

HttpCacheManager

HTTP cache management interface.

Methods
fun clear(): Unit

Clears the contents of the HTTP cache.

Returns
Properties

val currentSize

Current HTTP cache size.

var maxSize

Maximum HTTP cache size.

HttpHeader

HttpHeader(name: String, value: String)
Parameters

name

value

Properties

val name

val value

HttpOptions

HTTP client options.

HttpOptions(
timeout: Duration = Duration.ofMilliseconds(15000),
useCache: Boolean = true,
cacheStoragePath: String? = null,
cacheMaxSize: Long? = null,
certificates: List?<Certificate> = null,
proxy: HttpProxyOptions? = null
)

HTTP client options.

Parameters

timeout

useCache

cacheStoragePath

cacheMaxSize

certificates

proxy

Properties

val timeout

Timeout for HTTP requests.

val useCache

Use the HTTP cache.

val cacheStoragePath

Path to the root-level directory for the primary HTTP cache file storage. File storage will be located in the http_cache subdirectory of this directory. If the path is not specified, the default directory is used.

val cacheMaxSize

Maximum size of the HTTP cache in bytes. If not specified, the default maximum HTTP cache size is 300 Mb.

val certificates

Certificates in the PEM format. If not set, the system certificates and the ones shipped with the SDK are used.

val proxy

Proxy settings.

HttpProxyOptions

System SSL certificate.

HttpProxyOptions(host: String, port: Int = 0)

System SSL certificate.

Parameters

host

port

Properties

val host

val port

HttpRequest

Structure for presenting an HTTP request.

HttpRequest(
url: String,
method: HttpMethod = HttpMethod.GET,
headers: List<HttpHeader> = listOf(),
body: ByteArray? = null
)

Structure for presenting an HTTP request.

Parameters
Properties

val url

String representation of a URL request.

val method

HTTP request method. Default is GET.

val headers

Request header. Empty by default.

val body

Request body. Missing by default.

HttpResponse

Structure for presenting a response for an HTTP request.
The reponse body is stored and handled separately.

HttpResponse(statusCode: HttpStatusCode, headers: List<HttpHeader>)

Structure for presenting a response for an HTTP request.
The reponse body is stored and handled separately.

Parameters
Properties

val statusCode

val headers

Response headers.

HttpResponseCallback

Object with callbacks for handling the sending and receiving of data.

Methods
fun onResponse(response: HttpResponse): Boolean

Method that handles receiving a response from the server.

Parameters

response

Server response.

Returns
Boolean

Returns false if the SDK has cancelled sending/handling a request.

fun onReceive(body: ByteArray, size: Int): Boolean

Method that handles receiving a response body. Handling can be done in parts.

Parameters

body

Body (or its part) of the server response.

size

Data size in bytes.

Returns
fun onFinished(): Unit
Returns

HttpStatusCode

HttpStatusCode(value: Int = 0)
Parameters

value

Properties

val value

Image

ImageData

Image data: size, format, and binary data.

ImageData(
size: ScreenSize,
format: ImageFormat,
data: ByteArray
)

Image data: size, format, and binary data.

Parameters
Methods
fun toBitmap(): Bitmap
Returns
Properties

val size

val format

val data

IncompleteTextHandler

Autocomplete is suggested for the text entered by the user.

Properties

val queryText

You need to substitute this text in the search bar and let the user continue typing the query.

IndoorBuilding

Building with floor plans.

Properties

val id

Building ID with floor plans.

val defaultLevelIndex

Index of the default floor.

val levels

Information about all floors.

val activeLevelIndexChannel

Serial infex of the active floor in levels.

var activeLevelIndex

Serial infex of the active floor in levels.

IndoorControl

Floor control.

It is a column with the names of floors with the active one highlighted. When you click a name, the floor plan switches. No more than 5 names are displayed at the same time, those that do not fit can be scrolled to.

IndoorControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Floor control.

It is a column with the names of floors with the active one highlighted. When you click a name, the floor plan switches. No more than 5 names are displayed at the same time, those that do not fit can be scrolled to.

Parameters

context

attrs

defStyle

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns
Properties

var markedLevels

Floors on which marks are displayed.

IndoorControlModel

Floor control model.

IndoorControlModel(map: Map)
Parameters

map

Methods
fun isLevelMarked(index: Long): Boolean

Whether or not to display a flag for the floor with the specified index.

Parameters

index

Returns
Properties

val activeLevelIndexChannel

Active floor index.

var activeLevelIndex

Active floor index.

var markedLevels

Floors on which marks are displayed.

val levelNamesChannel

Names of floors. Empty if the map does not display a building with floor plans or if the building has only one floor.

val levelNames

Names of floors. Empty if the map does not display a building with floor plans or if the building has only one floor.

IndoorDetector

Detector that determines if a user is infoors.

Properties

val indoorChannel

Channel that notifies when the user is indoors.

val indoor

Channel that notifies when the user is indoors.

IndoorManager

Class for getting the current building with floor plans.

Methods
fun setIndoorState(newState: IndoorManagerState): Unit

Switching the floor plan manager on/off.

Parameters

newState

Returns
Properties

val focusedBuildingChannel

Gets the current building with floor plans.

val focusedBuilding

Gets the current building with floor plans.

IndoorRouteLevelsGetter

Allows you to get the set of floors through which the routes displayed on the map pass.

IndoorRouteLevelsGetter(map: Map)
Parameters

map

Properties

InputEvent

User input event.

Properties

val timestamp

Gets the time of the input event registration.

InstructionRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<InstructionRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): InstructionRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): InstructionRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

InstructionRouteEntry

Route element - point and value in it.

InstructionRouteEntry(point: RoutePoint, value: RouteInstruction)

Route element - point and value in it.

Parameters
Properties

IntRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<IntRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): IntRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): IntRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

Last element.

val entries

All elements.

IntRouteEntry

Route element - point and value in it.

IntRouteEntry(point: RoutePoint, value: Int)

Route element - point and value in it.

Parameters

point

value

Properties

val point

val value

IsOpenNow

Open now.

IsOpenNow()

Open now.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

ItemMarkerInfo

Object identifier and its coordinates.

Properties

val objectId

val geoPoint

val floorInfo

KeyFromAsset

Key from an asset. For Android - assets directory. For iOS - Bundle.main directory.

KeyFromAsset(path: String)

Key from an asset. For Android - assets directory. For iOS - Bundle.main directory.

Parameters

path

Properties

val path

Path relative to the asset root directory.

KeyFromFile

Key from the file.

KeyFromFile(path: String)

Key from the file.

Parameters

path

Properties

val path

File path.

KeyFromString

Key from a string.

KeyFromString(contents: String)

Key from a string.

Parameters

contents

Properties

val contents

Contents.

KeySource

Key source.

KeySource(fromAsset: KeyFromAsset)
Parameters

fromAsset

KeySource(fromFile: KeyFromFile)
Parameters

fromFile

KeySource(fromString: KeyFromString)
Parameters

fromString

Methods
fun match(
fromAsset: Function1,
fromFile: Function1,
fromString: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isFromAsset

val asFromAsset

val isFromFile

val asFromFile

val isFromString

val asFromString

val value

LanesCalloutMapPosition

Position of the lane callout for the route.

LanesCalloutMapPosition(
mapId: MapId,
routePoint: RoutePoint,
geoPoint: GeoPoint
)

Position of the lane callout for the route.

Parameters

mapId

routePoint

geoPoint

Properties

val mapId

ID of the map for which the position is given.

val routePoint

Position of the lane callouts on the route.

val geoPoint

Position of the lane callout on the map.

LaneSignRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): LaneSignRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<LaneSignRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

LaneSignRouteLongEntry

Extended route element - segment and value on it.

LaneSignRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: RouteLaneSign
)

Extended route element - segment and value on it.

Parameters
Properties

Latitude

Geographical latitude.

Latitude(value: Double = 0.0)

Geographical latitude.

Parameters

value

Properties

val value

LevelId

Floor plan identifier.

LevelId(value: Long = 0)

Floor plan identifier.

Parameters

value

Properties

val value

LevelInfo

Information about the floor of the building.

LevelInfo(id: LevelId, name: String)

Information about the floor of the building.

Parameters
Properties

val id

Floor plan identifier.

val name

Name of the floor.

Locale

Locale.

Locale(language: String, region: String)

Locale.

Parameters

language

region

Methods
fun toLocalePosix(): String
Returns
@JvmStatic
fun makeLocale(localeStr: String): Locale?

Creates a locale from a string representation in the form of LanguageTag or POSIX.

Parameters

localeStr

Returns
Properties

val language

Language code described in the ISO 639-1 standard.

val region

Country code described in the ISO 639-1 standard.

LocaleManager

Manager of application regional settings.

Methods
fun overrideLocales(locales: List<Locale>): Unit

Setting the list of application locales.

Parameters

locales

Returns
Properties

val localesChannel

Application locales, if specified, otherwise - locales specified by the user in the OS.

val locales

Application locales, if specified, otherwise - locales specified by the user in the OS.

val systemLocalesChannel

Gets locales provided by the OS.

OS locales are ordered in the way specified by the user (in order of highest priority to a lower priority).

val systemLocales

Gets locales provided by the OS.

OS locales are ordered in the way specified by the user (in order of highest priority to a lower priority).

Location

Geoposition.

Location(
coordinates: LocationCoordinates,
altitude: LocationFuzzyDouble?,
course: LocationCourse?,
groundSpeed: LocationFuzzyDouble?,
source: String,
timestamp: Duration
)

Geoposition.

Parameters
Properties

val coordinates

coordinates::value - coordinates of the geoposition. coordinates::accuracy - horizontal accuracy of the geoposition coordinates (DRMS), m. https://en.wikipedia.org/wiki/Circular_error_probable Value range: >= 0.

val altitude

altitude::value - height above the WGS84 reference ellipsoid, m. altitude::accuracy - standard deviation of the measurement error of the height, m. null means that the platform does not provide this field. https://en.wikipedia.org/wiki/Standard_deviation Value range: (null, > 0).

val course

course::value - bearing (direction of movement along the Earth's surface. The angle is measured relative to geographic north). course::accuracy - standard deviation of the measurement error of the angle. null means that the platform does not provide this field. https://en.wikipedia.org/wiki/Standard_deviation Value range: (null, > 0).

val groundSpeed

ground_speed - speed of movement along the Earth's surface, m/s. Value range: >= 0. ground_speed::accuracy - mean square deviation of the measurement error of the speed, m/s. null means that the platform does not provide this field. https://en.wikipedia.org/wiki/Rayleigh_distribution Value range: (null, > 0).

val source

Name of the location source.

Timestamps between different location sources are not synchronized, so you cannot compare timestamps for locations that are obtained from different sources.

val timestamp

Time point at which the geolocation was determined. This point is not tied to any specific date and is used solely to calculate the time between two location measurements obtained from the same location source in the same session. This field must increase monotonically (even when the system is in sleep mode).

LocationCoordinates

LocationCoordinates(value: GeoPoint, accuracy: Double)
Parameters

value

accuracy

Properties

val value

val accuracy

LocationCourse

LocationCourse(value: Bearing, accuracy: Bearing?)
Parameters

value

accuracy

Properties

val value

val accuracy

LocationFuzzyDouble

LocationFuzzyDouble(value: Double, accuracy: Double?)
Parameters

value

accuracy

Properties

val value

val accuracy

LogicalPixel

Pixel which size does not depend on screen density.

1 logical pixel equals 1/(base ppi) of an inch. The base PPI is device-specific and is calculated from the DevicePpi/DeviceDensity ratio. DevicePpi and DeviceDensity are set with the OS via the map interface. For Android, LogicalPixel corresponds to dp, for iOS - to point.

LogicalPixel(value: Float = 0.0f)

Pixel which size does not depend on screen density.

1 logical pixel equals 1/(base ppi) of an inch. The base PPI is device-specific and is calculated from the DevicePpi/DeviceDensity ratio. DevicePpi and DeviceDensity are set with the OS via the map interface. For Android, LogicalPixel corresponds to dp, for iOS - to point.

Parameters

value

Properties

val value

LogMessage

Message to be logged.

LogMessage(
level: LogLevel,
text: String,
file: String,
line: Int
)

Message to be logged.

Parameters

level

text

file

line

Properties

val level

Log level.

val text

Message contents.

val file

Filename that contains the message.

val line

Line number that contains the message.

LogOptions

Log settings.

LogOptions(
systemLevel: LogLevel = LogLevel.WARNING,
customLevel: LogLevel = LogLevel.WARNING,
customSink: LogSink? = null
)

Log settings.

Parameters

systemLevel

customLevel

customSink

Properties

val systemLevel

Level of logging to the system log.

val customLevel

Level of logging to the user log sink.

val customSink

User log sink.

Longitude

Geographical longitude.

Longitude(value: Double = 0.0)

Geographical longitude.

Parameters

value

Properties

val value

MagneticChangeListener

Class that keeps track of compass direction changes and compass availability.

Methods
fun onValueChanged(
yaw: Float,
accuracy: Float?,
timestamp: Long
): Unit
Parameters

yaw

accuracy

timestamp

Returns
fun onAvailabilityChanged(availability: Boolean): Unit
Parameters

availability

Returns

ManeuverControl

ManeuverControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: Model): Unit
Parameters

model

Returns

Map

Map.

Methods
fun resetFontIconSizeMultiplier(): Unit

Resets the icon size multiplier.

Returns
fun addSource(source: Source): Unit

Adds a data source to the map.

Occurs asynchronously. The method can be called from any thread, it is thread-safe.

Parameters

source

Returns
fun removeSource(source: Source): Unit

Removes a data source from the map.

Occurs asynchronously. The method can be called from any thread, it is thread safe.

Parameters

source

Returns
fun getRenderedObjects(centerPoint: ScreenPoint, radius: ScreenDistance = ScreenDistance(value = 1.0f)): Future<List<RenderedObjectInfo>>

Gets displayable map objects projected onto a circle on the screen.

Parameters

centerPoint

Circle center.

radius

Radius of the circle.

The list of objects is formed in the order of rendering from the latest to the earliest.

Returns
fun setAttribute(name: String, value: AttributeValue): Unit
Parameters

name

value

Returns
fun removeAttribute(name: String): Unit
Parameters

name

Returns
Properties

val id

Map instance ID, unique within the process.

val camera

Gets a camera.

val indoorManager

Gets a floor plan manager.

val dataLoadingStateChannel

Notification about the state of data loading to the map.

When tracking the camera position, the map state is always MapDataLoadingState::Loading.

val dataLoadingState

Notification about the state of data loading to the map.

When tracking the camera position, the map state is always MapDataLoadingState::Loading.

val styleChannel

Gets current map styles.

var style

Gets current map styles.

val fontIconSizeMultiplierChannel

Icon and font size multiplier received from the application.

The size of icons and fonts is specified in logical pixels (see LogicalPixel) and multiplied by the font and icon size multiplier.

var fontIconSizeMultiplier

Icon and font size multiplier received from the application.

The size of icons and fonts is specified in logical pixels (see LogicalPixel) and multiplied by the font and icon size multiplier.

val sources

Gets map data sources.

Occurs asynchronously. The method can be called from any thread, it is thread safe.

val mapVisibilityStateChannel

var mapVisibilityState

val attributes

Gets attributes.

The following properties must be specified: "theme"="day|night" "navigatorOn"="true|false"

val interactiveChannel

Map interactivity. Interactivity means that the user has the ability to interact with the map. If interactivity is disabled, the map stops responding to input events obtained from the user. Controls for working with the map (zooming in and moving to the current position) also stop working. It remains possible to work with the map via set_position/move. Unfinished gestures are reset upon transition to the non-interactive state. By default, the map is interactive (interactive == true).

The function can be called from any thread.

var interactive

Map interactivity. Interactivity means that the user has the ability to interact with the map. If interactivity is disabled, the map stops responding to input events obtained from the user. Controls for working with the map (zooming in and moving to the current position) also stop working. It remains possible to work with the map via set_position/move. Unfinished gestures are reset upon transition to the non-interactive state. By default, the map is interactive (interactive == true).

The function can be called from any thread.

val graphicsPresetHintChannel

Gets the recommended graphic mode for the given device.

val graphicsPresetHint

Gets the recommended graphic mode for the given device.

val graphicsPresetChannel

Gets the graphic mode. In case of null, the recommended mode is used. If the recommended mode cannot be defined, the Normal one is used.

var graphicsPreset

Gets the graphic mode. In case of null, the recommended mode is used. If the recommended mode cannot be defined, the Normal one is used.

MapControl

Base class for map UI controls.

Extends: android.widget.FrameLayout
MapControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Base class for map UI controls.

Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns

MapControls

Controls to wotk with the map during navigation.

MapControls(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Controls to wotk with the map during navigation.

Parameters

context

attrs

defStyle

Methods
fun onTouchEvent(event: MotionEvent): Boolean
Parameters

event

Returns
fun onLayout(
changed: Boolean,
left: Int,
top: Int,
right: Int,
bottom: Int
): Unit
Parameters

changed

left

top

right

bottom

Returns
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns
Properties

var isAddRoadEventButtonVisible

val visibilityChannel

MapDirection

Angle of the object rotation relative to the north direction, in degrees, counted clockwise.

MapDirection(value: Double = 0.0)

Angle of the object rotation relative to the north direction, in degrees, counted clockwise.

Parameters

value

Properties

val value

MapId

Map instance ID, unique within the process.

MapId(value: Int = 0)

Map instance ID, unique within the process.

Parameters

value

Properties

val value

MapLocationController

Controller for map positioning in navigator.

Properties

var mapToNorthOrientation

Whether forced map orientation to north is enabled.

MapManager

Interface that allows you to add maps to the navigator and remove them.

Methods
fun addMap(map: Map): Unit
Parameters

map

Returns
fun removeMap(map: Map): Unit
Parameters

map

Returns

MapObject

Object on the map.

Properties

var userData

Arbitrary user data attached to the object.

MapObjectManager

MapObjectManager(map: Map, layerId: String? = null)

Creates an IMapObjectManager.

Parameters

map

layerId

Layer ID in the "Dynamic Object" type style. Created objects are placed on this layer, this allows you to set their order relative to other layers. If not specified, objects are placed on top of other layers.

Methods
fun addObject(item: SimpleMapObject): Unit

Adds an object.

Parameters
fun removeObject(item: SimpleMapObject): Unit

Deletes an object.

Parameters
fun addObjects(objects: List<SimpleMapObject>): Unit

Adds objects.

Parameters
fun removeObjects(objects: List<SimpleMapObject>): Unit

Deletes objects.

Parameters
fun removeAndAddObjects(objectsToRemove: List<SimpleMapObject>, objectsToAdd: List<SimpleMapObject>): Unit

Removes and adds objects.

Parameters

objectsToRemove

objectsToAdd

Returns
fun removeAll(): Unit
Returns
fun clusteringObjects(position: CameraPosition): List<MapObject>

Gets a list of objects participating in clustering given the camera position. The list contains both clusters and markers.

Parameters
@JvmStatic
fun withClustering(
map: Map,
logicalPixel: LogicalPixel,
maxZoom: Zoom,
clusterRenderer: SimpleClusterRenderer,
minZoom: Zoom = Zoom(value = 0.0f),
layerId: String? = null
): MapObjectManager

Creates an IMapObjectManager with data clustering. Only IMarker objects are clustered.

Parameters

map

logicalPixel

Minimum possible distance on the screen between anchor points of markers on levels where clustering works.

maxZoom

Level starting from which all markers are visible.

clusterRenderer

Interface for setting cluster display parameters.

minZoom

Level starting from which clusters are formed.

layerId

Layer ID in the "Dynamic Object" type style. Created objects are placed on this layer, this allows you to set their order relative to other layers. If not specified, objects are placed on top of other layers.

Returns
@JvmStatic
fun withGeneralization(
map: Map,
logicalPixel: LogicalPixel,
maxZoom: Zoom,
minZoom: Zoom = Zoom(value = 0.0f),
layerId: String? = null
): MapObjectManager

Creates an IMapObjectManager with data generalization. Only IMarker objects are generalized.

Parameters

map

logicalPixel

Minimum distance on the screen between marker anchor points on levels where generalization works.

maxZoom

Level starting from which all markers are visible.

minZoom

Level starting from which generalization works.

layerId

Layer ID in the "Dynamic Object" type style. Created objects are placed on this layer, this allows you to set their order relative to other layers. If not specified, objects are placed on top of other layers.

Returns
Properties

var isVisible

Overrides the visibility of all objects added to the manager instance. Setting false here takes precedence over the visibility of a single object.

MapOptions

Map options.

MapOptions()

Map options.

Methods
fun setTheme(theme: MapTheme): Unit
Parameters

theme

Returns
@JvmStatic
fun fromAttributes(context: Context, attrs: AttributeSet): MapOptions
Parameters
Properties

var position

var sources

var styleFile

val mapAttributes

var fontIconSizeMultiplier

var maxFps

var powerSavingMaxFps

var graphicsPreset

var renderMode

MapPaddingControl

Control that sets the padding of the map.

Implements: android.view.ViewTreeObserver.OnGlobalLayoutListener
MapPaddingControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Control that sets the padding of the map.

Parameters

context

attrs

defStyle

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns
fun onGlobalLayout(): Unit
Returns

MapRotationBeginEvent

Event of starting map rotation around a point.

MapRotationBeginEvent(inDirection: MapRotationDirection)
Parameters
Properties

MapRotationEndEvent

Event of ending the map rotation around the point.

MapRotationEndEvent()

MapScalingBeginEvent

Event of starting map scaling.

MapScalingBeginEvent(inDirection: MapScalingDirection)
Parameters
Properties

MapScalingEndEvent

Event of ending map scaling.

MapScalingEndEvent()

MapShiftBeginEvent

Event of starting map shift.

MapShiftBeginEvent(inDirection: MapShiftDirection)
Parameters
Properties

MapShiftEndEvent

Event of ending map shift.

MapShiftEndEvent()

MapTheme

Theme to use in the map.

MapTheme(name: String, loadingBackground: Color)

Theme to use in the map.

Parameters

name

loadingBackground

Properties

val name

Code of the style from the Style Editor.

val loadingBackground

The background color used before styles are loaded and the map background is displayed. In default themes, this matches the default map background color.

val defaultTheme

Standard light theme for base styles.

val defaultDarkTheme

Standard dark theme for base styles.

MapView

Container of the map and additional controls.

Extends: android.widget.FrameLayout
MapView(context: Context)
Parameters

context

MapView(context: Context, attrs: AttributeSet)
Parameters
MapView(context: Context, options: MapOptions)
Parameters

context

options

MapView(context: Context, map: Map)
Parameters

context

map

Methods
fun setBackgroundColor(color: Int): Unit
Parameters

color

Returns
fun setBackground(background: Drawable?): Unit
Parameters

background

Returns
fun setBackgroundResource(resid: Int): Unit
Parameters

resid

Returns
fun setUriOpener(uriOpener: Function1): Unit
Parameters

uriOpener

Returns
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
fun getMapAsync(callback: OnMapReadyCallback): Unit
Parameters

callback

Returns
fun setTouchEventsObserver(observer: TouchEventsObserver?): Unit
Parameters
fun addObjectTappedCallback(callback: MapObjectTappedCallback): Unit
Parameters
fun removeObjectTappedCallback(callback: MapObjectTappedCallback): Unit
Parameters
fun addObjectLongTouchCallback(callback: MapObjectTappedCallback): Unit
Parameters
fun removeLongTouchCallback(callback: MapObjectTappedCallback): Unit
Parameters
fun setTheme(theme: MapTheme): Unit

Sets the theme to be used in the map.

Parameters

theme

Returns
fun onStart(owner: LifecycleOwner): Unit
Parameters

owner

LifecycleOwner
Returns
fun onStop(owner: LifecycleOwner): Unit
Parameters

owner

LifecycleOwner
Returns
fun onConfigurationChanged(newConfig: Configuration): Unit
Parameters

newConfig

Returns
fun onSaveInstanceState(): Parcelable?
fun onRestoreInstanceState(state: Parcelable?): Unit
Parameters

state

Returns
fun onVisibilityChanged(changedView: View, visibility: Int): Unit
Parameters

changedView

visibility

Returns
fun takeSnapshot(copyrightPosition: Alignment = Alignment.BOTTOM_RIGHT): Future<ImageData>
Parameters

copyrightPosition

Returns
fun useDefaultGestureRecognitionEngine(): Unit

Use built-in gesture recognizer.

Returns
fun useCustomGestureRecognitionEngine(customGestureRecognitionEngine: MapGestureRecognitionEngine): Unit

Use custom gesture recognizer.

Parameters

customGestureRecognitionEngine

Returns
Properties

lateinit var mapOptions

var maxFps

Maximum allowed map refresh rate. If not set, it is equal to the screen refresh rate.

var powerSavingMaxFps

Maximum allowed map refresh rate in power saving mode. If not set, it is equal to maxFps.

val fpsChannel

Map update frequency. To get the correct value, you must keep a subscription to the channel. Before calling the method, the map must be initialized (getMapAsync is completed).

val renderView

Returns the View used for rendering OpenGL.

val gestureManager

val mapTheme

Theme that is used by the map. To change during the lifecycle MapView, use setTheme.

MarkedByRouteIndoorControl

Floor control, which marks the floors through which routes pass on the map.

MarkedByRouteIndoorControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Floor control, which marks the floors through which routes pass on the map.

Parameters

context

attrs

defStyle

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns

MarkedUpText

Marked text.

MarkedUpText(text: String, matchedParts: List<MarkedUpTextSpan>)

Marked text.

Parameters
Properties

val text

Text.

val matchedParts

Set of non-overlapping Spans, in the order of them appearing in the text string, describing the parts that match the user's query.

MarkedUpTextSpan

Describes a subset of bytes of the text string.

MarkedUpTextSpan(offset: Long, length: Long)

Describes a subset of bytes of the text string.

Parameters

offset

length

Properties

val offset

val length

Marker

Point on the map that is of interest to the user.

Marker(options: MarkerOptions)
Parameters
Properties

var position

Gets a marker location.

var icon

Gets a marker icon.

var anchor

Gets an anchor point of a marker icon.

var iconOpacity

Gets the transparency of the marker icon.

var text

Gets the marker caption.

var textStyle

Gets the marker caption style.

var isDraggable

Gets the marker dragability flag.

var iconWidth

Gets the target marker width used for scaling.

var iconMapDirection

Rotation angle of the marker on the map relative to the north direction, clockwise.

var animatedAppearance

Whether to animate the appearance.

var iconAnimationMode

Gets the animation mode for an animated marker.

MarkerOptions

Marker options.

MarkerOptions(
position: GeoPointWithElevation,
icon: Image?,
iconMapDirection: MapDirection? = null,
anchor: Anchor = Anchor(x = 0.5f, y = 0.5f),
text: String? = null,
textStyle: TextStyle? = null,
iconOpacity: Opacity = Opacity(value = 1.0f),
visible: Boolean = true,
draggable: Boolean = false,
iconWidth: LogicalPixel = LogicalPixel(value = 0.0f),
userData: Any? = null,
zIndex: ZIndex = ZIndex(value = 0),
animatedAppearance: Boolean = true,
levelId: LevelId? = null,
iconAnimationMode: AnimationMode = AnimationMode.NORMAL
)

Marker options.

Parameters

position

icon

iconMapDirection

anchor

text

textStyle

iconOpacity

visible

draggable

iconWidth

userData

zIndex

animatedAppearance

levelId

iconAnimationMode

Properties

val position

val icon

val iconMapDirection

val anchor

val text

val textStyle

val iconOpacity

val visible

val draggable

val iconWidth

Target width used for scaling.

val userData

val zIndex

Object rendering level.

val animatedAppearance

Whether to animate the appearance.

val levelId

Link to the floor plan of the building.

val iconAnimationMode

Animation mode.

MessageControl

MessageControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: Model): Unit
Parameters

model

Returns

Meter

Length/distance in meters.

Meter(value: Float = 0.0f)

Length/distance in meters.

Parameters

value

Properties

val value

MillisecondsRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<MillisecondsRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): MillisecondsRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): MillisecondsRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun calculateDuration(routePoint: RoutePoint): Duration
Parameters

routePoint

Returns
fun calculateDuration(fromRoutePoint: RoutePoint, toRoutePoint: RoutePoint): Duration
Parameters

fromRoutePoint

toRoutePoint

Returns
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

val duration

Route duration.

MillisecondsRouteEntry

Route element - point and value in it.

MillisecondsRouteEntry(point: RoutePoint, value: Duration)

Route element - point and value in it.

Parameters
Properties

val point

val value

Model

Navigator model intended to be displayed in the UI.

Methods
fun betterRouteResponse(response: BetterRouteResponse): Unit

User response about applying the suggested better route.

Parameters
Properties

val stateChannel

Navigator state.

val state

Navigator state.

val locationChannel

Current location that the navigator is working with.

See location_available_channel.

val location

Current location that the navigator is working with.

See location_available_channel.

val locationAvailableChannel

Flag that indicates whether the current location is used for navigation. After receiving the location, the navigator decides whether it can be used for navigation (for example, if the location has too large error margins, the navigator may decide that it is not suitable for navigation). If the location is navigable, the navigator sets the value to true in this channel. If not, it sets the value to false.

Even if the value in this channel is false, the location_channel can be updated in the location_channel.

See location_channel.

val locationAvailable

Flag that indicates whether the current location is used for navigation. After receiving the location, the navigator decides whether it can be used for navigation (for example, if the location has too large error margins, the navigator may decide that it is not suitable for navigation). If the location is navigable, the navigator sets the value to true in this channel. If not, it sets the value to false.

Even if the value in this channel is false, the location_channel can be updated in the location_channel.

See location_channel.

val routeChannel

Route with maneuvers.

In the free roam mode (StateChannel::FreeRoam), there is no route on which a user is traveling. Therefore, the section of the road on which the user is currently moving is represented by the navigator as a route and returned as the current route. This type of road definition is not a complete route as it lacks a finish point and maneuvers.

val route

Route with maneuvers.

In the free roam mode (StateChannel::FreeRoam), there is no route on which a user is traveling. Therefore, the section of the road on which the user is currently moving is represented by the navigator as a route and returned as the current route. This type of road definition is not a complete route as it lacks a finish point and maneuvers.

val dynamicRouteInfoChannel

Traffic events and traffic jam data on the route or on the predicted part of the route for FreeRoam mode.

val dynamicRouteInfo

Traffic events and traffic jam data on the route or on the predicted part of the route for FreeRoam mode.

val routePositionChannel

Current user position on the route.

val routePosition

Current user position on the route.

val exceedingMaxSpeedLimitChannel

Flag of exceeding the maximum allowed speed limit.

val exceedingMaxSpeedLimit

Flag of exceeding the maximum allowed speed limit.

val betterRouteChannel

Signal indicating an alternative route with shorter expected travel time. The null value means that an alternative route cannot be found or has become outdated.

val betterRoute

Signal indicating an alternative route with shorter expected travel time. The null value means that an alternative route cannot be found or has become outdated.

val duration

val isFreeRoam

MultiTouchShiftSettings

Settings for handling shift when touching with multiple fingers.

MultiTouchShiftSettings(thresholdMm: Float)

Settings for handling shift when touching with multiple fingers.

Parameters

thresholdMm

Properties

val thresholdMm

Shift threshold of the weighted average of finger placement points, in millimeters, upon reaching which the generation of multi-finger shift events starts.

MyLocationControl

Control of the flyover to the user's current location.

MyLocationControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Control of the flyover to the user's current location.

Parameters

context

attrs

defStyle

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns

MyLocationControllerSettings

Settings of the controller of a geolocation marker moving.

MyLocationControllerSettings(
bearingSource: BearingSource? = BearingSource.AUTO,
animationDuration: Duration = Duration.ofMilliseconds(1000),
coordinatesThreshold: Meter = Meter(value = 0.1f),
bearingThreshold: Bearing = Bearing(value = 1.0)
)

Settings of the controller of a geolocation marker moving.

Parameters

bearingSource

animationDuration

coordinatesThreshold

bearingThreshold

Properties

val bearingSource

Bearing source. If missing, a marker without bearing is displayed.

val animationDuration

Non-negative duration of the real bearing change.

val coordinatesThreshold

Non-negative threshold value of the considered change of the real position and its precision.

val bearingThreshold

Non-negative threshold value of the considered change of the real bearing.

MyLocationControlModel

Model for the control to manage the flyover to the user's location. The control consists of a button that, when clicked, triggers the camera flyover to the user location. If the location is not specified, nothing happens. Object methods must be called on the same thread.

MyLocationControlModel(map: Map)
Parameters

map

Methods
fun onClicked(): Unit
Returns
Properties

val isEnabledChannel

val isEnabled

val followStateChannel

val followState

MyLocationMapObject

Geolocation marker.

MyLocationMapObjectSource

Source containing a geolocation marker.

MyLocationMapObjectSource(
context: Context,
controllerSettings: MyLocationControllerSettings = MyLocationControllerSettings(),
markerType: MyLocationMapObjectMarkerType = MyLocationMapObjectMarkerType.MODEL
)

Creates a location marker source.

Parameters
Properties

val item

Gets the geolocation marker.

NativeException

Exception converted from an exception thrown in native code.

NativeObject

Base class for objects that wrap objects in native code.

Implements: java.lang.AutoCloseable
Methods
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns
fun close(): Unit
Returns
fun isValid(): Boolean
Returns

NativeProxy

Technical class that encapsulates a weak pointer to an object in native code.

Methods
fun finalize(): Unit
Returns

NavigationControl

Container with controls for the zoom level and flyover to the user's current location.

Extends: android.widget.LinearLayout
NavigationControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Container with controls for the zoom level and flyover to the user's current location.

Parameters

context

attrs

defStyle

NavigationControl

Base class for navigator UI controls.

Extends: android.widget.FrameLayout
NavigationControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Base class for navigator UI controls.

Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
fun attachToManager(manager: NavigationManager): Unit
Parameters

manager

Returns
fun detachFromManager(): Unit
Returns
fun attachToModel(model: Model): Unit
Parameters

model

Returns
fun detachFromModel(model: Model): Unit
Parameters

model

Returns
Properties

NavigationFollowController

Interface for managing the map following a geolocation marker in the navigator.

Methods
fun setFollow(follow: Boolean): Unit

Immediately enables or disables map following the location marker.

Parameters

follow

Returns
Properties

var followReturnDelay

Timeout after which the map automatically returns to the mode of following the geolocation marker after the user moved it. 0 - automatic return to the following mode is disabled.

var cameraBehaviour

Camera tracking mode for geoposition marker in the navigator.

NavigationManager

Root public interface of the navigator.

NavigationManager(platformContext: Context)

Navigator API entry point used in the SDK by default.

Parameters

platformContext

Methods
fun start(): Unit
Returns
fun start(routeBuildOptions: RouteBuildOptions, trafficRoute: TrafficRoute? = null): Unit

Starts route guidance.

Parameters

routeBuildOptions

Parameters with which the navigator rebuilds the route.

trafficRoute

Route to start navigating. If the value is not specified, the navigator builds a route from the current location.

Returns
fun startSimulation(routeBuildOptions: RouteBuildOptions, trafficRoute: TrafficRoute): Unit

Starts a simulation route navigation.

Parameters

routeBuildOptions

Parameters with which the navigator rebuilds the route.

trafficRoute

Route on which to run the simulation.

Returns
fun stop(): Unit

Stops the navigator.

Returns
Properties

val uiModel

Navigator model intended to be displayed in the UI.

val indoorDetector

Indoor navigation.

val mapFollowController

Management of automatic return of the map to following a geolocation marker.

val mapLocationController

Controller for map positioning in navigator.

val mapManager

Navigator map manager.

val zoomFollowSettings

Map scaling settings during the follow mode.

val routeMapSettings

Settings for displaying the route on the map.

val routeSourceSettings

Settings for the source used to display the route on the map.

val simulationSettings

Settings for simulation of navigating the route.

val voiceSelector

Managing voice packages in the current navigator session.

val exceedSpeedLimitSettings

Settings for detection of exceeding the speed limit.

val dynamicRouteInfoSettings

Settings for receiving and updating dynamic route data.

val soundNotificationSettings

Settings for sound alerts in the current navigator session.

val freeRoamSettings

Settings for navigating without a route in free roam mode.

val alternativeRoutesProviderSettings

Alternative route search settings in the navigation mode.

val alternativeRouteSelector

Selects an alternative route.

NavigationView

UI element that displays the state of navigation on the map.

Adding it to a MapView results in the display of a route, a geolocation marker, transport events, and camera tracking. Navigation controls can be placed inside NavigationView - inheritors of NavigationControl, in particular, the ready-to-use set of controls DefaultNavigationControls.

NavigationView(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

UI element that displays the state of navigation on the map.

Adding it to a MapView results in the display of a route, a geolocation marker, transport events, and camera tracking. Navigation controls can be placed inside NavigationView - inheritors of NavigationControl, in particular, the ready-to-use set of controls DefaultNavigationControls.

Parameters

context

attrs

defStyle

Methods
fun attachToMap(map: Map): Unit
Parameters

map

Returns
fun detachFromMap(map: Map): Unit
Parameters

map

Returns
Properties

var navigationManager

NavigationVoice

Voice to use in the navigator.

NewValuesNotifier

Interface of an object that reports that there are changes in any of the parameters.

Methods
fun sendNotification(): Unit

Must be called to report parameter updates.

Returns

ObstacleInfo

Information about the obstacle on the route.

ObstacleInfo(type: Obstacle = Obstacle.OTHER, limitation: ObstaclePassLimitation = ObstaclePassLimitation.UNLIMITED)

Information about the obstacle on the route.

Parameters
Properties

ObstacleInfoRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<ObstacleInfoRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): ObstacleInfoRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): ObstacleInfoRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

ObstacleInfoRouteEntry

Route element - point and value in it.

ObstacleInfoRouteEntry(point: RoutePoint, value: ObstacleInfo)

Route element - point and value in it.

Parameters
Properties

ObstacleInfoRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): ObstacleInfoRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<ObstacleInfoRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

ObstacleInfoRouteLongEntry

Extended route element - segment and value on it.

ObstacleInfoRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: ObstacleInfo
)

Extended route element - segment and value on it.

Parameters
Properties

Opacity

Opacity - from 0.0 (fully transparent) to 1.0 (fully opaque).

Opacity(value: Float = 0.0f)

Opacity - from 0.0 (fully transparent) to 1.0 (fully opaque).

Parameters

value

Properties

val value

OpeningHours

Opening hours of the organization.

OpeningHours(weekOpeningHours: List<List<WeekTimeInterval>>, isOpen24x7: Boolean)

Opening hours of the organization.

Parameters

weekOpeningHours

isOpen24x7

Properties

val weekOpeningHours

Opening hours for each day of the week, starting from Monday.

val isOpen24x7

OrderedValue

Describes one value from a set.

OrderedValue(value: String, text: String?)

Describes one value from a set.

Parameters

value

text

Properties

val value

Value by which the filtering occurs.

val text

The name of the value.

OrderedValues

Describes a set of discrete ordered values.

OrderedValues(
values: List<OrderedValue>,
currentMinIndex: Long? = null,
currentMaxIndex: Long? = null
)

Describes a set of discrete ordered values.

Parameters

values

currentMinIndex

currentMaxIndex

Properties

val values

Set of values. Sorted in ascending order.

val currentMinIndex

Index of the currently set minimum value.

val currentMaxIndex

Index of the currently set maximum value.

Package

Package. For the convenience of working with data (installation, updating, deletion), data in the 2GIS SDK are grouped into sets according to functional-logical purpose. A set of grouped data is called a package. The functional purpose of data is unique within one package. However, sets data of packages with the same functionality may overlap, that is, it is possible that the data of several packages have common files. In operations with a group of such packages, the common data will be processed (downloaded, unpacked, deleted) only once.

Methods
fun install(): Unit

Initiates a package installation or update operation.

Returns
fun uninstall(): Unit

Starts the package removal operation.

Returns
Properties

val id

Stable technical package identifier.

val infoChannel

Package information.

val info

Package information.

val progressChannel

Package installation or update operation progress as a percentage. If the package is not installed locally, the channel contains the value 0. If the package is installed locally, regardless of the date and compatibility with the current SDK version, the channel contains the value 100. If the package is located during the install or update phase, the channel contains the update value in the range 0.100.

val progress

Package installation or update operation progress as a percentage. If the package is not installed locally, the channel contains the value 0. If the package is installed locally, regardless of the date and compatibility with the current SDK version, the channel contains the value 100. If the package is located during the install or update phase, the channel contains the update value in the range 0.100.

PackageInfo

Package information. See IPackage.

PackageInfo(
name: String,
installed: Boolean = false,
incomplete: Boolean = true,
preinstalled: Boolean = false,
compatible: Boolean = false,
hasUpdate: Boolean = false,
error: PackageInfoError?,
updateStatus: PackageUpdateStatus = PackageUpdateStatus.NOT_AVAILABLE,
finalSizeOnDisk: Long? = null,
currentSizeOnDisk: Long = 0
)

Package information. See IPackage.

Parameters

name

installed

incomplete

preinstalled

compatible

hasUpdate

error

updateStatus

finalSizeOnDisk

currentSizeOnDisk

Properties

val name

Localized package name.

val installed

Installation flag - true, if the package was selected for installation.

val incomplete

Installation pending flag - true, if there is no fully loaded version of the package (possibly incompatible with the current SDK version).

val preinstalled

Flag for pre-installed packages. Pre-installed packages are always installed and fully loaded, and cannot be removed.

val compatible

Compatibility flag - true, if the downloaded package is compatible with the current SDK version.

val hasUpdate

Indicator of an update availability - true, if there is an update for the downloaded package. It is possible, that during the process of updating to a new version, an even newer version of the package became available on the server. In this case, the value is true both during the update and upon completion.

val error

Error occurred while trying to load and/or install a package, or null if there is no error.

val updateStatus

Package update status.

val finalSizeOnDisk

Size of the disk space that the territory takes after installation, in bytes. Uninitialized value indicates that the territory does not contain files (this information is obtained from a preinstalled status file that does not contain a list of territory files).

val currentSizeOnDisk

Size of the disk space that currently installed territory files take, in bytes

PackageManager

Interface for centralized package management:

  • Managing auto-update and obtaining its status;
  • Forced updates checking;
  • Starting and stopping the installation/update of all available packages.
  • Subscription to changes in information about packages;
  • Subscription to changes in information about the overall installation progress of packages.

Methods
fun checkForUpdates(): Unit

Forced check for updates.

Returns
Properties

var autoupdateEnabled

Auto-update status (enabled/disabled).

val packagesChannel

Channel with a list of all known packages. Updated if information about at least one of the packages or the list composition changes.

val packages

Channel with a list of all known packages. Updated if information about at least one of the packages or the list composition changes.

PackedMapState

Serialized map state.

Methods
fun toBytes(): ByteArray

Representation of the map state as a sequence of bytes.

Returns
@JvmStatic
fun of(
position: CameraPosition,
showTraffic: Boolean,
behaviour: CameraBehaviour
): PackedMapState

Gets the map state.

Parameters

position

Camera position.

showTraffic

Status of displaying traffic score on the map.

behaviour

Camera tracking mode.

Returns
PackedMapState

Serialized map state.

@JvmStatic
fun fromBytes(data: ByteArray): PackedMapState

Gets the map state.

Parameters

data

Map state as a sequence of bytes.

Returns
PackedMapState

Serialized map state.

@JvmStatic
fun fromMap(map: Map): PackedMapState

Gets the map state.

Parameters

map

Map the state of which to get.

Returns
PackedMapState

Serialized map state.

Properties

var showTraffic

Gets the display status of traffic score on the map.

var cameraPosition

Gets the camera position.

var cameraBehaviour

Gets a camera tracking mode.

PackedNavigationState

Auxiliary object for serializing and deserializing the navigation state.

Methods
fun toBytes(): ByteArray

Serialization of navigation state.

Returns
@JvmStatic
fun of(
trafficRoute: TrafficRoute,
routeSearchOptions: RouteSearchOptions? = null,
finishPoint: RouteSearchPoint? = null,
routePosition: RoutePoint? = null,
state: State = State.DISABLED
): PackedNavigationState

Creates an object from the listed elements.

Parameters

trafficRoute

routeSearchOptions

finishPoint

routePosition

state

Returns
@JvmStatic
fun fromBytes(data: ByteArray): PackedNavigationState

Deserialization of the navigation state. Invalid elements in the saved state are either ignored or replaced with default values.

Parameters
@JvmStatic
fun fromModel(model: Model): PackedNavigationState

Creates an object from a navigator model.

Parameters
Properties

var trafficRoute

var finishPoint

Finish point of the route.

var routeSearchOptions

Route building options.

var routePosition

Position on route.

var state

Current navigation state.

PackedSearchQuery

Auxiliary object for serializing and deserializing a search query.

Methods
fun toBytes(): ByteArray
Returns
fun toSearchQuery(): SearchQuery
@JvmStatic
fun fromBytes(data: ByteArray): PackedSearchQuery

Deserialization of a search query.

Parameters
@JvmStatic
fun fromSearchQuery(searchQuery: SearchQuery): PackedSearchQuery
Parameters
Properties

val queryText

Query text. For some queries (for example, expanding a category from a suggest), there is no text, because identifiers are stored in the query, and the behavior is different from searching the text of the suggest element.

val spatialRestriction

Geometry limiting the search area.

val areaOfInterest

Rectangular area of interest.

val allowedResultTypes

Restriction on object types returned by search.

val pageSize

Issue page size.

val directoryFilter

Information about active filters.

val sortingType

Type of sorting of results.

Padding

Camera padding.

Specified as an inward offset from the edges, in physical pixels. The paddings affect:

  • the position point;
  • animated map movement;
  • the placement of dynamic map objects (such as route callouts).

Padding(
left: Int = 0,
top: Int = 0,
right: Int = 0,
bottom: Int = 0
)

Camera padding.

Specified as an inward offset from the edges, in physical pixels. The paddings affect:

  • the position point;
  • animated map movement;
  • the placement of dynamic map objects (such as route callouts).

Parameters

left

top

right

bottom

Properties

val left

Inward padding from the left.

val top

Inward padding from the top.

val right

Inward padding from the right.

val bottom

Inward padding from the bottom.

Page

Search results page.

Methods
fun fetchPrevPage(): Future<Page?>

Gets the previous page of results.

Returns
Future<Page?>

Future that resolves into a non-null pointer to the previous page if the page is retrieved successfully. Future that resolves to a null pointer if there is no previous page. Exceptional future if an error occurred while fetching the page.

fun fetchNextPage(): Future<Page?>

Gets the next page of results.

Returns
Future<Page?>

Future that resolves to a non-null pointer to the next page if the page is retrieved successfully. Future that resolves to a null pointer if there is no next page. Exceptional future if an error occurred while fetching the page.

Properties

val items

Non-empty set of reference objects for this page.

ParkingCapacity

Parking capacity.

ParkingCapacity(total: String?, specialSpaces: List<SpecialSpace>)

Parking capacity.

Parameters

total

specialSpaces

Properties

val total

Total parking capacity, amount of parking lots.

val specialSpaces

Description of special parking lots.

ParkingInfo

General parking information.

ParkingInfo(
type: ParkingType?,
purpose: ParkingPurpose,
access: ParkingAccess,
pavingType: ParkingPavingType?,
isPaid: Boolean,
isIncentive: Boolean,
forTrucks: Boolean,
levelCount: Short?,
capacity: ParkingCapacity?
)

General parking information.

Parameters

type

purpose

access

pavingType

isPaid

isIncentive

forTrucks

levelCount

capacity

Properties

val type

val purpose

Parking purpose.

val access

Access type.

val pavingType

Paving type.

val isPaid

Whether the parking is chargeable.

val isIncentive

Whether the parking is incentive.

val forTrucks

There are places for trucks.

val levelCount

Number of levels.

val capacity

PedestrianBriefRouteInfo

Basic information about the pedestrian route.

PedestrianBriefRouteInfo(length: RouteDistance, landmark: String)

Basic information about the pedestrian route.

Parameters

length

landmark

Properties

val length

Route length.

val landmark

Landmark.

PedestrianInstructionCrossroad

Description of maneuvers when passing through an intersection or a pedestrian crossing.

PedestrianInstructionCrossroad(landmark: PedestrianInstructionCrossroadLandmark = PedestrianInstructionCrossroadLandmark.NONE, maneuvers: List<PedestrianInstructionCrossroadManeuver>)

Description of maneuvers when passing through an intersection or a pedestrian crossing.

Parameters
Properties

val landmark

val maneuvers

Chain of consecutive maneuvers.

PedestrianInstructionCrossroadManeuver

PedestrianInstructionCrossroadManeuver(direction: PedestrianInstructionCrossroadManeuverDirection = PedestrianInstructionCrossroadManeuverDirection.STRAIGHT, turnAngle: Int = 0)
Parameters
Properties

val direction

val turnAngle

Angle of turn in degrees -180,180.

PedestrianInstructionFinish

End of the pedestrian part of the route.

PedestrianInstructionFinish()

End of the pedestrian part of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

PedestrianInstructionIndoorEnter

Entrance to the building.

PedestrianInstructionIndoorEnter(levelId: LevelId = LevelId())

Entrance to the building.

Parameters

levelId

Properties

val levelId

Floor ID after entering the building.

PedestrianInstructionIndoorExit

Exit of the building.

PedestrianInstructionIndoorExit()

Exit of the building.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

PedestrianInstructionIndoorFloorChange

Change of floors in the building.

PedestrianInstructionIndoorFloorChange(
type: PedestrianInstructionIndoorFloorChangeType = PedestrianInstructionIndoorFloorChangeType.UNDEFINED,
beginId: LevelId = LevelId(),
endId: LevelId = LevelId()
)

Change of floors in the building.

Parameters
Properties

val type

val beginId

Floor ID before change.

val endId

Floor ID after change.

PedestrianInstructionStart

Beginning of the pedestrian part of the route.

PedestrianInstructionStart()

Beginning of the pedestrian part of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

PedestrianRouteSearchOptions

Pedestrian route search options.

PedestrianRouteSearchOptions(
avoidStairways: Boolean = false,
avoidUnderpassesAndOverpasses: Boolean = false,
useIndoor: Boolean = true,
excludedAreas: List<ExcludedArea> = listOf()
)

Pedestrian route search options.

Parameters

avoidStairways

avoidUnderpassesAndOverpasses

useIndoor

excludedAreas

Properties

val avoidStairways

Avoid stairways.

val avoidUnderpassesAndOverpasses

Avoid underpasses and overpasses.

val useIndoor

Build indoor routes.

val excludedAreas

Excluded areas (not more than 25).

PerformSearchHandler

Suggested to search for a specific set of objects.

Properties

val searchQuery

Query to run through the search engine.

PointGeometry

Point.

PointGeometry(point: GeoPoint)
Parameters
PointGeometry(point: GeoPointWithElevation)
Parameters
Properties

PointGeometryData

Geometry data of the point object.

PointGeometryData(geoPoint: GeoPoint)
Parameters

geoPoint

PointGeometryData(geoPointWithElevation: GeoPointWithElevation)
Parameters

geoPointWithElevation

Methods
fun match(geoPoint: Function1, geoPointWithElevation: Function1): T
Parameters

geoPoint

geoPointWithElevation

Returns
T
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isGeoPoint

val asGeoPoint

val isGeoPointWithElevation

val asGeoPointWithElevation

val value

Polygon

Polygon on the map.

Polygon(options: PolygonOptions)

Creates a polygon based on the parameters.

Parameters
Properties

var contours

var color

var strokeWidth

var strokeColor

PolygonGeometry

Polygon.

PolygonGeometry(contours: List<List<GeoPoint>>)
Parameters
Properties

PolygonOptions

Polygon settings.

PolygonOptions(
contours: List<List<GeoPoint>>,
color: Color = Color(),
strokeWidth: LogicalPixel = LogicalPixel(value = 0.0f),
strokeColor: Color = Color(),
visible: Boolean = true,
userData: Any? = null,
zIndex: ZIndex = ZIndex(value = 0),
levelId: LevelId? = null
)

Polygon settings.

Parameters

contours

color

strokeWidth

strokeColor

visible

userData

zIndex

levelId

Properties

val contours

val color

val strokeWidth

val strokeColor

val visible

val userData

val zIndex

Object rendering level.

val levelId

Link to the floor plan of the building.

Polyline

Polyline on the map.

Polyline(options: PolylineOptions)
Parameters
Properties

var points

var width

var color

var erasedPart

var dashedPolylineOptions

Gets parameters of a dashed polyline.

var gradientPolylineOptions

Gets gradient polyline parameters.

PolylineGeometry

Polyline.

PolylineGeometry(points: List<GeoPoint>)
Parameters
Properties

PolylineOptions

Polyline options.

PolylineOptions(
points: List<GeoPoint>,
width: LogicalPixel = LogicalPixel(value = 1.0f),
color: Color = Color(),
erasedPart: Double = 0.0,
dashedPolylineOptions: DashedPolylineOptions? = null,
gradientPolylineOptions: GradientPolylineOptions? = null,
visible: Boolean = true,
userData: Any? = null,
zIndex: ZIndex = ZIndex(value = 0),
levelId: LevelId? = null
)

Polyline options.

Parameters

points

width

color

erasedPart

dashedPolylineOptions

gradientPolylineOptions

visible

userData

zIndex

levelId

Properties

val points

Points of a polyline.

val width

Polyline width.

val color

Primary color of the polyline.

val erasedPart

Proportion of the erased part of the polyline, must be within the range 0;1.

val dashedPolylineOptions

Dashed polyline options.

Dashed gradient line options are not currently supported, so if both dashed_polyline_options and gradient_polyline_options are present in PolylineOptions, then dashed_polyline_options is ignored when creating the polyline.

val gradientPolylineOptions

Gradient polyline options.

Dashed gradient line is currently not supported, so if both dashed_polyline_options and gradient_polyline_options are present in PolylineOptions, dashed_polyline_options is ignored when creating the polyline.

val visible

Polyline visibility.

val userData

User data.

val zIndex

Object rendering level.

val levelId

Link to the floor plan of the building.

Projection

Projection.

Uses the Mercator spherical projection (EPSG:3857), looped in longitude. Displayed data is limited in latitude from -85.06° to 85.06°.

Methods
fun screenToMap(point: ScreenPoint): GeoPoint?

Calculates a map point at the specified screen point.

The function returns an empty value if the specified screen point is outside the map projection.

Parameters
fun mapToScreen(point: GeoPoint): ScreenPoint?
Parameters
fun mapToScreen(point: GeoPointWithElevation): ScreenPoint?

Calculates the screen point corresponding to the specified map point.

The function returns an empty value:

  • if the point has an invalid value (latitude is outside the range -90;90 or longitude is outside the range -180;180).
  • if the specified map point is above the projection plane of the map on the screen.
  • if the specified map point is too far beyond the screen and the type overflow occurs.

Parameters
fun screenToMapClipped(point: ScreenPoint): GeoPoint

Calculates the nearest map point to the projection of the specified screen point.

Parameters

PublicBriefRouteInfo

Basic information about rotes by public transport.

PublicBriefRouteInfo(publicTransportInfos: List<PublicBriefRouteTransportInfo>)

Basic information about rotes by public transport.

Parameters
Properties

val publicTransportInfos

Description of ways to travel by public transport.

PublicBriefRouteTransportInfo

Description of the public transport vehicle.

PublicBriefRouteTransportInfo(
type: PublicTransportType = PublicTransportType.BUS,
names: List<String>,
color: Int?,
routeLogo: String
)

Description of the public transport vehicle.

Parameters
Properties

val type

Public transport type.

val names

Names of public transport routes on which travel takes place.

val color

ARGB representation of the color associated with this type of public transport, for example, the color of a subway line. If there is no color information, the field is null.

Identifier of the icon for route stops. Empty string if information is not available. Technical field.

PublicRoutePart

Description of the section of the route by public transport.

PublicRoutePart(transports: List<PublicTransportInfo>, intermediateStops: List<PublicTransportStop>)

Description of the section of the route by public transport.

Parameters
Properties

val transports

Types of public transport that can be used to travel this section of the route.

If the list is empty, this section of the route is suggested to be overcome by personal or rented transport or on foot.

val intermediateStops

Intermediate stops that the transport will pass before reaching the transfer point.

Stops are sorted in the order they appear on the route.

You do not need to get off at these stops.

Start and end stops are not included in this list.

PublicTransportCard

Card that displays information about a public transport route.

Extends: android.widget.FrameLayout
PublicTransportCard(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Card that displays information about a public transport route.

Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns
Properties

PublicTransportCardModel

Model for PublicTransportCard.

PublicTransportCardModel(
route: TrafficRoute,
context: Context,
startName: String? = null,
finishName: String? = null
)

Model for PublicTransportCard.

Parameters

route

context

startName

finishName

Properties

val briefModel

Brief information (displayed in the "header" of the card).

val transfers

Transfer points.

PublicTransportInfo

Description of the public transport vehicle.

PublicTransportInfo(
type: PublicTransportType = PublicTransportType.BUS,
names: List<String>,
suggestedCarNumbers: List<Int>,
boardingSuggest: String,
color: Int?,
routeLogo: String
)

Description of the public transport vehicle.

Parameters

type

names

suggestedCarNumbers

boardingSuggest

color

routeLogo

Properties

val type

Public transport type.

val names

Names of public transport routes on which travel takes place.

val suggestedCarNumbers

Numbers of wagons where boarding is recommended.

If the vehicle consists of one wagon or you can board any wagon, this list is empty.

val boardingSuggest

Text description of wagons recommended for boarding.

val color

ARGB representation of the color associated with this type of public transport, for example, the color of a subway line. If there is no color information, the field is null.

Identifier of the icon for route stops. Empty string if information is not available. Technical field.

PublicTransportRouteSearchOptions

Search options for a public transport route.

PublicTransportRouteSearchOptions(
startTime: TimePoint? = null,
useSchedule: Boolean = false,
transportTypes: EnumSet<PublicTransportType> = EnumSet.noneOf(PublicTransportType::class.java)
)

Search options for a public transport route.

Parameters

startTime

useSchedule

transportTypes

Properties

val startTime

Time in UTC for which the route should be built. If not set, the current time is used.

val useSchedule

Whether to refer to the public transport schedule when building a route.

val transportTypes

Types of public transport. If not filled, routes are built for all supported types of public transport.

PublicTransportStop

Description of the public transport stop.

PublicTransportStop(name: String, coordinates: GeoPoint)

Description of the public transport stop.

Parameters

name

coordinates

Properties

val name

Name of the stop.

val coordinates

Geographical coordinates of the stop.

PublicTransportTransfer

Description of how to get to the next transfer point by public transport.

PublicTransportTransfer(
startPointName: String,
finishPointName: String,
routeParts: List<PublicRoutePart>
)

Description of how to get to the next transfer point by public transport.

Parameters

startPointName

finishPointName

routeParts

Properties

val startPointName

Name of the point from which the movement for this section of the route begins.

val finishPointName

Destination point name for this route segment.

val routeParts

Description of the route segment on public transport, which can be used to get to the next transfer point.

All route segments from this list follow the same geometry line.

If the list is empty, then this route segment it is suggested to be passed by personal or rented transport or on foot.

PublicTransportTransferRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): PublicTransportTransferRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<PublicTransportTransferRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

PublicTransportTransferRouteLongEntry

Extended route element - segment and value on it.

PublicTransportTransferRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: PublicTransportTransfer
)

Extended route element - segment and value on it.

Parameters
Properties

PurposeCode

Code of the purpose of the building.

PurposeCode(value: Long = 0)

Code of the purpose of the building.

Parameters

value

Properties

val value

Range

Describes a set of discrete ordered values.

Range(borders: Borders)
Parameters

borders

Range(orderedValues: OrderedValues)
Parameters

orderedValues

Methods
fun match(borders: Function1, orderedValues: Function1): T
Parameters

borders

orderedValues

Returns
T
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isBorders

val asBorders

val isOrderedValues

val asOrderedValues

val value

RangeFilter

Filter for the value ranges.

RangeFilter(
tagName: String,
displayName: String,
minValue: Double,
maxValue: Double
)

Filter for the value ranges.

Parameters

tagName

displayName

minValue

maxValue

Properties

val tagName

Filter tag.

val displayName

Filter name for display.

Depends on the output language. Not all names may be translated.

val minValue

Minimum value of the range.

val maxValue

Maximum value of the range.

RangeWidget

Widget for representing a continuous or a discrete set of ordered values.

Methods
fun setValues(min: Double, max: Double): Unit

Sets the current selected values.

Parameters

min

Current minimum value.

max

Current maximum value.

Returns
Properties

val range

Gets a set of ordered values.

RasterTileSource

Source that gets raster tiles.

RasterTileSource(
context: Context,
sublayerName: String,
sourceTemplate: RasterUrlTemplate
)

Creates a source that gets raster tiles.

Parameters

context

Context.

sublayerName

sourceTemplate

Template for requesting tiles.

Methods
fun setOpacity(opacity: Opacity): Unit

Sets the transparency value of a raster tile.

Parameters

opacity

Returns

RasterUrlTemplate

RasterUrlTemplate(defaultSource: DefaultRasterUrlTemplate)
Parameters
RasterUrlTemplate(wmsSource: WmsRasterUrlTemplate)
Parameters
Methods
fun match(defaultSource: Function1, wmsSource: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isDefaultSource

val asDefaultSource

val isWmsSource

val asWmsSource

val value

RemainingRouteInfoControl

Navigator UI control that displays information about the remaining distance to the route finish and the remaining travel time.

RemainingRouteInfoControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Navigator UI control that displays information about the remaining distance to the route finish and the remaining travel time.

Parameters

context

attrs

defStyle

Methods
fun attachToManager(manager: NavigationManager): Unit
Parameters

manager

Returns
fun attachToModel(model: Model): Unit
Parameters

model

Returns
fun detachFromManager(): Unit
Returns
Properties

var onAddRoadEventButtonClicked

var onLeftSideActionButtonClicked

val heightChannel

var expanded

const MARGIN

Remover

Object to remove user content.

Methods
fun remove(): Future<ActionResult>

Deletes content.

Action is available for content authored by the user.

RenderedObject

Displayable map object.

RenderedObject(
item: MapObject,
source: Source,
levelId: LevelId? = null
)

Displayable map object.

Parameters

item

source

levelId

Properties

val item

Map object.

val source

Data source containing the map object.

val levelId

Identifier of the floor plan of the building on which the object is located.

RenderedObjectInfo

Detailed information about the displayable map object.

RenderedObjectInfo(
closestViewportPoint: ScreenPoint,
closestMapPoint: GeoPointWithElevation,
item: RenderedObject
)

Detailed information about the displayable map object.

Parameters

closestViewportPoint

closestMapPoint

item

Properties

val closestViewportPoint

Nearest point of the object in screen coordinates.

val closestMapPoint

Nearest point of the object in map coordinates.

val item

Displayable map object.

Reviews

Reviews.

Reviews(rating: Float, count: Int)

Reviews.

Parameters

rating

count

Properties

val rating

Rating in the range from 0 to 5.

val count

Number of reviews.

RoadCameraInfo

Camera information.

RoadCameraInfo(purposes: EnumSet<CameraPurpose>, speedLimit: Short?)

Camera information.

Parameters
Properties

val purposes

Camera purposes.

May be missing if there is no information, or if the camera was added by the user.

val speedLimit

Speed limit in km/h.

Currently available for speed and average speed cameras only.

May not be available for speed cameras if the value is unknown.

RoadEvent

Traffic event.

Methods
fun photos(): Future<List<RoadEventPhoto>>

Photos of the event.

Properties

val type

Event type.

val name

Localized event name.

val author

Information about the user who added the event.

val timestamp

Timestamp of event creation.

val location

Event coordinates.

val description

Custom description of the traffic event.

val cameraInfo

Information about the camera.

Available for events of the "Camera" type only.

val schedule

Schedule.

Currently available for road blockings only, and may not even exist.

val lanes

Affected lanes.

Currently, can be set for custom events only.

val availableActions

List of available actions with the event.

val remover

Gets the object to delete the event.

RoadEventAction

Event action.

Methods
fun set(): Future<ActionResult>

Applies an action (for example, adds a "like", confirms an event).

There are opposite actions, such as "like" and "dislike". If both actions are available for an event, the method call resets the application of the opposite - it is impossible to put "like" and "dislike" at the same time.

fun reset(): Future<ActionResult>

Cancels an action (for example, restores the "like", resets confirmation of an event).

There are actions that are opposite of each other, for example "like" and "dislike". If both are available for an event action, calling the method does not cause the opposite action to be applied.

Properties

val type

val name

Localized action name.

val infoChannel

Information about the action.

val info

Information about the action.

RoadEventActionButton

Action button for the traffic event (confirm, like, etc.).

Extends: android.widget.FrameLayout
RoadEventActionButton(model: RoadEventActionButtonModel, context: Context)

Action button for the traffic event (confirm, like, etc.).

Parameters
Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns

RoadEventActionInfo

Information about the action.

RoadEventActionInfo(state: RoadEventActionState, count: Int?)

Information about the action.

Parameters
Properties

val state

val count

Number of actions applied to the event by all users (only for custom events).

RoadEventCard

Card that displays information about a traffic event.

Extends: android.widget.FrameLayout
RoadEventCard(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Card that displays information about a traffic event.

Parameters

context

attrs

defStyle

Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
Properties

var event

var onRemoveCompleted

Notification about the event deletion completion.

var onActionCompleted

Notification about action completion.

RoadEventCardModel

Traffic event card model.

Implements: java.lang.AutoCloseable
RoadEventCardModel(
event: RoadEvent,
photoSize: StatefulChannel<ScreenSize>,
context: Context
)

Traffic event card model.

Parameters
Methods
fun close(): Unit
Returns
Properties

val name

Name, e.g. "Closure".

val description

Description, e.g. "Road works".

val lanes

Affected lanes, e.g. "Left lane, middle lane".

val schedule

Schedule, for example, "October 10th 08:00 - October 15th 23:30".

val creationTime

Creation time, e.g. "5 hours ago", "August 5", "December 10, 2020".

val author

Author, for example, "2GIS".

val photoChannel

val actionCompletedChannel

Notification about action completion.

val removeCompletedChannel

Notification about event deletion completion.

val actions

RoadEventManager

Object for creating traffic events.

RoadEventManager(context: Context)

Gets an object for creating traffic events.

Parameters

context

Methods
fun createAccident(
location: GeoPoint,
lanes: EnumSet<Lane>,
description: String
): Future<AddEventResult>

Creates an "Accident" event.

Parameters

location

Event location.

lanes

Lanes of the road affected by the event.

description

Custom event description.

Returns
fun createCamera(location: GeoPoint, description: String): Future<AddEventResult>

Creates a "Camera" event.

Parameters

location

Event location.

description

Custom event description.

Returns
fun createRoadRestriction(location: GeoPoint, description: String): Future<AddEventResult>

Creates a "Road closure" event.

Parameters

location

Event location.

description

Custom event description.

Returns
fun createComment(location: GeoPoint, description: String): Future<AddEventResult>

Creates a "Comment" event.

Parameters

location

Event location.

description

Custom event description.

Returns
fun createOther(
location: GeoPoint,
lanes: EnumSet<Lane>,
description: String
): Future<AddEventResult>

Creates an "Other" event.

Parameters

location

Event location.

lanes

Lanes of the road affected by the event.

description

Custom event description.

Returns
fun createRoadWorks(
location: GeoPoint,
lanes: EnumSet<Lane>,
description: String
): Future<AddEventResult>

Creates a "Road works" event.

Parameters

location

Event location.

lanes

Lanes of the road affected by the event.

description

Custom event description.

Returns

RoadEventMapObject

Map object "Traffic event".

Properties

val id

val event

Gets a traffic event.

RoadEventPhoto

Photograph of a traffic event.

Methods
fun previewUrl(desiredSize: ScreenSize): String

Photo preview URL.

Parameters

desiredSize

Returns
fun report(): Future<ActionResult>

Submits a complaint about a photo.

Complaining your photo will not be processed.

Properties

val photoUrl

URL of a full-sized photo.

val author

Information about the user who added the photo.

val timestamp

Timestamp.

val remover

Gets an object for deleting a photo.

RoadEventRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<RoadEventRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): RoadEventRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): RoadEventRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

First element.

val last

val entries

RoadEventRouteEntry

Route element - point and value in it.

RoadEventRouteEntry(point: RoutePoint, value: BriefRoadEvent)

Route element - point and value in it.

Parameters
Properties

RoadEventSource

Interface of the class that controls the display of traffic events (tUGC) on the map.

RoadEventSource(context: Context)

Creates a source that displays traffic events on the map.

Parameters

context

Methods
fun setHighlighted(directoryObjectIds: List<DgisObjectId>, highlighted: Boolean): Unit
Parameters

directoryObjectIds

IDs of changeable events. Can be obtained from RoadEventMapObject.

highlighted

Returns
Properties

var visibleEvents

Gets the current categories of events provided by this source.

val highlightedObjectsChannel

val highlightedObjects

RoadMacroGraph

Global road graph package, used to build a passage between two loaded offline territories.

RoadRuleRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): RoadRuleRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<RoadRuleRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

RoadRuleRouteLongEntry

Extended route element - segment and value on it.

RoadRuleRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: RoadRule
)

Extended route element - segment and value on it.

Parameters
Properties

val point

val length

val value

RoadSubtypeRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): RoadSubtypeRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<RoadSubtypeRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

RoadSubtypeRouteLongEntry

Extended route element - segment and value on it.

RoadSubtypeRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: RoadSubtype
)

Extended route element - segment and value on it.

Parameters
Properties

RoadSurfaceRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): RoadSurfaceRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<RoadSurfaceRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

RoadSurfaceRouteLongEntry

Extended route element - segment and value on it.

RoadSurfaceRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: RoadSurface
)

Extended route element - segment and value on it.

Parameters
Properties

RoadTypeRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): RoadTypeRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<RoadTypeRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

RoadTypeRouteLongEntry

Extended route element - segment and value on it.

RoadTypeRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: RoadType
)

Extended route element - segment and value on it.

Parameters
Properties

val point

val length

val value

RotateMapToNorthEvent

North map rotation event.

RotateMapToNorthEvent()

RotationSettings

Settings for handling map rotation.

RotationSettings(
angleDiffDeg: Float,
distanceDiffMm: Float,
angleDiffInScalingDeg: Float,
distanceDiffInScalingMm: Float
)

Settings for handling map rotation.

Parameters

angleDiffDeg

distanceDiffMm

angleDiffInScalingDeg

distanceDiffInScalingMm

Properties

val angleDiffDeg

Angle change threshold, in degrees, after which it starts sending rotation messages. Used if scaling is inactive.

val distanceDiffMm

Threshold of mean radial shift of points, in millimeters, after which it starts sending rotation messages. Used if scaling is inactive.

val angleDiffInScalingDeg

Angle change threshold, in degrees, after which it starts sending rotation messages. Used if scaling is active.

val distanceDiffInScalingMm

Threshold of mean radial shift of points, in millimeters, after which it starts sending rotation messages. Used if scaling is active.

Route

Class that describes a route. A route is a set of attributes, each of which is a container of the RouteAttribute or the RouteLongAttribute type, which stores elements of route attributes. Route attributes are divided into point and length attributes. Point attributes (for example, geometry points or speed bumps) are specified as a pair of a RoutePoint and an attribute value. Long attributes (such as the width of a roadway or a speed limit) are specified as a pair of a RoutePoint specifying the beginning of the attribute's action and the attribute's value. A terminator is placed at the end of the route. For example, let the width of the roadway be given as a set of pairs {{0m, 3m}, {10m, 7m}, {20m, 5m}, {30m, 0m}}, then the first 10 meters of the route the carriageway has a width of 3 meters, at the interval [10m., 20m.) - 7m., from 20m. to the end of the route - 5m.

Properties

val geometry

Route geometry.

It is not guaranteed that the RoutePoint of geometry points will match the RoutePoint of other attribute elements, so to calculate the geographic coordinate of an attribute element, you do not need to search the geometry for an element RoutePoint of which matches the RoutePoint attribute element, calculate_geo_point should be used instead.

val instructions

Instructions to be followed on the route.

val intermediatePoints

Intermediate points through which the route passes. The route may not pass directly through the intermediate point, but near it. The attribute value stores the coordinate at which the intermediate point was set, the key contains the coordinate of the projection of the intermediate point onto the route.

val altitudes

Altitudes on the route.

val badRoads

Bad road (there are bumps and potholes on the road that impede the passage).

val obstacles

Obstacles on the route.

val roadNames

Road/street names.

val settlements

Sign that the route section passes through the settlement.

val transportTypes

Type of transport for which the route section is built.

val cameras

val carriagewaysWidth

Width of the roadway in meters. 0 - width is unknown.

val exitSigns

val humps

Speed bumps.

val lanes

val levels

val maxSpeedLimits

Maximum allowed speed limits.

0 - speed limit is unknown.

val roadRules

val roadSubtypes

Additional description for the road type where the route is built.

val roadSurfaces

val roadTypes

Type of road along which the route passes.

val tolls

Segments of the route that run along toll roads.

val truckData

Sign of the presence or absence of data for cargo navigation.

val truckPassZoneIds

Checkpoints for trucks.

val truckRestrictedAreas

Indication of the validity of the sign prohibiting of the trucks passage.

val vehicleRestrictedAreas

Indication of the validity of the sign prohibiting the passage of any vehicles (overlapping).

val bicycleLanes

Indication of the presence of a dedicated cycle lane.

val trafficLights

Indication of the presence of traffic lights.

val immersiveData

val publicTransportTransfers

Description of ways to travel between transfer points by public transport.

RouteBuildOptions

Structure that describes parameters for building a route in the navigator.

RouteBuildOptions(finishPoint: RouteSearchPoint, routeSearchOptions: RouteSearchOptions)

Structure that describes parameters for building a route in the navigator.

Parameters

finishPoint

routeSearchOptions

Properties

val finishPoint

Point to which the route is built.

val routeSearchOptions

Route search options.

RouteCamera

Structure describing a traffic camera.

RouteCamera(
purposes: EnumSet<RouteCameraPurpose>,
rangeAgainst: RouteDistance,
rangeAlong: RouteDistance,
direction: RouteCameraDirection = RouteCameraDirection.AGAINST,
maxSpeedLimit: Float?
)

Structure describing a traffic camera.

Parameters
Properties

val purposes

val rangeAgainst

Camera operation range against the direction of movement.

val rangeAlong

Camera operation range along the direction of movement.

val direction

Camera operation direction.

val maxSpeedLimit

Speed in m/s, the exceeding of which is captured by a camera. Missing if the camera does not detect exceeding the speed limit.

RouteDistance

Distance along the route.

RouteDistance(millimeters: Long = 0)

Distance along the route.

Parameters

millimeters

Methods
fun absoluteValue(): RouteDistance
operator fun compareTo(other: RouteDistance): Int
Parameters

other

Returns
operator fun plus(other: RouteDistance): RouteDistance
Parameters
operator fun minus(other: RouteDistance): RouteDistance
Parameters
operator fun times(multiplier: Int): RouteDistance
Parameters

multiplier

Returns
operator fun div(divisor: Int): RouteDistance
Parameters

divisor

Returns
operator fun rem(divisor: Int): RouteDistance
Parameters

divisor

Returns
Properties

val millimeters

val meters

val kilometers

RouteEditor

Interface for the route editor. The route editor obtains the starting and the finish points of the route, builds routes, and notifies about their updates and rebuilds via channels.

All methods of this interface are called from a single thread.

RouteEditor(context: Context)

Function of creating a route editor.

Parameters

context

Methods
fun setRouteParams(routeParams: RouteEditorRouteParams): Unit

Sets route editor parameters. Starts searching for a new route according to the given parameters.

Parameters

routeParams

Returns
fun setActiveRouteIndex(index: RouteIndex): Unit

Sets the active route index.

Parameters

index

Returns
Properties

val routesInfoChannel

Channel through which you can monitor updates about the routes operated by the editor.

val routesInfo

Channel through which you can monitor updates about the routes operated by the editor.

val activeRouteIndexChannel

Channel through which you can monitor the active route index updates. If there are no routes, null is placed in this channel.

val activeRouteIndex

Channel through which you can monitor the active route index updates. If there are no routes, null is placed in this channel.

RouteEditorRouteParams

Information about route parameters.

RouteEditorRouteParams(
startPoint: RouteSearchPoint,
finishPoint: RouteSearchPoint,
routeSearchOptions: RouteSearchOptions,
intermediatePoints: List<RouteSearchPoint> = listOf()
)

Information about route parameters.

Parameters

startPoint

finishPoint

routeSearchOptions

intermediatePoints

Properties

val startPoint

val finishPoint

val routeSearchOptions

val intermediatePoints

RouteEditorRoutesInfo

Information about routes operated by the editor.

RouteEditorRoutesInfo(routes: List<TrafficRoute>, routeParams: RouteEditorRouteParams)

Information about routes operated by the editor.

Parameters
Properties

val routes

When updating the list of routes, the first route is active, if the list is not empty.

val routeParams

Parameters of the route that were searched for. May differ from the parameters passed to the editor if the routes were already found after the parameters were changed in the editor.

RouteEditorSource

Interface of the class that controls the display of routes on the map.

RouteEditorSource(
context: Context,
routeEditor: RouteEditor,
activeDisplayFlags: EnumSet?<RouteMapObjectDisplayFlag> = null,
inactiveDisplayFlags: EnumSet?<RouteMapObjectDisplayFlag> = null,
activeCalloutLabelFlags: EnumSet?<RouteMapObjectCalloutLabelFlag> = null,
inactiveCalloutLabelFlags: EnumSet?<RouteMapObjectCalloutLabelFlag> = null,
calloutLabelDisplayMode: RouteMapObjectCalloutLabelDisplayMode = RouteMapObjectCalloutLabelDisplayMode.ABSOLUTE_VALUES,
activePermanentDisplayFlags: EnumSet?<RouteMapObjectPermanentDisplayFlag> = null,
inactivePermanentDisplayFlags: EnumSet?<RouteMapObjectPermanentDisplayFlag> = null
)

Function to create IRouteEditorSource.

Parameters
Methods
fun setRoutesVisible(visible: Boolean): Unit

Enables or disables the routes display on the map.

Parameters

visible

Returns
fun setShowOnlyActiveRoute(showOnlyActiveRoute: Boolean): Unit

Shows all routes on the map (false) or only the current active route (true).

Parameters

showOnlyActiveRoute

Returns
fun setPassedDistanceVisualization(passedDistanceVisualization: RouteMapObjectPassedDistanceVisualization): Unit

Changes the method of visualizing the distance traveled along a route.

Parameters

passedDistanceVisualization

Returns
Properties

val objects

Route objects on the map.

val routeSourceSettings

Settings for displaying maneuvers on the route.

var activeDisplayFlags

Display flags for the active route. See IRouteMapObject::display_flags.

var inactiveDisplayFlags

Display flags for inactive routes. See IRouteMapObject::display_flags.

var activeCalloutLabelFlags

Flags enabling the display of content in callouts for active routes. See IRouteMapObject::callout_label_flags.

var inactiveCalloutLabelFlags

Flags enabling the display of content in callouts for inactive routes. See IRouteMapObject::callout_label_flags.

var calloutLabelDisplayMode

Display mode for values in route callouts. See IRouteMapObject::callout_label_display_mode.

var activePermanentDisplayFlags

Flags excluding the hiding of components of the active route from the map. See IRouteMapObject::permanent_display_flags.

var inactivePermanentDisplayFlags

Flags excluding the hiding of components of inactive routes from the map. See IRouteMapObject::permanent_display_flags.

RouteExitSign

Information about the exit sign.

RouteExitSign(
type: RouteExitSignType = RouteExitSignType.UNDEFINED,
roadNameTable: RouteExitSignTable,
roadNumberTable: RouteExitSignTable?
)

Information about the exit sign.

Parameters
Properties

val type

val roadNameTable

Exit sign with the road name.

val roadNumberTable

Exit sign with the road number.

RouteExitSignRouteAttribute

Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

Methods
fun entries(begin: RoutePoint, end: RoutePoint): List<RouteExitSignRouteEntry>

Elements falling within the [begin, end) range.

Parameters
fun findNearBackward(point: RoutePoint): RouteExitSignRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
fun findNearForward(point: RoutePoint): RouteExitSignRouteEntry?

Finds the nearest element the position of which is < = point.

The complexity of the operation is log2(N), where N = size.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

RouteExitSignRouteEntry

Route element - point and value in it.

RouteExitSignRouteEntry(point: RoutePoint, value: RouteExitSign)

Route element - point and value in it.

Parameters
Properties

RouteExitSignTable

Information about the exit plate.

RouteExitSignTable(backgroundColor: RouteExitSignTableColor = RouteExitSignTableColor.UNDEFINED, text: String)

Information about the exit plate.

Parameters
Properties

val backgroundColor

Exit plate background color.

val text

Text on the exit plate.

RouteIndex

Active route index.

RouteIndex(value: Long = 0)

Active route index.

Parameters

value

Properties

val value

RouteInfo

Route description with maneuvers.

RouteInfo(
route: Route,
routeBuildOptions: RouteBuildOptions?,
external: Boolean = false
)

Route description with maneuvers.

Parameters

route

routeBuildOptions

external

Properties

val route

Route.

val routeBuildOptions

Route building parameters in the navigator. A null value means that the route has no finish point. In this case, based on the road graph and user movement parameters, a section of the road on which the user is likely to move is calculated and returned as a route in the route field. Therefore, such a "route" cannot contain instructions, and the last point in this "route" is not a destination where the user is moving to, but just a point where the navigator managed to predict the user's movement. Where they will go next is unknown. This navigation mode is called free roam.

val external

Route source. True - the route is passed to the navigator externally in the start method. False - the route is generated by the navigator.

RouteInfoCalloutMapObject

Callout object with information about the length and/or duration of the route on the map.

Properties

val route

Route, part of which is represented by the given callout object.

val routeIndex

Route index.

val routePoint

Position on the route where the callout is located.

RouteInstruction

Instruction to follow while moving along the route.

RouteInstruction(
roadName: String,
range: RouteDistance,
extraInstructionInfo: ExtraInstructionInfo
)

Instruction to follow while moving along the route.

Parameters

roadName

range

extraInstructionInfo

Properties

val roadName

Name of the road where the user appears after the maneuver.

val range

Distance after the instruction point during which it is considered that the user is in the instruction's operation zone.

val extraInstructionInfo

Information specific for the certain type of instruction.

RouteLane

Structure describing one traffic lane.

RouteLane(
routeManeuver: RouteLaneManeuver = RouteLaneManeuver.UNDEFINED,
maneuvers: EnumSet<RouteLaneManeuver>,
speedLimit: Float = 0.0f,
prohibited: Boolean = false,
onlyPublicTransport: Boolean = false
)

Structure describing one traffic lane.

Parameters

routeManeuver

maneuvers

speedLimit

prohibited

onlyPublicTransport

Properties

val routeManeuver

Maneuver that must be performed to move along the route.

val maneuvers

Permissible maneuvers on the lane.

val speedLimit

Maximum allowed speed on the lane m/s. 0 - speed limit unknown.

val prohibited

Traveling on the lane is prohibited.

val onlyPublicTransport

Public transport lane.

RouteLaneSign

Description of traffic lanes.

RouteLaneSign(
lanes: List<RouteLane>,
signStartPoint: RoutePoint?,
signPoint: RoutePoint?,
signEndPoint: RoutePoint?
)

Description of traffic lanes.

Parameters

lanes

signStartPoint

signPoint

signEndPoint

Properties

val lanes

Car lanes on a road section. Ordered from the edge to middle of roadgeway.

If the number of lanes is unknown, or there is one lane on the road in the direction of the route, this array is empty.

val signStartPoint

Point on the route where the operation of the sign regulating lane traffic begins. null if the position of the sign operation start is unknown.

val signPoint

Point on the route where the sign regulating lane traffic is placed. null if the position of the sign is unknown.

val signEndPoint

Point on the route where the operation of the sign regulating lane traffic ends. null if the position the sign operation end is unknown.

RouteLevelInfo

Information about the floor of the building corresponding to the route section.

RouteLevelInfo(
beginId: LevelId?,
endId: LevelId?,
name: String
)

Information about the floor of the building corresponding to the route section.

Parameters

beginId

endId

name

Properties

val beginId

Identifier of the floor plan at the starting point of the route segment. None if the point is not in a building.

val endId

Identifier of the floor plan at the finish point of the route segment. None if the point is not in a building.

val name

Name of the floor. Empty if the route segment connects different floors.

RouteLevelInfoRouteLongAttribute

Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

Methods
fun entry(point: RoutePoint): RouteLevelInfoRouteLongEntry?

Element that the specified point falls into.

Parameters
fun entries(begin: RoutePoint, end: RoutePoint): List<RouteLevelInfoRouteLongEntry>

Elements partially or completely covered by the begin,end range.

Parameters
Properties

val size

Amount of elements.

val isEmpty

Elements are missing.

val first

val last

val entries

RouteLevelInfoRouteLongEntry

Extended route element - segment and value on it.

RouteLevelInfoRouteLongEntry(
point: RoutePoint,
length: RouteDistance,
value: RouteLevelInfo
)

Extended route element - segment and value on it.

Parameters
Properties

RouteMapObject

Route object on the map.

RouteMapObject(
trafficRoute: TrafficRoute,
isActive: Boolean,
index: RouteIndex,
displayFlags: EnumSet?<RouteMapObjectDisplayFlag> = null,
calloutLabelFlags: EnumSet?<RouteMapObjectCalloutLabelFlag> = null,
calloutLabelDisplayMode: RouteMapObjectCalloutLabelDisplayMode = RouteMapObjectCalloutLabelDisplayMode.ABSOLUTE_VALUES,
permanentDisplayFlags: EnumSet?<RouteMapObjectPermanentDisplayFlag> = null
)
Parameters
Properties

val displayFlagsChannel

Set of flags to display various parts of the route. If not specified, display logic based on the activity status of the route is used.

var displayFlags

Set of flags to display various parts of the route. If not specified, display logic based on the activity status of the route is used.

val permanentDisplayFlagsChannel

Set of flags to prevent various parts of the route from being hidden from the map when updating the distance traveled along the route. If not specified, then when updating the distance traveled along the route, all route elements that fall into the undisplayed part of the route are hidden from the map.

var permanentDisplayFlags

Set of flags to prevent various parts of the route from being hidden from the map when updating the distance traveled along the route. If not specified, then when updating the distance traveled along the route, all route elements that fall into the undisplayed part of the route are hidden from the map.

val isActiveChannel

Route activity status.

var isActive

Route activity status.

val route

val routeIndex

Route index in the route editor.

val passedDistanceChannel

Distance traveled along the route.

var passedDistance

Distance traveled along the route.

val passedDistanceVisualizationChannel

var passedDistanceVisualization

val calloutPositionChannel

val calloutPosition

Route callout position.

val calloutLabelFlagsChannel

Set of flags for displaying the contents of the route callouts. If not specified, both the time of movement along the route and its length are displayed for the active route, and only the time of movement for inactive routes.

var calloutLabelFlags

Set of flags for displaying the contents of the route callouts. If not specified, both the time of movement along the route and its length are displayed for the active route, and only the time of movement for inactive routes.

val calloutLabelDisplayModeChannel

Mode for displaying values in route callouts. By default, values are displayed as absolute values.

var calloutLabelDisplayMode

Mode for displaying values in route callouts. By default, values are displayed as absolute values.

val lanesCalloutPositionsChannel

Lane callout positions. Only relevant positions are returned for the current distance traveled along the route, and only if the source where the object is placed is in navigation mode.

val lanesCalloutPositions

Lane callout positions. Only relevant positions are returned for the current distance traveled along the route, and only if the source where the object is placed is in navigation mode.

RouteMapObjectSource

Source of route objects on the map.

RouteMapObjectSource(context: Context, routeVisualizationType: RouteVisualizationType = RouteVisualizationType.NORMAL)

Function to create IRouteMapObjectSource.

Parameters

context

routeVisualizationType

Methods
fun addObject(item: RouteMapObject): Unit

Adds a route object to the source.

Parameters
fun removeObject(item: RouteMapObject): Unit

Removes the route object from the source.

Parameters
fun replaceObject(oldObject: RouteMapObject, newObject: RouteMapObject): Unit

Replacing one route object in the source with another. Unlike deleting and adding route objects through successive calls to remove_object and add_object, replacing one route to another is executed atomically - the old route is deleted and a new one appears on the map at the same time.

If the old route is not found in the source, then the call is equivalent to calling add_object.

Parameters

oldObject

newObject

Returns
fun clear(): Unit

Removes all route objects from the source.

Returns
fun replaceAllObjects(objects: List<RouteMapObject>): Unit

Replaces all objects previously added to the source with the passed list of objects. In contrast to deleting and adding objects one at a time, the replacement is performed atomically - old routes are deleted, and new routes appear on the map at the same time.

Parameters
Properties

val objects

Route objects.

val routeSourceSettings

Sets the display of objects in the source.

RouteMapSettings

Settings for displaying the route on the map.

Properties

var onRouteDisplayFlags

Flags for displaying the route on the map for the route navigation mode. By default, all flags are enabled except for the InactiveFloors flag.

var freeRoamDisplayFlags

Flags for displaying the route on the map for the free roam mode. The flags Cameras, Humps, Accidents, RoadWorks, Comments, RoadRestrictions, OtherEvents are enabled by default.

var onRoutePermanentDisplayFlags

Flags to prevent hiding various parts of the route from the map when updating the distance traveled along the route for route navigation mode. By default, all route elements are hidden.

var freeRoamPermanentDisplayFlags

Flags that prevent hiding various parts of the route from the map when updating the distance traveled along the route for free roam mode. By default, all route elements are hidden.

RouteOverviewControl

Control displayed in route view.

RouteOverviewControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)

Control displayed in route view.

Parameters

context

attrs

defStyle

Methods
fun attachToModel(model: Model): Unit
Parameters

model

Returns
fun onVisibilityChanged(changedView: View, visibility: Int): Unit
Parameters

changedView

visibility

Returns

RoutePoint

Point on the route, specified as the distance along the route relatively to the beginning of the route.

RoutePoint(distance: RouteDistance)

Point on the route, specified as the distance along the route relatively to the beginning of the route.

Parameters
Methods
operator fun compareTo(other: RoutePoint): Int
Parameters

other

Returns
operator fun plus(distance: RouteDistance): RoutePoint
Parameters
operator fun minus(distance: RouteDistance): RoutePoint
Parameters
operator fun minus(other: RoutePoint): RouteDistance
Parameters
Properties

val distance

RoutePointMapObject

Feature that is part of a route on the map (for example, the starting or the finish point of a route).

Properties

val route

Route, the part of which the given feature represents.

val routeIndex

Route index.

val kind

Route feature type.

val routePoint

Position on the route corresponding to the given feature.

val pointChannel

Geographic coordinates at which this feature is located.

var point

Geographic coordinates at which this feature is located.

RouteSearchOptions

Route search options.

RouteSearchOptions(bicycle: BicycleRouteSearchOptions)
Parameters
RouteSearchOptions(car: CarRouteSearchOptions)
Parameters
RouteSearchOptions(pedestrian: PedestrianRouteSearchOptions)
Parameters
RouteSearchOptions(publicTransport: PublicTransportRouteSearchOptions)
Parameters
RouteSearchOptions(scooter: ScooterRouteSearchOptions)
Parameters
RouteSearchOptions(taxi: TaxiRouteSearchOptions)
Parameters
RouteSearchOptions(truck: TruckRouteSearchOptions)
Parameters
Methods
fun match(
bicycle: Function1,
car: Function1,
pedestrian: Function1,
publicTransport: Function1,
scooter: Function1,
taxi: Function1,
truck: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
Properties

val isBicycle

val asBicycle

val isCar

val asCar

val isPedestrian

val asPedestrian

val isPublicTransport

val asPublicTransport

val isScooter

val asScooter

val isTaxi

val asTaxi

val isTruck

val asTruck

val value

RouteSearchPoint

Description of the points by which the route is built.

RouteSearchPoint(
coordinates: GeoPoint,
course: Bearing? = null,
objectId: DgisObjectId = DgisObjectId(objectId = 0, entranceId = 0),
levelId: LevelId? = null
)

Description of the points by which the route is built.

Parameters

coordinates

course

objectId

levelId

Properties

val coordinates

Coordinates to build a route through.

val course

Direction in which the point should be passed.

val objectId

ID of the object to which the pedestrian part of the route is built.

val levelId

Floor plan identifier (for pedestrian routes).

RouteSourceSettings

Route source settings.

Methods
fun getLargeScaleMergeDistanceMeters(transportType: TransportType): Float

Minimum allowable distance in meters between successive maneuver arrows for a large scale. If the distance is less than the specified one, then the arrows are merged.

Parameters

transportType

Type of transport for which the distance is requested.

Returns
fun setLargeScaleMergeDistanceMeters(distance: Float, transportType: TransportType): Unit

Sets the minimum allowed distance in meters between successive maneuver arrows for large scale.

Parameters

distance

Distance in meters.

transportType

Type of transport for which the distance is set.

Returns
fun getSmallScaleMergeDistanceMeters(transportType: TransportType): Float

Minimum allowable distance in meters between successive maneuver arrows for a small scaling. If the distance is less than the specified one, the arrows are merged.

Parameters

transportType

Type of transport for which the distance is requested.

Returns
fun setSmallScaleMergeDistanceMeters(distance: Float, transportType: TransportType): Unit

Sets the minimum allowable distance in meters between successive maneuver arrows for small scaling.

Parameters

distance

Distance in meters.

transportType

Type of transport for which the distance is set.

Returns
fun getLargeScaleCrossroadsOffsetMeters(transportType: TransportType): Float

Offset in meters from the intersection point to the start and end of the large scale maneuver arrow.

Parameters

transportType

Type of transport for which the offset is requested.

Returns
fun setLargeScaleCrossroadsOffsetMeters(offset: Float, transportType: TransportType): Unit

Sets the offset in meters from the intersection point to the start and end of the maneuver arrow for the large scale. Allows you to set the size of the maneuver arrow.

Parameters

offset

Offset in meters.

transportType

Transport type for which the offset is set.

Returns
fun getSmallScaleCrossroadsOffsetMeters(transportType: TransportType): Float

Offset from the intersection point to the start and end of the maneuver arrow for the small scale.

Parameters

transportType

Type of transport for which the offset is requested.

Returns
fun setSmallScaleCrossroadsOffsetMeters(offset: Float, transportType: TransportType): Unit

Sets the offset from the intersection point to the start and end of the maneuver arrow for the small scale. Allows you to set the size of the maneuver arrow.

Parameters

offset

Offset in meters.

transportType

Transport type for which the offset is set.

Returns
Properties

var largeScaleRingroadOffsetMeters

Offset from the roundabout exit point to the start and end of the maneuver arrow for large scale. Allows you to set the size of the maneuver arrow.

var smallScaleRingroadOffsetMeters

Offset from the roundabout exit point to the beginning and end of the maneuver arrow for small scale. Allows you to set the size of the maneuver arrow.

var calloutVisualizationMode

Mode for displaying callouts with time and route length.

RubricId

Identifier of the rubric.

RubricId(value: Long = 0)

Identifier of the rubric.

Parameters

value

Properties

val value

ScaleMapEvent

Map scale change event.

ScaleMapEvent(zoomDelta: Float, scalingCenter: ScreenPoint? = null)

Zoom event constructor.

Parameters

zoomDelta

Value by which the current zoom value changes.

scalingCenter

Point on the screen around which the map is scaled. If no point is given, then scaling is relative to the map's position point.

Properties

val zoomDelta

Value by which the current zoom value changes.

val scalingCenter

Point on the screen around which the map is scaled.

ScalingSettings

ScalingSettings(scaleRatioThreshold: Float, scaleRatioThresholdInRotation: Float)
Parameters

scaleRatioThreshold

scaleRatioThresholdInRotation

Properties

val scaleRatioThreshold

Scaling factor threshold at which a scaling event is sent. Used if rotation is inactive. The multiplier must be out of bounds (1 / scale_ratio_threshold, scale_ratio_threshold).

val scaleRatioThresholdInRotation

Scaling factor threshold at which scaling messages is sent. Used if rotation is active. The multiplier must be out of bounds (1 / scale_ratio_threshold_in_rotation, scale_ratio_threshold_in_rotation).

Schedule

Traffic event schedule.

Schedule(
startTime: TimePoint?,
finishTime: TimePoint?,
weekTimeIntervals: List<WeekTimeInterval>
)

Traffic event schedule.

Parameters

startTime

finishTime

weekTimeIntervals

Properties

val startTime

Action start time. Missing if unknown.

val finishTime

Action start time. Missing if unknown.

val weekTimeIntervals

Work intervals within a week.

Intervals are ordered by time.

The first interval can start from last week.

ScooterBriefRouteInfo

Basic information about the scooter route.

ScooterBriefRouteInfo(length: RouteDistance, landmark: String)

Basic information about the scooter route.

Parameters

length

landmark

Properties

val length

Route length.

val landmark

Landmark.

ScooterInstructionCrossroad

Description of maneuvers when passing through an intersection or a pedestrian crossing.

ScooterInstructionCrossroad(landmark: ScooterInstructionCrossroadLandmark = ScooterInstructionCrossroadLandmark.NONE, maneuvers: List<ScooterInstructionCrossroadManeuver>)

Description of maneuvers when passing through an intersection or a pedestrian crossing.

Parameters
Properties

val landmark

val maneuvers

Chain of consecutive maneuvers.

ScooterInstructionCrossroadManeuver

ScooterInstructionCrossroadManeuver(direction: ScooterInstructionCrossroadManeuverDirection = ScooterInstructionCrossroadManeuverDirection.STRAIGHT, turnAngle: Int = 0)
Parameters
Properties

val direction

val turnAngle

Angle of turn in degrees -180,180.

ScooterInstructionFinish

End of the scooter part of the route.

ScooterInstructionFinish()

End of the scooter part of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

ScooterInstructionStart

Beginning of the scooter part of the route.

ScooterInstructionStart()

Beginning of the scooter part of the route.

Methods
fun toString(): String
Returns
fun equals(other: Any?): Boolean
Parameters

other

Returns
fun hashCode(): Int
Returns

ScooterRouteSearchOptions

Scooter route search options.

ScooterRouteSearchOptions(
avoidCarRoads: Boolean = true,
avoidStairways: Boolean = true,
avoidUnderpassesAndOverpasses: Boolean = true,
excludedAreas: List<ExcludedArea> = listOf()
)

Scooter route search options.

Parameters

avoidCarRoads

avoidStairways

avoidUnderpassesAndOverpasses

excludedAreas

Properties

val avoidCarRoads

Avoid highways.

val avoidStairways

Avoid stairways.

val avoidUnderpassesAndOverpasses

Avoid underpasses and overpasses.

val excludedAreas

Excluded areas (not more than 25).

ScreenDistance

Distance between objects on the screen in millimeters.

Cannot be negative.

ScreenDistance(value: Float = 0.0f)

Distance between objects on the screen in millimeters.

Cannot be negative.

Parameters

value

Properties

val value

ScreenPoint

Point in screen coordinates.

Directions of axes: x - rightwards, y - downwards. (0.0, 0.0) - the upper-left corner of the upper-left pixel. The integer part of the coordinate is the pixel number, the fractional part is the relative position within the pixel.

ScreenPoint(x: Float = 0.0f, y: Float = 0.0f)

Point in screen coordinates.

Directions of axes: x - rightwards, y - downwards. (0.0, 0.0) - the upper-left corner of the upper-left pixel. The integer part of the coordinate is the pixel number, the fractional part is the relative position within the pixel.

Parameters
Properties

ScreenShift

Horizontal and vertical shift of the map in the coordinate space of the screen.

Positive shift direction: dx - to the right, dy - down.

ScreenShift(dx: Float = 0.0f, dy: Float = 0.0f)

Horizontal and vertical shift of the map in the coordinate space of the screen.

Positive shift direction: dx - to the right, dy - down.

Parameters
Properties

val dx

val dy

ScreenSize

Size in pixels.

ScreenSize(width: Int = 0, height: Int = 0)

Size in pixels.

Parameters

width

height

Properties

val width

val height

SearchLayout

UI control that provides a search bar and displays search results.

Extends: android.widget.LinearLayout
SearchLayout(context: Context)
Parameters

context

SearchLayout(context: Context, attrs: AttributeSet)
Parameters
SearchLayout(context: Context, options: SearchOptions)
Parameters

context

options

Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
fun addSearchViewCallback(callback: SearchViewCallback): Unit

Adds SearchViewCallback to respond to different states and work results of the search and the suggester.

Parameters

callback

Returns
fun configureSearchEngine(block: Function1): Unit

Configures the work of the search and the suggester. Methods of the SearchViewConfigurator interface are available inside the block.

Parameters
fun hideResults(): Unit

Hides the UI of the search results and leaves only the search string. Method works only for the current query, when it is updated and new results appear, the output will be displayed again.

Returns

SearchManager

Search engine. Main entry point for the directory API.

Methods
fun suggest(query: SuggestQuery): Future<SuggestResult>

Gets suggestions matching the given query.

Parameters

query

Returns
Future<SuggestResult>

Future that resolves to a non-null pointer to the result of suggestion or exceptional future if an error occurred while getting suggestions.

fun search(query: SearchQuery): Future<SearchResult>

Gets directory objects matching the given query.

Parameters

query

Returns
Future<SearchResult>

Future that resolves to a non-null pointer to the search result or exceptional future if an error occurred while getting the search results.

fun searchById(id: String): Future<DirectoryObject?>

Gets the directory object by string identifier.

Parameters

id

Returns
Future<DirectoryObject?>

Future that resolves to a pointer to a reference object. If the object is not found, a null pointer is returned.

fun searchByDirectoryObjectId(objectId: DgisObjectId): Future<DirectoryObject?>

Gets the directory object by identifier.

Parameters

objectId

Returns
Future<DirectoryObject?>

Future that resolves to a pointer to a reference object. If the object is not found, a null pointer is returned.

@JvmStatic
fun createOnlineManager(context: Context): SearchManager

Creates an online search engine.

Parameters

context

Returns
@JvmStatic
fun createOfflineManager(context: Context): SearchManager

Creates a search engine that works with preloaded data.

Parameters

context

Returns
@JvmStatic
fun createSmartManager(context: Context): SearchManager

Creates a search engine that works online or with preloaded data depending on the presence of Internet connection.

Parameters

context

Returns

SearchOptions

Options for creating SearchLayout.

SearchOptions(
searchType: SearchType = SearchType.defaultSearchType,
pageSize: Int = defaultPageSize,
sortingType: SortingType = SortingType.BY_RELEVANCE,
suggestorType: SuggestorType = SuggestorType.OBJECT
)

Options for creating SearchLayout.

Parameters

searchType

pageSize

sortingType

suggestorType

Properties

val searchType

Search engine type. Possible values ​​depend on the SDK delivery type. See SearchType for details. The default value depends on the SDK delivery type.

val pageSize

Limit on the number of hints in suggest and of search results. Valid values ​​range from 1 to 50. Default: 10.

val sortingType

Search results sorting type. Default: SortingType.BY_RELEVANCE.

val suggestorType

Suggester type. Default: SuggestorType.GENERAL

SearchQuery

Search query.

SearchQueryBuilder

Search query builder. The search is performed on the global index and local segment indexes, where a segment is a subdivision of the global map. The process of selecting segments for search is done as follows (in descending priority order):

  • If an area is explicitly specified as a polygon in the request (spatial_restriction), it is taken into account first. The methods with lower priority are disabled, but used to consider distances in the search relevancy.
  • When specifying a rectangular area of interest (bounding_rect), the search is performed in its neighbourhood.
  • If no higher-priority parameters are specified, the user position is taken into account.
  • This condition is not working yet.

  • When mentioning a widely known object (city, region, or other toponym) in the search query, the segment that contains the point of the found object from the global index is added to the search.
  • If nothing from the above is specified, the search is performed on the global index.
  • Methods
    fun setSpatialRestriction(spatialRestriction: List?<GeoPoint>): SearchQueryBuilder

    Sets the search area limit in the form of a polygon. The first and the last points of the polygon do not have to match.

    No limit by default.

    Parameters

    spatialRestriction

    Returns
    fun setAreaOfInterest(rect: GeoRect?): SearchQueryBuilder

    Sets a rectangular region of interest in geographic coordinates. A typical value is visible_rect from ICamera - the enclosing rectangle of the viewport.

    Parameters
    fun setAllowedResultTypes(allowedResultTypes: List<ObjectType>): SearchQueryBuilder

    Sets the object types allowed in the query result.

    By default, all types except Route are allowed.

    Parameters

    allowedResultTypes

    Returns
    fun setPageSize(pageSize: Int): SearchQueryBuilder

    Sets the preferred number of elements on the results page. Valid values are 1;50

    . The default value is 10.

    Parameters

    pageSize

    Returns
    fun setDirectoryFilter(filter: DirectoryFilter): SearchQueryBuilder

    Sets filtering for the search query.

    Parameters
    fun setSortingType(sortingType: SortingType): SearchQueryBuilder

    Sets sorting for the search query.

    Parameters
    fun build(): SearchQuery

    Creates a search query.

    @JvmStatic
    fun fromQueryText(queryText: String): SearchQueryBuilder

    Starts building a text search query with the specified text.

    Parameters

    queryText

    Returns
    @JvmStatic
    fun fromRubricIds(rubricIds: List<RubricId>): SearchQueryBuilder

    Starts building a search query based on the rubric identifiers.

    Parameters
    @JvmStatic
    fun fromQueryTextAndRubricIds(queryText: String, rubricIds: List<RubricId>): SearchQueryBuilder

    Starts building a text search query with filtering by rubric identifiers.

    Parameters
    @JvmStatic
    fun fromQuery(query: SearchQuery): SearchQueryBuilder

    Starts building a query based on #query to change some of the parameters.

    The original #query remains unchanged.

    Parameters

    SearchResult

    Result of the search engine work.

    Methods
    fun markerTitles(objectIds: List<DgisObjectId>): List<Future<List<UIMarkerInfo>>>

    Gets texts of markers by their IDs. A vector is returned, because no more than 50 IDs per request can be sent to the cloud.

    Parameters

    objectIds

    Marker identifiers.

    Returns
    Properties

    val firstPage

    First page of search results.

    val representativeArea

    Rectangular area suitable for displaying search results.

    val itemMarkerInfos

    Asynchronous receiving of markers.

    val searchResultType

    Search query type.

    val dynamicFilters

    Dynamic filters for this query.

    val actionWidgets

    Quick filter widgets.

    These are the so-called “quick filters” - filters that are most interesting to the user. There are no more than 5.

    val mainWidgets

    Filter widgets.

    val autoUseFirstResult

    Indicates that the first result is suitable for direct use.

    SegmentGeoPoint

    Describes a geographic point on a segment and the direction of the segment. The geometry of the route is a sequence of points that form segments pairwise. In all functions that work with the geometry of the route, it is assumed that the first point from the pair forming the segment belongs to this segment, and the second one does not: [point_1, point_2),[point_2, point_3),...,[point_n-1, point_n)point_last. The last point forms a zero-length segment with itself. Thus, each point on the route belongs to exactly one segment. The direction of the point_last is not defined.

    SegmentGeoPoint(point: GeoPoint, bearing: Bearing)

    Describes a geographic point on a segment and the direction of the segment. The geometry of the route is a sequence of points that form segments pairwise. In all functions that work with the geometry of the route, it is assumed that the first point from the pair forming the segment belongs to this segment, and the second one does not: [point_1, point_2),[point_2, point_3),...,[point_n-1, point_n)point_last. The last point forms a zero-length segment with itself. Thus, each point on the route belongs to exactly one segment. The direction of the point_last is not defined.

    Parameters

    point

    bearing

    Properties

    val point

    val bearing

    SettlementRouteLongAttribute

    Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

    Methods
    fun entry(point: RoutePoint): SettlementRouteLongEntry?

    Element that the specified point falls into.

    Parameters
    fun entries(begin: RoutePoint, end: RoutePoint): List<SettlementRouteLongEntry>

    Elements partially or completely covered by the begin,end range.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    val last

    val entries

    SettlementRouteLongEntry

    Extended route element - segment and value on it.

    SettlementRouteLongEntry(
    point: RoutePoint,
    length: RouteDistance,
    value: Settlement
    )

    Extended route element - segment and value on it.

    Parameters
    Properties

    val point

    val length

    val value

    ShowRouteControl

    A control that controls the map flyover to the route.

    ShowRouteControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    A control that controls the map flyover to the route.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToMap(map: Map): Unit
    Parameters

    map

    Returns
    fun detachFromMap(map: Map): Unit
    Parameters

    map

    Returns
    fun showRoute(geometry: Geometry, styleZoomToTiltRelation: StyleZoomToTiltRelation?): Unit
    Parameters

    geometry

    styleZoomToTiltRelation

    Returns
    fun cancelRouteOverview(): Unit
    Returns
    fun setRouteOverview(value: Boolean): Unit
    Parameters

    value

    Returns
    Properties

    val isRouteOverviewChannel

    val isRouteOverview

    SimpleCheckableItem

    Simple checkable element from CheckableItemsGroup.

    Properties

    val text

    Gets a text description of an element.

    val values

    Gets a list of values ​​by which filtering occurs. Usually one value.

    var isChecked

    Gets the state of an element.

    SimpleClusterObject

    Cluster of simple marker objects.

    Methods
    fun setIcon(icon: Image?): Unit

    Installs the cluster icon.

    Parameters

    icon

    Returns
    Properties

    val position

    Gets the position of the cluster on the map.

    val objectCount

    Gets the number of markers in the cluster.

    val objects

    Gets a list of markers in the cluster.

    var anchor

    Gets and sets the anchor point of the cluster icon.

    var iconOpacity

    Gets and sets the transparency of the cluster icon.

    var text

    Gets and sets cluster caption.

    var textStyle

    Gets and sets the cluster caption style.

    var iconWidth

    Gets and sets the target cluster width used for scaling.

    var iconMapDirection

    Gets and sets the rotation angle of the cluster on the map relative to the north direction, clockwise.

    var animatedAppearance

    Gets and sets the cluster appearance animation flag.

    var zIndex

    Gets and sets the rendering level of an object.

    SimpleClusterOptions

    Marker settings for a cluster of simple marker objects.

    SimpleClusterOptions(
    icon: Image?,
    iconMapDirection: MapDirection? = null,
    anchor: Anchor = Anchor(x = 0.5f, y = 0.5f),
    text: String? = null,
    textStyle: TextStyle? = null,
    iconOpacity: Opacity = Opacity(value = 1.0f),
    iconWidth: LogicalPixel = LogicalPixel(value = 0.0f),
    userData: Any? = null,
    zIndex: ZIndex = ZIndex(value = 0),
    animatedAppearance: Boolean = true,
    iconAnimationMode: AnimationMode = AnimationMode.NORMAL
    )

    Marker settings for a cluster of simple marker objects.

    Parameters

    icon

    iconMapDirection

    anchor

    text

    textStyle

    iconOpacity

    iconWidth

    userData

    zIndex

    animatedAppearance

    iconAnimationMode

    Properties

    val icon

    val iconMapDirection

    val anchor

    val text

    val textStyle

    val iconOpacity

    val iconWidth

    Target width used for scaling.

    val userData

    val zIndex

    Object rendering level.

    val animatedAppearance

    Whether to animate appearance.

    val iconAnimationMode

    Animation mode.

    SimpleMapObject

    Object on the map for which visibility can be set.

    Properties

    var isVisible

    var zIndex

    Gets the rendering level of an object.

    var levelId

    Gets the binding of an object to a floor in a building.

    val bounds

    Rectangle of a minimum size containing geometry.

    SimulationAutoWithOverSpeed

    Structure for setting the motion mode, taking into account the maximum speed on the edge of the route.

    SimulationAutoWithOverSpeed(overSpeed: Double = 0.0)

    Structure for setting the motion mode, taking into account the maximum speed on the edge of the route.

    Parameters

    overSpeed

    Properties

    val overSpeed

    Used speed in m/s. Only values >= 0 are valid.

    SimulationConstantSpeed

    Structure for setting the motion mode at a constant speed

    SimulationConstantSpeed(speed: Double = 0.0)

    Structure for setting the motion mode at a constant speed

    Parameters

    speed

    Properties

    val speed

    Speed in m/s. Only values >= 0 are valid.

    SimulationSettings

    Settings for simulation of navigating the route.

    Properties

    var speedMode

    Simulator operation mode.

    SimulationSpeedMode

    SimulationSpeedMode(speed: SimulationConstantSpeed)
    Parameters
    SimulationSpeedMode(overSpeed: SimulationAutoWithOverSpeed)
    Parameters
    Methods
    fun match(speed: Function1, overSpeed: Function1): T
    Parameters
    fun toString(): String
    Returns
    fun hashCode(): Int
    Returns
    fun equals(other: Any?): Boolean
    Parameters

    other

    Returns
    Properties

    val isSpeed

    val asSpeed

    val isOverSpeed

    val asOverSpeed

    val value

    SnapToMapLayout

    Layout that allows you to bind the View to a point on the map.

    Extends: android.view.ViewGroup
    SnapToMapLayout(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Layout that allows you to bind the View to a point on the map.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun onAttachedToWindow(): Unit
    Returns
    fun onDetachedFromWindow(): Unit
    Returns
    fun onLayout(
    changed: Boolean,
    left: Int,
    top: Int,
    right: Int,
    bottom: Int
    ): Unit
    Parameters

    changed

    left

    top

    right

    bottom

    Returns
    fun checkLayoutParams(p: LayoutParams?): Boolean
    Parameters
    fun generateLayoutParams(attrs: AttributeSet?): LayoutParams?
    Parameters
    fun generateLayoutParams(p: LayoutParams?): LayoutParams?
    Parameters

    SortingFilter

    Sorting filter.

    SortingFilter(tagName: String, displayName: String)

    Sorting filter.

    Parameters

    tagName

    displayName

    Properties

    val tagName

    Filter tag.

    val displayName

    The name of the filter to display.

    Depends on the search language. Not all names can be translated.

    SoundNotificationSettings

    Settings for sound alerts in the navigator. By default, all values of the alert sound categories are enabled. The user can change the values while working with the navigator.

    Properties

    var enabledSoundCategories

    Set of flags for sound notifications.

    var notificationVolume

    var mute

    Source

    Data source for the map.

    This can be a source of traffic data, routes, markers, arbitrary geometric or other map objects. Any map object can have its own properties. The object properties affect which rules and display parameters, described in map styles, are applied to it. Style is a set of parameters and rules for displaying map objects, obtained through the style editor and used for rendering the map.

    The object properties can be set:

    • directly for the object;
    • for the data source (all objects added to the source obtain these properties);
    • for the map (all objects added to the map obtain these properties);
    • for the style (all objects to which the style is applied obtain these properties). The list is presented in descending order of priority for applying properties. Even if no data sources are added to the map, the style and map properties still affect the map, since there are special displayable objects such as background.

    SpecialSpace

    Special parking spot.

    SpecialSpace(
    type: SpecialSpaceType,
    name: String,
    count: String?
    )

    Special parking spot.

    Parameters
    Properties

    val type

    val name

    Localized name of a special place.

    val count

    Number of places of this type in the parking lot.

    SpeedInfoControl

    SpeedInfoControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )
    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToModel(model: Model): Unit
    Parameters

    model

    Returns

    SpeedRange

    Speed interval. Speed is specified in meters per second.

    SpeedRange(minSpeed: Double = 0.0, maxSpeed: Double = 0.0)

    Speed interval. Speed is specified in meters per second.

    Parameters

    minSpeed

    maxSpeed

    Properties

    val minSpeed

    val maxSpeed

    SpeedRangeToStyleZoom

    Mapping of a speed interval to a style zoom.

    SpeedRangeToStyleZoom(
    range: SpeedRange,
    minDistanceToManeuver: RouteDistance,
    maxDistanceToManeuver: RouteDistance,
    styleZoom: StyleZoom
    )

    Mapping of a speed interval to a style zoom.

    Parameters

    range

    minDistanceToManeuver

    maxDistanceToManeuver

    styleZoom

    Properties

    val range

    Speed interval.

    val minDistanceToManeuver

    Minimum distance before a maneuver at which the logic of smooth increase of the zoom level must be enabled.

    val maxDistanceToManeuver

    Maximum distance after a maneuver at which smooth decrease of the zoom level must end.

    val styleZoom

    Style zoom.

    StringRouteLongAttribute

    Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

    Methods
    fun entry(point: RoutePoint): StringRouteLongEntry?

    Element that the specified point falls into.

    Parameters
    fun entries(begin: RoutePoint, end: RoutePoint): List<StringRouteLongEntry>

    Elements partially or completely covered by the begin,end range.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    First element.

    val last

    val entries

    StringRouteLongEntry

    Extended route element - segment and value on it.

    StringRouteLongEntry(
    point: RoutePoint,
    length: RouteDistance,
    value: String
    )

    Extended route element - segment and value on it.

    Parameters
    Properties

    val point

    val length

    val value

    Style

    Style with a set of map object properties (see ISource).

    Properties

    val styleAttributes

    Gets default properties for objects that have the specified layer applied to them.

    StyleBuilder

    Style builder.

    StyleBuilder(context: Context)
    Parameters

    context

    Methods
    fun setStyleAttribute(name: String, value: AttributeValue): StyleBuilder
    Parameters
    fun getDefaultStyle(): Future<Style>

    Gets a preset style.

    fun loadStyle(file: File): Future<Style>

    Loads a custom style.

    Parameters

    StyleLayerId

    ID of the style layer.

    StyleLayerId(id: String)

    ID of the style layer.

    Parameters
    Properties

    val id

    StyleZoom

    Style zoom level.

    It is set in the style editor and differs from the usual zoom level in that for one StyleZoom the map scale is the same regardless of latitude. However, with Zoom < 9 or with latitude > 60 degrees StyleZoom == Zoom and map scale is different at different latitudes.

    StyleZoom cannot be negative.

    StyleZoom(value: Float = 0.0f)

    Style zoom level.

    It is set in the style editor and differs from the usual zoom level in that for one StyleZoom the map scale is the same regardless of latitude. However, with Zoom < 9 or with latitude > 60 degrees StyleZoom == Zoom and map scale is different at different latitudes.

    StyleZoom cannot be negative.

    Parameters

    value

    Properties

    val value

    StyleZoomFollowController

    Controller for following the style zoom level of the map.

    StyleZoomFollowController(animationDuration: Duration = Duration.ofMilliseconds(300))

    Creates a controller for following the style zoom level of the map.

    Parameters

    animationDuration

    Methods
    fun setStyleZoom(styleZoom: StyleZoom): Unit

    Sets a new value for the style zoom level.

    Parameters

    styleZoom

    Returns
    fun setStyleZoomRange(minStyleZoom: StyleZoom, maxStyleZoom: StyleZoom): Unit

    Sets the range of acceptable values for the style zoom level.

    Parameters

    minStyleZoom

    maxStyleZoom

    Returns

    Suggest

    Search suggestion.

    Properties

    val handler

    Suggestion selection handler.

    val suggestedType

    Suggestion type.

    val title

    Suggestion title.

    val subtitle

    Suggestion subtitle.

    SuggestHandler

    Suggestion selection handler.

    SuggestHandler(objectHandler: SuggestObjectHandler?)
    Parameters
    SuggestHandler(performSearchHandler: PerformSearchHandler?)
    Parameters

    performSearchHandler

    SuggestHandler(incompleteTextHandler: IncompleteTextHandler?)
    Parameters

    incompleteTextHandler

    Methods
    fun match(
    objectHandler: Function1,
    performSearchHandler: Function1,
    incompleteTextHandler: Function1
    ): T
    Parameters

    objectHandler

    performSearchHandler

    incompleteTextHandler

    Returns
    T
    fun toString(): String
    Returns
    fun hashCode(): Int
    Returns
    fun equals(other: Any?): Boolean
    Parameters

    other

    Returns
    Properties

    val isObjectHandler

    val asObjectHandler

    val isPerformSearchHandler

    val asPerformSearchHandler

    val isIncompleteTextHandler

    val asIncompleteTextHandler

    val value

    SuggestObjectHandler

    Specific object from a directory is suggested.

    Properties

    val item

    Suggested object.

    SuggestQuery

    Request a search suggestion.

    SuggestQueryBuilder

    Builder of queries to the suggestor.

    Methods
    fun setSpatialRestriction(spatialRestriction: List?<GeoPoint>): SuggestQueryBuilder

    Sets the search area limit in the form of a polygon. The first and the last points of the polygon do not have to match.

    No limit by default

    Parameters

    spatialRestriction

    Returns
    fun setAreaOfInterest(rect: GeoRect?): SuggestQueryBuilder

    Sets a rectangular region of interest in geographic coordinates. A typical value is visible_rect from ICamera - the enclosing rectangle of the viewport.

    Parameters
    fun setAllowedResultTypes(allowedResultTypes: List<SuggestedType>): SuggestQueryBuilder

    Sets the object types allowed in the query result.

    By default, all types except Route are allowed.

    Parameters
    fun setSuggestorType(suggestorType: SuggestorType): SuggestQueryBuilder

    Sets the type of suggester.

    The default value is #SuggestorType::General.

    Parameters
    fun setLimit(limit: Int): SuggestQueryBuilder

    Sets the desired number of suggestions. Valid values are from the range 1;50.

    The default value is 10.

    Parameters
    fun build(): SuggestQuery

    Creates a request to the suggester.

    @JvmStatic
    fun fromQueryText(queryText: String): SuggestQueryBuilder

    Starts building a suggestion query for the given text and the area of interest.

    Parameters
    @JvmStatic
    fun fromQuery(query: SuggestQuery): SuggestQueryBuilder

    Starts building a suggestion query based on #query to change some of the parameters.

    The original #query remains unchanged.

    Parameters

    SuggestResult

    Result of the suggester work.

    Properties

    val suggests

    Set of suggestions.

    The set is empty if no matching suggestions are found.

    SystemCertificate

    System SSL certificate.

    SystemCertificate()

    System SSL certificate.

    Methods
    fun toString(): String
    Returns
    fun equals(other: Any?): Boolean
    Parameters

    other

    Returns
    fun hashCode(): Int
    Returns

    SystemMemoryManager

    Interface of the system memory management.

    Methods
    fun reduceMemoryUsage(): Unit

    Memory usage decrease by clearing various caches and buffers.

    Returns

    TaxiRouteSearchOptions

    Taxi route search options.

    TaxiRouteSearchOptions(car: CarRouteSearchOptions)

    Taxi route search options.

    Parameters
    Properties

    val car

    Route search options common to other car routes.

    TerritoriesAlongRouteProvider

    Interface for finding a route based on traffic data.

    Methods
    fun getTerritories(route: Route): Future<List<Territory>>

    Returns the minimum required list of offline territories in route order.

    Parameters

    route

    Returns
    Future<List<Territory>>

    future with array of territories.

    Territory

    Territory. Data in 2GIS is divided into some indivisible units called segments. For more convenient and flexible work with data, not segments themselves are used for updating, but their sets, called territories. Sets of segments in two territories can intersect, including that one territory may be entirely nested within another.

    TerritoryManager

    Interface for interacting with the list of territories: Subscriptions to changes in information about territories; Search for territories by coordinates and geometries; Subscriptions to changes in information about the overall progress of installing/updating territories; Pausing and resuming the process of installing/updating territories.

    Methods
    fun findByPoint(geoPoint: GeoPoint): List<Territory>

    Searches for territories that own the given point. Throws an exception if incorrect point coordinates are passed. Returns an empty list if:

    • Point coordinates are outside the projection.
    • An internal error occurred during the processing of a territories list.
    Parameters
    fun findByRect(rect: GeoRect): List<Territory>

    Searches for territories that own the given point. Throws an exception if an unsupported geometry is used. Returns an empty list if the geometry is outside of the project

    Parameters
    fun pause(): Unit

    Suspends all running installations or updates of territories.

    Returns
    fun resume(): Unit

    Resumes all suspended install or update operations.

    Returns
    Properties

    val territoriesChannel

    Channel with a list of all known territories. Updated when information about at least one of the territories or the list composition changes. The channel's contents is a subset of the general package list obtained from IPackageManager::packages. To avoid desynchronization of package descriptions, do not use data obtained simultaneously from multiple channels containing subsets of the general package list.

    val territories

    Channel with a list of all known territories. Updated when information about at least one of the territories or the list composition changes. The channel's contents is a subset of the general package list obtained from IPackageManager::packages. To avoid desynchronization of package descriptions, do not use data obtained simultaneously from multiple channels containing subsets of the general package list.

    TextStyle

    Text appearance settings.

    TextStyle(
    fontSize: LogicalPixel = LogicalPixel(value = 8.0f),
    color: Color = Color(),
    strokeWidth: LogicalPixel = LogicalPixel(value = 0.34999999f),
    strokeColor: Color = Color(argb = 4294967295.toInt()),
    textPlacement: TextPlacement = TextPlacement.BOTTOM_CENTER,
    textOffset: LogicalPixel = LogicalPixel(value = 0.0f),
    fontName: String? = null
    )

    Text appearance settings.

    Parameters

    fontSize

    color

    strokeWidth

    strokeColor

    textPlacement

    textOffset

    fontName

    Properties

    val fontSize

    val color

    val strokeWidth

    val strokeColor

    val textPlacement

    val textOffset

    val fontName

    Tilt

    Tilt angle in degrees, where 0 is nadir (looking vertically down), 90 is horizon in front.

    Values in the range of 0 to 60 degrees are allowed. In cases where the camera position point is closer to the bottom of the screen, the value may be additionally reduced.

    Tilt(value: Float = 0.0f)

    Tilt angle in degrees, where 0 is nadir (looking vertically down), 90 is horizon in front.

    Values in the range of 0 to 60 degrees are allowed. In cases where the camera position point is closer to the bottom of the screen, the value may be additionally reduced.

    Parameters

    value

    Properties

    val value

    TiltFollowController

    Controller for following the tilt angle of the map.

    TiltFollowController(styleZoomToTilt: StyleZoomToTiltRelation)

    Creating a map angle tracking controller.

    Parameters

    styleZoomToTilt

    Dependence of the camera tilt angle on the style zoom level.

    TiltSettings

    TiltSettings(
    lenOnDegreeMm: Float,
    horizontalSwerveDeg: Float,
    verticalSwerveDeg: Float,
    thresholdMm: Float,
    maxParallelsDeviationDeg: Float
    )
    Parameters

    lenOnDegreeMm

    horizontalSwerveDeg

    verticalSwerveDeg

    thresholdMm

    maxParallelsDeviationDeg

    Properties

    val lenOnDegreeMm

    Distance, in mm, that you need to slide your fingers across the screen to change the camera angle by 1 degree. A negative value will invert the direction. A value of 0 is invalid.

    val horizontalSwerveDeg

    Maximum allowable deviation of the finger line from the horizon for a vertical swipe. In degrees.

    val verticalSwerveDeg

    Maximum allowable angle of deviation of the swipe direction from the vertical line. In degrees.

    val thresholdMm

    Weighted average point shift threshold, in millimeters, if the shift does not exceed the threshold, then the event is not sent.

    val maxParallelsDeviationDeg

    Maximum allowed angle between vectors, before reaching which the vectors are considered co-directional during the tilt gesture detection.

    TimePoint

    Class representing a point in time.

    Implements: kotlin.Comparable
    TimePoint(timeFromEpoch: Duration)

    Class representing a point in time.

    Parameters

    timeFromEpoch

    Methods
    operator fun plus(duration: Duration): TimePoint
    Parameters

    duration

    Returns
    operator fun minus(duration: Duration): TimePoint
    Parameters

    duration

    Returns
    operator fun minus(other: TimePoint): Duration
    Parameters

    other

    Returns
    fun compareTo(other: TimePoint): Int
    Parameters

    other

    Returns
    fun toString(): String
    Returns
    @JvmStatic
    fun ofEpochMilliseconds(milliseconds: Long): TimePoint
    Parameters

    milliseconds

    Returns
    @JvmStatic
    fun ofEpochSeconds(seconds: Long): TimePoint
    Parameters

    seconds

    Returns
    @JvmStatic
    fun ofEpochMinutes(minutes: Long): TimePoint
    Parameters

    minutes

    Returns
    @JvmStatic
    fun ofEpochHours(hours: Long): TimePoint
    Parameters

    hours

    Returns
    @JvmStatic
    fun ofEpochDays(days: Long): TimePoint
    Parameters

    days

    Returns
    @JvmStatic
    fun now(): TimePoint

    Time elapsed since 00:00:00 UTC, January 1, 1970 (Unix time).

    Returns
    Properties

    val timeFromEpoch

    val EPOCH

    val INFINITY

    TradeLicense

    Organization license.

    TradeLicense(
    type: String,
    license: String,
    legalForm: String,
    endDate: String
    )

    Organization license.

    Parameters

    type

    license

    legalForm

    endDate

    Properties

    val type

    Type.

    val license

    Number of the trade license.

    Form of business ownership.

    val endDate

    Expiration date of the license.

    Traffic

    Description of the traffic data.

    Properties

    val durations

    Duration of movement on route sections. 0 - duration of movement on a route section is unknown.

    val speedColors

    Color representation of vehicle speeds on the route (extended attribute).

    TrafficAndParkingControl

    Container with controls for displaying parking lots and traffic jams.

    TrafficAndParkingControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Container with controls for displaying parking lots and traffic jams.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToMap(map: Map): Unit
    Parameters

    map

    Returns
    fun detachFromMap(map: Map): Unit
    Parameters

    map

    Returns

    TrafficCollector

    Interface for managing traffic information collection service.

    This interface is thread-safe.

    TrafficCollector(context: Context)

    Function of creating a service for collecting information about traffic. The service for collecting information about traffic analyzes the state of traffic on the road where the user is moving and sends the results of the analysis to the server in anonymized form .

    Parameters

    context

    Context - the environment required for the SDK to work.

    Properties

    var trafficCollectingAllowed

    Function of determining the state of allowing / prohibiting sending information about transport traffic to the server.

    TrafficControl

    Traffic jam visibility control. It is a button that switches the visibility of traffic jams on the map. The control visually displays the traffic jam score, which also affects color: green - low level of traffic, yellow - medium, red - high. The appearance of the control changes depending on the state, see TrafficControlStatus for details.

    TrafficControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Traffic jam visibility control. It is a button that switches the visibility of traffic jams on the map. The control visually displays the traffic jam score, which also affects color: green - low level of traffic, yellow - medium, red - high. The appearance of the control changes depending on the state, see TrafficControlStatus for details.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToMap(map: Map): Unit
    Parameters

    map

    Returns
    fun detachFromMap(map: Map): Unit
    Parameters

    map

    Returns

    TrafficControl

    Traffic jam visibility control. It is a button that switches the visibility of traffic jams on the map. The control visually displays the traffic jam score, which also affects color: green - low level of traffic, yellow - medium, red - high. The appearance of the control changes depending on the state, see TrafficControlStatus for details.

    TrafficControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Traffic jam visibility control. It is a button that switches the visibility of traffic jams on the map. The control visually displays the traffic jam score, which also affects color: green - low level of traffic, yellow - medium, red - high. The appearance of the control changes depending on the state, see TrafficControlStatus for details.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToMap(map: Map): Unit
    Parameters

    map

    Returns
    fun detachFromMap(map: Map): Unit
    Parameters

    map

    Returns
    fun processClick(): Unit
    Returns

    TrafficControlModel

    Model of a traffic jam visibility control.

    This interface is thread-safe.

    TrafficControlModel(map: Map)

    Function of creating a model of a traffic jam visibility control.

    Parameters

    map

    Map.

    Methods
    fun onClicked(): Unit

    Action when clicking on the control. Toggles the visibility of traffic jams on the map.

    Returns
    Properties

    val stateChannel

    val state

    Control status.

    TrafficControlState

    Traffic control status.

    TrafficControlState(status: TrafficControlStatus = TrafficControlStatus.HIDDEN, score: Int?)

    Traffic control status.

    Parameters
    Properties

    val status

    Status, depending on which the appearance of the control changes.

    val score

    Traffic jam score. Displayed as an inscription on the control. If absent, a stub icon is displayed.

    TrafficLineControl

    Control that displays the level of traffic jams along the route.

    TrafficLineControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Control that displays the level of traffic jams along the route.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToModel(model: Model): Unit
    Parameters

    model

    Returns
    Properties

    var pointObjectsPosition

    PointObjectsPosition

    TrafficLinePointObject

    TrafficLinePointObject(
    position: Float,
    type: Type,
    text: String? = null
    )
    Parameters

    position

    type

    Type

    text

    Properties

    val position

    val type

    Type

    val text

    TrafficLinePointObjectView

    Extends: android.widget.FrameLayout
    TrafficLinePointObjectView(
    context: Context,
    pointObject: TrafficLinePointObject,
    position: PointObjectsPosition
    )
    Parameters

    context

    pointObject

    position

    PointObjectsPosition
    Methods
    fun removeWithAnimation(): Unit
    Returns
    Properties

    var isRemoved

    val pointObject

    const ANIMATION_DURATION

    TrafficRoute

    Methods
    @JvmStatic
    fun fromNavigationState(navigationState: PackedNavigationState, context: Context): TrafficRoute

    Creates a route from a deserialized navigation state, adding objects contained in it to the database of traffic events (required to display events on the route on the map when it is impossible to receive events online).

    Parameters

    navigationState

    context

    Returns
    Properties

    val route

    Route.

    val traffic

    Traffic jam data.

    TrafficRouter

    Interface for finding a route based on traffic jam data.

    TrafficRouter(context: Context)
    Parameters

    context

    Methods
    fun findRoute(
    startPoint: RouteSearchPoint,
    finishPoint: RouteSearchPoint,
    routeSearchOptions: RouteSearchOptions,
    intermediatePoints: List<RouteSearchPoint> = listOf()
    ): Future<List<TrafficRoute>>

    Searches for a route with the given parameters.

    Parameters

    startPoint

    Starting point of the route.

    finishPoint

    Finish point of the route.

    routeSearchOptions

    Route search options.

    intermediatePoints

    Intermediate points to pass in the same order in which the points are given in the vector.

    Returns
    Future<List<TrafficRoute>>

    Future with a set of found routes, or throw a NativeException on failure.

    An empty route set is a valid result, meaning that a route matching the specified search criteria cannot be found.

    When searching for routes for freight transport, it is possible to return routes passing through the access zones for which passes were not provided, if it was not possible to route only through the access zones for which the passes were provided. To check if the list of passes is sufficient to pass a route, use the route_matches_truck_pass_zone_passes function.

    fun findBriefRouteInfos(searchPoints: List<BriefRouteInfoSearchPoints>, routeSearchOptions: RouteSearchOptions): Future<List<BriefRouteInfo?>>

    Searches for basic route information for a matching set of search points.

    Parameters

    searchPoints

    Set of points for finding basic information about the route.

    routeSearchOptions

    Route search options.

    Returns
    Future<List<BriefRouteInfo?>>

    Future with basic information about the set of routes corresponding to the set of search points, or throwing a NativeException on failure.

    If the basic information for any of the pairs of points is not found, the element at the corresponding index in the returned result is null.

    Properties

    val truckPassZonePasses

    Returns a list of all supported passes that allow truck traffic within the pass zones.

    TrafficScore

    Traffic score.

    TrafficScore(state: TrafficScoreState = TrafficScoreState.PENDING, value: Int?)

    Traffic score.

    Parameters
    Properties

    val state

    Value relevance.

    val value

    Value of the traffic score. Typically, values range from 1 to 10. An empty value if the information has not yet been received, is out of date, or is not available for the given location.

    TrafficScoreProvider

    Subscribtion to updates of the traffic jam score.

    This interface is thread-safe.

    TrafficScoreProvider(map: Map)
    Parameters

    map

    Map for which the area of visibility is tracked.

    TrafficScoreProvider(context: Context, point: GeoPoint)

    Function that creates an object for tracking the traffic score bubble for the given location.

    Parameters

    context

    Context - the environment required for the SDK to work.

    point

    Geopoint for which you need to get the traffic jam score.

    Properties

    val scoreChannel

    Current status and value of traffic jam score.

    val score

    Current status and value of traffic jam score.

    TrafficSource

    Interface of the class that controls the display of traffic jams on the map.

    TrafficSource(context: Context)
    Parameters

    context

    TrafficSpeedColorRouteLongAttribute

    Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

    Methods
    fun entry(point: RoutePoint): TrafficSpeedColorRouteLongEntry?

    Element that the specified point falls into.

    Parameters
    fun entries(begin: RoutePoint, end: RoutePoint): List<TrafficSpeedColorRouteLongEntry>

    Elements partially or completely covered by the begin,end range.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    val last

    val entries

    TrafficSpeedColorRouteLongEntry

    Extended route element - segment and value on it.

    TrafficSpeedColorRouteLongEntry(
    point: RoutePoint,
    length: RouteDistance,
    value: TrafficSpeedColor
    )

    Extended route element - segment and value on it.

    Parameters
    Properties

    TransportTypeRouteLongAttribute

    Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

    Methods
    fun entry(point: RoutePoint): TransportTypeRouteLongEntry?

    Element that the specified point falls into.

    Parameters
    fun entries(begin: RoutePoint, end: RoutePoint): List<TransportTypeRouteLongEntry>

    Elements partially or completely covered by the begin,end range.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    val last

    val entries

    TransportTypeRouteLongEntry

    Extended route element - segment and value on it.

    TransportTypeRouteLongEntry(
    point: RoutePoint,
    length: RouteDistance,
    value: TransportType
    )

    Extended route element - segment and value on it.

    Parameters
    Properties

    TruckPassZoneId

    Identifier of the pass zone for trucks. Value 0 means no pass zone.

    TruckPassZoneId(value: Int = 0)

    Identifier of the pass zone for trucks. Value 0 means no pass zone.

    Parameters

    value

    Properties

    val value

    TruckPassZoneIdRouteLongAttribute

    Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

    Methods
    fun entry(point: RoutePoint): TruckPassZoneIdRouteLongEntry?

    Element that the specified point falls into.

    Parameters
    fun entries(begin: RoutePoint, end: RoutePoint): List<TruckPassZoneIdRouteLongEntry>

    Elements partially or completely covered by the begin,end range.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    val last

    val entries

    TruckPassZoneIdRouteLongEntry

    Extended route element - segment and value on it.

    TruckPassZoneIdRouteLongEntry(
    point: RoutePoint,
    length: RouteDistance,
    value: TruckPassZoneId
    )

    Extended route element - segment and value on it.

    Parameters
    Properties

    TruckPassZonePass

    Pass allowing the movement of trucks in pass zones.

    TruckPassZonePass(
    id: TruckPassZonePassId,
    name: String,
    passZoneIds: Set<TruckPassZoneId>
    )

    Pass allowing the movement of trucks in pass zones.

    Parameters
    Properties

    val id

    val name

    Pass name.

    val passZoneIds

    Identifiers of the pass zones on which this pass allows movement.

    TruckPassZonePassId

    Identifier of the pass that allows the movement of trucks in pass zones.

    TruckPassZonePassId(value: Int = 0)

    Identifier of the pass that allows the movement of trucks in pass zones.

    Parameters

    value

    Properties

    val value

    TruckRouteSearchOptions

    Parameters for finding a truck route . When searching for a route, only filled-in parameters are taken into account.

    TruckRouteSearchOptions(
    car: CarRouteSearchOptions,
    truckLength: Int? = null,
    truckHeight: Int? = null,
    truckWidth: Int? = null,
    actualMass: Int? = null,
    maxPermittedMass: Int? = null,
    axleLoad: Int? = null,
    dangerousCargo: Boolean = false,
    explosiveCargo: Boolean = false,
    passIds: Set<TruckPassZonePassId> = setOf(),
    fallbackOnCar: Boolean = false
    )

    Parameters for finding a truck route . When searching for a route, only filled-in parameters are taken into account.

    Parameters

    car

    truckLength

    truckHeight

    truckWidth

    actualMass

    maxPermittedMass

    axleLoad

    dangerousCargo

    explosiveCargo

    passIds

    fallbackOnCar

    Properties

    val car

    Route search options common to other car routes.

    val truckLength

    Length of the truck in millimeters.

    val truckHeight

    Height of the truck in millimeters.

    val truckWidth

    Width of the truck in millimeters.

    val actualMass

    Actual weight of the truck in kilograms.

    val maxPermittedMass

    Maximum authorized mass of a truck in kilograms.

    val axleLoad

    Axle load in kilograms.

    val dangerousCargo

    Sign of the presence of dangerous cargo.

    val explosiveCargo

    Sign of the presence of explosive cargo.

    val passIds

    Identifiers of the user passes required for moving within the pass zones.

    val fallbackOnCar

    Use automatic fallback from truck route search to car route search, if you cannot find a truck route that matches the search parameters.

    UIMarkerInfo

    Object ID with a caption.

    UIMarkerInfo(objectId: DgisObjectId, label: String?)

    Object ID with a caption.

    Parameters

    objectId

    label

    Properties

    val objectId

    val label

    UIntRouteLongAttribute

    Container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. Attribute action starts at this point and ends at the next point, at which the next element's attribute action begins.

    Methods
    fun entry(point: RoutePoint): UIntRouteLongEntry?

    Element that the specified point falls into.

    Parameters
    fun entries(begin: RoutePoint, end: RoutePoint): List<UIntRouteLongEntry>

    Elements partially or completely covered by the begin,end range.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    First element.

    val last

    Last element.

    val entries

    UIntRouteLongEntry

    Extended route element - segment and value on it.

    UIntRouteLongEntry(
    point: RoutePoint,
    length: RouteDistance,
    value: Int
    )

    Extended route element - segment and value on it.

    Parameters
    Properties

    val point

    val length

    val value

    VendorConfig

    Overwrites SDK configuration.

    VendorConfig()
    VendorConfig(fromAsset: VendorConfigFromAsset)
    Parameters
    VendorConfig(fromFile: VendorConfigFromFile)
    Parameters
    VendorConfig(fromString: VendorConfigFromString)
    Parameters
    Methods
    fun match(
    none: Function0<T>,
    fromAsset: Function1,
    fromFile: Function1,
    fromString: Function1
    ): T
    Parameters
    fun toString(): String
    Returns
    fun hashCode(): Int
    Returns
    fun equals(other: Any?): Boolean
    Parameters

    other

    Returns
    Properties

    val isNone

    val isFromAsset

    val asFromAsset

    val isFromFile

    val asFromFile

    val isFromString

    val asFromString

    val value

    VendorConfigFromAsset

    Overwrites SDK settings by specifying the path to the application asset. For Android - assets directory. For iOS - Bundle.main directory.

    VendorConfigFromAsset(path: String)

    Overwrites SDK settings by specifying the path to the application asset. For Android - assets directory. For iOS - Bundle.main directory.

    Parameters

    path

    Properties

    val path

    Path relative to the asset root directory.

    VendorConfigFromFile

    Overwrites SDK settings by specifying the path to a file in the device file system.

    VendorConfigFromFile(path: String)

    Overwrites SDK settings by specifying the path to a file in the device file system.

    Parameters

    path

    Properties

    val path

    File path.

    VendorConfigFromString

    Overwrites SDK settings by specifying the file contents.

    VendorConfigFromString(contents: String)

    Overwrites SDK settings by specifying the file contents.

    Parameters

    contents

    Properties

    val contents

    Contents of the file for overwriting settings.

    Voice

    Voice package for the navigator.

    Methods
    fun playWelcome(): Future<Unit>

    Plays the voice sample.

    Returns
    Future<Unit>

    future, that becomes ready, when sample playing is finished.

    Properties

    val navigationVoice

    Gets a voice to use in the navigator.

    val language

    Voice language in ISO 639-1 format.

    VoiceManager

    Interface for interacting with the list of navigator voice packages.

    Properties

    val voicesChannel

    Channel with a list of all known voice packages. Updated if information about at least one of the voices or the list composition changes. The content of the channel is a subset of the total list of packages. To avoid desynchronization of package descriptions, you should not use data that are obtained simultaneously from multiple channels containing subsets of a common package list.

    val voices

    Channel with a list of all known voice packages. Updated if information about at least one of the voices or the list composition changes. The content of the channel is a subset of the total list of packages. To avoid desynchronization of package descriptions, you should not use data that are obtained simultaneously from multiple channels containing subsets of a common package list.

    VoiceSelector

    Manages voice packages in the current navigator session.

    Properties

    var voice

    Voice package that plays voice notifications in the current navigator session.

    VoidRouteAttribute

    Container that describes a point attribute of a route. Each element is stored as the point on the route (where the element is located) and the value of the element itself.

    Methods
    fun entries(begin: RoutePoint, end: RoutePoint): List<RoutePoint>

    Elements falling within the [begin, end) range.

    Parameters
    fun findNearBackward(point: RoutePoint): RoutePoint?

    Finds the nearest element the position of which is < = point.

    The complexity of the operation is log2(N), where N = size.

    Parameters
    fun findNearForward(point: RoutePoint): RoutePoint?

    Finds the nearest element the position of which is < = point.

    The complexity of the operation is log2(N), where N = size.

    Parameters
    Properties

    val size

    Amount of elements.

    val isEmpty

    Elements are missing.

    val first

    First element.

    val last

    Last element.

    val entries

    All elements.

    WeekTime

    Time point within a week.

    WeekTime(weekDay: WeekDay, time: DayTime)

    Time point within a week.

    Parameters

    weekDay

    time

    Properties

    val weekDay

    Day of the week.

    val time

    Time.

    WeekTimeInterval

    Time interval within a week.

    WeekTimeInterval(startTime: WeekTime, finishTime: WeekTime)

    Time interval within a week.

    Parameters

    startTime

    finishTime

    Properties

    val startTime

    Start time.

    val finishTime

    End time.

    Widget

    Base class representing a widget for filtering search results.

    Widgets are returned as a result of a search and are designed to filter or sort the result by certain parameters. Widgets are generated dynamically for each search result and may not be available for some requests. The widget represents one specific filter or a group of them, united by a common feature. For example, the type of cuisine in search results for the "Eat" query.

    Properties

    val type

    Gets the widget type.

    val caption

    Gets the name of the widget. May be missing.

    val filters

    Gets a list of filters that describe the current state of the widget. Can be used when forming a search query.

    WmsRasterUrlTemplate

    WmsRasterUrlTemplate(urlTemplate: String)
    Parameters

    urlTemplate

    Properties

    val urlTemplate

    WorkStatus

    Work status.

    WorkStatus(isOpen: Boolean, description: String)

    Work status.

    Parameters

    isOpen

    description

    Properties

    val isOpen

    Open now.

    val description

    Text description. For example, "Open until 9:00 pm", "24 hours", "Closes in 5 minutes".

    WorkTimeFilter

    Filter by the object's opening hours. Either open now or open for a specific date and time.

    WorkTimeFilter(workTime: WeekTime)
    Parameters

    workTime

    WorkTimeFilter(isOpenNow: IsOpenNow)
    Parameters

    isOpenNow

    Methods
    fun match(workTime: Function1, isOpenNow: Function1): T
    Parameters

    workTime

    isOpenNow

    Returns
    T
    fun toString(): String
    Returns
    fun hashCode(): Int
    Returns
    fun equals(other: Any?): Boolean
    Parameters

    other

    Returns
    Properties

    val isWorkTime

    val asWorkTime

    val isIsOpenNow

    val asIsOpenNow

    val value

    ZIndex

    Index specifying the rendering order of objects within a layer.

    ZIndex(value: Int = 0)

    Index specifying the rendering order of objects within a layer.

    Parameters

    value

    Properties

    val value

    Zoom

    Zoom level.

    Zoom = 0 is the scale at which the entire world is inscribed in a square of 256x256 logical pixels (see LogicalPixel). Zoom = 1 is the scale at which the entire world is inscribed in a square of 512x512 logical pixels. The scale is proportional value of 2^Zoom.

    Zoom cannot be negative.

    Zoom(value: Float = 0.0f)

    Zoom level.

    Zoom = 0 is the scale at which the entire world is inscribed in a square of 256x256 logical pixels (see LogicalPixel). Zoom = 1 is the scale at which the entire world is inscribed in a square of 512x512 logical pixels. The scale is proportional value of 2^Zoom.

    Zoom cannot be negative.

    Parameters

    value

    Properties

    val value

    ZoomControl

    Container with controls to increase and decrease the zoom level.

    ZoomControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Container with controls to increase and decrease the zoom level.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToMap(map: Map): Unit
    Parameters

    map

    Returns
    fun detachFromMap(map: Map): Unit
    Parameters

    map

    Returns

    ZoomControl

    Container with controls to increase and decrease the zoom level.

    ZoomControl(
    context: Context,
    attrs: AttributeSet? = null,
    defStyle: Int = 0
    )

    Container with controls to increase and decrease the zoom level.

    Parameters

    context

    attrs

    defStyle

    Methods
    fun attachToMap(map: Map): Unit
    Parameters

    map

    Returns
    fun detachFromMap(map: Map): Unit
    Parameters

    map

    Returns

    ZoomControlModel

    Zoom control model. The control consists of +/- buttons, which, when pressed, change the map scale. When the allowable scale limit is reached, the zoom button in this direction becomes inactive. Object methods must be called on one thread.

    ZoomControlModel(map: Map)
    Parameters

    map

    Methods
    fun isEnabled(button: ZoomControlButton): StatefulChannel<Boolean>
    Parameters
    fun setPressed(button: ZoomControlButton, value: Boolean): Unit
    Parameters

    ZoomFollowSettings

    Interface that allows you to manage map scaling settings during navigation.

    During navigation, the scale depends on the speed of movement, the presence of maneuvers ahead and behind on the route, and the type of road.

    If there are no maneuvers ahead and behind, or on roads with low value (minor streets in settlements, highways, intercity or federal highways), the scale value is selected based on the values SpeedRangeToStyleZoom, which are stored in the speed_range_to_style_zoom_sequence. The sequence speed_range_to_style_zoom_sequence must contain speed intervals sorted in ascending order of min_speed values, and the conditions below must be met: max_speedi > min_speedi+1

    max_speedi < = min_speedi+2

    max_speedi < max_speedi+1. That is, speed intervals should touch or even intersect, but the speed value should not fall into more than two intervals. However, the minimum speed value is not considered to fall within the interval, i.e. the same speed value may be the maximum speed for one interval, the minimum speed for another, and be inside the interval for a third interval. An exception is the first speed interval, which must contain min_speed == 0.

    The map scale is selected from the speed_range_to_style_zoom_sequence using the algorithm:

  • At the start of the navigation, the sequence element with index == 0 is selected.
  • During movement, a check is made to see if the current speed value has gone beyond the speed interval indicated in the sequence element with index. If the speed is beyond the interval, then a neighboring interval is searched that includes the speed value, and its index is remembered.
  • A check is made to see if we are approaching a maneuver. It is considered that we are approaching a maneuver if there is a maneuver in the direction of movement and the distance to the maneuver does not exceed the value specified in SpeedRangeToStyleZoom, or we have passed the maneuver but have not moved away from it by a distance greater than specified in SpeedRangeToStyleZoom. If we are approaching a maneuver, the scale corresponding to the element with index == 0 is selected, otherwise the scale corresponding to the element index is selected.
  • When approaching a maneuver at the current speed, the scale will increase smoothly. The duration of the increase depends on the speed and distance to the maneuver. When the speed is increased, the animation time increases, and when the speed is decreased, it decreases. The increase in zoom level is completed at some distance from the maneuver.

    After passing the maneuver, the zoom level smoothly decreases.

    Properties

    var speedRangeToStyleZoomSequence

    Sequence of speed intervals and their corresponding scales. Used for automatic map scaling in the navigator based on speed.

    var speedRangeToStyleZoomFreeRoamSequence

    var styleZoomSpeedRangesAnimationDuration

    Duration of smooth zoom in the navigation mode as speed changes when there are no maneuvers ahead/behind at a sufficiently close distance, or on roads with low value.

    var zoomInBeforeManeuverAnimationDuration

    Duration of smooth zoom increase when approaching a maneuver. Used only if the speed is lower than get_min_speed_to_consider_in_zoom_in_before_maneuver_animation.

    var zoomOutAfterManeuverAnimationDuration

    Duration of smooth decrease of the zoom level after completing the maneuver.

    var minSpeedToConsiderInZoomInBeforeManeuverAnimation

    Minimum movement speed in m/s at which the duration of the smooth zoom level change is calculated taking into account not only the proximity to the maneuver, but also the current speed. Must be at least 0.1 m/s, values less than are ignored.

    var zoomInBeforeManeuverAnimationAcceleration

    Acceleration factor for the zoom increase animation when approaching a maneuver. Must be at least 1, values ​​less than this are ignored.

    var distanceGapToManeuver

    Distance to the maneuver at which the zoom-in animation must be completed so that the zoom does not change during the maneuver. For example, if there is 300 m before the maneuver, then the zoom-in animation must be completed 50 m before start of the maneuver. Must be at least 1 m, values less than are ignored.

    var minAnimationDuration

    Minimum animation time. Used to prevent abrupt changes in the zoom level during animation. Must be at least 200, values below are ignored.