2015-02-25 14 views
5

Ich möchte den Standardansichts-/Home-Standort für eine Cäsium-App festlegen.So legen Sie den Standardansichtsort fest (Cäsium 1.6)

Ich möchte nicht nur einmal zum Standort fliegen; Ich möchte, dass der Standort als Standard/home festgelegt wird, damit er an anderer Stelle in der App verwendet werden kann - z. im HomeButton Widget.

Ich habe Einstellung versucht die Camera.DEFAULT_VIEW_RECTANGLE(docs here) wie folgt aus:

var extent = Cesium.Rectangle.fromDegrees(117.940573,-29.808406,118.313421,-29.468825); 

viewer.camera.DEFAULT_VIEW_RECTANGLE = extent; 

Aber es funktioniert nicht ..

Für Vollständigkeit, hier ist, wie ich die Initialisierung der App:

var viewer = new Cesium.Viewer('cesiumContainer', { 
     terrainProvider : new Cesium.CesiumTerrainProvider({ 
      url : '//cesiumjs.org/stk-terrain/tilesets/world/tiles' 
     }), 
     mapProjection : new Cesium.WebMercatorProjection(), 
     timeline: false, 
     animation: false, 
}); 

Irgendwelche Vorschläge? Wenn weitere Informationen benötigt werden, lassen Sie es mich wissen.

Antwort

6

DEFAULT_VIEW_RECTANGLE ist eine statische Eigenschaft auf Cesium.Camera. Auf diese Weise können Sie den Wert zuweisen, bevor erstellt wird, und neu erstellte Widgets werden dann mit Ihrem benutzerdefinierten Standardansichtsrechteck initialisiert.

EDIT: Auch sich bewusst sein Camera.DEFAULT_VIEW_FACTOR. Sie können dies auf Null setzen, damit die Standardansicht genau zu Ihrem Rechteck passt. Durch den Standardwert wird die Standardansicht weit vom gewählten Rechteck entfernt angezeigt.

var extent = Cesium.Rectangle.fromDegrees(117.940573,-29.808406,118.313421,-29.468825); 

Cesium.Camera.DEFAULT_VIEW_RECTANGLE = extent; 
Cesium.Camera.DEFAULT_VIEW_FACTOR = 0; 

var viewer = new Cesium.Viewer('cesiumContainer', { 
    terrainProvider : new Cesium.CesiumTerrainProvider({ 
     url : '//cesiumjs.org/stk-terrain/tilesets/world/tiles' 
    }), 
    mapProjection : new Cesium.WebMercatorProjection(), 
    timeline: false, 
    animation: false, 
    baseLayerPicker: false 
}); 
Verwandte Themen