@Tharwat,谢谢你的添加,我有点“又快又脏”。:-)
别担心,继续做好工作。 嗨,罗伊,如果我使用命令:
(setq mod(ssget“_X”'((8。“131144154204,家具,水”)))
它返回零。至少在AutoCAD2016中对我来说是这样。当然,图层仍然是包含在图形中的图层,它应该可以找到大约20.000个对象
这就是为什么我认为它可能会在一个名为131144154204的层(家具,水)上搜索对象,而不会搜索6层。
你的想法是我最喜欢的,因为它可以在一个选择中完成所有事情。现在我得到了每层一圈的结果,但至少这是正确的结果。 @Ament:
该代码也应该在AC2016中起作用。一定是出了什么问题。也许Aftertouch或Tharwat可以介入澄清。我使用BricsCAD而不是AutoCAD。 当我使用下面的代码时,当。。。
该层上的模型空间中有一些对象。
当层“隐藏”在块中时,下面的代码找不到线。
(setq mod (ssget "_X" '((8 . "131,144,154,204,Furniture,Water"))))
我认为Ament具有块内元素? @Ament,你能上传你正在运行代码的图形吗? 大家好,
元素不在块内。我确信这一点,因为我运行了代码,将所有块设置为可分解的,并在之前将其分解
不幸的是,我不能分享这幅画,因为它们是机密的。
我又试了一次,在命令栏上手动输入。它给了我一个选择集!
但如果我把它放在一个简单的代码中,它会给我零。。奇怪的
(defun c:dellay (/ mod)
(setq mod (ssget "_X" '((8 . "131,133,134,SomeMore"))))
(command "._Erase" mod "")
)
命令函数始终返回nil。 当然,但它不会删除之前的对象。 确认对象位于未锁定的层上,并且位于当前空间中。
页:
1
[2]