我觉得是以下的这个程序要重新写,写成先选对象再运行程序。
(defun c:tcrb() (command "change" (ssget ...
(defun C:ttt (/ ss)
(setvar "cmdecho" 0)
(if(= (tblsearch "layer" "软包") nil)(command "-layer" "n" "软包" "s" "软包" "")(command "-layer" "s" "软包" ""))
(setq ss (ssget "i"))
(if (= ss nil)
(c:tcrb)
(c:ff2))
(princ))
(defun c:tcrb()
(command "change" (ssget) "" "p" "la" "软包" "c" "bylayer" "lt" "bylayer" "") (princ))
(defun c:ff2 ()
(setvar "CLAYER" "0") ;设置0层为当前图层
(command"OSMODE" "4159" "ortho" "on" "line" )
(princ)
) 本帖最后由 htlaser 于 2020-6-29 17:32 编辑
(defun C:ttt (/ ss)
(setvar "cmdecho" 0)
(if(= (tblsearch "layer" "软包") nil)(command "-layer" "n" "软包" "s" "软包" "")(command "-layer" "s" "软包" ""))
(setq ss (ssget "i"))
(if (= ss nil)
(c:tcrb)
(c:ff2)) (setvar "CLAYER" "0");设置0层为当前图层
(princ))
(defun c:tcrb()
(command "change" (ssget) "" "p" "la" "软包" "c" "bylayer" "lt" "bylayer" "")(princ))
(defun c:ff2 ()
(setvar "CLAYER" "0") ;设置0层为当前图层
(command"OSMODE" "4159" "ortho" "on" "line" )
(princ)
)
最新修改
本帖最后由 李青松 于 2020-6-29 13:59 编辑
htlaser 发表于 2020-6-29 12:14
经测试,图层还是变了。运行完后当前的图层不是0层。 htlaser 发表于 2020-6-29 12:14
最新修改
画直线的命令失效。 李青松 发表于 2020-7-1 13:59
画直线的命令失效。
请你自己找问题 201020122020都有测试没有问题最按后修改的代码
页:
1
[2]