CAD lisp代码图层控制

CAD lisp代码图层控制,第1张

(setq chklay (tblsearch "layer" "圆圈"))

 (if (= chklay nil) (command "layer" "n" "圆圈" "c" "3" "圆圈" "") );;查找图层,如果没有,就创建这个图层,颜色绿色。

(defun c:0( / l1 l2 l3 l4 l5 );;;定义命令函数0(包含变量 l1 l2 l3 l4 l5)

(setq l1 (entsel));;;选取图元并赋值给l1

(setq l2 (car l1));;;获取图元名并赋值给l2

(setq l3 (entget l2));;;自截取的图元名l2中获取图元的dxf组码并赋值给l3

(setq l4 (assoc 8 l3));;;自l3(dxf组码)中找到代表图层的组码并赋值给l4

(setq l5 (cdr l4));;;将l4转换成该图元的层名并赋值l5

(command "layer" "lo" "" "" "layer" "u" l5 "" "layer" "s" l5 "");;;通过layer命令锁定所有图层,然后解锁l5图层(上面选择的图元的图层)并设置该图层为当前层

)

总的来说就是锁定除了选中图元所在层的所有层,并将这个层置为当前层。

应该能理解了吧?

;图层添加后缀

;by DnBc

(defun c:ccc()

(setq cm (getvar "cmdecho"))

(setvar "cmdecho" 0)

(command "_undo" "be")

(if (and

(setq hzm (getstring "\n后缀:"))

(/= hzm "")

)

(vlax-for tcm (vla-get-layers (vla-get-activedocument (vlax-get-acad-object)))

(if (/= (vla-get-name tcm) "0")

(vla-put-name tcm (strcat (vla-get-name tcm) hzm))

)

)

)

(command "_undo" "e")

(setvar "cmdecho" cm)

(princ)

)

提供思路 和 部分代码

1快捷方式可以用(defun c: xxx) 实现

2调用xxx 时 可以d出对话框 选择需要选取的图形 并将结果 放入选集 selection@

3关闭0 图层 打开 1图层 试用insert 命令插入 至于偏移多少自己定

3关闭1 图层 打开 2图层 用insert 命令插入 到图层2中

;;;;;实现打开图层1 例如 (LayerOn 1)

(defun LayerOn (LayerNames$ / LayerList@ Name$)

(setq LayerList@ (CommaList LayerNames$))

(foreach Name$ LayerList@

(if (= Name$ "")

(command "LAYER" "T" "" "U" "" "ON" "" "")

(if (tblsearch "layer" Name$)

(command "LAYER" "T" Name$ "U" Name$ "ON" Name$ "S" Name$ "")

(command "LAYER" "M" Name$ "")

);if

);if

);foreach

);defun LayerOn

;;关闭图纸0 (LayerOff 0)

(defun LayerOff (LayerNames$)

(if (= LayerNames$ "")

(command "LAYER" "F" "" "")

(command "LAYER" "OFF" LayerNames$ "F" LayerNames$ "")

);if

);defun LayerOff

(cdr (assoc 370 (entget (tblobjname "layer" "0")))) ;得到图层“0”的线宽

当图层线宽为”默认“时,得到的值为-3,而当设置了线宽时,得到的就是

图层线宽值(以mm为单位的线宽的100倍)

以上就是关于CAD lisp代码图层控制全部的内容,包括:CAD lisp代码图层控制、AutoCAD软件的Lisp语句含义解释、能不能帮助编个LISP程序,就是在所有图层名后加后缀,谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9667319.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存