Maki 图标未全部显示

Maki icons not all displaying

我正在尝试构建一个允许用户为其 geojson 点选择图标的地图。我只想使用默认地图样式(街道|户外|浅色|深色|卫星)和 Maki 图标,但是,并非所有图标都显示在所有样式上。

例如'bicycle'和'cafe'显示在所有地图样式上,'circle'只显示在卫星上,而'marker'不显示在任何一个上。

在我为另一个目的开发的样式上,所有标记都显示正常,即使我知道我没有对样式做任何特殊处理'add'。

所以,我的代码没有问题,我的问题是关于默认样式上 maki 图标的可用性。本来以为所有款式都有,但好像没有。

我如何判断哪些图标适用于所有默认样式(缺少试验和错误)? 有什么方法可以 'enable' 一个样式上的所有图标吗?

否则,如果我必须制作自己的基本样式版本,我想我可以,但是我如何确保所有图标都加载到样式中?

标准 Mapbox 样式经过相当优化,不包含显示它们不需要的任何内容。因此,未包含在样式本身中的图标。

当您创建新样式时,我认为 Mapbox 默认包含整个 Maki 集。

如果您可以直接修改样式文件 (JSON),您可以尝试更改此行(对于 Mapbox Streets 样式):

"sprite": "mapbox://sprites/mapbox/streets-v9",

与您的一种自定义样式中的等效项,例如:

sprite": "mapbox://sprites/woowoowoo/htd32t6hd236t",

但如果 Mapbox Streets 中的图标不符合您的风格,则可能会出现问题。

简而言之,我认为没有简单的方法可以添加 "all the icons"。每种样式都有自己的一组图标。

更好的方法可能是在 运行 时使用 addImage/loadImage 加载您想要的自定义图标。参见 this example