Cesium的CallbackProperty动态更新positions时报错:TypeError: Cannot read properties of undefined (reading ‘height’)的问题

951次阅读
没有评论

问题:

最近使用Cesium的CallbackProperty动态更新polyline的positions时Cesium报错:TypeError: Cannot read properties of undefined (reading ‘height’)

核心代码:

const isConstant = false;
const redLine = viewer.entities.add({
  polyline: {
    // This callback updates positions each frame.
    positions: new Cesium.CallbackProperty(function (time, result) {
      endLongitude =
        startLongitude +
        0.001 * Cesium.JulianDate.secondsDifference(time, startTime);
      return [Cesium.Cartesian3.ZERO, Cesium.Cartesian3.ONE];
      return Cesium.Cartesian3.fromDegreesArray(
        [startLongitude, startLatitude, endLongitude, startLatitude],
        Cesium.Ellipsoid.WGS84,
        result
      );
    }, isConstant),
    width: 5,
    material: Cesium.Color.RED,
  },
});

报错原因:

此处的positions不支持(0,0,0)这样三个分量都为0的坐标,换成Cesium.Cartesian3.UNIT_X便能正常运行,详见官网沙盒

 

facingscreen
版权声明:本站原创文章,由 facingscreen2023-02-07发表,共计693字。
转载说明:本文为搜栈网原创文章,除特殊说明外皆由CC-4.0协议发布,转载请注明出处,如有帮助欢迎打赏。
评论(没有评论)
验证码