总共四个entity,有一辆车三个圆且都在一个位置。在三个圆的右侧边缘显示一个label,我用的eyeOffset来偏移label的位置到右侧边缘(因为position在圆心),往右偏移会有明显的误差,往上偏移就没多少误差。
往右偏移:
往上偏移:
一辆车:
const position = Cesium.Cartesian3.fromDegrees(123, 23, 0)
const color = Cesium.Color.fromCssColorString('#fff')
entities.add({
position,
billboard: { image: icon, scale: 0.2, color }
})
三个圈附带label
for (let i = 1; i <= 3; i++) {
entities.add({
position,
ellipse: {
fill: false,
outline: true,
outlineColor: new Ceisum.Color(1, 1, 1, 0.5),
semiMinorAxis: 100000 * i, // 半径
semiMajorAxis: 100000 * i, // 半径
height: 0
},
label: {
test: 100 * i + 'km',
font: '14px sans-serif',
fillColor: new Cesium.Color(1, 1, 1, 0.5),
eyeOffset: new Cesium.Cartesian3(100000 * i, 0, 0) // eyeOffset相对圆心偏移
}
})
}