Cesium初探-CallbackProperty

在Cesium中,CallbackProperty 是一种非常有用的特性,可以用来动态更新实体的属性,如位置、方向、高度等。CallbackProperty 允许你在指定的时间点计算属性值,这样就可以实时地改变实体的状态而不需要频繁地重新设置整个属性。

下面是一个使用 CallbackProperty 来创建动态更新位置的实体的例子:

javascript 复制代码
onMounted(()=>{
  Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI1NmQ2YjQwMC0wOTAzLTQxYWItODliMC1iYTFjMzdiM2U4YzEiLCJpZCI6MjMyMjU4LCJpYXQiOjE3MjI1ODkzNzV9._ql6Oa6Tls-APS5Ag0692Co91xG_QqcEmd4sAo8azJ8'
  viewer = new Cesium.Viewer('container',{
    // terrainProvider : Cesium.createWorldTerrain(),
    imageryProvider : new Cesium.UrlTemplateImageryProvider({
        url : 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}'
    })
  })

  // 创建一个CallbackProperty来定义位置
  var positionCallbackProperty = new Cesium.CallbackProperty(()=>{
    var lat = 117.0 + Math.sin(Cesium.JulianDate.now().secondsOfDay) * 10.0
    var lon = 40.0 + Math.cos(Cesium.JulianDate.now().secondsOfDay) * 5.0
    return Cesium.Cartesian3.fromDegrees(lat, lon)
  },false)

  // 创建实体并使用CallbackProperty
  var dynamicEntity = viewer.entities.add({
      name : 'Dynamic Entity',
      position : positionCallbackProperty,
      point : {
          pixelSize : 10,
          color : Cesium.Color.BLUE
      }
  });

})
相关推荐
前端若水几秒前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
Bigger10 分钟前
mini-cc:一个轻量级 AI 编程助手的诞生
前端·ai编程·claude
无风听海10 分钟前
C# 隐式转换深度解析
java·开发语言·c#
涵涵(互关)24 分钟前
Naive-ui树型选择器只显示根节点
前端·ui·vue
BY组态33 分钟前
Ricon组态系统最佳实践:从零开始构建物联网监控平台
前端·物联网·iot·web组态·组态
BY组态37 分钟前
Ricon组态系统vs传统组态软件:为什么选择新一代Web组态平台
前端·物联网·iot·web组态·组态
SoaringHeart39 分钟前
Flutter进阶:OverlayEntry 插入图层管理器 NOverlayZIndexManager
前端·flutter
放下华子我只抽RuiKe51 小时前
React 从入门到生产(四):自定义 Hook
前端·javascript·人工智能·深度学习·react.js·自然语言处理·前端框架
一只大袋鼠1 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
LuminousCPP1 小时前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习