通过"命中容差",我的意思是当鼠标指针在特征渲染位置的某个像素容差范围内时,用户可以选择/交互一个特征。OpenLayers在这里很好地展示了这个概念。
我在 Mapbox GL JS 文档中找不到任何与此功能匹配的内容。有什么好的解决方法吗?
据我所知,没有 - 或者至少,用户无法配置任何内容。
通常的解决方法是这样的:
- 创建另一个具有非常低的非零不透明度的图层,该图层在物理上大于可见对象。例如,具有较大
line-width
的线或具有较大circle-radius
的圆。 - 将此图层放在可见图层下方。
- 检查可见层和几乎不可见层上的命中。
您可以在此处看到正在实现的示例。
">
功能"可以是mapbox中的很多东西。
如果您的上下文是 MapBox 标记,则在标记元素上增加 css 填充属性相当容易。这将达到您所寻求的效果。 例如
marker.getElement().style.padding = '10px';
好吧,至少我是这样解决的;)