用于构建应用程序的基本小部件。它将所有标准Cesium小部件组合到一个可重用的程序包中。窗口小部件可总是通过使用混入,其添加功能可用于多种应用进行扩展。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
container
|
Element | String | 将包含窗口小部件的DOM元素或ID。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
options
|
Object |
optional
Object with the following properties:
|
Throws:
-
DeveloperError :ID为'容器'的元素在文档中不存在。
-
DeveloperError :options.selectedImageryProviderViewModel在不使用BaseLayerPicker小部件时不可用,请指定options.imageryProvider。
-
DeveloperError :options.selectedTerrainProviderViewModel在不使用BaseLayerPicker窗口小部件时不可用,请改为指定options.terrainProvider。
Example:
//Initialize the viewer widget with several custom options and mixins.
var viewer = new Cesium.Viewer('cesiumContainer', {
//Start in Columbus Viewer
sceneMode : Cesium.SceneMode.COLUMBUS_VIEW,
//Use Cesium World Terrain
terrainProvider : Cesium.createWorldTerrain(),
//Hide the base layer picker
baseLayerPicker : false,
//Use OpenStreetMaps
imageryProvider : new Cesium.OpenStreetMapImageryProvider({
url : 'https://a.tile.openstreetmap.org/'
}),
// Use high-res stars downloaded from https://github.com/AnalyticalGraphicsInc/cesium-assets
skyBox : new Cesium.SkyBox({
sources : {
positiveX : 'stars/TychoSkymapII.t3_08192x04096_80_px.jpg',
negativeX : 'stars/TychoSkymapII.t3_08192x04096_80_mx.jpg',
positiveY : 'stars/TychoSkymapII.t3_08192x04096_80_py.jpg',
negativeY : 'stars/TychoSkymapII.t3_08192x04096_80_my.jpg',
positiveZ : 'stars/TychoSkymapII.t3_08192x04096_80_pz.jpg',
negativeZ : 'stars/TychoSkymapII.t3_08192x04096_80_mz.jpg'
}
}),
// Show Columbus View map with Web Mercator projection
mapProjection : new Cesium.WebMercatorProjection()
});
//Add basic drag and drop functionality
viewer.extend(Cesium.viewerDragDropMixin);
//Show a pop-up alert if we encounter an error when processing a dropped file
viewer.dropError.addEventListener(function(dropHandler, name, error) {
console.log(error);
window.alert(error);
});
Demo:
See:
Members
获取或设置数据源是否可以临时暂停动画,以避免向用户显示不完整的图片。例如,如果异步原语正在在几何图形准备就绪之前,时钟不会提前。
readonly animation : Animation
获取动画小部件。
readonly baseLayerPicker : BaseLayerPicker
获取BaseLayerPicker。
获取包含以下内容的窗口底部区域的DOM元素:
CreditDisplay
以及其他可能的东西。
readonly camera : Camera
获取相机。
获取画布。
readonly cesiumWidget : CesiumWidget
获取CesiumWidget。
readonly clock : Clock
获取时钟。
clockTrackedDataSource : DataSource
获取或设置数据源以与查看者的时钟进行跟踪。
readonly clockViewModel : ClockViewModel
获取时钟视图模型。
获取父容器。
readonly dataSourceDisplay : DataSourceDisplay
获取用于
DataSource
可视化的显示。
readonly dataSources : DataSourceCollection
获取要可视化的
DataSource
实例集。
readonly entities : EntityCollection
获取未绑定到特定数据源的实体的集合。这是
dataSourceDisplay.defaultDataSource.entities
的快捷方式。
readonly fullscreenButton : FullscreenButton
获取FullscreenButton。
readonly geocoder : Geocoder
获取地理编码器。
readonly homeButton : HomeButton
获取'主页'按钮。
readonly imageryLayers : ImageryLayerCollection
获取将在地球上渲染的图像图层的集合。
readonly infoBox : InfoBox
获取信息框。
readonly navigationHelpButton : NavigationHelpButton
获取NavigationHelpButton。
readonly postProcessStages : PostProcessStageCollection
获取后处理阶段。
readonly projectionPicker : ProjectionPicker
获取ProjectionPicker。
获取或设置渲染分辨率的缩放比例。小于1.0的值可以改善性能不佳的设备上的性能,而值大于1.0的设备将以更高的速度呈现分辨率,然后缩小比例,从而提高视觉保真度。例如,如果窗口小部件的尺寸为640x480,则将此值设置为0.5将导致场景以320x240渲染,然后在设置时按比例放大设置为2.0会导致场景以1280x960渲染,然后按比例缩小。
-
Default Value:
1.0
readonly scene : Scene
获取场景。
readonly sceneModePicker : SceneModePicker
获取SceneModePicker。
readonly screenSpaceEventHandler : ScreenSpaceEventHandler
获取屏幕空间事件处理程序。
selectedEntity : Entity
获取或设置要为其显示选择指示符的对象实例。
readonly selectedEntityChanged : Event
获取当选定实体更改时引发的事件。
readonly selectionIndicator : SelectionIndicator
获取选择指示器。
readonly shadowMap : ShadowMap
获取场景的阴影贴图
确定阴影是否由太阳投射。
在
useDefaultRenderLoop
时获取或设置小部件的目标帧速率是真的。如果未定义,则为浏览器的
requestAnimationFrame
实现确定帧频。如果定义,则该值必须大于0。更高的值基本的requestAnimationFrame实现将无效。
terrainProvider : TerrainProvider
地形提供者为地球提供表面几何形状。
terrainShadows : ShadowMode
确定地形是从太阳投射还是阴影。
readonly timeline : Timeline
获取时间轴小部件。
trackedEntity : Entity
获取或设置相机当前正在跟踪的Entity实例。
readonly trackedEntityChanged : Event
获取当被跟踪实体更改时引发的事件。
布尔型标志,指示是否使用浏览器推荐的分辨率。如果为true,则会忽略浏览器的设备像素比率,而改用1.0,根据CSS像素而不是设备像素有效地渲染。这样可以改善在像素密度较高的功能较弱的设备上的性能。如果为假,则渲染将以设备像素为单位。
Viewer#resolutionScale
仍然会生效该标志为真或假。
-
Default Value:
false
获取或设置此小部件是否应控制渲染循环。如果设置为true,则小部件将使用
requestAnimationFrame
来执行小部件的渲染和调整大小,以及驱动模拟时钟。如果设置为false,则必须手动调用
resize
,
render
方法作为自定义渲染循环的一部分。如果在渲染过程中发生错误,则
Scene
renderError
事件将引发,并且此属性将设置为false。必须将其设置为true才能继续渲染错误之后。
readonly vrButton : VRButton
获取VRButton。
Methods
销毁小部件。如果被永久调用从布局中删除小部件。
使用提供的mixin扩展基本查看器功能。混合可能会添加其他属性,功能或其他行为到提供的查看器实例。
Name | Type | Description |
---|---|---|
mixin
|
Viewer~ViewerMixin | 要添加到该实例的查看器混合。 |
options
|
Object | 可选 options对象将传递给mixin函数。 |
See:
将相机移到提供的一个或多个实体或数据源。如果数据源仍在加载过程中,或者可视化仍在加载中,此方法在执行飞行之前等待数据准备就绪。
偏移量是在以边界球中心为中心的局部东北向上参考框中的航向/俯仰/范围。航向角和俯仰角在局部的北北向上参考系中定义。航向是从y轴到x轴的角度。间距是从xy平面开始的旋转。正螺距角度在平面上方。负俯仰角在平面下方。范围是距中心的距离。如果范围是零,则将计算范围以使整个边界球都可见。
在2D模式下,必须有一个俯视图。摄像机将被放置在目标上方并向下看。上方的高度目标将是范围。航向将根据偏移量确定。如果标题不能根据偏移量确定,航向将为北。
Name | Type | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
target
|
Entity | Array.< Entity > | EntityCollection | DataSource | ImageryLayer | Cesium3DTileset | TimeDynamicPointCloud | Promise.<( Entity |Array.< Entity >| EntityCollection | DataSource | ImageryLayer | Cesium3DTileset | TimeDynamicPointCloud )> | 实体,实体阵列,实体集合,数据源,要查看的Cesium3DTileset,点云或图像层。您还可以传递一个可以解决上述类型之一的承诺。 | ||||||||||||||||
options
|
Object |
可选
具有以下属性的对象:
|
Returns:
如果飞行成功则解析为true的承诺,如果当前未在场景中可视化目标或取消飞行,则为false的承诺。 //TODO:清理实体提及
这迫使窗口小部件重新考虑其布局,包括窗口小部件尺寸和信用位置。
Returns:
如果对象已销毁,则为true,否则为false。
渲染场景。该功能会自动调用除非
useDefaultRenderLoop
设置为false;
调整窗口小部件的大小以匹配容器的大小。除非需要,否则将自动调用此函数
useDefaultRenderLoop
设置为false。
异步设置摄像机以查看提供的一个或多个实体或数据源。如果数据源仍在加载过程中,或者可视化仍在加载中,此方法在执行缩放之前等待数据准备就绪。
偏移量是在以边界球中心为中心的局部东北向上参考框中的航向/俯仰/范围。航向角和俯仰角在局部的北北向上参考系中定义。航向是从y轴到x轴的角度。间距是从xy平面开始的旋转。正螺距角度在平面上方。负俯仰角在平面下方。范围是距中心的距离。如果范围是零,则将计算范围以使整个边界球都可见。
在2D模式下,必须有一个俯视图。摄像机将被放置在目标上方并向下看。上方的高度目标将是范围。航向将根据偏移量确定。如果标题不能根据偏移量确定,航向将为北。
Name | Type | Description |
---|---|---|
target
|
Entity | Array.< Entity > | EntityCollection | DataSource | ImageryLayer | Cesium3DTileset | TimeDynamicPointCloud | Promise.<( Entity |Array.< Entity >| EntityCollection | DataSource | ImageryLayer | Cesium3DTileset | TimeDynamicPointCloud )> | 实体,实体阵列,实体集合,数据源,要查看的Cesium3DTileset,点云或图像层。您还可以传递一个可以解决上述类型之一的承诺。 |
offset
|
HeadingPitchRange | 可选 在局部东北向上参考系中,距实体中心的偏移量。 |
Returns:
一个Promise,如果缩放成功,则解析为true;如果当前未在场景中可视化目标,或者取消了缩放,则为false。
Type Definitions
通过附加功能扩展Viewer实例的功能。
Name | Type | Description |
---|---|---|
viewer
|
Viewer | 查看器实例。 |
options
|
Object | 选项对象将传递给mixin函数。 |