Leafletjs的标准图层的marker是可以通过组件 leaflet-rotatedmarker
进行图标旋转的,在marker上添加两个属性:
rotationAngle
:旋转角度,以度为单位,顺时针旋转。rotationOrigin
:旋转中心,默认值为 ‘bottom center’,对应于标记图标的“尖端”。
但是leaflet-canvasmarker组件的图层使用leaflet-rotatedmarker的旋转方式失效,而在leaflet-canvasmarker官网提供了一个旋转的方法: Leaflet.Icon扩展参数 rotate
参考网址:https://zhuanlan.zhihu.com/p/593744067
-
旋转
-
使用
rotate(angle)
方法可以旋转画布,但默认的旋转原点是画布的左上角,也就是(0, 0)
坐标。我计算旋转角度通常是用
角度 * Math.PI / 180
的方式表示。
关键代码:rotate: Math.PI / 180 * v.direction,
// 图标
const icon = L.icon({
iconUrl,
iconSize: [24, 24],
iconAnchor: [12, 12],
rotate: Math.PI / 180 * v.direction,
});
// 加到marker上
const m = L.marker([v.lat, v.lng],{ icon, data: v});
来源链接:https://www.cnblogs.com/zibocoder/p/18848768
© 版权声明
本站所有资源来自于网络,仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您(转载者)自己承担!
如有侵犯您的版权,请及时联系3500663466#qq.com(#换@),我们将第一时间删除本站数据。
如有侵犯您的版权,请及时联系3500663466#qq.com(#换@),我们将第一时间删除本站数据。
THE END
暂无评论内容