前言:近期,本人正着手gps定位系统的开发,开发期间在一些原理方面遇到了很多问题。这里,我将贴出一些gis和gps的一些相关概念,主要目的是为了学习,当然,这个肯定大多数不是我敲的了

,一般都是我自己从网上和其他书籍上摘抄而来的,如果有侵犯的地方还请指出,谢谢。希望会有所用很处。



1. 椭球体、基准面及地图投影



GIS中的坐标系定义是GIS系统的基础,正确定义GIS系统的坐标系非常重要。GIS中的坐标系定义由基准面和地图投影两组参数确定,而基准面的定义则由特定椭球体及其对应的转换参数确定,因此欲正确定义GIS系统坐标系,首先必须弄清地球椭球体(Ellipsoid)、大地基准面(Datum)及地图投影(Projection)三者的基本概念及它们之间的关系。



基准面是利用特定椭球体对特定地区地球表面的逼近,因此每个国家或地区均有各自的基准面,我们通常称谓的北京54坐标系、西安80坐标系实际上指的是我国的两个大地基准面。我国参照前苏联从1953年起采用克拉索夫斯基(Krassovsky)椭球体建立了我国的北京54坐标系,1978年采用国际大地测量协会推荐的1975地球椭球体建立了我国新的大地坐标系--西安80坐标系,目前大地测量基本上仍以北京54坐标系作为参照,北京54与西安80坐标之间的转换可查阅国家测绘局公布的对照表。 WGS1984基准面采用WGS84椭球体,它是一地心坐标系,即以地心作为椭球体中心,目前GPS测量数据多以WGS1984为基准。



上述3个椭球体参数如下:



椭球体与基准面之间的关系是一对多的关系,也就是基准面是在椭球体基础上建立的,但椭球体不能代表基准面,同样的椭球体能定义不同的基准面,如前苏联的Pulkovo 1942、非洲索马里的Afgooye基准面都采用了Krassovsky椭球体,但它们的基准面显然是不同的。



地图投影是将地图从球面转换到平面的数学变换,如果有人说:该点北京54坐标值为X=4231898,Y=21655933,实际上指的是北京54基准面下的投影坐标,也就是北京54基准面下的经纬度坐标在直角平面坐标上的投影结果。



2. GIS中地图投影的定义



我国的基本比例尺地形图(1:5千,1:1万,1:2.5万,1:5万,1:10万,1:25万,1:50万,1:100万)中,大于等于50万的均采用高斯-克吕格投影(Gauss-Kruger),又叫横轴墨卡托投影(Transverse Mercator);小于50万的地形图采用正轴等角割园锥投影,又叫兰勃特投影(Lambert Conformal Conic);海上小于50万的地形图多用正轴等角园柱投影,又叫墨卡托投影(Mercator),我国的GIS系统中应该采用与我国基本比例尺地形图系列一致的地图投影系统。



在MapX中坐标系定义由基准面、投影两部分参数组成,方法如下:



CoordSys.Set(Type, [Datum], [Units], [OriginLongitude], [OriginLatitude],


[StandardParallelOne], [StandardParallelTwo], [Azimuth], [ScaleFactor],


[FalseEasting], [FalseNorthing], [Range], [Bounds], [AffineTransform])



其中参数:Type表示投影类型,Type为1时地图坐标以经纬度表示,它是必选参数,它后面的参数都为可选参数;


Datum为大地基准面对象,如果采用非地球坐标(NonEarth)无需定义该参数;


Units为坐标单位,如Units为7表示以米为单位;


OriginLongitude、OriginLatitude分别为原点经度和纬度;


StandardParallelOne、StandardParallelTwo为第一、第二标准纬线;


Azimuth为方位角,斜轴投影需要定义该参数;


ScaleFactor为比例系数;


FalseEasting, FalseNorthing为东伪偏移、北伪偏移值;


Range为地图可见纬度范围;


Bounds为地图坐标范围,是一矩形对象,非地球坐标(NonEarth)必须定义该参数;


AffineTransform为坐标系变换对象。



相应高斯-克吕格投影、兰勃特投影、墨卡托投影需要定义的坐标系参数序列如下:



