idfhm 发表于 2008-12-13 15:55:00

超级简化pedit命令

<p></p><p>看到这么多的朋友分享好东东我也下了一点来而不往非礼也!</p><p><br/>工作中要把几条直线或圆弧合并成多段线,用pedit时 要先选取一条直线,先转化为多段线 ,后再按“j” 继续添加 ,比较麻烦,编个程序简化该过程可以直接选择要转多段线的直线或圆弧就可以,省去麻烦 ,当选择集中有多段线时和没有多段线时是一样的,不信的话可以试一下!如果好不要忘记说一声让大家知道</p>

yshf 发表于 2011-3-22 22:35:45

这个如何:
(defun c:ppp( / pet ss)
   (setq pet (getvar "PEDITACCEPT"))
   (setvar "PEDITACCEPT" 1)
   (while (setq ss (ssget '((0 . "ARC,*LINE"))))
       (command "_pedit" (ssname ss 0) "j" ss "" "")
   )
   (setvar "PEDITACCEPT" pet)
   (princ)
)

idfhm 发表于 2008-12-13 17:53:00

<div style="WIDTH: 728px; HEIGHT: 90px;"><iframe name="google_ads_frame" marginwidth="0" marginheight="0" src="http://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-7471407183047897&amp;dt=1229161900796&amp;lmt=1229161900&amp;prev_fmts=728x90_as%2C120x90_0ads_al_s&amp;output=html&amp;slotname=8773890557&amp;correlator=1229161900468&amp;url=http%3A%2F%2Fwww.mjtd.com%2FBBS%2Fdispbbs.asp%3FboardID%3D16%26ID%3D72580%26page%3D1&amp;ea=0&amp;ref=http%3A%2F%2Fwww.mjtd.com%2FBBS%2Findex.asp%3Fboardid%3D16&amp;frm=0&amp;ga_vid=811302283.1229161279&amp;ga_sid=1229161279&amp;ga_hid=1764929456&amp;ga_fc=true&amp;flash=10.0.12.36&amp;u_h=1050&amp;u_w=1680&amp;u_ah=1016&amp;u_aw=1680&amp;u_cd=32&amp;u_tz=480&amp;u_his=12&amp;u_java=true&amp;dtd=16" frameborder="0" width="728" scrolling="no" height="90" allowtransparency="allowtransparency"></iframe></div><p></p><p>看到这么多的朋友分享好东东我也下了一点来而不往非礼也!</p><p><br/>工作中要把几条直线或圆弧合并成多段线,用pedit时 要先选取一条直线,先转化为多段线 ,后再按“j” 继续添加 ,比较麻烦,编个程序简化该过程可以直接选择要转多段线的直线或圆弧就可以,省去麻烦 ,当选择集中有多段线时和没有多段线时是一样的,不信的话可以试一下!如果好不要忘记说一声让大家知道</p>

184235521 发表于 2019-12-9 10:07:21

CAD自带的命令    一个''J'就可以吧选中的所有线段合并了,为什么搞那么麻烦。

linheyuanpcb 发表于 2008-12-13 22:27:00

能做成,只要点一条线,其它和它有连接的都能变成PILE就好了

idfhm 发表于 2008-12-19 01:08:00

你还可以框选

yucpp 发表于 2008-12-25 09:24:00

还不错。谢谢啊!

mxran 发表于 2008-12-29 17:20:00

<p>兄弟你这个也太麻烦了啊!</p><p>(defun c:pp ()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (command "pedit"&nbsp; "m"&nbsp; "all" "" "y"&nbsp; "j"&nbsp; "" )&nbsp;&nbsp; (prinl) )</p><p>直接用这LISP命令,输入个PP连续按几次空格键就把所有的线段连接成了多义线了!</p>

jj2098 发表于 2009-1-1 19:37:00

看看这个可符合上面几个朋友的要求? 程序名称:TYPolyLineJoin (TYPolyLineJoin.zip) 命令:TYPLJ 使用说明:选择欲连接成多义线的一组对象中的一条直线或圆弧,回车,搞定。 操作演示




http://www.jxcad.com.cn/attachment000/Mon_0812/116_1121841_7fa993cf420b15c.gif

AMTONNY 发表于 2009-1-11 19:51:00

<p>(DEFUN C:aJ (/ LIST1 XLIST XA1 XB1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;可用于封闭模图<br/>&nbsp; (SETQ XA1 0)<br/>&nbsp; (SETQ LIST1 (SSGET))<br/>&nbsp; ;(SETQ LIST2 LIST1)<br/>&nbsp; (SETQ XB1 1)<br/>&nbsp; (WHILE (&lt; XA1 XB1)<br/>&nbsp;&nbsp;&nbsp; (SETQ XLIST (SSNAME LIST1 XA1))<br/>&nbsp;&nbsp;&nbsp; (COMMAND "PEDIT" XLIST "Y" "J" "ALL" "" "")<br/>&nbsp;&nbsp;&nbsp; (SETQ XA1 (1+ XA1))<br/>&nbsp; (setvar "osmode" 183)<br/>&nbsp; (setvar "ORTHOMODE" 1)<br/>&nbsp; )</p><p>用这个也行快哦</p>

coolpoom 发表于 2009-1-13 09:20:00

(defun c:AJ()
(while(not(setq ss(entsel "\n请选择要闭合的物体:")))
(princ"没有选择到,请再来一次。")
)
(command "pedit" ss "y" "j" "all" "" ""))这个呢?

yxh1202 发表于 2010-11-17 16:22:00

石料一下很好,谢谢提供。
页: [1] 2 3 4 5
查看完整版本: 超级简化pedit命令