已知两点经纬度,计算两点间的距离

2023-11-07

#通过两点的经纬度计算两点之间的距离
def getDistance(lng1,lat1,lng2,lat2):
    '''
    :param lng1: A点的经度
    :param lat1: A点的纬度
    :param lng2: B点的经度
    :param lat2: B点的纬度
    :return: AB两点的距离
    '''
    EARTH_RADIUS = 6378.137 #地球半径

    # 经纬度转化为弧度(rad)
    lngA = (lng1 * math.pi/180.0)
    latA = (lat1 * math.pi/180.0)
    lngB = (lng2 * math.pi/180.0)
    latB = (lat2 * math.pi/180.0)

    #计算两点的距离,(单位:m)
    a = latA -latB
    b = lngA - lngB
    s = 2 * math.asin(math.sqrt(math.pow(math.sin(a/2),2)+math.cos(latA)*math.cos(latB)*math.pow(math.sin(b/2),2)))
    s = s * EARTH_RADIUS
    distanceAB = s *1000
    return distanceAB
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

已知两点经纬度,计算两点间的距离 的相关文章

随机推荐

  • 嵌入式MCU开发开源项目

    1 FreeModbus Slave Master RTT STM32 简介 FreeModbus是一款开源的Modbus协议栈 但是只有从机开源 主机源码是需要收费的 同时网上也没有发现比较好的开源的Modbus主机协议栈 所以才开发这款
  • 【备忘】es统计各个平台的每日活跃数量

    query bool must range unixtime gt 1631548800000 lt 1631635200000
  • 第十七课,帧缓存(后期处理)

    反向 void main FragColor vec4 vec3 1 0 texture screenTexture TexCoords 1 0 灰度 均分灰度 void main FragColor texture screenTextu
  • git diff,git format-patch,git apply和patch小问题三则

    这个文档主要是用来记录工作中遇到的git patch 相关的命令的介绍和相关常见问题的解决方案 Patch文件有3中 git 给我们提供了2种patch 方案 一是用git diff生成的标准patch 二是git format patch
  • Spring Boot使用slf4j+Logback进行日志记录

    Spring Boot使用slf4j Logback进行日志记录 个人总结使用logback步骤 1 yml或 properties配置日志文件的所在路径和输出日志的范围 级别 2 配置好logback xml文件的各项参数 包括日志输出格
  • 利用vscode--sftp,将本地项目/文件上传到远程服务器中详细教程

    1 首先在 vscode 中下载 sftp 2 然后在 vscode 中打开本地将要上传的项目或文件 3 安装完后 使用快捷键 ctrl shift P 打开指令窗口 输入 sftp config 回车 在当前目录中会自动生成 vscode
  • 最小生成树笔记(Prim算法&&Kruskal算法)

    1 最小生成树 最小生成树 Minimum Spanning Tree 简称MST 是指 在一个连通无向图中 找到一个包含所有顶点的树 且该树的所有边的权重之和最小 换句话说 最小生成树是原图中的一个子图 它包含所有顶点 并且连接所有顶点的
  • OpenCV 4.0.0学习笔记 (一) 图像与视频的读写

    目录 读取图片 imread方法 图片读取出错处理 读取的图片属性 写入图片 imwrite方法 带透明度的png图像 读取视频 capture结构体 下一帧与释放 读取视频属性 get 方法 写入视频 VideoWriter类 显示窗口W
  • 使用THREE.js制作一款3D游戏

    使用THREE js制作一款3D游戏 本文是基于某位大神使用three js设计游戏的学习心得与知识分享 The Making of The Aviator Animating a Basic 3D Scene with Three js
  • ubuntu 安装微软雅黑和 Consolas 字体

    https www mycode net cn platform 741 html ubuntu 安装微软雅黑和 Consolas 字体 2条回复 Consolas 字体用来写代码真的是非常舒服 可惜 ubuntu 系统中默认并没有这个字体
  • Error:(15, 13) java: No property named “cType” exists in source parameter(s). Did you mean “CType”?

    实体 Data public class private String cType Mapping target type source cType 这问题是由于实体类的属性首字母小写第二个字母大写导致 source的值首字母改为大写就可以
  • 深圳杯数学建模2020c题_2020数学建模B题

    2020数学建模B题 本人咸鱼一条 参加过19年数学建模 当时在B题和C题之间选择 最后还是选择了C题 其实是B题不会写 看着去年九月参加比赛的教室 今年也坐着三人一组的建模小队 查资料 分析数据 编程 触景生情 我又老了一岁 心血来潮也看
  • NETCore入门系列(AOP之ActionFilter)

    文章目录 一 ActionFilter入门 使用场景 官方介绍 实操 二 Filter传参 TypeFilter ServiceFilter 三 Filter作用域 四 源码 一 ActionFilter入门 使用场景 一般用于Action
  • 文本转语音的接口(开放免费)

    百度的开放转换接口 http tts baidu com text2audio lan zh ie UTF 8 spd 4 text 你好啊 听起来好憨啊 lan 语言类型 lan en 英文 lan zh 中文 ie 文字编码方式 spd
  • 使用C++刷算法题的简明教程

    本篇博客参考自柳婼大神的 从放弃C语言到使用C 刷算法的简明教程 1 使用C 刷算法的好处 在具备C语言的前提下 学习C 并使用它刷算法题的学习成本非常低 只需要几个小时 C 向下兼容C C语言里的语法大部分都可以在C 文件中运行 所以学习
  • 个人知识体系思维导图_职场必备思维导图:提升能力、知识体系、决策思维、领导力......

    图片来源 图虫创意 让你快速成长的职场思维 思维导图 MBA智库文档 你需要具备哪些技能 1 你需要建立系统的思维方式和做事方法 2 你需要了解不管是口碑还是硬广渠道的推广效果 3 你需要有管理能力 很好的沟通能力 4 你需要具备总结分析的
  • js刷新当前页面的5种方式

    1 reload reload 方法 该方法强迫浏览器刷新当前页面 语法 location reload bForceGet 参数 bForceGet 可选参数 默认为 false 从客户端缓存里取当前页 true 则以 GET 方式 从服
  • 设计模式之状态模式

    一 背景 状态这个词汇我们并不陌生 在日常生活中 不同时间就有不同的状态 早上起来精神饱满 中午想睡觉 下午又渐渐恢复 晚上可能只想睡觉 这就对应着一天中不同的状态 二 定义 状态 State 模式的定义 对有状态的对象 把复杂的 判断逻辑
  • Rancher 2.2.2 - HA 部署高可用k8s集群

    对于生产环境 需以高可用的配置安装 Rancher 确保用户始终可以访问 Rancher Server 当安装在Kubernetes集群中时 Rancher将与集群的 etcd 集成 并利用Kubernetes 调度实现高可用 为确保高可用
  • 已知两点经纬度,计算两点间的距离

    通过两点的经纬度计算两点之间的距离 def getDistance lng1 lat1 lng2 lat2 param lng1 A点的经度 param lat1 A点的纬度 param lng2 B点的经度 param lat2 B点的纬