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
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
- JavaScript
- iOS
- Android
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-name | Required | Supported-layer-type | Description |
---|---|---|---|
id | yes | Identifier for this style definition. For venues with multiple styles, this identifier should be unique | |
name | no | Common name used to describe this style | |
version | yes | Spec format version. Certain versions of the VMSDK may only support certain versions of this spec format. | |
styles | yes | Container for list of style layer customizations | |
styles[].layer-id | yes | All | The ID of the style layer. See Possible Style Layer ID Patterns section below for acceptable values. |
styles[].hidden | no | All | Specify as true to hide this layer. Default: false. |
styles[].fill-color | no | Polygon | A HEX color to fill the polygon with. Default: NULL. |
styles[].fill-pattern | no | Polygon | This is the name of an image from the style's sprite sheet to pattern fill the polygon with. Default: NULL. |
styles[].outline-color | no | Polygon | This is a HEX color to draw an outline around the polygon with. Default: NULL |
styles[].line-color | no | Line | A HEX color to draw the line with. Default: NULL. |
styles[].icon-name | no | Icon | This is the name of an image from the style's sprite sheet. Default: NULL. |
styles[].font-name | no | Label | This is the name of a font to use for the labels. Default: NULL. |
styles[].font-size | no | Label | The point size of the font. Default: NULL. |
styles[].font-color | no | Label | A HEX color of the font: Default: NULL. |
styles[].font-stroke-color | no | A HEX color for the font outline. Default: NULL. | |
styles[].font-stroke-width | no | This is the width of an outline for the font. Default: NULL. | |
styles[].max-text-width | no | Controls automatic text wrapping within a label. Default: NULL. | |
wayfinding | no | Container for list of wayfinding style customizations. | |
wayfinding.path-stroke-width | no | A decimal value indicating how thick the stroke is for the default wayfinding path. Default: NULL. | |
wayfinding.path-stroke-min-width | no | This 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-width | no | This 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-color | no | A HEX color to draw the wayfinding path. Default: NULL. | |
wayfinding.path-stroke-alpha | no | A decimal value from 0 to 1 to indicate how transparent the default wayfinding path is. Default: NULL. | |
wayfinding.highlighted-path-stroke-width | no | A decimal value indicating how thick the stroke is for the highlighted section of the wayfinding path. Default: NULL. | |
wayfinding.highlighted-path-stroke-color | no | A HEX color to draw a highlighted section of the wayfinding path. Default: NULL. | |
wayfinding.highlighted-path-stroke-alpha | no | A decimal value from 0 to 1 to indicate how transparent the highlighted section of the wayfinding path is. Default: NULL. | |
wayfinding.path-arrow-fill-color | no | This is a HEX color to draw the arrows on the wayfinding path. Default: #4688F1 | |
wayfinding.path-arrow-stroke-color | no | This is a HEX color of the outline around the arrows drawn on the wayfinding path. Default: #FFFFFF | |
wayfinding.path-arrow-size | no | This 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-width | no | This 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-width | no | This 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-color | no | This is a HEX color of the arrows drawn in a highlighted section of the wayfinding path. Default: #4688F1 | |
wayfinding.highlighted-path-arrow-stroke-color | no | This 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-size | no | This 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
Order | Layer-ID | Tile-type | Layer-type | Description |
---|---|---|---|---|
1 | background | All | Polygon | Background color of the entire map that is visible when the base map is hidden. |
2 | venue | vector | Polygon | "venue_outdoors" polygon. |
3 | outdoors | All | n/a | Raster map tiles that are part of the venue outdoor floor. |
4 | building_outlines_[BUILDING] | vector | Polygon | Building-outlines polygon for the given [BUILDING]. |
5 | floor_outlines_[FLOOR] | vector | Polygon | Floor-outlines polygon for the given [FLOOR]. |
6 | floor_elevators_[FLOOR] | vector | Polygon | Elevator polygons for the given [FLOOR]. |
7 | floor_stairwells_[FLOOR] | vector | Polygon | Stairwell polygons for the given [FLOOR]. |
8 | floor_restrooms_[FLOOR] | vector | Polygon | "Restroommen” and “restroomwomen" polygons for the given [FLOOR]. |
9 | floor_walkways_[FLOOR] | vector | Polygon | Walkway polygons for the given [FLOOR]. |
10 | floor_fixtures_[FLOOR] | vector | Polygon | Floor fixture polygons for the given [FLOOR]. |
11 | floor_non_public_units_[FLOOR] | vector | Polygon | Non-public unit polygons for the given [FLOOR]. |
12 | floor_open_to_below_units_[FLOOR] | vector | Polygon | "Open to below" unit polygons (such as open atrium spaces) for the given [FLOOR]. |
13 | floor_other_rooms_[FLOOR] | vector | Polygon | "Other room" polygons for the given [FLOOR]. |
14 | floor_rooms_[FLOOR] | vector | Polygon | Room polygons for the given [FLOOR]. |
15 | floor_water_[FLOOR] | vector | Polygon | Fixtures where category=Water for the given [FLOOR]. |
16 | floor_openings_[FLOOR] | vector | Line | Floor openings for the given [FLOOR]. |
17 | floor_amenities_[FLOOR] | vector | ** | Floor amenities for the given [FLOOR]. |
18 | floor_selected_unit_[FLOOR] | vector | Polygon | This is for the style of the actively selected polygon used during wayfinding & room selection for the given [FLOOR]. |
19 | floor_shadows_[FLOOR] | vector | n/a | Raster map tiles that are overlaid on top of existing vector data for the given [FLOOR] |
20 | [FLOOR] | Raster | n/a | Raster map tiles for the given floor [FLOOR]. |
21 | building_outlines_[BUILDING] | Raster | n/a | Raster map tiles for the given building [BUILDING]. |
22 | floor_labels_[FLOOR] | All | Label | Labels for the given [FLOOR]. |
23 | floor_icons_[FLOOR] | All | Icon | Icons for the given [FLOOR]. |
24 | building_labels_[BUILDING] | All | Label | These are the labels for a given [BUILDING] that are displayed when no active floors in that building are shown. |
The Aegir iOS SDK uses the Style Specification version 1.2. 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-name | Required | Supported-layer-type | Description |
---|---|---|---|
id | yes | Identifier for this style definition. For venues with multiple styles, this identifier should be unique | |
name | no | Common name used to describe this style | |
version | yes | Spec format version. Certain versions of the VMSDK may only support certain versions of this spec format. | |
styles | yes | Container for list of style layer customizations | |
styles[].layer-id | yes | All | The ID of the style layer. See Possible Style Layer ID Patterns section below for acceptable values. |
styles[].hidden | no | All | Specify as true to hide this layer. Default: false. |
styles[].fill-color | no | Polygon | A HEX color to fill the polygon with. Default: NULL. |
styles[].fill-pattern | no | Polygon | This is the name of an image from the style's sprite sheet to pattern fill the polygon with. Default: NULL. |
styles[].outline-color | no | Polygon | This is a HEX color to draw an outline around the polygon with. Default: NULL |
styles[].line-color | no | Line | A HEX color to draw the line with. Default: NULL. |
styles[].icon-name | no | Icon | This is the name of an image from the style's sprite sheet. Default: NULL. |
styles[].font-name | no | Label | This is the name of a font to use for the labels. Default: NULL. |
styles[].font-size | no | Label | The point size of the font. Default: NULL. |
styles[].font-color | no | Label | A HEX color of the font: Default: NULL. |
styles[].font-stroke-color | no | A HEX color for the font outline. Default: NULL. | |
styles[].font-stroke-width | no | This is the width of an outline for the font. Default: NULL. | |
styles[].max-text-width | no | Controls automatic text wrapping within a label. Default: NULL. | |
wayfinding | no | Container for list of wayfinding style customizations. | |
wayfinding.path-stroke-width | no | A decimal value indicating how thick the stroke is for the default wayfinding path. Default: NULL. | |
wayfinding.path-stroke-min-width | no | This 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-width | no | This 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-color | no | A HEX color to draw the wayfinding path. Default: NULL. | |
wayfinding.path-stroke-alpha | no | A decimal value from 0 to 1 to indicate how transparent the default wayfinding path is. Default: NULL. | |
wayfinding.highlighted-path-stroke-width | no | A decimal value indicating how thick the stroke is for the highlighted section of the wayfinding path. Default: NULL. | |
wayfinding.highlighted-path-stroke-color | no | A HEX color to draw a highlighted section of the wayfinding path. Default: NULL. | |
wayfinding.highlighted-path-stroke-alpha | no | A decimal value from 0 to 1 to indicate how transparent the highlighted section of the wayfinding path is. Default: NULL. | |
wayfinding.path-arrow-fill-color | no | This is a HEX color to draw the arrows on the wayfinding path. Default: #4688F1 | |
wayfinding.path-arrow-stroke-color | no | This is a HEX color of the outline around the arrows drawn on the wayfinding path. Default: #FFFFFF | |
wayfinding.path-arrow-size | no | This 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-width | no | This 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-width | no | This 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-color | no | This is a HEX color of the arrows drawn in a highlighted section of the wayfinding path. Default: #4688F1 | |
wayfinding.highlighted-path-arrow-stroke-color | no | This 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-size | no | This 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
Order | Layer-ID | Tile-type | Layer-type | Description |
---|---|---|---|---|
1 | background | All | Polygon | Background color of the entire map that is visible when the base map is hidden. |
2 | venue | vector | Polygon | "venue_outdoors" polygon. |
3 | outdoors | All | n/a | Raster map tiles that are part of the venue outdoor floor. |
4 | building_outlines_[BUILDING] | vector | Polygon | Building-outlines polygon for the given [BUILDING]. |
5 | floor_outlines_[FLOOR] | vector | Polygon | Floor-outlines polygon for the given [FLOOR]. |
6 | floor_elevators_[FLOOR] | vector | Polygon | Elevator polygons for the given [FLOOR]. |
7 | floor_stairwells_[FLOOR] | vector | Polygon | Stairwell polygons for the given [FLOOR]. |
8 | floor_restrooms_[FLOOR] | vector | Polygon | "Restroommen” and “restroomwomen" polygons for the given [FLOOR]. |
9 | floor_walkways_[FLOOR] | vector | Polygon | Walkway polygons for the given [FLOOR]. |
10 | floor_fixtures_[FLOOR] | vector | Polygon | Floor fixture polygons for the given [FLOOR]. |
11 | floor_non_public_units_[FLOOR] | vector | Polygon | Non-public unit polygons for the given [FLOOR]. |
12 | floor_open_to_below_units_[FLOOR] | vector | Polygon | "Open to below" unit polygons (such as open atrium spaces) for the given [FLOOR]. |
13 | floor_other_rooms_[FLOOR] | vector | Polygon | "Other room" polygons for the given [FLOOR]. |
14 | floor_rooms_[FLOOR] | vector | Polygon | Room polygons for the given [FLOOR]. |
15 | floor_water_[FLOOR] | vector | Polygon | Fixtures where category=Water for the given [FLOOR]. |
16 | floor_openings_[FLOOR] | vector | Line | Floor openings for the given [FLOOR]. |
17 | floor_amenities_[FLOOR] | vector | ** | Floor amenities for the given [FLOOR]. |
18 | floor_selected_unit_[FLOOR] | vector | Polygon | This is for the style of the actively selected polygon used during wayfinding & room selection for the given [FLOOR]. |
19 | floor_shadows_[FLOOR] DEPRECATED | vector | n/a | Raster map tiles that are overlaid on top of existing vector data for the given [FLOOR] |
20 | [FLOOR] | Raster | n/a | Raster map tiles for the given floor [FLOOR]. |
21 | building_outlines_[BUILDING] | Raster | n/a | Raster map tiles for the given building [BUILDING]. |
22 | floor_labels_[FLOOR] | All | Label | Labels for the given [FLOOR]. |
23 | floor_icons_[FLOOR] | All | Icon | Icons for the given [FLOOR]. |
24 | building_labels_[BUILDING] | All | Label | These are the labels for a given [BUILDING] that are displayed when no active floors in that building are shown. |
25 | floor_art_[FLOOR] | vector | n/a | Raster map tiles that are overlaid on top of existing vector data for the given [FLOOR] |
The Aegir Android SDK uses the Style Specification version 1.2. 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-name | Required | Supported-layer-type | Description |
---|---|---|---|
id | yes | Identifier for this style definition. For venues with multiple styles, this identifier should be unique | |
name | no | Common name used to describe this style | |
version | yes | Spec format version. Certain versions of the VMSDK may only support certain versions of this spec format. | |
styles | yes | Container for list of style layer customizations | |
styles[].layer-id | yes | All | The ID of the style layer. See Possible Style Layer ID Patterns section below for acceptable values. |
styles[].hidden | no | All | Specify as true to hide this layer. Default: false. |
styles[].fill-color | no | Polygon | A HEX color to fill the polygon with. Default: NULL. |
styles[].fill-pattern | no | Polygon | This is the name of an image from the style's sprite sheet to pattern fill the polygon with. Default: NULL. |
styles[].outline-color | no | Polygon | This is a HEX color to draw an outline around the polygon with. Default: NULL |
styles[].line-color | no | Line | A HEX color to draw the line with. Default: NULL. |
styles[].icon-name | no | Icon | This is the name of an image from the style's sprite sheet. Default: NULL. |
styles[].font-name | no | Label | This is the name of a font to use for the labels. Default: NULL. |
styles[].font-size | no | Label | The point size of the font. Default: NULL. |
styles[].font-color | no | Label | A HEX color of the font: Default: NULL. |
styles[].font-stroke-color | no | A HEX color for the font outline. Default: NULL. | |
styles[].font-stroke-width | no | This is the width of an outline for the font. Default: NULL. | |
styles[].max-text-width | no | Controls automatic text wrapping within a label. Default: NULL. | |
wayfinding | no | Container for list of wayfinding style customizations. | |
wayfinding.path-stroke-width | no | A decimal value indicating how thick the stroke is for the default wayfinding path. Default: NULL. | |
wayfinding.path-stroke-min-width | no | This 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-width | no | This 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-color | no | A HEX color to draw the wayfinding path. Default: NULL. | |
wayfinding.path-stroke-alpha | no | A decimal value from 0 to 1 to indicate how transparent the default wayfinding path is. Default: NULL. | |
wayfinding.highlighted-path-stroke-width | no | A decimal value indicating how thick the stroke is for the highlighted section of the wayfinding path. Default: NULL. | |
wayfinding.highlighted-path-stroke-color | no | A HEX color to draw a highlighted section of the wayfinding path. Default: NULL. | |
wayfinding.highlighted-path-stroke-alpha | no | A decimal value from 0 to 1 to indicate how transparent the highlighted section of the wayfinding path is. Default: NULL. | |
wayfinding.path-arrow-fill-color | no | This is a HEX color to draw the arrows on the wayfinding path. Default: #4688F1 | |
wayfinding.path-arrow-stroke-color | no | This is a HEX color of the outline around the arrows drawn on the wayfinding path. Default: #FFFFFF | |
wayfinding.path-arrow-size | no | This 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-width | no | This 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-width | no | This 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-color | no | This is a HEX color of the arrows drawn in a highlighted section of the wayfinding path. Default: #4688F1 | |
wayfinding.highlighted-path-arrow-stroke-color | no | This 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-size | no | This 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
Order | Layer-ID | Tile-type | Layer-type | Description |
---|---|---|---|---|
1 | background | All | Polygon | Background color of the entire map that is visible when the base map is hidden. |
2 | venue | vector | Polygon | "venue_outdoors" polygon. |
3 | outdoors | All | n/a | Raster map tiles that are part of the venue outdoor floor. |
4 | building_outlines_[BUILDING] | vector | Polygon | Building-outlines polygon for the given [BUILDING]. |
5 | floor_outlines_[FLOOR] | vector | Polygon | Floor-outlines polygon for the given [FLOOR]. |
6 | floor_elevators_[FLOOR] | vector | Polygon | Elevator polygons for the given [FLOOR]. |
7 | floor_stairwells_[FLOOR] | vector | Polygon | Stairwell polygons for the given [FLOOR]. |
8 | floor_restrooms_[FLOOR] | vector | Polygon | "Restroommen” and “restroomwomen" polygons for the given [FLOOR]. |
9 | floor_walkways_[FLOOR] | vector | Polygon | Walkway polygons for the given [FLOOR]. |
10 | floor_fixtures_[FLOOR] | vector | Polygon | Floor fixture polygons for the given [FLOOR]. |
11 | floor_non_public_units_[FLOOR] | vector | Polygon | Non-public unit polygons for the given [FLOOR]. |
12 | floor_open_to_below_units_[FLOOR] | vector | Polygon | "Open to below" unit polygons (such as open atrium spaces) for the given [FLOOR]. |
13 | floor_other_rooms_[FLOOR] | vector | Polygon | "Other room" polygons for the given [FLOOR]. |
14 | floor_rooms_[FLOOR] | vector | Polygon | Room polygons for the given [FLOOR]. |
15 | floor_water_[FLOOR] | vector | Polygon | Fixtures where category=Water for the given [FLOOR]. |
16 | floor_openings_[FLOOR] | vector | Line | Floor openings for the given [FLOOR]. |
17 | floor_amenities_[FLOOR] | vector | ** | Floor amenities for the given [FLOOR]. |
18 | floor_selected_unit_[FLOOR] | vector | Polygon | This is for the style of the actively selected polygon used during wayfinding & room selection for the given [FLOOR]. |
19 | floor_shadows_[FLOOR] DEPRECATED | vector | n/a | Raster map tiles that are overlaid on top of existing vector data for the given [FLOOR] |
20 | [FLOOR] | Raster | n/a | Raster map tiles for the given floor [FLOOR]. |
21 | building_outlines_[BUILDING] | Raster | n/a | Raster map tiles for the given building [BUILDING]. |
22 | floor_labels_[FLOOR] | All | Label | Labels for the given [FLOOR]. |
23 | floor_icons_[FLOOR] | All | Icon | Icons for the given [FLOOR]. |
24 | building_labels_[BUILDING] | All | Label | These are the labels for a given [BUILDING] that are displayed when no active floors in that building are shown. |
25 | floor_art_[FLOOR] | vector | n/a | Raster map tiles that are overlaid on top of existing vector data for the given [FLOOR] |
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.
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!