Missing Icons

We’ve implemented a map server using OSM data and a custom layer which we overlay over the top to display canal maps on our website

It’s all working well but there are a lot of missing icons being reported.

Image "brownfield_11" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.
Image "toilets_11" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.
Image "stile_11" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.

And so on

The icon set we have does not have these in and openstreetmap-carto doesn’t seem to have most of them either (ignoring the _11).

Does anyone know where we can get these missing icons - the OSM data is referring to them so I guess they must exist somewhere.

Thanks in advance.

OpenStreetMap_Carto certainly has all the icons that OpenStreetMap_Carto needs, such as https://github.com/gravitystorm/openstreetmap-carto/blob/master/symbols/amenity/toilets.svg .

Can you provide a bit more information to add to “We’ve implemented a map server using OSM data and a custom layer” - is the map style available anywhere for people to look at?

Sure

https://maps.tty.org.uk/index.html#13/51.752/-1.258

This basically shows the OSM map with the canal map over the top of it.

On the main site the maps are rendered as part of a page.

Openmap data turned into tile sets using openmaptiles (https://github.com/openmaptiles/openmaptiles)
Our tilesets created using tippecanoe 1.35
Sprite set created using spritezero
Tiles served using tileserver.php ( https://github.com/klokantech/tileserver-php/ )
Maps rendered by mapboxGL 1.5
Style is the openstreetmap OSM-Bright which has the icons defined as “icon-image”: “{class}_11”

Moving round the map and zooming in and out comes up with the following list of missing icons

Image “bollard_11”
Image “running_11”
Image “ice_rink_11”
Image “brownfield_11”
Image “stile_11”
Image “motorcycle_parking_11”
Image “lift_gate_11”
Image “escape_game_11”
Image “rugby_union_11”
Image “athletics_11”
Image “yoga_11”
Image “diplomatic_11”
Image “boxing_11”
Image “hackerspace_11”

Picking somewhere that has no canals (so as to rule out your new layer), and looking at https://maps.tty.org.uk/index.html#9.75/54.2693/-0.9062 , it doesn’t look like you are using OSM Carto at all (which for comparison is https://www.openstreetmap.org/#map=10/54.2684/-0.9071 ); it looks more like OpenMapTiles’ OSM Bright: https://openmaptiles.org/styles/#osm-bright .

Looking at the issues list there, your problem seems to be https://github.com/openmaptiles/osm-bright-gl-style/issues/47, as you already appear to have found. For the avoidance of doubt, OpenMapTiles’ “OSM Bright” style is completely unrelated to OSM Carto - it uses a completely different technology (vector vs raster tiles).

I suspect that you’ll need to wait for a reply to your comments at https://github.com/openmaptiles/osm-bright-gl-style/issues, fix the problem yourself, or use a different map style as your “underlay”.

But aren’t the icons defined in the mbtiles set ? brownfield_11 only appeared since I rebuilt the uk mbtiles last month. So that would suggest that brownfield is defined as an icon in the tiles.

So what I’m trying to find out is where I’d find the icons for brownfield etc.? Obviously they’re not in OSM Bright, or OSM Carto… but must exist somewhere I assume. I asked in here because I hoped someone might be able to help.

Icons are not defined in the mbtiles. That’s purely a style function.

Specifically, the “sprite” definition in style file defines where the icons would be found.

"sprite": "https://maps.tty.org.uk/sprite"

Therefore, https://maps.tty.org.uk/sprite.json defines the icons that would be found in https://maps.tty.org.uk/sprite.png
and https://maps.tty.org.uk/sprite@2x.json defines the icons that would be found in https://maps.tty.org.uk/sprite@2x.png

The icons “bollard_11”, “running_11”, and probably the others do not exist in the json files and cannot not be used in the style.

I Assume the style is based on another public style. Please check the sprite definition of the original style.