Cesium viewer 最常用的控件 API

Viewer

new Cesium.Viewer(container, options)

构建应用程序的基本小部件。 复合材料的所有标准铯部件为一个可重用的包。 小部件总是可以延长使用mixin,用于各种各样的应用程序添加功能。
名字 类型 描述
container 元素|字符串 DOM元素或ID将包含小部件。
options 对象 可选对象具有以下属性:
的名字 类型 默认的 描述
animation 布尔 true 可选如果设置为false,那么将不会创建动画小部件。
baseLayerPicker 布尔 true 可选如果设置为false,那么将不会创建BaseLayerPicker小部件。
fullscreenButton 布尔 true 可选如果设置为false,那么将不会创建FullscreenButton小部件。
vrButton 布尔 false 可选如果设置为真,那么VRButton小部件将被创建。
geocoder 布尔 true 可选如果设置为false,那么将不会创建Geocoder小部件。
homeButton 布尔 true 可选如果设置为false,那么将不会创建HomeButton小部件。
infoBox 布尔 true 可选如果设置为false,那么将不会创建信息框小部件。
sceneModePicker 布尔 true 可选如果设置为false,那么将不会创建SceneModePicker小部件。
selectionIndicator 布尔 true 可选如果设置为false,那么将不会创建SelectionIndicator小部件。
timeline 布尔 true 可选如果设置为false,那么将不会创建时间轴部件。
navigationHelpButton 布尔 true 可选如果设置为false,那么将不会创建导航帮助按钮。
navigationInstructionsInitiallyVisible 布尔 true 可选如果导航指令最初应该是可见的,还是假的,如果不应该显示,直到用户显式地单击按钮。
scene3DOnly 布尔 false 可选true,每个几何实例才会呈现3 d拯救GPU内存。
clock 时钟 new Clock() 可选时钟控制当前时间的使用。
selectedImageryProviderViewModel ProviderViewModel   可选当前的视图模型基础图像层,如果不是第一个可用的基础层提供使用。 这个值只如果有效的选择。 baseLayerPicker被设置为true。
imageryProviderViewModels 数组。<ProviderViewModel> createDefaultImageryProviderViewModels() 可选数组从BaseLayerPicker ProviderViewModels是可选择的。 这个值只如果有效的选择。 baseLayerPicker被设置为true。
selectedTerrainProviderViewModel ProviderViewModel   可选当前基础地形视图模型层,如果不是第一个可用的基础层提供使用。 这个值只如果有效的选择。 baseLayerPicker被设置为true。
terrainProviderViewModels 数组。<ProviderViewModel> createDefaultTerrainProviderViewModels() 可选数组从BaseLayerPicker ProviderViewModels是可选择的。 这个值只如果有效的选择。 baseLayerPicker被设置为true。
imageryProvider ImageryProvider new BingMapsImageryProvider() 可选图片提供者使用。 这个值只如果有效的选择。 baseLayerPicker设置为false。
terrainProvider TerrainProvider new EllipsoidTerrainProvider() 可选地形提供者使用
skyBox skybox   可选用于呈现星星的天空体。 当undefined使用,默认的恒星。
skyAtmosphere SkyAtmosphere   可选蓝色的天空,和地球的肢体周围的光芒。 设置为false关机。
fullscreenElement 元素|字符串 document.body 可选元素或id被放置到全屏模式时全屏按钮被按下。
useDefaultRenderLoop 布尔 true 可选如果这个小部件应该控制渲染循环,否则假。
targetFrameRate 数量   可选目标帧率时使用默认渲染循环。
showRenderLoopErrors 布尔 true 可选如果这是真的,这个小部件将自动向用户显示一个HTML面板包含错误,如果一个渲染循环发生错误。
automaticallyTrackDataSourceClocks 布尔 true 可选如果这是真的,这个小部件将自动跟踪新添加的时钟设置数据源,如果数据源的更新时钟的变化。 设置这个假如果你想配置独立的时钟。
contextOptions 对象   可选上下文和WebGL创建属性对应options传递给Scene
sceneMode SceneMode SceneMode.SCENE3D 可选最初的场景模式。
mapProjection MapProjection new GeographicProjection() 可选地图投影使用2 d和哥伦布视图模式。
globe 全球 new Globe(mapProjection.ellipsoid) 可选全球使用场景中。 如果设置为false,没有地球将被添加。
orderIndependentTranslucency 布尔 true 可选如果真和配置支持它,使用独立的半透明。
creditContainer 元素|字符串   可选将包含DOM元素或IDCreditDisplay。 如果没有指定,信用被添加到小部件本身的底部。
dataSources DataSourceCollection new DataSourceCollection() 可选数据源的可视化部件的集合。 如果这个参数是提供, 实例被认为是由调用者,不会被摧毁时,观众被摧毁。
terrainExaggeration number 1.0 可选一个标量用来夸大了地形。 注意,地形夸张不会修改任何其他原始定位相对于椭球。
shadows 布尔 false 可选确定是否投下阴影。
terrainShadows ShadowMode ShadowMode.RECEIVE_ONLY 可选确定地形或接收来自太阳的阴影。
mapMode2D MapMode2D MapMode2D.INFINITE_SCROLL 可选决定是否可旋转或2 d地图可以在水平方向滚动无限。
抛出:
  • DeveloperError :元素id“容器”文档中并不存在。
  • DeveloperError :选项。 imageryProvider不可使用BaseLayerPicker小部件时,指定选项。 selectedImageryProviderViewModel代替。
  • DeveloperError :选项。 terrainProvider不可使用BaseLayerPicker小部件时,指定选项。 selectedTerrainProviderViewModel代替。
  • DeveloperError :选项。 selectedImageryProviderViewModel不可用不使用BaseLayerPicker小部件时,指定选项。 imageryProvider代替。
  • DeveloperError :选项。 selectedTerrainProviderViewModel不可用不使用BaseLayerPicker小部件时,指定选项。 terrainProvider代替。
