包含 Cesium 场景的小部件。
| Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
container |
Element | string | 包含小部件的 DOM 元素或 ID。 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
options |
object |
optional
包含以下属性的对象:
|
Throws:
-
DeveloperError : 文档中不存在 ID 为“container”的元素.
Example:
// For each example, include a link to CesiumWidget.css stylesheet in HTML head,
// and in the body, include: <div id="cesiumContainer"></div>
// Widget with no terrain and default Bing Maps imagery provider.
const widget = new Cesium.CesiumWidget("cesiumContainer");
// Widget with ion imagery and Cesium World Terrain.
const widget2 = new Cesium.CesiumWidget("cesiumContainer", {
baseLayer: Cesium.ImageryLayer.fromWorldTerrain(),
terrain: Cesium.Terrain.fromWorldTerrain()
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
sceneMode: Cesium.SceneMode.COLUMBUS_VIEW,
mapProjection: new Cesium.WebMercatorProjection()
});
Demo:
Members
获取或设置数据源是否可以暂时暂停
动画,以避免向用户显示不完整的图像。
例如,如果正在后台处理异步图元,
时钟将在几何体准备好之前不会推进。
readonly camera : Camera
获取相机。
获取画布。
readonly clock : Clock
获取时钟。
clockTrackedDataSource : DataSource
获取或设置要用小部件时钟进行跟踪的数据源。
获取父容器.
获取信用容器。
creditDisplay : CreditDisplay
管理要在屏幕上和灯箱中显示的信用列表。
获取信用视口
readonly dataSourceDisplay : DataSourceDisplay
获取用于
DataSource 可视化的显示。
readonly dataSources : DataSourceCollection
获取要可视化的
DataSource 实例集合。
readonly ellipsoid : Ellipsoid
获取场景的默认椭球体。
readonly entities : EntityCollection
获取未绑定到特定数据源的实体集合。
这是对
dataSourceDisplay.defaultDataSource.entities 的快捷方式。
readonly imageryLayers : ImageryLayerCollection
获取将在地球上渲染的影像层集合。
获取或设置渲染分辨率的缩放因子。小于 1.0 的值可以在性能较弱的设备上提高性能,而大于 1.0 的值将以更高的分辨率进行渲染,然后缩小,从而提高视觉保真度。
例如,如果小部件的布局大小为 640x480,将此值设置为 0.5 将导致场景以 320x240 的分辨率渲染,然后放大,而将其设置为 2.0 将导致场景以 1280x960 的分辨率渲染,然后缩小。
-
Default Value:
1.0
readonly scene : Scene
获取场景。
readonly screenSpaceEventHandler : ScreenSpaceEventHandler
获取屏幕空间事件处理程序。
获取或设置小部件的目标帧率,当
useDefaultRenderLoop
为 true 时。如果未定义,浏览器的 requestAnimationFrame 实现
将决定帧率。如果定义,则该值必须大于 0。高于基础 requestAnimationFrame
实现的值将无效。
terrainProvider : TerrainProvider
提供地球表面几何的地形提供者。
trackedEntity : Entity|undefined
获取或设置当前正在被相机跟踪的实体实例。
readonly trackedEntityChanged : Event
获取当跟踪的实体改变时引发的事件。
布尔标志,指示是否使用浏览器推荐的分辨率。
如果为 true,则忽略浏览器的设备像素比,而是使用 1.0,
有效地基于 CSS 像素而不是设备像素进行渲染。这可以改善
性能在高像素密度的低性能设备上。当为 false 时,
渲染将以设备像素进行。无论此标志为 true 还是 false,
CesiumWidget#resolutionScale 仍然会生效。
-
Default Value:
true
获取或设置该小部件是否应控制渲染循环。
如果为 true,小部件将使用 requestAnimationFrame
进行渲染和调整小部件大小,并驱动
模拟时钟。如果设置为 false,则必须手动调用
resize 和 render 方法作为自定义
渲染循环的一部分。如果在渲染过程中发生错误,将引发
Scene 的 renderError 事件,并且此属性
将设置为 false。在错误发生后,必须将其设置回 true
以继续渲染。
Methods
销毁小部件。如果永久地,从布局中移除小部件,则应调用此方法.
将相机飞向提供的实体、实体集合或数据源。
如果数据源仍在加载过程中,或可视化仍在加载中,
此方法将在数据准备好后进行飞行。
偏移量是以局部东-北-上参考框架中的方位角/俯仰角/范围, 该框架以包围球的中心为中心。方位角和俯仰角定义在局部东-北-上参考框架中。 方位角是从 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|VoxelPrimitive)> | 要查看的实体、实体数组、实体集合、数据源、Cesium3DTileset、点云或影像层。您还可以传递一个解析为上述类型之一的 Promise。 | ||||||||||||||||
options |
object |
optional
包含以下属性的对象:
|
Returns:
一个 Promise,如果飞行成功解析为 true,如果目标当前未在场景中可视化或飞行被取消则解析为 false。 //TODO: 清理实体提及
Returns:
如果对象已被销毁则返回 true,否则返回 false.
渲染场景。此函数会在需要时自动调用,
除非
useDefaultRenderLoop 设置为 false;
更新画布大小、相机纵横比和视口大小。
此函数会在需要时自动调用,除非
useDefaultRenderLoop 设置为 false。
向用户显示一个错误面板,包含标题和更长的错误消息,
可以通过 OK 按钮来关闭。 当发生渲染循环错误时,
如果在构造小部件时未将 showRenderLoopErrors 设置为 false,
则会自动显示此面板。
| Name | Type | Description |
|---|---|---|
title |
string | 要在错误面板上显示的标题。此字符串被解释为文本。 |
message |
string | optional 在详细错误信息之前显示的有用用户消息。此字符串被解释为 HTML。 |
error |
string |
optional
要在错误面板上显示的错误。此字符串使用 formatError 格式化后,然后作为文本显示。 |
异步设置相机以查看提供的实体、实体集合或数据源。
如果数据源仍在加载过程中,或可视化仍在加载中,
此方法将在数据准备好后进行缩放。
偏移量是以局部东-北-上参考框架中的方位角/俯仰角/范围, 该框架以包围球的中心为中心。方位角和俯仰角定义在局部东-北-上参考框架中。 方位角是从 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|VoxelPrimitive)> | 要查看的实体、实体数组、实体集合、数据源、Cesium3DTileset、点云或影像层。您还可以传递一个解析为上述类型之一的 Promise。 |
offset |
HeadingPitchRange | optional 在局部东-北-上参考框架中从实体中心的偏移量。 |
Returns:
一个 Promise,如果缩放成功解析为 true,如果目标当前未在场景中可视化或缩放被取消则解析为 false。
