大地坐标系和空间直角坐标系转换

大地坐标系和空间直角坐标系转换
大地坐标系和空间直角坐标系转换

#include

#include

#include

#include

#define MAX 100

#define PI 3.1415926

/////////////////////////////////// 结构体存放B,L,H

struct BLH

{char name1[20];

char name2[20];

double B;

char name3[20];

double L;

char name4[20];

double H;

};

/////////////////////////////// 结构体存放X,Y,Z

struct XYZ

{char name1[20];

char name2[20];

double X;

char name3[20];

double Y;

char name4[20];

double Z;

};

///////////////////////////////// 文件输入B,L,H

double FILEIN(BLH &b,char *fname)

{

ifstream in(fname,ios::nocreate); // 建立文件流,并与输入文件名建立关联if(!in)

{

cout<

cout<<"--------------------------请手动输入数据-------------------------\n"<

return 0;

}

in>>https://www.360docs.net/doc/954934693.html,1;

in>>https://www.360docs.net/doc/954934693.html,2;

in>>b.B;

in>>https://www.360docs.net/doc/954934693.html,3;

in>>b.L;

in>>https://www.360docs.net/doc/954934693.html,4;

in>>b.H;

in.close();

}

//////////////////////////////////////////////// 文件输入X,Y,Z

double FILEIN1(XYZ &b,char *fname)

{

ifstream in(fname,ios::nocreate); // 建立文件流,并与输入文件名建立关联if(!in)

{

cout<

cout<<"-------------------------- 请手动输入数据-------------------------\n"<

return 0;

}

in>>https://www.360docs.net/doc/954934693.html,1;

in>>https://www.360docs.net/doc/954934693.html,2;

in>>b.X;

in>>https://www.360docs.net/doc/954934693.html,3;

in>>b.Y;

in>>https://www.360docs.net/doc/954934693.html,4;

in>>b.Z;

in.close();

return 1;

}

////////////////////////////////////////////////////////

double d_h(double angle) //角度化弧度

{

double a,b;

angle=modf(angle,&a);

angle=modf(angle*100.0,&b);

return (a+b/60.0+angle/36.0)*(PI+3.0E-16)/180.0;

}

///////////////////////////////////////////////////////////

double h_d(double angle) //弧度化角度

{

double a,b,c;

angle=modf(angle*180.0/(PI-3.0E-16),&a);

angle=modf(angle*60.0,&b);

angle=modf(angle*60.0,&c);

return a+b*0.01+c*0.0001+angle*0.0001;

}

/////////////////////////////////////////// 键盘输入B,L,H

jianpan(BLH &a)

{cout<<"请输入大地坐标B "<

cin>>a.B;

cout<<"请输入大地坐标L "<

cout<<"请输入大地坐标H "<

cin>>a.H;

}

///////////////////////////////////////// 键盘输入X,Y,Z

jianpan1(XYZ &a)

{

cout<<"请输入空间直角坐标X "<

cin>>a.X;

cout<<"请输入空间直角坐标Y "<

cin>>a.Y;

cout<<"请输入空间直角坐标Z "<

cin>>a.Z;

}

////////////////////////////////////////////////////// 大地坐标系换算到空间直角坐标系

double B_X(BLH &a)

{double aa[MAX][MAX];

double a1,b1,N,E1,X,Y,Z;

int k,n,m;

char outfilename[20],fname[20];

cout<<"请选择:"<

cout<<"1:文件输入"<

cout<<"2:键盘输入"<

cin>>m;

if(m==1)

{cout<<"请输入文件名"<

cin>>fname;

if(FILEIN(a,fname));

else

{if(jianpan(a));

else

{cout<<"输入有误,程序中止,请重新运行"<

return false;

}

}

}

else if(m==2)

jianpan(a);

else

{cout<<"输入代码有误,程序中止,请重新运行"<

return false;}

if(a.B<-90||a.B>90)

{cout<<"输入B有误,程序中止,请重新运行"<

return false;}

if(a.L<0||a.L>360)

{cout<<"输入L有误,程序中止,请重新运行"<

return false;}

if(a.H<0)

{cout<<"输入H有误,程序中止,请重新运行"<

return false;}

aa[0][0]=6378245.0000000000; aa[0][1]=6356863.0187730473;

aa[1][0]=6378140.0000000000; aa[1][1]=6356755.2881575287;

aa[2][0]=6378137.0000000000; aa[2][1]=6356752.3142;

aa[3][0]=6378137.000; aa[3][1]=6356752.314;

cout<<"请选择椭球体"<

cout<<"0: 克拉索夫斯基椭球体"<

cout<<"1: 1975年国际椭球体"<

cout<<"2: WGS-84椭球体"<

cout<<"3: 2000中国大地坐标系"<

cin>>k;

if(k!=0&&k!=1&&k!=2&&k!=3)

{cout<<"输入代码有误,程序中止,请重新运行"<

return false;}

cout<

a1=aa[k][0];

b1=aa[k][1];

E1=(a1*a1-b1*b1)/(a1*a1);

a.B=d_h(a.B);

a.L=d_h(a.L);

N=a1/sqrt(1-E1*sin(a.B)*sin(a.B));

X=(N+a.H)*cos(a.B)*cos(a.L);

Y=(N+a.H)*cos(a.B)*sin(a.L);

Z=(N*(1-E1)+a.H)*sin(a.B);

cout<<"转换后的空间直角坐标是:"<

cout<<"X "<

cout<<"Y "<

cout<<"Z "<

cout<<"要保存数据吗?"<

cout<<"1:保存"<

cout<<"2不保存"<

cin>>n;

if(n==1)

{cout<<"请输入保存的文件名"<

cin>>outfilename;

ofstream out(outfilename);

out.precision(10);

if(!out) cout<<"can not open save file!"<

out<<"空间直角坐标"<

out<<"X"<

out<

out<<"Y"<

out<

out<<"Z"<

out<

out.close();

}

else if(n==2);

else

{cout<<"输入代码有误,程序中止,请重新运行"<

return false;}

cout<<" 谢谢您使用龚晓鹏编的程序,所有任务均已完成,欢迎下次使用,祝生活愉快"<

}

////////////////////////////////////////////////////////

////////////////////////////////////////////////////////// 空间直角坐标系换算到大地坐标系

double X_B(XYZ &a)

