EPS二次开发在纵横断面数据处理中的应用
2021-05-24王棋
王 棋
(河北省地质测绘院,河北 廊坊 065000)
在公路设计勘测中,道路纵横断面测量是一项十分繁重的工作。因为一方面设计人员需要利用测量的纵横断面数据计算和平衡土石方量;另一方面需要根据横断面的形状合理设计道路路基、边坡以及其他附属结构物[1]。工程测量中纵横断面数据的严格要求,使得在晋西黄土高原地形起伏、塬川交错且发育有黄土梁、峁、黄土残塬、冲沟、河谷、阶地等微地貌的地形中作业难度增加,同时作业效率大大降低。但随着航空摄影测量精度技术的不断发展[2-4],针对困难地形,采用航测内业进行数据采集也成为一种必然选择,但目前航测软件不能实现采集数据规范化输出,严重降低了工作的效率。本文基于山维EPS二次开发,提出了一种以计算机自动处理为主、人工参与为辅的纵横断面数据处理方法[5],以期提高数据整理的质量和效率。
1 传统的纵横断面数据处理
在日常公路勘测外业作业过程中,利用设计给定的道路参数编辑道路进行外业地形变化点及规定点的采集,目前RTK设备均能导出设计要求的格式的纵横断面数据[6]。对于较为复杂的纵横断面也只需要简单的排序或者量算即可完成。而针对通过航测内业采集的数据,通常是人工量算距离或通过EXCEL表计算距离的方法,将横断面上点的距离与高程的坐标数据,在EXCEL中建立坐标数据组,在南方CASS7.0中批量而快速地绘制出横断面图[7-10]。
但是在实际应用的过程中,针对纵断面中较为常见的桥址纵断面的数据处理,就变得较难实现。横断面中针对匝道类小半径的横断面数据,数据处理也显得捉襟见肘。
2 基于EPS纵横断面数据处理
2.1 纵断面数据处理脚本设计路线及实现
线路纵断面数据处理工作,主要是将采集到的地形变化点及特定点所对应的里程桩号和相应的高程,用直线段连接起来[10]。线路纵断面数据处理脚本的设计路线如下:
收集数据及线位分段→线位圆弧化处理→碎部点垂直到线位→计算距离及里程→纵断面里程检查。
其中,碎部点逐一垂直到线位上是纵断面数据整理最为重要的一部分,由于垂直后才能确保碎部点的对应里程的正确,同时为纵断面中特殊的桥址纵断数据整理提供内业整理的可行性。其主要代码如下:
for j=0 to redp_count-2
SSProcess.DistPerpendxp,yp,relation,zk_x(i),zk_y(i),red_x(j),red_y(j),red_x(j+1),red_y(j+1)
if relation=0 then
flag=0
SSProcess.XYSA zk_x(i),zk_y(i),xp,yp,dist0,angle0,flag
SSProcess.XYSA red_x(j),red_y(j),xp,yp,dist,angle,flag
zk_lc(i)=red_lc(j)+dist
point_find=true
end if
if relation=1 then
flag=0
xp=red_x(j):yp=red_y(j)
SSProcess.XYSA zk_x(i),zk_y(i),xp,yp,dist0,angle0,flag
zk_lc(i)=red_lc(j)
point_find=true
end if
if relation=-1 then
SSProcess.XYSA red_x(j),red_y(j),xp,yp,distc,angle0,flag
if distc<=0.02 then
zk_lc(i)=red_lc(j)-distc
point_find=true
end if
end if
2.2 横断面数据处理脚本设计思路及实现
线路横断面数据处理工作,主要是采集到的地形变化点及特定点所对应的线位两侧距离和相应的高程,用直线段连接起来。横断面数据处理的设计路线如下:
收集数据及线位分段→依次选择横断面中桩点及两侧地形点→计算中桩点到两侧地形点距离,两侧地形点根据距离由近及远排序→输入横断面里程继续选择下一条横断数据→成果输出数据检查。
其中,利用线路两侧采集数据和中桩点距离排序显得十分的重要。其主要代码如下:
for i=0 to geocount-1
if obj_type(i)="POINT" and obj_code(i)="1101022" then
g_x(fz)=obj_in_x(i):g_y(fz)=obj_in_y(i):g_z(fz)=obj_in_z(i):g_color(fz)=obj_color(i)
SSProcess.XYSA center_x,center_y,g_x(fz),g_y(fz), g_dist(fz), angle2,flag
fz=fz+1
end if
next
for i=0 to obj_count-2
d0=1000
for j=0 to obj_count-1
if d0>g_dist(j) and use(j)=false then d0=g_dist(j):pos=j
next
use(pos)=true
pai_x(fz)=g_x(pos):pai_y(fz)=g_y(pos):pai_z(fz)=g_z(pos):pai_color(fz)=g_color(pos):pai_dist(fz)=g_dist(pos)
fz=fz+1
next
3 应用实例
基于山维EPS二次开发的脚本在某高速勘测设计的数据过程中得到验证,在设计中纵断面、桥址纵断面、横断面及涵轴数据整理中,均进行了应用。在桥址纵断面的数据整理过程中,脚本将繁琐的断面点垂直到线上、里程计算等工作步骤全部自动处理,将原来的数据整理过程简化到成果检查过程;在横断面和涵轴的数据处理过程中,利用脚本,将重复的数据区分、距离计算机排序工作全部由电脑自动处理,将原来的30条/人工天,直接提速到600条/人工天,将繁琐的数据整理、计算过程简化为数据选择过程,将数据整理过程中大量的工作交由计算机处理,大大提高了数据整理的速度,减少了人工参与可能产生的错误,保证了接边的质量和项目的进度。软件界面见图1。
4 结语
随着倾斜摄影测量技术的不断完善,航空摄影测量技术在道路勘测设计中的应用范围将不断扩大,但由于摄影测量固有的局限性,外业测量加内业航测数据采集的勘测思路将不断发展,航测内业数据处理的工作量将不断增加。基于山维EPS二次开发的脚本将不断的增加,并将在生产中大量投入使用,经实际生产验证,该工具转换速度快、效率高、转换前后数据准确一致,具有很高的应用价值。