首页 > 其他分享 >根据经纬度计算两点之间的距离

根据经纬度计算两点之间的距离

时间:2023-06-18 10:11:56浏览次数:37  
标签:__ 经纬度 radians 距离 pB pA ra 两点 sin

from math import *


def getDistance(latA, lonA, latB, lonB):
    ra = 6378140  # radius of equator: meter
    rb = 6356755  # radius of polar: meter
    flatten = (ra - rb) / ra  # Partial rate of the earth
    # change angle to radians
    radLatA = radians(latA)
    radLonA = radians(lonA)
    radLatB = radians(latB)
    radLonB = radians(lonB)

    pA = atan(rb / ra * tan(radLatA))
    pB = atan(rb / ra * tan(radLatB))
    x = acos(sin(pA) * sin(pB) + cos(pA) * cos(pB) * cos(radLonA - radLonB))
    c1 = (sin(x) - x) * (sin(pA) + sin(pB)) ** 2 / cos(x / 2) ** 2
    c2 = (sin(x) + x) * (sin(pA) - sin(pB)) ** 2 / sin(x / 2) ** 2
    dr = flatten / 8 * (c1 - c2)
    distance = ra * (x + dr)
    return distance


if __name__ == '__main__':
    print(getDistance(32.28132167240107, 118.33287467014101, 32.280080173047665, 118.32728124995704))

 

标签:__,经纬度,radians,距离,pB,pA,ra,两点,sin
From: https://www.cnblogs.com/daizichuan/p/17488754.html

相关文章

  • 根据经纬度计算距离(腾讯)
    1、根据经纬度计算距离privatestaticdoubleEARTH_RADIUS=6378.137;privatedoublerad(doubled){returnd*Math.PI/180.0;}/***@paramtargetLongitude目标经度*@paramtargetLatitude*@paramcurrentLongitude当前经度*@paramcurrentLatitude*......
  • 汉明距离
    汉明距离题目:两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给你两个整数x和y,计算并返回它们之间的汉明距离。示例1:输入:x=1,y=4输出:2解释:1(0001)4(0100)示例2:输入:x=3,y=1输出:1解题思路:先将x和y进行异或运算,再计算得......
  • 【数据结构与算法面试题】二叉树节点的最大距离
    题目来源“数据结构与算法面试题80道”。问题分析:涉及的知识点是二叉树的遍历,遍历的方法主要有:先序遍历中序遍历后序遍历层次遍历在本题中,使用先序遍历的方法。方法:voidm_length(BSTreeNode*root,int*length,int*max_length){if(NULL==root||(NULL==root......
  • [C++/PTA] 计算点到直线的距离一一友元函数的应用
    题目要求计算点到直线的距离。首先设计一个点类Point,它有2个私有数据成员x和y,表示点的坐标。另一个类为直线类Line,它有3个私有数据成员a,b和c,表示直线方程ax+by+c=0。这两个类中都说明了一个友元函数dist,用于计算一个点到直线的距离。点(x.y)到直线ax+by+c=0的距离d的计算......
  • 计算两点间距离
    #include<iostream>#include<cmath>#include<proj.h>usingnamespacestd;//圆周率constdoublepi=3.14159265358979323846;//WGS84中定义的常量constdoublea=6378137.0;//长半轴constdoubleb=6356752.314245;//短半轴constdouble......
  • 投票评选活动小程序获取活动信息并计算距离活动结束天数
    投票评选活动小程序获取活动信息并计算距离活动结束天数投票评选活动小程序首页的设计方案:首页展示已经发布的投票列表,每个投票项包括标题、选项、投票截止时间等信息。投票评选活动小程序获取活动信息监听页面初次渲染完成时,获取活动信息,主要包含投票评选活动的浏览量、累计投票、......
  • 数学公式:点到直线的距离
    求点到直线的距离,点P(a,b),直线l为Ax+By+C=0过P点作垂直于l的直线m\[l的点斜式为\\y=-\frac{A}{B}x-\frac{C}{B}\\x=-\frac{B}{A}y-\frac{C}{A}\\求垂直斜率,通过斜率相乘得-1求得。k=\frac{B}{A}\\则m的点斜式方程为\\y=\frac{B}{A}(x-a)+b......
  • 一行Python代码计算两点间曼哈顿距离
    以下图为例,图中白色方块表示楼房,是无法穿越的,只能绕行,那么从左下角出发到达右上角,红色、蓝色、黄色三条路线的距离是相等的,也就是所谓曼哈顿距离,或者实际行走距离。对于平面上的两个点(x1,y1)和(x2,y2),曼哈顿距离的定义如下:对于空间向量(x1,x2,x3,...,xn)和(y1,y2,y3,...,yn),曼哈顿......
  • Python+matplotlib实现鼠标跟随的动态距离标注
    问题描述:显示一幅图像,鼠标左键按下后移动时实时显示当前位置与鼠标按下时初始位置的直线距离,同时显示一条从初始位置到当前位置的红色直线。参考代码:运行效果:公众号“Python小屋”......
  • 前端vue地图定位并测算当前定位离目标位置距离可用于签到打卡
    前端vue地图定位并测算当前定位离目标位置距离可用于签到打卡, 下载完整代码请访问uni-app插件市场地址: https://ext.dcloud.net.cn/plugin?id=12974效果图如下:   #####使用方法```使用方法<!--//腾讯地图key注册地址(针对H5端,manifest.json中web配置,配置定......