加载模型
let positions = Cesium.Cartesian3.fromDegrees(0,0,0);//定义模型位置
let orientations = Cesium.Transforms.headingPitchRollQuaternion(positions, new Cesium.HeadingPitchRoll(1.5,0,0);//定义模型角度朝向
this.viewer.entities.add({
id: 'A1',
name: 'sw',
position: positions ,
orientation: orientations ,
model: {
uri: "mode/sw/sw.gltf",//模型位置
scale: 1,
show: true,
color: Cesium.Color.WHITE.withAlpha(2),
clampToGround: true,//贴地
}
}])
广告标记
information() {//点位提示点
let positions = Cesium.Cartesian3.fromDegrees(0,0,0);//定义模型位置
let orientations = Cesium.Transforms.headingPitchRollQuaternion(positions, new Cesium.HeadingPitchRoll(1.5,0,0);//定义模型角度朝向
this.cameralist.forEach((val) => {
this.viewer.entities.add({
id: val.id,
show: true,
position:positions ,//初始位置 高度val.position[2]
billboard:orientations ,
label: {
text: "点位",//label显示名称
font: "normal 25px MicroSoft YaHei",//字体大小
fillColor: Cesium.Color.BROWN ,//颜色
scaleByDistance: new Cesium.NearFarScalar(0, 1, 5000, 0.0),
pixelOffset: new Cesium.Cartesian2(0,-30),//label高度
},
billboard: {
image: "img/camera.png",
scale: 0.7,
scaleByDistance: new Cesium.NearFarScalar(0, 1, 5000, 0.0),//设置根据相机距离放缩
},
})
});
}
画线
let linePositions = []
linePositions.push(new Cesium.Cartesian3.fromDegrees(0,0,0);
linePositions.push(new Cesium.Cartesian3.fromDegrees(0,0,1);
linePositions.push(new Cesium.Cartesian3.fromDegrees(0,0,2);
this.viewer.entities.add({
id: 'id',
show:true,
polyline: {
positions: linePositions,
width: 50,//宽度
material: new Cesium.Color.fromCssColorString('#cccccc') //颜色
}
})
画面
var position = Cesium.Cartesian3.fromDegrees(0,0,0);//定义模型位置
var orientation = Cesium.Transforms.headingPitchRollQuaternion(position, new Cesium.HeadingPitchRoll(0, 0, 0));//定义模型角度朝向
this.viewer.entities.add({
id: id,
show:true,
position: position,//初始位置
orientation:orientation,
plane: {
plane: new Cesium.Plane(Cesium.Cartesian3.UNIT_Z, 0.0),//以Z轴为法线
dimensions: new Cesium.Cartesian2(50, 20),//长宽
material:Cesium.Color.fromCssColorString("#FFFFFF").withAlpha(0.5),//面的颜色 及透明度
outlineColor:Cesium.Color.fromCssColorString("#000000").withAlpha(0.5),//描边颜色及透明度
outline:true,
}
})
画体
this.viewer.entities.add({
id: id,
show:true,
position: Cesium.Cartesian3.fromDegrees(0,0,0),//初始位置
orientation: Cesium.Transforms.headingPitchRollQuaternion(Cesium.Cartesian3.fromDegrees(0,0,0), new Cesium.HeadingPitchRoll(0, 0, 0)),//朝向和翻滚角度
box: {
dimensions: new Cesium.Cartesian3(10, 5,6),//长宽高
material: Cesium.Color.fromCssColorString("#CCCCCC").withAlpha(0.5),//颜色及透明度
outline: true,//描边
outlineColor:Cesium.Color.fromCssColorString("#FFFFFF").withAlpha(0.3),//描边颜色及透明度
}
})
画栅栏
this.viewer.entities.add({
id: id,
show:true,
wall: {
positions: Cesium.Cartesian3.fromDegreesArrayHeights([
0,0,1,
0,1,1,
0,2,1
]),//注:经度,维度,高度 为一组
outline: true,//描边
material:Cesium.Color.fromCssColorString("#ffffff").withAlpha(0.6),//颜色及透明度
outlineColor:Cesium.Color.fromCssColorString("#ffffff").withAlpha(1),//描边颜色及透明度
},
})
删除指定模型
let getByIdBox = this.viewer.entities.getById("dom");//dom为模型的id
this.viewer.entities.remove(getByIdBox)