通过方程式在笛卡尔坐标中定义的四面体表面
^
(x / a)^2 + (y / b)^2 + (z / c)^2 = 1 . 主要使用
以表示行星体的形状.
而不是直接构造此对象, 提供的其中之一
常数通常被使用.
| Name | Type | Default | Description |
|---|---|---|---|
x |
number |
0
|
optional The radius in the x direction. |
y |
number |
0
|
optional The radius in the y direction. |
z |
number |
0
|
optional The radius in the z direction. |
Throws:
-
DeveloperError : All radii components must be greater than or equal to zero.
Members
static Cesium.Ellipsoid.default : Ellipsoid
未指定时使用的默认椭圆形.
Example:
Cesium.Ellipsoid.default = Cesium.Ellipsoid.MOON;
// Apollo 11 landing site
const position = Cesium.Cartesian3.fromRadians(
0.67416,
23.47315,
);
static constant Cesium.Ellipsoid.MARS : Ellipsoid
An Ellipsoid instance initialized to a sphere with the mean radii of Mars.
资料来源:-NT+0
static constant Cesium.Ellipsoid.MOON : Ellipsoid
Ellipsoid 实例初始化为月球半径的球体.
用于将对象组合成数组的元素数量.
static constant Cesium.Ellipsoid.UNIT_SPHERE : Ellipsoid
初始化为(1.0、1.0、1.0)的“NT++0+”实例.
static constant Cesium.Ellipsoid.WGS84 : Ellipsoid
Ellipsoid 实例初始化为 WGS84 标准.
获得椭圆的最大半径.
获得椭圆最小半径.
readonly oneOverRadii : Cartesian3
得到一个在椭圆形的弧度.
readonly oneOverRadiiSquared : Cartesian3
得到一个在椭圆形的平方弧度之上.
readonly radii : Cartesian3
获得椭圆形的弧度.
readonly radiiSquared : Cartesian3
获得椭圆形的平方弧度.
readonly radiiToTheFourth : Cartesian3
使椭圆形的弧度提升到第四强.
Methods
static Cesium.Ellipsoid.clone(ellipsoid, result) → Ellipsoid
Duplicates an Ellipsoid instance.
| Name | Type | Description |
|---|---|---|
ellipsoid |
Ellipsoid | 椭圆形重复 . |
result |
Ellipsoid | optional 存储结果的对象, 或如果是新对象, 未定义的对象 应创建实例. |
Returns:
The cloned Ellipsoid. (Returns undefined if ellipsoid is undefined)
static Cesium.Ellipsoid.fromCartesian3(cartesian, result) → Ellipsoid
从一个笛卡尔计算出 Ellipsoid , 在 x, y, 和 z 方向中指定弧度 .
| Name | Type | Default | Description |
|---|---|---|---|
cartesian |
Cartesian3 |
Cartesian3.ZERO
|
optional The ellipsoid's radius in the x, y, and z directions. |
result |
Ellipsoid | optional 存储结果的对象, 或如果是新对象, 未定义的对象 应创建实例. |
Returns:
一个新的NT+0 例.
Throws:
-
DeveloperError : All radii components must be greater than or equal to zero.
将所提供的实例存储到所提供的数组中.
| Name | Type | Default | Description |
|---|---|---|---|
value |
Ellipsoid | 包装的价值. | |
array |
Array.<number> | 装入的阵列. | |
startingIndex |
number |
0
|
optional The index into the array at which to start packing the elements. |
Returns:
装入的阵列
static Cesium.Ellipsoid.unpack(array, startingIndex, result) → Ellipsoid
从组合的数组中获取实例 .
| Name | Type | Default | Description |
|---|---|---|---|
array |
Array.<number> | 装填的阵列. | |
startingIndex |
number |
0
|
optional The starting index of the element to be unpacked. |
result |
Ellipsoid | optional 存储结果的对象. |
Returns:
未提供修改的结果参数或新的 NT% 0 实例 .
cartesianArrayToCartographicArray(cartesians, result) → Array.<Cartographic>
将提供的笛卡尔数组转换为制图数组.
| Name | Type | Description |
|---|---|---|
cartesians |
Array.<Cartesian3> | 一系列笛卡尔式的位置. |
result |
Array.<Cartographic> | optional 存储结果的对象 . |
Returns:
未提供修改的结果参数或新矩阵实例 .
Example:
//Create an array of Cartesians and determine their Cartographic representation on a WGS84 ellipsoid.
const positions = [new Cesium.Cartesian3(17832.12, 83234.52, 952313.73),
new Cesium.Cartesian3(17832.13, 83234.53, 952313.73),
new Cesium.Cartesian3(17832.14, 83234.54, 952313.73)]
const cartographicPositions = Cesium.Ellipsoid.WGS84.cartesianArrayToCartographicArray(positions);
cartesianToCartographic(cartesian, result) → Cartographic
将提供的笛卡尔转换为制图代表.
笛卡尔在椭圆形的中心未定义.
| Name | Type | Description |
|---|---|---|
cartesian |
Cartesian3 | 转换为制图代表的笛卡尔立场. |
result |
Cartographic | optional 存储结果的对象 . |
Returns:
修改后的结果参数,如果没有提供新 Cartographic 实例,或者如果笛卡尔位于椭圆的中心,则未定义.
Example:
//Create a Cartesian and determine it's Cartographic representation on a WGS84 ellipsoid.
const position = new Cesium.Cartesian3(17832.12, 83234.52, 952313.73);
const cartographicPosition = Cesium.Ellipsoid.WGS84.cartesianToCartographic(position);
cartographicArrayToCartesianArray(cartographics, result) → Array.<Cartesian3>
将所提供的制图数组转换为笛卡尔数组.
| Name | Type | Description |
|---|---|---|
cartographics |
Array.<Cartographic> | 一系列制图位置. |
result |
Array.<Cartesian3> | optional 存储结果的对象 . |
Returns:
未提供修改的结果参数或新矩阵实例 .
Example:
//Convert an array of Cartographics and determine their Cartesian representation on a WGS84 ellipsoid.
const positions = [new Cesium.Cartographic(Cesium.Math.toRadians(21), Cesium.Math.toRadians(78), 0),
new Cesium.Cartographic(Cesium.Math.toRadians(21.321), Cesium.Math.toRadians(78.123), 100),
new Cesium.Cartographic(Cesium.Math.toRadians(21.645), Cesium.Math.toRadians(78.456), 250)];
const cartesianPositions = Cesium.Ellipsoid.WGS84.cartographicArrayToCartesianArray(positions);
cartographicToCartesian(cartographic, result) → Cartesian3
将提供的制图转换为笛卡尔代表.
| Name | Type | Description |
|---|---|---|
cartographic |
Cartographic | 地图位置. |
result |
Cartesian3 | optional 存储结果的对象 . |
Returns:
如果未提供修改的结果参数或新的 NT% 0 实例 .
Example:
//Create a Cartographic and determine it's Cartesian representation on a WGS84 ellipsoid.
const position = new Cesium.Cartographic(Cesium.Math.toRadians(21), Cesium.Math.toRadians(78), 5000);
const cartesianPosition = Cesium.Ellipsoid.WGS84.cartographicToCartesian(position);
clone(result) → Ellipsoid
Duplicates an Ellipsoid instance.
| Name | Type | Description |
|---|---|---|
result |
Ellipsoid | optional 存储结果的对象, 或如果是新对象, 未定义的对象 应创建实例. |
Returns:
The cloned Ellipsoid.
Compares this Ellipsoid against the provided Ellipsoid componentwise and returns
-NT+0+Treal NT+1+,如果两者是相等的, NT+2+false NT+3+否则.
| Name | Type | Description |
|---|---|---|
right |
Ellipsoid | optional 另一个是... NT... 0... |
Returns:
-NT+0+Treal NT+1+,如果两者是相等的, NT+2+false NT+3+否则.
geocentricSurfaceNormal(cartesian, result) → Cartesian3
计算单元矢量从这个椭圆形中心方向向提供的笛卡尔位置方向的方向.
| Name | Type | Description |
|---|---|---|
cartesian |
Cartesian3 | 用于确定地心正常的笛卡尔. |
result |
Cartesian3 | optional 存储结果的对象 . |
Returns:
如果未提供修改的结果参数或新的 NT% 0 实例 .
geodeticSurfaceNormal(cartesian, result) → Cartesian3
计算平面正切值在所提供位置的椭圆表面的正常值.
| Name | Type | Description |
|---|---|---|
cartesian |
Cartesian3 | 用于确定表面正常的笛卡尔位置. |
result |
Cartesian3 | optional 存储结果的对象 . |
Returns:
未提供修改的结果参数或新的 NT% 0 实例, 或无法找到普通的未定义 .
geodeticSurfaceNormalCartographic(cartographic, result) → Cartesian3
计算平面正切值在所提供位置的椭圆表面的正常值.
| Name | Type | Description |
|---|---|---|
cartographic |
Cartographic | 用于确定大地测量常态的制图位置. |
result |
Cartesian3 | optional 存储结果的对象 . |
Returns:
如果未提供修改的结果参数或新的 NT% 0 实例 .
getLocalCurvature(surfacePosition, result) → Cartesian2
计算表面特定位置的椭圆曲线.
| Name | Type | Description |
|---|---|---|
surfacePosition |
Cartesian3 | 计算曲率的椭圆表面位置. |
result |
Cartesian2 | optional 复制结果的笛卡尔, 或者未定义创建和返回新实例 . |
Returns:
所提供位置椭圆表面的局部曲面,位于东方向和北方向.
Throws:
-
DeveloperError : position is required.
getSurfaceNormalIntersectionWithZAxis(position, buffer, result) → Cartesian3|undefined
计算一个点,即表面正常与z轴的交叉点.
| Name | Type | Default | Description |
|---|---|---|---|
position |
Cartesian3 | 该位置。 必须在椭圆表面. | |
buffer |
number |
0.0
|
optional 在检查点是否位于椭圆内时,从椭圆大小中减去的缓冲. 在土中,有共同的土数据,不需要这种缓冲,因为交点总是(相对)非常靠近中心. In WGS84 datum, intersection point is at max z = +-42841.31151331382 (0.673% of z-axis). 如果主轴/轴旋转比 2 的平方根大, 截面点可能位于椭圆形之外 |
result |
Cartesian3 | optional 复制结果的笛卡尔,或未定义创建和 返回一个新实例. |
Returns:
如果在椭圆形内,则未定义的交叉点
Throws:
-
DeveloperError : position is required.
-
DeveloperError : Ellipsoid must be an ellipsoid of revolution (radii.x == radii.y).
-
DeveloperError : Ellipsoid.radii.z must be greater than 0.
scaleToGeocentricSurface(cartesian, result) → Cartesian3
沿地理中心表面正常比例化提供的笛卡尔位置
因此它就在这个椭圆的表面.
| Name | Type | Description |
|---|---|---|
cartesian |
Cartesian3 | 笛卡尔人的地位可以放大. |
result |
Cartesian3 | optional 存储结果的对象 . |
Returns:
如果未提供修改的结果参数或新的 NT% 0 实例 .
scaleToGeodeticSurface(cartesian, result) → Cartesian3
沿大地表平面平面测量提供的笛卡尔位置
因此它就在这个椭圆的表面。 如果职位是
在椭圆中心,此函数返回未定义.
| Name | Type | Description |
|---|---|---|
cartesian |
Cartesian3 | 笛卡尔人的地位可以放大. |
result |
Cartesian3 | optional 存储结果的对象 . |
Returns:
修改后的结果参数,如果没有提供新的 NT% 0 实例,或者如果位置位于中心,则未定义 .
计算椭圆表面矩形表面面积的近似值
高斯 - 勒根德雷 第十顺序四重奏.
| Name | Type | Description |
|---|---|---|
rectangle |
Rectangle | 用于计算表面积的矩形. |
Returns:
此椭圆形表面的矩形大致面积.
创建一个字符串,在格式“( radii.x , radii.y , radii.z )”中代表此 Ellipsoid .
Returns:
表示这个椭圆形的字符串,格式为“( radii.x , radii.y , radii.z )”.
transformPositionFromScaledSpace(position, result) → Cartesian3
笛卡尔式 X, Y, Z 位置 通过乘法从椭圆缩放空间中
its components by the result of
Ellipsoid#radii.
| Name | Type | Description |
|---|---|---|
position |
Cartesian3 | 变化之位. |
result |
Cartesian3 | optional 复制结果或未定义创建和 返回一个新实例. |
Returns:
在未缩放空间中表达的立场 。 返回的实例是
如果不是未定义,或者有一个新的实例.
transformPositionToScaledSpace(position, result) → Cartesian3
笛卡尔式 X, Y, Z 位置乘以椭圆比例空间
its components by the result of
Ellipsoid#oneOverRadii.
| Name | Type | Description |
|---|---|---|
position |
Cartesian3 | 变化之位. |
result |
Cartesian3 | optional 复制结果或未定义创建和 返回一个新实例. |
Returns:
在缩放空间中表达的立场。 返回的实例是
如果不是未定义,或者有一个新的实例.