断面测量一体化处理系统的设计与实现论文_蔡笃远

中国建筑材料工业地质勘查中心广东总队 广东广州 510000

摘要:传统的公路断面测量内业处理自动化程度低,效率低下,已经不再适用目前的测量作业需要。为了提高断面测量内业处理的工作效率,本文利用ObjectARX2008软件设计了公路断面测量内业一体化处理系统,集成了数据提取、数据成图、数据格式转换3个模块。经应用实践验证该系统的高精度、高效率和高稳定性。

关键词:公路;断面测量;一体化处理技术

引言

在公路工程建设中,断面测量是公路勘测设计阶段的一项重要工作。断面测量内业处理的主要工作是生成断面数据文件并绘制断面图,由于常规的断面测量方法内业处理较为繁琐,普遍存在自动化程度低、效率不高等问题,这不利于断面测量工作的进行。鉴于此,本文从公路断面测量作业需求出发,利用ObjectARX2008软件设计实现了断面测量内业一体化系统,其软件运行效率高,提升了作业效率。

1.断面测量概述

断面测量分为纵断面测量和横断面测量。纵断面测量是测量路中线桩地面高程,横断面测量是测定中线桩两侧垂直于中线的变坡点间的平距及高差[1]。如图1所示,横纵断面的交点称为中桩点,道路前进方向左侧的测量点称为左桩点,道路前进方向右侧的测量点称为右桩点。常见的横纵断面数据文件格式如下。

(1)横断面数据文件格式:

stdl1hl1dl2hl2……(dl1,dl2,dl3,……,dln必须从小到大排列,亦即离中桩由近到远)

DR1hr1DR2hr2……(DR1,DR2,DR3,……,DRn必须从小到大排列,亦即离中桩由近到远)

其中:st为桩号;dl1为左侧第一点距离中桩的距离;hl1为对应此点的绝对高程;DR1为右侧第一点距离中桩的距离;hr1为对应此点的绝对高程。

(2)纵断面数据文件格式:

sth

……

其中:st为中桩桩号;h为对应中桩高程。

图1桩点示意

根据断面数据可绘制断面图供坡度设计使用。

2.内业一体化处理关键技术

2.1桩点自动过滤与归化

在实际测量中,由于观测条件的限制以及测量误差的存在,测量点可能会偏离设计线,直接提取这些点的断面数据可能会存在偏差[2]。因此,需要剔除偏差大于阈值的测量点。具体操作是:计算测量点在设计线上的垂足坐标,然后计算测量点与垂足的距离。算法如下:依次提取设计线起点坐标(xS,yS,zS)、终点坐标(xE,yE,zE)、测量点坐标(xP,yP,zP),根据式(1)、式(2)算出垂足点坐标(xN,yN,zN),再根据式(3)计算测量点到直线的距离D。这里需要注意的是,断面测量的里程指的是平距,不能将Z 值带入到距离计算中。

(1)

k=-[(xS-xP)(xE-xS)+(yS-yP)(yEyS)+(zS-zP)(zE-zS)]/[(xE-xS)2+(yE-yS)2+(zE-zS)2] (2)

D=(xN-xP)2+(yN-y)P2 (3)

对于水平方向的偏差小于阈值的测量点进行归化处理,即用垂足点N 的X、Y 坐标值替换P点的X、Y 坐标值,完成测量点的归化。

2.2横断面桩点自适应识别

桩点智能判别技术是指首先通过计算纵横断面线的交点确定中桩点PO,然后利用各桩点P和中桩点PO的坐标差ΔX、ΔY 和横断面线的坐标方位角λ 确定左右桩点,共有4种情况如下:

