leaflet-canvasmarker添加的marker旋转问题

Leafletjs的标准图层的marker是可以通过组件 leaflet-rotatedmarker进行图标旋转的,在marker上添加两个属性:

  • rotationAngle:旋转角度,以度为单位,顺时针旋转。
  • rotationOrigin:旋转中心,默认值为 'bottom center',对应于标记图标的"尖端"。

但是leaflet-canvasmarker组件的图层使用leaflet-rotatedmarker的旋转方式失效,而在leaflet-canvasmarker官网提供了一个旋转的方法: Leaflet.Icon扩展参数 rotate

用法启发:zhuanlan.zhihu.com/p/593744067

  • 旋转

  • 使用 rotate(angle) 方法可以旋转画布,但默认的旋转原点是画布的左上角,也就是 (0, 0) 坐标。

    我计算旋转角度通常是用 角度 * Math.PI / 180 的方式表示。

关键代码:rotate: Math.PI / 180 * v.direction,

js 复制代码
// 图标
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});
相关推荐
PBitW13 分钟前
GPT训练我的第二天,我表示不过如此!!!😕😕😕
前端·javascript·面试
用户990450177800925 分钟前
学习了AI修图,我把自己闲鱼出租房照片整成airbnb风格了
前端
kyriewen1 小时前
白宫直接给 OpenAI 下了限制令,GPT-5.6 不能随便放出来了
前端·javascript·面试
PedroQue992 小时前
Vite插件v0.2.6:架构优化与自动化升级
前端·vite
threerocks4 小时前
什么?我连 A2A、MCP 都没学会,现在又来了 AG-UI、A2UI.
前端·aigc·ai编程
牛奶4 小时前
如何自己写一个浏览器插件?
前端·chrome·浏览器
亿元程序员5 小时前
为什么Cocos都4.0了还有人用2.x?
前端
MomentYY5 小时前
AI 到底是“懂”,还是在“猜”?
前端·人工智能·ai编程
鹏毓网络科技5 小时前
Cursor Rules 文件配置实战:3 个隐藏参数让我每月少写 40% 样板代码
前端·github
没烦恼3015 小时前
无痕模式下 HTTP\-First 拦截引发的“页面刷新”误判
前端