All Classes and Interfaces

Class
Description
Deprecated. 
An asset package based on the application-bundled Android assets (the 'assets' folder of
the APK).
AndroidUtils is an internal class of the SDK.
It is not intended for public usage.
A class describing animation effect.
A builder for AnimationStyle instances.
Possible animation types.
The accepted values of this constant namespace.
An abstract asset package class.
A tile data source where each map tile is a seperate image file bundled with the application.
The requests are generated using a template scheme, where tags in the basePath string are replaced with actual values.
The following tags are supported: zoom, x, y, xflipped, yflipped, quadkey.

For example, if basePath = "t{zoom}_{x}_{y}.png" and the requested tile has zoom == 2,
x == 1 and y == 3, then the tile will be loaded from the following path: "t2_1_2.png".
A helper class for managing application-bundled assets.
A highly configurable popup implementation that allows the user to specify a title, description, colors, images, font sizes etc.
A button that can be used to add interactivity to balloon popups.
A container class that provides information about a click performed on
a BalloonPopupButton element.
A style for balloon popup buttons.
A builder class for BalloonPopupButtonStyle.
A listener class for balloon popups.
The listener receives events about clicked buttons, etc.
Margins info for balloon popup.
A style for balloon popups.
A builder class for BalloonPopupStyle.
A platform independent main view class for all mapping operations.
Allows the user to manipulate the map and access various related components.
A base class for billboard elements that can be displayed on the map.
Billboards can either be given a concrete position on the map or be attached to
other billboards.
Possible orientation modes for billboards.
The accepted values of this constant namespace.
Possible scaling modes for billboards.
The accepted values of this constant namespace.
A base class for BillboardStyle subclasses.
A base class for BillboardStyleBuilder subclasses.
A wrapper class for binary data (Blob).
A class that provides the functionality to store, compress, uncompress and resize basic image formats.
Currently supported formats are png and jpeg.
Tile data source that uses given bitmap with two, three or four control points define a raster overlay.
Note: if two points are given, conformal transformation is calculated.
A helper class for loading bitmaps and converting Bitmaps to Android Bitmaps an vice versa.
An asset package based on the assets bundled with the application.
On Android these live inside the APK, where no file path reaches them - which is what
separates this from DirAssetPackage; on iOS and Windows they are the app bundle's own files.
Note: assets and directories with names starting with '.' are ignored.
A tile data source that loads tiles from another tile data source and caches them.
CartoCSS style definition for vector tiles.
A curve drawn on the sky.

Two ways to define one, and the first is what a daily path is:
- as a CIRCLE about an axis: every direction at a fixed angle from the axis.
Reports clicks on the objects of a CelestialLayer.
A layer of objects that live in the sky rather than on the map: anything placed by a
direction, an object overhead, or a curve traced across the sky.

Nothing here is tied to the map's coordinates unless an object asks for it (see
CelestialObject::setPosition), so panning the map does not drag the sky along.
A base class for objects that are placed in the sky rather than on the map.

An object is anchored in one of two ways:
- by DIRECTION (azimuth and altitude), with an optional distance.
 
A flat, camera-facing object in the sky: a disc, a point of light, an icon overhead.

Its size is given either as an ANGULAR size in degrees - which is what a real body has, so it
grows and shrinks with the field of view like everything else in the world - or as a fixed
SCREEN size in pixels, which is what an icon or a marker wants.
A basic click information object.
Possible click types.
The accepted values of this constant namespace.
Possible cluster builder modes.
The accepted values of this constant namespace.
A vector layer that supports clustering point-type features.
A Pairwise centroid hierarchical clustering algorithm is used internally.
A special callback interface for building cluster elements from set of existing vector element.
A color represented in RGBA space, alpha is expected to be non-premultiplied.
Possible image formats.
The accepted values of this constant namespace.
A tile data source that combines two data sources (usually offline and online) and selects tiles
based on zoom level.
Compiled style set definition for vector tiles.
The kind of an external data source added to a CompositeVectorTileLayer.
The accepted values of this constant namespace.
A VectorTileLayer that can weave named external data sources (raster, hillshade,
merged vector / contour) into the master CartoCSS style's layer order.

