如何解决如何使用mapbox-gl为特征点设置单独的布局属性? 更新
我有一组特征点,并且不想单独更新每个特征点上的某些布局属性。我该怎么做?
这是我到目前为止所拥有的。
const features = getVisibleFeatures();
// This updates all. Not what I wan't. Each feature should have different offset.
map.setLayoutProperty("ports","text-offset",[5,5]);
每个功能都应基于各自的值拥有自己的text-offset
。我该如何实现?
更新
@ steve-bennett在下面的评论中提供了一些很好的建议,但不幸的是,它们不适用于布局属性和文本偏移值。
解决方案可以与此配合使用很重要。
解决方法
经过大量搜索,反复试验,我发现我可以这样做:
map.setLayoutProperty("ports","text-offset",{
property: "id",type: "categorical",stops: [
["0",[2,1]],["1",0]],["2",[0,2]],],default: [0,0],});
"0"
,"1"
和"2"
与properties.id
字段匹配。所以我可以做这样的事情:
map.setLayoutProperty("layout-id",stops: nodes.map((node) => {
const x = node.vx;
const y = node.vy;
return [node.id,[x,y]];
}),});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。