文档库 最新最全的文档下载
当前位置:文档库 › 如何解决大沙河中下游段综合整治工程管线成图问题

如何解决大沙河中下游段综合整治工程管线成图问题

如何解决大沙河中下游段综合整治工程管线成图问题

赖东杰深圳市水务规划设计院,广东,深圳 518001

【摘要】:作为一种基于Windows的编程语言,Visual Basic(以下简称VB)已广泛应用于城市地下管线探测应用程序的开发。结合作者的开发实践经验,本文主要讲述了用VB解决大沙河中下游段综合整治工程地下管线探测数据处理的问题,通过VB编程实现数据库自动生成、野外数据导入、数据格式转换、数据处理、图形和成果输出等功能。

【关键词】:Visual Basic;城市地下管线探测;

The Solution of Pipeline Mapping in the Comprehensive Improvement Project of the Middle and Lower Reaches of Dasha River

Lai Dongjie Shenzhen Water Planning and Design Institute, 518000,Shenzhen,Guangdong, China Abstract:As a programming language based on Windows system, Visual Basic (hereinafter referred to as VB) has been widely used in application development of urban underground pipeline detection.According to the author's experience, this paper describes how to deal with data processing of urban underground pipeline detection in the comprehensive improvement project of the middle and lower reaches of Dasha river by using VB.Through VB programming, we got these functions,such as automatic generation of database, field data import, format conversion, data processing, graphics and results output,etc.

Key words: Visual Basic;Urban Underground Pipeline Detection.

一前言

大沙河发源于羊台山,位于深圳市南山区,流域内包括西沥、长岭皮、钳颈三座水库在内,控制流域面积92.99km2,河道起于长岭皮水库溢洪道出口,至滨河立交注入深圳湾,干流河道总长13.7km。

本次工程治理范围为大沙河河口至大学城东校区南开段河道干流及龙井河支流,其中干流整治长度为11.35km,龙井河支流整治长度1.85km。

工程主要建设内容包括水质改善工程(包括初期雨水截流箱涵、污水提升泵站、补水管道等)及驳岸恢复工程(结合水质改善工程进行堤坡防护和绿化恢复)。

随着计算机技术和程序设计方法的发展,计算机已广泛应用于工作、学习、生活的各个方面。正是由于人们认识的提高,地下管线探测也从传统的效率低下的手工作业阶段向高效的计算机作业阶段迈进。在处理大沙河中下游段综合整治工程地下管线探测数据时,我们发现本工程管线种类繁多,有给水、污水、雨水、燃气、电力、电信以及工业管道等,每一种管线的参数信息又非常多,包括管径或断面尺寸、管材、点特征、附属物、埋深、坐标、管道标高、管偏、埋设日期、权属单位等,要处理的管线信息量非常大,因此传统的基于DOS平台,面向过程的结构化程序设计方法已经不能

二数据库生成和连接

Microsoft Office Access是由微软发布的关联式数据库管理系统,它具有界面友好、易学易用、开发简单,并结合了Microsoft Jet Database Engine 和图形用户界面等特点,是Microsoft Office的成员之一,Access能够存取 Access/Jet、Microsoft SQL Server、Oracle或者任何ODBC兼容数据库内的资料。

在Office Access数据库管理系统里面可新建样本数据库,数据库建库依据是《城市地下管线探测技术规程(CJJ61-2003)》和《深圳市地下管线探测实施细则(深圳市国土资源和房产管理局2005年10月)》,其表

结构内容如下:

必要一步,尽管可以通过ADO数据控件来建

立数据库连接,但是通过VB编码的方式来连接数据库有更大的灵活性,用ADO打开连接的主要方法是通过连接对象来连接数据库,即使用Connection.Open方法。Private Conn As New ADODB.Connection Conn.Open

"Provider=Microsoft.Jet.OLEDB.4.0;Dat a Source=" + FileNameString + ";Persist Security Info=False"

说明:FileNameString是指要打开的数据库的完整路径和文件名。

三数据导入和格式转换

地下管线探测的原始数据一般是在Office Excel电子表格中录入的,Excel是一种电子表格程序,它方便各种电子表格数据的录入,具有功能齐全、强大,应用范围相当广泛,适用的人群非常普及,操作起来简单、方便等优点和特点,是数据录入首选的理想平台。

在Office Excel中录入的管线原始数据,通过VB编码可以直接打开Excel表格,导入表格中的数据并转换为Access数据库格式的管线数据,编码方法如下:Conn.Open

"Provider=Microsoft.Jet.OLEDB.4.0;Dat a Source=" + FileNameString + ";Persist Security Info=False"

Rs.Open "Select * From 管线数据", Conn, adOpenStatic, adLockBatchOptimistic Err.Clear

Set ExcelAppObject = GetObject(, "Excel.Application")

If Err Then Set ExcelAppObject = CreateObject("Excel.Application") ExcelAppObject.Visible = False ExcelAppObject.Workbooks.Open InPutExcelFileName

