用途:为 CesiumJS 应用提供数学基础,包括坐标类型、单位换算、椭球几何、参考系变换、包围体、相交测试与投影。
主要能力:Cartesian3 表示 ECEF 位置与向量,支持 fromDegrees、fromDegreesArray、fromRadians 等工厂方法及加减、叉积、归一化、插值等运算;Cartographic 表示经纬高(弧度与米),可与 Cartesian3 互转;CesiumMath 提供角度换算、clamp、lerp、角度范围归一化与浮点比较;Ellipsoid 提供 WGS84、UNIT_SPHERE、MOON、MARS 及地表法线、投影到椭球面等;Transforms 构建局部到 ECEF 的 4x4 矩阵,常用 eastNorthUpToFixedFrame、headingPitchRollToFixedFrame、headingPitchRollQuaternion 及 NED/NUE 等;Matrix4 为列主序 4x4 变换,支持组合、求逆、分解;Quaternion 支持轴角、HPR、旋转矩阵构造与 slerp;EllipsoidGeodesic 计算大圆表面距离并插值采样;BoundingSphere 由点集生成;Ray 与 IntersectionTests 提供射线与平面、椭球、三角形求交;SceneTransforms 做世界坐标到屏幕坐标转换;GeographicProjection 与 WebMercatorProjection 提供投影与反投影。
使用方式:从 "cesium" 导入所需类型,角度统一用弧度,可用 Math.toRadians 转换;数学类型采用传入 result 参数复用分配的模式。注意 1.139 起 Cartesian2/3/4 为 ES6 类,工厂方法前不能加 new,仅真实构造函数保留 new。
适用场景:三维地球上的模型摆放与朝向、局部坐标偏移、城市间距离标注、地理围栏与拾取、投影转换等。
限制:资料未提供收费、平台与性能数据;两点距离应使用 EllipsoidGeodesic.surfaceDistance 而非 Cartesian3.distance 的弦长;Matrix4.inverseTransformation 仅适用于刚体变换。