Each external source is placed at the position of a matching layer name in the style
project's "layers" array, and configured by a matching '#name { ...
A tile data source that generates vector contour lines on the fly from an
RGB-encoded elevation (DEM) tile data source.
View specific state determined by the culling process.
A popup with user defined handler.
A handler class for custom popups.
A raster tile layer that renders each tile through a custom GLSL fragment shader ("filter").
The data source can be any raster TileDataSource - most commonly an RGB-encoded elevation
(terrarium/mapbox) source, but any raster works.
An asset package based on a file system directory.
Assets are read directly from the directory, thus the assets can be modified
on the fly without repackaging them into a ZIP archive.
 
An implementation of Ramer-Douglas-Peucker algorithm for geometry simplification.
Simplifier works on lines and polygons.
Simplification is done in two passes - first pass uses fast Radial Distance vertex rejection,
second pass uses Ramer-Douglas-Peuckerworst algorithm (with worst case quadratic complexity).
A vector layer that supports editing its contents.
Abstract base class for raster elevation decoders.
EPSG:3857 is a Spherical Mercator projection coordinate system popularized by web services such as Google and later OpenStreetMap.
Z-coordinate denotes height in meters.
EPSG:4326 is a projection coordinate system that uses WGS84 coordinates (longitude/latitude).
Z-coordinate denotes height in meters.
What an app implements to receive facade events.

A director, so a Java or Objective-C subclass works.
A feature consisting of geometry and properties.
A feature builder for constructing individual features.
A collection of features.
A search service for finding features from a specified feature collection.
 
The atmosphere: the haze distant ground fades into, the colours it carries up into the sky,
and the stars beyond it.
Possible free roam modes: what a one-finger drag does, and which camera model the
tilt and the rotation follow.
The accepted values of this constant namespace.
A geographical address describing country, region, county and other information.
A geocoding request describing text-based query and other optional constraints.
A geocoding result object describing address, features (geometry) and rank of the result.
 
An abstract base class for geocoding services.
A GeoJSON parser.
Parser supports Geometry, Feature and FeatureCollection inputs.
A GeoJSON writer.
A tile data source that builds vector tiles from GeoJSON inputs.
A base class for all geometry types.
A collection of multiple geometries that can be displayed on the map.
A style for geometry collections.
A builder class for GeometryCollectionStyle.
Base class for geometry simplifiers.
Geometry type, following the GeoJSON names.
The accepted values of this constant namespace.
 
Hillshade rendering method.
The accepted values of this constant namespace.
A tile layer that displays an overlay hillshading.
A tile data source that loads tiles using a HTTP connection.
The requests are generated using a template scheme, where tags in the baseURL string are replaced with actual values.
The following tags are supported: s, z, zoom, x, y, xflipped, yflipped, quadkey, frame.

For example, if baseURL = "https://tile.openstreetmap.org/{zoom}/{x}/{y}.png" and the requested tile has zoom = 2,
x = 1 and y = 3, then the tile will be loaded from the following URL: "https://tile.openstreetmap.org/2/1/3.png".

This data source also supports PMTiles archives hosted over HTTP.
 
An abstract billboard element with a dynamically drawn bitmap that can be displayed on the map.
A style for labels.
A builder class for LabelStyle.
An abstract base class for all layers.
Container for all raster and vector layers of the map view.

The order in which layers are added is important for vector elements like Points, Lines
and Polygons.
 
Directional light (sun) configuration, attached to the map via Options::setLightOptions.
The sun direction drives the sky shader, terrain surface lighting and shadows.
Note: this class is experimental and may change or even be removed in future SDK versions.
One point on a day-cycle light curve: the scene light at a given sun height.

A list of these IS the "formula" that turns an hour into a look.
 
A geometric line string that can be displayed on the map.
Possible styles in which line end points are drawn.
The accepted values of this constant namespace.
Line geometry defined by a list of map positions.
 
