Cartesian3

优质
小牛编辑
120浏览
2023-12-01

new LSGlobe.Cartesian3(x, y, z)

一个三维笛卡尔坐标点。

NameTypeDefaultDescription
x

Number

0.0

optional
The X 分量.
y

Number

0.0

optional
The Y 分量.
z

Number

0.0

optional
The Z 分量.
See:
  • Cartesian2
  • Cartesian4
  • Packable

Members

x : Number

The X 分量.

Default Value:
0.0

y : Number

The Y 分量.

Default Value:
0.0

z : Number

The Z 分量.

Default Value:
0.0

Methods

toString() → String

将笛卡尔坐标转换为以(x, y, z)格式表示的字符串。

Returns:

以(x, y, z)格式表示笛卡尔坐标的字符串。

staticLSGlobe.Cartesian3.add(left, right, result) → Cartesian3

计算两个Cartesians变量相加

NameTypeDescription
left

Cartesian3

第一个Cartesian.
right

Cartesian3

第二个Cartesian.
result

Cartesian3

存储结果的对象
Returns:

结果

staticLSGlobe.Cartesian3.clone(cartesian, result) → Cartesian3

复制一个Cartesian3实例

NameTypeDescription
cartesian

Cartesian3

待复制的Cartesian对象
result

Cartesian3

optional
存储结果的对象
Returns:

经修改的结果参数,如果没有提供则返回一个新的Cartesian3实例。如果cartesian未定义,则返回undefined

staticLSGlobe.Cartesian3.distance(left, right) → Number

计算两点的距离。

NameTypeDescription
left

Cartesian3

用于计算距离的第一个点。
right

Cartesian3

用于计算距离的第二个点。
Returns:

距离值

Example:
// 计算两点的距离,返回1.0
var d = LSGlobe.Cartesian3.distance(new LSGlobe.Cartesian3(1.0, 0.0, 0.0), new LSGlobe.Cartesian3(2.0, 0.0, 0.0));

staticLSGlobe.Cartesian3.dot(left, right) → Number

计算两个Cartesian3变量的点乘。

NameTypeDescription
left

Cartesian3

第一个Cartesian3变量.
right

Cartesian3

第二个Cartesian3变量.
Returns:

点乘的结果.

staticLSGlobe.Cartesian3.equals(left, right) → Boolean

逐一比较两个cartesian变量的X Y Z分量,如果相等则返回true ,否则返回false

NameTypeDescription
left

Cartesian3

optional
第一个Cartesian.
right

Cartesian3

optional
第二个Cartesian.
Returns:

如果相等则返回true ,否则返回false

staticLSGlobe.Cartesian3.fromArray(array, startingIndex, result) → Cartesian3

从数组里的三个连续元素创建一个Cartesian3实例。

NameTypeDefaultDescription
array

Array.<Number>

数组对象,数组中的三个连续元素分别对应于x、y、z分量。
startingIndex

Number

0

optional
第一个元素在数组中的偏移量,即数组的第"startingIndex+1"个元素对应x分量。
result

Cartesian3

optional
用于存储结果的对象。
Returns:

经修改的结果参数,如果没有提供则返回一个新的Cartesian3实例。

Example:
// 创建(1.0, 2.0, 3.0)的Cartesian3实例
var v = [1.0, 2.0, 3.0];
var p = LSGlobe.Cartesian3.fromArray(v);
// 创建(1.0, 2.0, 3.0)的Cartesian3实例,指定了偏移为2 ,则第3个数据对应着x分量。
var v2 = [0.0, 0.0, 1.0, 2.0, 3.0];
var p2 = LSGlobe.Cartesian3.fromArray(v2, 2);

staticLSGlobe.Cartesian3.fromCartesian4(cartesian, result) → Cartesian3

根据已知的Cartesian4创建一个Cartesian3实例。将保留Cartesian4的x、y、z分量,丢弃w分量。

NameTypeDescription
cartesian

Cartesian4

用于创建Cartesian3实例的Cartesian4对象。
result

