位置坐标、纬度和经度的长度是多少?

小数点前和小数点后,经度和纬度可以有多少位数字?

这是一个例子,我从一个Windows Phone设备发送的位置:

Latitude=-63572375290155
Longitude=106744840359415

这非常长,超过了我的表列大小,并导致错误。

341988 次浏览

如果纬度坐标报告为-6.3572375290155或-63.572375290155,那么您可以四舍五入并存储多达6位小数点后10厘米(或0.1米)的精度。如果坐标参考系(CRS)不是EPSG:4326(例如,EPSG:3857),则x和y值测量到原点的距离,单位是米,而不是度。

概述

南半球和北半球的有效纬度范围(以度为单位)分别为-90度和+90度。经度在-180度和+180度范围内,分别指定本初子午线以西和以东的坐标。作为参考,赤道的纬度为0°,北极的纬度为北纬90°(写为90°N或+90°),而南极的纬度为-90°。

本初子午线的经度为0°,穿过英国的格林威治。国际日期变更线大致遵循180°经度。经度值为正值的经度落在东半球,经度值为负值的经度落在西半球。

十进制精度

小数点后6位精度在坐标中使用十进制符号是10厘米(或0.1米)的分辨率。坐标十进制度数的每一个。000001差大约是10厘米长。例如,谷歌Earth和谷歌Maps的图像通常为1米分辨率,有些地方的分辨率更高,为每像素1英寸。一米分辨率可以用小数点后5位来表示,因此超过6位小数点后的分辨率是多余的。经度在赤道处的距离与纬度相同,但经度之间的距离在两极处趋于零,因为子午线在该点会聚。

对于毫米(mm)精度,则以十进制格式用8位小数表示纬度/长度。由于大多数应用程序不需要这样的精度,在大多数情况下,小数点后6位就足够了。

在另一个方向上,整个十进制度代表约111公里(或60海里)的距离,0.1的十进制度差代表约11公里的距离。

下面是一个以0,0为起始点的纬度与delta度的小数位差和以米为单位的估计距离的表。

小数点后 十进制度 距离(米) 笔记
0 1.0 110574年。3 111公里
1 0.1 11057点 11公里
2 0.01 1105 .74点 1公里
3. 0.001 110.57
4 0.0001 11.06
5 0.00001 1.11
6 0.000001 0.11 11厘米
7 0.0000001 0.01 1厘米
8 0.00000001 0.001 1毫米
< / div >

度-分-秒(DMS)表示

对于DMS符号,1弧秒= 1/60/60度=约30米长,0.1弧秒delta =约3米。

例子:

  • 0° 0' 0" W, 0° 0' 0" N0° 0' 0" W, 0° 0' 1" N⟹30.715米
  • 0° 0' 0" W, 0° 0' 0" N0° 0' 0" W, 0° 0' 0.1" N⟹3.0715米

1角分= 1/60度= ~2000m(2公里)


更新:

在这里是一个有趣的漫画关于坐标精度。

谷歌map实际上使用符号值来表示位置:

  • 纬度: max/min 90.0000000-90.0000000

  • 经度: max/min 180.0000000-180.0000000

所以如果你想在你的项目中使用坐标,你需要DECIMAL(10,7) ie。为SQL。

纬度最大值总共是:9(12.3456789),经度10(123.4567890),它们都有最大7个小数字符(至少是我在谷歌地图中可以找到的),

例如,Rails和Postgresql中的两列看起来都是这样的:

t.decimal :latitude, precision: 9, scale: 7
t.decimal :longitude, precision: 10, scale: 7

编辑:

正如Jasie所说,最大小数应该是8,但只有少数web服务接受这一点。

有效经度是-180度到180度。

纬度应该在零下90度到90度之间,但是非常靠近两极的地区是不可转位的。

因此,EPSG:900913 / EPSG:3785 / OSGEO:41001规定的确切限制如下:

  • 有效经度是-180度到180度。
  • 有效纬度范围为-85.05112878度至85.05112878度。

在SQL Server中存储Lat Long值的理想数据类型是十进制(9,6)

正如其他人所说,这是在大约10cm的精度,而只使用5字节的存储。

例如CAST(123.456789 as decimal(9,6)) as [LatOrLong]

请检查UTM坐标系https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system

对于特定的地图投影,这些值必须以米为单位。例如,UTM第11区阿西尼博因山(Mount Assiniboine,位于50°52′10″N 115°39′03″W)的山峰用11U 594934.108296 5636174.091274表示,其中(594934.108296,5636174.091274)单位为米。

我知道已经有几个答案了,但我添加了这个,因为这增加了关于小数点后的位置和所要求的最大长度的大量信息。

纬度和经度的长度取决于精度。每项的绝对最大长度为:

  • 纬度:12个字符(例如:-90.00000001)
  • 经度:13个字符(示例:-180.00000001)

对于两个hold:最多8个贴花的地方是可能的(虽然不常用)。

对精度依赖的解释:

enter image description here

参见维基百科上的十进位文章的完整表