Set ExcelWorksheet = ExcelAppObject.ActiveWorkbook.Sheets( 1)

……

Rs.AddNew

Rs("管线类型") =

ExcelWorksheet.Cells(RowsNum, 1).Value Rs("点号") =

ExcelWorksheet.Cells(RowsNum,2).Value Rs("连接点号") =

ExcelWorksheet.Cells(RowsNum, 3).Value ……

Rs("管材") =

ExcelWorksheet.Cells(RowsNum, 6).Value

Rs.UpdateBatch adAffectCurrent

……

Rs.Close

Conn.Close

ExcelAppObject.Workbooks.Close ExcelAppObject.Quit

四数据处理

管线数据处理主要包括:更新管线数据(包括:块符号、点号排序号、管道标高和坡度、坐标、点码和线码等)、更新图幅号、管线数据检查(包括:重点、重线、点特特附属物错漏、记录和坐标错漏、线记录往返属性匹配问题、排水管段逆流、排水线路逆流、排水流向问题、管段超长等)、统计(包括:按不同方式统计管线长度、点个数、检查精度等)。

五管线图形和成果输出

通过VB编程,可以将数据库中的管线成果按一定的格式要求输出,包括AutoCAD 图形(*.DWG)和Excel电子表格成果表(*.XLS)。

⑴输出管线图

如何通过VB编程实现与AutoCAD的连接也是管线成果输出的关键环节,在VB编程环境下,可以通过加载引用AutoCAD ActiveX技术来实现图形生成的。

①加载AutoCAD应用程序对象

Dim AcadApp As AcadApplication

Set AcadApp=GetObject(,"AutoCAD. Application")

②定义和生成图形对象

Dim LineObj As AcadLine ′定义线

Dim PointObj As AcadPoint ′定义点

Dim TextObj As AcadText ′定义文本Dim BlockObj As AcadBlockReference

′定义块

Dim LayerObj As AcadLayer ′定义图层……

Set LayerObj =

https://www.wendangku.net/doc/ff18097613.html,yers.Item("J L")

LayerObj.Color = 5 ′定义给水图层颜色为蓝色,即5号色。

……

Set TextObj = AcadApp.ActiveDocument.ModelSpace.Add Text(TextStr, InSertPoint, TextHeight) Set LineObj =

AcadApp.ActiveDocument.ModelSpace.Add Line(StartPoint, EndPoint)

Set BlocksObj =

AcadApp.ActiveDocument.ModelSpace.Ins ertBlock(InSertPoint, BlockNameStr,

1#,1#, 1#,0#)

……

③保存和关闭图形对象

AcadApp.ActiveDocument.SaveAs FileName AcadApp.ActiveDocument.Close

⑵生成管线点成果表

管线点成果表一般是以电子表格的方式提供的,我们最常用的也就是Excel电子表格。要生成Excel电子表格成果,同样的可以通过VB编程方式,将数据库中的管线数据按一定的格式要求写入Excel电子表格中。

管线成果输出和管线数据导入是两个相反的过程,但应用到编程方法是一样的,首先通过VB打开Access数据库文件,然后连接Excel电子表格,将Access数据库中的成果按一定格式要求逐一生成Excel电子表格数据。

六结束语

随着计算机技术不断提升和程序开发设计方法的不断发展,VB程序开发将在更多的工作领域得到更加广泛的应用,尤其是结合AutoCAD进行二次开发,不但可以解决地下管线探测数据处理工作中一些简单、繁琐、重复性的操作,还能实现仅用AutoCAD 不能或不易实现的功能和效果,例如进行三

维动画模拟、图形参数化设计等。

【参考文献】:

⑴张宏林、孔艳王哲等编著的《Visual Basic 6.0开发数据库》人民邮电出版社;

⑵张晋西编著《Visual Basic与AutoCAD 二次开发》清华大学出版社;

⑶安剑、孙秀梅编著的《Visual Basic数据库系统开发自学手册》人民邮电出版社;

⑷《城市地下管线探测技术规程》CJJ61-2003中华人民共和国城镇建设行业标准;⑸《深圳市地下管线探测实施细则》深圳市国土资源和房产管理局2005年10月;

⑹赛奎春、李俊民编著的《Visual Basic 函数参考大全》人民邮电出版社;

⑺ [美]Marion Cottingham著,孔祥丰等译《AutoCAD VBA从入门到精通》电子工业出版社;

⑻姚巍编著的《Visual Basic数据库开发从入门到精通》人民邮电出版社;

⑼中国地质大学(武汉),鲁永康教授编著的《频率域电磁法探测地下管线的理论与方法技术》。

作者简介:

赖东杰,籍贯福建,1973年8月2日出生

工作单位:深圳市水务规划设计院现职称:工程师

从事工作:主要从事地下管线探测和管道无损检测技术工作。

联系方法:

收件地址:深圳市龙岗布吉莲花山庄A座怡心苑602室邮政编码:518000 联系电话:139********

Email:Laidj999@https://www.wendangku.net/doc/ff18097613.html, QQ号码:399628336

相关文档