免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB程序开发在城市地下管线探测中的应用赖东杰 深圳市水务规划设计院,广东,深圳 518001【摘要】:作为一种基于Windows的编程语言,Visual Basic(以下简称VB)已广泛应用于城市地下管线探测应用程序的开发。结合作者的开发实践经验,本文主要讲述了用VB实现城市地下管线探测数据处理的便捷途径,通过VB编程实现数据库自动生成、野外数据导入、数据格式转换、数据处理、图形和成果输出等功能。【关键词】:Visual Basic;城市地下管线探测;Application of VB Programming in Urban Underground Pipeline DetectionLai 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 authors experience, this paper describes a convenient way on how to complete data processing of urban underground pipeline detection 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.一 前言随着计算机技术和程序设计方法的发展,计算机已广泛应用于工作、学习、生活的各个方面。正是由于人们认识的提高,地下管线探测也从传统的效率低下的手工作业阶段向高效的计算机作业阶段迈进。地下管线按管线种类分有给水、污水、雨水、燃气、电力、电信以及工业管道等,每一种管线的参数信息又非常多,最主要的内容包括:管径或断面尺寸、管材、点特征、附属物、埋深、坐标、管道标高、管偏、埋设日期、权属单位等,要处理的管线信息量非常大,因此传统的基于DOS平台,面向过程的结构化程序设计方法已经不能满足地下管线探测软件开发的需要,而在可视化集成环境下采用面向对象的程序设计方法、事件驱动的编程机制开发管线软件则越来越普遍。在视窗Windows环境下VB是一门简单易学的编程工具,它引入窗体和控制的概念,可以方便地进行可视化屏幕设计,大大减少了设计用户界面的时间,从根本上改变了传统的程序设计模式,大大简化了Windows应用程序设计。此外,用VB开发的应用软件,经编译和制作安装盘后可以脱离VB系统单独运行,因此,VB已经成为地下管线探测数据软件的一种重要开发工具。二 数据库生成和连接Microsoft Office Access是由微软发布的关联式数据库管理系统,它具有界面友好、易学易用、开发简单,并结合了 Microsoft Jet Database Engine 和图形用户界面等特点,是Microsoft Office的成员之一,Access能够存取 Access/Jet、Microsoft SQL Server、Oracle或者任何ODBC兼容数据库内的资料。在Office Access数据库管理系统里面可新建样本数据库,数据库建库依据是城市地下管线探测技术规程(CJJ61-2003)和深圳市地下管线探测实施细则(深圳市国土资源和房产管理局2005年10月),其表结构内容如下:序号字段名称数据类型宽度小数位数1管线类型文本102图幅号文本103点号文本204图上点号文本205连接点号文本206埋设方式文本107材质文本108探查方法文本109点特征文本1010附属物文本1011管径数字长整型012宽数字长整型013高数字长整型014埋深数字单精度215X数字双精度316Y数字双精度317Z数字双精度318起点标高数字双精度319终点标高数字双精度320坡度数字双精度321总孔数数字整型022已用孔数数字整型023电缆根数数字整型024行列文本2025电压文本2026压力文本2027管偏文本2028调查日期日期/时间29埋设日期日期/时间30敷设日期日期/时间31井深数字单精度232井径文本3033权属单位文本5034养护单位文本5035调查单位文本5036备注文本20037调查者文本1038社区文本2039街道文本5040道路名称文本5041流向是/否42数据来源文本1043管道长度数字双精度3建立和数据库的连接是访问数据库的必要一步,尽管可以通过ADO数据控件来建立数据库连接,但是通过VB编码的方式来连接数据库有更大的灵活性,用ADO打开连接的主要方法是通过连接对象来连接数据库,即使用Connection.Open方法。Private Conn As New ADODB.ConnectionConn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source= + FileNameString + ;Persist Security Info=False说明:FileNameString是指要打开的数据库的完整路径和文件名。三 数据导入和格式转换地下管线探测的原始数据一般是在Office Excel电子表格中录入的,Excel是一种电子表格程序,它方便各种电子表格数据的录入,具有功能齐全、强大,应用范围相当广泛,适用的人群非常普及,操作起来简单、方便等优点和特点,是数据录入首选的理想平台。在Office Excel中录入的管线原始数据,通过VB编码可以直接打开Excel表格,导入表格中的数据并转换为Access数据库格式的管线数据,编码方法如下:Conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source= + FileNameString + ;Persist Security Info=FalseRs.Open Select * From 管线数据, Conn, adOpenStatic, adLockBatchOptimisticErr.ClearSet ExcelAppObject = GetObject(, Excel.Application)If Err Then Set ExcelAppObject = CreateObject(Excel.Application)ExcelAppObject.Visible = FalseExcelAppObject.Workbooks.Open InPutExcelFileNameSet ExcelWorksheet = ExcelAppObject.ActiveWorkbook.Sheets(1)Rs.AddNewRs(管线类型) = ExcelWorksheet.Cells(RowsNum, 1).ValueRs(点号) = ExcelWorksheet.Cells(RowsNum,2).ValueRs(连接点号) = ExcelWorksheet.Cells(RowsNum, 3).ValueRs(管材) = ExcelWorksheet.Cells(RowsNum, 6).ValueRs.UpdateBatch adAffectCurrentRs.CloseConn.CloseExcelAppObject.Workbooks.CloseExcelAppObject.Quit四 数据处理管线数据处理主要包括:更新管线数据(包括:块符号、点号排序号、管道标高和坡度、坐标、点码和线码等)、更新图幅号、管线数据检查(包括:重点、重线、点特特附属物错漏、记录和坐标错漏、线记录往返属性匹配问题、排水管段逆流、排水线路逆流、排水流向问题、管段超长等)、统计(包括:按不同方式统计管线长度、点个数、检查精度等)。五 管线图形和成果输出通过VB编程,可以将数据库中的管线成果按一定的格式要求输出,包括AutoCAD图形(*.DWG)和Excel电子表格成果表(*.XLS)。 输出管线图如何通过VB编程实现与AutoCAD的连接也是管线成果输出的关键环节,在VB编程环境下,可以通过加载引用AutoCAD ActiveX技术来实现图形生成的。 加载AutoCAD应用程序对象Dim AcadApp As AcadApplicationSet 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 = AcadApp.ActiveDocument.Layers.Item(JL)LayerObj.Color = 5 定义给水图层颜色为蓝色,即5号色。Set TextObj = AcadApp.ActiveDocument.ModelSpace.AddText(TextStr, InSertPoint, TextHeight)Set LineObj = AcadApp.ActiveDocument.ModelSpace.AddLine(StartPoint, EndPoint)Set BlocksObj = AcadApp.ActiveDocument.ModelSpace.InsertBlock(InSertPoint, BlockNameStr, 1#,1#, 1#,0#) 保存和关闭图形对象AcadApp.ActiveDocument.SaveAs FileNameAcadApp.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著,孔祥丰等译AutoCA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海视觉艺术学院《学前教育史》2025-2026学年期末试卷
- 房地产销售培训师话术培训考试题目及答案
- Braxlosiran-生命科学试剂-MCE
- 矿用电机车机械装配工操作能力测试考核试卷含答案
- 电线电缆绞制工岗前认知考核试卷含答案
- 病案员班组管理评优考核试卷含答案
- 2026年乡村医生培训课程与考核标准解读
- 机制地毯修整工复试考核试卷含答案
- 木作文物修复师岗前岗中技能考核试卷含答案
- 侍酒师冲突解决水平考核试卷含答案
- 部编版三年级下册教材解读46张课件
- YY/T 1856-2023血液、静脉药液、灌洗液加温器安全通用要求
- 铣刨加罩道路工程施工组织设计方案
- 小学德育分年段
- GB/T 13202-2015摩托车轮辋系列
- windows系统安全机制1课件
- 细菌的革兰氏染色课件
- 人体解剖与组织胚胎学统考题库(含答案)
- 煤矿掘进工作面作业规程概述
- 最新护士注册健康体检表(完整版)
- 催收话述课件
评论
0/150
提交评论