- 积分
- 2212
- 明经币
- 个
- 注册时间
- 2009-2-7
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
发表于 2021-8-20 18:36:54
|
显示全部楼层
请试一下这个
(defun c:Acv ()
(SETQ BL123 (getvar "OSMODE"))
(command "ucs" "w" )
(COMMAND "OSMODE" 16384 )
(print "提示;先选要复制的图元,再选图层标签" )
(setq ww (ssget))
(SETQ jo (sslength ww))
获取图元所在的图层名的文本
(setq gg (ssget '((0 . "Text,Mtext,LINE,CIRCLE,"))))
(setq no (sslength gg))
(setq k 0)
(while (<= k (- no 1))
(setq tu (ssname gg k))
(setq wo (cdr (assoc 8 (entget tu))))
(setq n 0)
(while (<= n (- jo 1))
(setq wood (ssname ww n))
(command "copy" wood "" '(0 0) '(0 0))
(setq woodk (entlast))
(command "change" woodk "" "p" "LA" wo "")
(setq n (+ 1 n))
)
(setq k (+ 1 k))
)
(command "ucs" "W")
(command "osmode" 53)
(command "erase" ww "")
(setq p1 nil p2 nil tu nil oc nil sel nil)
)
|
|