feat: 为卫星实体和覆盖范围添加随机基色
This commit is contained in:
@ -183,6 +183,9 @@ export class HCesiumViewerCls {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 生成随机基色
|
||||||
|
const randomBaseColor = Cesium.Color.fromRandom();
|
||||||
|
|
||||||
// 创建卫星实体
|
// 创建卫星实体
|
||||||
const satelliteEntity = this.viewer.entities.add({
|
const satelliteEntity = this.viewer.entities.add({
|
||||||
id: id,
|
id: id,
|
||||||
@ -200,7 +203,7 @@ export class HCesiumViewerCls {
|
|||||||
// 使用点表示卫星
|
// 使用点表示卫星
|
||||||
point: {
|
point: {
|
||||||
pixelSize: 8,
|
pixelSize: 8,
|
||||||
color: Cesium.Color.YELLOW,
|
color: randomBaseColor, // 使用随机基色
|
||||||
outlineColor: Cesium.Color.WHITE,
|
outlineColor: Cesium.Color.WHITE,
|
||||||
outlineWidth: 1,
|
outlineWidth: 1,
|
||||||
},
|
},
|
||||||
@ -209,7 +212,7 @@ export class HCesiumViewerCls {
|
|||||||
resolution: 1,
|
resolution: 1,
|
||||||
material: new Cesium.PolylineGlowMaterialProperty({
|
material: new Cesium.PolylineGlowMaterialProperty({
|
||||||
glowPower: 0.15,
|
glowPower: 0.15,
|
||||||
color: Cesium.Color.BLUE,
|
color: randomBaseColor, // 使用随机基色
|
||||||
}),
|
}),
|
||||||
width: 2,
|
width: 2,
|
||||||
leadTime: (orbitDurationHours * 3600) / 2, // 显示未来一半时间的轨迹
|
leadTime: (orbitDurationHours * 3600) / 2, // 显示未来一半时间的轨迹
|
||||||
@ -308,12 +311,12 @@ export class HCesiumViewerCls {
|
|||||||
ellipse: {
|
ellipse: {
|
||||||
semiMajorAxis: coverageRadius,
|
semiMajorAxis: coverageRadius,
|
||||||
semiMinorAxis: coverageRadius, // 假设圆形覆盖
|
semiMinorAxis: coverageRadius, // 假设圆形覆盖
|
||||||
material: Cesium.Color.RED.withAlpha(0.3), // 半透明红色
|
material: randomBaseColor.withAlpha(0.2), // 基于随机基色的半透明填充
|
||||||
heightReference: Cesium.HeightReference.CLAMP_TO_GROUND, // 贴合地形
|
heightReference: Cesium.HeightReference.CLAMP_TO_GROUND, // 贴合地形
|
||||||
outline: true,
|
outline: true,
|
||||||
outlineColor: Cesium.Color.BLACK.withAlpha(0.5),
|
outlineColor: randomBaseColor.withAlpha(0.8), // 基于随机基色的较深半透明轮廓
|
||||||
outlineWidth: 1,
|
outlineWidth: 2, //
|
||||||
// fill: true, // 默认填充
|
granularity: Cesium.Math.toRadians(1), // 控制椭圆边缘平滑度
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
// --- 覆盖范围结束 ---
|
// --- 覆盖范围结束 ---
|
||||||
@ -328,7 +331,7 @@ export class HCesiumViewerCls {
|
|||||||
positions: orbitPositions,
|
positions: orbitPositions,
|
||||||
width: 1,
|
width: 1,
|
||||||
material: new Cesium.PolylineDashMaterialProperty({
|
material: new Cesium.PolylineDashMaterialProperty({
|
||||||
color: Cesium.Color.CYAN.withAlpha(0.5), // 半透明青色虚线
|
color: randomBaseColor.withAlpha(0.5), // 基于随机基色的半透明虚线
|
||||||
dashLength: 16,
|
dashLength: 16,
|
||||||
}),
|
}),
|
||||||
clampToGround: false, // 轨道不贴地
|
clampToGround: false, // 轨道不贴地
|
||||||
|
Reference in New Issue
Block a user