请问如何把(setq TC2 ?) 中的?设为一个图层?
向大师们请教一个问题:请问如何把 (setq TC2 ?)中的?设为一个图层?谢谢本帖最后由 lisp爱好者 于 2013-9-14 11:10 编辑
首先偶不是大师,你所指的图层是啥,是图层名就用下面的语句,仅为示例
(setq TC2 (cdr(assoc 8 (entget (car(entsel)))))) lisp爱好者 发表于 2013-9-14 11:01 static/image/common/back.gif
首先偶不是大师,你所指的图层是啥,是图层名就用下面的语句,仅为示例
(setq TC2 (cdr(assoc 8 (entget ( ...
请问要怎么用呢?比方说是 图号2
“图号2”是一个图层名 (setq tcm1 "xxx");定义图层名
(if
(= (tblobjname "LAYER" tcm1) nil);没有该图层
(command "layer" "n" tcm1 "c" "7" "" "");建立图层
);if 非常感谢各位的回答,只是我,如此,这般的........不懂
本是想试着改一个通用程序的,把黄大侠的;; 末尾数字+1 自贡黄明儒 2013-6-24 http://bbs.mjtd.com/thread-102143-1-1.html
;;---------------------------------另类拷贝AnotherCopy
;; 末尾数字+1 自贡黄明儒 2013-6-24 http://bbs.mjtd.com/thread-102143-1-1.html
;;ayEntSSHighLight见<a href=\"http://bbs.mjtd.com/thread-101674-1-1.html\" target=\"_blank\">http://bbs.mjtd.com/thread-101674-1-1.html</a>
(defun c,(/ SS0)
(load "阵列复制递增 ACOPY SARRAY.VLX");SARRAY,ACOPY
(if (setq ss0 TC1)
(CC:AC ss0)
(dty)))
(defun CC:AC (ss0 / P0)
;;2对象na之后所有实体产生的选择集
(defun newsel (na / ss e1)
(if na
(setq na (entnext na))
(setq na (entnext))
)
(setq ss (ssadd))
(while na
(setq e1 (entget na))
(if (wcmatch (LI_item 0 e1) "VERTEX,SEQEND,ATTRIB")
nil
(setq ss (ssadd na ss))
)
(setq na (entnext na))
)
ss
)
;;3copy
(defun do-copy (ss0 p0 / A BOOL PT SS SS1 SS2)
(setq bool T)
(setq ss ss0
pt p0
)
(while bool
(setq a (entlast))
(princ "\n >>下一点或者输入距离:")
(command "_.copy" ss "" pt pause)
(setq ss1 (newsel a))
(ayEntSSHighLight ss)
(command "._Select" ss1 "")
(if (setq ss2 (ssget "_p" '( TC2 (0 . "*TEXT,ATTDEF,INSERT"))))(SA_change ss2));这句让文字尾数+1
(if (equal pt (setq pt (getvar "lastpoint")) 0.001)
(progn (command "undo" "2") (setq bool nil))
)
(setq ss ss1)
;;(princ (getvar 'errno))
))
;;4主程序
(command "undo" "be")
(if (and ss0
(setq p0 (getpoint "\n >基点:"))
)
(do-copy ss0 p0)
)
(command "undo" "e")
(princ))
(defun c:cc()
(setq TC1 (ssget '((8 . "名称1,图号2,数量3,材质4,表格5,6不打印,99图框"))))
(setq TC2 ?);;?=图号2(图层)
(c,))
(defun c:ca()
(setq TC1 (ssget));;无限制
(setq TC2 ?);;无限制
(c,))
该怎么写呢?
页:
[1]