Const r As Double = 6378137 '地球半径常量

Const PI As Double = 3.1415926 '圆周率常量

Private Type LatLog

lat As Double

log As Double

End Type

'已知两点经纬度求大圆距离

Private Function GetGroundDistance(latlogA As LatLog, latlogB As LatLog) As Double

w1 = Pers2Act(latlogA.lat)

w2 = Pers2Act(latlogB.lat)

j1 = Pers2Act(latlogA.log)

j2 = Pers2Act(latlogB.log)

alpha = Arccos(Cos(w1) * Cos(w2) * Cos(j1 - j2) + Sin(w1) * Sin(w2))

d = alpha * r

GetGroundDistance = d

End Function

'弧度转角度

Private Function Act2Pers(act As Double) As Double

Act2Pers = act / PI * 180

End Function

'角度转弧度

Private Function Pers2Act(pers As Double) As Double

Pers2Act = pers / 180 * PI

End Function

'反余弦函数

Private Function Arccos(x As Double) As Double

Arccos = PI / 2 - Atn(x / Sqr(-x * x + 1))

End Function

'测试

Private Sub MainFunction()

Dim a As LatLog

Dim b As LatLog

a.lat = 45

a.log = 8

b.lat = 45

b.log = 9

Debug.Print GetGroundDistance(a, b)

End Sub

matlab 计算大圆距离,已知两点经纬度计算两点之间的大圆距离相关推荐

  1. 已知一点经纬度,方位角,距离,求另一点经纬度

    参考了博文:http://blog.csdn.net/pyx6119822/article/details/52298037 ------------------------------------- ...

  2. 根据两点经纬度计算距离

    根据两点经纬度计算距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等 ...

  3. 根据两点经纬度计算两点距离...工具类

    /** * 根据两点经纬度计算距离 * 直接调用使用即可 * @author tarena  *  */ public class DistanceUtil {     public static f ...

  4. php 经纬度两点间距离公式,PHP根据两点间的经纬度计算距离,php两点经纬度计算...

    PHP根据两点间的经纬度计算距离,php两点经纬度计算 这是一个不错的示例,直接贴代码,首先要知道纬度值.经度值 /** * @desc 根据两点间的经纬度计算距离 * @param float $l ...

  5. Python 优雅地利用两点经纬度计算地理空间距离

    一.基本原理 处理地理数据时,经常需要用到两个地理位置间的距离.比如 A 点经纬度(30.553949,114.357399),B点经纬度(129.1344,25.5465),求 AB 两点之间的距离 ...

  6. mysql 经纬度距离 自定义函数_mysql 经纬度计算距离 自定义函数

    这些经纬线是怎样定出来的呢? 地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈就叫作&quo ...

  7. JAVA已知圆心经纬度和半径求圆周点的经纬度

    JAVA已知圆心经纬度和半径求圆周点的经纬度 项目中遇到一个需求,需要根据传入的圆心经纬度和半径参数获得圆周点的经纬度,在网上查询了很多没有找到能用的算法,从GPT中获取到了一个简洁的用java实现的 ...

  8. 两点经纬度计算方位角,以正北为0度

    //根据两点经纬度计算方位角,以正北为0度public static double computeAzimuth(Double lat1,Double lon1, Double lat2,Double ...

  9. 算法【二叉树】学习笔记 - 已知结点数计算可构建出多少种二叉树

    算法[二叉树]学习笔记 - 已知结点数计算可构建出多少种二叉树 卡特兰数 相关知识点 排列组合公式 排列 Arrangement 组合 Combination 分步计算 简化 参考资料 题目:已知3个 ...

  10. 已知一点经纬度,如何得到该点的高程

    已知一点经纬度,如何得到该点的高程:https://www.advancedconverter.com/map-tools/find-altitude-by-coordinates

最新文章

  1. linux 路由跟踪表 nf_conntrack 数据结构 参数 简介
  2. python复数类型-python复数类型
  3. 软工第二次练习——团队展示
  4. hdu3715 二分+2sat+建图
  5. 【maven】Missing artifact javax.jms:jms:jar:1.1:compile
  6. 汇编 div_Solidity汇编开发简明教程
  7. 安卓入门系列-07常用UI控件(长文)
  8. 使用Spring Boot开发Restful程序
  9. java中的动态代理----自己手动实现
  10. c++ vector学习
  11. JS判断字串字节数,并截取长度
  12. pythondraw解释_科学网—Draw figures with Python - 高琳琳的博文
  13. winform listbox 没有listitem的问题
  14. 深度学习推荐模型-NFM
  15. 热烈庆祝《大数据》成功入选中国科技核心期刊目录~
  16. 21王道计算机网络pdf百度云,王道计算机网络第五章.pdf
  17. python矩阵连乘_动态规划:矩阵连乘问题
  18. 杭州地区,街道sql,用于项目的地址查询
  19. 疫情下的春招季:AI面试官已就位,请接招!
  20. 大数据路线,大数据要学习什么知识技能

热门文章

  1. 实验7.3 字符串 7-5 查找指定字符
  2. python tcl quartus_TCL脚本在Quartus II中的应用
  3. python dataframe切片_python-如何避免“试图在DataFrame的切片副本上设置值”?
  4. java 判断端口是否被占用_java检测端口是否被占用详解
  5. C语言学习之试编程从键盘输入2*3的二维数组,将该数组行列交换输出。
  6. [给 ASP.NET初学者的话]挑书与买书,买适合自己的书
  7. Python的3种执行方式
  8. 队列 集合的前n个元素
  9. 苹果官方Instruments工具之Automation的介绍
  10. 设计模式之: 装饰器模式