Skip to content

球面数学

🌐 Spherical math

用于球面几何的低级实用程序。

🌐 Low-level utilities for spherical geometry.

geoArea(object)

来源 · 返回指定 GeoJSON 对象 的球面面积,单位为 球面弧度。这是 路径.面积 的球面等价物。

geoBounds(对象)

🌐 geoBounds(object)

[来源](https://github.com/d3/d3-geo/blob/main/src/bounds.js) ·返回指定 GeoJSON 对象的[球形边界框](https://www.jasondavies.com/maps/bounds/)。包围框由二维数组表示:\[[leftbottom], [righttop]],其中left为最小经度,bottom为最小纬度,right为最大经度,top为最大纬度。所有坐标均以度数表示。(注意,在投影平面坐标中,最小纬度通常是最大y值,最大纬度通常是最小y值。)这是球面等价的[路径界限](./path.md#path_bounds)。

geoCentroid(object)

来源 · 返回指定 GeoJSON 对象 的球面质心。这是 path.centroid 的球面等价物。

geoDistance(a, b)

[来源](https://github.com/d3/d3-geo/blob/main/src/distance.js) ·返回两点ab之间的大弧距(弧度)(XX²)。每个点必须指定为两个元素数组 [经度纬度],单位为度数。这是给定两个点的线串时的球面等价物 [path.measure](./path.md#path_measure)。

geoLength(object)

Source · 返回指定 GeoJSON 对象 的大圆弧长度,单位为 弧度。对于多边形,返回外环的周长加上任何内环的周长。这是 path.measure 的球面等效。

geoInterpolate(a, b)

[来源](https://github.com/d3/d3-geo/blob/main/src/interpolate.js) ·给定两个点 ab 返回一个插值函数。每个点必须指定为两个元素数组 [经度纬度],单位为度数。返回的插值函数取一个参数 t,其中 t 是范围从 0 到 1 的数;值为0时返回点a,值为1时返回点b。中间值从a插值到b,沿着穿过ab的大弧线。如果ab是对跖点,则选择一个任意的大弧线。

geoContains(object, point)

[来源](https://github.com/d3/d3-geo/blob/main/src/contains.js) ·当且仅当指定的 GeoJSON 对象包含指定的时返回true;如果对象不包含,则返回false。该点必须指定为两个元素数组 [经度纬度],单位为度数。对于点几何和多点几何,采用精确检验;对于球体,真总是返回;对于其他几何形状,则应用ε阈值。

geoRotation(angles)

来源 · 返回给定 angles旋转函数angles 必须是一个包含两个或三个数字元素 [lambda, phi, gamma] 的数组,指定围绕每个球面轴 的旋转角度(以度为单位)。(这些对应于偏航、俯仰和滚转。) 如果省略旋转角 gamma,默认值为 0。另见 projection.rotate

旋转()

🌐 rotation(point)

[来源](https://github.com/d3/d3-geo/blob/main/src/rotation.js) ·返回一个新的数组 [经度纬度],度数表示该*点**的旋转点。该点必须指定为两个元素数组 [经度纬度],单位为度数。

rotation.invert(point)

来源 · 返回一个新的数组 [经度, 纬度](以度为单位),表示给定旋转 的位置;这是 旋转 的逆操作。该点必须以一个两元素数组 [经度, 纬度](以度为单位)来指定。