5

好的,第一次使用铯。我有一个简单的非高级问题,我在他们的表格上发布了几次,但没有人回应。所以我想我会在这里尝试。

我需要做的就是在调用另一个事件之前弄清楚如何停止一个事件。这是正在发生的事情的一个例子。地球在用户连接上旋转,但如果他们点击“带我回家”等,我需要它停止。

代码如下。

所以 spinGlobe 中的 arg 是 spinRate。如果我在初始连接上传入 0.0,它就不会旋转。完美的。所以我认为如果点击事件(用户点击让我回家)然后调用 spinGlobe(0.0) 地球将停止旋转。但事实并非如此。我可以不动态更改 spinRate 吗?还是我对这一切都错了?

spinGlobe( 0.5 )

 function spinGlobe( dynamicRate )
 var previousTime = Date.now();

 viewer.clock.onTick.addEventListener(function( clock ) {
 var spinRate = dynamicRate;
 var currentTime = Date.now();
 var delta = ( currentTime - previousTime ) / 1000;
 previousTime = currentTime;
 viewer.scene.camera.rotate(Cesium.Cartesian3.UNIT_Z, -spinRate * delta);
 });
 }
4

1 回答 1

0
spinGlobe( dynamicRate ){
    var previousTime = Date.now();

    this.viewer.scene.postRender.addEventListener(function (scene, time){
        var spinRate = dynamicRate;
        var currentTime = Date.now();
        var delta = ( currentTime - previousTime ) / 1000;
        previousTime = currentTime;
        this.viewer.scene.camera.rotate(Cesium.Cartesian3.UNIT_Z, -spinRate * delta);
    });
}
于 2017-03-01T14:40:43.080 回答