一、需求来源
在项目中,需要绘制汽车并且设置其朝向,原始方式是使用模型绘制,便可以很容易的通过设置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,
},
});