{double a1,b1,N,E1,B,L,H,B0,aa[MAX][MAX];

double tanB[MAX][1];

int i=0,n,k,m;

char outfilename[20],fname[20]; //选择数据输入方式

cout<<"请选择:"<

cout<<"1:文件输入"<

cout<<"2:键盘输入"<

cin>>m;

if(m==1)

{cout<<"请输入文件名"<

cin>>fname;

if(FILEIN1(a,fname));

else

{if(jianpan1(a));

else

{cout<<"输入有误,程序中止,请重新运行"<

return false;

}

}

}

else if(m==2)

jianpan1(a);

else

{cout<<"输入代码有误,程序中止,请重新运行"<

return false;}

aa[0][0]=6378245.0000000000; aa[0][1]=6356863.0187730473;

aa[1][0]=6378140.0000000000; aa[1][1]=6356755.2881575287;

aa[2][0]=6378137.0000000000; aa[2][1]=6356752.3142;

aa[3][0]=6378137.000; aa[3][1]=6356752.314;

cout<<"请选择椭球体"<

cout<<"0: 克拉索夫斯基椭球体"<

cout<<"1: 1975年国际椭球体"<

cout<<"2: WGS-84椭球体"<

cout<<"3: 2000中国大地坐标系"<

cin>>k;

if(k!=0&&k!=1&&k!=2&&k!=3)

{cout<<"输入代码有误,程序中止,请重新运行"<

return false;}

a1=aa[k][0];

b1=aa[k][1];

E1=(a1*a1-b1*b1)/(a1*a1);

L=atan(a.Y/a.X);

tanB[0][0]=a.Z*(1+E1)/sqrt(a.X*a.X+a.Y*a.Y);

do{B0=atan(tanB[i][0]);

tanB[i+1][0]=(1/sqrt(a.X*a.X+a.Y*a.Y)*(a.Z+a1*E1*tanB[i][0]/sqrt(1+(1-E1)*tanB[i][0]*tanB[i] [0])));

B=atan(tanB[i+1][0]);

i++;

}while(B-B0>0.000000000000001);

cout<

N=a1/sqrt(1-E1*sin(B)*sin(B));

H=sqrt(a.X*a.X+a.Y*a.Y)/cos(B)-N;

B=h_d(B);

L=h_d(L);

if(a.X<0&&a.Y<0)

L=180+L;

else if(a.X<0&&a.Y>0)

L=180+L;

else if(a.X>0&&a.Y<0)

L=360+L;

cout<<"转换后的大地坐标是:"<

cout<<"B "<

cout<<"L "<

cout<<"H "<

cout<<"要保存数据吗?"<

cout<<"1:保存"<

cout<<"2不保存"<

cin>>n;

if(n==1)

{cout<<"请输入保存的文件名"<>outfilename;

ofstream out(outfilename);

out.precision(15);

if(!out) cout<<"can not open save file!"<

out<<"空间直角坐标"<

out<<"B"<

out<

out<<"L"<

out<

out<<"H"<

out<

out.close();}

else if(n==2);

else

{cout<<"输入代码有误,程序中止,请重新运行"<

return false;}

cout<<" 谢谢您使用龚晓鹏编的程序,所有任务均已完成,欢迎下次使用,祝生活愉快"<

}

/////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////

main()

{cout.precision(15);

int m;

BLH a;

XYZ b;

cout<<"请选择:"<

cout<<"1,大地坐标系转换成空间直角坐标系"<

cout<<"2,空间直角坐标系转换成大地坐标系"<

cin>>m;

if(m==1)

B_X(a);

else if(m==2)

X_B(b);

else cout<<"输入代码有误,程序中止,请重新运行";

}

空间直角坐标系坐标转换方法

坐标转换方法 空间直角坐标系如果其原点不动,绕着某一个轴旋转而构成的新的坐标系,这个过程就叫做坐标旋转。在旧坐标系中的坐标与在旋转后新坐标系中的坐标有一定的转换关系,这种转换关系可以用转换矩阵来表示。 如图5.7,直角坐标系XYZ,P点的坐标为(x, y, z),其相应的在XY 平面,XZ平面,YZ平面分别为M(x, y,0),Q(x,0, z)和N(0, y, z)。 图5.7直角坐标系XYZ 设?表示第j 轴的旋转角度,R j (?) 表示绕第j 轴的旋转,其正方向是沿坐标轴向原点看去的逆时针方向。很明显当j 轴为旋转轴时,它对应的坐标中的j 分量是不变的。由于直角坐标系是对称的,下面我们以绕Z轴旋转为例推导其旋转变换矩阵,其它两个轴推导和它是一样的。 设图5.7的坐标绕Z轴逆时针旋转θ角度,新坐标为X 'Y'Z',如图5.8所示: 图5.8 坐标绕Z 轴逆时针旋转θ角度 由于坐标中的z 分量不变,我们可以简化地在XY 平面进行分分析,如图

