坐标转换参数求取及坐标转换程序设计.docx

上传人:b****3 文档编号:5454082 上传时间:2022-12-16 格式:DOCX 页数:29 大小:766.71KB
下载 相关 举报
坐标转换参数求取及坐标转换程序设计.docx_第1页
第1页 / 共29页
坐标转换参数求取及坐标转换程序设计.docx_第2页
第2页 / 共29页
坐标转换参数求取及坐标转换程序设计.docx_第3页
第3页 / 共29页
坐标转换参数求取及坐标转换程序设计.docx_第4页
第4页 / 共29页
坐标转换参数求取及坐标转换程序设计.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

坐标转换参数求取及坐标转换程序设计.docx

《坐标转换参数求取及坐标转换程序设计.docx》由会员分享,可在线阅读,更多相关《坐标转换参数求取及坐标转换程序设计.docx(29页珍藏版)》请在冰豆网上搜索。

坐标转换参数求取及坐标转换程序设计.docx

坐标转换参数求取及坐标转换程序设计

盛年不重来,一日难再晨。

及时宜自勉,岁月不待人。

毕业设计

设计题目坐标转换参数求取及坐标转换程序设计

 

学生姓名张威

指导教师杜继亮

专业测绘工程

班级测绘12-2班

填写日期2016/4/6

 

矿业工程学院

 

摘要

坐标系统是测量工作中定位的基础,坐标系统有多种形式和基准,由于各测量工作目的不同,所选用的坐标基准也会不同,根据不同的工作要求需要将不同的坐标系下的坐标进行相互转换。

在这些坐标转换的过程中会用到很多坐标转换模型,但是坐标系转换模型过于复杂手算非常困难。

本设计为了方便施工时遇到的坐标转换问题,设计利用VisualBasic6.0编程语言编写程序,用来实现坐标系统之间的转换以及转换参数的求解,例如:

大地坐标与空间直角坐标的相互转换、高斯投影正反算、二维坐标转换与四参数计算、三维坐标转换与七参数转换、同参考基准下的坐标换带计算,以及坐标数据的批量处理。

关键字:

坐标系统,转换模型,坐标转换,程序设计

 

Abstract

Thebaseofcoordinatesysteminsurveyingwork.therearemanyformsandbenchmarksinthecoordinatesystem.However,ingeneralengineering,thecontrolpointandcoordinate.Systemarethesame.SoItisnecessarytotransformthecontrolpoint.coordinateduringtheconstructionprocess.Duetodifferentpurposesofeachmeasurementandtheselected.differentcoordinatereferences,therewillbemanydifferentcoordinatesystems.Coordinatesystemsusedinthemeasurementworkareasfollows:

WGS-84WorldGeodeticSystem,ChinaGeodeticCoordinateSystem2000,NationalGeodeticCoordinateSystem1980,Beijingcoordinatesystem1954andLocalCoordinateSystem.Therearespacerectangularcoordinate,geodeticcoordinateandplanecoordinateinthewayofthereferenceinthesamecoordinate.Accordingtotherequirementsofdifferenttasks,weneedtoconvertcoordinatesunderthedifferentcoordinatesystems.Onconditionthatthecoordinatesofthereferencestandardcanbeobtained.thenormalconstructionworkcanbedone.Alotofcoordinatetransformationmodelsareusedintheprocessofthecoordinatetransformation.Butthecoordinatetransformationmodelisverycomplexanddifficult.Nowadaystheconversionformulaissuitableforthecomputerizationwhoselanguageiseasytolearn.SointhedesignImakeuseofVisualBasic6programminglanguagetorealizethetransformationbetweenthecoordinatesystemandtransformationparameters.

Keywords:

coordinatesystemstransformationmodelcoordinatetransformprogramming

 

第1章绪论

1.1研究背景和意义

随着大地测量学,摄影测量学的发展和电子计算机的普及,对各种坐标系的研究变得越来越重要了[1]。

随着现在社会的快速发展,各种各样的大型工程的建设,凡是工程施工就必定需要坐标来定位才可以,而建造的地方又不同,又没有一个满足全部地方的坐标系统,所以产生多种不同的坐标系统,实际工作中测量人员必定会按照实际情况选择最为合适的坐标系统。

