问题描述
将MapBox GL JS 1.12.0与GeoJSON一起使用,我要添加具有基于GeoJSON中“名称”值的数字标签的圆。
map.addLayer({
'id': 'marker','type': 'circle','source': 'geojson','minzoom': 0,'maxzoom': 24,'paint': {
'circle-radius': 10,'circle-color': '#FFFFFF','circle-stroke-color': '#000000','circle-stroke-width': 2,'circle-opacity': 1,},'filter': ['==','$type','Point']
});
map.addLayer({
'id': 'marker-label','type': 'symbol','layout': {
'text-field': [ 'format',['get','name'],{ 'font-scale': 0.8,'text-translate': [0,-20] } ],'Point']
});
放大后,它们看起来正确:
缩小时,圆圈开始重叠,但看起来仍然正确:
但是随后,“ 2”逐渐淡出,并且“ 1”在#2的圆圈中显示(即使圆圈具有白色填充并且不透明度为1),并不清楚是哪个#1和哪个# 2。
我可以禁用这种自动褪色/透明度吗?
我可以以某种方式将标签绑定到该特定圈子吗?
解决方法
我可以禁用这种自动褪色/透明度吗?
您可以使用"text-allow-overlap": true
禁用它。您可能不喜欢结果。
我可以以某种方式将标签绑定到该特定圈子吗?
否。