用于处理地理坐标的函数
greatCircleDistance
使用 大圆公式 计算地球表面两个点之间的距离。
输入参数
lon1Deg
— 第一个点的经度,单位为度。范围:[-180°, 180°]
。lat1Deg
— 第一个点的纬度,单位为度。范围:[-90°, 90°]
。lon2Deg
— 第二个点的经度,单位为度。范围:[-180°, 180°]
。lat2Deg
— 第二个点的纬度,单位为度。范围:[-90°, 90°]
。
正值对应北纬和东经,负值对应南纬和西经。
返回值
地球表面两个点之间的距离,单位为米。
当输入参数值超出范围时,会引发异常。
示例
geoDistance
类似于 greatCircleDistance
,但计算基于 WGS-84 椭球体的距离,而不是球体。这是对地球大地水准面的更精确的近似。
绩效与 greatCircleDistance
相同(没有性能下降)。建议使用 geoDistance
来计算地球上的距离。
技术说明:对于足够接近的点,我们在坐标的中点处使用切平面上的度量计算距离。
输入参数
lon1Deg
— 第一个点的经度,单位为度。范围:[-180°, 180°]
。lat1Deg
— 第一个点的纬度,单位为度。范围:[-90°, 90°]
。lon2Deg
— 第二个点的经度,单位为度。范围:[-180°, 180°]
。lat2Deg
— 第二个点的纬度,单位为度。范围:[-90°, 90°]
。
正值对应北纬和东经,负值对应南纬和西经。
返回值
地球表面两个点之间的距离,单位为米。
当输入参数值超出范围时,会引发异常。
示例
greatCircleAngle
使用 大圆公式 计算地球表面两个点之间的中心角。
输入参数
lon1Deg
— 第一个点的经度,单位为度。lat1Deg
— 第一个点的纬度,单位为度。lon2Deg
— 第二个点的经度,单位为度。lat2Deg
— 第二个点的纬度,单位为度。
返回值
两个点之间的中心角,单位为度。
示例
pointInEllipses
检查点是否属于至少一个椭圆。 坐标在笛卡尔坐标系统中是几何的。
输入参数
x, y
— 平面上点的坐标。xᵢ, yᵢ
— 第i
个椭圆的中心坐标。aᵢ, bᵢ
— 第i
个椭圆的轴长,分别以 x 和 y 坐标为单位。
输入参数必须为 2+4⋅n
,其中 n
是椭圆的数量。
返回值
如果点在至少一个椭圆内,则返回 1
;如果不在,则返回 0
。
示例
pointInPolygon
检查点是否属于平面上的多边形。
输入值
(x, y)
— 平面上点的坐标。数据类型为 Tuple — 一对数字的元组。[(a, b), (c, d) ...]
— 多边形的顶点。数据类型为 Array。每个顶点由坐标对(a, b)
表示。顶点应按顺时针或逆时针顺序排列。最小顶点数为 3。多边形必须是常量。- 函数还支持带孔的多边形(切除部分)。在这种情况下,使用函数的附加参数添加定义切除部分的多边形。函数不支持非简单连通多边形。
返回值
如果点在多边形内,则返回 1
;如果不在,则返回 0
。
如果点位于多边形边界上,函数可能返回 0 或 1。
示例