例子:
//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 standard Cesium terrain
    terrainProvider : new Cesium.CesiumTerrainProvider({
        url : 'https://assets.agi.com/stk-terrain/world'
    }),
    //Hide the base layer picker
    baseLayerPicker : false,
    //Use OpenStreetMaps
    imageryProvider : Cesium.createOpenStreetMapImageryProvider({
        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);
});
演示:
    • Cesium Sandcastle Hello World Demo  :
    • http://cesiumjs.org/Cesium/Apps/Sandcastle/index.html?src=Hello%2520World.html
看到的:
    • Animation
    • BaseLayerPicker
    • CesiumWidget
    • FullscreenButton
    • HomeButton
    • SceneModePicker
    • Timeline
    • viewerDragDropMixin

成员

allowDataSourcesToSuspendAnimation:布尔

返回或者设置数据源是否可以暂时停顿 动画为了避免向用户显示一个完整的图景。 例如,如果异步原语中被处理 背景,时钟不会提前到几何是准备好了。

只读的动画:动画                                                                                                         Widgets/Viewer/Viewer.js 838(同下)

动画小部件。

只读的baseLayerPicker:BaseLayerPicker

BaseLayerPicker。

只读的bottomContainer:元素

得到的DOM元素包含区域底部的窗口 CreditDisplay 和潜在的其他东西。

只读的相机:相机

得到了相机。

只读的帆布:帆布

画布。
得到了铯标志元素。

只读的cesiumWidget:CesiumWidget

CesiumWidget。

只读的时钟:时钟

时钟。

只读的容器:元素

获取父容器。

只读的dataSourceDisplay:DataSourceDisplay

获取用于显示 DataSource 可视化。

只读的数据源:DataSourceCollection

得到的集合 DataSource 实例可视化。

只读的实体:EntityCollection

获取集合的实体不绑定到一个特定的数据源。 这是一个捷径 dataSourceDisplay.defaultDataSource.entities

只读的fullscreenButton:FullscreenButton

FullscreenButton。

只读的geocoder:Geocoder

得到了Geocoder。

只读的homeButton:HomeButton

HomeButton。

只读的imageryLayers:ImageryLayerCollection

得到的图像层集合将呈现在世界各地。

只读的信息框:信息框

信息框。
NavigationHelpButton。

resolutionScale数量:

返回或者设置渲染分辨率的比例因子。 值小于1.0可以得到改善 性能更强大的设备上同时值大于1.0将呈现在更高 分辨率,然后缩小,导致改善视觉保真度。 例如,如果小部件是640 x480的大小,这个值设置为0.5 将导致场景呈现在320 x240然后扩大而设置 2.0将导致场景呈现在1280 x960然后按比例缩小。
默认值:  1.0

只读的场景:场景

得到现场。

只读的sceneModePicker:SceneModePicker

SceneModePicker。

只读的screenSpaceEventHandler:ScreenSpaceEventHandler

获取屏幕空间事件处理程序。

selectedEntity:实体

获取或设置对象实例,显示一个选择指标。

只读的selectionIndicator:SelectionIndicator

得到了选择指标。

只读的shadowMap:ShadowMap

得到场景的阴影映射

阴影:布尔

确定是否投下阴影。

targetFrameRate数量:

获取或设置目标帧率时的小部件 useDefaultRenderLoop 是真的。 如果未定义,浏览器的 requestAnimationFrame 实现 决定了帧速率。 如果定义的,这个值必须大于0。 一个值高 比底层requestAnimationFrame实现将没有影响。

terrainProvider:TerrainProvider

为全球提供表面几何地形提供者。

