Forward and Inverse Transformation of Secant Conic Projection—Excel VBA Real Number Calculation and Mathcad Complex Number Transformation
Conic projection maps are widely used in small and medium-sized maps, such as international aerial maps, national maps, provincial maps at small and medium-sized scales, geological maps, and specialized maps. Real and complex forward and inverse transformation programs suitable for cutting cone projection in BJ54, XIAN80, WGS84, and CGCS2000 coordinate systems were developed using calculation tools Excel VBA and Mathcad, respectively, providing a universal tool for fast batch coordinate transformation in field geological surveys.
Secant Conic Projections
随着我国工程建设的发展,对投影变形的控制要求较高,尤其是地铁及高铁,其长度变形精度要求小于1 m/100km。采用高斯投影时,为满足变形控制要求,投影分带需<57 km,长线路工程的坐标转换非常繁琐。由于割圆锥投影的南北基准纬线长度不变形,投影区域变形小,因此,割圆锥投影变换对东西向条带状的投影变换有其独特优势。
国家行业标准地质图编绘规范规定,1:50万、1:100万地质图,需采用割圆锥投影
本文在前人研究的基础上,从方便快捷、批量转换的实用角度出发,利用Excel VBA及Mathcad计算工具,开发了割圆锥投影正反算变换程序,适用于BJ54、XIAN80、WGS84、CGCS2000坐标系的坐标变换。
圆锥投影,又称正轴等角圆锥投影,适用于中小比例尺地质图,如1:50万、1:100万地质图。
投影坐标系,是以中央经线L0为x轴,以基准纬线Bs为y轴,x轴与y轴的交点为投影原点O (0,0),见
数学上,圆锥投影平面直角坐标(x, y)的计算通式为
(1)
其中:
(2)
(3)
(4)
(5)
a |
为椭球长半轴 |
f |
为椭球扁率 |
e |
为椭球偏心率 |
M |
子午圈曲率半径 |
N |
卯酉圈曲率半径 |
r |
纬圈半径 |
U |
等角表象函数 |
L0 |
中央经线经度 |
L |
经线经度 |
l |
椭球面经线与中央经线夹角 |
δ |
平面经线与中央经线夹角 |
ρ |
平面经线长 |
ρs |
中央经线顶点到基准纬线的径线长 |
m |
经线变形系数 |
n |
纬线变形系数 |
对于割圆锥投影,B1、B2两条纬线长度不变形,即:
(6)
从而有:
(7)
式中:
C |
赤道投影半径 |
αc |
平面角与球面角的投影变换常数 |
确定αc及C后,就可由式(1)将坐标(B, L)转换为直角坐标(x, y)。
反算,即由直角坐标(x, y)转换为大地坐标(B, L)。
(8)
等角变换系数a可由下式确定(丁士俊,2022)
(9)
其中第3偏心率:
(10)
(11)
(12)
Excel目前不支持复数运算,Excel平台的割圆锥投影变换只能在实数域中开发。
割圆锥投影正算变换宏为scp( ),反算变换宏为Inv_scp( )。
坐标转换程序使用方法:
1) 人工选择坐标系(三角下拉菜单):BJ54、XIAN80、WGS84、CGCS2000;
4) 人工输入坐标点序号;
5) 运行宏,一键得到目标坐标。
Mathcad割圆锥投影复域变换的核心代码非常简洁:
1) 正算核心代码:
2) 反算核心代码:
文献
本文选取其中8组(B, L)源数据,用Excel VBA及Mathcad 15进行了投影变换验算,两者计算结果一致。
坐标点 |
源坐标 |
原文献正算坐标 |
本文正算坐标 |
|||
序号 |
B/˚ |
L/˚ |
x/m |
y/m |
x/m |
y/m |
1 |
43 |
101 |
1,220,470 |
0 |
1220468.242 |
0.000 |
2 |
43 |
110 |
1,255,650 |
734,810 |
1255650.125 |
734810.617 |
3 |
40 |
101 |
887,040 |
0 |
887043.311 |
0.000 |
4 |
40 |
110 |
923,750 |
766,670 |
923750.373 |
766665.594 |
5 |
35 |
101 |
332,960 |
0 |
332963.006 |
0.000 |
6 |
35 |
110 |
372,200 |
819,600 |
372204.587 |
819601.692 |
7 |
32 |
101 |
0 |
0 |
0.000 |
0.000 |
8 |
32 |
110 |
40,760 |
851,410 |
40764.648 |
851412.537 |
坐标点 |
源坐标 |
反算坐标 |
原文献坐标 |
|||
序号 |
x/m |
y/m |
B/˚ |
L/˚ |
B/˚ |
L/˚ |
1 |
1220468.242 |
0.000 |
43.000000 |
101.000000 |
43 |
101 |
2 |
1255650.125 |
734810.617 |
43.000000 |
110.000000 |
43 |
110 |
3 |
887043.311 |
0.000 |
40.000000 |
101.000000 |
40 |
101 |
4 |
923750.373 |
766665.594 |
40.000000 |
110.000000 |
40 |
110 |
5 |
332963.006 |
0.000 |
35.000000 |
101.000000 |
35 |
101 |
6 |
372204.587 |
819601.692 |
35.000000 |
110.000000 |
35 |
110 |
7 |
0.000 |
0.000 |
32.000000 |
101.000000 |
32 |
101 |
8 |
40764.648 |
851412.537 |
32.000000 |
110.000000 |
32 |
110 |
2) 本文在割圆锥投影变换中,等角变换系数采用了丁士俊(2022)以第3偏心率表达的最新研究成果,其系数比以用第1偏心率表达的公式简洁。
3) 本文利用割圆锥投影理论,分别在实域的Excel VBA平台及复域的Mathcad平台开发了割圆锥投影的正反算变换工具。利用公开发表的相关论文数据进行了计算验证对比,本文转换工具计算精度更高,结果更准确可靠。
4) Mathcad是一款所见即所得的计算软件,其代码表达式与数学表达式十分接近。相比于实数域,复数域的Mathcad割圆锥变换工具,其代码简洁,可读性好。
5) 本文Excel VBA变换工具,虽未进行图形界面设计,但使用十分简单,可实现坐标的一键批量转换。在Excel表中输入相应的原始数据,直接运行正变换或反变换宏,就可得到目标坐标,简洁明快。
6) Excel变换表可直接作为工作用表。作为一款批量坐标转换的高效普适工具,具有较高的使用价值,特别适用于野外工作者进行坐标的快捷转换。
海军工程大学边少锋教授对课题研究给予了大力支持,在此表示衷心感谢!
国家自然科学基金项目(42074010)。
*第一作者。
#通讯作者。