两点GPS经纬度获取局部位置的理论
1、地球赤道上环绕地球一周走一圈共40075.04公里,而@一圈分成360°,而每1°(度)有60,每一度一秒在赤道上的长度计算如下:
40075.04km/360°=111.31955km
111.31955km/60=1.8553258km=1855.3m
而每一分又有60秒,每一秒就代表1855.3m/60=30.92m
任意两点距离计算公式为
d=111.12cos{1/[sinΦAsinΦB十cosΦAcosΦBcos(λB—λA)]}
其中A点经度,纬度分别为λA和ΦA,B点的经度、纬度分别为λB和ΦB,d为距离。
2、分为3步计算:
第1步 分别将两点经纬度转换为三维直角坐标:
假设地球球心为三维直角坐标系的原点,球心与赤道上0经度点的连线为X轴,球心与赤道上东经90度点的连线为Y轴,球心与北极点的连线为Z轴,则地面上点的直角坐标与其经纬度的关系为:
x=R×cosα×cosβ
y=R×cosα×sinβ
z=R×sinα
R为地球半径,约等于6400km;
α为纬度,北纬取+,南纬取-;
β为经度,东经取+,西经取-。
第2步 根据直角坐标求两点间的直线距离(即弦长):
如果两点的直角坐标分别为(x1,y1,z1)和(x2,y2,z2),则它们之间的直线距离为: L=[(x1-x2)2+(y1-y2)2+(z1-z2)2]0.5
上式为三维勾股定理,L为直线距离。
第3步 根据弦长求两点间的距离(即弧长):
由平面几何知识可知弧长与弦长的关系为:
S=R×π×2[arc sin(0.5L/R)]/180
上式中角的单位为度,1度=π/180弧度,S为弧长。
3、1度的实际长度是111公里。但纬线的距离会越考两端越小,他的距离就会变成111乘COS纬度数,经度不变。
4、南北方向算出两点纬度差,一度等于60海里,1分等于1海里,海里与公里换算关系1海里等于1.852公里。东西方向量出距离到两点间纬度附近量出纬度差,得出海里数,再乘以1.852换算成公里。可按直角三角形原理求出两点间距离。
5、度的实际长度是111公里。但纬线的距离会越考两端越小,他的距离就会变成111乘COS纬度数,经度不变(如果在同一经度)
两点GPS经纬度获取局部位置的理论相关推荐
- java腾讯地图根据经纬度获取具体位置
腾讯地图 java腾讯地图根据经纬度获取具体位置 java腾讯地图根据经纬度获取具体位置 package com.fengdi.lianmeng.util.tencent;import com.fen ...
- Java 汉字拆分转为拼音 及根据经纬度获取所在位置
Java 汉字拆分转为拼音 及根据经纬度获取所在位置 java网络代码拼凑人 package com.ruoyi.hfiveinterface.util;import com.alibaba.fast ...
- 根据经纬度获取地址 :位置名称 区 市 省 国家 邮编
方式1: 根据经纬度获取: 省 市 区 位置名称 import java.net.URL; import java.util.HashMap; import java.util.Map; import ...
- 根据经纬度获取具体位置(百度,Java实现)
1.百度地图开放平台注册成为个人开发人员 https://lbsyun.baidu.com/apiconsole/key#/home 2.控制台---->申请密钥(AK) 3.申请密钥 申请服务 ...
- 百度地图根据经纬度获取实际位置纠偏
前言:在使用百度地图的时候,根据经纬度地址逆解析的时候,获取的位置不是很精确,只能获取到省.市县.路名.街道.号,有时只能获取省市县,位置不是很精确.所以使用百度地图位置纠偏方法获取比较精确的实际位置 ...
- 高德地图报错USERKEY_PLAT_NOMATCH解决办法 + 通过经纬度获取当前位置
一.场景 我希望通过一个按钮能获取到当前的位置信息. 比如说街道.周围的地标啥的- 二.编写代码.执行.并发现问题 1.通过 js获取到经纬度, 2.通过高德地图api提供的地理逆解析获取到相关信息: ...
- 高德地图API-通过经纬度获取当前位置附近的建筑
现在公司有一个新的需求,前端传入经纬度,后端计算出附近的医院.派出所等等,通过查阅高德地图的Web服务开发文档,发现了以下接口: https://restapi.amap.com/v3/place/a ...
- android自动获取位置,Android中获取当前位置信息
这篇教程主要介绍了在Android平台上如何使用服务完成定位功能.众所周知,Android设备的当前位置信息,对开发创新性App.解决人们日常生活问题有极大帮助.在Android平台开发定位相关的应用 ...
- android网络获取经纬,Android中透过GPS或NetWork获取当前位置的经纬度
Android中通过GPS或NetWork获取当前位置的经纬度 private double latitude=0.0; private double longitude =0.0; Location ...
- android获取当前位置经纬度,Android中通过GPS或NetWork获取当前位置的经纬度
今天在Android项目中要实现一个通过GPS或NetWork来获取当前移动终端设备的经纬度功能.要实现该功能要用到Android Framework 中的 LocationManager 类.下面我 ...
最新文章
- 使用余弦相似度算法计算文本相似度-数学
- Ubuntu 对比 CentOS 后该如何选择?
- grape动态PHP结构(三)——API接口
- 小学计算机课型有哪几种,小学信息技术课上常用几种教学方法.doc
- python 命令行参数-Python命令行参数处理
- Oracle_Net_Configuration_Assistant_配置步骤
- Serverless在编程教育中的实践
- 使用 Daynamic 动态添加属性
- 下列不属于html5语义元素,HTML5 新的语义元素
- C语言程序设计基础讲座之函数
- G1垃圾收集器之对象分配过程
- java -UDP通信
- 入住博客园,小庆一下
- windows 10下让jar文件双击可以运行的解决方法
- 如何开发Alexa Intent skill
- JavaScript 计算时间差
- Unity之AB包的创建加载
- js 基础-函数传参
- 【Matlab元胞自动机】元胞自动机双边教室疏散【含源码 1208期】
- json与xml的相互转换
热门文章
- 灵魂画师全都出来了,都怪昨天那个AI画猫的应用……
- [知识点整理]使用论文内容和用户行为对论文推荐进行个性化的重新排序(Personalised Reranking of Paper Recommendations Using Paper Conte)
- 知钱俱乐部 php,知钱俱乐部
- python一款高颜值的词云包让我拍案叫绝
- 我为什么开始写博客,并要坚持下去?
- pcf8591c语言编程,学51单片机-基于PCF8591的AD采样和DA输出
- 分享一些图片懒加载组件的设计思路
- 面向越野地形自动驾驶的语义地形分类
- MobaXterm SSH 保持连接
- word中首行缩进、悬挂缩进、左缩进有什么区别?如何操作?