[转]GPS经纬度的表示方法及换算
想要认识GPS中的经纬度,就必须先了解GPS,知道经纬度的来源:
1. GPS系统组成
GPS是 Gloabal Positioning System 的简称,意为全球定位系统,主要由地面的控制站、天上飞的卫星、咱们手里拿的接收机三大块组成,我们所使用的GPS包括手持机和车载导航机本质上都是GPS接受机。
2. GPS接收机
接收机大大小小,千姿百态,有袖珍式、背负式、车载、船载、机载什么的。一般常见的手持机接收L1信号,还有双频的接收机,做精密定位用的。
3. 坐标系
地形图坐标系:我国的地形图采用高斯-克吕格平面直角坐标系。在该坐标系中,横轴:赤道,用Y表示;纵轴:中央经线,用X表示;坐标原点:中央经线与赤道的交点,用O表示。赤道以南为负,以北为正;中央经线以东为正,以西为负。我国位于北半球,故纵坐标均为正值,但为避免中央经度线以西为负值的情况,将坐标纵轴西移500公里。
北京54坐标系:1954年我国在北京设立了大地坐标原点,采用克拉索夫斯基椭球体,依此计算出来的各大地控制点的坐标,称为北京54坐标系。
GS84坐标系:即世界通用的经纬度坐标系。
6度带、3度带、中央经线。
我国采用6度分带和3度分带:
1∶2.5万及1∶5万的地形图采用6度分带投影,即经差为6度,从零度子午线开始,自西向东每个经差6度为一投影带,全球共分60个带,用1,2,3,4,5,……表示。
1∶1万的地形图采用3度分带,从东经1.5度的经线开始,每隔3度为一带,用1,2,3,……表示,全球共划分120个投影带
4. 经纬度的来源
为了精确地表明各地在地球上的位置,人们给地球表面假设了一个坐标系,这就是经纬度线。那么,最初的经纬度线是怎么产生又是如何测定的呢公元344年,亚历山大渡海南侵,继而东征,随军地理学家尼尔库斯沿途搜索资料,准备绘一幅“世界地图”。他发现沿着亚历山大东征的路线,由西向东,无论季节变换与日照长短都很相仿。于是做出了一个重要贡献——第一次在地球上划出了一条纬线,这条线从直布罗陀海峡起,沿着托鲁斯和喜马拉雅山脉一直到太平洋。
亚历山大帝国昙花一现,不久就瓦解了。但以亚历山大为名的那座埃及城里,出现了一个著名图书馆,多年担任馆长的埃拉托斯特尼博学多才,精通数学、天文、地理。他计算出地球的圆周是46 250千米,画了一张有7条经线和6条纬线的世界地图。
5. 经纬度的表示
1884年国际经度会议规定,以通过英国伦敦格林威治天文台子午仪中心的经线为0°经线。从0°经线往东叫东经,往西叫西经,东、西各分180°。习惯上以西经20°和东经160°为分界把地球分为东西两个半球。假如从地轴的正中间将地球切成南北两半,上边的一半叫北半球,下边的一半叫南半球。被切的这个平面,叫赤道面。赤道面与地球表面相交的线叫赤道。纬线从赤道往两极越来越短,到了两极就缩小成一个点了。科学家们把赤道定为0°纬线,从赤道向两极各分为90°,赤道以南叫南纬,赤道以北叫北纬。在计算机或GPS上经纬度经常用度、分、秒和度.度、分.分、秒.秒的混合方式进行表示,度、分、秒间的进制是60进制,度.度、分.分、秒.秒的进制是100进制,换算时一定要注意。可以近似地认为每个纬度之间的距离是不变的111KM,每分间1.85KM,每秒间30.8M。经度间的距离随纬度增高逐渐减小,可按一下公式计算:
经度1°长度=111.413cosφ一0.094cos3φ公里(纬度φ处)。
一般从GPS得到的数据是经纬度。经纬度有多种表示方法。
1.) ddd.ddddd, 度 . 度的十进制小数部分(5位)例如:31.12035º
2.) ddd.mm.mmm,度 . 分 . 分的十进制小数部分(3位)例如 31º10.335'
3.)ddd.mm.ss, 度 . 分 . 秒 例如 31º12'42"
地球上任何一个固定的点都可以用确定的经纬度表示出来。
关于经纬度坐标转换的方法
一、十进制转换成经纬度
把经纬度转换成十进制的方法很简单
如下就可以了
Decimal Degrees = Degrees + minutes/60 + seconds/3600
例:57°55'56.6" =57+55/60+56.6/3600=57.9323888888888
114°65'24.6"=114+65/60+24.6/3600=结果自己算!
如把经纬度 (longitude,latitude) (205.395583333332,57.9323888888888)
转换据成坐标(Degrees,minutes,seconds)(205°23'44.1",57°55'56.6")。
步骤如下:
1, 直接读取"度":205
2,(205.395583333332-205)*60=23.734999999920 得到"分":23
3,(23.734999999920-23)*60=44.099999995200 得到"秒":44.1
采用同样的方法可以得到纬度坐标:57°55'56.6"
如果需要转换的经纬度数据很多,可以借助Sql查询分析器或Excel来进行转换。这里介绍用Sql实现。
假如我的数据库里的表tableName有以下数据
CREATE TABLE [dbo].[tableName](
[ID] [int] IDENTITY(1,1) NOT NULL,
[address] [varchar](20) COLLATE Chinese_PRC_CI_AS NULL,
[longitude] [float] NULL,
[latitude] [float] NULL
) ON [PRIMARY]
GO
表中的数据
ID address longitude latitude
0 add1 205.3955833 57.93238889
1 add2 205.3911111 57.95194444
2 add3 205.3791667 57.98916667
3 add4 205.3713889 57.95611111
在sql 查询分析器里直接调用以下查询语句
--Declare The longitude,latitude
declare @LoaDeg varchar(50)
declare @LoaMin varchar(100)
declare @LoaSec varchar(100)
declare @LatDeg varchar(50)
declare @LatMin varchar(100)
declare @LatSec varchar(100)
--Set The Variable
Set @LoaDeg='left(longitude,3)'
Set @LoaMin='left((longitude-'+@LoaDeg+')*60,2)'
Set @LoaSec='left((((longitude-'+@LoaDeg+')*60-'+@LoaMin+')*60),4)'
Set @LatDeg='left(longitude,3)'
Set @LatMin='left((longitude-'+@LatDeg+')*60,2)'
Set @LatSec='left((((longitude-'+@LatDeg+')*60-'+@LatMin+')*60),4)'
--Execute The Command
exec('select ID,address,longitude,
'+@LoaDeg+' as LoaDegree,
'+@LoaMin+' as LoaMinute,
'+@LoaSec+' as LoaSecond,
'+@LatDeg+' as LatDegree,
'+@LatMin+' as LatMinute,
'+@LatSec+' as LatSecond
from TableName')
即可得到:
ID address longitude LoaDegree LoaMinute LoaSecond latitude LatDegree LatMinute LatSecond
1 add1 205.3955833 205 23 44 57.93238889 205 23 44
2 add2 205.3911111 205 23 28 57.95194444 205 23 28
3 add3 205.3791667 205 22 45 57.98916667 205 22 45
4 add4 205.3713889 205 22 17 57.95611111 205 22 17
关于分秒表示的实际距离,可以如下推算:
地球子午线长是39940.67公里,纬度改变一度合110.94公里,一分合1.849公里,一秒合30.8米,赤道圈是40075.36公里,北京地区纬在北纬40度左右,纬度圈长为40075*sin(90-40),此地经度一度合276公里,一分合1.42公里一秒合23.69米
原文链接:https://www.cnblogs.com/sekon/p/4297180.html
转载于:https://www.cnblogs.com/kanite/p/7889451.html
[转]GPS经纬度的表示方法及换算相关推荐
- GPS经纬度坐标转换的方法
GPS经纬度坐标转换的方法 原文:http://hi.baidu.com/myonlylovegg/blog/item/dacc24d4db648acc51da4b28.html 2009-04-05 ...
- c语言数组124048,根据GPS经纬度判断当前所属的市区
这个事情分两步走 1. 拿到行政区划的地理围栏数据 2. 根据GPS定位判断一个点是否落在地理围栏的多边形区域里. 1. 获取行政区划的地理围栏数据可以利用百度API.打开以前我的一个例子在chrom ...
- gps经纬度换算,WGS-84->GCJ02->BD-09
在经纬度换算前,我们先了解一下常用的坐标种类有哪些: 1.大地坐标系统 WGS-84 用来表述地球上点的位置的一种地区坐标系统.它采用一个十分近似于地球自然形状的参考椭球作为描述和推算地面点位置和相互 ...
- cvs数据格式 gps_运动手表GPS轨迹文件导出方法
运动手表GPS轨迹文件导出方法 什么是GPS轨迹文件? 记录运动轨迹是带GPS运动设备最基本的功能,记录轨迹后才能计算配速(速度).距离,间接数据还有步幅.最大摄氧量等数据.带GPS功能运动设备比较常 ...
- sqlite3导出csv首位0_运动手表GPS轨迹文件导出方法
运动手表GPS轨迹文件导出方法 什么是GPS轨迹文件? 记录运动轨迹是带GPS运动设备最基本的功能,记录轨迹后才能计算配速(速度).距离,间接数据还有步幅.最大摄氧量等数据.带GPS功能运动设备比较常 ...
- 百度经纬度坐标转换官方方法
百度经纬度坐标转换官方方法 百度坐标转换官方文档 国内主流坐标系类型: 主要有以下三种 WGS84:为一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系: GCJ02:是由中国国家测 ...
- 不丢失精度的获取照片的Gps经纬度
不丢失精度的获取照片的Gps经纬度 1. 实际照片存储经纬度 2. **用pyhton exifread读取** 3. 用java metadata-extractor读取 4. windows用 e ...
- android百度地图轨迹实现,android 获取GPS经纬度在百度地图上绘制轨迹
实现将一组GPS模块获取的经纬度数据在百度地图上绘制轨迹 1.将经纬度转换成百度地图坐标 /** * 标准的GPS经纬度坐标直接在地图上绘制会有偏移,这是测绘局和地图商设置的加密,要转换成百度地图坐标 ...
- 关于解决GPS定位设备:GPS静态漂移的方法
关于解决GPS定位设备:GPS静态漂移的方法 参考文章: (1)关于解决GPS定位设备:GPS静态漂移的方法 (2)https://www.cnblogs.com/cxt-janson/p/92744 ...
最新文章
- 分享|如何制作高质量的图文摘要(Graphical Abstract)
- 干货丨从硬件配置到框架选择,请以这种姿势入坑深度学习
- python字符型_python字符类型
- ad16自动布线设置规则_PCB设计的十大误区——那些年,我们一起遵守的规则
- linux内核kfifo(一)
- 大数据财税与python应用_大数据跟python
- Leetcode--164. 最大间距
- 笨方法python_笨方法学习Python(11-20)
- AOSP6.0.1 launcher3入门篇—hotseat相关实现
- Java1.8安装win10_java1.8环境配置+win10系统
- mysql 查询最大值的总和_mysql中最大值和最小值以及总和查询与计数查询的实例详解...
- 微信 app---uwp
- ReadyAPI 教程和示例(一)
- 基于MT策略的实战分析
- 行列式的定义及简单计算
- ballerina 学习二十八 快速grpc 服务开发
- 有一个计算机可以知道手机密码,要不是他,你根本不会忘记密码
- python 函数式编程包_Python——详解函数式编程与闭包
- python国内书籍推荐_久等了,你要的 Python 书籍推荐,来了!
- Windows7操作系统要求电脑配置