如何设置默认视图位置 (Cesium 1.6)
How to Set the Default View Location (Cesium 1.6)
我想为 cesium 应用程序设置默认 view/home 位置。
我不只是想飞到那个地方一次;我希望将位置设置为 default/home - 这样它就可以在应用程序的其他地方使用 - 例如在 HomeButton 小部件中。
我试过这样设置 Camera.DEFAULT_VIEW_RECTANGLE
(docs here):
var extent = Cesium.Rectangle.fromDegrees(117.940573,-29.808406,118.313421,-29.468825);
viewer.camera.DEFAULT_VIEW_RECTANGLE = extent;
但是没用..
为了完整起见,下面是我初始化应用程序的方式:
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,
});
有什么建议吗?
如果需要任何进一步的信息,请告诉我。
DEFAULT_VIEW_RECTANGLE
是 Cesium.Camera
上的静态 属性。这样,您可以在构造 Viewer
之前分配值,然后新构造的小部件将初始化为您自定义的默认视图矩形。
编辑: 另外,请注意 Camera.DEFAULT_VIEW_FACTOR
。您可以将其设置为零,以使默认视图与您的矩形完全匹配。它的默认值将使您的默认视图远离您选择的矩形。
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
});
覆盖主页按钮事件,像这样:
viewer.homeButton.viewModel.command.beforeExecute.addEventListener(
function(e) {
e.cancel = true;
viewer.scene.camera.flyTo(homeCameraView);
});
我想为 cesium 应用程序设置默认 view/home 位置。
我不只是想飞到那个地方一次;我希望将位置设置为 default/home - 这样它就可以在应用程序的其他地方使用 - 例如在 HomeButton 小部件中。
我试过这样设置 Camera.DEFAULT_VIEW_RECTANGLE
(docs here):
var extent = Cesium.Rectangle.fromDegrees(117.940573,-29.808406,118.313421,-29.468825);
viewer.camera.DEFAULT_VIEW_RECTANGLE = extent;
但是没用..
为了完整起见,下面是我初始化应用程序的方式:
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,
});
有什么建议吗? 如果需要任何进一步的信息,请告诉我。
DEFAULT_VIEW_RECTANGLE
是 Cesium.Camera
上的静态 属性。这样,您可以在构造 Viewer
之前分配值,然后新构造的小部件将初始化为您自定义的默认视图矩形。
编辑: 另外,请注意 Camera.DEFAULT_VIEW_FACTOR
。您可以将其设置为零,以使默认视图与您的矩形完全匹配。它的默认值将使您的默认视图远离您选择的矩形。
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
});
覆盖主页按钮事件,像这样:
viewer.homeButton.viewModel.command.beforeExecute.addEventListener(
function(e) {
e.cancel = true;
viewer.scene.camera.flyTo(homeCameraView);
});