Skip to main content

Style Specification

Our team is working diligently to ensure all of our SDKs support the same styling capabilities. However, at this time, each SDK has a different level of support. The Android and iOS SDKs work with the more modern 1.2 style specification, while the JavaScript SDK works with the 1.1 style specification.

The Aegir Maps SDKs provide a set of default styles for rendering venues and icons for various points of interest within these venues. While the default styles are useful, they may not always align with the aesthetic preferences of your app or its users. Fortunately, the SDKs allow developers to override these default styles, enabling customization of the look and feel of both the venue and its constituent places.

Aegir Maps has prepared some examples of style implementations used in its reference apps for developers' reference: style_default.json and style_artistic.json

danger

For production use, do not point your application to this endpoint. Instead, host your own copy of the style files, icons, and font sources for your application to ensure consistent performance and availability.

Vector Map Tile Style Specification

The Aegir JavaScript SDK uses the Style Specification version 1.1. This version provides the base styling options for venues and places within the venue. Customize colors, icons, and more to suit your specific needs.

Property-nameRequiredSupported-layer-typeDescription
idyesIdentifier for this style definition. For venues with multiple styles, this identifier should be unique
namenoCommon name used to describe this style
versionyesSpec format version. Certain versions of the VMSDK may only support certain versions of this spec format.
stylesyesContainer for list of style layer customizations
styles[].layer-idyesAllThe ID of the style layer. See Possible Style Layer ID Patterns section below for acceptable values.
styles[].hiddennoAllSpecify as true to hide this layer. Default: false.
styles[].fill-colornoPolygonA HEX color to fill the polygon with. Default: NULL.
styles[].fill-patternnoPolygonThis is the name of an image from the style's sprite sheet to pattern fill the polygon with. Default: NULL.
styles[].outline-colornoPolygonThis is a HEX color to draw an outline around the polygon with. Default: NULL
styles[].line-colornoLineA HEX color to draw the line with. Default: NULL.
styles[].icon-namenoIconThis is the name of an image from the style's sprite sheet. Default: NULL.
styles[].font-namenoLabelThis is the name of a font to use for the labels. Default: NULL.
styles[].font-sizenoLabelThe point size of the font. Default: NULL.
styles[].font-colornoLabelA HEX color of the font: Default: NULL.
styles[].font-stroke-colornoA HEX color for the font outline. Default: NULL.
styles[].font-stroke-widthnoThis is the width of an outline for the font. Default: NULL.
styles[].max-text-widthnoControls automatic text wrapping within a label. Default: NULL.
wayfindingnoContainer for list of wayfinding style customizations.
wayfinding.path-stroke-widthnoA decimal value indicating how thick the stroke is for the default wayfinding path. Default: NULL.
wayfinding.path-stroke-min-widthnoThis is a decimal value indicating how thick the stroke is for the default wayfinding path at the map's minimum zoom level.Default: 2
wayfinding.path-stroke-max-widthnoThis is a decimal value indicating how thick the stroke is for the default wayfinding path at the map's maximum zoom level. Default: 40
wayfinding.path-stroke-colornoA HEX color to draw the wayfinding path. Default: NULL.
wayfinding.path-stroke-alphanoA decimal value from 0 to 1 to indicate how transparent the default wayfinding path is. Default: NULL.
wayfinding.highlighted-path-stroke-widthnoA decimal value indicating how thick the stroke is for the highlighted section of the wayfinding path. Default: NULL.
wayfinding.highlighted-path-stroke-colornoA HEX color to draw a highlighted section of the wayfinding path. Default: NULL.
wayfinding.highlighted-path-stroke-alphanoA decimal value from 0 to 1 to indicate how transparent the highlighted section of the wayfinding path is. Default: NULL.
wayfinding.path-arrow-fill-colornoThis is a HEX color to draw the arrows on the wayfinding path. Default: #4688F1
wayfinding.path-arrow-stroke-colornoThis is a HEX color of the outline around the arrows drawn on the wayfinding path. Default: #FFFFFF
wayfinding.path-arrow-sizenoThis is a decimal value indicating how large the arrows on the wayfinding path show up. The value should be in METERS. Default: 1.5
wayfinding.highlighted-path-stroke-min-widthnoThis is a decimal value indicating how thick the stroke is for the highlighted section of the wayfinding path at the map's minimum zoom level. Default: 2
wayfinding.highlighted-path-stroke-max-widthnoThis is a decimal value indicating how thick the stroke is for the highlighted section of the wayfinding path at the map's maximum zoom level. Default: 40
wayfinding.highlighted-path-arrow-fill-colornoThis is a HEX color of the arrows drawn in a highlighted section of the wayfinding path. Default: #4688F1
wayfinding.highlighted-path-arrow-stroke-colornoThis is a HEX color of the outline around the arrows drawn in a highlighted section of the wayfinding path. Default: #FFFFFF
wayfinding.highlighted-path-arrow-sizenoThis is a decimal value indicating how large the arrows in a highlighted section of the wayfinding path. The value should be in METERS. Default: 1.5

