【摘 要】本文从扩展数据在实体中的存贮方式、扩展实体数据的插入和查询以及应用扩展实体数据实现管配件的插入、图形的删除及修改等方面,介绍了应用扩展实体数据库进行给排水工程CAD绘制的方法和技巧,并给出几个通过实际工程验证的实用小程序,提出工程设计人员在工程图绘制过程中,自行编写小程序可以扩充商业软件的功能,提高绘图效率的结论。
【关键词】实体数据;排水工程;CAD;应用
一、概述
在计算机迅速普及的今天,CAD已不再是新鲜名词。尤其是在工程设计领域,手工画图已逐渐被CAD软件所代替。在我国应用最广泛、最普及的CAD工具是AutoCAD软件包,该软件包以其界面友好、使用方便、功能强大的特点,被广大工程设计人员所接受。在给水排水工程领域,由于各设计单位的设计标准和设计方法的不同,造成各软件公司所开发的CAD软件不能被设计单位所广泛接受。尤其是软件公司的软件开发人员,在我国大多是计算机应用比较熟练的非专业人员或实际工作经验很少的专业技术人员,由于他们专业知识和工作经历的限制,造成所开发的专业软件存在这样或那样的不足,从而限制了专业软件的实用性。因此,尽管市场上的商业专用软件很多,但能够切实满足工程设计需要的软件并不多,甚至许多单位购置的软件根本就不能发挥其应有的作用。通过多年的CAD软件开发经验,作者认为,工程设计人员掌握一定的CAD技术处理技巧,可以在直接应用AutoCAD软件或其它商业软件进行工程设计的同时,自行编写一些实用的小程序,不但可以提高工程设计效率,而且还可以通过日积月累,使所编写的小程序在本单位内应用。
在给水排水工程领域,最常处理的图形就是管线。管线是连接水源到水厂、水厂到用户、各构筑物间的有向图,一根管线的变动,必然引起其它设施的改变。同样,各构筑物采用平、立、剖三视图进行工程图的表达,一个视图的改变,也引起其它视图相应的改变。以前我们都是通过单个图形分别修改的方法来实现,不但效率低,而且容易产生错误。本人通过在WDOC软件开发中的应用,认为扩展实体数据库的应用,可以有效地解决这些问题,并且能够提高绘图效率。
3、扩展实体数据的查询
在对图形实体插入扩展实体数据后,还要对所插入数据信息进行查询、修改和应用。此处只给出扩展实体数据查询和数据提取的AutoLISP程序。查找扩展数据登记名的程序:(defunexname(ed/cxl)(setqcxl(cdr(assoc-3(entgeted`(″*″)))))(ifcxl(car(nth0cxl))))本程序应用,就可以对任何一个所选择的实体,找出它的扩展实体数据登记名。我们知道,AutoLISP是嵌入AutoCAD中的功能扩展程序,如同使用AutoCAD函数一样,易学易用。应用AutoCAD进行工程设计的技术人员,应该学会用AutoLISP编写简单的程序,以方便工程图形的绘制。从上述的程序中也可以看出AutoLISP编写的完成某一功能的程序,小到一至二句,多到十几句,即可实现所要完成的工作。
二、扩展实体数据在给排水CAD中的应用
1、管配件插入:例如一条已经画好的管线,管径为DN100,使插入的管配件也具有DN100的特性。假设管配件是阀门,为已经做好的图块。
期刊文章分类查询,尽在期刊图书馆我们可以在插入的过程中不需要关心管径是多少,直接插入阀门信息,从而提高绘图效率。应用扩展实体数据库的程序为:,对插入的阀门加入扩展实体数据,即管径。这一小程序在加载以后,如同AutoCAD函数一样,只要在命令状态下运行inval,系统提示选择实体时,在插入阀门的位置上点取管线,就会自动把管线先断开,再插入阀门,并且所插入的阀门具有DN100的特牲。
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、展实体数据修改
给水管网图是由管线、节点、水泵、水塔、阀门等组成,所有设施之间并不是相互独立,而是有机的联系在一起。某一设施的修改,必然带动其它与之有关联的设施和变动。例如,对于给水管网水力计算成果图,当节点号修改时,要影响与之相连的所有管线的起止节点号的变动、管线上水流方向扩展实体数据的变动以及节点标注信息的变动。一般情况下,一个节点号的变化,要引起几个甚至几十个图形实体的变化。采用扩展实体数据绘图,这一变化可以通过程序方便地实现。此处只给出修改一个扩展实体数据的小程序,读者可以扩充这一小程序,以通过遍历整个图形数据库的方式,分别查找要修改的实体,并加以修改。(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绘图函数绘图的不足,从而使所绘的工程图有速度更快、更准确的特点。
三、结论
以上仅是作者在给水管网优化设计计算与非稳定状态水力模拟软件-WDOC开发过程中采用的几个小技巧,在应用中发现有极大的实用价值,不仅提高了绘图的速度,而且还可使互不相关的实体之间建立相互联系。在绘图过程中,可以实现对一个实体的绘制及修改,自动实现与之相关的其它实体的绘制及修改。工程设计人员如果是有心人,可以在完成实际工程的过程中,对一些图形复杂、关联性强的实体,自行通过编写几句或十几句AutoLISP程序来加以实现,日积月累,把编写的小程序集成起来,不但可以解决商业软件与工程实用化相脱节的矛盾,而且还可以提高制图效率。
论文作者:李国胜
论文发表刊物:《低碳地产》2016年第10期
论文发表时间:2016/8/31
标签:实体论文; 程序论文; 数据论文; 管线论文; 阀门论文; 工程论文; 这一论文; 《低碳地产》2016年第10期论文;