而坐标系统之间的转换比较复杂,手算工作量巨大,因而各种坐标转换模型相继出现,利用计算机强大的数据计算能力可以轻松应对这些问题,提高工作效率。

坐标转换的意义重大,不仅在我们熟知的工程领域中,在国防建设、航空航天科技、城市汇划等众多领域中都发挥着重要的作用,可以说对社会进步有着必不可少的作用。

1.2国内外研究现状

自60年代以来,各国大地测量学者,经过大量研究,提出了多种坐标转换模型及多种解算方法,北美1927基准面(基于克拉克1966椭球体与北美1983基准面(基于GRS1980椭球体)之间坐标转换是根据研究区内一系列己知点的大地坐标或网格坐标改正量进行插值进行的坐标系转换;英国采用北向与东向的双线性网格插值进行坐标转换;挪威在海岸带调查中,采用经纬度多项式用于坐标系转换这种方法进行新(ED87一欧洲1987基准面)、旧(ED50一欧洲1950基准面)坐标系之间的转换:

欧洲石油勘探组织(EPSG)对新、旧坐标系采用“双线性插值”进行坐标转换[2]。

国内空间三维直角坐标转换中,一般采用布尔莎七参数模型。

一般有7个转换参数,即3个平移参数,3个旋转参数和1个尺度参数。

需要三个及已经公共点时,才能利用平差的方法求出七参数。

1.3研究的主要内容

本坐标转换程序可实现功能有:

1、大地坐标与空间直角坐标的相互转换,2、高斯投影正反算,3、二维坐标转换与四参数计算,4、三维坐标转换与七参数转换,5、同参考基准下的坐标换带计算,以及坐标数据的批量处理。

1.4程序设计思路方法

本程序名为万能坐标转换器。

设计前期收集相关资料,参考一些成熟的坐标转换软件,确定程序应有的功能以及界面设计。

运用VB编写程序时,查阅相关书籍获取理论知识以及转换模型。

完成程序后将已知正确数据带入其中验证程序结果是否正确。

若出现错误则检查每步代码,直到程序完美运行为止。

 

第2章基础知识准备

2.1地球椭球

地球椭球体又称地球椭圆体或地球扁球体,代表地球大小和形状的数学曲面,以长半径和扁率表示,因它十分迫近于椭球体,故通常以参考椭球体表示地球椭球体的形状和大小。

通常所说地球的形状和大小,实际上就是以参考椭球体的半长径、半短径和扁率来表示。

1975年国际大地测量与地球物理联合会推荐的数据为:

半长径6378140米,半短径6356755米,扁率1∶298.257。

在众多椭球体中,WGS-84椭球体被认为符合上述条件最好的椭球。

2.2基准

所谓基准是指为描述空间位置而定义的点、线和面。

而大地测量基准是指用以描述地球形状的地球椭球参数,包含描述地球椭球几何特征的长短半轴和物理特征的有关参数、地球在空间的定位及定向以及描述这些位置所采用的单位长度的定义。

不同的坐标系统会使用的基准也不同,根据参考椭球所选原点位置不同,可以分为地心坐标系和参心坐标系。

地心坐标系是以地球的质心为原点,有地心大地坐标系和地心空间直角坐标系两种表述方法。

地心空间直角坐标系的定义为:

以地球质心为原点,X轴指向格林尼治子午面与地球赤道的交点,Z轴指向北极,Y轴过原点垂直于平面XOZ,构成右手空间直角坐标系。

地心大地坐标系定义为:

以地球的质心作为原点,以地球自转轴作为椭球的短轴,大地纬度B是过地面点的椭球法线与椭球赤道面之间的夹角,大地经度L为过地面点的椭球子午面与格林尼治子午面之间的夹角,大地高度H为地面点沿椭球法线到椭球面的最短距离。

WGS-84坐标系,CGCS2000坐标系,GLONASS是采用PZ-90坐标,都是属于地心坐标系。

参心坐标系是选取一个参考椭球面作为基本的参考面,选一参考点作为大地测量的起算点,从而确定参考椭球在地球面的位置和方向。

这时参考椭球的原点不会和地球质心重合,所以称为参心。

北京54坐标系、西安80坐标系和新北京54坐标系,都是参心坐标系。

它同样具有参心大地坐标系和参心空间直角坐标系两种表述方法,它们的定义与地心坐标系的定义相似。

2.3测量常用坐标系

2.3.1大地坐标系

空间一点的大地坐标用大地经度L、大地纬度B和大地高度H表示,地面上P地点的大地子午面NPS与起始大地子午面所构成的二面角L称P地点的大地经度,P地点对于椭球的法线与赤道面的夹角B称P地点的大地纬度。

如图2-1所示

 

图2-1大地坐标系

P地点沿法线到椭球面的距离H称大地高,从椭球面起算,向外为正,向内为负[3]。

H=H正常+ζ(高程异常)

H=H正+N(大地水准面差距)

2.3.2空间直角坐标系

空间直角坐标系的坐标原点与参考椭球的中心重合,Z轴正向指向参考椭球的北极,X轴正向指向起始子午面与赤道的交点,Y轴按右手系与X轴呈90°夹角且位于赤道面上,某点在空间中的坐标可用该点在此空间坐标系的各个坐标轴上的投影来表示[4]。

如图2-2所示:

 

图2-2空间直角坐标系

2.3.3平面坐标系

平面直角坐标系是利用投影,将空间坐标通过某种数学变换映射到平面上,这种变换称为投影变换[5]。

在我国一般采用的是高斯一克吕格投影,是目前测量上广泛采用的正形投影,特点是没有角度变形,在不同点上的长度比随点位而异,但在同一点上各方向的长度比相同,也称为高斯投影[6]。

2.3.4地方独立坐标系

在我国平面坐标主要采用的是高斯投影,在该投影中,除中央子午线外,其它位置上的任何线段,投影后都会产生一定的长度变形,而且变形随离开中央子午线的距离增加而增加[7]。

因此一般采用分带投影的办法,来限制长度变形,我国规定了采用3度带或6度带进行分带投影。

在城市、工矿等工程测量中,如果直接在国家分带坐标系中建立控制网,会使地面长度投影的变形较大,当长度变形大于2.5cm/km时,就难以满足工程上的需要[8]。

另一些特殊的测量,比如大桥施工测量,水利水坝测量,滑坡变形监测等,采用国家坐标系精度不能满足工程要求,所以常常会建立适合本地区的地方独立坐标系[9]。

2.4我国常用坐标系

2.4.11954年北京坐标系

1954年北京坐标系,是采取先将我国一等锁与前苏联远东一等锁相联接,然后以连接处呼玛,吉拉林,东宁基线网扩大边端点的前苏联1942年普尔科沃坐标系的坐标为起算数据,平差我国东北及东部一等锁[10]。

椭球参数:

长半轴a=6378245m,短半轴b=6356863.0188m,扁率α=1/298.3,第一偏心率平方e2=0.00669342161454287,第二偏心率平方e’2=0.00673852540614652。

2.4.21980国家大地坐标系

1980国家大地坐标系采用地球椭球基本参数为1975年国际大地测量与地球物理联合会第十六届大会推荐的数据,大地原点设在我国中部的陕西省泾阳县永乐镇,位于西安市西北方向约60公里。

椭球参数:

长半轴a=6378140±5m,短半轴b=6356755.2882m,扁率α=1/298.257,第一偏心率平方e2=0.00669438499959,第二偏心率平方e’2=0.00673950181947。

2.4.3WGS-84世界大地坐标系

WGS-84坐标系是一种国际上采用的地心坐标系。

坐标原点为地球质心,其地心空间直角坐标系的Z轴指向BIH(国际时间服务机构)1984.0定义的协议地球极(CTP)方向,X轴指向BIH1984.0的零子午面和CTP赤道的交点,Y轴与Z轴、X轴垂直构成右手坐标系,称为1984年世界大地坐标系统。

椭球参数:

长半轴a=6378137,短半轴b=6356752.3142,扁率α=1/298.2572236,第一偏心率平方e2=0.00669437999013,第二偏心率平方e’2=0.006739496742227。

2.4.42000国家大地坐标系

CGCS2000是(中国)2000国家大地坐标系的缩写,该坐标系是通过中国GPS连续运行基准站、空间大地控制网以及天文大地网与空间地网联合平差建立的地心大地坐标系统[11]。

Z轴指向BIH1984.0定义的协议极地方向(BIH国际时间局),X轴指向BIH1984.0定义的零子午面与协议赤道的交点,Y轴按右手坐标系确定。

椭球参数:

长半轴a=6378137,短半轴b=6356752.31414,扁率α=1/298.2572236,第一偏心率平方e2=0.00669437999013,第二偏心率平方e’2=0.006739496742227。

2.5坐标转换模型

2.5.1大地坐标系与空间直角坐标系转换模型

将同一坐标系下的大地坐标(B,L,H)转换成空间直角坐标(X,Y,Z)的转换公式为:

式中:

a为参考椭球长半轴,e为第一偏心率,N为卯酉圈的半径[12]。

将同一坐标系下的空间直角坐标(X,Y,Z)转换为大地坐标(B,L,H)的公式为:

L=arctan(

B=arctan(

H=

用公式进行空间直角坐标转换大地坐标时,需要采用迭代计算大地纬度B。

具体计算时,可先根据下式求出大地纬度B的初值:

因为

带入B=arctan(

得:

令:

则式子可写成

然后利用该初值B代入公式右端tanB中,将等式左边的结果再次代入右端tanB,直到最后两次B值之差小与允许误差为止。

当得到大地纬度B后,代入公式即可求出大地高H。

2.5.2高斯正反算转换模型

得到了点的大地坐标(L,B),就可以将其转化为某投影带的高斯平面坐标,我们将椭球参数代入高斯投影正算公式得到更适用于电算的高斯坐标计算的实用公式:

其计算结果的精度可达0.001m。

只要得到了高斯平面坐标(X,Y)后,便可通过高斯反算公式将其转换成大地坐标(B,L),高斯投影反算公式为:

它们的计算精度,即平面坐标可达

2.5.3坐标转换与参数计算转换模型

二维转换模型:

2个平移参数

(原点不重合产生的)

1个旋转参数

(坐标轴不平行产生的)

1个尺度参数

(两坐标系间的尺度不一致产生的)

为某点在A空间直角坐标系中的坐标。

为某点在B空间直角坐标系中的坐标。

为某点从A空间直角坐标系转换到B空间直角坐标系的两个平移参数。

β为从A空间直角坐标系转换到B空间直角坐标系中标系的两个平移参数。

β为从A空间直角坐标系转换到B空间直角坐标系中一个旋转参数。

m为从A空间直角坐标系转换到B空间直角坐标系中的一个尺度参数。

平面四参数求解步骤如下:

利用公共点计算坐标参数,但至少有两个公共点,当有i个公共点时,可利用最小二乘原理求解参数。

将B直角坐标系中的坐标视为观测值,设A直角坐标系下的坐标视为无误差,列误差方程为:

写成矩阵形式既:

由于各点的坐标可视为同精度独立观测值,因此P=I。

把各点坐标已知值带入上述误差方程,然后按下列公式求解出四参数:

三维转换模型:

3个平移参数

(原点不重合产生的)

3个旋转参数

(坐标轴不平行产生的)

1个尺度参数

(两坐标系间的尺度不一致产生的)

一般

为微小转角,模型可简化为:

为某点在A空间直角坐标系中的坐标。

为某点在B空间直角坐标系中的坐标。

为某点从A空间直角坐标系转换到B空间直角坐标系的三个平移参数。

为从A空间直角坐标系转换到B空间直角坐标系中三个旋转参数。

m为从A空间直角坐标系转换到B空间直角坐标系中的一个尺度参数。

七参数求解步骤如下:

利用公共点计算坐标参数,但至少有三个公共点,当有i个公共点时,可利用最小二乘原理求解参数。

将B空间直角坐标系中的坐标视为观测值,设A空间直角坐标系下的坐标视为无误差,列误差方程为:

写成矩阵形式既:

由于各点的坐标可视为同精度独立观测值,因此P=I。

把各点坐标已知值带入上述误差方程,然后按下列公式求解出七参数:

2.5.4三、六度带带号与中央子午线计算模型

求带号、中央子午线公式为:

3°带:

带号

中央子午线

L为当地经度

6°带:

带号

中央子午线

L为当地经度

 

第3章坐标转换程序设计

计划程序有哪些功能

 

程序界面设计

搜集坐标转换公式

运用VB编写程序

检查能否正常运行

以及数据正确性

完成程序

图3-1编写程序流程图

 

图3-2程序主界面

3.1大地坐标系与空间直角坐标系的转换

主要代码如下:

椭球参数设置

IfCombo1.Text="WGS-84"Then

a1=6378137:

b1=6356752.3142'a1为长半轴,b1为短半轴

Text7.Text=a1:

Text8.Text=b1

ElseIfCombo1.Text="CGCS2000"Then

a1=6378137:

b1=6356752.31414

Text7.Text=a1:

Text8.Text=b1

ElseIfCombo1.Text="北京54"Then

a1=6378245:

b1=6356863.0188

Text7.Text=a1:

Text8.Text=b1

ElseIfCombo1.Text="西安80"Then

a1=6378140:

b1=6356755.2882

Text7.Text=a1:

Text8.Text=b1

ElseIfCombo1.Text="自定义"Then

Text7.Enabled=True:

Text8.Enabled=True

a1=Text7.Text:

b1=Text8.Text

EndIf

大地坐标转空间直角坐标主要代码

B=Text1.Text:

L=Text2.Text:

H=Text3.Text

e12=(a1^2-b1^2)/a1^2

N=a1/Sqr(1-e12*(Sin(DuToHu(B))^2))

x=(N+H)*Cos(DuToHu(B))*Cos(DuToHu(L))

y=(N+H)*Cos(DuToHu(B))*Sin(DuToHu(L))

z=(N*(1-e12)+H)*Sin(DuToHu(B))

Text4.Text=x:

Text5.Text=y:

Text6.Text=z

空间直角坐标转大地坐标主要代码

x=Text4.Text:

y=Text5.Text:

z=Text6.Text

L=HuToDu(Atn(y/x))'计算经度

Ify/x<0Then

L=HuToDu(Atn(y/x)+3.14159265358979)

EndIf

e12=(a1^2-b1^2)/a1^2'第一偏心率平方

TB=z/Sqr(x^2+y^2)'初始纬度B正切值

c1=(a1^2)/b1

t=z/Sqr(x^2+y^2)

p=(c1*e12)/Sqr(x^2+y^2)

k=1+(a1^2-b1^2)/b1^2

TB1=t+(p*TB)/Sqr(k+TB^2)'用TanB作为未知量

DoUntilAbs(TB1-TB)<0.000000000001'迭代法

TB=TB1

TB1=t+(p*TB)/Sqr(k+TB^2)

Loop

B=Atn(TB)

N=a1/Sqr(1-e12*(Sin(B)^2))'卯酉圈曲率半径

H=z/Sin(B)-N*(1-e12)'大地高

Text1.Text=HuToDu(B):

Text2.Text=L:

Text3.Text=H

3.2高斯平面坐标与大地坐标的转换

高斯平面坐标(X,Y)与大地坐标(B,L)的相互关系式分为两类:

第一类称高斯投影正算公式,由(B,L)求(X,Y);第二类称高斯投影反算公式,由(X,Y)求(B,L)[13]。

由于电子计算机和各种可编程序电子计算器在测量上广泛应用,因此在这里给出适合电算的高斯正反算公式。

主要代码如下:

正算

DimB,L,x,yAsDouble

DimN,a1,b1,c,e12,e22,e1,e2,ll,l0,nn,tAsDouble

DimXX,bb0,bb2,bb4,bb6,bb8AsDouble

DimyjAsDouble

Dimmf,nf,nnf,tf,bf,bf1AsDouble

B=Text1.Text:

L=Text2.Text

l0=Text5.Text'输入中央子午线经度

yj=Text8.Text'Y坐标加常数

a1=Text6.Text:

b1=Text7.Text'椭球长短半轴

e12=(a1^2-b1^2)/a1^2'第一偏心率平方

e22=(a1^2-b1^2)/b1^2'第二偏心率平方

e1=Sqr((a1^2-b1^2)/a1^2)'第一偏心率

e2=Sqr((a1^2-b1^2)/b1^2)'第二偏心率

c=a1/Sqr(1-e12)'极点子午线曲率半径

bb0=1-(3/4)*e22+(45/64)*e22^2-(175/256)*e22^3+(11025/16384)*e22^4

bb2=bb0-1

bb4=(15/32)*e22^2-(175/384)*e22^3+(3675/8192)*e22^4

bb6=-(35/96)*

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1