张 帅
(1.中工武大设计研究有限公司 湖北 武汉 430070)
铁路工程中AutoCAD与GoogleEarth线路图转换方法
张 帅1
(1.中工武大设计研究有限公司 湖北 武汉 430070)
基于ObjectARX技术,结合拉美某国铁路项目,研究了ACAD线路数据向GE的转换方法,并简述转换后的GE线路图在铁路项目路线设计和后期巡检等管理工作中的实际应用。
AutoCAD;线性工程 ;数据转换;GoogleEarth ObjectARX
近年来,随着海外市场的开拓,我国参建项目数量与日俱增。其中不乏铁路、公路等线性工程。这类工程大多会远离城区,给项目前期设计与施工巡检工作在线路导航与定位方面造成极大不便。尤其是路线勘测设计阶段,一般会根据展绘在卫片上的线路图与实地情况反复比较、修正,直至线路设计最终完成。
在拉美、非洲等地的大部分国家和地区,设计公司习惯将线路图绘制在ACAD上,然后转换成KML格式文件,导入手机GE进行实地导航和踏勘选线工作。由于手机等智能设备携带方便,又能满足前期踏勘和后期巡检的精度要求,因而在这些国家和地区开展线路工程管理工作时,ACAD线路数据向GE转换显得尤为重要。
设计公司在选线阶段,先进行纸上定线,结合现场踏勘确定线路交点,再结合线路的速度(或最小曲线半径)、最短缓和曲线长度、周边自然环境及城镇乡村规划等计算出圆曲线和缓和曲线位置。在铁路线路成果文件中,一般包括平曲线参数表、竖曲线参数表和超高数据表。按照拉美一带的习惯,先根据平曲线参数表在ACAD中绘制出各段直线段、圆曲线和缓和曲线,并连成一个多线段,再根据对项目里程精度的需要,间隔一定距离读取该里程点位的坐标(X,Y),此点位为大地坐标(B,L)投影后的数据。在拉美地区,多采用WGS-84投影椭球,投影方式为通用横轴墨卡托投影(UTM)。根据椭球参数和投影类型反算出大地坐标的经纬度(B,L),再按照GE线路文件KML格式进行存储后即可导入手机GE使用,为踏勘与巡检提供导航与定位服务。以上流程如图1所示。
图1 数据转换及其应用总体流程图
设计公司提供的平曲线参数表一般包括交点坐标、主点里程、转角、曲线半径和缓和曲线长度等,不能根据任意里程来取得坐标,尤其是整桩号,能够为现场踏勘和后期巡检起到有效的定位作用。因而须根据平曲线参数表在ACAD中展绘交点并依次连接成线段。直线段和圆曲线较为简单,而缓和曲线类型众多,计算复杂,拉美地区一般采用回旋线拟合,点位沿缓和曲线至直缓点的长度与坐标的关系经幂级数展开后,如式(1)[1]:
式中C=R·l0。需要说明的是,南美、非洲等地的铁路速度基本在160 km/h以下,缓和曲线类型多采用回旋线。而我国铁路工程线路设计一般采用三次抛物线[2],公路工程才采用回旋线[3]。其中三次抛物线经展开后是一个非线性方程,需要在计算机中进行迭代来完成[4]。
经过在ACAD中的展绘,可在交点附近得到一组组直线段、缓和曲线和圆曲线。再使用ACAD命令“JOIN”连接这些线合成多线段。除了使用ACAD绘制外,还可以采用Civil 3D等专业软件快速完成线路文件的设计。
ACAD中线路图形的点位表达方式均采用经过地球椭球投影后的坐标系统,不能直接使用在KML文件中,需要根据椭球参数和投影类型进行反算。
常见的地球椭球有Krassovsky 1948(1954年北京坐系),IAG 75(1980西安坐标系)和WGS-84等,投影类型有Gauss-Krüger投影、UTM投影和Lambert等角投影。其中WGS-84协议地球参考系是美国国防部为适应全球地图编制和空间技术发展需要而建立的世界大地坐标系,也是全球定位系统GPS采用的参考构架。UTM投影是美国编制世界各地军用地图和地球资源卫星像片采用的投影系统。鉴于此,WGS-84椭球和UTM投影在大地测量方面具备不可比拟的通用、普适和简便等特点,也是拉美、非洲等地最常使用的坐标基准。
海外工程的实施应考虑和当地坐标系的控制网联测,因而,应该熟悉掌握UTM投影的计算公式[5]:
UTM投影在中央子午线上存在投影长度比0.999 6的变形,而离中央经线左右约180 km 处有两条长度比为1的割线,在该割线上边长没有变形,离这两条割线愈远边长变形愈大。在这两条割线之内,边长经投影后长度缩小,即长度变形为负值,最小为-0.000 4;两条割线之外,边长经投影后长度放大,即长度变形为正值,最大为0.000 98(B=0)。由于变形的复杂性和不确定性,所以投影计算时应尽量提高精度,避免误差在经过多次正反算迭代后变形超过允许范围。美国大地测量专家Karney在2010年通过增加幂级数展开项的方法将UTM投影计算提高到几个纳米等级的精度[6],避免了工程测量中出现以上问题。
尽管ACAD绘图设计功能强大,但并不支持对线路图形的整桩里程点坐标读取、相应UTM反算投影和KML数据转换,对其进行功能上的订制再利用,称为ACAD二次开发。
二次开发常见的编程语言有C/C++、C#、AutoLISP、VBA等,其中C/C++为编译性语言,对于大数据的处理效率较高,ObjectARX即C/C++针对ACAD进行二次开发封装的SDK。
基于ObjectARX技术,AcdbPolyline:getPointAtDist可以读取ACAD线路图形任意里程的坐标。反算过程可采用Karney编写的成熟C++库 GeographicLib[7],经验算,完全可以达到几个纳米级精度。
经过(B,L)=F(X,Y)投影反算后,大地经纬度(B,L)即可按照KML格式标准写入文件[8]。
实际上,GE提供了KMZ和KML两种文件存储格式,前者是后者的压缩形式,因而只需研究KML格式。KML 是一种 XML 描述语言,为文本文件,可直接进行编辑,也可通过代码实现地标文件内部信息的读取和写入。其中常见的标签如下:
由于KML采用简单的XML结构,可使用XML库Tinyxml等写入KML文件。数据转换实现的伪代码表示如下:
int ConvertToKml_Line(AcdbPolyline &plRoad){
//每间隔1 m读取ACAD线路坐标点(X1m,Y1m)
//使用GeographicLib转换为(B1m,L1m)
//将(B1m,L1m)写入线路KML文件直至线路结尾}
int ConvertToKml_Dot(AcdbPolyline &plRoad){
//每间隔整桩(按100 m)读取ACAD线路坐标点(X100m,Y100m)
//使用GeographicLib转换为(B100m,L100m)
//将(B100m,L100m)写入整桩点位KML文件直至线路结尾}
根据以上原理,编程生成KML文件导入手机GE进行定位导航,效果如图2~3。
图2 转换后整体效果图
图3 应用时局部导航图
在南美、非洲等地,由于线路工程路线勘测设计阶段缺乏航拍数据,项目设计人员经常结合GE中的卫片进行“纸上定线”。在无法获得精确信息时,将转换完成的KML文件导入手持智能设备,用GE或同类软件打开进行实地导航与定位,为项目前期线路设计人员的踏勘、选线提供了极大便利,也为后期项目管理过程中巡检人员的质量、安全检查提供了简便有效的定位手段。
结合上述方法,南美某国铁路项目设计人员、施工管理人员大大提高了工作效率。在2014~2015年度,我国多次在南美地区提出“两洋铁路”(连接大西洋太平洋)概念,部分国家和地区在我国企业主导或参与下已启动了可行性研究工作。随着这条铁路各项工作的深入开展,尤其在线路勘测设计阶段,这种数据的转换利用将更加频繁。
[1] AutoDesk,Inc AutoCAD Civil 3D 用户手册 缓和曲线定义 [EB/OL]. [2015-10-31].http://docs.autodesk.com/ CIV3D/2013/CHS/ index.html?url=filesCUG/GUID-581518E0-DE06-482E-840C-B997C3590489.htm,topicNumber= CUGd30e185916
[2] GB50090-2006.铁路线路设计规范[S].
[3] JTG-D20-2006. 公路路线设计规范[S].
[4] 余时民,庹立新.三次抛物线测设高速铁路曲线[J].高速铁路技术,2010(S1):18-24
[5] 李国义,姚楚光.UTM投影及其变形分析[J].理空间信息,2013,11(6):80-83
[6] KARNEY CFF.Transverse Mercator with an Accuracy of a Few Nanometers[J].Journal of Geodesy,August 2011,85(8):475-485
[7] KARNEY C.GeographicLib[EB/OL].(2010-02-08)[2015-07-30].http://Geographiclib.Sourceforge.net/
[8] 开放地理信息联盟(OGC)KML.白皮书[EB/OL].[2015-08-04].http://Docs.Opengeospatial.org/is/12-007r2/12-007r2.html
P208
B
1672-4623(2016)10-0101-03
10.3969/j.issn.1672-4623.2016.10.032
张帅,工程师,研究方向为工程测量、大地测量及其在大型项目管理中的技术质量控制。
2016-01-06。