Globe

场景中渲染的球体,包括其地形(Globe#terrainProvider)和图像层(Globe#imageryLayers)。使用Scene#globe访问地球仪。
new Globe(ellipsoid)
Parameters:
ellipsoid (Ellipsoid) (default Ellipsoid.WGS84) 确定球体的大小和形状。

Members

atmosphereBrightnessShift : Number

适用于大气的亮度偏移。默认为0.0(无移位)。亮度变化-1.0是完全的黑暗,这将让空间显示通过。
Default Value: 0.0

atmosphereHueShift : Number

色调改变以适应大气。默认为0.0(无移位)。色调偏移1.0表示可用色调的完整旋转。
Default Value: 0.0

atmosphereSaturationShift : Number

适用于大气的饱和度偏移。默认为0.0(无移位)。饱和位移-1.0是单色的。
Default Value: 0.0

baseColor : Color

获取或设置没有可用图像时地球仪的颜色。

clippingPlanes : ClippingPlaneCollection

指定ClippingPlaneCollection的属性,用于选择性地禁用每个平面外部的渲染。

depthTestAgainstTerrain : Boolean

如果广告牌、多段线、标签等基本体应针对地形表面进行深度测试,则为true;如果这些基本体应始终绘制在地形顶部,则为false,除非它们位于地球的另一侧。针对地形的深度测试原语的缺点是,轻微的数字噪声或地形细节级别切换有时会使应该在表面上的原语消失在其下面。
Default Value: false

ellipsoid : Ellipsoid

获取描述此球体形状的椭球体。

enableLighting : Boolean

使用太阳作为光源照亮地球。
Default Value: false

fillHighlightColor : Color

用于突出显示地形填充瓦片的颜色。如果未定义,则完全不突出显示填充瓦片。alpha值用于alpha与瓦片的实际颜色混合。由于地形填充瓦片不代表实际的地形表面,因此在某些应用程序中,直观地指示它们不可信可能很有用。
Default Value: undefined

imageryLayers : ImageryLayerCollection

获取将在此地球仪上呈现的图像层的集合。

(readonly) imageryLayersUpdatedEvent : Event

获取在添加、显示、隐藏、移动或删除图像层时引发的事件。

lightingFadeInDistance : Number

照明恢复的距离。只有当enableLightingshowGroundAtmospheretrue时,此项才会生效。
Default Value: 20000000.0

lightingFadeOutDistance : Number

照亮一切的距离。只有当enableLightingshowGroundAtmospheretrue时,此项才会生效。
Default Value: 10000000.0

loadingDescendantLimit : Number

获取或设置被认为“太多”的加载子代平铺的数目。如果一个瓦片有太多的加载子体,则该瓦片将在加载和呈现其任何子体之前加载和呈现。这意味着对于用户来说,更多的反馈是,一些事情正在以较长的总体加载时间为代价发生。将此设置为0将导致每个瓦片级别依次加载,显著增加加载时间。将其设置为较大的数字(例如1000)将使加载的瓦片数量最小化,但往往会在长时间等待后立即显示所有细节。
Default Value: 20

material : Material

获取或设置球体的材质外观。这可以是几个内置Material对象之一,也可以是用脚本编写的自定义材质

maximumScreenSpaceError : Number

用于驱动细节细化级别的最大屏幕空间错误。较高的值将提供更好的性能,但视觉质量较低。
Default Value: 2

nightFadeInDistance : Number

夜晚的黑暗从地面大气逐渐消失到没有灯光的地面大气的距离。只有当showGroundAtmosphereenableLightingtrue时,这才会生效。
Default Value: 50000000.0

nightFadeOutDistance : Number

黑夜从地面大气逐渐消失到地面大气变亮的距离。只有当showGroundAtmosphereenableLightingtrue时,这才会生效。
Default Value: 10000000.0

oceanNormalMapUrl : String

用于在海洋中渲染波浪的普通地图。仅当配置的地形提供程序包含水面掩蔽时,设置此属性才会生效。
Default Value: buildModuleUrl('Assets/Textures/waterNormalsSmall.jpg')

preloadAncestors : Boolean

获取或设置一个值,该值指示是否应预加载呈现的瓦片的祖先。将此设置为“真”将优化缩小体验,并在平移时在新曝光区域提供更多细节。缺点是它需要加载更多的瓦片。
Default Value: true

preloadSiblings : Boolean

获取或设置一个值,该值指示是否应预加载呈现的瓦片的同级。如果将此设置为true,则会加载与渲染瓦片具有相同父级的瓦片,即使它们被剔除。如果将此设置为“真”,则可以以加载更多瓦片为代价提供更好的平移体验。
Default Value: false

shadows : ShadowMode

确定球体是投射还是接收来自每个光源的阴影。将地球仪设置为投射阴影可能会影响性能,因为从灯光的角度重新渲染地形。目前只有在视图中的地形会投射阴影。默认情况下,球体不投射阴影。
Default Value: ShadowMode.RECEIVE_ONLY

show : Boolean

确定是否显示地球仪。
Default Value: true

showGroundAtmosphere : Boolean

启用地面大气,当从lightingFadeInDistancelightingFadeOutDistance之间的距离观看时,地面大气会绘制在地球上。
Default Value: true

showWaterEffect : Boolean

如果在被水覆盖的地球区域显示动画波效果,则为真;否则为假。如果terrainProvider不提供水面掩蔽,则忽略此属性。
Default Value: true

terrainProvider : TerrainProvider

地形提供者为这个地球仪提供表面几何图形。

(readonly) terrainProviderChanged : Event

获取在地形提供程序更改时引发的事件

tileCacheSize : Number

地形瓦片缓存的大小,表示为若干瓦片。如果渲染此帧不需要额外的瓦片,则会释放超出此数目的瓦片。一个较大的数字将消耗更多的内存,但当缩小然后再放大时,显示细节的速度会更快。
Default Value: 100

tileLoadProgressEvent : Event

获取自上次呈现帧后瓦片加载队列长度发生更改时引发的事件。当加载队列为空时,当前视图的所有地形和图像都已加载。该事件将传递瓦片加载队列的新长度。

(readonly) tilesLoaded : Boolean

当瓦片加载队列为空时返回true,否则返回false。当加载队列为空时,当前视图的所有地形和图像都已加载。

Methods

destroy()
销毁此对象持有的WebGL资源。销毁对象允许确定地释放WebGL资源,而不是依赖垃圾收集器来销毁此对象。

一旦对象被破坏,就不应使用它;调用除isDestroyed以外的任何函数都将导致DeveloperError异常。因此,将返回值(undefined)赋给对象,如示例中所述。
Example
globe = globe && globe.destroy();
Throws
See:
getHeight(cartographic) → {Number|undefined}
在给定的地图上求出表面的高度。
Parameters:
cartographic (Cartographic) 找到高度的地图。
isDestroyed() → {Boolean}
如果此对象被破坏,则返回true;否则返回false。

如果此对象被破坏,则不应使用它;调用除isDestroyed以外的任何函数将导致DeveloperError异常。
See:
pick(ray, scene, result) → {Cartesian3|undefined}
找到光线与渲染的球体表面之间的交点。射线必须以世界坐标给出。
Parameters:
ray (Ray) 要测试交叉点的光线。
scene (Scene) 现场。
result (Cartesian3) 存储结果的对象。
Example
// find intersection of ray through a pixel and the globe
var ray = viewer.camera.getPickRay(windowCoordinates);
var intersection = globe.pick(ray, scene);