最新Cesium可视化系统实战视频课程
Cesium是一个强大的3D地理可视化工具,广泛用于显示地球及其上方的空间对象。它的底层实现和功能设计涉及多种坐标系,用于表示和处理地球表面、地球空间以及屏幕空间的不同数据类型。理解这些坐标系以及它们之间的转换,对于高效使用Cesium至关重要。本文将详细讲解Cesium中常见的坐标系以及它们之间的转换。
一、Cesium中的主要坐标系
1. 地心地固坐标系(ECEF: Earth-Centered, Earth-Fixed)

- 定义:
ECEF是一种地球固定坐标系,原点位于地球质心。X轴指向赤道与本初子午线的交点,Y轴位于赤道面上,与X轴正交,Z轴指向北极。 - 用途:
用于表示地球固定参考框架下的绝对位置,适合处理全球范围的三维坐标。
2. 地理坐标系(WGS84: World Geodetic System 1984)
- 定义:
WGS84是一种基于椭球模型的地理坐标系,通常使用经度(Longitude)、纬度(Latitude)和高度(Height)来表示点的位置。
-
- 经度: 描述点相对于本初子午线的角度(范围:[-180°, 180°])。
- 纬度: 描述点相对于赤道的角度(范围:[-90°, 90°])。
- 高度: 描述点相对于椭球面的垂直距离。
- 用途:
用于表示地球表面点的位置,广泛用于GPS和地理信息系统(GIS)。
3. 局部东北天坐标系(ENU: East-North-Up)
- 定义:
ENU坐标系是一种局部坐标系,原点通常定义为某个参考点。坐标轴方向为:
-
- X轴指向东(East)。
- Y轴指向北(North)。
- Z轴指向天顶方向(Up)。
- 用途:
用于局部空间中表示相对位置,例如无人机或车辆在某一区域内的相对运动。
4. 屏幕坐标系(Screen Coordinates)
- 定义:
Cesium中的屏幕坐标系是一个二维坐标系,原点位于屏幕左下角。横轴(X)向右,纵轴(Y)向上。 - 用途:
用于处理用户界面相关的交互和绘制。
5. 世界坐标系(World Coordinates)
- 定义:
Cesium中还有一种用于渲染的内部世界坐标系,其原点与地心一致,通常以WebGL为基础。 - 用途:
用于处理3D渲染相关的坐标变换。
二、Cesium中的坐标系转换
Cesium提供了丰富的工具和方法,便于在不同坐标系之间进行转换。以下是常见转换类型及其实现方式。
1. 地理坐标系(WGS84)↔ 地心地固坐标系(ECEF)
转换方法
- 从WGS84转为ECEF:
const cartographic = Cesium.Cartographic.fromDegrees(longitude, latitude, height);
const ecef = Cesium.Cartesian3.fromCartographic(cartographic);
- 从ECEF转为WGS84:
const cartographic = Cesium.Cartographic.fromCartesian(ecef);
const longitude = Cesium.Math.toDegrees(cartographic.longitude);
const latitude = Cesium.Math.toDegrees(cartographic.latitude);
const height = cartographic.height;
应用场景
- 将GPS数据转换为地球中心固定的三维坐标,用于全球范围的空间计算。
- 将三维空间中的点转换回人类可读的经纬度格式。
声明:本站资源是网友搜集整理而成,(除广告页面及原创教程)版权均归原作者所有。本站仅提供一个观摩学习的环境,将不对任何资源负法律责任。本站为纯属分享资源站点,网站内所有资源仅供学习交流之用,请勿用作商业用途(CC协议除外),并请于下载后24小时内删除,谢谢。若无意中侵犯到您的版权利益,请来信联系我们,我们会在收到信息后会尽快给予处理!