cesium绘制折线_与Cesium地形的折线交叉

在Cesium中,作者试图找出从空中一点以特定角度射向地球表面的折线与地形相交的精确位置,以便在遇到如山脉等障碍时停止绘制。尝试使用IntersectionTests的grazingAltitudeLocation和rayEllipsoid方法,但未得到预期结果。代码示例显示grazingAltitudeLocation返回起点,rayEllipsoid返回undefined。问题在于寻求正确的检测折线与地形交点的方法。
摘要由CSDN通过智能技术生成

我正在使用Cesium,并试图检测折线与地球上的地形相交的位置。我有一条折线,从空中的某个点开始,以一定角度向地球方向射出。

现在我正在使用设定距离计算终点,所以我有一个start和endPoint。我想检测这条折线首先撞击地球表面的位置,并在此时停止绘制它。例如,如果有一座高山,我不希望这条线继续在山的另一边。

我使用IntersectionTests尝试了一些不同的方法,特别是grazingAltitudeLocation和rayEllipsoid,但没有任何运气。我一直用我的折线的起点和终点创建一条光线,然后使用viewer.scene.globe.ellipsoid作为函数中的椭球。我一直把起点作为交点返回。

有没有人知道我做错了什么,或者以不同的方式提出建议?任何帮助将不胜感激。

编辑:这是经过编辑/添加的内容

以下是我使用的代码,grazingAltitudeLocation返回起始点,rayEllipsoid返回undefined。

var viewer = new Cesium.Viewer('cesiumContainer');

var scene = viewer.scene;

var globe = scene.globe;

var ellipsoid = scene.globe.ellipsoid;

var primitives = scene.primitives;

globe.depthTestAgainstTerrain = true;

var cesiumTerrainProviderMeshes = new Cesium.CesiumTerrainProvider({url

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值