(1)当0°≤λ<90°,ΔX<0且ΔY≤0,左桩点{ΔX>0且ΔY≥0,右桩点

(2)当90°≤λ<180°,ΔX≥0且ΔY<0,左桩点{ΔX≤0且ΔY>0,右桩点

(3)当180°≤λ<270°,ΔX>0且ΔY≥0,左桩点{ΔX<0且ΔY≤0,右桩点

(4)当270°≤λ<360°,ΔX≤0且ΔY>0,左桩点{ΔX≥0且ΔY<0,右桩点

区分左右桩点后,采用改进的冒泡排序法对其进行排序:左桩点按距中桩点的距离由远及近排序,右桩点按由近及远排序。改进的冒泡排序法在原有算法基础上变化如下:(1)使用函数指针参数传递升降函数,增加了算法的适用性;(2)使用标志变量mk,默认值为False,当排序时发生交换则置为True,每轮排序结束时检查mk 值,若为False则未发生交换,则结束排序,提高了算法的运行效率。

2.3实体类型过滤

系统通过选择横纵断面设计线来提取断面数据,为避免操作失误需限制实体类型。绘制断面设计线时使用多段线或者直线,因此将实体类型限定为AcDbLine和AcDbPOlyline。判断多段线的核心代码如下:

AcDbEntity*pEnth=NULL;

AcDbObjectIdentId;

acdbOpenObject(pEnth,entId,AcDb::kFor-Write);

if(pEnth->isKindOf(AcDbPOlyline::desc())

{pPOlyPl=AcDbPOlyline::cast(pEnth);

pEnth->close();

将上述代码中的AcDbPOlyLine换为AcDb-Line即可判定直线。如果实体类型不为直线和多段线,则系统提示重新选择实体。由于多段线和直线在中桩点计算和断面线坐标方位角计算时用到的算法不同,道路横断面提取时需要同时选择道路中线和横断面线,系统需判断4种不同情形,分别处理。

2.4纵断面桩点逐段匹配

由于纵断面线长度较长且线形复杂多变,如何将系统提取的纵断面桩点按道路前进方向正确排序,成为一个需要解决的问题。公路设计线一般是由多个直线段和圆弧段构成,逐段匹配的思想是将纵断面设计线按节点拆分为各直线段和圆弧段单元,各直线段和圆弧段单元单独匹配该单元上的桩点并进行桩点过滤与归化,然后利用节点索引将各单元桩点连接起来,再对连接后的桩点进行重复点过滤,即可得到严格按照道路前进方向排序的纵断面桩点,在此基础上可提取里程和高程信息[3]。

2.5参数化一键成图

由于ObjectARX可实现参数化一键成图,减轻了人工绘图的繁重工作。断面图中主要包括坐标网格、断面线、注记等图形要素。使用ObjectARX创建基本图形对象,必须遵循以下基本步骤:(1)了解需要创建的图形对象数据库;(2)获得图形数据库的块表;(3)获得一个存储实体的块表记录,所有模型空间实体都存储在模型空间。

以绘制直线为例,其核心代码为:

AcDbObjectIdCLineUtil::Add(constAcGe-POint2d &startPOint, constAcGePOint2d&endPOint

AcDbLine*pLine=newAcDbLine(ptstart,ptEnd);

AcDbBlockTable*pBlockTable= NULL;

acdbHostApplicationServices()->working-Database()->getBlockTable(pBlockTable,Ac-Db::kForRead);

AcDbBlockTableRecord*pBlockTableRecord= NULL;

pBlockTable- >getAt(ACDB_MODEL_SPACE,pBlockTableRecord,AcDb::kForWrite);

AcDbObjectIdlineId;

pBlockTableRecord - > appendAcDbEntity(lineId,pLine);

pBlockTable->close();

pBlockTableRecord->close();

pLine->close();

3.系统设计与实现

本系统基于Visualstudio2005平台采用ObjectARX2008工具进行AutoCAD 二次开发,功能包括横断面提取、纵断面提取、断面成图和断面文件转换。其中,横断面提取又分为规则里程和非规则里程,根据中桩点是否按固定里程布设来区分。横纵断面点的排序和前进方向有关,但是断面设计线绘制时方向不一定是前进方向,所有系统中加入了反方向提取,提高了系统的实用性。系统主界面如图2所示。

图2系统主界面

3.1横断面提取

通过选择道路设计中线,然后依次选择每条横断面线即可提取横断面数据。提取出的数据格式如下:

HDMn,dl,hl,…,dl,hl,0,HZZ,DR,hr,…,DR,hr

其中:HDMn代表每条横断面的名称,系统采用横断面编号+桩号的形式进行命名,如HDM1(K0+000)代表第一条横断面,该断面里程为0;dl代表左桩点(道路前进方向中桩左侧的断面点)距离中桩的距离,用负数表示,且左桩点按距离中桩的距离由远及近排列;hl是左桩点的高程,与dl相对应;0是中桩标识符;HZZ代表中桩高程;DR代表右桩点(道路前进方向中桩右侧的断面点)距离中桩的距离,用正数表示,且右桩点按距离中桩的距离由近及远排列;hr是右桩点的高程,与DR相对应。

3.2纵断面提取

通过选择道路设计中线即可提取纵断面数据,提取出的数据格式如下:

ZDMn,QSZH,H,D,H,…,D,H

其中:ZDMn代表每条纵断面的名称,系统采用纵断面编号+ 起始点桩号的形式进行命名,如ZDM1(K0+000)代表第一条纵断面,该断面起始里程为0;H 代表纵断面每个中桩点对应的高程;D代表中桩点距离起始桩点的距离,由近及远排列。

3.3断面成图

按照系统操作提示,依次输入横向比例尺、纵向比例尺、是否在断面线上显示高程(0代表否,1代表是)、断面图报警角度(断面线过于尖锐处可能存在异常)、相连断面点间隔阈值,然后选择提取出的断面数据文件即可生成断面图。图3是某条道路横向比例尺为1∶100、纵向比例尺为1∶200时的横断面断面图。

图3某横断面断面图

第n点里程,第n点高程(前进方向左端为第一点,从左往右排序)

系统提供的纵断面数据格式即为断面测量概述中所述的格式。

4.工程应用

本系统在某公司进行了相关测试。该单位断面成图使用基于VB 开发的CAD插件实现断面数据提取。该操作要求先用3DPOLY 线将需要提取的断面点连接起来,3DPOLY线连接过程中一旦中断便需从头开始绘制,公路纵断面线路较长,连接过程易中断,影响数据处理效率。成图操作是使用AutoLISP编写的CAD插件,该插件兼容性差,运行效率慢,参数化程度低,难以满足不同设计单位的成图要求。断面文件格式转换主要使用EXCEL进行转换,极易出错且效率低下。经过大量公路断面项目甚至部分水利断面项目中的应用测试,本系统都展现出高精度、高效率、高稳定性的特点。本系统与断面测量传统作业模式相比,具有以下优势:

(1)通过提取实际测点数据而不是等距离内插数据,更能真实地反映线路的起伏,数据精度更高;

(2)系统基于AutoCAD集成数据提取、数据成图、数据文件转换3个功能,操作更方便;

(3)基于VC++的ObjectARX,通过动态链接库的方式加载到AutoCAD中,运行效率高。

5.结语

综上所述,工程实践表明,相比断面测量传统作业模式,该系统可利用道路设计线和断面测量点提取断面数据文件,据其成果自动绘制纵横断面图,并提供了多种数据格式文件可供转换,具有易操作、高精度、高效率等优势,大大提高了公路断面测量的工作效率。此研究成果可为类似工程提供参考。

参考文献:

[1] 颜循英. 断面测量内外业一体化系统软件研究[J]. 华人时刊旬刊, 2015(5).

[2] 周航宇. 断面测量内外业一体化系统设计和实现[J]. 东华理工大学学报:自然科学版, 2016(S1):128-132.

[3] 刘宇, 孙士通. 地铁隧道断面测量内外业一体化技术研究与应用[J]. 北京测绘, 2017(s1):264-267.

论文作者:蔡笃远

论文发表刊物:《防护工程》2018年第17期

论文发表时间:2018/10/30

标签:;  ;  ;  ;  ;  ;  ;  ;  

断面测量一体化处理系统的设计与实现论文_蔡笃远
下载Doc文档

猜你喜欢