APP下载

基于VB.NET的AutoCAD二次开发在管线成图中的应用

2013-12-12张彦涛

测绘通报 2013年2期
关键词:开发人员二次开发探查

张彦涛

(河北天元地理信息科技工程有限公司,河北廊坊065201)

一、引 言

AutoCAD是目前世界上在图形应用方面使用广泛的计算机辅助设计软件,但其在特定领域的功能不足或很薄弱。利用VB.NET开发出针对“地下管线”特定的AutoCAD应用软件,实现仅依靠Auto-CAD自身不能或不易做到的功能,解决实际工程中的问题。

利用VB.NET进行AutoCAD的二次开发具有很大的优势,它是一种面向对象的可视化编程工具,具有快速的开发环境,其语法简单、功能强大、界面清晰,可充分利用.NET的各种优势,大大提高开发速度。

二、.NET 框架

.NET框架是NET最为重要的组件,如图1所示。.NET框架平台代表了一种崭新的软件开发模式,它与Win32 API或COM一样,是把系统服务以接口形式提供给开发人员的软件开发平台。与以往不同的是,.NET框架能够更好地完成代码重用、资源配置、多语言集成开发和安全管理等任务,在安全性、易用性及开发效率等方面远远超过了以前的开发模式。

使用.NET开发程序具有许多好处,概括起来有以下几点:

1)统一的面向对开发平台。

2)内存自动管理-垃圾收集。

3)一致的异常处理。

4)支持多种开发语言。

图1 .NET框架

三、基于VB.NET二次开发生成管线图的实例

1.AutoCAD .NET API简介

从AutoCAD 2006开始,AutoCAD增加了.NET API,它提供了一系列托管的外包类(managed wrapper class),使开发人员可在.NET框架下,使用VB.NET对AutoCAD进行二次开发。随着版本的更新,从AutoCAD 2008开始.NET API已经拥有与C++相匹配的强大功能。由于开发接口是完全面向对象的,又具有方便易用的特点,因此NET API是目前较理想的AutoCAD开发工具,也是今后的发展方向。

2.AutoCAD命名空间

AutoCAD的托管程序集为两个文件:acdbmgd.dll和acmgd.dll,它们存在于AutoCAD的安装目录下,如C:Program FilesAutoCAD 2010,其中acdbmgd.dll包含Obj ectDBX托管类,主要包含用于处理AutoCAD数据库和DWG文件的相关操作的命名空间和类,如实体操作等,而acmgd.dll包含 Auto-CAD托管类,用户处理AutoCAD程序级别的对象,如程序对象、文档对象等。命名空间相关功能见表1。

表1 命名空间相关功能

3.开发实例

(1)技术框架

技术框架如图2所示。

图2 技术框架

(2)数据采集

地下管线数据采集主要分为:

1)管线探查。采用管线探测仪或探地雷达对隐蔽点进行探查,采用量测工具对明显点进行调查。查清各种管线的位置、走向、埋深、材质等相关属性。

2)管点测量。利用全站仪、RTK等相关仪器测定各种管线隐蔽点和明显点的坐标和高程。

(3)数据入库

1)手工录入,手工录入如图3所示。

图3 手工录入图

2)PDA数据导入,将PDA与计算机连接,直接将探查数据导入对应的数据库。

(4)管线图形绘制

1)启动 Microsoft Visual Studio.NET 2008,如图4所示。

图4

2)在【文件】菜单中,选择用 VB语言创建工程,【新建】一个类库(class library)项目,指定工程名称和存放位置如图5所示。

图5

3)导入命名空间,主要代码如下:

4)绘制管线段,主要代码如下:

成图效果如图6所示。

图6

四 结束语

本文通过实例证明了基于 VB.NET的Auto-CAD二次开发在管线成图方面的优越性和易用性,并在实际工程施工中得到了很好的应用,极大地提高了工作效率。

略)

猜你喜欢

开发人员二次开发探查
冀西北三马坊热储构造探查的新认知
浅谈基于Revit平台的二次开发
Semtech发布LoRa Basics 以加速物联网应用
浅谈Mastercam后处理器的二次开发
西门子Easy Screen对倒棱机床界面二次开发
橡胶树miRNA 探查
高频超声探查用于诊断附睾病变男性不育的价值探讨
让Windows 10进入开发者模式
后悔了?教你隐藏开发人员选项
未成年人吸毒原因探查:或因家庭或因好奇