CAD中怎样一次性删除重复图元,块等一些重叠对象?

比如说把N条重叠的直线,或块删除只剩一个,还有什么方法能把两个不小心移动重合在一起的图框及内容分离出来?
哦,多谢 liminzheng的回答!那如何才能实现两个图框及其图形内容的分离呢?

    菜单栏中单击“修改”,“删除重复对象”;

    点击命令后首先框选叠加重复的图形,空格确认;

    弹出“删除重复对象”对话框。在这里设置清理参数即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-02-15
1.
在AutoCAD2016版本里面,命令【overkill】(其它的版本不清楚有没有),可以删除重叠的对象(包括直线,多段线,文字等等)
2.
安装天正插件,里面有【删除重元】功能,把重叠的对象删除。
3.
这个删除重叠对象也有缺点,如果对象复杂会造成图元缺失。
4.
你的情况有两个方法给你参考:
1)autoCAD有【自动保存】功能,每10分钟保存一次,右键,选项,在文件里面查看自动保存路径,找到这个文件夹,把自动保存的文件后缀修改为【dwg】,这样打开文件就可以找回最近的文件,减少损失。
2)如果会编程的话,自己编辑一个程序,由于不清楚你的图纸情况无法测试程序,只是提供一个思路:
5.
(defun C:tes ( / &dis1 &dis2 &k1 &k2 &kw1 &ob1 &ob2 c01 c02 c621 c622 c81 c82 i n1 n2 pt1 pt11 pt12 pt2 pt21 pt22)
(vl-load-com)
(princ "\n请选择要删除重叠的对象")
(if (setq &kw1 (ssget))
(progn
(while (setq &k1 (ssname &kw1 0))
(setq &kw1 (ssdel &k1 &kw1) c01 (cdr (assoc 0 (entget &k1))))
;得到图元名
(setq &ob1 (vlax-ename->vla-object &k1));变VBAX对象
(vla-GetBoundingBox &ob1 'pt1 'pt2);包围盒检查
(setq pt11 (Vlax-SafeArray->List pt1) pt21 (Vlax-SafeArray->List pt2))
;得到左下角及右上角坐标
(setq c81 (vla-get-layer &ob1) c621 (vla-get-color &ob1) i 0)
;得到图层及颜色,如果有其它相同的地方,越详细越好
(setq n1 (sslength &kw1) n2 1)
(if (> n1 1)
(progn
(while (setq &k2 (ssname &kw1 i))
(setq i (1+ i) c02 (cdr (assoc 0 (entget &k2))))
(setq &ob2 (vlax-ename->vla-object &k2))
(vla-GetBoundingBox &ob2 'pt1 'pt2)
(setq pt12 (Vlax-SafeArray->List pt1) pt22 (Vlax-SafeArray->List pt2))
(setq c82 (vla-get-layer &ob2) c622 (vla-get-color &ob2))
(if (and (= c01 c02) (< (setq &dis1 (distance pt11 pt12)) 0.01) (<(setq &dis2 (distance pt21 pt22)) 0.01) (= &dis1 &dis2) (= c81 c82) (= c621 c622)) (setq n2 2) )
)
)
)
(if (= n2 2) (vla-delete &ob1) )
)
)
)
(princ)
);确认坐标相同,图元名相同,图层相同,颜色相同,就确定是重元删除一个。
;没有你的图纸,这个程序没有测试,基本上按这个思路来检查
第2个回答  2010-07-21
可以用overkill,这个命令来清除重复的图元。这个命令在express工具里本回答被提问者采纳
第3个回答  2010-07-20
天正建筑里面有个清除重线的命令,不过用起来会把不希望删除的重复部分也给删除了。

晓东论坛里面有大量cad插件,包括清理重复图线的插件,可以找出来用。

我觉得不严重影响的情况下,最好不要清除重复的东西吧。
第4个回答  2019-11-12
天正有个菜单,删除重迭图元,不过你这种这么复杂的地形图,删起来很慢,我试过。
相似回答