Possible styles in which line segments are connected with each other.
The accepted values of this constant namespace.
A style for lines.
A builder class for LineStyle.
Spatial index type for local data source.
The accepted values of this constant namespace.
A modifiable vector data source that keeps all the elements in the local memory.
Optionally vector elements can be kept in a spatial index and only the visible elements get rendered.
There can be a small delay before previously invisible elements become visible after view changes.
This makes it suitable for cases where there are a large number of static vector elements.

The draw order of vector elements within the data source is undefined.
A diagnostic log for various SDK events.
Listener for events logged by the SDK.
A builder that cuts a navigation maneuver arrow out of a route geometry.

The arrow is the piece of the route around the maneuver point - LengthBefore metres of the
leg the driver is on, LengthAfter metres of the leg it turns into - plus the point where it
ends and the compass bearing it ends with.

The result is a FeatureCollection in WGS84 holding ONE line, running the way the driver
goes.
A container class that defines an axis aligned cuboid on the map using minimum and maximum map positions.
Valid ranges for map bounds depend on the projection used.
A decoder for MapBox encoded elevation tiles
An online geocoding service that uses MapBox geocoder.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Geocoding and reverse geocoding perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of the MapBox service to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
An online reverse geocoding service that uses MapBox geocoder.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Geocoding and reverse geocoding perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of the MapBox service to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
A container class that provides information about a click performed on
an empty area of the map.
A bounding area on the map.
Listener for events like map clicks etc.
A container class that provides information about a map interaction performed from UI.
The payload of the facade's map.moved and map.stable events.
What caused a camera change.
The accepted values of this constant namespace.
A double precision map position defined using three coordinates.
 
 
A container class that defines a half closed range of values using minimum and maximum values.
The map renderer component.
Listener for specific map renderer events.
An immutable map tile, used by tile layers for representing small pieces of map at different zoom levels and coordinates.
An online tile data source that connects to MapTiler Cloud tile server.
This data source should be used with vector tiles,
though by customizing service URL could be used with raster tiles also.
Be sure to read the Terms and Conditions of your MapTiler service provider to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
A double precision map vector defined by 3 coordinates.
A billboard element with a static bitmap that can be displayed on the map.
A style for markers.
A builder class for MarkerStyle.
The facade API, as an app sees it.

Experimental and incomplete: only the property verbs exist so far, and they address the
default context.
The bridge between the object API and the facade.

Split off MassifApi so that class names no SDK type at all: a binding written by hand -
JNI, , N-API, dart:ffi - can carry the whole of MassifApi, and the C ABI already
does.
MBTiles tile schemes.
The accepted values of this constant namespace.
A tile data source that loads tiles from a local Sqlite database.
The database must contain table "tiles" with the following fields:
"zoom_level" (tile zoom level), "tile_column" (tile x coordinate),
"tile_row" (tile y coordinate), "tile_data" (compressed tile image).
Decoder for vector tiles in MapBox format.
A tile data source that loads tiles from another tile data source
and caches them in memory.
A tile data source that merges two MBVT/protobuf data sources into one.
It is assumed that the layer ids from the two sources are distinct.
A generic multi geometry container.
A multiline container.
A geocoding service that uses custom geocoding database files.
Note: this class is experimental and may change or even be removed in future SDK versions.
A reverse geocoding service that uses custom geocoding database files.
Note: this class is experimental and may change or even be removed in future SDK versions.
A multipoint container.
A multipolygon container.
A tile data source that handles multiple data sources.
An offline routing service that uses Valhalla routing tiles.
A 3D model that can be displayed on the map.

NML models can be created from Collada files directly and placed anywhere on the map or converted from KMZ files.
NML models are optimized for fast loading and rendering.
A style for NML models.
A builder class for NMLModelStyle.
A class containing various options for rendering and map manipulation.
A tile data source that combines two data sources (usually offline and online).
All requests are made first to first data source.
A geocoding service that uses custom geocoding database files.
Note: this class is experimental and may change or even be removed in future SDK versions.
A reverse geocoding service that uses custom geocoding database files.
Note: this class is experimental and may change or even be removed in future SDK versions.
An offline routing service that uses Massif-specific routing
database file created from OSRM prepared routing files.
Note: this class is experimental and may change or even be removed in future SDK versions.
The current action that describes the operation being performed with the package.
The accepted values of this constant namespace.
Possible error types for failed package downloads.
The accepted values of this constant namespace.
Information about map package.
 
