首页 / 浏览问题 / 三维GIS / 问题详情
关于在页面动态生成飞行路线的问题
21EXP 2022年10月09日
通过加载用iDesktop客户端生成的fpf文件,web3D场景可以正常实现飞行效果。但通过js动态创建飞行站点的方式却不行,不知道是啥原因。大概的代码在下面,请你们帮我看看问题出在哪,或者给我一个可用的demo(要jquery版的,vue不会用...)

var myRoute = new Cesium.Route({routeName: 'stop1', isFlyLoop: true});

//手动添加多个站点位置,大概代码如下

            var i = 1;

            var camera = viewer.camera;
            var stop = new Cesium.RouteStop({
                point: camera._position,
                heading: camera.heading,
                tilt: camera.pitch,
                speed: 8,
                duration: 4,
                distanceToNext: 36,
                stopName: 'stop' + i++
            });
            myRoute.addStop(stop);

var routes = new Cesium.RouteCollection(viewer.entities);
routes.addRoute(myRoute);

var flyManager = new Cesium.FlyManager({
       scene: viewer.scene,
       routes: routes
});

flyManager.readyPromise.then(function () {

//死活进不来这个回调,在里面写alert语句也不执行

    flyManager.play();

});

1个回答

您好,

关于js自定义飞行路线的方法您可以看一下我们的官方博客:

https://blog.csdn.net/supermapsupport/article/details/94432952

https://blog.csdn.net/supermapsupport/article/details/97756526

4,151EXP 2022年10月10日
第一个链接讲的是飞行路线的实现原理,第二个链接倒是有提到如何用js生成自定义路线。但里面的api是不是已经过时了?比如飞行管理类现在叫FlyManager而文章中叫Fly_NZC,超图最新的js库没这个API
您把对应的NZC更换为flyManager即可。其他的可以正常使用,包括示例。
...