我们在AUTOCAD中编辑大量图形时,发现仅用AUOTCAD本身提供的命令,效率实在太低,故编写系列批量处理程序以提高工作效率、工作质量。 (DEFUNC:CH_W(/wident_ssn_ssent_njent_a) (PRINC"n请选择目标(WCWPCPF)") (SETQENT_SS(SSGET)WID(GETREAL"n请输入线宽<0.3>:")) (if(=widnil)(setqwid0.3)) (IF(/=ENT_ssnil) (PROGN (SETQN_SS(SSLENGTHENT_SS)J0) (REPEATN_SS (SETQENT_N(SSNAMEENT_SSJ)ent_a(cdr(assoc0(entgetent_n))) J(1 J)) (if(or(=ent_a"POLYLINE")(=ent_a"LWPOLYLINE")) (COMMAND"PEDIT"ENT_N"w"wid""COMMAND)) );ENDREP );ENDPROGN );ENDIF );enddefun 2.批量打印出图(Mplot) (defunc:Mplot() (setqp_1(getpoint"ntFirstCORNER:") P_2(getPOINT"ntOtherCORNER:") n(getint"nt总张数:<1>")) (if(=nnil)(setqn1)) (setqm_d500) (REPEATn (command"plot""w"P_1P_2"n"COMMAND)
1.批量修改POLYLINE的线宽(CH_w):
我们知道编辑一条POLYLINE的线宽可以通过Pedit命令来完成,如 果需要编辑多条POLYLINE时还使用Pedit命令则不但需要选择目标,还要输入线宽,实在有点不方便,而且还可能漏选。其实编写个小小的LISP程 序便可一次性完成。程序CH_W.LSP如下:
在AUTOCAD中用PLOT命令每次只能打印一张图纸,如果在一个图形文件内有多张大小一样的图纸成纵向排列,间距M_d=500mm。通过Mplot只需调试一张,便可打印所有图纸。程序如下:
【AUTOCAD系列之批量处理程序】相关文章:
★ 如何利用EXCEL在AUTOCAD里绘制任意曲线、折线?