Cesium中的貼地處理
在cesium的開(kāi)發(fā)中,當(dāng)加入基礎(chǔ)的dem高程數(shù)據(jù)時(shí),地表會(huì)有對(duì)應(yīng)的起伏,這時(shí),在其上加上矢量圖層數(shù)據(jù)或者實(shí)體對(duì)象數(shù)據(jù),不設(shè)置貼地的情況下,對(duì)象有可能會(huì)飄在空中,或者掉在地形的下邊,并且離近觀察對(duì)象時(shí),還有一種隨著視野移動(dòng)的問(wèn)題。
cesium提供了常用實(shí)體對(duì)象的貼地處理,設(shè)置完貼地屬性,就會(huì)讓對(duì)象顯示在地形上,而不會(huì)出現(xiàn)以上的問(wèn)題。
常見(jiàn)對(duì)象的貼地設(shè)置
1、面狀、點(diǎn)狀、廣告牌
這些實(shí)體類(lèi)型的貼地設(shè)置,是通過(guò)heightReference屬性進(jìn)行設(shè)置,設(shè)置成CLAMP_TO_GROUND值(見(jiàn)下圖),對(duì)于面圖層,要同時(shí)不設(shè)置面的height:0屬性,需要注意的是,面狀數(shù)據(jù)設(shè)置貼地后,邊線的數(shù)據(jù)是不能顯示了,需要單獨(dú)添加邊線數(shù)據(jù)。

2、geojson等數(shù)據(jù)源
在數(shù)據(jù)源加載的時(shí)候,可以設(shè)置clampToGround的屬性值為true,
let?promise = Cesium.GeoJsonDataSource.load(_geojsondata, {
clampToGround:?true
});
3、線狀數(shù)據(jù)需要設(shè)置clampToGround的屬性為true。
參考文檔:
https://cesium.com/docs/cesiumjs-ref-doc/Billboard.html?classFilter=bill
https://cesium.com/docs/cesiumjs-ref-doc/PolylineGraphics.html?classFilter=polyline