新建图层,完成如下功能
本帖最后由 kenken 于 2020-2-29 08:18 编辑新建立图层命令1.选择图内一段文字建立图层,图层名称=选择的一段文字名称,图层默认白色,实线,等,基本默认状态就可以
2.如果图层重复,弹出对话框提示
3.如果图层不重复,所选择文字=新建图层,
4.新建图层=当前图层
本帖最后由 cqu20104225 于 2020-3-7 16:16 编辑
(defun c:nt (/ OldCmdecho layername)
(setq OldCmdecho (getvar "cmdecho"))
(setvar "cmdecho" 0)
(while (not (setq layername (cdr (assoc 1 (entget (car (nentselp "\n 请选择图层名称:"))))))))
(if (= (tblobjname "LAYER" layername) nil)
(progn
(entmake
(list
'(0 . "LAYER")
'(100 . "AcDbSymbolTableRecord")
'(100 . "AcDbLayerTableRecord")
'(70 . 0)
(cons 2 layername)
(cons 62 7)
)
)
(princ (strcat "新建图层:" layername))
)
(alert (strcat "图层[" layername "]已存在"))
)
(command "layer" "s" layername "")
(setvar "cmdecho" Oldcmdecho)
(princ)
) 看到你发了这么多,感觉你在攒一个完整的工具 最近画图手指头有点痛,自己常用的功能。想尽量少用手指头 所需代码论坛中都有,建议自己动手。 谢谢,同时学习了! cqu20104225 发表于 2020-2-28 20:11
(defun c:nt (/ OldCmdecho layername)
(setq OldCmdecho (getvar "cmdecho"))
(setvar "cmdecho" 0) ...
感觉这位道友是暖通专业的
页:
[1]