数字孪生-DTS-孪创城市-湖区分布

前言

各位小伙伴们,大家好,今天蘑菇头带来的是世界湖区功能的一个分享,主要利用的是图片贴花的技术,将我们的图片与三维场景进行一个贴合的效果,可以较为宏观的对我们的场景进行一个分析,快来一起看看吧。

思路

首先可以看到,同样需要将我们的样式进行调整,所以直接复用我们上一段代码。

dart 复制代码
 await fdapi.camera.set(525323.14875, 3435349.377813, 273227.06, -85.987404, -95.227394, 2)
 await fdapi.weather.setDarkMode(true)
 await fdapi.infoTree.hide(digitalTwinStore.digitalTwin['苏州地形影像_Water'])

通过api文档可以发现,图片贴花比较简单,只需要调用Decal类的add方法,通过调节位置,缩放,旋转参数就能达到我们想要的效果。

但是,可以通过代码调节起来会很麻烦,所以我们直接写了一个组件来帮助大家调节。贴花组件_免费高速下载|百度网盘-分享无限制

需要将lib下的两个配置文件(ac.min/ac.conf)进行替换为cloud里面sdk下的配置文件,打开是这个样子。

首先,我们先点击获取位置,然后在合适的位置点击鼠标左键即可看见坐标上去了,然后填写贴花路径,这个路径是我们cloud资源路径对应下的贴花路径,直接点击复制粘贴过去即可,然后就可以看见贴花上去了。

但是可能会被拉升导致变形,没关系,我们可以通过调节位置,缩放等操作就可以调整到我们想要的位置,然后点击获取贴花参数,复制到我们的代码中即可快速完成调节。

所以我们完整的代码是这样。

dart 复制代码
import { useDigitalTwinStore } from '@/stores/digitalTwin'
const digitalTwinStore = useDigitalTwinStore()

export const initLake = async () => {
  await fdapi.camera.set(525323.14875, 3435349.377813, 273227.06, -85.987404, -95.227394, 2)
  await fdapi.weather.setDarkMode(true)
  await fdapi.infoTree.hide(digitalTwinStore.digitalTwin['苏州地形影像_Water'])

  const decal = {
    id: 'lake',
    groupId: '',
    userData: '',
    texturePath: '@path:世界湖区.png',
    order: 1,
    decalBlendMode: 0,
    location: [524000, 3462000, 127],
    rotation: [-90, 0, 0],
    scale: [270000, 270000, 270000]
  }
  await fdapi.decal.add(decal)
}
export const exitLake = async () => {
  await fdapi.weather.setDarkMode(false)
  await fdapi.infoTree.show(digitalTwinStore.digitalTwin['苏州地形影像_Water'])
  await fdapi.decal.delete('lake')
}

涉及的飞渡api

  • 添加贴花-fdapi.decal.add('lake')

  • 删除贴花-fdapi.decal.delete('lake')

相关推荐
万少20 小时前
我是如何使用 Trae IDE 完成《流碧卡片》项目的完整记录
前端·后端·ai编程
9***Y4820 小时前
前端微服务
前端·微服务·架构
ByteCraze20 小时前
我整理的大文件上传方案设计
前端·javascript
前端小白۞20 小时前
vue2 md文件预览和下载
前端·javascript·vue.js
十里-20 小时前
为什么创建1x1的gif图片,和png 或者jpg图片有什么区别
前端
u***u68520 小时前
Vue云原生
前端·vue.js·云原生
OpenTiny社区21 小时前
TinyEngine 低代码实时协作揭秘:原理 +实操,看完直接用!
前端·vue.js·低代码
5***790021 小时前
Vue项目性能优化
前端·javascript·vue.js
天若有情6731 天前
【c++】手撸C++ Promise:从零实现通用异步回调组件,支持链式调用+异常安全
开发语言·前端·javascript·c++·promise