我正在使用Mapbox GL JS。有什么方法可以设置基础图层的样式,使其看起来像Mapbox Light示例,但仅显示UK?

我以为我会使用Mapbox Studio构建自己的基本图层,但是在Studio中看不到按国家/地区进行过滤的任何方式。

如果这不可能,我有什么办法可以只在英国显示标签,而将其他国家显示为实心多边形? (根据this unanswered question。)

最佳答案

不幸的是,在为图层选择数据源时,无法按特定的地理位置进行过滤。如果您正在使用Mapbox的图块,则它们将始终覆盖整个星球。

使用map.setMaxBounds方法(https://www.mapbox.com/mapbox-gl-js/api/#Map#setMaxBounds),可以将 map 限制为某个(矩形)范围。由于您希望将 View 限制在英国,因此这可能会很好地工作,但是可能不适合您,具体取决于您希望将 View 限制为英国的几何形状。

作为解决方法,您可以创建一个数据集并添加一个覆盖整个星球的多边形,但要在 map 上显示的范围除外。然后以您的样式将此数据集添加为最顶层,并使用 map 中的空白区域进行样式设置。

关于Mapbox:在基础 map 上仅显示一个国家/地区?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42583390/

10-13 00:29