欢迎来到天天文库
浏览记录
ID:34411574
大小:223.18 KB
页数:3页
时间:2019-03-05
《利用objectarx开发小型地下管线信息管理系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2010年8月城市勘测Aug.2010第4期UrbanGeotechnicalInvestigation&SurveyingNo.4文章编号:1672—8262(2010)04—74—03中图分类号:P208文献标识码:B利用ObjectARX开发小型地下管线信息管理系统杨小兵(黄th市城市测绘院,安徽黄山245000)摘要:着重阐述了地下管线信息管理系统的开发技巧与关键技术,为小城镇或开发区内实现地下管线信息系统管理,提供了一个经济实惠的解决方案,也为单独开发软件提供了个案与思路。关键词:AutoCAD;ObjectARX;Vc+;组词典;扩展数据XData;实体;窨井;
2、地理信息系统1概述查询与写入的反向操作则完成了数据库的修改与维护本文将要阐述的一个问题就是如何利用Object.工作。通过查询结果生成管线属性信息表和文档及纵ARX工具包在VC++平台下开发一个基于AutoCAD断面图等,就可以实现管线信息的显示与输出工作。软件的小型地下管线信息管理系统。为什么说只能在小城镇区域内呢,因为此次开发的软件数据库是基于2系统实现原理AutoCAD图形数据库的,它与Oracle、SQLServer、Ac—实现本软件各功能模块的关键技术有:VC++面向对eess数据库不能比,前者只是硬性将窨井属性数据写象编程、对话框设计编程、XData数据存储与读
3、取、图形实入CAD图形实体中,缺乏对数据的有效组织与管理,体组词典操作技术、基本二进制或ASCII码文件写入与读而后者本身就可以对数据进行有效的组织与管理,比取操作,当然还要熟练掌握Vc++语言与ObjeetARX开发如表格合并、排序、索引与筛选等;但Oracle、SQLSexw—工具包。下面将对软件各模块编程进行详细解释。er、Access数据库对软硬件系统要求都比较高,安装、2.1建立符合窖井属性信息的数据结构使用、开发对操作者来讲都不是一件容易的事,专业性首先利用面向对象语言VC++新建一个窨井信息要求特别强,对一般用户来讲不经济实惠。而如果使类,利用这个类来存取窨井
4、属性信息,那么窨井一般具用AutoCAD连接到其他数据库比如Access,当然这样有:名称、序号、井深、井盖高程、平面位置(X、Y)、材可以减小DWG文件的容量,但要学会Access数据库质、流向井(序号、口径)、所在道路、所属部门、建设年编程也不是一件简单容易的事,对一般用户而言要设份等等,这些属性中只有井深、井盖高程和平面位置是置外部数据连接也不是一件简单容易的事。而Auto—数字形式,而其他属性都可以字符形式表示,即这个属CAD已经是大众化软件,可以说只要有一点AutoCAD性信息类只要有字符串型CString与浮点型Double变的使用经验就可以操作和维护这个数据库
5、管理软件,量就可以对窨井属性信息进行操作,下面是示例。Classwellinfo并且成本低,为小城镇提供了一个既可以解决急需问{题、又不必花太多人力财力的方案。public:地下管线信息管理系统,其实就是一个关于地下,鼍黄螽舔CStringmWellName;管线的地理信息管理系统,总的说来就是专业数据库—管理系统,因此,不外乎要实现管线点属性数据的输,,每舟深爱doubleHiWellDepth;入、修改、查询、输出这几个功能。本系统实现的基本—原理是,利用ObjectARX开发基于AutoCAD平台本身};的数据库管理软件。众所周知,AutoCAD每个图形实2.2窨井属
6、性信息读取与修改操作接口体本身带有扩展数据XData,我们只要将管线点的属对视窗Windows操作系统来说,输入和修改窨井性写入XData中就可以实现数据库数据的输人工作,属性数据的接口,当然要利用这种所见即所得编程理而通过读取管线点的XData数据即可实现查询功能。念,就是设计一个对话框来与用户交流。本系统设计收稿日期:20H09一l1—_30作者简介:杨小兵(1977一),男,工稗师,主要从事城市测绘、城市GIS建设Lj管理、数字化航摄及GIS应用软件编程等工作。第4期杨小兵.利用ObjectARX开发小型地下管线信息管理系统75了一个样式(如图1),基本上都涵盖了属性
7、信息的输数据XData中.pEnt一>upgradeOpen();//将实体的只读属性改为可写属性入要求,如果还有其他信息,只需在对话框上增加所需控件即可。将对话框各控件与新建的wellinfo类的相pRb一>rbnext=acutNewRb(AcDb::kDxfXdAsciiString);//开辟一个字符型给结果缓冲器应变量对应,就可以实现控件与类变量的数据交换。pRb=pRb一>rbnext;//下移结果缓冲器指针pRb一>resva1.rstring=(char$)malloc(strlen(wel1.Il
此文档下载收益归作者所有