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) 返回的高度值是指定地图位置的地形高度,以米为单位。

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

相关推荐
一个有理想的摸鱼选手1 天前
CesiumLite-开箱即用的轻量化三维地图包(持续更新中...)
gis·cesium
不浪brown11 天前
重磅开源!Cesium实现高度雾仿真,谁再说Cesium做不出好效果?
cesium
青山Coding12 天前
Cesium基础(五)实体创建与拖拽
前端·cesium
Mapmost15 天前
全新升级!3DTiles加载速度Mapmost完胜Cesium
性能优化·webgl·cesium
不浪brown15 天前
告别静态水面的平庸!Cesium中实现水面倒影+动态流向的逼真水特效
cesium
汪洪墩16 天前
使用Mars3d加载热力图的时候,出现阴影碎片
开发语言·前端·javascript·vue.js·cesium
springfe010117 天前
Cesium 3D地图 图元 圆柱 图片实现
前端·cesium
不浪brown19 天前
浏览器3D渲染卡成PPT?6个性能优化指标,你都知道吗?
three.js·cesium
GIS之家25 天前
vue+cesium示例:3D热力图(附源码下载)
前端·vue.js·3d·cesium·webgis·3d热力图
不浪brown1 个月前
开源!矢量建筑白模泛光特效以及全国77个大中城市的矢量shp数据获取!
前端·cesium