标记便签抬至高空,确保深度排序盖在城市/国家名上层
This commit is contained in:
@@ -10,6 +10,10 @@ const TERRAIN_URL =
|
|||||||
// 点击标记后飞到的目标高度(米,与初始视图一致,保证左键拖拽始终是“整球旋转”)
|
// 点击标记后飞到的目标高度(米,与初始视图一致,保证左键拖拽始终是“整球旋转”)
|
||||||
const FLY_TO_HEIGHT = 7.2e6;
|
const FLY_TO_HEIGHT = 7.2e6;
|
||||||
|
|
||||||
|
// 标记便签的离地高度(米):抬到高空,使其 bounding 球比城市/国家名更靠相机,
|
||||||
|
// 从而在透明通道的深度排序中始终后绘制(盖在标签上层)。
|
||||||
|
const MARKER_ALTITUDE = 50000;
|
||||||
|
|
||||||
// 计算多边形集合的球面面积(km²),用于按国土面积分级国家名字号
|
// 计算多边形集合的球面面积(km²),用于按国土面积分级国家名字号
|
||||||
function sphericalAreaKm2(polys) {
|
function sphericalAreaKm2(polys) {
|
||||||
let area = 0;
|
let area = 0;
|
||||||
@@ -242,14 +246,13 @@ export class CesiumGlobe {
|
|||||||
const noteSelected = makeStickyNote(entry.name, 19, true);
|
const noteSelected = makeStickyNote(entry.name, 19, true);
|
||||||
|
|
||||||
const entity = viewer.entities.add({
|
const entity = viewer.entities.add({
|
||||||
position: Cesium.Cartesian3.fromDegrees(entry.lng, entry.lat),
|
position: Cesium.Cartesian3.fromDegrees(entry.lng, entry.lat, MARKER_ALTITUDE),
|
||||||
billboard: {
|
billboard: {
|
||||||
image: noteNormal.canvas,
|
image: noteNormal.canvas,
|
||||||
scale: noteNormal.scale,
|
scale: noteNormal.scale,
|
||||||
horizontalOrigin: Cesium.HorizontalOrigin.LEFT,
|
horizontalOrigin: Cesium.HorizontalOrigin.LEFT,
|
||||||
verticalOrigin: Cesium.VerticalOrigin.CENTER,
|
verticalOrigin: Cesium.VerticalOrigin.CENTER,
|
||||||
pixelOffset: new Cesium.Cartesian2(0, 0),
|
pixelOffset: new Cesium.Cartesian2(0, 0),
|
||||||
heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
|
|
||||||
disableDepthTestDistance: Number.POSITIVE_INFINITY,
|
disableDepthTestDistance: Number.POSITIVE_INFINITY,
|
||||||
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 1e7),
|
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 1e7),
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user