1、实例
//terrainProvider属性,
//属性值是TerrainProvider,TerrainProvider是一个地形图层加载类,抽象类,其子类有:
//EllipsoidTerrainProvider
//CesiumTerrainProvider
//VRTheWorldTerrainProvider
//GoogleEarthEnterpriseTerrainProvider
var viewer = new Cesium.Viewer("cesiumContainer", {
terrainProvider: new Cesium.CesiumTerrainProvider({
url: Cesium.IonResource.fromAssetId(3956),
//Cesium.IonResource.fromAssetId(assetId, options) promise类型
//assetId:number,Cesium ion的assetId
//options:{可选参数
// accesstoken:String类型,默认值Ion.defaultAccessToken,要使用的访问令牌
// server:Resource或String类型,默认值是Ion.defaultServer,Cesium ion api上的服务
//}
}),
});
//CesiumTerrainProvider
//加载Cesium上的地形图层服务
//参数是一个对象
//1、url:Resource或String或Promise类型,Cesium地形图层服务的地址
//2、requestVertexNormals:bool类型,可选参数,默认值是false,指示客户端是否应以逐顶点法线(如果可用)的形式从服务器请求附加照明信息的标志。
//3、requestWaterMask:bool类型,可选参数,默认值是false,指示客户端是否应从服务器请求每个瓦片的水掩码(如果可用)的标志。
//4、requestMetadata:bool类型,可选参数,默认值是true,指示客户端是否应从服务器请求每个瓦片元数据(如果可用)的标志。
//5、ellipsolid
//6、credit
Sandcastle.addDefaultToolbarMenu(
[
{
text: "Denali",
onselect: function () {
//Camera.flyTo(options),参数是一个对象
//将相机从当前位置飞到新位置,定位到一个新位置
//destination:Cartesian3或Rectangle类型,相机在WGS84(世界)坐标中的最终位置或从自顶向下视图可见的矩形。
//orientation:Object类型,可选参数,包含方向和向上属性或航向、俯仰和滚动属性的对象。默认情况下,该方向将指向3D中帧的中心,并指向Columbus视图中的负z方向。向上方向将指向3D中的局部北方,并在哥伦布视图中指向正y方向。在无限滚动模式下,二维中不使用方向。
viewer.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromRadians(
//Cesium.Cartesian3.fromRadians(longitude, latitude, height, ellipsoid, result),静态函数
//从以弧度为单位的经度和纬度值返回笛卡尔坐标3维位置
//longitude,经度,弧度制
//latitude,维度,弧度制
//height:默认值0,可选参数,椭球体上方的高度,以米为单位
//ellipsoid:默认是wgs84,可选
//result:Cartesian3类型,,可选,存储结果的对象
-2.6399828792482234,
1.0993550795541742,
5795
),
orientation: {
heading: 3.8455,//航向
pitch: -0.4535,//俯仰
roll: 0.0,//翻滚
},
});
},
},
{
text: "Anchorage Area",
onselect: function () {
viewer.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromRadians(
-2.610708034601548,
1.0671172431736584,
1900
),
orientation: {
heading: 4.6,
pitch: -0.341,
roll: 0.0,
},
});
},
},
{
text: "Peaks",
onselect: function () {
viewer.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromRadians(
-2.6928866820212813,
1.072394255273859,
3700
),
orientation: {
heading: 1.6308222948889464,
pitch: -0.6473480165020193,
roll: 0.0,
},
});
},
},
{
text: "Riverbed",
onselect: function () {
viewer.scene.camera.flyTo({
destination: Cesium.Cartesian3.fromRadians(
-2.6395623497608596,
1.0976443174490356,
2070
),
orientation: {
heading: 6.068794108659519,
pitch: -0.08514161789475816,
roll: 0.0,
},
});
},
},
],
"toolbar"
);