class
ActivityTracker
Extends: ru.dgis.sdk.NativeObject
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).
Methods
fun match(event: Function1, error: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
Properties
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.
Properties
val type
The type of the administrative unit. One of the following:<ul><li>country</li><li>region (province/territory/republic, etc.)</li><li>district_area - district of the region</li><li>city</li><li>settlement</li><li>division</li><li>district</li><li>living_area - residential estate, microdistrict</li><li>place</li></ul>
val name
AddressComponent
Address component: street, house number, or verbal description of location.
Methods
fun match(
streetAddress: Function1,
number: Function1,
location: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
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).
AddressStreet
Regular address with a street name and a building number.
AddRoadEventButton
Button for adding a road event.
AddRoadEventButton(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Button for adding a road event.
Parameters
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
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
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
fun onDescriptionEntered(description: String): Unit
Action that occurs when entering description.
Parameters
fun close(): Unit
Returns
Properties
val eventTypeChannel
Selected event type.
val lanesChannel
Selected lanes.
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
Methods
fun attachToModel(model: AddRoadEventCardModel): Unit
Parameters
@CallSuper
fun detachFromModel(): Unit
Returns
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
Properties
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.
Extends: ru.dgis.sdk.map.MapControl
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
Methods
fun show(): Unit
Returns
fun hide(): Unit
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
Methods
fun attachToModel(model: AddRoadEventCardModel): Unit
Parameters
fun detachFromModel(): Unit
Returns
AlternativeRouteSelector
Selects an alternative route.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
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.
Anchor
Image anchor point.
(0, 0) - upper-left corner, (1, 1) - lower-right corner.
ApartmentRange
Range of apartments.
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"
}
Attributes
Interface for managing map object properties.<p>Only map objects have properties, but you can set default properties for the entire map,
the style, and the source (see ISource for details).</p>
Extends: ru.dgis.sdk.NativeObject
Methods
fun setAttributeValue(name: String, value: AttributeValue): Unit
Sets a property.
Parameters
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
fun getAttributeValue(name: String): AttributeValue
Gets a property.
Parameters
Properties
val attributeNames
Gets a list of properties.
val changed
Gets a channel that notifies about property changes.
AttributeValue
Properties of map objects.
AttributeValue()
Methods
fun match(
empty: Function0<T>,
boolean: Function1,
number: Function1,
integer: Function1,
string: Function1,
data: Function1,
array: Function1,
item: Function1
): T
Parameters
empty
boolean
number
integer
string
data
array
item
Returns
T
fun toString(): String
Returns
fun hashCode(): Int
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
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.<ul><li>Username if the author is an authorized user
and has agreed to have their name displayed.</li><li>Empty string for an anonymous user or a user who has refused to have their name displayed.</li></ul>
BaseCamera
Camera.<p>Sets the parameters for projecting the map onto the screen.</p>
Extends: ru.dgis.sdk.NativeObject
Methods
fun changePosition(positionChange: CameraPositionChange): Unit
Changes only a part of the camera position parameters.<p>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.</p>
Parameters
Properties
val projection
Projection.<p>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.</p>
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.
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 <a href="#">0°,360°</a>.
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 <a href="#">0°,360°</a>.
Parameters
value
Properties
val value
BearingFollowController
Controller following the map bearing.
Extends: ru.dgis.sdk.map.FollowController
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
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
Properties
val visibilityChannel
BicycleBriefRouteInfo
Basic information about the cycling route.
BicycleBriefRouteInfo(length: RouteDistance, landmark: String)
Basic information about the cycling route.
Parameters
Properties
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
Landmark.
val maneuvers
A chain of consecutive maneuvers.
BicycleInstructionCrossroadManeuver
BicycleInstructionCrossroadManeuver(direction: BicycleInstructionCrossroadManeuverDirection = BicycleInstructionCrossroadManeuverDirection.STRAIGHT, turnAngle: Int = 0)
Parameters
Properties
val direction
Direction of movement.
val turnAngle
Angle of rotation in degrees <a href="#">-180,180</a>.
BicycleInstructionFinish
End of the cycling part of the route.
BicycleInstructionFinish()
End of the cycling part of the route.
BicycleInstructionStart
Beginning of the cycling part of the route.
BicycleInstructionStart()
Beginning of the cycling part of the route.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> segment.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
Borders
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(pedestrian: PedestrianBriefRouteInfo)
Parameters
pedestrian
BriefExtraRouteInfo(publicTransport: PublicBriefRouteInfo)
Parameters
publicTransport
Methods
fun match(
bicycle: Function1,
car: Function1,
pedestrian: Function1,
publicTransport: Function1,
scooter: Function1
): T
Parameters
bicycle
car
pedestrian
publicTransport
scooter
Returns
T
fun toString(): String
Returns
fun hashCode(): Int
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
Methods
fun onAttachedToWindow(): Unit
Returns
Properties
var model
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. <a href="#">1transfer,15min walk</a>.
BriefRoadEvent
BriefRoadEvent(
id: Long = 0,
eventType: RoadEventType = RoadEventType.OTHER,
lanes: EnumSet<Lane>
)
Parameters
Properties
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
BuildingInfo
Information about building.
BuildingInfo(
buildingName: String? = null,
purposeName: String? = null,
purposeCode: PurposeCode? = null,
buildingLevels: BuildingLevels? = null
)
Information about building.
Parameters
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
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
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.
Extends: ru.dgis.sdk.map.BaseCamera
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.<p>Resets the current map tracking mode and interrupts gesture processing.</p>
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.<p>Calling the method interrupts the flyover and gesture processing, and also resets the tracking mode.</p>
Returns
fun addFollowController(followController: FollowController): Unit
Adds a tracking controller.<p>There can be several different ones, for example, a controller for tracking the scale, map tilt,
geolocation, etc.</p>
Parameters
fun removeFollowController(followController: FollowController): Unit
Removes the tracking controller.
Parameters
fun setCustomFollowController(followController: CustomFollowController): Unit
Adds a tracking controller implemented on the platform.<p>Only one such controller can be installed. If you install multiple controllers,
only the last one installed is used.</p>
Parameters
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
Camera tracking mode.
val behaviour
Camera tracking mode.
CameraBehaviour
Camera tracking mode.<p>Camera modes are degraded according to the following rules:</p><ul><li>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</li><li>Rotation of the map relative to the position point blocks the publication of Bearing
events: MapRotationBeginEvent, RotateMapToNorthEvent, DirectMapRotationEvent without event center</li><li>Changing the scale relative to the position point blocks the publication of StyleZoom
events: MapScalingBeginEvent, DirectMapScalingEvent without event center, ScaleMapEvent without event center</li><li>Tilt locks the publication of Tilt
events: DirectMapTiltEvent</li></ul>
CameraBehaviour(position: FollowPosition?, tilt: FollowTilt = FollowTilt.OFF)
Camera tracking mode.<p>Camera modes are degraded according to the following rules:</p><ul><li>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</li><li>Rotation of the map relative to the position point blocks the publication of Bearing
events: MapRotationBeginEvent, RotateMapToNorthEvent, DirectMapRotationEvent without event center</li><li>Changing the scale relative to the position point blocks the publication of StyleZoom
events: MapScalingBeginEvent, DirectMapScalingEvent without event center, ScaleMapEvent without event center</li><li>Tilt locks the publication of Tilt
events: DirectMapTiltEvent</li></ul>
Parameters
Properties
CameraBehaviourChange
Change tracking mode.
CameraBehaviourChange(newBehaviour: CameraBehaviour, changeReason: CameraBehaviourChangeReason)
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.
Extends: ru.dgis.sdk.NativeObject
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.
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.<p>0 - nadir (look vertically down), the maximum value is 60 degrees.</p>
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.
CameraPositionPoint
Relative screen position of the point to which the camera is attached.<p>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.</p>
CameraPositionPoint(x: Float = 0.5f, y: Float = 0.5f)
Relative screen position of the point to which the camera is attached.<p>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.</p>
Parameters
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
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, <a href="#">0.1</a>.
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): CameraRouteEntry?
Finds the nearest element, the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
CameraRouteEntry
Route element - point and value in it.
CameraRouteEntry(point: RoutePoint, value: RouteCamera)
Route element - point and value in it.
Parameters
Properties
CameraZoomRestrictions
Acceptable zoom range.
CancelEvent
Event of canceling the current action.<p>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.</p>
Extends: ru.dgis.sdk.map.Event
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
Traffic speed.
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
direction
turnAngle
landmark
exitName
Properties
val direction
Direction of traffic at the intersection.
val turnAngle
Angle of rotation in degrees <a href="#">-180,180</a>.
val landmark
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.
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
Properties
val type
Instruction type.
val turnAngle
Angle of rotation in degrees <a href="#">-180,180</a>.
val exitNumber
Exit number - <a href="#">1,inf</a> 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.
CarInstructionUTurn
U-turn on the road (not at the intersection).<p>U-turn at the intersection is described by the Crossroad instruction.</p>
CarInstructionUTurn(exitName: String)
U-turn on the road (not at the intersection).<p>U-turn at the intersection is described by the Crossroad instruction.</p>
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 = true,
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.
Methods
fun match(
system: Function1,
fromFile: Function1,
fromAsset: Function1
): T
Parameters
system
fromFile
fromAsset
Returns
T
fun toString(): String
Returns
fun hashCode(): Int
Returns
Properties
val isSystem
val asSystem
val isFromFile
val asFromFile
val isFromAsset
val asFromAsset
val value
val default
Certificates used by default.
System + Russian, supplied with the SDK.
CertificateFromAsset
SSL certificate from the Android asset.
Properties
val path
Path relative to the root directory of assets.
CertificateFromFile
SSL certificate from a file.
Properties
val path
The path to the file.
CheckableGroupedItem
Single element from GroupCheckableItem.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.directory.Widget
Properties
val items
Gets a group of widget elements.
Checkbox
Checkbox widget.
Extends: ru.dgis.sdk.directory.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.
Extends: ru.dgis.sdk.map.SimpleMapObject
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.
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(),
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
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 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.
Extends: ru.dgis.sdk.map.MapObject
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.
Color
Color
CompassControl
Compass control.
Extends: ru.dgis.sdk.map.MapControl
CompassControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0,
layout: Int = R.layout.dgis_compass_control
)
Compass control.
Parameters
CompassControl
Extends: ru.dgis.sdk.map.CompassControl
CompassControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
Methods
fun onClicked(): Unit
Returns
Properties
ComplexGeometry
Compound geometry consisting of a set of simple or compound geometries.<p>An arbitrary level of nesting of compound geometries in a set is supported.</p>
Extends: ru.dgis.sdk.geometry.Geometry
Properties
val elements
ContactInfo
Way to contact the organization.
Properties
val type
Type of the contact. One of the following:<ul><li>email</li><li>website</li><li>phone</li><li>fax</li><li>pobox - P.O. box</li><li>icq</li><li>jabber</li><li>skype</li><li>vkontakte</li><li>twitter</li><li>odnoklassniki</li><li>youtube</li><li>linkedin</li><li>googleplus</li><li>pinterest</li><li>whatsapp</li><li>viber</li><li>telegram</li></ul>
val displayText
Contact value to display.
val value
Technical value of the contact. Depending on the contact type, it has the following semantics:<ul><li>email - email address</li><li>website - full URL</li><li>phone - phone number in international format, for example: "+73831234567"</li><li>fax - phone number in international format, for example: "+73831234567"</li><li>pobox - mailing address</li><li>icq - user ID</li><li>jabber - user ID</li><li>skype - user ID</li><li>vkontakte - full URL</li><li>twitter - full URL</li><li>odnoklassniki - full URL</li><li>youtube - full URL</li><li>linkedin - full URL</li><li>googleplus - full URL</li><li>pinterest - full URL</li><li>whatsapp - full URL</li><li>viber - full URL</li><li>telegram - full URL</li></ul>
val comment
Clarifying information about the contact.
Context
Context - the environment required for the SDK to work.
Extends: ru.dgis.sdk.NativeObject
CoordinatesFollowController
Controller for following the coordinates of the map position.
Extends: ru.dgis.sdk.map.FollowController
CoordinatesFollowController(animationDuration: Duration = Duration.ofMilliseconds(1000), valueThreshold: Meter = Meter(value = 0.1f))
Creates a controller for following the coordinates of the map position.
Parameters
DashboardControl
DashboardControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters
Methods
fun onAttachedToWindow(): Unit
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
Properties
val dashLength
Length of the dashed line.
val dashSpaceLength
Length of the space between dashes.
DayTime
Time moment within a day.
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
fun onPermissionGranted(): Unit
The method must be called after receiving permissions to use the location.
Returns
@Synchronized
fun onProvidersChanged(): Unit
Returns
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
Methods
fun onConfigurationChanged(newConfig: Configuration): Unit
Parameters
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.
DeviceDensity
Multiplier calculated as the ratio of DPI to the base DPI of the device.<p>For Android, it corresponds to resources.displayMetrics.density.
For iOS, it corresponds to nativeScale.</p><p>Must be positive.</p>
DeviceDensity(value: Float = 0.0f)
Multiplier calculated as the ratio of DPI to the base DPI of the device.<p>For Android, it corresponds to resources.displayMetrics.density.
For iOS, it corresponds to nativeScale.</p><p>Must be positive.</p>
Parameters
value
Properties
val value
DevicePpi
Device display resolution, in pixels per inch.<p>Must be positive.</p>
DevicePpi(value: Float = 0.0f)
Device display resolution, in pixels per inch.<p>Must be positive.</p>
Parameters
value
Properties
val value
DGis
Entry point to the 2GIS SDK. At the start of work, you must call initialize.
Methods
@JvmStatic
@JvmOverloads
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,
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.
mapOptions
Settings applied to all maps.
Returns
ContextsdkContext required for SDK services to work.
@JvmStatic
fun context(): Context
Returns
DgisMapObject
2GIS map object.<p>Information about the object can be obtained via directory.</p>
Extends: ru.dgis.sdk.map.MapObject
Properties
val id
Stable numeric object identifier.
DgisObjectId
DgisSource
Main interface of 2GIS data sources.
Extends: ru.dgis.sdk.map.Source
Methods
fun setHighlighted(directoryObjectIds: List<DgisObjectId>, highlighted: Boolean): Unit
Sets or removes the highlight of objects.<p>Adds a "selected" attribute to an object, which can be used in styles.</p>
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
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.
Extends: ru.dgis.sdk.map.Event
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.
Extends: ru.dgis.sdk.map.InputEvent
DirectMapRotationEvent
Event of the direct map rotation. Direct map control events are described in DirectMapControlBeginEvent.
Extends: ru.dgis.sdk.map.InputEvent
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.
Extends: ru.dgis.sdk.map.InputEvent
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.
Extends: ru.dgis.sdk.map.InputEvent
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.
Extends: ru.dgis.sdk.map.InputEvent
Properties
val delta
Tilt change in degrees.
DirectoryFilter
Filters for the directory.
DirectoryFilter(workTime: WorkTimeFilter?, dynamic: List<DynamicFilter>)
Filters for the directory.
Parameters
Properties
DirectoryObject
Directory object.
Extends: ru.dgis.sdk.NativeObject
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.<p>Can be an empty string if the value is missing.</p>
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): DoubleRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
DoubleRouteEntry
Route element - point and value in it.
DoubleRouteEntry(point: RoutePoint, value: Double)
Route element - point and value in it.
Parameters
Properties
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
fun toString(): String
Returns
DynamicFilter
Dynamic filters for search results.
Methods
fun match(
flagFilter: Function1,
rangeFilter: Function1,
sortingFilter: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
Properties
val isFlagFilter
val asFlagFilter
val isRangeFilter
val asRangeFilter
val isSortingFilter
val asSortingFilter
val value
DynamicRouteInfo
DynamicRouteInfo(roadEvents: RoadEventRouteAttribute, traffic: Traffic)
Parameters
Properties
DynamicRouteInfoSettings
Settings for receiving dynamic route data.
Extends: ru.dgis.sdk.NativeObject
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.
Implements: ru.dgis.sdk.map.CustomFollowController
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.
Returns
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
fun bearing(): Bearing?
Bearing. Method is called only after calling request_values with appropriate parameters.
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
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.
Extends: ru.dgis.sdk.NativeObject
EventsProcessingSettings
EventsProcessingSettings(rotationCenter: RotationCenter, scalingCenter: ScalingCenter)
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
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
bicycleStart
ExtraInstructionInfo(bicycleFinish: BicycleInstructionFinish)
Parameters
bicycleFinish
ExtraInstructionInfo(bicycleCrossroad: BicycleInstructionCrossroad)
Parameters
bicycleCrossroad
ExtraInstructionInfo(carCrossroad: CarInstructionCrossroad)
Parameters
carCrossroad
ExtraInstructionInfo(carRoundabout: CarInstructionRoundabout)
Parameters
carRoundabout
ExtraInstructionInfo(pedestrianStart: PedestrianInstructionStart)
Parameters
pedestrianStart
ExtraInstructionInfo(pedestrianFinish: PedestrianInstructionFinish)
Parameters
pedestrianFinish
ExtraInstructionInfo(pedestrianCrossroad: PedestrianInstructionCrossroad)
Parameters
pedestrianCrossroad
ExtraInstructionInfo(pedestrianIndoorFloorChange: PedestrianInstructionIndoorFloorChange)
Parameters
pedestrianIndoorFloorChange
ExtraInstructionInfo(pedestrianIndoorEnter: PedestrianInstructionIndoorEnter)
Parameters
pedestrianIndoorEnter
ExtraInstructionInfo(pedestrianIndoorExit: PedestrianInstructionIndoorExit)
Parameters
pedestrianIndoorExit
ExtraInstructionInfo(scooterStart: ScooterInstructionStart)
Parameters
scooterStart
ExtraInstructionInfo(scooterFinish: ScooterInstructionFinish)
Parameters
scooterFinish
ExtraInstructionInfo(scooterCrossroad: ScooterInstructionCrossroad)
Parameters
scooterCrossroad
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
bicycleStart
bicycleFinish
bicycleCrossroad
carStart
carFinish
carCrossroad
carRoundabout
carUturn
pedestrianStart
pedestrianFinish
pedestrianCrossroad
pedestrianIndoorFloorChange
pedestrianIndoorEnter
pedestrianIndoorExit
scooterStart
scooterFinish
scooterCrossroad
Returns
T
fun toString(): String
Returns
fun hashCode(): Int
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.<p>Can be not only a file in the file system, but also an arbitrary data source.</p>
Extends: ru.dgis.sdk.NativeObject
Methods
@JvmStatic
fun fromString(contents: String): File
File with contents from the given string.
Parameters
FinishRouteControl
Extends: ru.dgis.sdk.map.MapControl
FinishRouteControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters
Methods
fun onAttachedToWindow(): Unit
Returns
fun expand(): Unit
Returns
Properties
FlagFilter
Filter of the flag type.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> segment.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
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
Properties
FollowControl
Control to enable location marker tracking.
Extends: ru.dgis.sdk.map.MapControl
FollowControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Control to enable location marker tracking.
Parameters
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).
Extends: ru.dgis.sdk.NativeObject
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
FormattedAddress
Human-readable representation of the address.
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.
Properties
val value
FreeRoamSettings
Extends: ru.dgis.sdk.NativeObject
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.<p>Tiles are not loaded into the HTTP cache if the parameter matches zero or negative distance.</p>
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.<p>Tiles are not loaded into the HTTP cache, if the parameter corresponds to zero or negative distance.</p>
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.<p>Tiles are not loaded into the HTTP cache if the parameter corresponds to a zero or negative distance.< /p>
Geometry
Geometry object.
Extends: ru.dgis.sdk.NativeObject
Methods
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.<p>Methods are thread-safe.</p><p>The object is displayed on the map under the following conditions:</p><ul><li>the object is visible;</li><li>the object is added to the data source;</li><li>the data source containing the object is added to the map;</li><li>the display parameters in the map styles are applicable to this object.
For more information about displaying objects on the map, see ISource.</li></ul>
Extends: ru.dgis.sdk.map.MapObject
Properties
val geometryChannel
Object geometry.
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.
Extends: ru.dgis.sdk.NativeObject
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.
<p>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.</p>
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.<p>User data is not used in any way in the SDK and is only returned it to the user.</p>
Parameters
fun createObject(): GeometryMapObject
Constructs a map object.<p>The object must have geometry</p><p>After calling this function, GeometryMapObjectBuilder becomes unsuitable for setting the parameters of a map object or
for creating an object.</p>
Returns
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.
Extends: ru.dgis.sdk.map.Source
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.<p>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.</p><p>Adding is asynchronous, thread-safe, the method can be used from any thread.</p><p>For a source with clustering, addition is not yet implemented, an exception will be thrown.</p>
Parameters
fun addObjects(objects: List<GeometryMapObject>): Unit
Adds multiple objects to the source.<p>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.</p><p>Adding is asynchronous, thread-safe, the method can be use from any thread.</p><p>For a source with clustering, addition is not yet implemented, an exception will be thrown.</p>
Parameters
fun removeObject(item: GeometryMapObject): Unit
Deletes an object from the source.<p>The deletion is asynchronous, thread-safe, the method can be used from any thread.</p>
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
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
Extends: ru.dgis.sdk.NativeObject
Methods
fun setSourceAttribute(name: String, value: AttributeValue): GeometryMapObjectSourceBuilder
Sets the property of map objects common to the entire source (see ISource).
Parameters
fun setSourceAttributes(values: Map): GeometryMapObjectSourceBuilder
Sets properties of map objects common to the entire source.
Parameters
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.<p>After calling this function, you cannot use the GeometryMapObjectSourceBuilder to create a data source or
set data source parameters.</p>
Returns
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
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
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
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): GeoPointRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
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.
<p>The complexity of the operation is O(log2(N)), where N = route_geometry .size()</p>
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
GeoPointWithElevation
Pint in a geographic coordinates system (latitude, longitude, elevation).<p>Elevation is calculated in meters above the surface, not above the sea level.</p>
GeoPointWithElevation(
latitude: Latitude,
longitude: Longitude,
elevation: Elevation = Elevation(value = 0.0f)
)
Pint in a geographic coordinates system (latitude, longitude, elevation).<p>Elevation is calculated in meters above the surface, not above the sea level.</p>
Parameters
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
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
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
GeoRect
Rectangular area in a spherical coordinate system (for example, WGS84).
This structure is not tied to a specific geodesic coordinate system.
Methods
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
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
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.
Extends: ru.dgis.sdk.NativeObject
Methods
fun setSettingsAboutMapPositionPoint(settings: EventsProcessingSettings): Unit
Sets the point relative to which the scaling and rotation take place.
Parameters
settings
Event handling settings.
<p>When the function is called, gesture recognition tools are recreated.</p>
Returns
fun setMutuallyExclusiveGestures(rules: List<EnumSet<Gesture>>): Unit
Sets a list of rules for excluding simultaneous triggering of multiple gestures.<p>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</p>
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.
Extends: ru.dgis.sdk.directory.CheckableItem
Properties
val items
Gets a set of group elements.
HttpCacheManager
HttpHeader
HttpOptions
HTTP client options.
HttpOptions(
certificates: List?<Certificate> = null,
timeout: Duration = Duration.ofMilliseconds(15000),
useCache: Boolean = true,
cacheStoragePath: String? = null,
cacheMaxSize: Long? = null,
proxy: HttpProxyOptions? = null
)
HTTP client options.
Parameters
certificates
timeout
useCache
cacheStoragePath
cacheMaxSize
proxy
Properties
val certificates
Certificates in PEM format.
If not specified, system certificates + supplied with the SDK are used.
val timeout
Timeout for HTTP requests.
val useCache
Use HTTP cache.
val cacheStoragePath
Path to the top-level directory for the main HTTP cache file store.
The file store will be located in the http_cache subdirectory in this directory.
If no path is specified, the directory returned by context.getCacheDir() will be used.
val cacheMaxSize
Maximum HTTP cache size in bytes. If not specified, the default
maximum HTTP cache size is 300 MB.
val proxy
Proxy settings.
HttpProxyOptions
Proxy settings.
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.<br/>The reponse body is stored and handled separately.
HttpResponse(statusCode: HttpStatusCode, headers: List<HttpHeader>)
Structure for presenting a response for an HTTP request.<br/>The reponse body is stored and handled separately.
Parameters
Properties
HttpResponseCallback
Object with callbacks for handling the sending and receiving of data.
Extends: ru.dgis.sdk.NativeObject
Methods
fun onResponse(response: HttpResponse): Boolean
Method that handles receiving a response from the server.
Parameters
response
Server response.
Returns
BooleanReturns 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
fun onFinished(): Unit
Returns
HttpStatusCode
Image
Image.
Extends: ru.dgis.sdk.NativeObject
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
IncompleteTextHandler
Autocomplete is suggested for the text entered by the user.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>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.</p>
Extends: ru.dgis.sdk.map.MapControl
IndoorControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Floor control.<p>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.</p>
Parameters
Methods
Properties
var markedLevels
Floors on which marks are displayed.
IndoorControlModel
Floor control model.
Extends: ru.dgis.sdk.NativeObject
Methods
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.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
Methods
fun setIndoorState(newState: IndoorManagerState): Unit
Switching the floor plan manager on/off.
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
Properties
InputEvent
User input event.
Extends: ru.dgis.sdk.map.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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): InstructionRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): IntRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
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
Properties
IsOpenNow
Open now.
IsOpenNow()
Open now.
ItemMarkerInfo
KeyFromAsset
Key from an asset.
Properties
val path
Path relative to the asset's root directory.
KeyFromFile
Key from a file.
Properties
val path
Path to the file.
KeyFromString
Key from a string.
Properties
val contents
Contents.
KeySource
Source of the key.
Methods
fun match(
fromAsset: Function1,
fromFile: Function1,
fromString: Function1
): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
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
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Properties
val value
LevelId
Floor plan identifier.
Properties
val value
LevelInfo
Information about the floor of the building.
Locale
Locale.
Methods
fun toLocalePosix(): String
Returns
LocaleManager
Manager of application regional settings.
Extends: ru.dgis.sdk.NativeObject
Methods
fun overrideLocales(locales: List<Locale>): Unit
Setting the list of application locales.
Parameters
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.<p>OS locales are ordered in the way specified by the user (in order of highest priority
to a lower priority).</p>
val systemLocales
Gets locales provided by the OS.<p>OS locales are ordered in the way specified by the user (in order of highest priority
to a lower priority).</p>
Location
Geoposition.
Location(
coordinates: LocationCoordinates,
altitude: LocationFuzzyDouble?,
course: LocationCourse?,
groundSpeed: LocationFuzzyDouble?,
source: String,
timestamp: Duration
)
Geoposition.
Parameters
coordinates
altitude
course
groundSpeed
source
timestamp
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.<p>Timestamps between different location sources are not synchronized,
so you cannot compare timestamps for locations that are obtained from different sources.</p>
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
LocationCourse
LocationFuzzyDouble
LogicalPixel
Pixel which size does not depend on screen density.<p>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.</p>
LogicalPixel(value: Float = 0.0f)
Pixel which size does not depend on screen density.<p>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.</p>
Parameters
value
Properties
val value
LogMessage
Message to be logged.
LogOptions
Logging settings.
Longitude
Geographical longitude.
Properties
val value
MagneticChangeListener
Class that keeps track of compass direction changes and compass availability.
Extends: ru.dgis.sdk.NativeProxy
ManeuverControl
ManeuverControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Parameters
Map
Map.
Extends: ru.dgis.sdk.NativeObject
Methods
fun addSource(source: Source): Unit
Adds a data source to the map.<p>Occurs asynchronously. The method can be called from any thread, it is thread-safe.</p>
Parameters
fun removeSource(source: Source): Unit
Removes a data source from the map.<p>Occurs asynchronously. The method can be called from any thread, it is thread safe.</p>
Parameters
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.
<p>The list of objects is formed in the order of rendering from the latest to the earliest.</p>
Returns
fun setAttribute(name: String, value: AttributeValue): Unit
Parameters
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.<p>When tracking the camera position, the map state is always MapDataLoadingState::Loading.</p>
val dataLoadingState
Notification about the state of data loading to the map.<p>When tracking the camera position, the map state is always MapDataLoadingState::Loading.</p>
val styleChannel
Gets current map styles.
var style
Gets current map styles.
val fontIconSizeMultiplierChannel
Icon and font size multiplier received from the application.<p>The size of icons and fonts is specified in logical pixels (see LogicalPixel)
and multiplied by the font and icon size multiplier.</p>
var fontIconSizeMultiplier
Icon and font size multiplier received from the application.<p>The size of icons and fonts is specified in logical pixels (see LogicalPixel)
and multiplied by the font and icon size multiplier.</p>
val sources
Gets map data sources.<p>Occurs asynchronously. The method can be called from any thread, it is thread safe.</p>
val mapVisibilityStateChannel
var mapVisibilityState
val attributes
Gets attributes.<p>The following properties must be specified:
"theme"="day|night"
"navigatorOn"="true|false"</p>
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).<p>The function can be called from any thread.</p>
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).<p>The function can be called from any thread.</p>
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
MapControls
Controls to wotk with the map during navigation.
Extends: ru.dgis.sdk.map.MapControl
MapControls(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Controls to wotk with the map during navigation.
Parameters
Methods
fun onLayout(
changed: Boolean,
left: Int,
top: Int,
right: Int,
bottom: Int
): Unit
Parameters
Properties
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.
Properties
val value
MapLocationController
Controller for map positioning in navigator.
Extends: ru.dgis.sdk.NativeObject
Properties
val myLocationIndicatorController
Geolocation marker controller.
var mapToNorthOrientation
Whether forced map orientation to north is enabled.
MapManager
Interface that allows you to add maps to the navigator and remove them.
Extends: ru.dgis.sdk.NativeObject
MapObject
Object on the map.
Extends: ru.dgis.sdk.NativeObject
Properties
var userData
Arbitrary user data attached to the object.
MapObjectManager
Extends: ru.dgis.sdk.NativeObject
MapObjectManager(map: Map, layerId: String? = null)
Creates an IMapObjectManager.
Parameters
Methods
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
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
@JvmStatic
fun fromAttributes(context: Context, attrs: AttributeSet): MapOptions
Parameters
Properties
var position
var sources
var styleFile
val mapAttributes
var fontIconSizeMultiplier
var copyrightInsetsSides
var maxFps
var powerSavingMaxFps
var renderMode
MapPaddingControl
Control that sets the padding of the map.
Extends: ru.dgis.sdk.map.MapControl
Implements: android.view.ViewTreeObserver.OnGlobalLayoutListener
MapPaddingControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Control that sets the padding of the map.
Parameters
MapRotationBeginEvent
MapRotationEndEvent
Event of ending the map rotation around the point.
Extends: ru.dgis.sdk.map.Event
MapRotationEndEvent()
MapScalingBeginEvent
MapScalingEndEvent
MapShiftBeginEvent
MapShiftEndEvent
MapTheme
Theme to use in the map.
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
Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
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 setCopyrightMargins(
left: Int,
top: Int,
right: Int,
bottom: Int
): Unit
Parameters
fun setTheme(theme: MapTheme): Unit
Sets the theme to be used in the map.
Parameters
fun onConfigurationChanged(newConfig: Configuration): Unit
Parameters
fun onSaveInstanceState(): Parcelable?
Returns
fun onVisibilityChanged(changedView: View, visibility: Int): Unit
Parameters
fun takeSnapshot(copyrightPosition: Alignment = Alignment.BOTTOM_RIGHT): Future<ImageData>
Parameters
fun useCustomGestureRecognitionEngine(customGestureRecognitionEngine: MapGestureRecognitionEngine): Unit
Use custom gesture recognizer.
Parameters
Properties
lateinit var mapOptions
var showApiVersionInCopyrightView
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.
Extends: ru.dgis.sdk.map.IndoorControl
MarkedByRouteIndoorControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Floor control, which marks the floors through which routes pass on the map.
Parameters
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.
Marker
Point on the map that is of interest to the user.
Extends: ru.dgis.sdk.map.SimpleMapObject
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
Meter
Length/distance in meters.
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): MillisecondsRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun calculateDuration(routePoint: RoutePoint): Duration
Calculates the expected travel time to the end of the route.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
MillisecondsRouteEntry
Route element - point and value in it.
MillisecondsRouteEntry(point: RoutePoint, value: Duration)
Route element - point and value in it.
Parameters
Properties
Model
Navigator model intended to be displayed in the UI.
Extends: ru.dgis.sdk.NativeObject
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.<p>See location_available_channel.</p>
val location
Current location that the navigator is working with.<p>See location_available_channel.</p>
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.<p>Even if the value in this channel is false, the location_channel can be updated in the location_channel.</p><p>See location_channel.</p>
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.<p>Even if the value in this channel is false, the location_channel can be updated in the location_channel.</p><p>See location_channel.</p>
val routeChannel
Route with maneuvers.<p>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.</p>
val route
Route with maneuvers.<p>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.</p>
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.
Extends: ru.dgis.sdk.map.MapControl
MyLocationControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Control of the flyover to the user's current location.
Parameters
MyLocationController
Class that controls the display of the current position marker.
Extends: ru.dgis.sdk.NativeObject
MyLocationController(
bearingSource: BearingSource?,
animationDuration: Duration = Duration.ofMilliseconds(1000),
coordinatesThreshold: Meter = Meter(value = 0.1f),
bearingThreshold: Bearing = Bearing(value = 1.0)
)
Creating a location marker movement controller.
One controller can only be added to the sources of one context.
Parameters
bearingSource
Source of direction. If missing, a marker without direction will be displayed.
animationDuration
Non-negative duration of change in real direction.
coordinatesThreshold
Non-negative threshold value of considered change in real position and its accuracy.
bearingThreshold
Non-negative threshold value of considered change in real direction.
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.
Extends: ru.dgis.sdk.NativeObject
Methods
fun onClicked(): Unit
Returns
Properties
val isEnabledChannel
val isEnabled
val followStateChannel
val followState
MyLocationMapObject
Geolocation marker.
Extends: ru.dgis.sdk.map.MapObject
MyLocationMapObjectSource
Source containing a geolocation marker.
Extends: ru.dgis.sdk.map.Source
MyLocationMapObjectSource(
context: Context,
controller: MyLocationController,
markerType: MyLocationMapObjectMarkerType = MyLocationMapObjectMarkerType.MODEL
)
Creates a location marker source.
Parameters
Methods
fun setController(controller: MyLocationController): Unit
Sets up a new controller responsible for marker parameters.
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
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
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
Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
fun detachFromManager(): Unit
Returns
Properties
NavigationFollowController
Interface for managing the map following a geolocation marker in the navigator.
Extends: ru.dgis.sdk.NativeObject
Methods
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.
Extends: ru.dgis.sdk.NativeObject
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
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.<p>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.</p>
Extends: ru.dgis.sdk.map.MapControl
NavigationView(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
UI element that displays the state of navigation on the map.<p>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.</p>
Parameters
Methods
Properties
NavigationVoice
Voice to use in the navigator.
Extends: ru.dgis.sdk.NativeObject
NewValuesNotifier
Interface of an object that reports that there are changes in any of the parameters.
Extends: ru.dgis.sdk.NativeObject
Methods
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): ObstacleInfoRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
Properties
val weekOpeningHours
Opening hours for each day of the week, starting from Monday.
val isOpen24x7
OrderedValue
Describes one value from a set.
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
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.
Extends: ru.dgis.sdk.NativeObject
Methods
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 <a href="#">0.100</a>.
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 <a href="#">0.100</a>.
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
)
Package information. See IPackage.
Parameters
name
installed
incomplete
preinstalled
compatible
hasUpdate
error
updateStatus
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.
PackageManager
Interface for centralized package management:<ul><li>Managing auto-update and obtaining its status;</li><li>Forced updates checking;</li><li>Starting and stopping the installation/update of all available packages.</li><li>Subscription to changes in information about packages;</li><li>Subscription to changes in information about the overall installation progress of packages.</li></ul>
Extends: ru.dgis.sdk.NativeObject
Methods
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.
Extends: ru.dgis.sdk.NativeObject
Methods
@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
PackedMapStateSerialized map state.
@JvmStatic
fun fromBytes(data: ByteArray): PackedMapState
Gets the map state.
Parameters
@JvmStatic
fun fromMap(map: Map): PackedMapState
Gets the map state.
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
Methods
@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
Route.
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.
Extends: ru.dgis.sdk.NativeObject
Methods
fun toBytes(): ByteArray
Returns
fun toSearchQuery(): SearchQuery
Returns
@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.<p>Specified as an inward offset from the edges, in physical pixels.
The paddings affect:</p><ul><li>the position point;</li><li>animated map movement;</li><li>the placement of dynamic map objects (such as route callouts).</li></ul>
Padding(
left: Int = 0,
top: Int = 0,
right: Int = 0,
bottom: Int = 0
)
Camera padding.<p>Specified as an inward offset from the edges, in physical pixels.
The paddings affect:</p><ul><li>the position point;</li><li>animated map movement;</li><li>the placement of dynamic map objects (such as route callouts).</li></ul>
Parameters
Page
Search results page.
Extends: ru.dgis.sdk.NativeObject
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
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
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
Capacity.
PedestrianBriefRouteInfo
Basic information about the pedestrian route.
PedestrianBriefRouteInfo(length: RouteDistance, landmark: String)
Basic information about the pedestrian route.
Parameters
Properties
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
Direction of movement.
val turnAngle
Angle of turn in degrees <a href="#">-180,180</a>.
PedestrianInstructionFinish
End of the pedestrian part of the route.
PedestrianInstructionFinish()
End of the pedestrian part of the route.
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.
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
Type of the floor change.
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.
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.
Extends: ru.dgis.sdk.NativeObject
Properties
val searchQuery
Query to run through the search engine.
PointGeometry
PointGeometryData
Geometry data of the point object.
PointGeometryData(geoPointWithElevation: GeoPointWithElevation)
Parameters
geoPointWithElevation
Methods
fun match(geoPoint: Function1, geoPointWithElevation: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
Properties
val isGeoPoint
val asGeoPoint
val isGeoPointWithElevation
val asGeoPointWithElevation
val value
Polygon
Polygon on the map.
Extends: ru.dgis.sdk.map.SimpleMapObject
Polygon(options: PolygonOptions)
Creates a polygon based on the parameters.
Parameters
options
Properties
PolygonGeometry
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.
Extends: ru.dgis.sdk.map.SimpleMapObject
Properties
var points
var width
var color
var erasedPart
var dashedPolylineOptions
Gets parameters of a dashed polyline.
var gradientPolylineOptions
Gets gradient polyline parameters.
PolylineGeometry
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 <a href="#">0;1</a>.
val dashedPolylineOptions
Dashed polyline options.<p>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.</p>
val gradientPolylineOptions
Gradient polyline options.<p>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.</p>
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.<p>Uses the Mercator spherical projection (EPSG:3857), looped in longitude.
Displayed data is limited in latitude from -85.06° to 85.06°.</p>
Extends: ru.dgis.sdk.NativeObject
Methods
fun screenToMap(point: ScreenPoint): GeoPoint?
Calculates a map point at the specified screen point.<p>The function returns an empty value if the specified screen point is outside the map projection.</p>
Parameters
fun mapToScreen(point: GeoPointWithElevation): ScreenPoint?
Calculates the screen point corresponding to the specified map point.<p>The function returns an empty value:</p><ul><li>if the point has an invalid value
(latitude is outside the range <a href="#">-90;90</a> or longitude is outside the range <a href="#">-180;180</a>).</li><li>if the specified map point is above the projection plane of the map on the screen.</li><li>if the specified map point is too far beyond the screen and the type overflow occurs.</li></ul>
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
publicTransportInfos
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.
val routeLogo
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.<p>If the list is empty, this section of the route is suggested to be overcome by personal or rented transport
or on foot.</p>
val intermediateStops
Intermediate stops that the transport will pass before reaching the transfer point.<p>Stops are sorted in the order they appear on the route.</p><p>You do not need to get off at these stops.</p><p>Start and end stops are not included in this list.</p>
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
Methods
fun onAttachedToWindow(): Unit
Returns
Properties
var model
PublicTransportCardModel
Model for PublicTransportCard.
PublicTransportCardModel(
route: TrafficRoute,
context: Context,
startName: String? = null,
finishName: String? = null
)
Model for PublicTransportCard.
Parameters
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.<p>If the vehicle consists of one wagon or you can board any wagon,
this list is empty.</p>
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.
val routeLogo
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
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.
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
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.<p>All route segments from this list follow the same geometry line.</p><p>If the list is empty, then this route segment it is suggested to be passed by personal or rented
transport or on foot.</p>
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Properties
val value
Range
Describes a set of discrete ordered values.
Methods
fun match(borders: Function1, orderedValues: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
Returns
Properties
val isBorders
val asBorders
val isOrderedValues
val asOrderedValues
val value
RangeFilter
Filter for the value ranges.
RangeWidget
Widget for representing a continuous or a discrete set of ordered values.
Extends: ru.dgis.sdk.directory.Widget
Methods
Properties
val range
Gets a set of ordered values.
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
Methods
fun detachFromManager(): Unit
Returns
Properties
var onAddRoadEventButtonClicked
val heightChannel
var expanded
const MARGIN
Remover
Object to remove user content.
Extends: ru.dgis.sdk.NativeObject
Methods
fun remove(): Future<ActionResult>
Deletes content.<p>Action is available for content authored by the user.</p>
Returns
RenderedObject
Displayable map object.
RenderedObjectInfo
Detailed information about the displayable map object.
RenderedObjectInfo(
closestViewportPoint: ScreenPoint,
closestMapPoint: GeoPointWithElevation,
item: RenderedObject
)
Detailed information about the displayable map object.
Parameters
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.
RoadCameraInfo
Camera information.
RoadCameraInfo(purposes: EnumSet<CameraPurpose>, speedLimit: Short?)
Camera information.
Parameters
Properties
val purposes
Camera purposes.<p>May be missing if there is no information, or if the camera was added by the user.</p>
val speedLimit
Speed limit in km/h.<p>Currently available for speed and average speed cameras only.</p><p>May not be available for speed cameras if the value is unknown.</p>
RoadEvent
Traffic event.
Extends: ru.dgis.sdk.NativeObject
Methods
Properties
val type
Event type.
val name
Localized event name.
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.<p>Available for events of the "Camera" type only.</p>
val schedule
Schedule.<p>Currently available for road blockings only, and may not even exist.</p>
val lanes
Affected lanes.<p>Currently, can be set for custom events only.</p>
val availableActions
List of available actions with the event.
val remover
Gets the object to delete the event.
RoadEventAction
Event action.
Extends: ru.dgis.sdk.NativeObject
Methods
fun set(): Future<ActionResult>
Applies an action (for example, adds a "like", confirms an event).<p>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.</p>
Returns
fun reset(): Future<ActionResult>
Cancels an action (for example, restores the "like", resets confirmation of an event).<p>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.</p>
Returns
Properties
val type
Action 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
Properties
val model
RoadEventActionInfo
Information about the action.
RoadEventActionInfo(state: RoadEventActionState, count: Int?)
Information about the action.
Parameters
Properties
val state
Action 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
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".
Author, for example, "2GIS".
val photoChannel
Photo.
val actionCompletedChannel
Notification about action completion.
val removeCompletedChannel
Notification about event deletion completion.
val actions
Actions.
RoadEventManager
Object for creating traffic events.
Extends: ru.dgis.sdk.NativeObject
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".
Extends: ru.dgis.sdk.map.MapObject
Properties
val event
Gets a traffic event.
RoadEventPhoto
Photograph of a traffic event.
Extends: ru.dgis.sdk.NativeObject
Methods
fun previewUrl(desiredSize: ScreenSize): String
Photo preview URL.
Parameters
fun report(): Future<ActionResult>
Submits a complaint about a photo.<p>Complaining your photo will not be processed.</p>
Returns
Properties
val photoUrl
URL of a full-sized photo.
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): RoadEventRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.map.Source
RoadEventSource(context: Context)
Creates a source that displays traffic events on the map.
Parameters
context
Properties
var visibleEvents
Gets the current categories of events provided by this source.
RoadMacroGraph
Global road graph package, used to build a passage between two loaded offline territories.
Extends: ru.dgis.sdk.update.Package
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
RotateMapToNorthEvent
RotationSettings
Settings for handling map rotation.
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.
Extends: ru.dgis.sdk.NativeObject
Properties
val geometry
Route geometry.<p>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.</p>
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
Road cameras.
val carriagewaysWidth
Width of the roadway in meters.
0 - width is unknown.
val exitSigns
Exit signs.
val humps
Speed bumps.
val lanes
Traffic lanes.
val levels
Floors of buildings.
val maxSpeedLimits
Maximum allowed speed limits.<p>0 - speed limit is unknown.</p>
val roadRules
Side of traffic.
val roadSubtypes
Additional description for the road type where the route is built.
val roadSurfaces
Road paving.
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 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
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
)
Structure describing a traffic camera.
Parameters
purposes
rangeAgainst
rangeAlong
direction
Properties
val purposes
Camera purpose.
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.
RouteDistance
Distance along the route.
Methods
fun absoluteValue(): RouteDistance
Returns
operator fun plus(other: RouteDistance): RouteDistance
Parameters
operator fun minus(other: RouteDistance): RouteDistance
Parameters
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.<p>All methods of this interface are called from a single thread.</p>
Extends: ru.dgis.sdk.NativeObject
Methods
fun setRouteParams(routeParams: RouteEditorRouteParams): Unit
Sets route editor parameters. Starts searching for a new
route according to the given parameters.
Parameters
fun setActiveRouteIndex(index: RouteIndex): Unit
Sets the active route index.
Parameters
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.
Extends: ru.dgis.sdk.map.Source
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
context
routeEditor
activeDisplayFlags
inactiveDisplayFlags
activeCalloutLabelFlags
inactiveCalloutLabelFlags
calloutLabelDisplayMode
activePermanentDisplayFlags
inactivePermanentDisplayFlags
Methods
fun setRoutesVisible(visible: Boolean): Unit
Enables or disables the routes display on the map.
Parameters
fun setShowOnlyActiveRoute(showOnlyActiveRoute: Boolean): Unit
Shows all routes on the map (false) or only the current active route (true).
Parameters
fun setPassedDistanceVisualization(passedDistanceVisualization: RouteMapObjectPassedDistanceVisualization): Unit
Changes the method of visualizing the distance traveled along a route.
Parameters
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
Exit 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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): RouteExitSignRouteEntry?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Properties
val value
RouteInfo
Route description with maneuvers.
RouteInfo(route: Route, routeBuildOptions: RouteBuildOptions?)
Route description with maneuvers.
Parameters
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.
RouteInfoCalloutMapObject
Callout object with information about the length and/or duration of the route on the map.
Extends: ru.dgis.sdk.map.MapObject
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
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
Properties
val lanes
Car lanes on a road section.
Ordered from the edge to middle of roadgeway.<p>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.</p>
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.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.map.MapObject
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
trafficRoute
isActive
index
displayFlags
calloutLabelFlags
calloutLabelDisplayMode
permanentDisplayFlags
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
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
Route callout position.
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.
Extends: ru.dgis.sdk.map.Source
RouteMapObjectSource(context: Context, routeVisualizationType: RouteVisualizationType = RouteVisualizationType.NORMAL)
Function to create IRouteMapObjectSource.
Parameters
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.<p>If the old route is not found in the source, then the call is equivalent to calling add_object.</p>
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
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
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
distance
Methods
operator fun plus(distance: RouteDistance): RoutePoint
Parameters
operator fun minus(distance: RouteDistance): RoutePoint
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).
Extends: ru.dgis.sdk.map.MapObject
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(pedestrian: PedestrianRouteSearchOptions)
Parameters
pedestrian
RouteSearchOptions(publicTransport: PublicTransportRouteSearchOptions)
Parameters
publicTransport
Methods
fun match(
bicycle: Function1,
car: Function1,
pedestrian: Function1,
publicTransport: Function1,
scooter: Function1,
taxi: Function1,
truck: Function1
): T
Parameters
bicycle
car
pedestrian
publicTransport
scooter
taxi
truck
Returns
T
fun toString(): String
Returns
fun hashCode(): Int
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
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.
Extends: ru.dgis.sdk.NativeObject
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
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
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
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
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.
Properties
val value
ScaleMapEvent
Map scale change event.
Extends: ru.dgis.sdk.map.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
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
Properties
val startTime
Action start time. Missing if unknown.
val finishTime
Action start time. Missing if unknown.
val weekTimeIntervals
Work intervals within a week.<p>Intervals are ordered by time.</p><p>The first interval can start from last week.</p>
ScooterBriefRouteInfo
Basic information about the scooter route.
ScooterBriefRouteInfo(length: RouteDistance, landmark: String)
Basic information about the scooter route.
Parameters
Properties
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
Landmark.
val maneuvers
Chain of consecutive maneuvers.
ScooterInstructionCrossroadManeuver
ScooterInstructionCrossroadManeuver(direction: ScooterInstructionCrossroadManeuverDirection = ScooterInstructionCrossroadManeuverDirection.STRAIGHT, turnAngle: Int = 0)
Parameters
Properties
val direction
Direction of movement.
val turnAngle
Angle of turn in degrees <a href="#">-180,180</a>.
ScooterInstructionFinish
End of the scooter part of the route.
ScooterInstructionFinish()
End of the scooter part of the route.
ScooterInstructionStart
Beginning of the scooter part of the route.
ScooterInstructionStart()
Beginning of the scooter part of the route.
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.<p>Cannot be negative.</p>
ScreenDistance(value: Float = 0.0f)
Distance between objects on the screen in millimeters.<p>Cannot be negative.</p>
Parameters
value
Properties
val value
ScreenPoint
Point in screen coordinates.<p>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.</p>
ScreenPoint(x: Float = 0.0f, y: Float = 0.0f)
Point in screen coordinates.<p>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.</p>
Parameters
ScreenShift
Horizontal and vertical shift of the map in the coordinate space of the screen.<p>Positive shift direction: dx - to the right, dy - down.</p>
ScreenSize
Size in pixels.
SearchLayout
UI control that provides a search bar and displays search results.
Extends: android.widget.LinearLayout
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
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.
Extends: ru.dgis.sdk.NativeObject
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
@JvmStatic
fun createOfflineManager(context: Context): SearchManager
Creates a search engine that works with preloaded data.
Parameters
@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
SearchOptions
Options for creating SearchLayout.
SearchOptions(
searchType: SearchType = SearchType.defaultSearchType,
pageSize: Int = defaultPageSize,
sortingType: SortingType = SortingType.BY_RELEVANCE,
suggestorType: SuggestorType = SuggestorType.GENERAL
)
Options for creating SearchLayout.
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
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):<li>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.</li><li>When specifying a rectangular area of interest (bounding_rect), the search is performed in its neighbourhood.</li><li>If no higher-priority parameters are specified, the user position is taken into account.</li><p>This condition is not working yet.</p><li>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.</li><li>If nothing from the above is specified, the search is performed on the global index.</li>
Extends: ru.dgis.sdk.NativeObject
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.<p>No limit by default.</p>
Parameters
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.<p>By default, all types except Route are allowed.</p>
Parameters
fun setPageSize(pageSize: Int): SearchQueryBuilder
Sets the preferred number of elements on the results page.
Valid values are <a href="#">1;50</a><p>. The default value is 10.</p>
Parameters
fun setDirectoryFilter(filter: DirectoryFilter): SearchQueryBuilder
Sets filtering for the search query.
Parameters
fun setSortingType(sortingType: SortingType): SearchQueryBuilder
Sets sorting for the search query.
Parameters
@JvmStatic
fun fromQueryText(queryText: String): SearchQueryBuilder
Starts building a text search query with the specified text.
Parameters
@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.<p>The original #query remains unchanged.</p>
Parameters
SearchResult
Result of the search engine work.
Extends: ru.dgis.sdk.NativeObject
Methods
fun markerTitles(objectIds: List<DgisObjectId>): List<Future<List<UIMarkerInfo>>>
Gets texts of markers by their IDs.
A vector <future> is returned,
because no more than 50 IDs per request can be sent to the cloud.</p>
Parameters
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.<p>These are the so-called “quick filters” - filters that are most interesting to the user. There are no more than 5.</p>
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)<a href="#">point_last</a>.
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)<a href="#">point_last</a>.
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
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
ShowRouteControl
A control that controls the map flyover to the route.
Extends: ru.dgis.sdk.map.MapControl
ShowRouteControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
A control that controls the map flyover to the route.
Parameters
Methods
fun showRoute(geometry: Geometry, styleZoomToTiltRelation: StyleZoomToTiltRelation?): Unit
Parameters
fun cancelRouteOverview(): Unit
Returns
Properties
SimpleCheckableItem
Simple checkable element from CheckableItemsGroup.
Extends: ru.dgis.sdk.directory.CheckableItem
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.
Extends: ru.dgis.sdk.map.MapObject
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.
Extends: ru.dgis.sdk.map.MapObject
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.
Extends: ru.dgis.sdk.NativeObject
Properties
var speedMode
Simulator operation mode.
SimulationSpeedMode
SimulationSpeedMode(overSpeed: SimulationAutoWithOverSpeed)
Parameters
overSpeed
Methods
fun match(speed: Function1, overSpeed: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
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
Methods
fun onAttachedToWindow(): Unit
Returns
fun onDetachedFromWindow(): Unit
Returns
fun onLayout(
changed: Boolean,
left: Int,
top: Int,
right: Int,
bottom: Int
): Unit
Parameters
fun generateLayoutParams(attrs: AttributeSet?): LayoutParams?
Parameters
fun generateLayoutParams(p: LayoutParams?): LayoutParams?
Parameters
SortingFilter
Sorting filter.
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.
Extends: ru.dgis.sdk.NativeObject
Properties
var enabledSoundCategories
Set of flags for sound notifications.
var notificationVolume
var mute
Source
Data source for the map.<p>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.</p><p>The object properties can be set:</p><ul><li>directly for the object;</li><li>for the data source (all objects added to the source obtain these properties);</li><li>for the map (all objects added to the map obtain these properties);</li><li>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.</li></ul>
Extends: ru.dgis.sdk.NativeObject
SpecialSpace
Special parking spot.
SpecialSpace(
type: SpecialSpaceType,
name: String,
count: String?
)
Special parking spot.
Parameters
Properties
val type
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
SpeedRange
Speed interval. Speed is specified in meters per second.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
Style
Style with a set of map object properties (see ISource).
Extends: ru.dgis.sdk.NativeObject
Properties
val styleAttributes
Gets default properties for objects that have the specified layer applied to them.
StyleBuilder
Style builder.
Extends: ru.dgis.sdk.NativeObject
Methods
fun setStyleAttribute(name: String, value: AttributeValue): StyleBuilder
Parameters
StyleLayerId
ID of the style layer.
Properties
val id
StyleZoom
Style zoom level.<p>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.</p><p>StyleZoom cannot be negative.</p>
StyleZoom(value: Float = 0.0f)
Style zoom level.<p>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.</p><p>StyleZoom cannot be negative.</p>
Parameters
value
Properties
val value
StyleZoomFollowController
Controller for following the style zoom level of the map.
Extends: ru.dgis.sdk.map.FollowController
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
Suggest
Search suggestion.
Extends: ru.dgis.sdk.NativeObject
Properties
val handler
Suggestion selection handler.
val suggestedType
Suggestion type.
val title
Suggestion title.
val subtitle
Suggestion subtitle.
SuggestHandler
Suggestion selection handler.
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
Properties
val isObjectHandler
val asObjectHandler
val isPerformSearchHandler
val asPerformSearchHandler
val isIncompleteTextHandler
val asIncompleteTextHandler
val value
SuggestObjectHandler
Specific object from a directory is suggested.
Extends: ru.dgis.sdk.NativeObject
Properties
val item
Suggested object.
SuggestQuery
Request a search suggestion.
Extends: ru.dgis.sdk.NativeObject
SuggestQueryBuilder
Builder of queries to the suggestor.
Extends: ru.dgis.sdk.NativeObject
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.<p>No limit by default</p>
Parameters
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.<p>By default, all types except Route are allowed.</p>
Parameters
fun setSuggestorType(suggestorType: SuggestorType): SuggestQueryBuilder
Sets the type of suggester.<p>The default value is #SuggestorType::General.</p>
Parameters
fun setLimit(limit: Int): SuggestQueryBuilder
Sets the desired number of suggestions.
Valid values are from the range <a href="#">1;50</a>.<p>The default value is 10.</p>
Parameters
@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.<p>The original #query remains unchanged.</p>
Parameters
SuggestResult
Result of the suggester work.
Extends: ru.dgis.sdk.NativeObject
Properties
val suggests
Set of suggestions.<p>The set is empty if no matching suggestions are found.</p>
SystemCertificate
System SSL certificate.
SystemCertificate()
System SSL certificate.
SystemMemoryManager
Interface of the system memory management.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
Methods
fun getTerritories(route: Route): Future<List<Territory>>
Returns the minimum required list of offline territories in route order.
Parameters
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.
Extends: ru.dgis.sdk.update.Package
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.
Extends: ru.dgis.sdk.NativeObject
Methods
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.<p>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.</p>
Tilt(value: Float = 0.0f)
Tilt angle in degrees, where 0 is nadir (looking vertically down), 90 is horizon in front.<p>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.</p>
Parameters
value
Properties
val value
TiltFollowController
Controller for following the tilt angle of the map.
Extends: ru.dgis.sdk.map.FollowController
TiltFollowController(styleZoomToTilt: StyleZoomToTiltRelation)
Creating a map angle tracking controller.
Parameters
styleZoomToTilt
Dependence of the camera tilt angle on the style zoom level.
TiltSettings
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.
TimePoint
Class representing a point in time.
Implements: kotlin.Comparable
TimePoint(timeFromEpoch: Duration)
Class representing a point in time.
Parameters
timeFromEpoch
Methods
fun toString(): String
Returns
@JvmStatic
fun ofEpochMilliseconds(milliseconds: Long): TimePoint
Parameters
@JvmStatic
fun now(): TimePoint
Time elapsed since 00:00:00 UTC, January 1, 1970 (Unix time).
Returns
TradeLicense
Organization license.
Traffic
Description of the traffic data.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.map.MapControl
TrafficAndParkingControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Container with controls for displaying parking lots and traffic jams.
Parameters
TrafficCollector
Interface for managing traffic information collection service.<p>This interface is thread-safe.</p>
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.map.MapControl
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
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.
Extends: ru.dgis.sdk.map.MapControl
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
TrafficControlModel
Model of a traffic jam visibility control.<p>This interface is thread-safe.</p>
Extends: ru.dgis.sdk.NativeObject
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
Control status.
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
Properties
var pointObjectsPosition
PointObjectsPosition
TrafficLinePointObject
TrafficLinePointObjectView
Extends: android.widget.FrameLayout
TrafficLinePointObjectView(
context: Context,
pointObject: TrafficLinePointObject,
position: PointObjectsPosition
)
Parameters
Methods
fun removeWithAnimation(): Unit
Returns
Properties
TrafficRoute
Extends: ru.dgis.sdk.NativeObject
Methods
TrafficRouter
Interface for finding a route based on traffic jam data.
Extends: ru.dgis.sdk.NativeObject
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.
<p>An empty route set is a valid result, meaning that a route
matching the specified search criteria cannot be found.</p>
<p>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.</p>
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.
<p>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.</p>
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.<p>This interface is thread-safe.</p>
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.map.Source
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
Pass 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
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
Properties
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.
Extends: ru.dgis.sdk.NativeObject
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 <a href="#">begin,end</a> range.
Parameters
Properties
val size
Amount of elements.
val isEmpty
Elements are missing.
val first
First element.
val last
Last element.
val entries
All elements.
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
VendorConfig
Overrides SDK configuration.
VendorConfig()
Methods
fun match(
none: Function0<T>,
fromAsset: Function1,
fromFile: Function1,
fromString: Function1
): T
Parameters
none
fromAsset
fromFile
fromString
Returns
T
fun toString(): String
Returns
fun hashCode(): Int
Returns
Properties
val isNone
val isFromAsset
val asFromAsset
val isFromFile
val asFromFile
val isFromString
val asFromString
val value
VendorConfigFromAsset
Overrides SDK settings by specifying the path to an Android app asset.
VendorConfigFromAsset(path: String)
Overrides SDK settings by specifying the path to an Android app asset.
Parameters
path
Properties
val path
Path relative to the asset root directory.
VendorConfigFromFile
Overrides SDK settings by specifying a path to a file in the device file system.
VendorConfigFromFile(path: String)
Overrides SDK settings by specifying a path to a file in the device file system.
Parameters
path
Properties
val path
Path to the file.
VendorConfigFromString
Overrides SDK settings by specifying the file contents.
VendorConfigFromString(contents: String)
Overrides SDK settings by specifying the file contents.
Parameters
contents
Properties
val contents
Contents of the settings override file.
Voice
Voice package for the navigator.
Extends: ru.dgis.sdk.update.Package
Methods
fun playWelcome(): Future<Unit>
Plays the voice sample.
Returns
Future<Unit>future, that becomes ready, when sample playing is finished.
Properties
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.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>The complexity of the operation is log2(N), where N = size.</p>
Parameters
fun findNearForward(point: RoutePoint): RoutePoint?
Finds the nearest element the position of which is
<
= point.<p>The complexity of the operation is log2(N), where N = size.</p>
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.
WeekTimeInterval
Time interval within a week.
Widget
Base class representing a widget for filtering search results.<p>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.</p>
Extends: ru.dgis.sdk.NativeObject
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.
WorkStatus
Work status.
WorkTimeFilter
Filter by the object's opening hours.
Either open now or open for a specific date and time.
Methods
fun match(workTime: Function1, isOpenNow: Function1): T
Parameters
fun toString(): String
Returns
fun hashCode(): Int
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.<p>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.</p><p>Zoom cannot be negative.</p>
Zoom(value: Float = 0.0f)
Zoom level.<p>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.</p><p>Zoom cannot be negative.</p>
Parameters
value
Properties
val value
ZoomControl
Container with controls to increase and decrease the zoom level.
Extends: ru.dgis.sdk.map.MapControl
ZoomControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Container with controls to increase and decrease the zoom level.
Parameters
ZoomControl
Container with controls to increase and decrease the zoom level.
Extends: ru.dgis.sdk.map.MapControl
ZoomControl(
context: Context,
attrs: AttributeSet? = null,
defStyle: Int = 0
)
Container with controls to increase and decrease the zoom level.
Parameters
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.
Extends: ru.dgis.sdk.NativeObject
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.<p>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.</p><p>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_speed<a href="#">i</a> > min_speed<a href="#">i+1</a>
max_speed<a href="#">i</a>
<
= min_speed<a href="#">i+2</a>
max_speed<a href="#">i</a>
<
max_speed<a href="#">i+1</a>.
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.</p><p>The map scale is selected from the speed_range_to_style_zoom_sequence using the algorithm:</p><li>At the start of the navigation, the sequence element with index == 0 is selected.</li><li>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.</li><li>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.</li><p>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.</p><p>After passing the maneuver, the zoom level smoothly decreases.</p>
Extends: ru.dgis.sdk.NativeObject
Properties
var speedRangeToStyleZoomSequence
Sequence of speed intervals and their corresponding scales.
Used for automatic map scaling in the navigator based on speed.
val speedRangeToStyleZoomFreeRoamSequence
Sequence of speed intervals and corresponding scales when driving in FreeRoam mode.
Used to automatically change the scale in the navigator depending on speed.
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.