matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换

matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换文章来源于我的B站专栏:用经纬度算距离​www.bilibili.com突然对于经纬度与距离感兴趣了(公选课讲到东风系列弹道导弹射程),就想了解一下如何通过经纬度来计算距离。百度了一下,觉得不满意就自己尝试做一下,都是些基本的数学知识,感兴趣玩玩。(如果有错漏之处,欢迎指正!)首先说思路:经纬度转换为空间直角坐标系,由此得到两个向量,求出向量夹角,由向量夹角和地球半径求出弧长,即距离。首先说一下经…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

文章来源于我的B站专栏:用经纬度算距离​www.bilibili.commatlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换

突然对于经纬度与距离感兴趣了(公选课讲到东风系列弹道导弹射程),就想了解一下如何通过经纬度来计算距离。百度了一下,觉得不满意就自己尝试做一下,都是些基本的数学知识,感兴趣玩玩。(如果有错漏之处,欢迎指正!)

首先说思路:经纬度转换为空间直角坐标系,由此得到两个向量,求出向量夹角,由向量夹角和地球半径求出弧长,即距离。

首先说一下经纬度,经度,是地球上一个地点离一根被称为本初子午线的南北方向走线以东或以西的度数。本初子午线的经度是0°,地球上其它地点的经度是向东到180°或向西到180°。

纬度,是指某点与地球球心的连线和地球赤道面所成的线面角,其数值在0至90度之间。位于赤道以北的点的纬度叫北纬,记为N,位于赤道以南的点的纬度称南纬,记为S。

这里定义:X轴为地心到(经度:0°、纬度:0°)的向量。

Y轴为地心到(经度:90°、纬度:0°)的向量。

Z轴为地心到(纬度:90°)的向量。matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换经纬度与空间直角坐标系的对应关系(C为球面上一点)

由此可以得到由经纬度到空间直角坐标系的对应关系:(注意正弦函数的输入为弧度)matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换单位向量

由角度到弧度对应关系:matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换度–>弧度

由两个点对应的单位向量求出向量夹角:matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换向量夹角公式matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换球面两点示意图

假设地球为理想球体:(半径为:6378.1370Km),则由半径和夹角可求弧长:matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换弧长公式

由此就全部理论就有了、但是还没完^.^ 。 下面由以上结论使用 MATLAB 验证。matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换

下面使用Google Map 做个验证:matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换

还是很好用的呢^.^!!!! 误差可能是由于取的坐标点与测量时的没有完全重合,误差还是很小的。

不过瘾,再来个大点的范围:北京到上海。matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换

奇怪,直接用上面的坐标得到结果也有0.25Km的误差。(这个是手动两次选取起始点不一致造成的)matlab已知经纬度坐标,如何求两者之间的距离_matlab坐标系转换

算了,不纠结了。喜欢就点个赞呗^.^^.^^.^^.^^.^^.^

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/190291.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker 2375

    docker 2375cd/usr/lib/systemd/system/vimdocker.service#在原本的ExecStart中添加tcp://0.0.0.0:2375[Service]Type=notify#thedefaultisnottousesystemdforcgroupsbecausethedelegateissuesstil…

    2022年6月11日
    29
  • shuffleNet_shuffer

    shuffleNet_shuffer论文:ShuffleNet:AnExtremelyEfficientConvolutionalNeuralNetworkforMobileDevices论文提到模型加速的方法为:1) 修剪网络,减少分支(pruningnetworkconnections)。2) 对于一个训练好的网络(pre-trainedmodel),在性能不下降的情况下减少冗余的分支。3) 量化(qua…

    2025年10月16日
    3
  • HTTP Header里的Range和Content-Range参数[通俗易懂]

    HTTP Header里的Range和Content-Range参数[通俗易懂]HTTPHeader里的Range和Content-Range参数转自:http://hongjiang.info/http-header-range-and-content-range/这个话题是从实现一个http资源的静态访问引发的。http协议从1.1开始支持获取文件的部分内容,这为并行下载以及断点续传提供了技术支持。它通过在Header里两个参数实现的,客户端发请求时对应的是Ra…

    2022年8月24日
    10
  • Git 常用指令使用说明「建议收藏」

    Git 常用指令使用说明「建议收藏」Git作为一个版本控制工具的后起之秀,目前已经呈现替代SVN的趋势,如果你现在还在使用SVN等版本控制工具,那说明你已经OUT了!Git 是Linux内核的发明人 大名鼎鼎的Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开源码版本控制工具。1.Git基本概念介绍     1.1.本地库和远程库           本地库(如用户电脑端的Git库)中有本地分支(dev/

    2022年6月17日
    30
  • K12个性化在线阅读平台“少年头条”完成400万天使轮融资

    K12个性化在线阅读平台“少年头条”完成400万天使轮融资K12个性化在线阅读平台“少年头条”完成400万天使轮融资

    2022年4月20日
    48
  • openwrt 修正heartbleed bug 补丁

    openwrt 修正heartbleed bug 补丁heartbleedbug的主要原因是由于cache的过度读取

    2022年7月25日
    24

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号