CSDN博客

img youngmean

“道路工程勘测CAD信息管理与出图系统”设计思想

发表于2004/9/14 23:12:00  3073人阅读

公路勘测设计是个数据量大、计算量大的一项工程,对于计算机未投入使用到工程计算和数据管理工作的时代,这么庞大的数据和计算简直是道路工程设计和勘测人员的噩梦,因此,使用计算机对道路勘测数据资料的管理和计算是个非常值得的投入,它会大大提高道路设计速度、减少道路测量和计算数据的冗余,减少人为的错误等等。

 

1.“道路工程勘测CAD信息管理与出图系统”解决道路线型设计的实际问题主要有:

1.1 测量数据的科学管理,建立数据库,对庞大的工程测量数据进行管理。

由于传统的人工手工图纸输入效率低,数据查找麻烦,管理也不容易。不难想象,要从几百张图纸中查找某些数值谈何容易。

通过建立数据库对工程数据进行管理,建立纵、横、平面表,并在表的设计中,使每个表关系数据规范化、符合第三范式以上。就能有效地减减少数据的冗余,避免插入异常、删除异常和修改困难等现象。

例如,在纵断面设计数据库设计中,建立《纵断面测量资料》表、《纵断面资料计算结果》表和《纵断面地面线测量资料》表(如图A),这样的数据库设计满足BCNF(修正第三范式),就会使得纵断面数据库设计科学化,避免了数据冗余、数据库插入异常、修改困难等现象。

A 关系数据库设计

举个反面例子:在纵断面线型设计中,如果单单建立一个《纵断面资料计算结果》表,当只有纵断面的实际测量数据时而没有进行数值计算时就会出现数据插入异常(《纵断面资料计算结果》中只能输入“边坡点桩号”等前三记录、其它,例如“外距”等其它计算数值字段的记录就为空,不能插入数据库,出现插入异常)。

 

1.2 对于庞大的工程数值精确的计算。通过对数据库的访问,取出工程数据,进行数据计算。

传统的数值计算,道桥工程师们要不断地重复计算曲线各元素,准确率不高、

精度小而且错误率也不低。

使用“道路工程勘测CAD信息管理与出图系统”进行道路线型数值计算,工程师无需进行手工计算,只需用鼠标点击某个按钮,便可获得计算数值和数据报表,所需要的时间是几秒钟。但是,如此快捷的计算当然也就需要周全的程序算法,杜绝错误的发生。

例如,在平面线型设计报表设计中,需要考虑第一个和最后一个桩的曲线元素和其它各桩曲线元素的不同(如图B),我们需要分别处理数据表第一和最后一个记录。其它各组曲线元素记录才能按规范公式计算后插入数据库。

交点号

交点桩

转角值

半径

缓和曲线长

切线长

……

1

K0+000.000

 

 

 

 

 

2

K1+098.000

17°02‘12“

1350.00

100.000

252.368

……

……

……

……

……

……

……

……

99

K2+876.000

10°12‘42“

1000.02

120.000

150.050

……

100

K3+000.000

 

 

 

 

 

B 《直线、曲线及转角》报表

 

1.3 获取数据库数据,与AutoCAD进行通讯,由计算机自动生成纵断面图、横断面图等。

传统的手工AutoCAD画图要花费道桥工程师的时间更加多了,我们能抛

弃这种用鼠标一点连一点地画工程图吗?

    “道路工程勘测CAD信息管理与出图系统”抛弃了手工AutoCAD画图,由程序负责画图,这样,道桥工程师的任务只剩下用食指按几下鼠标了。

    编写AutoCAD画道路横断面图是整个软件开发设计的难点之一。在程序画好地面线和路面线后,剩下的边坡和地面线的交点便是难点中的难点。下面便简单介绍下求地面线和边坡交点的计算机算法(如图C):

    (1)首先,声明Lx[I],Ly[I];Rx[I],Ry[I]分别是地面线左侧点X坐标、Y坐标、  右测点X坐标、Y坐标。Xo,Yo分别是原点O的X坐标和Y坐标,

Row是测点数。

2)遍历左侧点各点X坐标。

       For ( i=1; i

       {

           If( Lx[i]大于或等于路面最左点坐标Bo ) //找到目标点

           {

              求出地面线斜率不存在时、存在时的地面线和设计线的交点坐标Xd、Yd。

              因为是线段交点而不是直线交点,所以还要判断“真假”交点。

              //判断是真交点后

if(斜率是否大于或等于边坡斜率) //因为此时求出的交点会出错。

{

提供画挡土墙;

}

else

{

画出线段;

              }

           }

       }

       //如果左侧各点所成线段都找不到真交点的话,那么交点就一定在左右侧第一个侧点连线上了。

       按上叙算法求线段交点、判断真假交点、比较斜率、画图;

(3)右边画图的算法仿效左边画图的算法。

C 横断面求边坡交点简图

 

2.“道路工程勘测CAD信息管理与出图系统”总体的数据流程,如图(图D):

数据的总体流程可由图D一览无余,首先,建立或打开工程数据库“工程Access数据库”,软件从数据库中取出数据(箭头方向表示数据流动方向)进行数据加工(圆圈表示数据加工),计算加工完成后,再把数据流送回“工程Access数据库”,然后就可以提供相关的报表打印,工程图纸打印等服务。

这种数据流程设计方法,就比较容易导出程序结构图和初步建立出软件各个功能模块。

 

3.小结

道路线型CAD软件开发的主要难点是数据库设计和图形计算部分,在道路CAD软件开发的过程中,图形数值计算和其软件测试应给予更多的时间,因为相对于相当一部分的软件来说,道路线型CAD软件的数学计算是相对复杂的了。

D 数据流程图

 

 

 

 

 

 

 

参考文献:

[1] 萨师煊,王珊,数据库系统概论.北京:高等教育出版社,2000.

[2] 施伯乐.程序员、高级程序员软件知识.北京:清华大学出版社,1996

[3] Shashi Shekhar and Sanjay Chawla,《Spatial Databases: A To
0 0

相关博文

我的热门文章

img
取 消
img