第三章平面坐标之独立坐标系

1、平面坐标换算,就是在同一椭球下(椭球参数相同),地面点的大地坐标相同(也叫地理坐标或经纬度坐标),但是有不同的平面坐标形式,这些不同平面坐标形式之间的转换。例如相邻带的换算,3度带和6度带的换算,经纬度到平面的换算,高斯投影坐标与UTM投影的换算。
换算原理就是平面坐标1----->大地坐标----->平面坐标2,这里关键的计算环节就是高斯正反算。
高斯正算:由大地坐标B,L求平面坐标x,y.
高斯反算:由平面坐标x,y求大地坐标B,L.
高斯正反算的公式这里就不再累赘,可以参考测绘书籍。
(1)邻带换算
Xy(20带)—>大地坐标BL------>xy(21带)
(2)3度带到6度带
Xy(3度带)—>大地坐标BL------>xy(6度带)
(3)高斯投影坐标与UTM投影的换算
这个换算是输入的是不带带号,没有加500km的自然坐标,近似计算公式:
X(UTM) = 0.9996x(Guss) y(UTM) = 0.9996y(Guss)
2、独立坐标系
独立坐标系通常又叫城市坐标系,地方坐标系等等,建立独立坐标系的目的是在工程建设中控制某一地区实际测量的距离和图上的距离变形不能超过2.5cm/km。
实际测量中,长度的变形主要由两个原因产生:(1)高程引起的长度变形,即实际测量长度归算到参考椭球面(计算长度是以参考椭球面为基准面,实际测量以水准面为基准面)
(2)由高斯投影引起的长度变形,即参考椭球投影到高斯平面引起的长度变形。
建立独立坐标系就是为了减小长度变形,明确了这两个变形的原因后,就知道如何建立独立坐标系了,要么改变中央子午线减少高斯投影变形,要么改变投影面,减少高程引起的长度变形,要么两者均做改变。
下面说说不同的情况:
高程对长度变形的影响始终为负:
在这里插入图片描述
其中R是参考椭球的曲率半径,约6370km,按照投影变形不得超过2.5cm/km计算。高程Hm=159m
(1) 当测区平均高程小与159,测区距中央子午线45km内可以不考虑变形。
(2) 投影引起的长度变形满足精度要求,高程引起的的长度变形不满足精度要求
这种建立独立坐标系,只考虑高程引起的投影变形,选取测区高程基准面,一般选择测区的平均高程,a在国家标准椭球的基准上加一个常数,保证b/a不变,求出椭球参数,也叫椭球膨胀法,建立独立坐标系。
(3)高程引起的投影变形满足要求,投影引起的长度变形不满足要求
说明测区有的点距中央经线的距离大于45km,所以就要改变中央经线的位置,一般选择通过城区中心的子午线做中央经线,建立独立坐标系。
(4)高程和投影引起的长度变形都不满足要求
由于两者产生的变形一正一负,是两者变形相抵消,使得正好变形为0。

独立坐标系的建立大致遵循以上原则,具体的计算公式,推导过程可以参考控制测量等相关书籍,建立独立坐标系的五大要素:中央子午线,抵偿高程面,原点,起算方位角,投影椭球(决定了独立坐标系是属于北京54,西安80,还是CGCS2000)。
注意:独立坐标系的平面坐标是通过国家坐标系的大地坐标及其椭球参数投影得到,不能脱离国家的坐标系而独立存在。在选取中央子午线时,尽量选择国家坐标系的3°带的中央子午线,实在不行就选过测区中心的中央子午线。
3、独立坐标系和国家坐标系的转换和多个独立坐标系间的转换
(1)已知独立坐标系的中央子午线,抵偿高程面,原点。将独立坐标系转换到国家标准分带的坐标系下。
xy独立坐标系------->大地经纬度------->xy国家标准
(2)已知两个独立坐标系,他们之间的转换
xy(独立1)------->BL------->xy(独立2)
同椭球下,用独立坐标系中央子午线高斯反算到大地坐标,再更换中央经线,高斯正算到独立坐标系2的坐标。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是C#中大地坐标系平面坐标系的代码示例: ```csharp using System; namespace CoordinateConversion { class Program { static void Main(string[] args) { double a = 6378137; // 长半轴 double b = 6356752.3142; // 短半轴 double f = (a - b) / a; // 扁率 double e = Math.Sqrt(2 * f - f * f); // 第一偏心率 double e2 = Math.Sqrt(f * (2 - f)) / (1 - f); // 第二偏心率 double L = 116.404; // 经度 double B = 39.915; // 纬度 double L0 = 115; // 中央经线 double k0 = 1; // 比例因子 double X, Y; double N = a / Math.Sqrt(1 - e * e * Math.Sin(B * Math.PI / 180) * Math.Sin(B * Math.PI / 180)); // 卯酉圈曲率半径 double T = Math.Tan(B * Math.PI / 180) * Math.Tan(B * Math.PI / 180); double C = e2 * Math.Cos(B * Math.PI / 180) * Math.Cos(B * Math.PI / 180); double A = (L - L0) * Math.PI / 180 * Math.Cos(B * Math.PI / 180); double M = a * ((1 - e * e / 4 - 3 * e * e * e * e / 64 - 5 * e * e * e * e * e * e / 256) * B * Math.PI / 180 - (3 * e * e / 8 + 3 * e * e * e * e / 32 + 45 * e * e * e * e * e * e / 1024) * Math.Sin(2 * B * Math.PI / 180) + (15 * e * e * e / 256 + 45 * e * e * e * e * e / 1024) * Math.Sin(4 * B * Math.PI / 180) - (35 * e * e * e * e / 3072) * Math.Sin(6 * B * Math.PI / 180)); X = k0 * N * (A + (1 - T + C) * A * A * A / 6 + (5 - 18 * T + T * T + 72 * C - 58 * e2) * A * A * A * A * A / 120) + 500000; Y = k0 * (M + N * Math.Tan(B * Math.PI / 180) * (A * A / 2 + (5 - T + 9 * C + 4 * C * C) * A * A * A * A / 24 + (61 - 58 * T + T * T + 600 * C - 330 * e2) * A * A * A * A * A * A / 720)); Console.WriteLine("X坐标为:" + X); Console.WriteLine("Y坐标为:" + Y); } } } ``` 以上代码中,我们首先定义了长半轴a、短半轴b、扁率f、第一偏心率e、第二偏心率e2等参数,然后输入经度L、纬度B、中央经线L0、比例因子k0等参数,最后根据公式计算出平面坐标系的X、Y坐标

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

能量鸣新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值