不同业务场景下通过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三维可视化平台 | 火星科技

相关推荐
小江的记录本2 分钟前
【注解】常见 Java 注解系统性知识体系总结(附《全方位对比表》+ 思维导图)
java·前端·spring boot·后端·spring·mybatis·web
web守墓人4 分钟前
【前端】记一次将ruoyi vue3 element-plus迁移到arco design vue的经历
前端·vue.js·arco design
伊步沁心6 分钟前
Webpack & Vite 深度解析
前端
libokaifa6 分钟前
OpenSpec + TDD:让 AI 写代码,用测试兜底
前端·ai编程
用户15815963743708 分钟前
搭 AI Agent 团队踩了 18 个坑,总结出这 5 个关键步骤
前端
Kellen8 分钟前
Fumadocs 基础概念:从内容源到页面渲染
前端
Lee川9 分钟前
前端进阶之路:从性能优化到响应式布局的实战指南(Tailwindcss)
前端·面试
努力干饭中10 分钟前
Git Rebase 最佳实践
前端·git
前端小阳11 分钟前
JavaScript原型链
javascript
Ferries12 分钟前
《从前端到 Agent》系列|02:应用层-提示词工程 (Prompt Engineering)
前端·人工智能·深度学习