Possible Style Layer ID Patterns

OrderLayer-IDTile-typeLayer-typeDescription
1backgroundAllPolygonBackground color of the entire map that is visible when the base map is hidden.
2venuevectorPolygon"venue_outdoors" polygon.
3outdoorsAlln/aRaster map tiles that are part of the venue outdoor floor.
4building_outlines_[BUILDING]vectorPolygonBuilding-outlines polygon for the given [BUILDING].
5floor_outlines_[FLOOR]vectorPolygonFloor-outlines polygon for the given [FLOOR].
6floor_elevators_[FLOOR]vectorPolygonElevator polygons for the given [FLOOR].
7floor_stairwells_[FLOOR]vectorPolygonStairwell polygons for the given [FLOOR].
8floor_restrooms_[FLOOR]vectorPolygon"Restroommen” and “restroomwomen" polygons for the given [FLOOR].
9floor_walkways_[FLOOR]vectorPolygonWalkway polygons for the given [FLOOR].
10floor_fixtures_[FLOOR]vectorPolygonFloor fixture polygons for the given [FLOOR].
11floor_non_public_units_[FLOOR]vectorPolygonNon-public unit polygons for the given [FLOOR].
12floor_open_to_below_units_[FLOOR]vectorPolygon"Open to below" unit polygons (such as open atrium spaces) for the given [FLOOR].
13floor_other_rooms_[FLOOR]vectorPolygon"Other room" polygons for the given [FLOOR].
14floor_rooms_[FLOOR]vectorPolygonRoom polygons for the given [FLOOR].
15floor_water_[FLOOR]vectorPolygonFixtures where category=Water for the given [FLOOR].
16floor_openings_[FLOOR]vectorLineFloor openings for the given [FLOOR].
17floor_amenities_[FLOOR]vector**Floor amenities for the given [FLOOR].
18floor_selected_unit_[FLOOR]vectorPolygonThis is for the style of the actively selected polygon used during wayfinding & room selection for the given [FLOOR].
19floor_shadows_[FLOOR]vectorn/aRaster map tiles that are overlaid on top of existing vector data for the given [FLOOR]
20[FLOOR]Rastern/aRaster map tiles for the given floor [FLOOR].
21building_outlines_[BUILDING]Rastern/aRaster map tiles for the given building [BUILDING].
22floor_labels_[FLOOR]AllLabelLabels for the given [FLOOR].
23floor_icons_[FLOOR]AllIconIcons for the given [FLOOR].
24building_labels_[BUILDING]AllLabelThese are the labels for a given [BUILDING] that are displayed when no active floors in that building are shown.

In the Vector Map Tile Style Spec table, each property is listed with information about whether it's required, the supported layer types, and a description of the property's purpose or effect.

In the Possible Style Layer ID Patterns table, the different layer-IDs that can be styled are listed, along with their associated tile-type, layer-type, and a brief description. Some of these layers apply only to raster or vector map tiles, while others apply to both. The 'tile-type' column indicates the compatibility.

note

Wildcards such as 'FLOOR' and 'BUILDING' can be used for style layer IDs. These wildcards help apply the same style across all matching layers, making the styling process more efficient and consistent.

Remember, order matters! This list is ordered by zIndex, meaning layers with higher order values will appear on top of those with lower values.

These are all the tools you need to style your venue maps. Happy styling!