hokie555 发表于 2022-7-6 12:25:41

当前图层更改

大家好,
这是我的问题:我正在构建一个lisp例程,沿着一条线插入一个块,我希望将块放置在该线位于+1的层上(我所采取的路线只是在插入之前更改当前层,而不是更改块属性。如果你更容易用另一种方法来做,那很好。此外,所有层都是数字层)。例如,如果线位于第2层,我希望块自动放置在第3层。下面是我失败的尝试。有人能帮忙吗?非常感谢。
 
 
(setq linelayer(assoc 8 ent2))
(setq块层(+(atoi linelayer)1)
(setq块层(itoa块层))
(setvar“clayer”砌块层)

CarlB 发表于 2022-7-6 12:51:03

留下了一个“cdr”
 
(setq linelayer(cdr(assoc 8 ent2)))

hokie555 发表于 2022-7-6 13:08:04

谢谢您的回复。但仍然没有运气。带回来:
 
错误:AutoCAD变量设置被拒绝:“clayer”
(8 . "2")
 
仅供参考线路位于第2层

hokie555 发表于 2022-7-6 13:11:26

oops发现了另一个问题。
第2行末尾需要另一个“)”。再次感谢!

CarlB 发表于 2022-7-6 13:32:54

从错误来看,你似乎没有修好正确的线路。如果“ent2”是行“entget”列表,那么下面的操作应该有效。
 
(setq linelayer(cdr(assoc 8 ent2)))
(setq块层(+(atoi linelayer)1)
(setq块层(itoa块层))
(setvar“clayer”砌块层)
 
-----编辑------
哦,好的,很高兴你收到了。
页: [1]
查看完整版本: 当前图层更改