cesium中获取高度的误区

复制代码
this.ellipsoid = viewer.scene.globe.ellipsoid;
var cartesian = viewer.camera.pickEllipsoid(e.position, this.ellipsoid);

if(cartesian){
	// 苗卡尔椭球体的三维坐标 转 地图坐标(弧度)
	 var cartographic = viewer.scene.globe.ellipsoid.cartesianToCartographic(cartesian);
	 // 地图坐标(弧度) 转 十进制度数 toFixed保留小数点后几位
	 var log_String = Cesium.Math.toDegrees(cartographic.longitude).toFixed(8);//经度
	 var lat_String = Cesium.Math.toDegrees(cartographic.latitude).toFixed(8);//纬度
	 // 返回的高度值是相机当前位置的海拔高度,以米为单位
	 var alt_String = (viewer.camera.positionCartographic.height/1000).toFixed(2);//视角高
	 // 返回的高度值是指定地图位置的地形高度,以米为单位
	 var elec_String = viewer.scene.globe.getHeight(cartographic).toFixed(4);//海拔
	 $this.latObj = {log:log_String,lat:lat_String,alt:alt_String,elec:elec_String}
}

注意上面:

viewer.camera.positionCartographic.height 返回的高度值是相机当前位置的海拔高度,以米为单位。

viewer.scene.globe.getHeight(cartographic) 返回的高度值是指定地图位置的地形高度,以米为单位。

有时获取的是指定位置的地形高度,不是当前相机的高度

相关推荐
不浪brown3 天前
全面开发!可同时支持“倾斜模型”以及“地形”的填挖方(土方)分析工具
cesium
臣臣臣臣臣什么臣5 天前
解决 Cesium 中 WFS 图层变形问题:从现象到根源的完整排查之路
cesium
咔咔一顿操作6 天前
第七章 Cesium 3D 粒子烟花效果案例解析:从原理到完整代码
人工智能·3d·信息可视化·cesium
咔咔一顿操作10 天前
第六章 Cesium 实现简易河流效果
microsoft·3d·cesium
成熟的API调用专家11 天前
Cesium 中 Entity Polyline 的完整属性指南
cesium
成熟的API调用专家11 天前
cesium entity point 属性概览
cesium
striveLei14 天前
Cesium 自定义深色(各种颜色)地图特效
cesium
GDAL15 天前
Cesium入门教程(二)环境搭建(HTML版)
html·cesium
艾欧泽亚白魔法师19 天前
Cesium虚线圆
cesium
青山Coding24 天前
Cesium应用(三):全球气压可视化与气象时序图实现方案
前端·gis·cesium