我解释了如果用户也只选择一个实体,那么需要两个语句而不是一个。。。此外,我必须在开始和结束时设置变量值。
次要更新:
- (defun c:pj (/ varlist oldvars ss1)
- (setq varlist (list "cmdecho" "peditaccept")
- oldvars (mapcar 'getvar varlist)
- ) ;_ end setq
- (mapcar 'setvar varlist (list 0 1))
- (setq ss1 (ssget '((0 . "LINE"))))
- (if (> (sslength ss1) 1)
- (progn
- (vl-cmdf "_pedit" "_M" ss1 "" "J" "0" "")
- (princ (strcat "\n" (itoa (sslength ss1)) " Lines Converted. "))
- ) ;_ end progn
- (progn
- (vl-cmdf "_pedit" ss1 "")
- (princ (strcat "\n" (itoa (sslength ss1)) " Line Converted. "))
- ) ;_ end progn
- ) ;_ end if
- (mapcar 'setvar varlist oldvars)
- (princ)
- ) ;_ end defun
忘记了本地化一些变量,并添加了一个过滤器列表。 |