CALDistance
洛 2021/10/30
# gma.smc.Query.CALDistance(Points, Projection = 'WGS84', Unit = 'meter')1.0.5 +
功能: 【计算距离】。计算输入两点(或多点)之间的距离。
参数:
Points:list||tuple||array
。需要计算距离的两点(或多点)的 X(经度),Y(纬度)坐标。
示例
Points = [(130.1, 45.2), (131.5, 40.2)]
可选参数:
Projection = str
。输入坐标点的坐标系。默认为 WGS84(EPSG:4326)。
Unit = str
。计算距离结果的单位。默认为米(meter)。
其他支持的单位
decimeter(分米),centimeter(厘米),millimeter(毫米),micron(微米),picometer(皮米),fermi(费米),kilometer(千米),inch(英寸),foot(英尺),yard(码),mile(英里),mil(密尔),point(pt 字体大小单位),survey foot(测量英尺),survey mile(测量英里),nautical mile(海里),angstrom(埃),astronomical unit(天文单位),light year(光年),parsec(秒差距)。
返回:float
。
示例:
from gma import smc
1
计算两点之间的距离
Points = [(130.1, 45.2), (131.5, 40.2)]
smc.Query.CALDistance(Points)
1
2
2
>>> 567329.2892521989
计算其他坐标系下两点的距离
Points = [(5089353.92316552, 1528762.07788357), (4552113.0446395, 1736214.64875059)]
# 输入坐标点的坐标系为 EPSG:32650(WGS 84 / UTM zone 50N)
smc.Query.CALDistance(Points, Projection = 'EPSG:32650')
1
2
3
2
3
>>> 575903.0567020334
获得其他距离单位的结果
# 以千米 kilometer 为单位
smc.Query.CALDistance(Points, Projection = 'EPSG:32650', Unit = 'kilometer')
1
2
2
>>> 575.9030567020334