将组件与
嗨,朋友们,我正在寻找一种解决方案,从现有块(作为普通cad对象)分割特定零件,因为我在图形中使用了100多次相同的块。
我知道该组件如何在块内进行编辑,如果这是一个动态块。
但现在我需要将该组件作为普通cad实体与块本身分离,并将剩余部分作为与之前相同的块(没有分离的实体)。
如果有人有办法做到这一点,请让我知道。。。 像这样http://www.lee-mac.com/addobjectstoblock.html
你好,rlx,
谢谢你的及时回复。
你提供的lisp是Lee Mac提供的一个很好的lisp。
不幸的是,对于我的调查来说,它不起作用。
我不需要从图纸上删除任何部分。
我需要将块中的一个部分替换到图纸中。
从提供的lisp中,remove命令将永久删除组件。
我需要将组件保留在图纸上,不需要存在于块本身上。
李有很多节目,还有这个:http://www.lee-mac.com/upgradedburst.html
这可能更接近你想要的。我想他的程序可以这样修改,它完全可以做你想要的,但我宁愿让李这样做,因为他是作者(更聪明) 请提供相关区块的副本作为参考。dwg文件。指出必须删除的内容以及必须保留的内容。如适用,还应指定块名。图像文件没有用处。它一定是一个。dwg文件。
对你是对的
由于李是作者,他可以在上面写点什么。
你好,马克。。
目前我离开了办公室。
一旦我明天到达办公室,我当然会把画贴出来。
谢谢你,马克。。 否则,只需创建新块、重命名旧块、插入新块和文本,然后传输数据。
你好,马克,
我从我的图纸上附加了一部分,因为文件的大小非常大。
在我的绘图中,有1000多次将这些块命名为“EM”和“WM”。
我的要求如下。
我需要处理块“WM”,这是一个蓝色属性块。
我必须从蓝色框中分割颜色为“绿色”、“黄色”和“青色”的行,块只保留蓝色框和WM文本。
这意味着我不需要从块中删除该行。我需要吐出的线,其中“绿色,黄色和青色”仍然在图纸上作为一个普林线单一的对象。
如果这样做了,我可以根据我的要求从图形中单独编辑这些线。
我希望你明白我的观点。
致以诚挚的问候……)
试块。图纸 这里有一个简单的例子:
(defun c:foo (/ o s)
(if (tblobjname "block" "wm")
(progn
(if (setq s (ssget "_x" '((0 . "insert") (2 . "wm,`*U*"))))
(foreach b (mapcar 'cadr (ssnamex s))
(cond ((= "WM" (vla-get-effectivename (setq o (vlax-ename->vla-object b))))
(foreach e (vlax-invoke o 'explode) (and (= 256 (vla-get-color e)) (vla-delete e)))
)
)
)
)
(vlax-for b (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object))) "WM")
(if (/= 256 (vla-get-color b))
(vla-delete b)
)
)
(command "_.attsync" "name" "wm")
)
)
(princ)
)
(vl-load-com)
页:
[1]
2