Base class for offline map package manager.
A geocoding service that uses geocoding packages from package manager.
Base class for map package manager event listeners.
Includes callbacks for package list events and individual package events.
A reverse geocoding service that uses geocoding packages from package manager.
A routing service that uses routing packages from package manager.
A tile data source that loads tiles from package manager.
A routing service that uses routing packages from package manager.
Package meta info element.
The status of the map package.
Tile mask contains map package spatial coverage information and
can be used for very fast 'tile in package' tests.
Tile status.
The accepted values of this constant namespace.
Package types.
The accepted values of this constant namespace.
Possible panning modes for dual touch user input.
The accepted values of this constant namespace.
How fast a one-finger pan moves the map on a TILTED view, where a touch near the horizon
corresponds to a point far away and a touch at the bottom of the screen to a near one.
The accepted values of this constant namespace.
An online geocoding service that uses Mapzen Pelias geocoder.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Geocoding and reverse geocoding perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of your Pelias service provider to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
An online reverse geocoding service that uses Mapzen Pelias geocoder.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Geocoding and reverse geocoding perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of your Pelias service provider to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
A tile data source that loads tiles from another tile data source
and caches them in an offline sqlite database.
Possible pivot modes.
The accepted values of this constant namespace.
A tile data source that loads tiles from a PMTiles v3 archive file.
PMTiles is a single-file archive format for pyramids of tiled data.
The archive format supports efficient random access and metadata storage.
A geometric point that can be displayed on the map.
Point geometry.
 
A style for points.
A builder class for PointStyle.
A geometric polygon that can be displayed on the map.
Polygons can be concave and have multiple overlapping holes.
A geometric 3d polygon that can be displayed on the map.
3d polygons can be concave and have multiple overlapping holes.
A style for 3d polygons.
A builder class for Polygon3DStyle.
Polygon geometry defined by an outer ring and optional multiple inner rings (holes).
 
A style for polygons.
A builder class for PolygonStyle.
An abstract billboard element that can be displayed on the map.
A container class that provides information about a click performed on
a popup.
A container class that provides information how to draw the popup.
A style for popups.
A builder class for PopupStyle.
A full-screen post-processing effect.
An abstract base class for all projections.
A container class that provides information about a click performed on raster tile.
Listener for raster tile element events like clicks etc.
Supported raster tile filtering modes.
The accepted values of this constant namespace.
A tile layer where each tile is a bitmap.
An internal listener class for notifying about screen redraw requests.
Listener for renderer capture events.
Possible render projection modes.
The accepted values of this constant namespace.
A reverse geocoding request describing search location.
An abstract base class for reverse geocoding services.
A class that defines a route matching result edge.
 
A class that defines a route matching result point.
Route matching point type.
The accepted values of this constant namespace.
 
A class that defines required attributes for route matching.
A class that defines list of matching points from road network.
Routing action type.
The accepted values of this constant namespace.
A class that defines a routing instruction at specified position in the path.
 
A class that defines required attributes for routing (end points, etc).
A class that defines list of routing actions and path geometry.
An abstract base class for routing services (either online or offline).
A container class that defines a bounding box on the screen using minimum and maximum screen positions.
A screen position defined by x,y floating point numbers.
 
A search request description.
An offline routing service that uses SGRE routing engine.
Note: this class is experimental and may change or even be removed in future SDK versions.
Shader-based sky configuration, attached to the map via Options::setSkyOptions.