Cartesian3

optional
用于存储结果的对象。
Returns:

经修改的结果参数,如果没有提供则返回一个新的Cartesian3实例。

staticLSGlobe.Cartesian3.fromDegrees(longitude, latitude, height, ellipsoid, result) → Cartesian3

将以度为单位的经、纬度数值转换为笛卡尔坐标。

NameTypeDefaultDescription
longitude

Number

以度为单位的经度值
latitude

Number

以度为单位的纬度值
height

Number

0.0

optional
以米为单位的高度值。
ellipsoid

Ellipsoid

Ellipsoid.WGS84

optional
所处的椭球体。
result

Cartesian3

optional
用于存储结果的对象。
Returns:

转换后的位置坐标。

Example:
var position = LSGlobe.Cartesian3.fromDegrees(-115.0, 37.0);

staticLSGlobe.Cartesian3.fromDegreesArrayHeights(coordinates, ellipsoid, result) → Array.<Cartesian3>

返回给定经度、纬度和高度值得Cartesian3的位置数组。

NameTypeDefaultDescription
coordinates

Array.<Number>

一个[经度,纬度,高度,经度,纬度,高度......]循环的数组。
ellipsoid

Ellipsoid

Ellipsoid.WGS84

optional
点位所在的椭球体
result

Array.<Cartesian3>

optional
Cartesian3数组
Returns:

返回的position数组

Example:
var positions = LSGlobe.Cartesian3.fromDegreesArrayHeights([-115.0, 37.0, 100000.0, -107.0, 33.0, 150000.0]);

staticLSGlobe.Cartesian3.fromElements(x, y, z, result) → Cartesian3

根据x、y、z坐标创建一个Cartesian3实例。

NameTypeDescription
x

Number

The x 坐标
y

Number

The y 坐标.
z

Number

The z 坐标.
result

Cartesian3

optional
存储结果的对象.
Returns:

经修改的结果参数,如果没有提供则返回一个新的Cartesian3实例。.

staticLSGlobe.Cartesian3.fromRadians(longitude, latitude, height, ellipsoid, result) → Cartesian3

将以弧度为单位的经、纬度数值转换为笛卡尔坐标

NameTypeDefaultDescription
longitude

Number

以弧度为单位的经度值。
latitude

Number

以弧度为单位的纬度值
height

Number

0.0

optional
以米为单位的高度值。
ellipsoid

Ellipsoid

Ellipsoid.WGS84

optional
所处的椭球体。
result

Cartesian3

optional
用于存储结果的对象。
Returns:

转换后的位置坐标。

Example:
var position = LSGlobe.Cartesian3.fromRadians(-2.007, 0.645);

staticLSGlobe.Cartesian3.fromSpherical(spherical, result) → Cartesian3

将球面坐标转换为笛卡尔(Cartesian3)坐标。

NameTypeDescription
spherical

Spherical

待转换的球面坐标。
result

Cartesian3

optional
存储结果的对象。
Returns:

经修改的结果参数,如果没有提供则返回一个新的Cartesian3实例。

staticLSGlobe.Cartesian3.normalize(cartesian, result) → Cartesian3

由提供的cartesian坐标值计算出normalized形式

NameTypeDescription
cartesian

Cartesian3

需要转换的cartesian坐标值
result

Cartesian3

存储结果的对象.
Returns:

返回值

staticLSGlobe.Cartesian3.projectVector(a, b, result) → Cartesian3

将A向量投影到B向量上。

NameTypeDescription
a

Cartesian3

需要投影的向量A
b

Cartesian3

投影到的B向量
result

Cartesian3

投影结果
Returns:

返回投影后的结果参数

staticLSGlobe.Cartesian3.subtract(left, right, result) → Cartesian3

计算两个Cartesians变量相减

NameTypeDescription
left

Cartesian3

第一个Cartesian
right

Cartesian3

T第二个Cartesian
result

Cartesian3

存储结果的对象
Returns:

返回的结果