diff options
Diffstat (limited to 'macos/0.9.0/for-style-authors.html')
-rw-r--r-- | macos/0.9.0/for-style-authors.html | 1770 |
1 files changed, 1770 insertions, 0 deletions
diff --git a/macos/0.9.0/for-style-authors.html b/macos/0.9.0/for-style-authors.html new file mode 100644 index 0000000000..f4b8f15ad8 --- /dev/null +++ b/macos/0.9.0/for-style-authors.html @@ -0,0 +1,1770 @@ +<!DOCTYPE html> +<html lang="en"> + <head> + <title>For Style Authors Reference</title> + <link rel="stylesheet" type="text/css" href="css/jazzy.css" /> + <link rel="stylesheet" type="text/css" href="css/highlight.css" /> + <meta charset="utf-8"> + <script src="js/jquery.min.js" defer></script> + <script src="js/jazzy.js" defer></script> + <link rel='shortcut icon' href='https://www.mapbox.com/img/favicon.ico' type='image/x-icon' /> + + <style type="text/css"> + .nav-group-name[data-name="For Style Authors"] > .small-heading, + .nav-group-task[data-name="For Style Authors"] { + background-color: #f5f8fc; + font-family: "Open Sans Bold"; + border-left: 3px solid #3a68d8; + padding-left: 5px + } + </style> + </head> + <body> + + + <a title="For Style Authors Reference"></a> + + <header class="header-container"> + <div class="limiter"> + <div class="header"> + <p class="header-col header-col--primary"> + <a class="header-link" href="index.html"> + <img style="height: 25px;" class="header-icon" src="img/mapbox.svg" alt="Mapbox Maps SDK for macOS Docs"/> + <span class='header-tag'>Maps SDK for macOS Reference</span> + </a> + + </p> + + <p class="header-col header-col--secondary"> + <a class="header-link space-right2" href="https://github.com/mapbox/mapbox-gl-native"> + <svg style="margin-bottom: 1px;" class="header-icon" viewBox="0 0 33 33" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <path stroke="none" stroke-width="1" fill="white" fill-rule="evenodd" d="M16.6,0.4 C7.6,0.4 0.3,7.7 0.3,16.7 C0.3,23.9 5,30 11.4,32.2 C12.2,32.3 12.5,31.8 12.5,31.4 L12.5,28.6 C8,29.6 7,26.4 7,26.4 C6.3,24.5 5.2,24 5.2,24 C3.7,23 5.3,23 5.3,23 C6.9,23.1 7.8,24.7 7.8,24.7 C9.3,27.2 11.6,26.5 12.5,26.1 C12.6,25 13.1,24.3 13.5,23.9 C9.9,23.5 6.1,22.1 6.1,15.8 C6.1,14 6.7,12.6 7.8,11.4 C7.6,11 7.1,9.3 8,7.1 C8,7.1 9.4,6.7 12.5,8.8 C13.8,8.4 15.2,8.3 16.6,8.3 C18,8.3 19.4,8.5 20.7,8.8 C23.8,6.7 25.2,7.1 25.2,7.1 C26.1,9.3 25.5,11 25.4,11.4 C26.4,12.5 27.1,14 27.1,15.8 C27.1,22.1 23.3,23.4 19.7,23.8 C20.3,24.3 20.8,25.3 20.8,26.8 L20.8,31.3 C20.8,31.7 21.1,32.2 21.9,32.1 C28.4,29.9 33,23.8 33,16.6 C32.9,7.7 25.6,0.4 16.6,0.4 L16.6,0.4 Z"></path> + </svg> + View on GitHub + </a> + </p> + + <p class="header-col header-col--secondary"> + <a class="header-link bold" href="dash-feed://https%3A%2F%2Fmapbox%2Egithub%2Eio%2Fmapbox%2Dgl%2Dnative%2Fmacos%2Fdocsets%2FMapbox%2Exml"> + <img style="margin-bottom: 1px;" class="header-icon" src="img/dash.png"/> + Install in Dash + </a> + </p> + </div> + </div> + </header> + + <div class="breadcrumbs"> + <div class="limiter"> + <a class="breadcrumb" href="index.html">Mapbox Maps SDK for macOS Reference</a> + <img class="carat" src="img/carat.png" /> + For Style Authors Reference + </div> + </div> + + <div class="content-wrapper limiter"> + <nav class="navigation"> + <ul class="nav-groups"> + <li class="nav-group-name" data-name="Guides"> + <a class="small-heading" href="Guides.html">Guides<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="Working with GeoJSON Data" data-url="working-with-geojson-data.html"> + <a title="Working with GeoJSON Data" class="nav-group-task-link" href="working-with-geojson-data.html">Working with GeoJSON Data</a> + </li> + <li class="nav-group-task" data-name="Predicates and Expressions" data-url="predicates-and-expressions.html"> + <a title="Predicates and Expressions" class="nav-group-task-link" href="predicates-and-expressions.html">Predicates and Expressions</a> + </li> + <li class="nav-group-task" data-name="For Style Authors" data-url="for-style-authors.html"> + <a title="For Style Authors" class="nav-group-task-link" href="for-style-authors.html">For Style Authors</a> + </li> + <li class="nav-group-task" data-name="Migrating to Expressions" data-url="migrating-to-expressions.html"> + <a title="Migrating to Expressions" class="nav-group-task-link" href="migrating-to-expressions.html">Migrating to Expressions</a> + </li> + <li class="nav-group-task" data-name="Tile URL Templates" data-url="tile-url-templates.html"> + <a title="Tile URL Templates" class="nav-group-task-link" href="tile-url-templates.html">Tile URL Templates</a> + </li> + <li class="nav-group-task" data-name="Info.plist Keys" data-url="infoplist-keys.html"> + <a title="Info.plist Keys" class="nav-group-task-link" href="infoplist-keys.html">Info.plist Keys</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Maps"> + <a class="small-heading" href="Maps.html">Maps<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLAccountManager" data-url="Classes/MGLAccountManager.html"> + <a title="MGLAccountManager" class="nav-group-task-link" href="Classes/MGLAccountManager.html">MGLAccountManager</a> + </li> + <li class="nav-group-task" data-name="MGLMapCamera" data-url="Classes/MGLMapCamera.html"> + <a title="MGLMapCamera" class="nav-group-task-link" href="Classes/MGLMapCamera.html">MGLMapCamera</a> + </li> + <li class="nav-group-task" data-name="MGLMapView" data-url="Classes/MGLMapView.html"> + <a title="MGLMapView" class="nav-group-task-link" href="Classes/MGLMapView.html">MGLMapView</a> + </li> + <li class="nav-group-task" data-name="MGLMapViewDelegate" data-url="Protocols/MGLMapViewDelegate.html"> + <a title="MGLMapViewDelegate" class="nav-group-task-link" href="Protocols/MGLMapViewDelegate.html">MGLMapViewDelegate</a> + </li> + <li class="nav-group-task" data-name="MGLMapSnapshot" data-url="Classes/MGLMapSnapshot.html"> + <a title="MGLMapSnapshot" class="nav-group-task-link" href="Classes/MGLMapSnapshot.html">MGLMapSnapshot</a> + </li> + <li class="nav-group-task" data-name="MGLMapSnapshotOptions" data-url="Classes/MGLMapSnapshotOptions.html"> + <a title="MGLMapSnapshotOptions" class="nav-group-task-link" href="Classes/MGLMapSnapshotOptions.html">MGLMapSnapshotOptions</a> + </li> + <li class="nav-group-task" data-name="MGLMapSnapshotter" data-url="Classes/MGLMapSnapshotter.html"> + <a title="MGLMapSnapshotter" class="nav-group-task-link" href="Classes/MGLMapSnapshotter.html">MGLMapSnapshotter</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Shapes and Annotations"> + <a class="small-heading" href="Shapes and Annotations.html">Shapes and Annotations<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLAnnotation" data-url="Protocols/MGLAnnotation.html"> + <a title="MGLAnnotation" class="nav-group-task-link" href="Protocols/MGLAnnotation.html">MGLAnnotation</a> + </li> + <li class="nav-group-task" data-name="MGLAnnotationImage" data-url="Classes/MGLAnnotationImage.html"> + <a title="MGLAnnotationImage" class="nav-group-task-link" href="Classes/MGLAnnotationImage.html">MGLAnnotationImage</a> + </li> + <li class="nav-group-task" data-name="MGLOverlay" data-url="Protocols/MGLOverlay.html"> + <a title="MGLOverlay" class="nav-group-task-link" href="Protocols/MGLOverlay.html">MGLOverlay</a> + </li> + <li class="nav-group-task" data-name="MGLShape" data-url="Classes/MGLShape.html"> + <a title="MGLShape" class="nav-group-task-link" href="Classes/MGLShape.html">MGLShape</a> + </li> + <li class="nav-group-task" data-name="MGLMultiPoint" data-url="Classes/MGLMultiPoint.html"> + <a title="MGLMultiPoint" class="nav-group-task-link" href="Classes/MGLMultiPoint.html">MGLMultiPoint</a> + </li> + <li class="nav-group-task" data-name="MGLPointAnnotation" data-url="Classes/MGLPointAnnotation.html"> + <a title="MGLPointAnnotation" class="nav-group-task-link" href="Classes/MGLPointAnnotation.html">MGLPointAnnotation</a> + </li> + <li class="nav-group-task" data-name="MGLPointCollection" data-url="Classes/MGLPointCollection.html"> + <a title="MGLPointCollection" class="nav-group-task-link" href="Classes/MGLPointCollection.html">MGLPointCollection</a> + </li> + <li class="nav-group-task" data-name="MGLPolygon" data-url="Classes/MGLPolygon.html"> + <a title="MGLPolygon" class="nav-group-task-link" href="Classes/MGLPolygon.html">MGLPolygon</a> + </li> + <li class="nav-group-task" data-name="MGLPolyline" data-url="Classes/MGLPolyline.html"> + <a title="MGLPolyline" class="nav-group-task-link" href="Classes/MGLPolyline.html">MGLPolyline</a> + </li> + <li class="nav-group-task" data-name="MGLMultiPolygon" data-url="Classes/MGLMultiPolygon.html"> + <a title="MGLMultiPolygon" class="nav-group-task-link" href="Classes/MGLMultiPolygon.html">MGLMultiPolygon</a> + </li> + <li class="nav-group-task" data-name="MGLMultiPolyline" data-url="Classes/MGLMultiPolyline.html"> + <a title="MGLMultiPolyline" class="nav-group-task-link" href="Classes/MGLMultiPolyline.html">MGLMultiPolyline</a> + </li> + <li class="nav-group-task" data-name="MGLShapeCollection" data-url="Classes/MGLShapeCollection.html"> + <a title="MGLShapeCollection" class="nav-group-task-link" href="Classes/MGLShapeCollection.html">MGLShapeCollection</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Styling the Map"> + <a class="small-heading" href="Styling the Map.html">Styling the Map<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLStyle" data-url="Classes/MGLStyle.html"> + <a title="MGLStyle" class="nav-group-task-link" href="Classes/MGLStyle.html">MGLStyle</a> + </li> + <li class="nav-group-task" data-name="MGLLight" data-url="Classes/MGLLight.html"> + <a title="MGLLight" class="nav-group-task-link" href="Classes/MGLLight.html">MGLLight</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Content Primitives"> + <a class="small-heading" href="Content Primitives.html">Content Primitives<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLFeature" data-url="Protocols/MGLFeature.html"> + <a title="MGLFeature" class="nav-group-task-link" href="Protocols/MGLFeature.html">MGLFeature</a> + </li> + <li class="nav-group-task" data-name="MGLPointFeature" data-url="Content Primitives.html#/c:objc(cs)MGLPointFeature"> + <a title="MGLPointFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLPointFeature">MGLPointFeature</a> + </li> + <li class="nav-group-task" data-name="MGLPolygonFeature" data-url="Content Primitives.html#/c:objc(cs)MGLPolygonFeature"> + <a title="MGLPolygonFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLPolygonFeature">MGLPolygonFeature</a> + </li> + <li class="nav-group-task" data-name="MGLPolylineFeature" data-url="Content Primitives.html#/c:objc(cs)MGLPolylineFeature"> + <a title="MGLPolylineFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLPolylineFeature">MGLPolylineFeature</a> + </li> + <li class="nav-group-task" data-name="MGLMultiPolygonFeature" data-url="Content Primitives.html#/c:objc(cs)MGLMultiPolygonFeature"> + <a title="MGLMultiPolygonFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLMultiPolygonFeature">MGLMultiPolygonFeature</a> + </li> + <li class="nav-group-task" data-name="MGLMultiPolylineFeature" data-url="Content Primitives.html#/c:objc(cs)MGLMultiPolylineFeature"> + <a title="MGLMultiPolylineFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLMultiPolylineFeature">MGLMultiPolylineFeature</a> + </li> + <li class="nav-group-task" data-name="MGLPointCollectionFeature" data-url="Content Primitives.html#/c:objc(cs)MGLPointCollectionFeature"> + <a title="MGLPointCollectionFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLPointCollectionFeature">MGLPointCollectionFeature</a> + </li> + <li class="nav-group-task" data-name="MGLShapeCollectionFeature" data-url="Content Primitives.html#/c:objc(cs)MGLShapeCollectionFeature"> + <a title="MGLShapeCollectionFeature" class="nav-group-task-link" href="Content Primitives.html#/c:objc(cs)MGLShapeCollectionFeature">MGLShapeCollectionFeature</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Content Sources"> + <a class="small-heading" href="Content Sources.html">Content Sources<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLSource" data-url="Classes/MGLSource.html"> + <a title="MGLSource" class="nav-group-task-link" href="Classes/MGLSource.html">MGLSource</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSource" data-url="Classes/MGLShapeSource.html"> + <a title="MGLShapeSource" class="nav-group-task-link" href="Classes/MGLShapeSource.html">MGLShapeSource</a> + </li> + <li class="nav-group-task" data-name="MGLComputedShapeSource" data-url="Classes/MGLComputedShapeSource.html"> + <a title="MGLComputedShapeSource" class="nav-group-task-link" href="Classes/MGLComputedShapeSource.html">MGLComputedShapeSource</a> + </li> + <li class="nav-group-task" data-name="MGLTileSource" data-url="Classes/MGLTileSource.html"> + <a title="MGLTileSource" class="nav-group-task-link" href="Classes/MGLTileSource.html">MGLTileSource</a> + </li> + <li class="nav-group-task" data-name="MGLRasterTileSource" data-url="Classes/MGLRasterTileSource.html"> + <a title="MGLRasterTileSource" class="nav-group-task-link" href="Classes/MGLRasterTileSource.html">MGLRasterTileSource</a> + </li> + <li class="nav-group-task" data-name="MGLRasterDEMSource" data-url="Content Sources.html#/c:objc(cs)MGLRasterDEMSource"> + <a title="MGLRasterDEMSource" class="nav-group-task-link" href="Content Sources.html#/c:objc(cs)MGLRasterDEMSource">MGLRasterDEMSource</a> + </li> + <li class="nav-group-task" data-name="MGLVectorTileSource" data-url="Classes/MGLVectorTileSource.html"> + <a title="MGLVectorTileSource" class="nav-group-task-link" href="Classes/MGLVectorTileSource.html">MGLVectorTileSource</a> + </li> + <li class="nav-group-task" data-name="MGLImageSource" data-url="Classes/MGLImageSource.html"> + <a title="MGLImageSource" class="nav-group-task-link" href="Classes/MGLImageSource.html">MGLImageSource</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Style Layers"> + <a class="small-heading" href="Style Layers.html">Style Layers<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLStyleLayer" data-url="Classes/MGLStyleLayer.html"> + <a title="MGLStyleLayer" class="nav-group-task-link" href="Classes/MGLStyleLayer.html">MGLStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLForegroundStyleLayer" data-url="Classes/MGLForegroundStyleLayer.html"> + <a title="MGLForegroundStyleLayer" class="nav-group-task-link" href="Classes/MGLForegroundStyleLayer.html">MGLForegroundStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLBackgroundStyleLayer" data-url="Classes/MGLBackgroundStyleLayer.html"> + <a title="MGLBackgroundStyleLayer" class="nav-group-task-link" href="Classes/MGLBackgroundStyleLayer.html">MGLBackgroundStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLRasterStyleLayer" data-url="Classes/MGLRasterStyleLayer.html"> + <a title="MGLRasterStyleLayer" class="nav-group-task-link" href="Classes/MGLRasterStyleLayer.html">MGLRasterStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLVectorStyleLayer" data-url="Classes/MGLVectorStyleLayer.html"> + <a title="MGLVectorStyleLayer" class="nav-group-task-link" href="Classes/MGLVectorStyleLayer.html">MGLVectorStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLCircleStyleLayer" data-url="Classes/MGLCircleStyleLayer.html"> + <a title="MGLCircleStyleLayer" class="nav-group-task-link" href="Classes/MGLCircleStyleLayer.html">MGLCircleStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLFillStyleLayer" data-url="Classes/MGLFillStyleLayer.html"> + <a title="MGLFillStyleLayer" class="nav-group-task-link" href="Classes/MGLFillStyleLayer.html">MGLFillStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLFillExtrusionStyleLayer" data-url="Classes/MGLFillExtrusionStyleLayer.html"> + <a title="MGLFillExtrusionStyleLayer" class="nav-group-task-link" href="Classes/MGLFillExtrusionStyleLayer.html">MGLFillExtrusionStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLHeatmapStyleLayer" data-url="Classes/MGLHeatmapStyleLayer.html"> + <a title="MGLHeatmapStyleLayer" class="nav-group-task-link" href="Classes/MGLHeatmapStyleLayer.html">MGLHeatmapStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLHillshadeStyleLayer" data-url="Classes/MGLHillshadeStyleLayer.html"> + <a title="MGLHillshadeStyleLayer" class="nav-group-task-link" href="Classes/MGLHillshadeStyleLayer.html">MGLHillshadeStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLLineStyleLayer" data-url="Classes/MGLLineStyleLayer.html"> + <a title="MGLLineStyleLayer" class="nav-group-task-link" href="Classes/MGLLineStyleLayer.html">MGLLineStyleLayer</a> + </li> + <li class="nav-group-task" data-name="MGLSymbolStyleLayer" data-url="Classes/MGLSymbolStyleLayer.html"> + <a title="MGLSymbolStyleLayer" class="nav-group-task-link" href="Classes/MGLSymbolStyleLayer.html">MGLSymbolStyleLayer</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Offline Maps"> + <a class="small-heading" href="Offline Maps.html">Offline Maps<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLOfflineRegion" data-url="Offline Maps.html#/c:objc(pl)MGLOfflineRegion"> + <a title="MGLOfflineRegion" class="nav-group-task-link" href="Offline Maps.html#/c:objc(pl)MGLOfflineRegion">MGLOfflineRegion</a> + </li> + <li class="nav-group-task" data-name="MGLOfflineStorage" data-url="Classes/MGLOfflineStorage.html"> + <a title="MGLOfflineStorage" class="nav-group-task-link" href="Classes/MGLOfflineStorage.html">MGLOfflineStorage</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePack" data-url="Classes/MGLOfflinePack.html"> + <a title="MGLOfflinePack" class="nav-group-task-link" href="Classes/MGLOfflinePack.html">MGLOfflinePack</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackProgress" data-url="Structs/MGLOfflinePackProgress.html"> + <a title="MGLOfflinePackProgress" class="nav-group-task-link" href="Structs/MGLOfflinePackProgress.html">MGLOfflinePackProgress</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackState" data-url="Enums/MGLOfflinePackState.html"> + <a title="MGLOfflinePackState" class="nav-group-task-link" href="Enums/MGLOfflinePackState.html">MGLOfflinePackState</a> + </li> + <li class="nav-group-task" data-name="MGLTilePyramidOfflineRegion" data-url="Classes/MGLTilePyramidOfflineRegion.html"> + <a title="MGLTilePyramidOfflineRegion" class="nav-group-task-link" href="Classes/MGLTilePyramidOfflineRegion.html">MGLTilePyramidOfflineRegion</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Geometry"> + <a class="small-heading" href="Geometry.html">Geometry<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLCoordinateBounds" data-url="Structs/MGLCoordinateBounds.html"> + <a title="MGLCoordinateBounds" class="nav-group-task-link" href="Structs/MGLCoordinateBounds.html">MGLCoordinateBounds</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateBoundsEqualToCoordinateBounds" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsEqualToCoordinateBounds"> + <a title="MGLCoordinateBoundsEqualToCoordinateBounds" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsEqualToCoordinateBounds">MGLCoordinateBoundsEqualToCoordinateBounds</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateBoundsGetCoordinateSpan" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsGetCoordinateSpan"> + <a title="MGLCoordinateBoundsGetCoordinateSpan" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsGetCoordinateSpan">MGLCoordinateBoundsGetCoordinateSpan</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateBoundsIntersectsCoordinateBounds" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsIntersectsCoordinateBounds"> + <a title="MGLCoordinateBoundsIntersectsCoordinateBounds" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsIntersectsCoordinateBounds">MGLCoordinateBoundsIntersectsCoordinateBounds</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateBoundsIsEmpty" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsIsEmpty"> + <a title="MGLCoordinateBoundsIsEmpty" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsIsEmpty">MGLCoordinateBoundsIsEmpty</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateBoundsMake" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsMake"> + <a title="MGLCoordinateBoundsMake" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsMake">MGLCoordinateBoundsMake</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateBoundsOffset" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsOffset"> + <a title="MGLCoordinateBoundsOffset" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateBoundsOffset">MGLCoordinateBoundsOffset</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateInCoordinateBounds" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateInCoordinateBounds"> + <a title="MGLCoordinateInCoordinateBounds" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateInCoordinateBounds">MGLCoordinateInCoordinateBounds</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateSpan" data-url="Structs/MGLCoordinateSpan.html"> + <a title="MGLCoordinateSpan" class="nav-group-task-link" href="Structs/MGLCoordinateSpan.html">MGLCoordinateSpan</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateSpanEqualToCoordinateSpan" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateSpanEqualToCoordinateSpan"> + <a title="MGLCoordinateSpanEqualToCoordinateSpan" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateSpanEqualToCoordinateSpan">MGLCoordinateSpanEqualToCoordinateSpan</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateSpanMake" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateSpanMake"> + <a title="MGLCoordinateSpanMake" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLCoordinateSpanMake">MGLCoordinateSpanMake</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateSpanZero" data-url="Geometry.html#/c:@MGLCoordinateSpanZero"> + <a title="MGLCoordinateSpanZero" class="nav-group-task-link" href="Geometry.html#/c:@MGLCoordinateSpanZero">MGLCoordinateSpanZero</a> + </li> + <li class="nav-group-task" data-name="MGLDegreesFromRadians" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLDegreesFromRadians"> + <a title="MGLDegreesFromRadians" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLDegreesFromRadians">MGLDegreesFromRadians</a> + </li> + <li class="nav-group-task" data-name="MGLRadiansFromDegrees" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLRadiansFromDegrees"> + <a title="MGLRadiansFromDegrees" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLRadiansFromDegrees">MGLRadiansFromDegrees</a> + </li> + <li class="nav-group-task" data-name="MGLStringFromCoordinateBounds" data-url="Geometry.html#/c:MGLGeometry.h@F@MGLStringFromCoordinateBounds"> + <a title="MGLStringFromCoordinateBounds" class="nav-group-task-link" href="Geometry.html#/c:MGLGeometry.h@F@MGLStringFromCoordinateBounds">MGLStringFromCoordinateBounds</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Formatters"> + <a class="small-heading" href="Formatters.html">Formatters<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLClockDirectionFormatter" data-url="Classes/MGLClockDirectionFormatter.html"> + <a title="MGLClockDirectionFormatter" class="nav-group-task-link" href="Classes/MGLClockDirectionFormatter.html">MGLClockDirectionFormatter</a> + </li> + <li class="nav-group-task" data-name="MGLCompassDirectionFormatter" data-url="Classes/MGLCompassDirectionFormatter.html"> + <a title="MGLCompassDirectionFormatter" class="nav-group-task-link" href="Classes/MGLCompassDirectionFormatter.html">MGLCompassDirectionFormatter</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateFormatter" data-url="Classes/MGLCoordinateFormatter.html"> + <a title="MGLCoordinateFormatter" class="nav-group-task-link" href="Classes/MGLCoordinateFormatter.html">MGLCoordinateFormatter</a> + </li> + <li class="nav-group-task" data-name="MGLDistanceFormatter" data-url="Classes/MGLDistanceFormatter.html"> + <a title="MGLDistanceFormatter" class="nav-group-task-link" href="Classes/MGLDistanceFormatter.html">MGLDistanceFormatter</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Categories"> + <a class="small-heading" href="Other Categories.html">Other Categories<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="NSExpression(MGLAdditions)" data-url="Categories/NSExpression(MGLAdditions).html"> + <a title="NSExpression(MGLAdditions)" class="nav-group-task-link" href="Categories/NSExpression(MGLAdditions).html">NSExpression(MGLAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLAdditions)" data-url="Categories/NSValue(MGLAdditions).html"> + <a title="NSValue(MGLAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLAdditions).html">NSValue(MGLAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLCircleStyleLayerAdditions)" data-url="Categories/NSValue(MGLCircleStyleLayerAdditions).html"> + <a title="NSValue(MGLCircleStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLCircleStyleLayerAdditions).html">NSValue(MGLCircleStyleLayerAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLFillExtrusionStyleLayerAdditions)" data-url="Categories/NSValue(MGLFillExtrusionStyleLayerAdditions).html"> + <a title="NSValue(MGLFillExtrusionStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLFillExtrusionStyleLayerAdditions).html">NSValue(MGLFillExtrusionStyleLayerAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLFillStyleLayerAdditions)" data-url="Categories/NSValue(MGLFillStyleLayerAdditions).html"> + <a title="NSValue(MGLFillStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLFillStyleLayerAdditions).html">NSValue(MGLFillStyleLayerAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLHillshadeStyleLayerAdditions)" data-url="Categories/NSValue(MGLHillshadeStyleLayerAdditions).html"> + <a title="NSValue(MGLHillshadeStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLHillshadeStyleLayerAdditions).html">NSValue(MGLHillshadeStyleLayerAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLLineStyleLayerAdditions)" data-url="Categories/NSValue(MGLLineStyleLayerAdditions).html"> + <a title="NSValue(MGLLineStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLLineStyleLayerAdditions).html">NSValue(MGLLineStyleLayerAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLRasterStyleLayerAdditions)" data-url="Categories/NSValue(MGLRasterStyleLayerAdditions).html"> + <a title="NSValue(MGLRasterStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLRasterStyleLayerAdditions).html">NSValue(MGLRasterStyleLayerAdditions)</a> + </li> + <li class="nav-group-task" data-name="NSValue(MGLSymbolStyleLayerAdditions)" data-url="Categories/NSValue(MGLSymbolStyleLayerAdditions).html"> + <a title="NSValue(MGLSymbolStyleLayerAdditions)" class="nav-group-task-link" href="Categories/NSValue(MGLSymbolStyleLayerAdditions).html">NSValue(MGLSymbolStyleLayerAdditions)</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Classes"> + <a class="small-heading" href="Other Classes.html">Other Classes<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLAttributionInfo" data-url="Classes/MGLAttributionInfo.html"> + <a title="MGLAttributionInfo" class="nav-group-task-link" href="Classes/MGLAttributionInfo.html">MGLAttributionInfo</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Constants"> + <a class="small-heading" href="Other Constants.html">Other Constants<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLErrorDomain" data-url="Other Constants.html#/c:@MGLErrorDomain"> + <a title="MGLErrorDomain" class="nav-group-task-link" href="Other Constants.html#/c:@MGLErrorDomain">MGLErrorDomain</a> + </li> + <li class="nav-group-task" data-name="MGLExpressionInterpolationModeCubicBezier" data-url="Other Constants.html#/c:@MGLExpressionInterpolationModeCubicBezier"> + <a title="MGLExpressionInterpolationModeCubicBezier" class="nav-group-task-link" href="Other Constants.html#/c:@MGLExpressionInterpolationModeCubicBezier">MGLExpressionInterpolationModeCubicBezier</a> + </li> + <li class="nav-group-task" data-name="MGLExpressionInterpolationModeExponential" data-url="Other Constants.html#/c:@MGLExpressionInterpolationModeExponential"> + <a title="MGLExpressionInterpolationModeExponential" class="nav-group-task-link" href="Other Constants.html#/c:@MGLExpressionInterpolationModeExponential">MGLExpressionInterpolationModeExponential</a> + </li> + <li class="nav-group-task" data-name="MGLExpressionInterpolationModeLinear" data-url="Other Constants.html#/c:@MGLExpressionInterpolationModeLinear"> + <a title="MGLExpressionInterpolationModeLinear" class="nav-group-task-link" href="Other Constants.html#/c:@MGLExpressionInterpolationModeLinear">MGLExpressionInterpolationModeLinear</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackErrorNotification" data-url="Other Constants.html#/c:@MGLOfflinePackErrorNotification"> + <a title="MGLOfflinePackErrorNotification" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackErrorNotification">MGLOfflinePackErrorNotification</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackMaximumMapboxTilesReachedNotification" data-url="Other Constants.html#/c:@MGLOfflinePackMaximumMapboxTilesReachedNotification"> + <a title="MGLOfflinePackMaximumMapboxTilesReachedNotification" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackMaximumMapboxTilesReachedNotification">MGLOfflinePackMaximumMapboxTilesReachedNotification</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackProgressChangedNotification" data-url="Other Constants.html#/c:@MGLOfflinePackProgressChangedNotification"> + <a title="MGLOfflinePackProgressChangedNotification" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackProgressChangedNotification">MGLOfflinePackProgressChangedNotification</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackUserInfoKeyError" data-url="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyError"> + <a title="MGLOfflinePackUserInfoKeyError" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyError">MGLOfflinePackUserInfoKeyError</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackUserInfoKeyMaximumCount" data-url="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyMaximumCount"> + <a title="MGLOfflinePackUserInfoKeyMaximumCount" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyMaximumCount">MGLOfflinePackUserInfoKeyMaximumCount</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackUserInfoKeyProgress" data-url="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyProgress"> + <a title="MGLOfflinePackUserInfoKeyProgress" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyProgress">MGLOfflinePackUserInfoKeyProgress</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackUserInfoKeyState" data-url="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyState"> + <a title="MGLOfflinePackUserInfoKeyState" class="nav-group-task-link" href="Other Constants.html#/c:@MGLOfflinePackUserInfoKeyState">MGLOfflinePackUserInfoKeyState</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionBuffer" data-url="Other Constants.html#/c:@MGLShapeSourceOptionBuffer"> + <a title="MGLShapeSourceOptionBuffer" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionBuffer">MGLShapeSourceOptionBuffer</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionClipsCoordinates" data-url="Other Constants.html#/c:@MGLShapeSourceOptionClipsCoordinates"> + <a title="MGLShapeSourceOptionClipsCoordinates" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionClipsCoordinates">MGLShapeSourceOptionClipsCoordinates</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionClusterRadius" data-url="Other Constants.html#/c:@MGLShapeSourceOptionClusterRadius"> + <a title="MGLShapeSourceOptionClusterRadius" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionClusterRadius">MGLShapeSourceOptionClusterRadius</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionClustered" data-url="Other Constants.html#/c:@MGLShapeSourceOptionClustered"> + <a title="MGLShapeSourceOptionClustered" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionClustered">MGLShapeSourceOptionClustered</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionMaximumZoomLevel" data-url="Other Constants.html#/c:@MGLShapeSourceOptionMaximumZoomLevel"> + <a title="MGLShapeSourceOptionMaximumZoomLevel" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionMaximumZoomLevel">MGLShapeSourceOptionMaximumZoomLevel</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionMaximumZoomLevelForClustering" data-url="Other Constants.html#/c:@MGLShapeSourceOptionMaximumZoomLevelForClustering"> + <a title="MGLShapeSourceOptionMaximumZoomLevelForClustering" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionMaximumZoomLevelForClustering">MGLShapeSourceOptionMaximumZoomLevelForClustering</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionMinimumZoomLevel" data-url="Other Constants.html#/c:@MGLShapeSourceOptionMinimumZoomLevel"> + <a title="MGLShapeSourceOptionMinimumZoomLevel" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionMinimumZoomLevel">MGLShapeSourceOptionMinimumZoomLevel</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionSimplificationTolerance" data-url="Other Constants.html#/c:@MGLShapeSourceOptionSimplificationTolerance"> + <a title="MGLShapeSourceOptionSimplificationTolerance" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionSimplificationTolerance">MGLShapeSourceOptionSimplificationTolerance</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOptionWrapsCoordinates" data-url="Other Constants.html#/c:@MGLShapeSourceOptionWrapsCoordinates"> + <a title="MGLShapeSourceOptionWrapsCoordinates" class="nav-group-task-link" href="Other Constants.html#/c:@MGLShapeSourceOptionWrapsCoordinates">MGLShapeSourceOptionWrapsCoordinates</a> + </li> + <li class="nav-group-task" data-name="MGLStyleDefaultVersion" data-url="Other Constants.html#/c:MGLStyle.h@MGLStyleDefaultVersion"> + <a title="MGLStyleDefaultVersion" class="nav-group-task-link" href="Other Constants.html#/c:MGLStyle.h@MGLStyleDefaultVersion">MGLStyleDefaultVersion</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionAttributionHTMLString" data-url="Other Constants.html#/c:@MGLTileSourceOptionAttributionHTMLString"> + <a title="MGLTileSourceOptionAttributionHTMLString" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionAttributionHTMLString">MGLTileSourceOptionAttributionHTMLString</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionAttributionInfos" data-url="Other Constants.html#/c:@MGLTileSourceOptionAttributionInfos"> + <a title="MGLTileSourceOptionAttributionInfos" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionAttributionInfos">MGLTileSourceOptionAttributionInfos</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionCoordinateBounds" data-url="Other Constants.html#/c:@MGLTileSourceOptionCoordinateBounds"> + <a title="MGLTileSourceOptionCoordinateBounds" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionCoordinateBounds">MGLTileSourceOptionCoordinateBounds</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionDEMEncoding" data-url="Other Constants.html#/c:@MGLTileSourceOptionDEMEncoding"> + <a title="MGLTileSourceOptionDEMEncoding" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionDEMEncoding">MGLTileSourceOptionDEMEncoding</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionMaximumZoomLevel" data-url="Other Constants.html#/c:@MGLTileSourceOptionMaximumZoomLevel"> + <a title="MGLTileSourceOptionMaximumZoomLevel" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionMaximumZoomLevel">MGLTileSourceOptionMaximumZoomLevel</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionMinimumZoomLevel" data-url="Other Constants.html#/c:@MGLTileSourceOptionMinimumZoomLevel"> + <a title="MGLTileSourceOptionMinimumZoomLevel" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionMinimumZoomLevel">MGLTileSourceOptionMinimumZoomLevel</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionTileCoordinateSystem" data-url="Other Constants.html#/c:@MGLTileSourceOptionTileCoordinateSystem"> + <a title="MGLTileSourceOptionTileCoordinateSystem" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionTileCoordinateSystem">MGLTileSourceOptionTileCoordinateSystem</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOptionTileSize" data-url="Other Constants.html#/c:@MGLTileSourceOptionTileSize"> + <a title="MGLTileSourceOptionTileSize" class="nav-group-task-link" href="Other Constants.html#/c:@MGLTileSourceOptionTileSize">MGLTileSourceOptionTileSize</a> + </li> + <li class="nav-group-task" data-name="MapboxVersionNumber" data-url="Other Constants.html#/c:@MapboxVersionNumber"> + <a title="MapboxVersionNumber" class="nav-group-task-link" href="Other Constants.html#/c:@MapboxVersionNumber">MapboxVersionNumber</a> + </li> + <li class="nav-group-task" data-name="MapboxVersionString" data-url="Other Constants.html#/c:@MapboxVersionString"> + <a title="MapboxVersionString" class="nav-group-task-link" href="Other Constants.html#/c:@MapboxVersionString">MapboxVersionString</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Enumerations"> + <a class="small-heading" href="Other Enumerations.html">Other Enumerations<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLAttributionInfoStyle" data-url="Enums/MGLAttributionInfoStyle.html"> + <a title="MGLAttributionInfoStyle" class="nav-group-task-link" href="Enums/MGLAttributionInfoStyle.html">MGLAttributionInfoStyle</a> + </li> + <li class="nav-group-task" data-name="MGLCirclePitchAlignment" data-url="Enums/MGLCirclePitchAlignment.html"> + <a title="MGLCirclePitchAlignment" class="nav-group-task-link" href="Enums/MGLCirclePitchAlignment.html">MGLCirclePitchAlignment</a> + </li> + <li class="nav-group-task" data-name="MGLCircleScaleAlignment" data-url="Enums/MGLCircleScaleAlignment.html"> + <a title="MGLCircleScaleAlignment" class="nav-group-task-link" href="Enums/MGLCircleScaleAlignment.html">MGLCircleScaleAlignment</a> + </li> + <li class="nav-group-task" data-name="MGLCircleTranslationAnchor" data-url="Enums/MGLCircleTranslationAnchor.html"> + <a title="MGLCircleTranslationAnchor" class="nav-group-task-link" href="Enums/MGLCircleTranslationAnchor.html">MGLCircleTranslationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLDEMEncoding" data-url="Enums/MGLDEMEncoding.html"> + <a title="MGLDEMEncoding" class="nav-group-task-link" href="Enums/MGLDEMEncoding.html">MGLDEMEncoding</a> + </li> + <li class="nav-group-task" data-name="MGLErrorCode" data-url="Enums/MGLErrorCode.html"> + <a title="MGLErrorCode" class="nav-group-task-link" href="Enums/MGLErrorCode.html">MGLErrorCode</a> + </li> + <li class="nav-group-task" data-name="MGLFillExtrusionTranslationAnchor" data-url="Enums/MGLFillExtrusionTranslationAnchor.html"> + <a title="MGLFillExtrusionTranslationAnchor" class="nav-group-task-link" href="Enums/MGLFillExtrusionTranslationAnchor.html">MGLFillExtrusionTranslationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLFillTranslationAnchor" data-url="Enums/MGLFillTranslationAnchor.html"> + <a title="MGLFillTranslationAnchor" class="nav-group-task-link" href="Enums/MGLFillTranslationAnchor.html">MGLFillTranslationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLHillshadeIlluminationAnchor" data-url="Enums/MGLHillshadeIlluminationAnchor.html"> + <a title="MGLHillshadeIlluminationAnchor" class="nav-group-task-link" href="Enums/MGLHillshadeIlluminationAnchor.html">MGLHillshadeIlluminationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLIconAnchor" data-url="Enums/MGLIconAnchor.html"> + <a title="MGLIconAnchor" class="nav-group-task-link" href="Enums/MGLIconAnchor.html">MGLIconAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLIconPitchAlignment" data-url="Enums/MGLIconPitchAlignment.html"> + <a title="MGLIconPitchAlignment" class="nav-group-task-link" href="Enums/MGLIconPitchAlignment.html">MGLIconPitchAlignment</a> + </li> + <li class="nav-group-task" data-name="MGLIconRotationAlignment" data-url="Enums/MGLIconRotationAlignment.html"> + <a title="MGLIconRotationAlignment" class="nav-group-task-link" href="Enums/MGLIconRotationAlignment.html">MGLIconRotationAlignment</a> + </li> + <li class="nav-group-task" data-name="MGLIconTextFit" data-url="Enums/MGLIconTextFit.html"> + <a title="MGLIconTextFit" class="nav-group-task-link" href="Enums/MGLIconTextFit.html">MGLIconTextFit</a> + </li> + <li class="nav-group-task" data-name="MGLIconTranslationAnchor" data-url="Enums/MGLIconTranslationAnchor.html"> + <a title="MGLIconTranslationAnchor" class="nav-group-task-link" href="Enums/MGLIconTranslationAnchor.html">MGLIconTranslationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLLightAnchor" data-url="Enums/MGLLightAnchor.html"> + <a title="MGLLightAnchor" class="nav-group-task-link" href="Enums/MGLLightAnchor.html">MGLLightAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLLineCap" data-url="Enums/MGLLineCap.html"> + <a title="MGLLineCap" class="nav-group-task-link" href="Enums/MGLLineCap.html">MGLLineCap</a> + </li> + <li class="nav-group-task" data-name="MGLLineJoin" data-url="Enums/MGLLineJoin.html"> + <a title="MGLLineJoin" class="nav-group-task-link" href="Enums/MGLLineJoin.html">MGLLineJoin</a> + </li> + <li class="nav-group-task" data-name="MGLLineTranslationAnchor" data-url="Enums/MGLLineTranslationAnchor.html"> + <a title="MGLLineTranslationAnchor" class="nav-group-task-link" href="Enums/MGLLineTranslationAnchor.html">MGLLineTranslationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLMapDebugMaskOptions" data-url="Enums/MGLMapDebugMaskOptions.html"> + <a title="MGLMapDebugMaskOptions" class="nav-group-task-link" href="Enums/MGLMapDebugMaskOptions.html">MGLMapDebugMaskOptions</a> + </li> + <li class="nav-group-task" data-name="MGLRasterResamplingMode" data-url="Enums/MGLRasterResamplingMode.html"> + <a title="MGLRasterResamplingMode" class="nav-group-task-link" href="Enums/MGLRasterResamplingMode.html">MGLRasterResamplingMode</a> + </li> + <li class="nav-group-task" data-name="MGLResourceKind" data-url="Enums/MGLResourceKind.html"> + <a title="MGLResourceKind" class="nav-group-task-link" href="Enums/MGLResourceKind.html">MGLResourceKind</a> + </li> + <li class="nav-group-task" data-name="MGLSymbolPlacement" data-url="Enums/MGLSymbolPlacement.html"> + <a title="MGLSymbolPlacement" class="nav-group-task-link" href="Enums/MGLSymbolPlacement.html">MGLSymbolPlacement</a> + </li> + <li class="nav-group-task" data-name="MGLTextAnchor" data-url="Enums/MGLTextAnchor.html"> + <a title="MGLTextAnchor" class="nav-group-task-link" href="Enums/MGLTextAnchor.html">MGLTextAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLTextJustification" data-url="Enums/MGLTextJustification.html"> + <a title="MGLTextJustification" class="nav-group-task-link" href="Enums/MGLTextJustification.html">MGLTextJustification</a> + </li> + <li class="nav-group-task" data-name="MGLTextPitchAlignment" data-url="Enums/MGLTextPitchAlignment.html"> + <a title="MGLTextPitchAlignment" class="nav-group-task-link" href="Enums/MGLTextPitchAlignment.html">MGLTextPitchAlignment</a> + </li> + <li class="nav-group-task" data-name="MGLTextRotationAlignment" data-url="Enums/MGLTextRotationAlignment.html"> + <a title="MGLTextRotationAlignment" class="nav-group-task-link" href="Enums/MGLTextRotationAlignment.html">MGLTextRotationAlignment</a> + </li> + <li class="nav-group-task" data-name="MGLTextTransform" data-url="Enums/MGLTextTransform.html"> + <a title="MGLTextTransform" class="nav-group-task-link" href="Enums/MGLTextTransform.html">MGLTextTransform</a> + </li> + <li class="nav-group-task" data-name="MGLTextTranslationAnchor" data-url="Enums/MGLTextTranslationAnchor.html"> + <a title="MGLTextTranslationAnchor" class="nav-group-task-link" href="Enums/MGLTextTranslationAnchor.html">MGLTextTranslationAnchor</a> + </li> + <li class="nav-group-task" data-name="MGLTileCoordinateSystem" data-url="Enums/MGLTileCoordinateSystem.html"> + <a title="MGLTileCoordinateSystem" class="nav-group-task-link" href="Enums/MGLTileCoordinateSystem.html">MGLTileCoordinateSystem</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Protocols"> + <a class="small-heading" href="Other Protocols.html">Other Protocols<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLComputedShapeSourceDataSource" data-url="Protocols/MGLComputedShapeSourceDataSource.html"> + <a title="MGLComputedShapeSourceDataSource" class="nav-group-task-link" href="Protocols/MGLComputedShapeSourceDataSource.html">MGLComputedShapeSourceDataSource</a> + </li> + <li class="nav-group-task" data-name="MGLOfflineStorageDelegate" data-url="Protocols/MGLOfflineStorageDelegate.html"> + <a title="MGLOfflineStorageDelegate" class="nav-group-task-link" href="Protocols/MGLOfflineStorageDelegate.html">MGLOfflineStorageDelegate</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Type Definitions"> + <a class="small-heading" href="Other Type Definitions.html">Other Type Definitions<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLMapSnapshotCompletionHandler" data-url="Other Type Definitions.html#/c:MGLMapSnapshotter.h@T@MGLMapSnapshotCompletionHandler"> + <a title="MGLMapSnapshotCompletionHandler" class="nav-group-task-link" href="Other Type Definitions.html#/c:MGLMapSnapshotter.h@T@MGLMapSnapshotCompletionHandler">MGLMapSnapshotCompletionHandler</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackAdditionCompletionHandler" data-url="Other Type Definitions.html#/c:MGLOfflineStorage.h@T@MGLOfflinePackAdditionCompletionHandler"> + <a title="MGLOfflinePackAdditionCompletionHandler" class="nav-group-task-link" href="Other Type Definitions.html#/c:MGLOfflineStorage.h@T@MGLOfflinePackAdditionCompletionHandler">MGLOfflinePackAdditionCompletionHandler</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackRemovalCompletionHandler" data-url="Other Type Definitions.html#/c:MGLOfflineStorage.h@T@MGLOfflinePackRemovalCompletionHandler"> + <a title="MGLOfflinePackRemovalCompletionHandler" class="nav-group-task-link" href="Other Type Definitions.html#/c:MGLOfflineStorage.h@T@MGLOfflinePackRemovalCompletionHandler">MGLOfflinePackRemovalCompletionHandler</a> + </li> + <li class="nav-group-task" data-name="MGLOfflinePackUserInfoKey" data-url="Other Type Definitions.html#/c:MGLOfflineStorage.h@T@MGLOfflinePackUserInfoKey"> + <a title="MGLOfflinePackUserInfoKey" class="nav-group-task-link" href="Other Type Definitions.html#/c:MGLOfflineStorage.h@T@MGLOfflinePackUserInfoKey">MGLOfflinePackUserInfoKey</a> + </li> + <li class="nav-group-task" data-name="MGLShapeSourceOption" data-url="Other Type Definitions.html#/c:MGLShapeSource.h@T@MGLShapeSourceOption"> + <a title="MGLShapeSourceOption" class="nav-group-task-link" href="Other Type Definitions.html#/c:MGLShapeSource.h@T@MGLShapeSourceOption">MGLShapeSourceOption</a> + </li> + <li class="nav-group-task" data-name="MGLTileSourceOption" data-url="Other Type Definitions.html#/c:MGLTileSource.h@T@MGLTileSourceOption"> + <a title="MGLTileSourceOption" class="nav-group-task-link" href="Other Type Definitions.html#/c:MGLTileSource.h@T@MGLTileSourceOption">MGLTileSourceOption</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Functions"> + <a class="small-heading" href="Other Functions.html">Other Functions<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLCoordinateQuadFromCoordinateBounds" data-url="Other Functions.html#/c:MGLGeometry.h@F@MGLCoordinateQuadFromCoordinateBounds"> + <a title="MGLCoordinateQuadFromCoordinateBounds" class="nav-group-task-link" href="Other Functions.html#/c:MGLGeometry.h@F@MGLCoordinateQuadFromCoordinateBounds">MGLCoordinateQuadFromCoordinateBounds</a> + </li> + <li class="nav-group-task" data-name="MGLCoordinateQuadMake" data-url="Other Functions.html#/c:MGLGeometry.h@F@MGLCoordinateQuadMake"> + <a title="MGLCoordinateQuadMake" class="nav-group-task-link" href="Other Functions.html#/c:MGLGeometry.h@F@MGLCoordinateQuadMake">MGLCoordinateQuadMake</a> + </li> + <li class="nav-group-task" data-name="MGLMapPointForCoordinate" data-url="Other Functions.html#/c:@F@MGLMapPointForCoordinate"> + <a title="MGLMapPointForCoordinate" class="nav-group-task-link" href="Other Functions.html#/c:@F@MGLMapPointForCoordinate">MGLMapPointForCoordinate</a> + </li> + <li class="nav-group-task" data-name="MGLMapPointMake" data-url="Other Functions.html#/c:MGLGeometry.h@F@MGLMapPointMake"> + <a title="MGLMapPointMake" class="nav-group-task-link" href="Other Functions.html#/c:MGLGeometry.h@F@MGLMapPointMake">MGLMapPointMake</a> + </li> + <li class="nav-group-task" data-name="MGLSphericalPositionMake" data-url="Other Functions.html#/c:MGLLight.h@F@MGLSphericalPositionMake"> + <a title="MGLSphericalPositionMake" class="nav-group-task-link" href="Other Functions.html#/c:MGLLight.h@F@MGLSphericalPositionMake">MGLSphericalPositionMake</a> + </li> + <li class="nav-group-task" data-name="MGLStringFromCoordinateQuad" data-url="Other Functions.html#/c:MGLGeometry.h@F@MGLStringFromCoordinateQuad"> + <a title="MGLStringFromCoordinateQuad" class="nav-group-task-link" href="Other Functions.html#/c:MGLGeometry.h@F@MGLStringFromCoordinateQuad">MGLStringFromCoordinateQuad</a> + </li> + <li class="nav-group-task" data-name="MGLTransitionMake" data-url="Other Functions.html#/c:MGLTypes.h@F@MGLTransitionMake"> + <a title="MGLTransitionMake" class="nav-group-task-link" href="Other Functions.html#/c:MGLTypes.h@F@MGLTransitionMake">MGLTransitionMake</a> + </li> + </ul> + </li> + <li class="nav-group-name" data-name="Other Structures"> + <a class="small-heading" href="Other Structures.html">Other Structures<span class="anchor-icon" /></a> + <ul class="nav-group-tasks"> + <li class="nav-group-task" data-name="MGLCoordinateQuad" data-url="Structs/MGLCoordinateQuad.html"> + <a title="MGLCoordinateQuad" class="nav-group-task-link" href="Structs/MGLCoordinateQuad.html">MGLCoordinateQuad</a> + </li> + <li class="nav-group-task" data-name="MGLSphericalPosition" data-url="Structs/MGLSphericalPosition.html"> + <a title="MGLSphericalPosition" class="nav-group-task-link" href="Structs/MGLSphericalPosition.html">MGLSphericalPosition</a> + </li> + <li class="nav-group-task" data-name="MGLTransition" data-url="Structs/MGLTransition.html"> + <a title="MGLTransition" class="nav-group-task-link" href="Structs/MGLTransition.html">MGLTransition</a> + </li> + </ul> + </li> + </ul> + </nav> + <article class="main-content"> + + <section class="section"> + <div class="section-content"> + + <!-- + This file is generated. + Edit platform/darwin/scripts/generate-style-code.js, then run `make darwin-style-code`. +--> +<h1 id='information-for-style-authors' class='heading'>Information for Style Authors</h1> + +<p>A <em>style</em> defines a map view’s content and appearance. If you’ve authored a +style using +<a href="https://www.mapbox.com/studio/styles/">Mapbox Studio’s Styles editor</a> or as +JSON in a text editor, you can use that style in this SDK and manipulate it +afterwards in code. This document provides information you can use to ensure a +seamless transition from Mapbox Studio to your application.</p> +<h2 id='designing-for-macos' class='heading'>Designing for macOS</h2> + +<p>When designing your style, consider the context in which your application shows +the style. There are a number of considerations specific to macOS that may +not be obvious when designing your style in Mapbox Studio on the Web. A map view +is essentially a graphical user interface element, so many of same issues in +user interface design also apply when designing a map style.</p> +<h3 id='color' class='heading'>Color</h3> + +<p>Ensure sufficient contrast in your application’s user interface when your map +style is present. Standard user interface elements such as toolbars, sidebars, +and sheets often overlap the map view with a translucent, blurred background, so +make sure the contents of these elements remain legible with the map view +underneath. +If you intend your style to be used in the dark, consider the impact that Night +Shift may have on your style’s colors.</p> +<h3 id='typography-and-graphics' class='heading'>Typography and graphics</h3> + +<p>Design sprite images and choose font weights that look crisp on both +standard-resolution displays and Retina displays. This SDK supports the same +resolutions as macOS. +Standard-resolution displays are often found on external monitors. Even with +built-in screens, some of your users may use the Larger Text option in Display +Preferences, which is essentially standard resolution, to make text easier to +read.</p> + +<p>Icon and text labels should be legible regardless of the map’s orientation. +By default, this SDK makes it easy for your users to rotate or tilt the map +using multitouch trackpad gestures or keyboard shortcuts. +If you do not intend your design to accommodate rotation and tilting, disable +these gestures using the <code><a href="Classes/MGLMapView.html#/c:objc(cs)MGLMapView(py)rotateEnabled">MGLMapView.rotateEnabled</a></code> and +<code><a href="Classes/MGLMapView.html#/c:objc(cs)MGLMapView(py)pitchEnabled">MGLMapView.pitchEnabled</a></code> properties, respectively, or the corresponding +inspectables in Interface Builder.</p> +<h3 id='interactivity' class='heading'>Interactivity</h3> + +<p>Pay attention to whether elements of your style appear to be interactive. +An icon with a shadow or shading effect may appear to be clickable. +You can make an icon or text label interactive by installing a gesture +recognizer and performing feature querying (e.g., +<code><a href="Classes/MGLMapView.html#/c:objc(cs)MGLMapView(im)visibleFeaturesAtPoint:">-[MGLMapView visibleFeaturesAtPoint:]</a></code>) to get details about the selected +feature. +You can install cursor or tooltip tracking rectangles to indicate interactive +features as an alternative to prominent hover effects.</p> + +<p>Make sure your users can easily distinguish any interactive elements from the +surrounding map, such as pins or a route line. If your application supports +printing, consider using the +<a href="#manipulating-the-style-at-runtime">runtime styling API</a> to optimize your style +for ink economy before printing the map view.</p> + +<p>For more information about user interface design, consult Apple’s +<a href="https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/OSXHIGuidelines/"><em>macOS Human Interface Guidelines</em></a>.</p> +<h2 id='applying-your-style' class='heading'>Applying your style</h2> + +<p>You set an <code><a href="Classes/MGLMapView.html">MGLMapView</a></code> object’s style either in code, by setting the +<code><a href="Classes/MGLMapView.html#/c:objc(cs)MGLMapView(py)styleURL">MGLMapView.styleURL</a></code> property, or in Interface Builder, by setting the “Style +URL” inspectable. The URL must point to a local or remote style JSON file. The +style JSON file format is defined by the +<a href="https://www.mapbox.com/mapbox-gl-style-spec/">Mapbox Style Specification</a>. This +SDK supports the functionality defined by version 8 of the specification unless +otherwise noted in the +<a href="https://www.mapbox.com/mapbox-gl-style-spec/">style specification documentation</a>.</p> +<h2 id='manipulating-the-style-at-runtime' class='heading'>Manipulating the style at runtime</h2> + +<p>The <em>runtime styling API</em> enables you to modify every aspect of a style +dynamically as a user interacts with your application. The style itself is +represented at runtime by an <code><a href="Classes/MGLStyle.html">MGLStyle</a></code> object, which provides access to various +<code><a href="Classes/MGLSource.html">MGLSource</a></code> and <code><a href="Classes/MGLStyleLayer.html">MGLStyleLayer</a></code> objects that represent content sources and style +layers, respectively.</p> + +<p>The names of runtime styling classes and properties on macOS are generally +consistent with the style specification and Mapbox Studio’s Styles editor. Any +exceptions are listed in this document.</p> + +<p>To avoid conflicts with Objective-C keywords or Cocoa terminology, this SDK uses +the following terms for concepts defined in the style specification:</p> + +<table><thead> +<tr> +<th>In the style specification</th> +<th>In the SDK</th> +</tr> +</thead><tbody> +<tr> +<td>bounds</td> +<td>coordinate bounds</td> +</tr> +<tr> +<td>filter</td> +<td>predicate</td> +</tr> +<tr> +<td>function type</td> +<td>interpolation mode</td> +</tr> +<tr> +<td>id</td> +<td>identifier</td> +</tr> +<tr> +<td>image</td> +<td>style image</td> +</tr> +<tr> +<td>layer</td> +<td>style layer</td> +</tr> +<tr> +<td>property</td> +<td>attribute</td> +</tr> +<tr> +<td>SDF icon</td> +<td>template image</td> +</tr> +<tr> +<td>source</td> +<td>content source</td> +</tr> +</tbody></table> +<h2 id='specifying-the-map-s-content' class='heading'>Specifying the map’s content</h2> + +<p>Each source defined by a style JSON file is represented at runtime by a content +source object that you can use to initialize new style layers. The content +source object is a member of one of the following subclasses of <code><a href="Classes/MGLSource.html">MGLSource</a></code>:</p> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In the SDK</th> +</tr> +</thead><tbody> +<tr> +<td><code>vector</code></td> +<td><code><a href="Classes/MGLVectorTileSource.html">MGLVectorTileSource</a></code></td> +</tr> +<tr> +<td><code>raster</code></td> +<td><code><a href="Classes/MGLRasterTileSource.html">MGLRasterTileSource</a></code></td> +</tr> +<tr> +<td><code>raster-dem</code></td> +<td><code><a href="Content Sources.html#/c:objc(cs)MGLRasterDEMSource">MGLRasterDEMSource</a></code></td> +</tr> +<tr> +<td><code>geojson</code></td> +<td><code><a href="Classes/MGLShapeSource.html">MGLShapeSource</a></code></td> +</tr> +<tr> +<td><code>image</code></td> +<td><code><a href="Classes/MGLImageSource.html">MGLImageSource</a></code></td> +</tr> +</tbody></table> + +<p><code>canvas</code> and <code>video</code> sources are not supported.</p> +<h3 id='tile-sources' class='heading'>Tile sources</h3> + +<p>Raster and vector tile sources may be defined in TileJSON configuration files. +This SDK supports the properties defined in the style specification, which are a +subset of the keys defined in version 2.1.0 of the +<a href="https://github.com/mapbox/tilejson-spec/tree/master/2.1.0">TileJSON</a> +specification. As an alternative to authoring a custom TileJSON file, you may +supply various tile source options when creating a raster or vector tile source. +These options are detailed in the <code><a href="Other Type Definitions.html#/c:MGLTileSource.h@T@MGLTileSourceOption">MGLTileSourceOption</a></code> documentation:</p> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In TileJSON</th> +<th>In the SDK</th> +</tr> +</thead><tbody> +<tr> +<td><code>url</code></td> +<td>—</td> +<td><code>configurationURL</code> parameter in <code>-[MGLTileSource initWithIdentifier:configurationURL:]</code></td> +</tr> +<tr> +<td><code>tiles</code></td> +<td><code>tiles</code></td> +<td><code>tileURLTemplates</code> parameter in <code>-[MGLTileSource initWithIdentifier:tileURLTemplates:options:]</code></td> +</tr> +<tr> +<td><code>minzoom</code></td> +<td><code>minzoom</code></td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionMinimumZoomLevel">MGLTileSourceOptionMinimumZoomLevel</a></code></td> +</tr> +<tr> +<td><code>maxzoom</code></td> +<td><code>maxzoom</code></td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionMaximumZoomLevel">MGLTileSourceOptionMaximumZoomLevel</a></code></td> +</tr> +<tr> +<td><code>bounds</code></td> +<td><code>bounds</code></td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionCoordinateBounds">MGLTileSourceOptionCoordinateBounds</a></code></td> +</tr> +<tr> +<td><code>tileSize</code></td> +<td>—</td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionTileSize">MGLTileSourceOptionTileSize</a></code></td> +</tr> +<tr> +<td><code>attribution</code></td> +<td><code>attribution</code></td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionAttributionHTMLString">MGLTileSourceOptionAttributionHTMLString</a></code> (but consider specifying <code><a href="Other Constants.html#/c:@MGLTileSourceOptionAttributionInfos">MGLTileSourceOptionAttributionInfos</a></code> instead for improved security)</td> +</tr> +<tr> +<td><code>scheme</code></td> +<td><code>scheme</code></td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionTileCoordinateSystem">MGLTileSourceOptionTileCoordinateSystem</a></code></td> +</tr> +<tr> +<td><code>encoding</code></td> +<td>–</td> +<td><code><a href="Other Constants.html#/c:@MGLTileSourceOptionDEMEncoding">MGLTileSourceOptionDEMEncoding</a></code></td> +</tr> +</tbody></table> +<h3 id='shape-sources' class='heading'>Shape sources</h3> + +<p>Shape sources also accept various options. These options are detailed in the +<code><a href="Other Type Definitions.html#/c:MGLShapeSource.h@T@MGLShapeSourceOption">MGLShapeSourceOption</a></code> documentation:</p> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In the SDK</th> +</tr> +</thead><tbody> +<tr> +<td><code>data</code></td> +<td><code>url</code> parameter in <code><a href="Classes/MGLShapeSource.html#/c:objc(cs)MGLShapeSource(im)initWithIdentifier:URL:options:">-[MGLShapeSource initWithIdentifier:URL:options:]</a></code></td> +</tr> +<tr> +<td><code>maxzoom</code></td> +<td><code><a href="Other Constants.html#/c:@MGLShapeSourceOptionMaximumZoomLevel">MGLShapeSourceOptionMaximumZoomLevel</a></code></td> +</tr> +<tr> +<td><code>buffer</code></td> +<td><code><a href="Other Constants.html#/c:@MGLShapeSourceOptionBuffer">MGLShapeSourceOptionBuffer</a></code></td> +</tr> +<tr> +<td><code>tolerance</code></td> +<td><code><a href="Other Constants.html#/c:@MGLShapeSourceOptionSimplificationTolerance">MGLShapeSourceOptionSimplificationTolerance</a></code></td> +</tr> +<tr> +<td><code>cluster</code></td> +<td><code><a href="Other Constants.html#/c:@MGLShapeSourceOptionClustered">MGLShapeSourceOptionClustered</a></code></td> +</tr> +<tr> +<td><code>clusterRadius</code></td> +<td><code><a href="Other Constants.html#/c:@MGLShapeSourceOptionClusterRadius">MGLShapeSourceOptionClusterRadius</a></code></td> +</tr> +<tr> +<td><code>clusterMaxZoom</code></td> +<td><code><a href="Other Constants.html#/c:@MGLShapeSourceOptionMaximumZoomLevelForClustering">MGLShapeSourceOptionMaximumZoomLevelForClustering</a></code></td> +</tr> +</tbody></table> + +<p>To create a shape source from local GeoJSON data, first +<a href="working-with-geojson-data.html#converting-geojson-data-into-shape-objects">convert the GeoJSON data into a shape</a>, +then use the <code><a href="Classes/MGLShapeSource.html#/c:objc(cs)MGLShapeSource(im)initWithIdentifier:shape:options:">-[MGLShapeSource initWithIdentifier:shape:options:]</a></code> method.</p> +<h3 id='image-sources' class='heading'>Image sources</h3> + +<p>Image sources accept a non-axis aligned quadrilateral as their geographic coordinates. +These coordinates, in <code><a href="Structs/MGLCoordinateQuad.html">MGLCoordinateQuad</a></code>, are described in counterclockwise order, +in contrast to the clockwise order defined in the style specification. </p> +<h2 id='configuring-the-map-content-s-appearance' class='heading'>Configuring the map content’s appearance</h2> + +<p>Each layer defined by the style JSON file is represented at runtime by a style +layer object, which you can use to refine the map’s appearance. The style layer +object is a member of one of the following subclasses of <code><a href="Classes/MGLStyleLayer.html">MGLStyleLayer</a></code>:</p> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In the SDK</th> +</tr> +</thead><tbody> +<tr> +<td><code>background</code></td> +<td><code><a href="Classes/MGLBackgroundStyleLayer.html">MGLBackgroundStyleLayer</a></code></td> +</tr> +<tr> +<td><code>circle</code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html">MGLCircleStyleLayer</a></code></td> +</tr> +<tr> +<td><code>fill</code></td> +<td><code><a href="Classes/MGLFillStyleLayer.html">MGLFillStyleLayer</a></code></td> +</tr> +<tr> +<td><code>fill-extrusion</code></td> +<td><code><a href="Classes/MGLFillExtrusionStyleLayer.html">MGLFillExtrusionStyleLayer</a></code></td> +</tr> +<tr> +<td><code>heatmap</code></td> +<td><code><a href="Classes/MGLHeatmapStyleLayer.html">MGLHeatmapStyleLayer</a></code></td> +</tr> +<tr> +<td><code>hillshade</code></td> +<td><code><a href="Classes/MGLHillshadeStyleLayer.html">MGLHillshadeStyleLayer</a></code></td> +</tr> +<tr> +<td><code>line</code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html">MGLLineStyleLayer</a></code></td> +</tr> +<tr> +<td><code>raster</code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html">MGLRasterStyleLayer</a></code></td> +</tr> +<tr> +<td><code>symbol</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html">MGLSymbolStyleLayer</a></code></td> +</tr> +</tbody></table> + +<p>You configure layout and paint attributes by setting properties on these style +layer objects. The property names generally correspond to the style JSON +properties, except for the use of camelCase instead of kebab-case. Properties +whose names differ from the style specification are listed below:</p> +<h3 id='circle-style-layers' class='heading'>Circle style layers</h3> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td><code>circle-pitch-scale</code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html#/c:objc(cs)MGLCircleStyleLayer(py)circleScaleAlignment">MGLCircleStyleLayer.circleScaleAlignment</a></code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html#/c:objc(cs)MGLCircleStyleLayer(py)circleScaleAlignment">MGLCircleStyleLayer.circleScaleAlignment</a></code></td> +</tr> +<tr> +<td><code>circle-translate</code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html#/c:objc(cs)MGLCircleStyleLayer(py)circleTranslation">MGLCircleStyleLayer.circleTranslation</a></code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html#/c:objc(cs)MGLCircleStyleLayer(py)circleTranslation">MGLCircleStyleLayer.circleTranslation</a></code></td> +</tr> +<tr> +<td><code>circle-translate-anchor</code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html#/c:objc(cs)MGLCircleStyleLayer(py)circleTranslationAnchor">MGLCircleStyleLayer.circleTranslationAnchor</a></code></td> +<td><code><a href="Classes/MGLCircleStyleLayer.html#/c:objc(cs)MGLCircleStyleLayer(py)circleTranslationAnchor">MGLCircleStyleLayer.circleTranslationAnchor</a></code></td> +</tr> +</tbody></table> +<h3 id='fill-style-layers' class='heading'>Fill style layers</h3> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td><code>fill-antialias</code></td> +<td><code><a href="Classes/MGLFillStyleLayer.html#/c:objc(cs)MGLFillStyleLayer(py)fillAntialiased">MGLFillStyleLayer.fillAntialiased</a></code></td> +<td><code>MGLFillStyleLayer.isFillAntialiased</code></td> +</tr> +<tr> +<td><code>fill-translate</code></td> +<td><code><a href="Classes/MGLFillStyleLayer.html#/c:objc(cs)MGLFillStyleLayer(py)fillTranslation">MGLFillStyleLayer.fillTranslation</a></code></td> +<td><code><a href="Classes/MGLFillStyleLayer.html#/c:objc(cs)MGLFillStyleLayer(py)fillTranslation">MGLFillStyleLayer.fillTranslation</a></code></td> +</tr> +<tr> +<td><code>fill-translate-anchor</code></td> +<td><code><a href="Classes/MGLFillStyleLayer.html#/c:objc(cs)MGLFillStyleLayer(py)fillTranslationAnchor">MGLFillStyleLayer.fillTranslationAnchor</a></code></td> +<td><code><a href="Classes/MGLFillStyleLayer.html#/c:objc(cs)MGLFillStyleLayer(py)fillTranslationAnchor">MGLFillStyleLayer.fillTranslationAnchor</a></code></td> +</tr> +</tbody></table> +<h3 id='fill-extrusion-style-layers' class='heading'>Fill extrusion style layers</h3> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td><code>fill-extrusion-translate</code></td> +<td><code><a href="Classes/MGLFillExtrusionStyleLayer.html#/c:objc(cs)MGLFillExtrusionStyleLayer(py)fillExtrusionTranslation">MGLFillExtrusionStyleLayer.fillExtrusionTranslation</a></code></td> +<td><code><a href="Classes/MGLFillExtrusionStyleLayer.html#/c:objc(cs)MGLFillExtrusionStyleLayer(py)fillExtrusionTranslation">MGLFillExtrusionStyleLayer.fillExtrusionTranslation</a></code></td> +</tr> +<tr> +<td><code>fill-extrusion-translate-anchor</code></td> +<td><code><a href="Classes/MGLFillExtrusionStyleLayer.html#/c:objc(cs)MGLFillExtrusionStyleLayer(py)fillExtrusionTranslationAnchor">MGLFillExtrusionStyleLayer.fillExtrusionTranslationAnchor</a></code></td> +<td><code><a href="Classes/MGLFillExtrusionStyleLayer.html#/c:objc(cs)MGLFillExtrusionStyleLayer(py)fillExtrusionTranslationAnchor">MGLFillExtrusionStyleLayer.fillExtrusionTranslationAnchor</a></code></td> +</tr> +</tbody></table> +<h3 id='line-style-layers' class='heading'>Line style layers</h3> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td><code>line-dasharray</code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html#/c:objc(cs)MGLLineStyleLayer(py)lineDashPattern">MGLLineStyleLayer.lineDashPattern</a></code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html#/c:objc(cs)MGLLineStyleLayer(py)lineDashPattern">MGLLineStyleLayer.lineDashPattern</a></code></td> +</tr> +<tr> +<td><code>line-translate</code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html#/c:objc(cs)MGLLineStyleLayer(py)lineTranslation">MGLLineStyleLayer.lineTranslation</a></code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html#/c:objc(cs)MGLLineStyleLayer(py)lineTranslation">MGLLineStyleLayer.lineTranslation</a></code></td> +</tr> +<tr> +<td><code>line-translate-anchor</code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html#/c:objc(cs)MGLLineStyleLayer(py)lineTranslationAnchor">MGLLineStyleLayer.lineTranslationAnchor</a></code></td> +<td><code><a href="Classes/MGLLineStyleLayer.html#/c:objc(cs)MGLLineStyleLayer(py)lineTranslationAnchor">MGLLineStyleLayer.lineTranslationAnchor</a></code></td> +</tr> +</tbody></table> +<h3 id='raster-style-layers' class='heading'>Raster style layers</h3> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td><code>raster-brightness-max</code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)maximumRasterBrightness">MGLRasterStyleLayer.maximumRasterBrightness</a></code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)maximumRasterBrightness">MGLRasterStyleLayer.maximumRasterBrightness</a></code></td> +</tr> +<tr> +<td><code>raster-brightness-min</code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)minimumRasterBrightness">MGLRasterStyleLayer.minimumRasterBrightness</a></code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)minimumRasterBrightness">MGLRasterStyleLayer.minimumRasterBrightness</a></code></td> +</tr> +<tr> +<td><code>raster-hue-rotate</code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)rasterHueRotation">MGLRasterStyleLayer.rasterHueRotation</a></code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)rasterHueRotation">MGLRasterStyleLayer.rasterHueRotation</a></code></td> +</tr> +<tr> +<td><code>raster-resampling</code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)rasterResamplingMode">MGLRasterStyleLayer.rasterResamplingMode</a></code></td> +<td><code><a href="Classes/MGLRasterStyleLayer.html#/c:objc(cs)MGLRasterStyleLayer(py)rasterResamplingMode">MGLRasterStyleLayer.rasterResamplingMode</a></code></td> +</tr> +</tbody></table> +<h3 id='symbol-style-layers' class='heading'>Symbol style layers</h3> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td><code>icon-allow-overlap</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconAllowsOverlap">MGLSymbolStyleLayer.iconAllowsOverlap</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconAllowsOverlap">MGLSymbolStyleLayer.iconAllowsOverlap</a></code></td> +</tr> +<tr> +<td><code>icon-ignore-placement</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconIgnoresPlacement">MGLSymbolStyleLayer.iconIgnoresPlacement</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconIgnoresPlacement">MGLSymbolStyleLayer.iconIgnoresPlacement</a></code></td> +</tr> +<tr> +<td><code>icon-image</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconImageName">MGLSymbolStyleLayer.iconImageName</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconImageName">MGLSymbolStyleLayer.iconImageName</a></code></td> +</tr> +<tr> +<td><code>icon-optional</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconOptional">MGLSymbolStyleLayer.iconOptional</a></code></td> +<td><code>MGLSymbolStyleLayer.isIconOptional</code></td> +</tr> +<tr> +<td><code>icon-rotate</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconRotation">MGLSymbolStyleLayer.iconRotation</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconRotation">MGLSymbolStyleLayer.iconRotation</a></code></td> +</tr> +<tr> +<td><code>icon-size</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconScale">MGLSymbolStyleLayer.iconScale</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconScale">MGLSymbolStyleLayer.iconScale</a></code></td> +</tr> +<tr> +<td><code>icon-keep-upright</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)keepsIconUpright">MGLSymbolStyleLayer.keepsIconUpright</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)keepsIconUpright">MGLSymbolStyleLayer.keepsIconUpright</a></code></td> +</tr> +<tr> +<td><code>text-keep-upright</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)keepsTextUpright">MGLSymbolStyleLayer.keepsTextUpright</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)keepsTextUpright">MGLSymbolStyleLayer.keepsTextUpright</a></code></td> +</tr> +<tr> +<td><code>text-max-angle</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)maximumTextAngle">MGLSymbolStyleLayer.maximumTextAngle</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)maximumTextAngle">MGLSymbolStyleLayer.maximumTextAngle</a></code></td> +</tr> +<tr> +<td><code>text-max-width</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)maximumTextWidth">MGLSymbolStyleLayer.maximumTextWidth</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)maximumTextWidth">MGLSymbolStyleLayer.maximumTextWidth</a></code></td> +</tr> +<tr> +<td><code>symbol-avoid-edges</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)symbolAvoidsEdges">MGLSymbolStyleLayer.symbolAvoidsEdges</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)symbolAvoidsEdges">MGLSymbolStyleLayer.symbolAvoidsEdges</a></code></td> +</tr> +<tr> +<td><code>text-field</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)text">MGLSymbolStyleLayer.text</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)text">MGLSymbolStyleLayer.text</a></code></td> +</tr> +<tr> +<td><code>text-allow-overlap</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textAllowsOverlap">MGLSymbolStyleLayer.textAllowsOverlap</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textAllowsOverlap">MGLSymbolStyleLayer.textAllowsOverlap</a></code></td> +</tr> +<tr> +<td><code>text-font</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textFontNames">MGLSymbolStyleLayer.textFontNames</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textFontNames">MGLSymbolStyleLayer.textFontNames</a></code></td> +</tr> +<tr> +<td><code>text-size</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textFontSize">MGLSymbolStyleLayer.textFontSize</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textFontSize">MGLSymbolStyleLayer.textFontSize</a></code></td> +</tr> +<tr> +<td><code>text-ignore-placement</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textIgnoresPlacement">MGLSymbolStyleLayer.textIgnoresPlacement</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textIgnoresPlacement">MGLSymbolStyleLayer.textIgnoresPlacement</a></code></td> +</tr> +<tr> +<td><code>text-justify</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textJustification">MGLSymbolStyleLayer.textJustification</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textJustification">MGLSymbolStyleLayer.textJustification</a></code></td> +</tr> +<tr> +<td><code>text-optional</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textOptional">MGLSymbolStyleLayer.textOptional</a></code></td> +<td><code>MGLSymbolStyleLayer.isTextOptional</code></td> +</tr> +<tr> +<td><code>text-rotate</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textRotation">MGLSymbolStyleLayer.textRotation</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textRotation">MGLSymbolStyleLayer.textRotation</a></code></td> +</tr> +<tr> +<td><code>icon-translate</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconTranslation">MGLSymbolStyleLayer.iconTranslation</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconTranslation">MGLSymbolStyleLayer.iconTranslation</a></code></td> +</tr> +<tr> +<td><code>icon-translate-anchor</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconTranslationAnchor">MGLSymbolStyleLayer.iconTranslationAnchor</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)iconTranslationAnchor">MGLSymbolStyleLayer.iconTranslationAnchor</a></code></td> +</tr> +<tr> +<td><code>text-translate</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textTranslation">MGLSymbolStyleLayer.textTranslation</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textTranslation">MGLSymbolStyleLayer.textTranslation</a></code></td> +</tr> +<tr> +<td><code>text-translate-anchor</code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textTranslationAnchor">MGLSymbolStyleLayer.textTranslationAnchor</a></code></td> +<td><code><a href="Classes/MGLSymbolStyleLayer.html#/c:objc(cs)MGLSymbolStyleLayer(py)textTranslationAnchor">MGLSymbolStyleLayer.textTranslationAnchor</a></code></td> +</tr> +</tbody></table> +<h2 id='setting-attribute-values' class='heading'>Setting attribute values</h2> + +<p>Each property representing a layout or paint attribute is set to an +<code>NSExpression</code> object. <code>NSExpression</code> objects play the same role as +<a href="https://www.mapbox.com/mapbox-gl-js/style-spec/#expressions">expressions in the Mapbox Style Specification</a>, +but you create the former using a very different syntax. <code>NSExpression</code>’s format +string syntax is reminiscent of a spreadsheet formula or an expression in a +database query. See the +“<a href="predicates-and-expressions.html">Predicates and Expressions</a>” guide for an +overview of the expression support in this SDK. This SDK no longer supports +style functions; use expressions instead.</p> +<h3 id='constant-values-in-expressions' class='heading'>Constant values in expressions</h3> + +<p>In contrast to the JSON type that the style specification defines for each +layout or paint property, the style value object often contains a more specific +Foundation or Cocoa type. General rules for attribute types are listed below. +Pay close attention to the SDK documentation for the attribute you want to get +or set.</p> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In Objective-C</th> +<th>In Swift</th> +</tr> +</thead><tbody> +<tr> +<td>Color</td> +<td><code>NSColor</code></td> +<td><code>NSColor</code></td> +</tr> +<tr> +<td>Enum</td> +<td><code>NSString</code></td> +<td><code>String</code></td> +</tr> +<tr> +<td>String</td> +<td><code>NSString</code></td> +<td><code>String</code></td> +</tr> +<tr> +<td>Boolean</td> +<td><code>NSNumber.boolValue</code></td> +<td><code>NSNumber.boolValue</code></td> +</tr> +<tr> +<td>Number</td> +<td><code>NSNumber.floatValue</code></td> +<td><code>NSNumber.floatValue</code></td> +</tr> +<tr> +<td>Array (<code>-dasharray</code>)</td> +<td><code>NSArray<NSNumber></code></td> +<td><code>[Float]</code></td> +</tr> +<tr> +<td>Array (<code>-font</code>)</td> +<td><code>NSArray<NSString></code></td> +<td><code>[String]</code></td> +</tr> +<tr> +<td>Array (<code>-offset</code>, <code>-translate</code>)</td> +<td><code>NSValue</code> containing <code>CGVector</code></td> +<td><code>NSValue</code> containing <code>CGVector</code></td> +</tr> +<tr> +<td>Array (<code>-padding</code>)</td> +<td><code>NSValue.edgeInsetsValue</code></td> +<td><code>NSValue.edgeInsetsValue</code></td> +</tr> +</tbody></table> + +<p>For padding attributes, note that the arguments to +<code>NSEdgeInsetsMake()</code> in Objective-C and <code>EdgeInsets(top:left:bottom:right:)</code> in +Swift +are specified in counterclockwise order, in contrast to the clockwise order +defined by the style specification.</p> + +<p>Additionally, on macOS, a screen coordinate of (0, 0) is located at the +lower-left corner of the screen. Therefore, a positive <code>CGVector.dy</code> means an +offset or translation upward, while a negative <code>CGVector.dy</code> means an offset or +translation downward. This is the reverse of how <code>CGVector</code> is interpreted on +iOS.</p> +<h3 id='expression-operators' class='heading'>Expression operators</h3> + +<p>Many expression operators defined in the style specification have corresponding +symbols to be used with the <code>+[NSExpression expressionWithFormat:]</code>, +<code>+[NSExpression expressionForFunction:arguments:]</code>, or +<code>+[NSExpression expressionForFunction:selectorName:arguments:]</code> method:</p> + +<table><thead> +<tr> +<th>In style specification</th> +<th>Method, function, or predicate type</th> +<th>Format string syntax</th> +</tr> +</thead><tbody> +<tr> +<td><code>array</code></td> +<td></td> +<td></td> +</tr> +<tr> +<td><code>boolean</code></td> +<td></td> +<td></td> +</tr> +<tr> +<td><code>collator</code></td> +<td><code>NSComparisonPredicateOptions</code></td> +<td><code>'Québec' =[cd] 'QUEBEC'</code></td> +</tr> +<tr> +<td><code>literal</code></td> +<td><code>+[NSExpression expressionForConstantValue:]</code></td> +<td><code>%@</code> representing <code>NSArray</code> or <code>NSDictionary</code></td> +</tr> +<tr> +<td><code>number</code></td> +<td></td> +<td></td> +</tr> +<tr> +<td><code>string</code></td> +<td></td> +<td></td> +</tr> +<tr> +<td><code>to-boolean</code></td> +<td><code>boolValue</code></td> +<td></td> +</tr> +<tr> +<td><code>to-color</code></td> +<td></td> +<td><code>CAST(var, 'NSColor')</code></td> +</tr> +<tr> +<td><code>to-number</code></td> +<td><code>mgl_numberWithFallbackValues:</code></td> +<td><code>CAST(zipCode, 'NSNumber')</code></td> +</tr> +<tr> +<td><code>to-string</code></td> +<td><code>stringValue</code></td> +<td><code>CAST(ele, 'NSString')</code></td> +</tr> +<tr> +<td><code>typeof</code></td> +<td></td> +<td></td> +</tr> +<tr> +<td><code>geometry-type</code></td> +<td><code>NSExpression.geometryTypeVariableExpression</code></td> +<td><code>$geometryType</code></td> +</tr> +<tr> +<td><code>id</code></td> +<td><code>NSExpression.featureIdentifierVariableExpression</code></td> +<td><code>$featureIdentifier</code></td> +</tr> +<tr> +<td><code>properties</code></td> +<td><code>NSExpression.featureAttributesVariableExpression</code></td> +<td><code>$featureAttributes</code></td> +</tr> +<tr> +<td><code>at</code></td> +<td><code>objectFrom:withIndex:</code></td> +<td><code>array[n]</code></td> +</tr> +<tr> +<td><code>get</code></td> +<td><code>+[NSExpression expressionForKeyPath:]</code></td> +<td>Key path</td> +</tr> +<tr> +<td><code>has</code></td> +<td><code>mgl_does:have:</code></td> +<td><code>mgl_does:have:(self, 'key')</code></td> +</tr> +<tr> +<td><code>length</code></td> +<td><code>count:</code></td> +<td><code>count({1, 2, 2, 3, 4, 7, 9})</code></td> +</tr> +<tr> +<td><code>!</code></td> +<td><code>NSNotPredicateType</code></td> +<td><code>NOT (p0 OR … OR pn)</code></td> +</tr> +<tr> +<td><code>!=</code></td> +<td><code>NSNotEqualToPredicateOperatorType</code></td> +<td><code>key != value</code></td> +</tr> +<tr> +<td><code><</code></td> +<td><code>NSLessThanPredicateOperatorType</code></td> +<td><code>key < value</code></td> +</tr> +<tr> +<td><code><=</code></td> +<td><code>NSLessThanOrEqualToPredicateOperatorType</code></td> +<td><code>key <= value</code></td> +</tr> +<tr> +<td><code>==</code></td> +<td><code>NSEqualToPredicateOperatorType</code></td> +<td><code>key == value</code></td> +</tr> +<tr> +<td><code>></code></td> +<td><code>NSGreaterThanPredicateOperatorType</code></td> +<td><code>key > value</code></td> +</tr> +<tr> +<td><code>>=</code></td> +<td><code>NSGreaterThanOrEqualToPredicateOperatorType</code></td> +<td><code>key >= value</code></td> +</tr> +<tr> +<td><code>all</code></td> +<td><code>NSAndPredicateType</code></td> +<td><code>p0 AND … AND pn</code></td> +</tr> +<tr> +<td><code>any</code></td> +<td><code>NSOrPredicateType</code></td> +<td><code>p0 OR … OR pn</code></td> +</tr> +<tr> +<td><code>case</code></td> +<td><code>+[NSExpression expressionForConditional:trueExpression:falseExpression:]</code> or <code>MGL_IF</code> or <code>+[NSExpression mgl_expressionForConditional:trueExpression:falseExpresssion:]</code></td> +<td><code>TERNARY(1 = 2, YES, NO)</code> or <code>MGL_IF(1 = 2, YES, 2 = 2, YES, NO)</code></td> +</tr> +<tr> +<td><code>coalesce</code></td> +<td><code>mgl_coalesce:</code></td> +<td><code>mgl_coalesce({x, y, z})</code></td> +</tr> +<tr> +<td><code>match</code></td> +<td><code>MGL_MATCH</code> or <code>+[NSExpression mgl_expressionForMatchingExpression:inDictionary:defaultExpression:]</code></td> +<td><code>MGL_MATCH(x, 0, 'zero match', 1, 'one match', 'two match', 'default')</code></td> +</tr> +<tr> +<td><code>interpolate</code></td> +<td><code>mgl_interpolate:withCurveType:parameters:stops:</code> or <code>+[NSExpression mgl_expressionForInterpolatingExpression:withCurveType:parameters:stops:]</code></td> +<td></td> +</tr> +<tr> +<td><code>step</code></td> +<td><code>mgl_step:withMinimum:stops:</code> or <code>+[NSExpression mgl_expressionForSteppingExpression:fromExpression:stops:]</code></td> +<td></td> +</tr> +<tr> +<td><code>let</code></td> +<td><code>mgl_expressionWithContext:</code></td> +<td><code>MGL_LET('ios', 11, 'macos', 10.13, $ios + $macos)</code></td> +</tr> +<tr> +<td><code>var</code></td> +<td><code>+[NSExpression expressionForVariable:]</code></td> +<td><code>$variable</code></td> +</tr> +<tr> +<td><code>concat</code></td> +<td><code>mgl_join:</code> or <code>-[NSExpression mgl_expressionByAppendingExpression:]</code></td> +<td><code>mgl_join({'Old', ' ', 'MacDonald'})</code></td> +</tr> +<tr> +<td><code>downcase</code></td> +<td><code>lowercase:</code></td> +<td><code>lowercase('DOWNTOWN')</code></td> +</tr> +<tr> +<td><code>upcase</code></td> +<td><code>uppercase:</code></td> +<td><code>uppercase('Elysian Fields')</code></td> +</tr> +<tr> +<td><code>rgb</code></td> +<td><code>+[NSColor colorWithCalibratedRed:green:blue:alpha:]</code></td> +<td></td> +</tr> +<tr> +<td><code>rgba</code></td> +<td><code>+[NSColor colorWithCalibratedRed:green:blue:alpha:]</code></td> +<td></td> +</tr> +<tr> +<td><code>to-rgba</code></td> +<td></td> +<td><code>CAST(noindex(var), 'NSArray')</code></td> +</tr> +<tr> +<td><code>-</code></td> +<td><code>from:subtract:</code></td> +<td><code>2 - 1</code></td> +</tr> +<tr> +<td><code>*</code></td> +<td><code>multiply:by:</code></td> +<td><code>1 * 2</code></td> +</tr> +<tr> +<td><code>/</code></td> +<td><code>divide:by:</code></td> +<td><code>1 / 2</code></td> +</tr> +<tr> +<td><code>%</code></td> +<td><code>modulus:by:</code></td> +<td></td> +</tr> +<tr> +<td><code>^</code></td> +<td><code>raise:toPower:</code></td> +<td><code>2 ** 2</code></td> +</tr> +<tr> +<td><code>+</code></td> +<td><code>add:to:</code></td> +<td><code>1 + 2</code></td> +</tr> +<tr> +<td><code>abs</code></td> +<td><code>abs:</code></td> +<td><code>abs(-1)</code></td> +</tr> +<tr> +<td><code>acos</code></td> +<td><code>mgl_acos:</code></td> +<td><code>mgl_acos(1)</code></td> +</tr> +<tr> +<td><code>asin</code></td> +<td><code>mgl_asin:</code></td> +<td><code>mgl_asin(0)</code></td> +</tr> +<tr> +<td><code>atan</code></td> +<td><code>mgl_atan:</code></td> +<td><code>mgl_atan(20)</code></td> +</tr> +<tr> +<td><code>ceil</code></td> +<td><code>ceiling:</code></td> +<td><code>ceiling(0.99999)</code></td> +</tr> +<tr> +<td><code>cos</code></td> +<td><code>mgl_cos:</code></td> +<td><code>mgl_cos(0)</code></td> +</tr> +<tr> +<td><code>e</code></td> +<td></td> +<td><code>%@</code> representing <code>NSNumber</code> containing <code>M_E</code></td> +</tr> +<tr> +<td><code>floor</code></td> +<td><code>floor:</code></td> +<td><code>floor(-0.99999)</code></td> +</tr> +<tr> +<td><code>ln</code></td> +<td><code>ln:</code></td> +<td><code>ln(2)</code></td> +</tr> +<tr> +<td><code>ln2</code></td> +<td></td> +<td><code>%@</code> representing <code>NSNumber</code> containing <code>M_LN2</code></td> +</tr> +<tr> +<td><code>log10</code></td> +<td><code>log:</code></td> +<td><code>log(1)</code></td> +</tr> +<tr> +<td><code>log2</code></td> +<td><code>mgl_log2:</code></td> +<td><code>mgl_log2(1024)</code></td> +</tr> +<tr> +<td><code>max</code></td> +<td><code>max:</code></td> +<td><code>max({1, 2, 2, 3, 4, 7, 9})</code></td> +</tr> +<tr> +<td><code>min</code></td> +<td><code>min:</code></td> +<td><code>min({1, 2, 2, 3, 4, 7, 9})</code></td> +</tr> +<tr> +<td><code>pi</code></td> +<td></td> +<td><code>%@</code> representing <code>NSNumber</code> containing <code>M_PI</code></td> +</tr> +<tr> +<td><code>round</code></td> +<td><code>mgl_round:</code></td> +<td><code>mgl_round(1.5)</code></td> +</tr> +<tr> +<td><code>sin</code></td> +<td><code>mgl_sin:</code></td> +<td><code>mgl_sin(0)</code></td> +</tr> +<tr> +<td><code>sqrt</code></td> +<td><code>sqrt:</code></td> +<td><code>sqrt(2)</code></td> +</tr> +<tr> +<td><code>tan</code></td> +<td><code>mgl_tan:</code></td> +<td><code>mgl_tan(0)</code></td> +</tr> +<tr> +<td><code>zoom</code></td> +<td><code>NSExpression.zoomLevelVariableExpression</code></td> +<td><code>$zoom</code></td> +</tr> +<tr> +<td><code>heatmap-density</code></td> +<td><code>NSExpression.heatmapDensityVariableExpression</code></td> +<td><code>$heatmapDensity</code></td> +</tr> +</tbody></table> + +<p>For operators that have no corresponding <code>NSExpression</code> symbol, use the +<code>MGL_FUNCTION()</code> format string syntax.</p> +<h2 id='filtering-sources' class='heading'>Filtering sources</h2> + +<p>You can filter a shape or vector tile source by setting the +<code><a href="Classes/MGLVectorStyleLayer.html#/c:objc(cs)MGLVectorStyleLayer(py)predicate">MGLVectorStyleLayer.predicate</a></code> property to an <code>NSPredicate</code> object. Below is a +table of style JSON operators and the corresponding operators used in the +predicate format string:</p> + +<table><thead> +<tr> +<th>In style JSON</th> +<th>In the format string</th> +</tr> +</thead><tbody> +<tr> +<td><code>["has", key]</code></td> +<td><code>key != nil</code></td> +</tr> +<tr> +<td><code>["!has", key]</code></td> +<td><code>key == nil</code></td> +</tr> +<tr> +<td><code>["==", key, value]</code></td> +<td><code>key == value</code></td> +</tr> +<tr> +<td><code>["!=", key, value]</code></td> +<td><code>key != value</code></td> +</tr> +<tr> +<td><code>[">", key, value]</code></td> +<td><code>key > value</code></td> +</tr> +<tr> +<td><code>[">=", key, value]</code></td> +<td><code>key >= value</code></td> +</tr> +<tr> +<td><code>["<", key, value]</code></td> +<td><code>key < value</code></td> +</tr> +<tr> +<td><code>["<=", key, value]</code></td> +<td><code>key <= value</code></td> +</tr> +<tr> +<td><code>["in", key, v0, …, vn]</code></td> +<td><code>key IN {v0, …, vn}</code></td> +</tr> +<tr> +<td><code>["!in", key, v0, …, vn]</code></td> +<td><code>NOT key IN {v0, …, vn}</code></td> +</tr> +<tr> +<td><code>["all", f0, …, fn]</code></td> +<td><code>p0 AND … AND pn</code></td> +</tr> +<tr> +<td><code>["any", f0, …, fn]</code></td> +<td><code>p0 OR … OR pn</code></td> +</tr> +<tr> +<td><code>["none", f0, …, fn]</code></td> +<td><code>NOT (p0 OR … OR pn)</code></td> +</tr> +</tbody></table> + +<p>See the “<a href="predicates-and-expressions.html">Predicates and Expressions</a>” guide for +a full description of the supported operators and operand types.</p> + + </div> + </section> + + + </article> + </div> + <section class="footer limiter"> + <p>© 2014–2018 <a class="link" href="https://www.mapbox.com/" target="_blank" rel="external">Mapbox</a>. See <a class="link" href="https://github.com/mapbox/mapbox-gl-native/blob/master/LICENSE.md" target="_blank" rel="external">license</a> for more details.</p> Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.3</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project. + </section> + </body> +</div> +</html> |