本帖最后由 brige2009 于 2011-10-21 10:58 编辑
按照楼主的要求:
先选择图形再输入命令则将选择的图形转换到指定的层(如01层),
不选择图形直接输入命令然后回车确定则将指定的层(如01层)转换为当前层。
编写了下面小程序,希望对楼主有所帮助!
此程序要求:01层必须存在,如果01层不存在,可在程序中加入代码
;************************************************************************8
(if (not (tblsearch "layer" "01"))
(command "_.layer" "make" "01" "_color" "210" "01" "_ltype" "CONTINUOUS" "01" "")
;************************************************************************************8
创建01层,创建的同时设置01层的线型和颜色等参数- ;*************************************************************
- ;
- ;程序编制:brige 日期:2011.10.20
- ;
- ;************************************************************
- (defun c:OO ()
- (setvar "pickadd" 1)
- (setq oldlayer (GETVAR "clayer"))
- (setq ss (ssget)) ;先选择对象
- (if ss ;如果选择对象或图形
- (progn
- (command "chprop" ss "" "la" "01" "") ; 将选择的对象或图形切换到01层
- (setvar "clayer" oldlayer) ;;;如果不选择对象,则将01层转换为当前层
- (command "regen")
- )
- (progn
- (prompt(strcat "\n切换到粗实线层")) ;; 状态栏提示“切换到粗实线层01
- (setvar "clayer" "01")
- )
- )
- )
- ;**************************************************
|