Cesium學習筆記(八) Demo學習 差值器

2021-08-03 16:33:39 字數 3844 閱讀 7407

這個demo看上去就是乙個飛機在繞著乙個圈在飛,你可以通過切換差值器看效果

話說這個demo困擾了我好久,我一直以為這個飛機飛行是自己畫出來的,因為上乙個就是嘛,然後一直找啊找,就是找不到

最後才發現其實它只是在幾個時間段填了幾個sample,其他的都是靠差值器自動生成的。。。

src="你的js路徑">

script>

body>

html>

var viewer = new cesium.viewer('cesiumcontainer', );

// 開啟自然光照

viewer.scene.globe.enablelighting = true;

// 開啟地形變化

viewer.terrainprovider = new cesium.cesiumterrainprovider();

//啟用深度測試,所以地形後面的東西會消失

viewer.scene.globe.depthtestagainstterrain = true;

//生成乙個隨機數

cesium.math.setrandomnumberseed(3);

//設定了模擬時間的邊界

var start = cesium.juliandate.fromdate(new

date(2015, 2, 25, 16));

var stop = cesium.juliandate.addseconds(start, 360, new cesium.juliandate());

//確保檢視器處於預期的時間

viewer.clock.starttime = start.clone();

viewer.clock.stoptime = stop.clone();

viewer.clock.currenttime = start.clone();

viewer.clock.clockrange = cesium.clockrange.loop_stop; //迴圈結束時

//時間變化來控制速度

viewer.clock.multiplier = 10;

//給時間線設定邊界

viewer.timeline.zoomto(start, stop);

//多邊形和點(高度隨機)

function

computecirclularflight

(lon, lat, radius)

});}

return property;

}//計算實體位置屬性

var position = computecirclularflight(0, 180, 0.03);

//建立實體

var entity = viewer.entities.add()]),

//這是乙個4x4的矩陣,包含了方位方向等屬性

position: position,

//基於位置移動自動計算方向.

orientation: new cesium.velocityorientationproperty(position),

//載入飛機模型

model: ,

//路徑

path: ),

width: 10

}});//頭頂視角

sandcastle.adddefault*******button('view top down', function

() );

//側面視角

sandcastle.add*******button('view side', function

() );

//追隨視角

sandcastle.add*******button('view aircraft', function

() );

//切換差值器

sandcastle.add*******menu([);

}}, );

}}, );

}}], 'interpolationmenu');

乙個環赤道的衛星,然而沒有衛星就拿飛機吧。。。
var viewer = new cesium.viewer("cesiumcontainer");

//設定了模擬時間的邊界

var start = cesium.juliandate.fromdate(new date(2015, 2, 25, 16));

var stop = cesium.juliandate.addseconds(start, 360, new cesium.juliandate());

//確保檢視器處於預期的時間

viewer.clock.starttime = start.clone();

viewer.clock.stoptime = stop.clone();

viewer.clock.currenttime = start.clone();

viewer.clock.clockrange = cesium.clockrange.loop_stop; //迴圈結束時

//時間變化來控制速度

viewer.clock.multiplier = 10;

//給時間線設定邊界

viewer.timeline.zoomto(start, stop);

function

computecirclularflight

(lon, lat)

return property;

}//計算實體位置屬性

var satelliteposition = computecirclularflight(0, 0);

//建立實體

var entity = viewer.entities.add()]),

position : satelliteposition,

//基於位置移動自動計算方向.

orientation : new cesium.velocityorientationproperty(satelliteposition),

//載入飛機模型

model : ,

//路徑

path : ),

width : 10

}});//差值器

entity.position.setinterpolationoptions();

Cesium 學習筆記

1,和fill屬性不太一樣,outline沒有對應的材質配置,而是用兩個獨立的屬性outlinecolor和outlinewidth。注意outlinewidth屬性僅僅在非windows系統上有效,比如android,ios,linux,和os x。windows系統上邊線寬度永遠為1。主要是因為...

Cesium 學習筆記

1,預設使用 bing 衛星圖層 2,在cesium中,homebutton的預設跳轉位置是美國,那麼在開發中我們如何更改這個預設跳轉位置呢,這就要更改一下源 了 camera.default view rectangle rectangle.fromdegrees 89.5,20.4,110.4,...

cesium 學習筆記(4)2018 7 9

1.監聽視角的改變 viewer.camera.changed.addeventlistener function percentage 2.cesium提供兩類api 1 面向圖形開發人員的底層api,通常稱為 primitive api 該api暴露最小限度的抽象,使用圖形學術語,具有很大的靈活...