Cesium 設定實體(模型、圖片)的朝向
阿新 • • 發佈:2021-06-19
一、需求來源
在專案中,需要繪製汽車並且設定其朝向,原始方式是使用模型繪製,便可以很容易的通過設定orientation屬性控制朝向,但是後期由於數量過大,要換成圖片,於是探究了一下圖片如何設定實體朝向。
本文將會把兩種實體朝向的設定方法都進行介紹。
二、先看效果
三、程式碼實現
model:
var position = Cesium.Cartesian3.fromDegrees(116.39, 39.9, 0) viewer.entities.add({ show: true, position: position, orientation: Cesium.Transforms.headingPitchRollQuaternion( position, new Cesium.HeadingPitchRoll( Cesium.Math.toRadians(45), // 設定這個屬性即可(順時針旋轉的角度值) Cesium.Math.toRadians(0), Cesium.Math.toRadians(0) ) ), model: { uri : '../../source/model/CesiumMilkTruck/CesiumMilkTruck.glb', scale: 50000 }
image:
var position = Cesium.Cartesian3.fromDegrees(119.39, 39.9, 0) viewer.entities.add({ show: true, position: position, ellipse : { semiMinorAxis : 80000.0, semiMajorAxis : 80000.0, material: new Cesium.ImageMaterialProperty({ image:'../../source/image/LaunchSite.png', // 圖片以材質的方式填充 color: Cesium.Color.RED, repeat : new Cesium.Cartesian2(1, 1) }), // rotation: 45, // 利用下面這個屬性設定素材填充時的選裝角度(順時針方向) stRotation : 45, }, });