2017-02-16 2 views

Antwort

0

Sie können sich in die Uhr einklinken und mit jedem Häkchen sicherstellen, dass sich die Kamera im "erlaubten Bereich" befindet.

Bei jedem Häkchen prüfen, ob die Kamera nicht in der richtigen Position ist. Wenn nicht, korrigieren Sie es.

Hier ist ein Beispiel, das die Höhe der Kamera begrenzt, aber dasselbe Muster könnte auch verwendet werden, um andere Aspekte der Position zu begrenzen.

Sandcastle: http://cesiumjs.org/Cesium/Apps/Sandcastle/?src=Hello%20World.html&label=Showcases&gist=c943ebc6b2d06b9a555584cd1e3f6a97

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

// the max height that should be allowed in meters 
var MAX_HEIGHT = 4e6; 

// each clock tick ensure the camera is in the right position 
viewer.clock.onTick.addEventListener(function() { 
    var curHeight = viewer.scene.globe.ellipsoid.cartesianToCartographic(viewer.camera.position).height; 
    var heightFromMax = curHeight - MAX_HEIGHT; 

    // if the height of the camera is above the max, move the camera forward to ensure it is lower than the max 
    if (heightFromMax > 0) { 
     viewer.scene.camera.moveForward(heightFromMax); 
     return; 
    } 
}); 
Verwandte Themen