不同业务场景下通过mars3d实现绕点旋转效果

  • 1.鼠标单击地图某一处就对该点进行绕点旋转效果

相关代码:

1.相关绕点旋转的初始化代码:

复制代码
  const rotatePoint = new mars3d.thing.RotatePoint({
    direction: false, // 方向 true逆时针,false顺时针
    time: 50 // 给定飞行一周所需时间(单位 秒),控制速度
    // autoStopAngle: 360, //到达指定角度后自动停止
  })
  map.addThing(rotatePoint)

2..对map进行单击事件的监听,拿到鼠标单击位置点的坐标后,传入new mars3d.thing.RotatePoint({里面

复制代码
export function startRotate() {
  map.on(mars3d.EventType.click, (e) => {
    const point = mars3d.LngLatPoint.fromCartesian(e.cartesian)
  rotatePoint.start(point) // 可以传指定的中心点坐标
  })
}

3.相机会绕着该单击位置进行旋转展示

  • 2.相机绕当前视角的视域中心点进行旋转

1.拿到视域中线点

2.然后再传入相关绕点旋转的位置

复制代码
export function startRotate() {
  // 获取当前视角
  const point = map.getCenter()
  rotatePoint.start(point) // 可以传指定的中心点坐标
}

3.单击开始旋转按钮,即可按照当前视域中心点进行旋转


相关链接:

功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技

相关推荐
ConardLi4 分钟前
Harness 实践:让 Agent 全自动制作知识讲解视频
前端·人工智能·后端
雪度娃娃5 分钟前
C++异步日志系统
开发语言·c++
xyq202414 分钟前
SVN 提交操作详解
开发语言
Halo_tjn20 分钟前
基于异常处理机制 相关知识点
java·开发语言·算法
费曼学习法22 分钟前
React Hooks 源码级揭秘:为什么必须按顺序调用?
javascript·react.js
努力干饭中22 分钟前
Vibe Coding 第二弹:做一个 Canvas K线图
前端·canvas·vibecoding
沐知全栈开发25 分钟前
WebPages 对象
开发语言
谙弆悕博士27 分钟前
Lua学习笔记
c语言·开发语言·笔记·学习·lua·创业创新·业界资讯
Data_Journal28 分钟前
2026年十大数据集网站
大数据·开发语言·数据库·人工智能·python