tsotzo 发表于 2022-7-5 14:58:47

基于层a的选择集

你好
 
我正在尝试这样的事情:
 
(setq ed(entget(car(entsel)))
(setq lyr(cdr(assoc 8 ed)))
(setq clr(cdr(assoc 62 ed)))
 
如何根据给定对象的图层和颜色获得选择集?
类似于:
(setq objs(ssget“X”'((cons 8 lyr)(cons 62 clr)))
[我知道这不起作用,我写这篇文章只是为了表达想法。]
 
然后将对象的图层更改为“0”,颜色更改为2。
 
提前谢谢你
tso公司

Grrr 发表于 2022-7-5 15:15:14

你差点就成功了-
对于(setq objs…)查看Lee的教程,了解为什么需要用list函数替换撇号。
对于选择集操作,首先研究如何迭代SS。
最后检查entmod、entget、assoc和subst函数。

tsotzo 发表于 2022-7-5 15:30:22

谢谢你,Grrr!
这正是我需要的!

(defun C:A2 ( / ed ss1 )
(setq ed (entget (car (entsel))))
(setq ss1 (ssget "X" (list (cons 8 (cdr (assoc 8 ed))) (cons 62 (cdr (assoc 62 ed))) ) ) )
(Command "chprop" ss1 "" "LA" "0" "C" 2 "")
)
。。。李·麦克(一如既往)给我们上了很好的一课
 
干杯

Tharwat 发表于 2022-7-5 15:45:13


(list (assoc 8 ed) (assoc 62 ed))

已经足够了。

tsotzo 发表于 2022-7-5 15:57:35

你说得对,塔瓦,谢谢!

Tharwat 发表于 2022-7-5 16:00:30

 
非常欢迎你。
页: [1]
查看完整版本: 基于层a的选择集