2301_79079150 2024-03-01 17:20 采纳率: 28.6%
浏览 111

vue2使用mars3d飞机轨迹飞行问题

vue2使用mars3d 我直接用的官网上面的案例,就是一个三维模型飞机在一个指定的线路上飞行的这么一个效果
代码是

img

img


就报错了报错的代码应该是
添加样本数据那里的tempTime
但是我可以打印出来
dayNumber: 2460370
secondsOfDay: 76250.28319999955

img

img


而且如果我把官网代码的这个let tempTime = this.map.clock.currentTime换成 new Cesium.JulianDate();就不报错了,但是地图上啥也显示不出来
这是为什么,咋解决啊求告知

  • 写回答

4条回答 默认 最新

  • 百锦再@新空间 优质创作者: 编程框架技术领域 2024-03-01 17:20
    关注

    flyLocus() {const graphicLayerflyLocus = new mars3d.layer.GraphicLayer();
    this.map.addLayer(graphicLayerflyLocus);

    graphicLayerflyLocus.flyTo({duration: 0,heading: 0,pitch: -99,scale: 5});

    const property = new Cesium.SampledPositionProperty();
    property.forwardExtrapolationType = Cesium.ExtrapolationType.HOLD;

    let tempTime = this.map.clock.currentTime;
    // let tempTime = new Cesium.JulianDate();
    console.log('this.map', tempTime);

    property.addSample(new Cesium.JulianDate(), Cesium.Cartesian3.fromDegrees(117.172852, 31.862736, 58));
    console.log('this.map.property', property);

    tempTime = Cesium.JulianDate.addSeconds(tempTime, 128, new Cesium.JulianDate());
    property.addSample(tempTime, Cesium.Cartesian3.fromDegrees(117.251461, 31.856611, 50));
    tempTime = Cesium.JulianDate.addSeconds(tempTime, 128, new Cesium.JulianDate());
    property.addSample(tempTime, Cesium.Cartesian3.fromDegrees(117.265321, 31.875336, 50));
    tempTime = Cesium.JulianDate.addSeconds(tempTime, 128, new Cesium.JulianDate());
    property.addSample(tempTime, Cesium.Cartesian3.fromDegrees(117.160215, 31.850639, 58));
    }

    请将上述代码替换相应位置的代码,运行后查看结果。如果还有报错,请提供更多细节信息。


    有问题你别着急,评论留言都可以,看到马上就回复,尽量及时补充齐
    评论

报告相同问题?

问题事件

  • 创建了问题 3月1日