菜单栏中单击“修改”,“删除重复对象”;
点击命令后首先框选叠加重复的图形,空格确认;
弹出“删除重复对象”对话框。在这里设置清理参数即可。
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)
);确认坐标相同,图元名相同,图层相同,颜色相同,就确定是重元删除一个。
;没有你的图纸,这个程序没有测试,基本上按这个思路来检查
可以用overkill,这个命令来清除重复的图元。这个命令在express工具里
天正建筑里面有个清除重线的命令,不过用起来会把不希望删除的重复部分也给删除了。
晓东论坛里面有大量cad插件,包括清理重复图线的插件,可以找出来用。
我觉得不严重影响的情况下,最好不要清除重复的东西吧。
天正有个菜单,删除重迭图元,不过你这种这么复杂的地形图,删起来很慢,我试过。