5.9所示: 图5.9坐标绕Z 轴逆时针旋转θ 角度的XY 平面示意图 点 M X 和点M X ' 分别是M 点在X 轴和X '轴的投影。如图5.9 cos cos() sin sin() X X X X x OM OM MOM OM y MM OM MOM OM ?θ?θ==∠=-??==∠=-? (5-1) cos cos sin sin X X X X x OM OM MOM OM y MM OM MOM OM ? ?'''''==∠=??'==∠=? (5-2) 把(5-1)式按照三角函数展开得: cos cos sin sin sin cos cos sin x OM OM y OM OM ?θ?θ ?θ?θ=+??=+? (5-3) 把(5-2)式代入(5-3)式得: cos sin sin cos x x y y x y θθ θθ''=+??''=-+? (5-4) 坐标中的z 分量不变,即z = z'这样整个三维坐标变换就可以写成(用新坐标表 示旧坐标) cos sin sin cos x x y y x y z z θθ θθ''=+? ?''=-+??' =? (5-5) 把式(5-5)用一个坐标旋转变换矩阵R Z (θ) 表示可以写成:

不同空间直角坐标系的转换

不同空间直角坐标系的转换 欧勒角 不同空间直角坐标系的转换,包括三个坐标轴的平移和坐标轴的旋转,以及两个坐标系的尺度比参数,坐标轴之间的三个旋转角叫欧勒角。 三参数法 三参数坐标转换公式是在假设两坐标系间各坐标轴相互平行,轴系间不存在欧勒角的条件下得出的。实际应用中,因为欧勒角不大,可以用三参数公式近似地进行空间直角坐标系统的转换。公共点只有一个时,采用三参数公式进行转换。

七参数法 用七参数进行空间直角坐标转换有布尔莎公式,莫洛琴斯基公式和范氏公式等。下面给出布尔莎七参数公式: 坐标转换多项式回归模型 坐标转换七参数公式属于相似变换模型。大地控制网中的系统误差一般呈区域性,当区域较小时,区域性的系统误差被相似变换参数拟合,故局部区域的坐标转换采用七参数公式模型是比较适宜的。但对全国或一个省区范围内的坐标转换,可以采用多项式回归模型,将各区域的系统偏差拟合到回归参数中,从而提高坐标转换精度。 两种不同空间直角坐标系转换时,坐标转换的精度取决于坐标转换的数学模型和求解转换系数的公共点坐标精度,此外,还与公共点的分布有关。鉴于地面控制网系统误差在???? ??????+??????????=??????????000111222Z Y X Z Y X Z Y X ???? ??????+????????????????????---+??????????+=??????????000111111222000)1(Z Y X Z Y X Z Y X m Z Y X X Y X Z Y Z εεεεεε

不同区域并非是一个常数,所以采用分区进行坐标转换能更好地反映实际情况,提高坐标转换的精度。

大地坐标系转换

从大地水准面起算的陆地高度,称为绝对高度或海拔。 大地水准面就是由静止海水面并向大陆延伸 与平均海水面相吻合的称为大地水准面 所形成的不规则的封闭曲面。它就是重力等位面,即物体沿该面运动时,重力不做功(如水在这个面上就是不会流动的)。 地心直角坐标系又称为空间直角坐标系。如图2、1所示,她以地球的地心O为坐标原点,XOY平面在赤道面上,OX正向指向格林尼治子午线与赤道的交点,OZ轴指向地球北极与地球的极轴重合。该坐标系与地球紧 密结合在一起,随着地球的旋转而旋转。 图2、1 地心直角坐标系 2、1、2 大地坐标系

从微观上来说,地球并非就是一个圆球体,而就是近似椭圆体,其极半径约为6 357km,赤道半径约为6 378km,相差约21km,地球表面凹凸不平。 为了得到高的定位精度,在定位时必须用与地球最吻合的椭球体来代替地球。这个椭球体就是指所取得椭球面与大地水准面之间高度差的平方与最小。这个椭球称为参考椭球或基准椭球。大地水准面就是指假想的无潮汐、无温差、无风、无盐的海面。基准椭球面、大地水准面与实际的地形的关系如图2、2所示。在地球任意一点G的大地水准面高度就是指该点大地水准面与基准椭球面之间的距离。G点的海拔高度就是指该点实际地形与大地水准面之间的距离。 图2、2 基准椭球面与大地水准面 地球上某点,常用大地坐标或称地理坐标表示,即用经度、纬度与高度表示。大地坐标的基准圈就是赤道。通过英国伦敦的格林尼治天文台的地球子午线称为0经度线,它与赤道的交点就是大地坐标的起算点。地球上一点的经度,就就是以格林尼治子午线与该点子午线间所截的赤道短弧所对的圆心角,常用λ表示。经度的计算就是以格林尼治子午线算起,向东与向西都就是0o~180o。向东称为东经,用E表示;向西称为西经,用W 表示。地球上一点的纬度,就是以赤道为基准,子午线在该点的法线与赤道面的交角为该点的纬度,用φ表示。纬线从赤道算起,向北向南都就是0o~90o。向赤道以北称为北纬,用N表示;向赤道以南称为南纬,用S表示。 地面上一点的高度H就是指该点的实际地形与基准椭球面之间的距离,即: H = N + h N为大地水准面高度;h为海拔高度。 2、2 坐标转换

空间大地坐标系与平面直角坐标系转换公式

§2.3.1 坐标系的分类 正如前面所提及的,所谓坐标系指的是描述空间位置的表达形式,即采用什么方法来表示空间位置。人们为了描述空间位置,采用了多种方法,从而也产生了不同的坐标系,如直角坐标系、极坐标系等。 在测量中常用的坐标系有以下几种: 一、空间直角坐标系 空间直角坐标系的坐标系原点位于参考椭球的中心,Z 轴指向参考椭球的北极,X 轴指向起始子午面与赤道的交点,Y 轴位于赤道面上且按右手系与X 轴呈90°夹角。某点在空间中的坐标可用该点在此坐标系的各个坐标轴上的投影来表示。空间直角坐标系可用图2-3来表示: 图2-3 空间直角坐标系 二、空间大地坐标系 空间大地坐标系是采用大地经、纬度和大地高来描述空间位置的。纬度是空间的点与参考椭球面的法线与赤道面的夹角;经度是空间中的点与参考椭球的自转轴所在的面与参考椭球的起始子午面的夹角;大地高是空间点沿参考椭球的法线方向到参考椭球面的距离。空间大地坐标系可用图2-4来表示:

图2-4空间大地坐标系 三、平面直角坐标系 平面直角坐标系是利用投影变换,将空间坐标空间直角坐标或空间大地坐标通过某种数学变换映射到平面上,这种变换又称为投影变换。投影变换的方法有很多,如横轴墨卡托投影、UTM 投影、兰勃特投影等。在我国采用的是高斯-克吕格投影也称为高斯投影。UTM 投影和高斯投影都是横轴墨卡托投影的特例,只是投影的个别参数不同而已。 高斯投影是一种横轴、椭圆柱面、等角投影。从几何意义上讲,是一种横轴椭圆柱正切投影。如图左侧所示,设想有一个椭圆柱面横套在椭球外面,并与某一子午线相切(此子午线称为中央子午线或轴子午线),椭球轴的中心轴CC ’通过椭球中心而与地轴垂直。 高斯投影满足以下两个条件: 1、 它是正形投影; 2、 中央子午线投影后应为x 轴,且长度保持不变。 将中央子午线东西各一定经差(一般为6度或3度)范围内的地区投影到椭圆柱面上,再将此柱面沿某一棱线展开,便构成了高斯平面直角坐标系,如下图2-5右侧所示。 图2-5 高斯投影 x 方向指北,y 方向指东。 可见,高斯投影存在长度变形,为使其在测图和用图时影响很小,应相隔一定的地区,另立中央子午线,采取分带投影的办法。我国国家测量规定采用六度带和三度带两种分带方法。六度带和三度带与中央子午线存在如下关系: 366 N L =中; n L 33=中 其中,N 、n 分别为6度带和3度带的带号。

GPS坐标和国家大地坐标之间的转换

GPS坐标和国家大地坐标之间的转换 一、前言 WGS-84坐标系是目前GPS所采用的坐标系统,GPS所发布的星历参数就是基于此坐标系统的。WGS-84坐标系统的全称是World Geodical System-84(世界大地坐标系-84),它是一个地心地固坐标系统。WGS-84坐标系统由美国国防部制图局建立,于1987年取代了当时GPS所采用的坐标系统-WGS-72坐标系统而成为GPS的所使用的坐标系统。WGS-84坐标系的坐标原点位于地球的质心,轴指向BIH1984.0定义的协议地球极方向,轴指向BIH1984.0的启始子午面和赤道的交点。 采用椭球参数为:a=6 378 137m,f= 1/298.257 223 563。 北京54 坐标系、西安80 坐标系—属于参心坐标系, 北京54 坐标系采用克拉索夫斯基椭球参数,长轴a= 6 3 78 2 4 5 米, 扁率f=l : 2 98.3 ;西安80 大地系坐标系椭球参数采用国际大=地测量和地球物理联合19 7 5 后推荐的地球椭球参数, 长轴a= 6 3 7 8 140 米, 扁率f1 : 298.257,大地原点在我西安市径阳县永乐镇。西安80 坐标系的建立是在54 年北京坐标系的基础上完成的。 在实际的工作中,对于GPS的测量数据。我们需要将其转换成所需要的54或80坐标系,才能够使用。或是将其转换成相应的地方坐标系。在转换的过程中需要进行一系列的变换。本文将对其过程做详细的说明。 二、转换过程 (1)数据测量:在实际操作中,首先进行的是数据的观测。根据实际工作需要,采用相应的观测方法进行观测,得到合格的测量成果。本文主要是针对GPS控制网的转换来说明的。 (2)平差:在GPS控制网的测量工程中,在进行完基线测量(地面坐标和高程)后,需要对测量结果进行平差,得到相应的平差结果。下面对相应的条件平差①做具体说明: AV-W=0 [1] L#=L+V [2] 基础方程和它的解: 设有r个平差线性条件方程: [3]

坐标转换之计算公式

坐标转换之计算公式 一、参心大地坐标与参心空间直角坐标转换 1名词解释: A :参心空间直角坐标系: a) 以参心0为坐标原点; b) Z 轴与参考椭球的短轴(旋转轴)相重合; c) X 轴与起始子午面和赤道的交线重合; d) Y 轴在赤道面上与X 轴垂直,构成右手直角坐标系0-XYZ ; e) 地面点P 的点位用(X ,Y ,Z )表示; B :参心大地坐标系: a) 以参考椭球的中心为坐标原点,椭球的短轴与参考椭球旋转轴重合; b) 大地纬度B :以过地面点的椭球法线与椭球赤道面的夹角为大地纬度B ; c) 大地经度L :以过地面点的椭球子午面与起始子午面之间的夹角为大地经度L ; d) 大地高H :地面点沿椭球法线至椭球面的距离为大地高H ; e) 地面点的点位用(B ,L ,H )表示。 2 参心大地坐标转换为参心空间直角坐标: ?? ???+-=+=+=B H e N Z L B H N Y L B H N X sin *])1(*[sin *cos *)(cos *cos *)(2 公式中,N 为椭球面卯酉圈的曲率半径,e 为椭球的第一偏心率,a 、b 椭球的长短半 径,f 椭球扁率,W 为第一辅助系数 a b a e 2 2-= 或 f f e 1*2-= W a N B W e =-=22sin *1( 3 参心空间直角坐标转换参心大地坐标

[]N B Y X H H e N Y X H N Z B X Y L -+=+-++==cos ))1(**)()(*arctan( )arctan(2 2222 二 高斯投影及高斯直角坐标系 1、高斯投影概述 高斯-克吕格投影的条件:1. 是正形投影;2. 中央子午线不变形 高斯投影的性质:1. 投影后角度不变;2. 长度比与点位有关,与方向无关; 3. 离中央子午线越远变形越大 为控制投影后的长度变形,采用分带投影的方法。常用3度带或6度带分带,城市或工 程控制网坐标可采用不按3度带中央子午线的任意带。 2、高斯投影正算公式: 5 2224253 2236 4254 42232)5814185(cos 120 )1(cos 6 cos )5861(cos sin 720 495(cos sin 24 cos sin 2l t t t B N l t B N Bl N y l t t B B N l t B B N Bl B N X x ηηηηη-++-++-+=+-+++-++=) 3、高斯投影反算公式:

直角坐标系下的画图及其转换公式

直角坐标系下的画图及其转换公式 在直角坐标系下我们的圆方程是: 222()()x a y b R -+-= 其中,a 和b 是圆心,R 是半径。但在画圆的时候,你就会发现如果按该公式画圆,多半是不成功的,或者画了一半,所以在matlab 中画圆,一半采用极坐标形式 圆对应的极坐标转换公式为: cos sin x R y R θ θ =?? =?(公式1) 这个很容易理解,你画个单位圆来看看就知道了。 那么上面那个黑色的点的x 坐标和y 坐标用半径和连线与坐标轴x 的夹角来表示,就得到了公式1。 观察这个公式,我们发现,在极坐标系下,圆的半径没变,夹角是在不断变化的,所以,在matlab 中极坐标系下画单位圆的问题可以这样来考虑: 首先将夹角360等分,也就是每一个步长为360度/360; 但需要指出的是,matlab 中正弦预先函数的变量其实是弧度,并不是度。这个你在matlab 命令窗里就可以试: 比如你要得到30度的正弦值,一般是sin (pi/6),而不是sin(30)。这里的pi 是3.1415926的在matlab 中的表示。 所以我们的步长应该是弧度制的,我们知道,1度对应的弧度为360/(2*pi)。也即180/pi; 所以我们的夹角应该是: Theta=0:180/pi:2*pi-180/pi; 注意,由于是从零开始画图的,所以最后一个应该是2*pi-180/pi;而不是2*pi ; 这个时候我们可以开始画图了 X=R*cos(Theta); Y=R*sin(Theta); Plot(x,y,’r.’) axis square %保证画出来的圆是圆的。

参考系坐标系及转换汇总

1 天球坐标系、地球坐标系和卫星测量中常用的坐标系的建立方法。天球直角坐标系 天球坐标系 天球球面坐标系 坐标系 地球直角坐标系 地球坐标系 地球大地坐标系 常用的天球坐标系:天球赤道坐标系、天球地平坐标系和天文坐标系。在天球坐标系中,天体的空间位置可用天球空间直角坐标系或天球球面坐标系两种方式来描述。 1 天球空间直角坐标系的定义 地球质心O为坐标原点,Z轴指向天球北极,X轴指向春分点,Y轴垂直于XOZ平面,与X轴和Z轴构成右手坐标系。则在此坐标系下,空间点的位置由坐标(X,Y,Z)来描述。 春分点:当太阳在地球的黄道上由天球南半球进入北半球,黄道与赤道的交 点).

2 天球球面坐标系的定义 地球质心O为坐标原点,春分点轴与天轴(天轴:地球自转的轴)所在平面为天球经度(赤经)测量基准——基准子午面,赤道为天球纬度测量基准而建立球面坐标。空间点的位置在天球坐标系下的表述为(r,α,δ)。

表示:2-1天球空间直角坐标系与天球球面坐标系的关系可用图

岁差和章动的影响 岁差:地球实际上不是一个理想的球体,地球自转轴方向不再保持不变,这 使春分点在黄道上产生缓慢的西移,这种现象在天文学中称为岁差。章动:在日月引力等因素的影响下,瞬时北天极将绕瞬时平北天极旋转,大致呈椭圆,这种现象称为章动。 极移:地球自转轴相对地球体的位置并不是固定的,因而,地极点在地球表面上的位置,是随时间而变化的,这种现象称为极移。地球的自转轴不仅受日、月引力作用而使其在空间变化,而且还受地球内部质量不均匀影响在地球内部运动。前者导致岁差和章动,后者导致极移。 协议天球坐标系:为了建立一个与惯性坐标系统相接近的坐标系,人们通常选择某一时刻,作为标准历元,并将此刻地球的瞬时自转轴(指向北极)和地心至瞬时春分点的方向,经过瞬时的岁差和章动改正后,分别作为X轴和Z轴的指向,。协议天球坐标系由此建立的坐标系称为 3 地球坐标系

空间直角坐标系的旋转转换

空间直角坐标系的旋转转换 using System; using System.Collections.Generic; using https://www.360docs.net/doc/954934693.html,ponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.IO; using System.Windows.Forms; namespace ReferenceTransition { public partial class Form1 : Form { public Form1() { this.MaximizeBox = false; InitializeComponent(); } private double x, y, z; private double i, j, k; private double a1,a2,a3; private double b1, b2, b3; private double c1, c2, c3; private double rx, ry, rz; private string t1, t2, t3; private string k1, k2, k3; private void button1_Click(object sender, EventArgs e) { textBox1.Text = ""; textBox2.Text = ""; textBox3.Text = ""; textBox4.Text = ""; textBox5.Text = ""; textBox6.Text = ""; textBox7.Text = ""; textBox8.Text = ""; textBox9.Text = ""; richTextBox1.Text = ""; } private void button4_Click(object sender, EventArgs e) { try {

平面直角坐标变换

§5.7 平面直角坐标变换 为了考虑同一图形在不同的坐标系下的方程之间的关系,我们首先需要建立同一个点在不同的坐标系下的坐标之间的关系,这就是坐标变换的问题,因为我们研究的图形是点的轨迹. 我们仅考虑平面直角坐标变换. 设在平面上给出了由两个标架 {O ;i , j } 和 {O';i', j' } 所决定的右手直角坐标系,这里i 和j 以及i' 和j' 是两组坐标基向量,它们是平面上的两个标准正交基,我们依次称这两个坐标系为旧坐标系和新坐标系. 由于坐标系的位置完全由原点和坐标基向量所决定,所以新坐标系与旧坐标系之间的关系,就由O' 在 {O ;i , j } 中的坐标以及i' 和j' 在 {O ;i , j } 中的分量所决定. 任一直角坐标变换总可以分解成移轴(也叫坐标平移)和转轴(也叫坐标旋转)两个步骤. 1.移轴 如果两个标架 {O ;i , j } 和 {O';i , j' } 的原点O 与O' 不同,O' 在{O ;i , j }中的坐标为 (x 0,y 0),但两标架的坐标基向量相同,即有 i' = i , j' = j 那么标架 {O';i', j'} 可以看成是由标架 {O ;i , j } 将原点平移到O'点而得来的(图5.7.1).这种坐标变换叫做移轴(坐标平移). 设P 是平面内任意一点,它对标架 {O ;i , j } 和 {O';i', j'} 的坐标分别为 (x ,y ) 与 (y x '',),则有 P O O O OP '+= 但 j i y x +=, j i y x O '+'=', j i 00y x O +=' 于是有 j i j i )()(00y y x x y x +'++'=+ 故 {x ,y } = {x 0,y 0} + {x',y' } 根据向量相等的定义得移轴公式为 图5.7.1 ? ? ?+'=+'=00 y y y x x x (5.7-1) 从中解出x' 和y',就得逆变换公式为 ? ? ?-='-='00 y y y x x x (5.7-2) 2.转轴 若两个标架 {O ;i , j } 和 {O';i', j'} 的原点相同,即O = O',但坐标基向量不同,且有∠(i ,i' ) = α,则标架 {O';i',j'} 可以看成是由标架 {O ;i ,j } 绕O 点旋转α 角而得

高斯平面直角坐标系与大地坐标系相互转化

高斯平面直角坐标系与大地坐标系相互转化 高斯平面直角坐标系与大地坐标系转换 1. 高斯投影坐标正算公式(1) 高斯投影正算:已知椭球面上某点的大地坐标(L,B),求该点在高斯投影平面上的直角坐标(x,y),即(L,B)->(x,y)的坐标变换。(2) 投影变换必须满足的条件中央子午线投影后为直线; 中央子午线投影后长度不变; 投影具有正形性质,即正形投影条件。(3) 投影过程在椭球面上有对称于中央子午线的两点P 1 和P 2 ,它们的大地坐标分别为(L,B)及(l,B),式中l 为椭球面上P 点的经度与中央子午线(L 0 )的经度差:l=L-L 0 ,P 点在中央子午线之东,l 为正,在西则为负,则投影后的平面坐标一定为P 1 ’(x,y)和P 2 ’(x,-y)。(4) 计算公式 4 ' ' 2 2 3 4 ' ' 2 ' ' 2 ' ' ) 9 5 ( cos sin 2 sin 2 l t B B N Bl N X x 5 ' ' 4 2 5 5 ' ' 3 ' ' 2 2 3 ' ' ' ' ' ' ) 18 5 ( cos 120 ) 1 ( 6 cos l t t B N l t B N Bl N y 当要求转换精度精确至0.001m时,用下式计算: 6 ' ' 4 2 5 6 ' ' 4 ' ' 4 2 2 3 4 ' ' 2 ' ' 2 ' ' ) 58 61 ( cos sin 720 ) 4 9 5 ( cos sin 24 sin 2 l t t B B N l t B B N Bl N X x 5 ' ' 2 2 2 4 2 5 5 ' ' 3 ' ' 2 2 3 3 ' ' ' ' ' ' ) 58 14 18 5 ( cos 720 ) 1

参考系坐标系及转换

1天球坐标系、地球坐标系和卫星测量中常用的坐标系的建立方法。 L天球直角坐标系 厂天球坐标系 天球球面坐标系 地球直角坐标系地球大地坐标系 常用的天球坐标系:天球赤道坐标系、天球地平坐标系和天文坐标系。 在天球坐标系中,天体的空间位置可用天球空间直角坐标系或天球球面坐标系两种方式来描述。 1天球空间直角坐标系的定义 地球质心0为坐标原点,Z轴指向天球北极,X轴指向春分点,丫轴垂直于XOZ 平面,与X轴和Z轴构成右手坐标系。则在此坐标系下,空间点的位置由坐标(X,丫Z)来描述。 春分点:当太阳在地球的黄道上由天球南半球进入北半球,黄道与赤道的交点)

A <空闵直笥坐瑟厂K V : z 丿的楚辽” 2天球球面坐标系的定义 地球质心0为坐标原点,春分点轴与天轴(天轴:地球自转的轴)所在平面为天 球经度(赤经)测量基准一一基准子午面,赤道为天球纬度测量基准而建立球面 坐标。空间点的位置在天球坐标系下的表述为(r ,a,S )。 天欢申诗与地球质?M 重合T 赤礙刊为舍天黏 和感分点的天球子牛面 与过天体$的天球子牛面 之间的夾角,未纬 S 为 原点Mi 天体£的连規与 天球击道面之间的夹角, 旬題丫为展点Mi 天体S 球球】?坐抚1就,S 1 r )的C 义: 天球空间直角坐标系与天球球面坐标系的关系可用图 2-1表示: 感鼻—地I 球质心M 一孑塾一指向天球北奴Pn 、 ¥菇'一垂直于XMZ 平面, 与X 抽和Z 抽枸成右 手坐 标系统。 Pn A Z y X 1 \y X 奋 My\5 Ps / /

对同一空间点,直角坐标糸与其著效的球面坐标糸参教间有如下转换关务: C X - /cos a cos S < Y= / sin cos -Z = ysin 5 Y V a = arctan —— L Xz d -arctail . 岁差和章动的影响 岁差:地球实际上不是一个理想的球体,地球自转轴方向不再保持不变,这使春分点在黄道上产生缓慢的西移,这种现象在天文学中称为岁差。 章动:在日月引力等因素的影响下,瞬时北天极将绕瞬时平北天极旋转,大致呈椭圆,这种现象称为章动。 极移:地球自转轴相对地球体的位置并不是固定的,因而,地极点在地球表面上的位置,是随时间而变化的,这种现象称为极移。地球的自转轴不仅受日、月引力作用而使其在空间变化,而且还受地球内部质量不均匀影响在地球内部运动。 前者导致岁差和章动,后者导致极移。 协议天球坐标系:为了建立一个与惯性坐标系统相接近的坐标系,人们通常选择某一时刻,作为标准历元,并将此刻地球的瞬时自转轴(指向北极)和地心至瞬 时春分点的方向,经过瞬时的岁差和章动改正后,分别作为 X轴和Z轴的指向, 由此建立的坐标系称为协议天球坐标系。天味奋 5 y X X Ps

不同坐标系之间的变换

不同坐标系之间的变换 SANY GROUP system office room 【SANYUA16H-

§10.6不同坐标系之间的变换 10.6.1欧勒角与旋转矩阵 对于二维直角坐标,如图所示,有: ?? ? ?????????-=??????1122cos sin sin cos y x y x θθθθ(10-8) 在三维空间直角坐标系中,具有相同原点的两坐标系间的变换一般需要在三个坐标平面上,通过三次旋转才能完成。如图所示,设旋转次序为: ①绕1OZ 旋转Z ε角,11,OY OX 旋 转至0 0,OY OX ; ②绕0 OY 旋转Y ε角 10 ,OZ OX 旋转至0 2 ,OZ OX ; ③绕2OX 旋转X ε角, 0,OZ OY 旋转至22,OZ OY 。 Z Y X εεε,,为三维空间直角坐标变换的三个旋转角,也称欧勒角,与 它相对应的旋转矩阵分别为: ???? ? ?????-=X X X X X R εεεεεcos sin 0sin cos 00 01 )(1 (10-10)

????? ?????-=Y Y Y Y Y R εεεεεcos 0sin 010sin 0cos )(2 (10-11) ???? ? ?????-=10 0cos sin 0sin cos )(3Z Z Z Z Z R εεεεε (10-12) 令 )()()(3210Z Y X R R R R εεε= (10- 13) 则有: ???? ? ?????=??????????=??????????1110111321222)()()(Z Y X R Z Y X R R R Z Y X Z Y X εεε (10-14) 代入: ???? ??? ??? +-+++--=Y X Z Y X Z X Z Y X Z X Y X Z Y X Z X Z Y X Z X Y Z Y Z Y R εεεεεεεεεεεεεεεεεεεεεεεεεεεεεcos cos sin sin cos cos sin cos sin cos sin sin cos sin sin sin sin cos cos cos sin sin sin cos sin sin cos cos cos 0一般Z Y X εεε,,为微小转角,可取: sin sin sin sin sin sin sin ,sin ,sin 1cos cos cos =========Z Y Z X Y X Z Z Y Y X X Z Y X εεεεεεεεεεεεεεε 于是可化简

直角坐标与极坐标的区别与转换

直角坐标 直角坐标系在数学中应用广泛,是数学大厦最重要的根基之一。 在平面内画两条 直角坐标 直角坐标 互相垂直,并且有公共原点的数轴。其中横轴为X轴,纵轴为Y轴。这样我们就说在平面上建立了平面直角坐标系,简称直角坐标系。 直角坐标中的点 直角坐标中的点 坐标:对于平面内任意一点C,过点分C别向X轴、Y轴作垂线,垂足在X 轴、Y轴上的对应点a,b分别叫做点C的横坐标、纵坐标,有序数对(a,b)叫做点C的坐标。坐标平面:坐标系所在平面。 坐标原点:两坐标轴的公共原点。 象限:X轴和Y轴把坐标平面分成四个象限,右上面的叫做第一象限,其他三个部分按逆时针方向依次叫做第二象限、第三象限和第四象限。象限以数轴为界,横轴、纵轴上的点不属于任何象限。

极坐标 极坐标系 polar coordinates 在平面内由极点、极轴和极径组成的坐标系。在平面上取定一点O,称为极点。从O出发引一条射线Ox,称为极轴。再取定一个长度单位,通常规定角度取逆时针方向为正。这样,平面上任一点P的位置就可以用线段OP的长度ρ以及从Ox到OP 的角度θ来确定,有序数对(ρ,θ)就称为P点的极坐标,记为P(ρ,θ);ρ称为P 点的极径,θ称为P点的极角。当限制ρ≥0,0≤θ<2π时,平面上除极点Ο以外,其他每一点都有唯一的一个极坐标。极点的极径为零,极角任意。若除去上述限制,平面上每一点都有无数多组极坐标,一般地,如果(ρ,θ)是一个点的极坐标,那么(ρ,θ+2nπ),(-ρ,θ+(2n+1)π),都可作为它的极坐标,这里n 是任意整数。平面上有些曲线,采用极坐标时,方程比较简单。例如以原点为中心,r为半径的圆的极坐标方程为ρ=r 等速螺线的极坐标方程为ρ=aθ 。此外,椭圆、双曲线和抛物线这3种不同的圆锥曲线,可以用一个统一的极坐标方程表示。 极坐标系到直角坐标系的转化: 在极坐标系与平面直角坐标系(笛卡尔坐标系)间转换极坐标系中的两个坐标ρ和θ可以由下面的公式转换为直角坐标系下的坐标值 x=ρcosθ y=ρsinθ 由上述二公式,可得到从直角坐标系中x和y两坐标如何计算出极坐标下的坐标θ=arctany/x ( x不等于0) 在x= 0的情况下:若y为正数θ= 90° (π/2 radians);若y为负,则θ= 270° (3π/2 radians). 极坐标的方程 用极坐标系描述的曲线方程称作极坐标方程,通常表示为r为自变量θ的函数。 极坐标方程经常会表现出不同的对称形式,如果r(?θ) = r(θ),则曲线关于极点

空间直角坐标系与空间大地坐标系的相互转换及其C++源程序

空间直角坐标系与空间大地坐标系的相互转换 1.空间直角坐标系/笛卡尔坐标系 坐标轴相互正交的坐标系被称作笛卡尔坐标系。三维笛卡尔坐标系也被称为空间直角坐标系。在空间直角坐标系下,点的坐标可以用该点所对应的矢径在三个坐标轴上的投影长度来表示,只有确定了原地、三个坐标轴的指向和尺度,就定义了一个在三维空间描述点的位置的空间直角坐标系。 以椭球体中心O为原点,起始子午面与赤道面交线为X轴,在赤道面上与X轴正交的方向为Y轴,椭球体的旋转轴为Z轴构成右手坐标系O.XYZ,在该坐标系中,P点的位置用X,Y,Z表示。 在测量应用中,常将地球空间直角坐标系的坐标原点选在地球质心(地心坐标系)或参考椭球中心(参心坐标系),z轴指向地球北极,x轴指向起始子午面与地球赤道的交点,y轴垂直于XOZ面并构成右手坐标系。 空间直角坐标系 2.空间大地坐标系 由于空间直角坐标无法明确反映出点与地球之间的空间关系,为了解决这一问题,在测量中引入了大地基准,并据此定义了大地坐标系。大地基准指的是用于定义地球参考椭球的一系列参数,包括如下常量: 2.1椭球的大小和形状

2.2椭球的短半轴的指向:通常与地球的平自转轴平息。 2.3椭球中心的位置:根据需要确定。若为地心椭球,则其中心位于地球质心。 2.4本初子午线:通过固定平极和经度原点的天文子午线,通常为格林尼治子午线。 以大地基准为基础建立的坐标系被称为大地坐标系。由于大地基准又以参考椭球为基准,因此,大地坐标系又被称为椭球坐标系。大地坐标系是参心坐标系,其坐标原点位于参考椭球中心,以参考椭球面为基准面,用大地经度L、纬度B 和大地高H表示地面点位置。过地面点P的子午面与起始子午面间的夹角叫P 点的大地经度。由起始子午面起算,向东为正,叫东经(0°~180°),向西为负,叫西经(0°~-180°)。过P点的椭球法线与赤道面的夹角叫P点的大地纬度。由赤道面起算,向北为正,叫北纬(0°~90°),向南为负,叫南纬(0°~-90°)。从地面点P沿椭球法线到椭球面的距离叫大地高。大地坐标坐标系中,P点的位置用L,B表示。如果点不在椭球面上,表示点的位置除L,B外,还要附加另一参数——大地高H。 空间大地坐标系 3.空间直角坐标与大地坐标间的转换 3.1大地坐标转换为空间直角坐标

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

大地坐标与直角空间坐标转换计算公式 一、参心大地坐标与参心空间直角坐标转换 1名词解释: A :参心空间直角坐标系: a) 以参心0为坐标原点; b) Z 轴与参考椭球的短轴(旋转轴)相重合; c) X 轴与起始子午面和赤道的交线重合; d) Y 轴在赤道面上与X 轴垂直,构成右手直角坐标系0-XYZ ; e) 地面点P 的点位用(X ,Y ,Z )表示; B :参心大地坐标系: a) 以参考椭球的中心为坐标原点,椭球的短轴与参考椭球旋转轴重合; b) 大地纬度B :以过地面点的椭球法线与椭球赤道面的夹角为大地纬度B ; c) 大地经度L :以过地面点的椭球子午面与起始子午面之间的夹角为大地经度L ; d) 大地高H :地面点沿椭球法线至椭球面的距离为大地高H ; e) 地面点的点位用(B ,L ,H )表示。 2 参心大地坐标转换为参心空间直角坐标: ?? ? ?? +-=+=+=B H e N Z L B H N Y L B H N X sin *])1(*[sin *cos *)(cos *cos *)(2 公式中,N 为椭球面卯酉圈的曲率半径,e 为椭球的第一偏心率,a 、b 椭球的长短半径,f 椭球扁率,W 为第一辅助系数 a b a e 2 2-= 或 f f e 1 *2-= W a N B W e = -=22 sin *1( 西安80椭球参数: 长半轴a=6378140±5(m )

短半轴b=6356755.2882m 扁 率α=1/298.257 3 参心空间直角坐标转换参心大地坐标 [ ] N B Y X H H e N Y X H N Z B X Y L -+= +-++==cos ))1(**)() (*arctan() arctan(2 22 2 2 二 高斯投影及高斯直角坐标系 1、高斯投影概述 高斯-克吕格投影的条件:1. 是正形投影;2. 中央子午线不变形 高斯投影的性质:1. 投影后角度不变;2. 长度比与点位有关,与方向无关; 3. 离中央子午线越远变形越大 为控制投影后的长度变形,采用分带投影的方法。常用3度带或6度带分带,城市或工程控制网坐标可采用不按3度带中央子午线的任意带。 2、高斯投影正算公式: 52224253 2236 425442232)5814185(cos 120 )1(cos 6 cos )5861(cos sin 720 495(cos sin 24cos sin 2l t t t B N l t B N Bl N y l t t B B N l t B B N Bl B N X x ηηηηη-++-++-+=+-+++-++ =) 3、高斯投影反算公式:

常用坐标系之间的关系与转换

7.5 常用坐标系之间的关系与转换 一、大地坐标系和空间大地直角坐标系及其关系 大地坐标系用大地纬度企丈地经度L 和丈地髙H 来表示点的位置°这种坐标系是经 典大地 测量甬:両用座标紊7屜据地图投影的理论,大地坐标系可以通过一定的投影转 化为投影平面上的直角坐标系,为地形测图和工程测量提供控制基础。同时,这种坐标系 还是研究地球形状和大小的 种有用坐标系°所以大地坐标系在大地测量中始终有着重要 的作用. 空间大地直角坐标系是-种以地球质心为原点购亘墮?坐标系,一般用X 、化Z 表 示点 BSSTSTT 逐碇SS 範菇飞両H 绕禎扭转冻其轨道平面随时通过 地球质心。对它们的跟踪观测也以地球质心为坐标原点,所以空间大地直角坐标系是卫星 大地测量中一种常用的基本坐标系。现今,利用卫星大地测量的手段*可以迅速地测定点 的空间大地直角坐拯,广泛应用于导航定位等空间技术。同时经过数学变换,还可求岀点 的大地坐标I 用以加强和扩展地面大地网,进行岛屿和洲际联测,使传统的大地测量方法 发生了深刻的变化,所以空间大地宜角坐标系对现今大地测量的发展’具有重要的意义。 、大地坐标系和空间大地直角坐标系的转换 如图7- 23所示’尸点的位置用空间 大地 直角坐标〔X, Y, Z)表示,其相应 的大地坐 标为(E, L)a 将该图与图?一5 上式表明了 2种基本坐标系之间的关系。 加以比较可见,图7-5中的子午椭圆平面 相 当于图7-23中的OJVP 平面.其中 PPz=Z.相 当于图7-5中的j7;OP 3相当 丫于图7-5中的 仏两平面的经度乙可视为 相同,等于"叽 于是可以直接写岀 X=jrcQsi f Y=jrsinL, Z=y 将式(7-21).式(7-20)分别代入上式, 井考虑 式(7-26)得 X=Ncos^cosZr ” Y =NcQsBsinL > (7—78) Z=N (1—护〉sin^ ; BB 7-23

空间坐标转换说明

坐标转换说明 GPS 接收机接收到GPS (大地坐标:经度、纬度和高度值)信号后,并不利于显示,需要将大地坐标进行转换,现选用东北天坐标系(也叫站心坐标系)作为显示的依据。 GPS 接收机接收到的第一个信号L (经度)、B (纬度)和H (高度),作为东北天坐标系的原点。当接收到第二个信号时L 1、B 1和H 1,应用坐标转换公式,转换到东北天坐标系下进行显示。依次类推,凡是接收到的GPS 信号都转换到东北天坐标系下进行显示,在东北天坐标系下预测出来的坐标值通过坐标转换公式在显示屏上显示大地坐标(经度、纬度和高度)。 1.大地坐标与直角坐标的相互转化 对空间某一点,大地坐标系(L ,B ,H )到直角坐标系(X ,Y ,Z )的转换关系如下: ?? ???+-=+=+=B H e N Z L B H N Y L B H N X sin ])1([sin cos )(cos cos )(2 (1) 由直角坐标系(X ,Y ,Z )转化到大地坐标系(L ,B ,H )的公式如下: ??? ????--=+-++==)1(sin /]})1((/[)(arctan{)/arctan(2222e N B Z H H e N Y X H N Z B X Y L (2) 式中:B e a N 22sin 1/-=,N 为该点的卯酉圈曲率半径;2222/)(a b a e -=,a 、b 、e 分别为该大地坐标系对应参考椭球的长半轴、短半轴和第一偏心率。长半 轴a =6378137±2m ,短半轴b =6356.7523142km ,90130066943799 .02=e 。 从公式(2)看出,经度比较容易求得,纬度和高度必须通过迭代计算获直接计算得到。迭代计算的次序为:N H B →→,通常迭代四次可以达到H 优于0.001m ,B 优于0.00001''的计算精度;教科书中给出的直接法计算公式比较繁琐,有的计算公式的应用条件受到一定限制,例如要求大地高度小于10000m 时,才能使B 、H 达到上述计算精度,有的直接计算公式精度较低。 根据[张华海]提供的方法,本文建议采用该方法将直角坐标(X ,Y ,Z )转变成大地坐标(L ,B ,H )。该方法的公式形式比较简便,B 、H 的计算精度高;用计算出的具有一定精度的0B ,直接求出H ,一次性计算出满足精度要求的H ;再将H 值代入公式(2)中,求出B 值。 令))/(arctan(22b Y X Za u ?+=,a 、b 分别为长半轴和短半轴。将u 代入下

平面直角坐标变换

平面直角坐标变换 【摘要】对利用EXCEL电子表格进行高斯投影换算的方法进行了较详细的介绍,对如何进行GPS坐标系转换进行了分析,提出了一种简单实用的坐标改正转换方法,介绍了用EXCEL完成转换的思路。 [关键字] 电子表格;GPS;坐标转换 作为尖端技术GPS,能方便快捷性地测定出点位坐标,无论是操作上还是精度上,比全站仪等其他常规测量设备有明显的优越性。随着我国各地GPS差分台站的不断建立以及美国SA政策的取消,使得单机定位的精度大大提高,有的已经达到了亚米级精度,能够满足国土资源调查、土地利用更新、遥感监测、海域使用权清查等工作的应用。在一般情况下,我们使用的是1954年北京坐标系或1980年西安坐标系(以下分别简称54系和80系),而GPS测定的坐标是WGS-84坐标系坐标,需要进行坐标系转换。对于非测量专业的工作人员来说,虽然GPS定位操作非常容易,但坐标转换则难以掌握,EXCEL是比较普及的电子表格软件,能够处理较复杂的数学运算,用它来进行GPS坐标转换、面积计算会非常轻松自如。要进行坐标系转换,离不开高斯投影换算,下面分别介绍用EXCEL进行换算的方法和GPS 坐标转换方法。 一、用EXCEL进行高斯投影换算 从经纬度BL换算到高斯平面直角坐标XY(高斯投影正算),或从XY换算成BL(高斯投影反算),一般需要专用计算机软件完成,在目前流行的换算软件中,存在一个共同的不足之处,就是灵活性较差,大都需要一个点一个点地进行,不能成批量地完成,给实际工作带来许多不便。笔者发现,用EXCEL可以很直观、方便地完成坐标换算工作,不需要编制任何软件,只需要在EX CEL的相应单元格中输入相应的公式即可。下面以54系为例,介绍具体的计算方法。 完成经纬度BL到平面直角坐标XY的换算,在EXCEL中大约需要占用21列,当然读者可以通过简化计算公式或考虑直观性,适当增加或减少所占列数。在EXCEL中,输入公式的起始单元格不同,则反映出来的公式不同,以公式从第2行第1列(A2格)为起始单元格为例,各单元格的公式如下: 单元格 单元格内容 说明A2 输入中央子午线,以度.分秒形式输入,如115度30分则输入1 15.30 起算数据L0 B2 =INT(A2)+(INT(A2*100)-INT(A2)*100)/60+(A2*10000-INT(A2* 100)*100)/3600 把L0化成度 C2 以度小数形式输入纬度值,如38°14′20″则输入38.1420 起算数据B D2 以度小数形式输入经度值 起算数据L E2 =INT(C2)+(INT(C2*100)-INT(C2)*100)/60+(C2*10000-INT(C2* 100)*100)/3600 把B化成度 F2 =INT(D2)+(INT(D2*100)-INT(D2)*100)/60+(D2*10000-INT(D2* 100)*100)/3600 把L化成度 G2 =F2-B2 L-L0 H2 =G2/57.2957795130823 化作弧度 I2 =TAN(RADIANS(E2)) Tan(B) J2 =COS(RADIANS(E2)) COS(B)

相关文档
最新文档