当前位置:文档之家› 大地坐标与直角空间坐标转换计算公式

大地坐标与直角空间坐标转换计算公式

【参考文献】 [1] 孔祥元、郭际明、刘宗泉.《大地测量学基础》.武汉大学出版社.第一版.2001 年 9 月 [2] 李征航、黄劲松.《GPS 测量与数据处理》.武汉大学出版社.第一版.2005 年 3 月 [3] MAPGIS 使用教程
大地坐标空间直角坐标转换
(2009-10-22 21:12:41)
2 参心大地坐标转换为参心空间直角坐标:
X (N H ) * cos B * cos L
Y (N H ) * cos B * sin L
Z [N * (1 e2 ) H ]* sin B
公式中.N 为椭球面卯酉圈的曲率半径.e 为椭球的第一偏心率.a、b 椭球的长短半径.f
椭球扁率.W 为第一辅助系数
2 ArcGIS 坐标转换例子
2.1 应注意问题 使用 ArcGIS 如何实现 WGS84 经纬度坐标到 BJ54 高斯投影坐标的转换呢?在 ArcGIS 中.这 个坐标转换步骤简化了.用户只需要两个步骤就能够直接从最初的 WGS84 经纬度坐标转换到 BJ54 高斯投影坐标。这就是 ArcGIS 的强大之处。 接下来.我们做一个例子。假设我们已经知道了 7 参数.应该如何操作呢?在具体的操 作前.请大家一定注意以下三点: WGS84 的经纬度坐标值是用度来表示.而不能是度分秒表示 七参数的平移因子单位是米.旋转因子单位是秒.比例因子单位是百万。
y N cos Bl N cos3 B(1 t 2 2 )l3 6
N cos5 B(5 18t 2 t 4 14 2 58t 2 2 )l5 120
3、高斯投影反算公式:
.
.
l
1 cHale Waihona Puke s B fy N f1
1 6
(1
2t
2 f
2 f
)
y Nf
2
1
120
5
28t
2 f
24t
4 f
为控制投影后的长度变形.采用分带投影的方法。常用 3 度带或 6 度带分带.城市或工
程控制网坐标可采用不按 3 度带中央子午线的任意带。
2、高斯投影正算公式:
x X N sin B cos Bl 2 N sin B cos3 B(5 t 2 9 2 4 4)l 4
2
24
N sin B cos5 B(61 58t 2 t 4 )l 6 720
e a2 b2 或 e 2* f 1
a
f
e W (1 2 * sin 2 B
N a W
西安 80 椭球参数:
长半轴 a=6378140±5(m)
.
.
短半轴 b=6356755.2882m 扁 率 α=1/298.257
3 参心空间直角坐标转换参心大地坐标
L arctan( Y ) X
B arctan(
表 1 BJ54 与 WGS84 基准参数
BJ54 基准参数
参考椭球体 Krasovsky_1940
长半轴 6378245
短半轴 6356863.0188
扁率 298.3
WGS84 基准参数 WGS 84
6378137
6356752.3142
298.257224
很显然.WGS84 与 BJ54 是两种不同的大地基准面.不同的参考椭球体.因而两种地图下.同一 个点的坐标是不同的.无论是三度带六度带坐标还是经纬度坐标都是不同的。当要把 GPS 接 收到的点(WGS84 坐标系统的)叠加到 BJ54 坐标系统的底图上.那就会发现这些 GPS 点不 能准确的在它该在的地方.即“与实际地点发生了偏移”。这就要求把这些 GPS 点从 WGS84 的坐标系统转换成 BJ54 的坐标系统了。 有关 WGS84 与 BJ54 的坐标转换问题.实质是 WGS-84 椭球体到 BJ54 椭球体的转换问题。 如果我们是需要把 WGS84 的经纬度坐标转换成 BJ54 的高斯投影坐标.那就还会涉及到投影 变换问题。因此.这个转换过程.一般的 GPS 数据处理软件都是采用下述步骤进行的: 1)(B.L)84——(X.Y.Z)84.空间大地坐标到空间直角坐标的转换。 2)(X.Y.Z)84——(X.Y.Z)54.坐标基准的转换.即 Datum 转换。通常有三种转换方 法:七参数、简化三参数、Molodensky。
在 ArcGIS 中.7 参数法的名字是 Coordinate_Frame 方法。 有人在用 ArcGIS 进行不同椭球体间的坐标转换时.转换出来的结果不对.然后就写文章 说变形如何如何.很可能是由于他们没有注意上面这三个关键的问题造成的。 2.2 转换步骤 a、定义 7 参数的地理转换(Create Custom Geographic Transformation) 在 Arctool 中打开 Create Custom Geographic Transformation 工具.如图 1 所示:
printf("please insert long r a\n"); scanf("%f",&a); printf("please insert short r b\n "); scanf("%f",&b); e=sqrt(a*a-b*b)/a; c=a*a/b;
printf("1kongzhitodadi\n2daditokongzhi\0exit"); scanf("%d",&choice); while(choice!=0) { if(choice==2) {
printf("jingduL"); scanf("%f",&L); printf("weiduB"); scanf("%f",&B); printf("gaoduH");
scanf("%f",&H); W=sqrt(1-e*e*sin(B)*sin(B));
N=a/W; X=(N+H)*cos(B)*cos(L); Y=(N+H)*cos(B)*sin(L); Z=(N*(1-e*e)+H)*sin(B); printf("X=%f,Y=%f,Z=%f",X,Y,Z); } if(choice==1) { printf("zuobiao:\nX="); scanf("%f",&X); printf("zuobiao:\nY="); scanf("%f",&Y); printf("zuobiao:\nZ=");
转载 ▼ 标签: 杂谈
程序计算大地坐标与空间直角坐标转换
#include <stdio.h> #include <math.h> #define PI 3.1415926535897932384626433832795 double a,b,c,B,L,N,e,X,Y,Z,W,H;
.
.
int choice; double B1=0.0,B2=0.0; double delta=0.0; int main() {
.
.
3)(X.Y.Z)54——(B.L)54.空间直角坐标到空间大地坐标的转换。 4)(B.L)54——(x.y)54. 高斯投影正算。 从以上步骤不难看出.转换的关键是第二步.转换的参数。鉴于我国曾使用不同的坐标 基准(BJ54、State80、Correct54).各地的重力值又有很大差异.所以很难确定一套适合 全国且精度较好的转换参数。在 WGS-84 坐标和北京 54 坐标之间是不存在一套转换参数可 以全国通用的.在每个地方会不一样。 必须了解.在不同的椭球之间的转换是不严密的。那么.两个椭球间的坐标转换应该是 怎样的呢?一般而言比较严密的是用七参数法.即 3 个平移因子(X 平移.Y 平移.Z 平移). 3 个旋转因子(X 旋转.Y 旋转.Z 旋转).一个比例因子(也叫尺度变化 K)。国内参数来源 的途径不多.一般当地测绘部门会有。通行的做法是:在工作区内找三个以上的已知点.利 用已知点的 BJ54 坐标和所测 WGS84 坐标.通过一定的数学模型.求解七参数。若多选几个已 知点.通过平差的方法可以获得较好的精度。如果区域范围不大.最远点间的距离不大于 30Km(经验值).这可以用三参数.即只考虑 3 个平移因子(X 平移.Y 平移.Z 平移).而将 旋转因子及比例因子(X 旋转.Y 旋转.Z 旋转.尺度变化 K)都视为 0.所以三参数只是七参 数的一种特例。北京 54 和西安 80 也是两种不同的大地基准面.不同的参考椭球体.他们之 间的转换也是同理。在 ArcGIS 中提供了三参数、七参数转换法。而在同一个椭球里的转换 都是严密的.在同一个椭球的不同坐标系中转换需要用到四参数转换.举个例子.在深圳既有 北京 54 坐标又有深圳坐标.在这两种坐标之间转换就用到四参数.计算四参数需要两个已知 点
6
2 f
8
2 f
t
2 f
y N f
4
B B f
tf 2M f
y
y Nf
1
1 12
5
3t
2 f
2 f
9
2 f
t
2 f
y N f
2
1 360
61
90t
2 f
45t
4 f
y N f
4
1 坐标转换简介
坐标系统之间的坐标转换既包括不同的参心坐标之间的转换.或者不同的地心坐标系之 间的转换.也包括参心坐标系与地心坐标系之间的转换以及相同坐标系的直角坐标与大地坐 标之间的坐标转换.还有大地坐标与高斯平面坐标之间的转换。在两个空间角直坐标系中. 假设其分别为 O--XYZ 和 O--XYZ.如果两个坐标系的原点相同.通过三次旋转.就可以使两个 坐标系重合;如果两个直角坐标系的原点不在同一个位置.通过坐标轴的平移和旋转可以取 得一致;如果两个坐标系的尺度也不尽一致.就需要再增加一个尺度变化参数;而对于大地 坐标和高斯投影平面坐标之间的转换.则需要通过高斯投影正算和高斯投影反算.通过使用 中央子午线的经度和不同的参考椭球以及不同的投影面的选择来实现坐标的转换。 如何使用 ArcGIS 实现 WGS84 经纬度坐标到 BJ54 高斯投影坐标的转换?这是很多从事 GIS 工作或者测绘工作者普遍遇到的问题。本文目的在于帮助用户解决这个问题。 我们通常说的 WGS-84 坐标是指经纬度这种坐标表示方法.北京 54 坐标通常是指经过高 斯投影的平面直角坐标这种坐标表示方法。为什么要进行坐标转换?我们先来看两组参数. 如表 1 所示:
相关主题