diff --git a/platform/darwin/src/MGLTileSource.h b/platform/darwin/src/MGLTileSource.h index 994375bec..12bc72538 100644 --- a/platform/darwin/src/MGLTileSource.h +++ b/platform/darwin/src/MGLTileSource.h @@ -148,13 +148,101 @@ typedef NS_ENUM(NSUInteger, MGLTileCoordinateSystem) { /** Returns a tile source initialized an identifier, tile URL templates, and options. - + After initializing and configuring the source, add it to a map view’s style using the `-[MGLStyle addSource:]` method. + #### Tile URL templates + + Tile URL templates are strings that specify the URLs of the tile images to + load. Each template resembles an absolute URL, but with any number of + placeholder strings that the source evaluates based on the tile it needs to + load. For example: + + + + Tile sources support the following placeholder strings in tile URL templates, + all of which are optional: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Placeholder stringDescription
{x}The index of the tile along the map’s x axis according to Spherical + Mercator projection. If the value is 0, the tile’s left edge corresponds + to the 180th meridian west. If the value is 2z−1, + the tile’s right edge corresponds to the 180th meridian east.
{y}The index of the tile along the map’s y axis according to Spherical + Mercator projection. If the value is 0, the tile’s tile edge corresponds + to arctan(sinh(π)), or approximately 85.0511 degrees north. If the value + is 2z−1, the tile’s bottom edge corresponds to + −arctan(sinh(π)), or approximately 85.0511 degrees south. The y axis is + inverted if the options parameter contains + MGLTileSourceOptionTileCoordinateSystem with a value of + MGLTileCoordinateSystemTMS.
{z}The tile’s zoom level. At zoom level 0, each tile covers the entire + world map; at zoom level 1, it covers ¼ of the world; at zoom level 2, + 1⁄16 of the world, and so on. For tiles loaded by + a MGLRasterSource object, whether the tile zoom level + matches the map’s current zoom level depends on the value of the + source’s tile size as specified in the + MGLTileSourceOptionTileSize key of the + options parameter.
{bbox-epsg-3857}The tile’s bounding box, expressed as a comma-separated list of the + tile’s western, southern, eastern, and northern extents according to + Spherical Mercator (EPSG:3857) projection. The bounding box is typically + used with map services conforming to the + Web Map Service + protocol.
{quadkey}A quadkey indicating both the tile’s location and its zoom level. The + quadkey is typically used with + Bing Maps. +
{ratio}A suffix indicating the resolution of the tile image. The suffix is the + empty string for standard resolution displays and @2x for + Retina displays, including displays for which + NSScreen.backingScaleFactor or UIScreen.scale + is 3.
{prefix}Two hexadecimal digits chosen such that each visible tile has a + different prefix. The prefix is typically used for domain sharding.
+ + For more information about the `{x}`, `{y}`, and `{z}` placeholder strings, + consult the + OpenStreetMap Wiki. + @param identifier A string that uniquely identifies the source in the style to which it is added. - @param tileURLTemplates An array of tile URL template strings. + @param tileURLTemplates An array of tile URL template strings. Only the first + string is used; any additional strings are ignored. @param options A dictionary containing configuration options. See `MGLTileSourceOption` for available keys and values. Pass in `nil` to use the default values.