- UID
- 152543
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2004-6-25
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
;执行第二个按钮"清除未使用层"无效
;请帮忙看看!
;以下是LSP程式
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;以下为快速创建图层LISP;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:cjtc ()
(setq dcl_file "cjtc" ; 指定DCL档案的名称
dcl_name "cjtc"
) ; 指定对话框的名称
(setq dcl_flag (load_dialog dcl_file)) ; 载入DCL档案
(if (< dcl_flag 0)
(exit)
) ; 判断DCL档案是否已载入?
(if (not (new_dialog dcl_name dcl_flag))
(exit)
) ; 显现对话框画面
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(action_tile
"addlay_j"
"(setq dnum (get_tile \"dnum_c\"))
(setq numy (get_tile \"num_c\"))(DONE_DIALOG 1)"
)
(action_tile "pglay" "(DONE_DIALOG 10)");;新加部分
(IF (= (start_dialog) 1) ; 令对话框开始接受使用者输入资料
(cjtc-1 dnum numy)
)
(IF (= (start_dialog) 10) ; 新加部分
(pglqy_1)
)
(unload_dialog dcl_flag)
(princ)
) ; 释放DCL档案
(defun pglqy_1 ()
(unload_dialog dcl_flag)
(princ)
(command "purge" "la" "*" "n")) ;新加部分
; 函式DCL_CONC至此结束
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun cjtc-1 (dnum numy)
(setq index1 0)
(setvar "cmdecho" 0)
(setq num (atoi numy))
(setq index 1.0) ;付值index=1
(repeat 9
(if (> num (- index 1)) ;此函数可判别每一个 expr 并重复执行 number 所叙述的次数, 然后返回最后一个表达式的值。 ;其中 int 将代表任何的正整型数。
;如果拆图量大于0则继续执行
(progn (setq lay (strcat dnum "-00" (rtos index 2 0)))
;strcat连接后面的字符串,(rtos index 2 0)返回10进制,连接为图名
(setq index (1+ index)) ;图名每次加1
(autop)
)
)
) ;以上为将输入的值转化为图号
(if (> num 9)
(repeat 90
(if (> num (- index 1))
(progn (setq lay (strcat dnum "-0" (rtos index 2 0)))
(setq index (1+ index))
(autop)
)
)
)
)
(if (> num 99)
(repeat 900
(if (> num (- index 1))
(progn (setq lay (strcat dnum "-" (rtos index 2 0)))
(setq index (1+ index))
(autop)
)
)
)
)
(redraw)
(princ)
)
;-----------------------------------------
(defun autop (/ pt sera ch ly ents)
(setq index1 (+ 1 index1))
(setq layecol '(191 50 90 130 170 210 30 82 150 10 161))
(setq layec (nth index1 layecol))
(if (= layec nil)
(progn
(setq index1 1)
(setq layec 7)
)
)
(command "-layer" "Make" lay "Color" layec "" "")
)
;---------------------------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
cjtc: dialog {
label = "图层创建快捷框
:boxed_column{
label="批量创建图层";
:row{
:edit32_box{label="专案代号";key="dnum_c";edit_width=15;} //dnum专案代号
}
:row{
:edit32_box{label="输入创建层数量";key="num_c";edit_width=15;} //num创建层数量
}
:row{
: button {label = "开始批量创建图层";key = "addlay_j";width = 10;} //ALLPART创建图层指令
}
}
: button {label = "◎清除未使用层◎";key = "pglay";width = 10;}
: button { label = "&Cancel"; key = "cancel"; is_default = true; fixed_width = true; alignment = right;}
} |
|