terrainShadows:ShadowMode

确定地形或来自太阳的阴影。

只读的时间轴:时间轴

时间轴部件。

trackedEntity:实体

获取或设置实体实例正在追踪的相机。

useDefaultRenderLoop:布尔

获取或设置此小部件是否应该控制渲染循环。 如果设置为真小部件将使用 requestAnimationFrame 来 执行渲染和调整的部件,以及驱动 模拟时钟。 如果设置为false,你必须手动调用 resize , render 方法 作为一个自定义渲染循环的一部分。 如果一个错误发生在渲染, Scene renderError 事件将提高和这个属性 将被设置为false。 它必须设置为true继续呈现 后的错误。

只读的vrButton:VRButton

VRButton。

方法

摧毁()

破坏了小部件。 应该被称为永久吗 删除小部件的布局。

扩展(混合,选项)

扩展了观众的基本功能与所提供的混合。 mixin可以添加额外的属性、函数或其他行为 提供查看器实例。
的名字 类型 描述
mixin 观众~ ViewerMixin 观众混合添加到这个实例。
options 对象 可选选择对象传递到混合功能。
看到的:
  • viewerDragDropMixin

flyTo(目标,选项)承诺。<布尔>

苍蝇相机提供的实体,实体,或数据源。 如果数据源的过程仍在加载或可视化仍否则装货, 该方法等待执行飞行前的数据准备。

抵消正/音高范围在当地east-north-up参考系集中在边界球的中心。 标题和俯仰角度定义在当地east-north-up参考系。 标题是y轴的角度,增加对x轴。 音高是xy平面的旋转。 积极的推销 角是高于飞机。 消极的螺距角低于飞机。 是中心的距离范围。 如果范围是 零,将计算范围,这样整个边界范围是可见的。

在2 d,必须有一个自上而下的观点。 上面的摄像头将被放置目标向下看。 以上的高度 目标范围。 标题将确定偏移量。 如果标题不能 从偏移量确定,标题将北。

名字 类型 描述
target 实体|数组。<实体>|EntityCollection|数据源|ImageryLayer|承诺。<(实体|数组。<实体> |EntityCollection|数据源|ImageryLayer)> 实体、实体的实体,数组集合,数据源或图像层的观点。 你也可以通过承诺解决前面提到的类型之一。
options 对象 可选对象具有以下属性:
的名字 类型 默认的 描述
duration 数量 3.0 可选飞行的时间以秒为单位。
maximumHeight 数量   可选最大峰值的高度飞行。
offset HeadingPitchRange   可选偏移量从目标在当地east-north-up参考系为中心的目标。
返回:
承诺解析为真如果飞行成功或假如果实体不是目前可视化场景或航班被取消了。

forceResize()

这就迫使小部件重新思考它的布局,包括 小部件大小和信贷安排。

isDestroyed()布尔

返回:
真的如果对象已被摧毁,假的。

渲染()

呈现的场景。 自动地调用这个函数 除非 useDefaultRenderLoop 是设置为假;

调整()

尺寸小部件容器的大小相匹配。 根据需要自动地调用这个函数,除非 useDefaultRenderLoop 设置为false。

zoomTo(目标,抵消)承诺。<布尔>

异步地将相机设置为视图提供的实体,实体,或数据源。 如果数据源的过程仍在加载或可视化仍否则装货, 该方法等待执行放大前的数据准备。

抵消正/音高范围在当地east-north-up参考系集中在边界球的中心。 标题和俯仰角度定义在当地east-north-up参考系。 标题是y轴的角度,增加对x轴。 音高是xy平面的旋转。 积极的推销 角是高于飞机。 消极的螺距角低于飞机。 是中心的距离范围。 如果范围是 零,将计算范围,这样整个边界范围是可见的。

在2 d,必须有一个自上而下的观点。 上面的摄像头将被放置目标向下看。 以上的高度 目标范围。 标题将确定偏移量。 如果标题不能 从偏移量确定,标题将北。

的名字 类型 描述
target 实体|数组。<实体>|EntityCollection|数据源|ImageryLayer|承诺。<(实体|数组。<实体> |EntityCollection|数据源|ImageryLayer)> 实体、实体的实体,数组集合,数据源或图像层的观点。 你也可以通过承诺解决前面提到的类型之一。
offset HeadingPitchRange 可选从实体的中心偏移量在当地east-north-up参考系。
返回:
承诺解析为真如果放大成功或假如果实体不是目前可视化场景或放大被取消了。

类型定义

ViewerMixin(观众、期权)

一个函数,还一个查看器实例了额外的功能。
的名字 类型 描述
viewer 查看器 查看器实例。
options 对象 选择对象传递到混合功能。
看到的:
  • 查看器#扩展

你可能感兴趣的:(Cesium)