cesium 实时目标跟踪(连线效果)

在这里插入图片描述

1、添加两个运动的实体(参数property 在cesium entity与时间轴关联(添加运动轨迹))中有讲解

let entity = viewer.entities.add({
        availability : new Cesium.TimeIntervalCollection([new Cesium.TimeInterval({
          start: Cesium.JulianDate.fromDate(new Date("2023-05-21 08:00:00")),
          stop: Cesium.JulianDate.fromDate(new Date("2023-05-21 12:00:00"))
        })]),
        position: property,
        orientation : new Cesium.VelocityOrientationProperty(property),
        model: {
            uri: "/static/Cesium_Air.glb",
            minimumPixelSize: 128,
            maximumScale: 20000,
        },
      })
 let entity1 = viewer.entities.add({
   availability : new Cesium.TimeIntervalCollection([new Cesium.TimeInterval({
     start: Cesium.JulianDate.fromDate(new Date("2023-05-21 08:00:00")),
     stop: Cesium.JulianDate.fromDate(new Date("2023-05-21 12:00:00"))
   })]),
   position: property1,
   orientation : new Cesium.VelocityOrientationProperty(property1),
   model: {
       uri: "/static/Cesium_Air.glb",
       color: Cesium.Color.RED,
       minimumPixelSize: 128,
       maximumScale: 20000,
   },
 })

2、添加两个实体之间连线(利用polyline方法)

cesium中提供了一个CallbackProperty方法可事实刷新数据

在这里插入图片描述

viewer.entities.add({
        polyline: {
          positions: new Cesium.CallbackProperty(function (time, result) {
              var sourpos = entity.position.getValue(time);
              var cartographic1 = Cesium.Ellipsoid.WGS84.cartesianToCartographic(sourpos);
              var lon1 = Cesium.Math.toDegrees(cartographic1.longitude);
              var lat1 = Cesium.Math.toDegrees(cartographic1.latitude);
              var height1 = cartographic1.height;

              var tarpos = entity1.position.getValue(time);
              var cartographic = Cesium.Ellipsoid.WGS84.cartesianToCartographic(tarpos);
              var lon2 = Cesium.Math.toDegrees(cartographic.longitude);
              var lat2 = Cesium.Math.toDegrees(cartographic.latitude);
              var height2 = cartographic.height;
              return  Cesium.Cartesian3.fromDegreesArrayHeights([lon1,lat1,height1,lon2, lat2, height2])
            }, false),
          width: 5,
          material: Cesium.Color.RED,
        },
      })
  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: Cesium是一个面向三维地理空间数据的开源JavaScript库。在Cesium中,动态点可以通过实例化一个CzmlDataSource对象来实现。CzmlDataSource可以加载CZML(<a href="https://github.com/AnalyticalGraphicsInc/czml-writer/wiki/CZML-Guide">Cesium Language</a>)格式的数据,其中包括点的位置、颜色、大小等属性信息。 要实现点的连线,可以使用PolylineCollection对象。PolylineCollectionCesium中用于绘制线的集合对象,可以通过添加LineEntities来实现多个连续线段的绘制。每个LineEntity都有一个positions属性,用于指定线段的坐标点位置。 在Cesium中,要实现遮挡效果,可以使用地形遮罩。地形遮罩可以通过TerrainProvider对象进行配置,当地形遮罩启用时,模型和实体将不会被地形遮挡。另外,Cesium还提供了一系列的视点控制和相机设置方法,可以通过调整视角来选择显示隐藏的数据。 综上所述,要实现Cesium中的动态点连线和遮挡效果,可以通过使用CzmlDataSource加载动态点数据,并通过PolylineCollection绘制点之间的连线。然后,可以使用地形遮罩来控制遮挡效果。最后,通过适当的视点控制和相机设置,可以选择性地显示或隐藏数据,以实现遮挡效果的展示。 ### 回答2: Cesium是一个用于构建基于Web的地球空间应用程序的开源JavaScript库。它提供了强大的功能,可以在浏览器中展示实时动态的点和连线,并处理应用中的遮挡情况。以下是对于cesium 动态点 连线 遮挡的回答: Cesium中的动态点是指在地球表面上具有移动效果的点。我们可以通过设置点的位置和速度参数来实现点的动态效果。当点在不同的位置之间移动时,Cesium会根据点的当前位置和速度计算出点的下一个位置,并将其绘制在地球上,从而呈现出点的运动轨迹。这样可以实现在地球上展示实时动态点的效果。 在Cesium中,我们可以使用连接线来连接不同的动态点。连接线可以通过定义点之间的关系来显示它们之间的联系。Cesium提供了丰富的线段绘制功能,可以自定义线段的样式、颜色和宽度等属性。这样可以将多个动态点连成一条线,从而在地球上绘制出实时动态的连线效果。 遮挡是指在地球表面上的点或线被其他物体或地形遮挡而无法展示出来的情况。Cesium提供了遮挡检测功能,可以根据相机的视角自动处理遮挡情况。当某个点或线被其他物体或地形遮挡时,Cesium会自动调整展示效果,保证可见的点和线能够正常显示在地球上。这样可以解决遮挡问题,确保动态点和连线在地球上的展示效果准确可见。 总之,Cesium通过其强大的功能,包括动态点、连线和遮挡处理,可以实现在浏览器中展示实时动态的点和连线,为用户提供更加直观和交互性的地球空间应用程序体验。 ### 回答3: Cesium 是一种用于构建地球三维可视化应用程序的开源库。它使用WebGL技术,可以在网页浏览器中实现高性能的地理空间数据可视化。在Cesium中,动态点是指根据一定的条件或规则在地球表面上不断移动的点。连线是通过将两个或多个动态点之间的路径绘制出来,以显示它们之间的关系。而遮挡则指当一个动态点位于另一个点的后方时,后面的点会被前面的点所遮挡。 要实现cesium动态点的连线和遮挡效果,我们可以按照以下步骤: 首先,我们需要在Cesium中创建和设置动态点的位置、外观和移动规则。可以使用Cesium中提供的Entity API来实现这一点。我们可以通过设置位置坐标、添加颜色和形状等属性来自定义动态点的外观。 接下来,我们可以通过在Cesium中使用Polyline或PolylineVolume等几何图形类型来创建动态点之间的连线效果。可以根据需要设置线条的颜色、宽度和透明度等属性,以创建符合项目要求的连线效果。 最后,为了实现动态点的遮挡效果,我们可以使用Cesium的样式和相机设置。可以通过设置动态点的高度、大小和透明度等属性,以及调整相机的位置和角度等参数,来实现点与点之间的遮挡效果。 综上所述,通过在Cesium中正确设置动态点的位置、连线和遮挡属性,我们可以在地球三维可视化应用程序中实现cesium动态点的连线和遮挡效果。这将使得我们能够更加生动地展示地理数据,并更好地理解点与点之间的关系。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GIS-CL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值