The sky is drawn as a single full-screen pass before everything else, so it costs one
quad regardless of the camera.
How finely the atmosphere is integrated.
Possible sky appearances.
Deprecated. 
 
 
 
 
A base class for other Style objects.
A base class for other StyleBuilder subclasses.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
How far a flattened terrain goes back towards a plain 2D map.
The accepted values of this constant namespace.
3D terrain configuration, attached to the map via Options::setTerrainOptions.
The elevation data source can be shared with a HillshadeRasterTileLayer, in which case
both features use the same tiles (ideally the data source should be wrapped in a
MemoryCacheTileDataSource to avoid duplicate loads).
Note: this class is experimental and may change or even be removed in future SDK versions.
A decoder for Terrarium encoded elevation tiles
A text element that can be displayed on the map.
Margins info for text.
A style for text labels.
A builder class for TextStyle.
A wrapper class for tile data.
Abstract base class for tile data sources.
What a tile download reports, as one object.

A listener has four callbacks with four different arguments; a facade event carries a payload,
and one payload class over the four is what lets a binding subscribe to "the download" rather
than to each of them.
Listener for tile downloader.
Supported binary vector tile formats.
The accepted values of this constant namespace.
An abstract base class for all tile layers.
Interface for monitoring tile loading events.
A named set of the tile LOD numbers, so a platform picks a density with one call rather
than by tuning four knobs that multiply.
The accepted values of this constant namespace.
The policy to use when looking for tiles that are not available.
The accepted values of this constant namespace.
A helper class for mapping coordinates to tiles and back.
An online geocoding service that uses TomTom geocoder.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Geocoding and reverse geocoding perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of TomTom to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
An online reverse geocoding service that uses TomTom geocoder.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Geocoding and reverse geocoding perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of TomTom to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
A decoder for Torque layer that accepts json-based Torque tiles.
A vector tile layer for rendering time-based animated point clouds.
How the facade reaches an app's UI thread.

A subscription that asked for UI delivery is queued rather than run where the event was
produced, and this is what wakes the queue: post() is called from the producing thread and
must arrange for MassifApi::drain to run on the UI thread.

Without one, UI subscriptions run INLINE on whatever thread produced the event and the
facade says so once - delivering on the wrong thread beats dropping the event, but it is not
what the subscription asked for.
A container class that provides information about a click performed on
an UTF grid.
Listener for vector element events like clicks etc.
An offline routing service that uses Valhalla routing tiles.
An online routing service that uses MapBox Valhalla routing service.
As the class connects to an external (non-Massif) service, this class is provided "as-is",
future changes from the service provider may not be compatible with the implementation.
Routing and route matching perform network requests and must be executed in non-UI background thread.
Be sure to read the Terms and Conditions of your Valhalla service provider to see if the
service is available for your application.
Note: this class is experimental and may change or even be removed in future SDK versions.
JSON value.
A helper class for building variant arrays.
A helper class for building variant objects.
Variant type.
The accepted values of this constant namespace.
 
A wrapper class for vector element data.
Abstract base class for envelope based vector data sources.
Listener interface for catching various events
during map editing interactions.
A base class for all vector elements (points, lines, texts, models, etc).
A container class that provides information about a click performed on
a vector element.
A container class that provides information about a dragging performed on
a vector element or vector element vertex.
Possible drag modes.
The accepted values of this constant namespace.
Different types of styles for control points created for selected vector elements.
The accepted values of this constant namespace.
The intended result of the drag operation.
The accepted values of this constant namespace.
Listener for vector element events like clicks etc.
A search service for finding vector elements from the specified vector data source.
Depending on the datasource, searching may perform network requests and must be executed in non-UI background thread.
 
A vector layer that loads data using an envelope.
A container class that provides information about a click performed on vector tile feature.
Abstract base class for vector tile decoders.
Listener for vector tile element events like clicks etc.
A vector tile feature consisting of id, layer, geometry and properties.
A vector tile feature consisting of id, layer, geometry and properties.
A collection of vector tile features.
 
A tile layer where each tile is a bitmap.
Vector tile rendering order.
The accepted values of this constant namespace.
A search service for finding features from the specified vector tile data source.
Depending on the datasource, searching may perform network requests and must be executed in non-UI background thread.
A class containing various view parameters for a view state.
An asset package based on ZIP archived.
Only deflate-based ZIP archives are supported.