Other Constants
MGLClusterIdentifierInvalid
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLErrorDomain
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLExpressionInterpolationModeCubicBezier
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLExpressionInterpolationModeExponential
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLExpressionInterpolationModeLinear
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLFontColorAttribute
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLFontNamesAttribute
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLFontScaleAttribute
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLMapViewDecelerationRateFast
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLMapViewDecelerationRateImmediate
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLMapViewDecelerationRateNormal
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLMapViewPreferredFramesPerSecondDefault
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLMapViewPreferredFramesPerSecondLowPower
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
The font color expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontColorAttribute
Swift
static let fontColorAttribute: MGLAttributedExpressionKey
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLMapViewPreferredFramesPerSecondMaximum
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackErrorNotification
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackMaximumMapboxTilesReachedNotification
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackProgressChangedNotification
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackUserInfoKeyError
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackUserInfoKeyMaximumCount
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackUserInfoKeyProgress
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLOfflinePackUserInfoKeyState
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionBuffer
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionClipsCoordinates
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionClusterProperties
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionClusterRadius
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionClustered
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionLineDistanceMetrics
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionMaximumZoomLevel
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionMaximumZoomLevelForClustering
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionMinimumZoomLevel
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionSimplificationTolerance
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLShapeSourceOptionWrapsCoordinates
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionAttributionHTMLString
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionAttributionInfos
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionCoordinateBounds
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionDEMEncoding
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionMaximumZoomLevel
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionMinimumZoomLevel
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionTileCoordinateSystem
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MGLTileSourceOptionTileSize
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MapboxVersionNumber
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyMaximumCount
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]
MapboxVersionString
The following constants are available globally.
-
MGLFontNamesAttribute
The font name string array expression used to format the text.
Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontNamesAttribute
Swift
static let fontNamesAttribute: MGLAttributedExpressionKey
-
MGLFontScaleAttribute
The font scale number expression relative to
MGLSymbolStyleLayer.textFontSize
used to format the text.Declaration
Objective-C
extern const MGLAttributedExpressionKey _Nonnull MGLFontScaleAttribute
Swift
static let fontScaleAttribute: MGLAttributedExpressionKey
-
MGLFontColorAttribute
-
MGLClusterIdentifierInvalid
An
NSUInteger
constant used to indicate an invalid cluster identifier. This indicates a missing cluster feature.Declaration
Objective-C
extern const NSUInteger MGLClusterIdentifierInvalid
Swift
let MGLClusterIdentifierInvalid: UInt
-
MGLShapeSourceOptionWrapsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be wrapped to accomodate coordinates with longitudes beyond −180 and 180. The default value isNO
.Setting this option to
YES
affects rendering performance.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionWrapsCoordinates
Swift
static let wrapsCoordinates: MGLShapeSourceOption
-
MGLShapeSourceOptionClipsCoordinates
An
NSNumber
object containing a Boolean value; specifies whether the shape of anMGLComputedShapeSource
should be clipped at the edge of each tile. The default value isNO
.Setting this option to
YES
affects rendering performance. Use this option to clipMGLPolyline
s andMGLPolygon
s at tile boundaries without artifacts.This option is used with the
MGLComputedShapeSource
class; it is ignored when creating anMGLShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClipsCoordinates
Swift
static let clipsCoordinates: MGLShapeSourceOption
-
MGLOfflinePackProgressChangedNotification
Posted by the shared
MGLOfflineStorage
object when anMGLOfflinePack
object’s progress changes. The progress may change due to a resource being downloaded or because the pack discovers during the download that more resources are required for offline viewing. This notification is posted whenever any field in theprogress
property changes.The
object
is theMGLOfflinePack
object whose progress changed. TheuserInfo
dictionary contains the pack’s current state in theMGLOfflinePackUserInfoKeyState
key and details about the pack’s current progress in theMGLOfflinePackUserInfoKeyProgress
key. You may also consult theMGLOfflinePack.state
andMGLOfflinePack.progress
properties, which provide the same values.If you only need to observe changes in a particular pack’s progress, you can alternatively observe KVO change notifications to the pack’s
progress
key path.Related examples
See the Download an offline map example to learn how to calculate the progress of an offline download.
Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackProgressChangedNotification
Swift
static let MGLOfflinePackProgressChanged: NSNotification.Name
-
MGLOfflinePackErrorNotification
Posted by the shared
MGLOfflineStorage
object whenever anMGLOfflinePack
object encounters an error while downloading. The error may be recoverable and may not warrant the user’s attention. For example, the pack’s implementation may attempt to re-request failed resources based on an exponential backoff strategy or upon the restoration of network access.The
object
is theMGLOfflinePack
object that encountered the error. TheuserInfo
dictionary contains the error object in theMGLOfflinePackUserInfoKeyError
key.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackErrorNotification
Swift
static let MGLOfflinePackError: NSNotification.Name
-
MGLOfflinePackMaximumMapboxTilesReachedNotification
Posted by the shared
MGLOfflineStorage
object when the maximum number of Mapbox-hosted tiles has been downloaded and stored on the current device.The
object
is theMGLOfflinePack
object that reached the tile limit in the course of downloading. TheuserInfo
dictionary contains the tile limit in theMGLOfflinePackUserInfoKeyMaximumCount
key.Once this limit is reached, no instance of
MGLOfflinePack
can download additional tiles from Mapbox APIs until already downloaded tiles are removed by calling the-[MGLOfflineStorage removePack:withCompletionHandler:]
method.Declaration
Objective-C
extern const NSNotificationName _Nonnull MGLOfflinePackMaximumMapboxTilesReachedNotification
Swift
static let MGLOfflinePackMaximumMapboxTilesReached: NSNotification.Name
-
MGLOfflinePackUserInfoKeyState
The key for an
NSNumber
object that indicates an offline pack’s current state. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-integerValue
on the object to receive theMGLOfflinePackState
-typed state.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyState
Swift
static let state: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyProgress
The key for an
NSValue
object that indicates an offline pack’s current progress. This key is used in theuserInfo
dictionary of anMGLOfflinePackProgressChangedNotification
notification. Call-MGLOfflinePackProgressValue
on the object to receive theMGLOfflinePackProgress
-typed progress.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyProgress
Swift
static let progress: MGLOfflinePackUserInfoKey
-
MGLOfflinePackUserInfoKeyError
The key for an
NSError
object that is encountered in the course of downloading an offline pack. This key is used in theuserInfo
dictionary of anMGLOfflinePackErrorNotification
notification. The error’s domain isMGLErrorDomain
. SeeMGLErrorCode
for possible error codes.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyError
Swift
static let error: MGLOfflinePackUserInfoKey
-
The key for an
NSNumber
object that indicates the maximum number of Mapbox-hosted tiles that may be downloaded and stored on the current device. This key is used in theuserInfo
dictionary of anMGLOfflinePackMaximumMapboxTilesReachedNotification
notification. Call-unsignedLongLongValue
on the object to receive theuint64_t
-typed tile limit.Declaration
Objective-C
extern const MGLOfflinePackUserInfoKey _Nonnull MGLOfflinePackUserInfoKeyMaximumCount
Swift
static let maximumCount: MGLOfflinePackUserInfoKey
-
MGLTileSourceOptionDEMEncoding
An
NSNumber
object containing an unsigned integer that specifies the encoding formula for raster-dem tilesets. The integer corresponds to one of the constants described inMGLDEMEncoding
.The default value for this option is
MGLDEMEncodingMapbox
.This option cannot be represented in a TileJSON or style JSON file. It is used with the
MGLRasterDEMSource
class and is ignored when creating anMGLRasterTileSource
orMGLVectorTileSource
object.Declaration
Objective-C
extern const MGLTileSourceOption MGLTileSourceOptionDEMEncoding
Swift
static let demEncoding: MGLTileSourceOption
-
MGLTileSourceOptionTileSize
An
NSNumber
object containing a floating-point number that specifies the width and height (measured in points) at which the map displays each raster image tile when the map’s zoom level is an integer. The raster tile source scales its images up or down when the map’s zoom level falls between two integers.The default value for this option is 512. Version 4 of the Mapbox Raster Tiles API requires a value of 256, as do many third-party tile servers, so consult your provider’s documentation for the correct value.
This option is only applicable to
MGLRasterTileSource
objects; it is ignored when initializingMGLVectorTileSource
objects.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileSize
Swift
static let tileSize: MGLTileSourceOption
-
MGLShapeSourceOptionClustered
An
NSNumber
object containing a Boolean enabling or disabling clustering. If theshape
property contains point shapes, setting this option toYES
clusters the points by radius into groups. The default value isNO
.This option corresponds to the
cluster
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Related examples
See the Cluster point data and Use images to cluster point data examples to learn how to cluster point data with this
MGLShapeSourceOption
.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClustered
Swift
static let clustered: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterRadius
An
NSNumber
object containing an integer; specifies the radius of each cluster if clustering is enabled. A value of 512 produces a radius equal to the width of a tile. The default value is 50.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterRadius
Swift
static let clusterRadius: MGLShapeSourceOption
-
MGLShapeSourceOptionClusterProperties
An
NSDictionary
object where the key is anNSString
. The dictionary key will be the feature attribute key. The resulting attribute value is aggregated from the clustered points. The dictionary value is anNSArray
consisting of twoNSExpression
objects.The first object determines how the attribute values are accumulated from the cluster points. It is an
NSExpression
with an expression function that accepts two or more arguments, such assum
ormax
. The arguments should befeatureAccumulated
and the previously defined feature attribute key. The resulting value is assigned to the specified attribute key.The second
NSExpression
in the array determines which attribute values are accessed from individual features within a cluster.let firstExpression = NSExpression(format: "sum:({$featureAccumulated, sumValue})") let secondExpression = NSExpression(forKeyPath: "magnitude") let clusterPropertiesDictionary = ["sumValue" : [firstExpression, secondExpression]] let options : [MGLShapeSourceOption : Any] = [.clustered : true, .clusterProperties: clusterPropertiesDictionary]
This option corresponds to the
clusterProperties
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionClusterProperties
Swift
static let clusterProperties: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevelForClustering
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to cluster points if clustering is enabled. Defaults to one zoom level less than the value ofMGLShapeSourceOptionMaximumZoomLevel
so that, at the maximum zoom level, the shapes are not clustered.This option corresponds to the
clusterMaxZoom
source property in the Mapbox Style Specification.This option only affects point features within an
MGLShapeSource
object; it is ignored when creating anMGLComputedShapeSource
object.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevelForClustering
Swift
static let maximumZoomLevelForClustering: MGLShapeSourceOption
-
MGLShapeSourceOptionMinimumZoomLevel
An
NSNumber
object containing an integer; specifies the minimum zoom level at which to create vector tiles. The default value is 0.This option corresponds to the
minzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionMaximumZoomLevel
An
NSNumber
object containing an integer; specifies the maximum zoom level at which to create vector tiles. A greater value produces greater detail at high zoom levels. The default value is 18.This option corresponds to the
maxzoom
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLShapeSourceOption
-
MGLShapeSourceOptionBuffer
An
NSNumber
object containing an integer; specifies the size of the tile buffer on each side. A value of 0 produces no buffer. A value of 512 produces a buffer as wide as the tile itself. Larger values produce fewer rendering artifacts near tile edges and slower performance. The default value is 128.This option corresponds to the
buffer
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionBuffer
Swift
static let buffer: MGLShapeSourceOption
-
MGLShapeSourceOptionSimplificationTolerance
An
NSNumber
object containing a double; specifies the Douglas-Peucker simplification tolerance. A greater value produces simpler geometries and improves performance. The default value is 0.375.This option corresponds to the
tolerance
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionSimplificationTolerance
Swift
static let simplificationTolerance: MGLShapeSourceOption
-
MGLShapeSourceOptionLineDistanceMetrics
An
NSNumber
object containing a Boolean enabling or disabling calculating line distance metrics.Set this property to
YES
in order for theMGLLineStyleLayer.lineGradient
property to have its intended effect. The default value isNO
.This option corresponds to the
lineMetrics
source property in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLShapeSourceOption _Nonnull MGLShapeSourceOptionLineDistanceMetrics
Swift
static let lineDistanceMetrics: MGLShapeSourceOption
-
MGLTileSourceOptionMinimumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the minimum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMaximumZoomLevel
, if specified. The default value for this option is 0.This option corresponds to the
minzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMinimumZoomLevel
Swift
static let minimumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionMaximumZoomLevel
An
NSNumber
object containing an unsigned integer that specifies the maximum zoom level at which to display tiles from the source.The value should be between 0 and 22, inclusive, and less than
MGLTileSourceOptionMinimumZoomLevel
, if specified. The default value for this option is 22.This option corresponds to the
maxzoom
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionMaximumZoomLevel
Swift
static let maximumZoomLevel: MGLTileSourceOption
-
MGLTileSourceOptionCoordinateBounds
An
NSValue
object containing anMGLCoordinateBounds
struct that specifies the geographic extent of the source.If this option is specified, the SDK avoids requesting any tile that falls outside of the coordinate bounds. Otherwise, the SDK requests any tile needed to cover the viewport, as it does by default.
This option corresponds to the
bounds
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionCoordinateBounds
Swift
static let coordinateBounds: MGLTileSourceOption
-
MGLTileSourceOptionAttributionHTMLString
An HTML string defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.
By default, no attribution statements are displayed. If the
MGLTileSourceOptionAttributionInfos
option is specified, this option is ignored.This option corresponds to the
attribution
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionHTMLString
Swift
static let attributionHTMLString: MGLTileSourceOption
-
MGLTileSourceOptionAttributionInfos
An array of
MGLAttributionInfo
objects defining the buttons to be displayed in an action sheet when the source is part of a map view’s style and the map view’s attribution button is pressed.By default, no attribution statements are displayed.
Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionAttributionInfos
Swift
static let attributionInfos: MGLTileSourceOption
-
MGLTileSourceOptionTileCoordinateSystem
An
NSNumber
object containing an unsigned integer that specifies the tile coordinate system for the source’s tile URLs. The integer corresponds to one of the constants described inMGLTileCoordinateSystem
.The default value for this option is
MGLTileCoordinateSystemXYZ
.This option corresponds to the
scheme
key in the TileJSON specification.Declaration
Objective-C
extern const MGLTileSourceOption _Nonnull MGLTileSourceOptionTileCoordinateSystem
Swift
static let tileCoordinateSystem: MGLTileSourceOption
-
MGLErrorDomain
Indicates an error occurred in the Mapbox SDK.
Declaration
Objective-C
extern const NSErrorDomain _Nonnull MGLErrorDomain
Swift
let MGLErrorDomain: String
-
MGLExpressionInterpolationModeLinear
An
NSString
identifying thelinear
interpolation type in anNSExpression
.This attribute corresponds to the
linear
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeLinear
Swift
static let linear: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeExponential
An
NSString
identifying theexpotential
interpolation type in anNSExpression
.This attribute corresponds to the
exponential
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeExponential
Swift
static let exponential: MGLExpressionInterpolationMode
-
MGLExpressionInterpolationModeCubicBezier
An
NSString
identifying thecubic-bezier
interpolation type in anNSExpression
.This attribute corresponds to the
cubic-bezier
value in theinterpolate
expression operator in the Mapbox Style Specification.Declaration
Objective-C
extern const MGLExpressionInterpolationMode _Nonnull MGLExpressionInterpolationModeCubicBezier
Swift
static let cubicBezier: MGLExpressionInterpolationMode
-
MGLMapViewDecelerationRateNormal
The default deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateNormal
Swift
static let normal: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateFast
A fast deceleration rate for a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateFast
Swift
static let fast: MGLMapViewDecelerationRate
-
MGLMapViewDecelerationRateImmediate
Disables deceleration in a map view.
Declaration
Objective-C
extern const MGLMapViewDecelerationRate MGLMapViewDecelerationRateImmediate
Swift
static let immediate: MGLMapViewDecelerationRate
-
MGLMapViewPreferredFramesPerSecondDefault
The default frame rate. This can be either 30 FPS or 60 FPS, depending on device capabilities.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondDefault
Swift
static let `default`: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondLowPower
A conservative frame rate; typically 30 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondLowPower
Swift
static let lowPower: MGLMapViewPreferredFramesPerSecond
-
MGLMapViewPreferredFramesPerSecondMaximum
The maximum supported frame rate; typically 60 FPS.
Declaration
Objective-C
extern const MGLMapViewPreferredFramesPerSecond MGLMapViewPreferredFramesPerSecondMaximum
Swift
static let maximum: MGLMapViewPreferredFramesPerSecond
-
MapboxVersionNumber
Project version number for Mapbox.
Declaration
Objective-C
extern double MapboxVersionNumber
Swift
var MapboxVersionNumber: Double
-
MapboxVersionString
Project version string for Mapbox.
Declaration
Objective-C
extern const unsigned char MapboxVersionString[]