下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
扩展实体数据在给排水工程CAD中的应用5500字【摘要】本文从扩展数据在实体中的存贮方式、扩展实体数据的插入和查询以及应用扩展实体数据实现管配件的插入、图形的删除及修改等方面,介绍了应用扩展实体数据库进行给排水项目CAD绘制的办法和技巧,并给出几个通过实际项目验证的实用小程序,提出项目设计人员在项目图绘制过程中,自行编写小程序可以扩充商业软件的功能,提高绘图效率的结论。
1概述
在计算机迅速遍及的今天,CAD已不再是新鲜名词。尤其是在项目设计领域,手工画图已逐渐被CAD软件所代替。在我国应用最广泛、最遍及的CAD工具是AutoCAD软件包,该软件包以其界面友好、使用方便、功能强大的特点,被广阔项目设计人员所接受。在给水排水项目领域,由于各设计单位的设计规范和设计办法的不同,造成各软件公司所开发的CAD软件不能被设计单位所广泛接受。尤其是软件公司的软件开发人员,在我国大多是计算机应用比拟熟练的非专业人员或实际工作经验很少的专业技术人员,由于他们专业知识和工作经历的限制,造成所开发的专业软件存在这样或那样的缺乏,从而限制了专业软件的实用性。因此,尽管市场上的商业专用软件很多,但能够切实满足项目设计需要的软件并不多,甚至许多单位购买的软件基本就不能发挥其应有的作用。通过多年的CAD软件开发经验,作者认为,项目设计人员掌握一定的CAD技术处理技巧,可以在直接应用AutoCAD软件或其它商业软件进行项目设计的同时,自行编写一些实用的小程序,不但可以提高项目设计效率,而且还可以通过日积月累,使所编写的小程序在本单位内应用。
在给水排水项目领域,最常处理的图形就是管线。管线是连接水源到水厂、水厂到用户、各构筑物间的有向图,一根管线的变动,必然引起其它设施的改变。同样,各构筑物采用平、立、剖三视图进行项目图的叙述,一个视图的改变,也引起其它视图相应的改变。以前我们都是通过单个图形分别修改的办法来实现,不但效率低,而且容易产生错误。本人通过在WDOC软件开发中的应用,认为扩展实体数据库的应用,可以有效地解决这些问题,并且能够提高绘图效率。
2扩展实体数据的插入与查询
2.1扩展数据在实体中的存贮方式
若一条管线,起点号是8,坐标是(5.05.00.0),终点号是18,坐标是(10.010.00.0),管段号是1,这条管线的图形数据库为:
((-1)(0″LINE″)(5.″519″)(100.″AcDbEntity″)(67.0)(8.″0″)(100.″AcDbLine″)(105.05.00.0)(1110.010.00.0)(2100.00.01.0)(-3(″PIPE1″(1002.″{″)(1000.″8,18″)(1002.″}″)))
其中扩展数据为:(-3(″PIPEI″(1002.″{″)(1000.″8,18″)(1002.″}″))),″PIPEI″表示以PIPE为前导的管线,管线号为1;″8,18″表示管线的起点号为8,终点号为18。
扩展实体数据内容在实体数据库中是以-3码为前导的一个表项。在一个实体中可以参加扩展实体数据的大小为16383字节。用于描述非图形数据的扩展实体数据库有关组码为:
2.2扩展实体数据的插入
使用扩展实体数据,必须用AutoLISP程序实施对实体数据库的访问和修改。首先要自行定义扩展实体数据库信息表,然后再参加到指定的实体中。此处只是给出扩展实体数据库插入的AutoLISP程序主要内容,有兴趣的读者可以自行参加所需要的信息表,以把这一程序的功能进行扩展。
对最后画的一个实体参加扩展的实体数据表的AutoLISP程序为:
(defunexadd(nametyp/sselnel);name:扩展实体数据登记名,typ:扩展实体数据内容。
(setqss(cons-3(list(consname(cons(cons1002″{″)(cons(cons1000typ)(list(cons1002″}″)))))));定义扩展实体数据库el(entget(entlast));提取最近画的一个实体的图形数据库
nel(consssel);把扩展实体数据信息参加到实体数据库中)(regappname)(entmodnel))
如果对上述函数修改一下,可适用于对任意所选择实体参加扩展实体数据信息:
(defunexaddl(nametyped/sselnel);ed:所选择实体,把上述程序的el(entget(entlast))改为el(entgeted)即可。)
利用上述二个小程序,就可以实现对所画的最后一个实体或任一所选择的图形实体参加扩展实体数据,其特点是比用属性建立非图形信息的速度更快、更灵活、更小的数据体积,而且可以进行图形索引。
2.3扩展实体数据的查询
在对图形实体插入扩展实体数据后,还要对所插入数据信息进行查询、修改和应用。此处只给出扩展实体数据查询和数据提取的AutoLISP程序。
查找扩展数据登记名的程序:(defunexname(ed/cxl)(setqcxl(cdr(assoc-3(entgeted`(″*″)))))(ifcxl(car(nth0cxl))))
本程序应用,就可以对任何一个所选择的实体,找出它的扩展实体数据登记名。如管段号、节点号等。
对任意选择实体,提取扩展实体数据的程序:
(defunexsub(edname/sstypnamecxlcncalctcbl)(setqtyp(cons1"不是所选择实体");如果选择实体与所指定的扩展数据名不一致,那么提示错误。
name(strcasename)cxl(cdr(assoc-3(entgeted`(″*″)))))(ifcxl(progn(setqcn0)(while(setqcal(nthcncxl))
(if(=name(carcal))
(progn(setqct0cal(cdrcal))
(while(setqcbl(nthctcal))
(if(=(carcbl)1000)(setqtypcblct10000cn10000))
(setqct(+ct1)))))(setqcn(+cn1)))))(cdrtyp))
上述两个程序的应用,就可以实现对所绘实体的扩展数据信息进行提取。
我们知道,AutoLISP是嵌入AutoCAD中的功能扩展程序,如同使用AutoCAD函数一样,易学易用。应用AutoCAD进行项目设计的技术人员,应该学会用AutoLISP编写简单的程序,以方便项目图形的绘制。从上述的程序中也可以看出AutoLISP编写的完成某一功能的程序,小到一至二句,多到十几句,即可实现所要完成的工作。
3扩展实体数据在给排水CAD中的应用
3.1管配件插入:
示例一条已经画好的管线,管径为DN100,使插入的管配件也具有DN100的特性。若管配件是阀门,为已经做好的图块。我们可以在插入的过程中不需要关怀管径是多少,直接插入阀门信息,从而提高绘图效率。应用扩展实体数据库的程序为:
(defunc:inval(/sspededanametypp1p2ang)
setqss(entsel)p(car(cdrss))ed(carss)eda(entgeted)
name(exnameed);提取扩展实体数据的名称
typ(exsubedname);提取扩展实体数据信息,即管径信息
p1(cdr(assoc10eda);管线的起点坐标
p2(cdr(assoc11eda);管线的终点坐标
ang(anglep1p2);管线角度
)
(command″break″p″F″(polarpangBL)(polarp(+piang)BL);断开线的距离
″insert″″阀门″p(*2BL)″″ang);插入阀门(exaddnametyp);对插入的阀门参加扩展实体数据,即管径。
)
这一小程序在加载以后,如同AutoCAD函数一样,只要在命令状态下运行inval,系统提示选择实体时,在插入阀门的位置上点取管线,就会自动把管线先断开,再插入阀门,并且所插入的阀门具有DN100的特牲。
3.2管线删除
对于上面所插入阀门的管线,由于阀门的插入而变为二条线,三个实体(二条线加一个阀门),如果由于各种原因需要删除,按照AutoCAD命令,那么需要分别对这三个实体加以删除。对于项目图,由于图形复杂,经常会产生误操作或漏操作的问题,给项目设计人员带来许多困难。而扩展实体数据库的应用,可以为项目图的绘制带来许多方便。
(defunc:deled()
(setqss(entsel)ed(carss)s(ssget"x")n0name(exnameed)typ(exsubedname))
(while(setqes(ssnamens))(setqname1(exnamees))
(if(=namename1)(progn(setqtyp1
(exsubesname))(if(=typ1typ)(entdeles))))
(setqn(+n1))))
这一小程序在加载后,运行deled,按照提示选择要删除的实体,即可删除与这一实体具有相同扩展数据的所有实体,快速而准确。
3.3扩展实体数据修改
给水管网图是由管线、节点、水泵、水塔、阀门等组成,所有设施之间并不是相互独立,而是有机的联系在一起。某一设施的修改,必然带动其它与之有关联的设施和变动。示例,对于给水管网水力计算成果图,当节点号修改时,要影响与之相连的所有管线的起止节点号的变动、管线上水流方向扩展实体数据的变动以及节点标注信息的变动。一般情况下,一个节点号的变化,要引起几个甚至几十个图形实体的变化。采用扩展实体数据绘图,这一变化可以通过程序方便地实现。此处只给出修改一个扩展实体数据的小程序,读者可以扩充这一小程序,以通过遍历整个图形数据库的方式,分别查找要修改的实体,并加以修改。
(defunchent(edstyp/sbcxlss);
(setqsb(entgeteds′(″*″))cxl(cdr(assoc-3sb))
ss(cons(cons1002″{″)(cons(cons1000typ)(list(cons1002"}"))))
ss(list(cons(exnameeds)ss)))(netmod(subst(cons-3ss))
(cons-0cxl)sb))(entupdeds))
从上述介绍可以看出,应用扩展实体数据,可以弥补仅以AutoCAD绘图函数绘图的缺乏,从而使所绘的项目图有速度更快、更准确的特点。
4结论
以上仅是作者在给水管网优化设计计算与非稳定状态水力模拟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学口风琴社团活动教学工作计划
- 到图书馆去:开创质检工业的新纪元教学设计初中化学鲁教版五四学制2013九年级全一册-鲁教版五四学制2012
- 耳鸣康复训练方案探讨
- 病理科疾病诊断标本处理流程
- 临床输血规范与安全输血
- 促进睡眠的护理措施
- 慢性病康复训练方案
- 慢性肾病饮食管理建议
- 急性胰腺炎患者的营养支持与处理
- 2024-2025年高中化学 专题3 第2单元 铁、铜的获取及应用教学设计 苏教版必修1
- NBT 47013.4-2015 承压设备无损检测 第4部分:磁粉检测
- JJG 455-2000工作测力仪行业标准
- 2024年江苏泰州市金融控股集团有限公司招聘笔试参考题库含答案解析
- 大学新教师入职培训
- 工程管理中国铁塔LTE5G通信基站项目风险管理研究
- 法院申请冻结房产申请书
- 第5课+家族の写真+课件 【知识精讲精研】 初中日语七年级人教版第一册
- JJF 1951-2021 基于结构光扫描的光学三维测量系统校准规范 高清晰版
- 小学生心理健康教育方式的研究结题报告
- 山西省煤矿建设施工管理标准
- 220kV输电线路220kV间隔扩建工程施工组织设计(定稿)
评论
0/150
提交评论