我这里有一个转为多段线的LISP。直接输入命令J,框选任何图形,只要是闭合的线都能成为多段线。
别忘了给分哈。
;;; Join a few lines or arcs to one union
(defun C:j (/ ent_nam e1typ num sset1 sset1_num)
(setq SSET1 (ssget))
(setq SSET1_num (sslength SSET1))
(setq num 0)
(while (< num SSET1_num)
(setq ent_nam (ssname SSET1 num))
(setq e1dxf (entget ent_nam)
e1typ (cdr (assoc 0 e1dxf))
)
(if (= "POLYLINE" e1typ)
(command "PEDIT" ent_nam "J" SSET1 "" "X")
)
(if (or (= e1typ "ARC")(= e1typ "LINE"))
(command "PEDIT" ent_nam "Y" "J" SSET1 "" "X"))
(setq num (1+ num))
)
(princ)
) ;end aj.lsp
这个问题根本不需要 用lisp命令。天正里面有个命令是线变复线,直接框选所有的线,只要端头是在同一点,都能变成多段线。很好用的