高斯-克吕格:投影代号(Type),基准面(Datum),单位(Unit),


中央经度(OriginLongitude),原点纬度(OriginLatitude),


比例系数(ScaleFactor),


东伪偏移(FalseEasting),北纬偏移(FalseNorthing)



兰勃特: 投影代号(Type),基准面(Datum),单位(Unit),


中央经度(OriginLongitude),原点纬度(OriginLatitude),


标准纬度1(StandardParallelOne),标准纬度2(StandardParallelTwo),


东伪偏移(FalseEasting),北纬偏移(FalseNorthing)



墨卡托: 投影代号(Type),基准面(Datum),单位(Unit),


原点经度(OriginLongitude),原点纬度(OriginLatitude),


标准纬度(StandardParallelOne)



在城市GIS系统中均采用6度或3度分带的高斯-克吕格投影,因为一般城建坐标采用的是6度或3度分带的高斯-克吕格投影坐标。高斯-克吕格投影以6度或3度分带,每一个分带构成一个独立的平面直角坐标网,投影带中央经线投影后的直线为X轴(纵轴,纬度方向),赤道投影后为Y轴(横轴,经度方向),为了防止经度方向的坐标出现负值,规定每带的中央经线西移500公里,即东伪偏移值为500公里,由于高斯-克吕格投影每一个投影带的坐标都是对本带坐标原点的相对值,所以各带的坐标完全相同,因此规定在横轴坐标前加上带号,如(4231898,21655933)其中21即为带号,同样所定义的东伪偏移值也需要加上带号,如21带的东伪偏移值为21500000米。



假如你的工作区位于21带,即经度在120度至126度范围,该带的中央经度为123度,采用Pulkovo 1942基准面,那么定义6度分带的高斯-克吕格投影坐标系参数为:(8,1001,7,123,0,1,21500000,0)。




3.

WGS84与C80坐标系:
任何一项测量工作都离不开一个基准,都需要—个特定的坐标系。例如,在常规大地测量中,各国都有自己的

测量基准和坐标系(如我国的1980年国家大地坐标系C80)。由于GPS是全球性的定位导航系统,其坐标系统也必

须是全球性的。为了使用方便,它是通过国际协议确定的,称为协议地球坐标系( Conventional Terrestrial

System—CTS)。目前,GPS测量中所使用的协议地球坐标系统称为WGS—84世界大地坐标系(Wor1d Geodetic

System)。属于地心坐标系 ,它是美国国防局为进行GPS导航定位于1984年建立的地心坐标系,1985年投入使用

WGS-84坐标系的几何意义是:坐标系的原点位于地球质心,z轴指向(国际时间局)BIH1984.0定义的协议地球

极(CTP)方向,x轴指向BIH1984.0的零度子午面和CTP赤道的交点,y轴通过右手规则确定。

WGS-84地心坐标系可以与1954北京坐标系或1980西安坐标系等参心坐标系相互转换,其方法之一是:在测区内

,利用至少3个以上公共点的两套坐标列出坐标转换方程,采用最小二乘原理解算出7个转换参数就可以得到转

换方程。其中7个转换参数是指3个平移参数、3个旋转参数和1个尺度参数。

举个例子,野外采集gps数据,数据是用大地坐标表示的,也就是用经纬度和高程表示。而采集的数据要在地

图上显示出来,就需要将经纬度转化为平面坐标,也就是通常说的x,y坐标。因为我国地形图一般采用高斯投

影,所以通常转化成高斯平面坐标显示到地图上。而在经纬度向平面坐标转化的过程中,需要用到椭球参数,

因此要考虑所选的坐标系,我国常用的坐标系有北京54,西安80,WGS-84坐标系,不同的坐标系对应的椭球体

是不一样的,这里你可能会不明白根椭球体有啥关系,是这样的,我们所说的地理数据都是为了描述大地水准

面上的某一个点,而大地水准面是不规则的,我们用一个规定的椭球面去拟合这个水准面,用椭球面上的点来

近似表示地球上的点。每个国家地理情况不同,采用的椭球体也不尽相同。北京54坐标系采用的是克拉索夫斯

基(Krassovsky)椭球体,而西安80采用的是IAG 75地球椭球体。