0
点赞
收藏
分享

微信扫一扫

mars3d开发——时序位置坐标

m逆光生长 2022-04-02 阅读 45
3darcgiscss

实现时序位置坐标

一、

1、现有数据如下

 const arrData = [
      {
        title: "中国安徽广播电视台",
        description: "安徽广播电视台(AHTV)是集广播、电视、报纸、</br>网络、新媒体等多种业务为一体的省级广播电视综合传</br>媒机构。",
        center: { lat: 31.817346, lng: 117.216403, alt: 342, heading: 168, pitch: -13, duration: 2 },
        position: [117.219971, 31.808482, 264.9],
        startTime: "2017/08/25 08:00:04",
        endTime: "2017/08/25 08:00:07",
      },
      {
        title: "合肥市政务中心",
        description: "合肥市人民政府政务服务中心为市委、市政府派出机构,</br>服务中心成立党工委和管委会,内设综合处、</br>督查处、审批项目协调处",
        center: { lat: 31.818069, lng: 117.221763, alt: 173, heading: 355, pitch: -5, duration: 3 },
        position: [117.222139, 31.822782, 166.6],
        startTime: "2017/08/25 08:00:09",
        endTime: "2017/08/25 08:00:12",
      },
      {
        title: "合肥市文化旅游局",
        description: "合肥市文化和旅游局和市文化和旅游局是市政府工作部门,</br>为正处级,加挂市广播电视新闻出版局牌子",
        center: { lat: 31.813929, lng: 117.217225, alt: 142, heading: 330, pitch: -14, duration: 3 },
        position: [117.215827, 31.818229, 84.6],
        startTime: "2017/08/25 08:00:14",
        endTime: "2017/08/25 08:00:17",
      },
      {
        title: "合肥大剧院",
        description: "合肥大剧院又名天鹅湖大剧院,主要由歌剧厅、</br>音乐厅、多功能厅等部分组成。",
        center: { lat: 31.815301, lng: 117.218273, alt: 107, heading: 11, pitch: -13, duration: 3 },
        position: [117.218782, 31.8176, 64.9],
        startTime: "2017/08/25 08:00:19",
        endTime: "2017/08/25 08:00:22",
      },
    ];

要想实现坐标位置按照时间顺序展示出,这个地方就需要控制展示的开始时间和结束时间,以及视角的切换

坐标位置显示部分主要代码

const property = new Cesium.SampledPositionProperty()
    const startTime = Cesium.JulianDate.fromDate(new Date(arrData[i].startTime))
    const endTime = Cesium.JulianDate.fromDate(new Date(arrData[i].endTime))

    property.addSample(startTime, Cesium.Cartesian3.fromDegrees(...arrData[i].position)) // 此刻显示
    property.addSample(endTime, Cesium.Cartesian3.fromDegrees(...arrData[i].position)) // 此刻不显示

视角控制主要代码
centerArr是视角center集合,通过调用 map.setCameraViewList()方法可以自动控制相机视角的切换。

 map.setCameraViewList(centerArr) // 视角
举报

相关推荐

0 条评论