删除多段线(面域)外的圆孔
本帖最后由 为什么任兵 于 2012-8-29 05:51 编辑请看图片
几个小要求:数度要快(秒杀),因为有的图形用很多个圆孔,上面的只是示意,所以圆孔大些
只删除框选区域,保留多段线(面域)里面的圆孔,线穿过的圆孔也要保留。
恳请高手帮助,谢谢了!!!!!
本帖最后由 Andyhon 于 2012-8-27 17:59 编辑
且先试
(defun C:test ()
(Prompt "\n选取边界框内外的圆[框]...")
(setq sss (ssget '((0 . "CIRCLE,LWPOLYLINE")))
ss1 (ssget "P" '((0 . "LWPOLYLINE"))); 即红线框 / Lwpolyline
ee (ssname ss1 0) ; 边界框
pts (acet-geom-pline-point-list ee nil); required ET
ss1 (ssget "cp" pts '((0 . "CIRCLE,LWPOLYLINE")))
)
(command "Select" sss "")
(setq sss (ssget "P" '((0 . "CIRCLE"))))
(command "Erase" sss "r" ss1 "")
)
请看附件
效果:
为什么任兵 发表于 2012-8-27 17:22 static/image/common/back.gif
请看附件
原程序已修改,但您的调试用图并不存在您所述的现象
请另传有状况不合所求的样图 Andyhon 发表于 2012-8-27 18:03 static/image/common/back.gif
原程序已修改,但您的调试用图并不存在您所述的现象
请另传有状况不合所求的样图
呵呵,就是的,不好意思啊,我上次的图纸没有加上, 长老多谢了!!! 现在权限可以放开了吗 能删除多段线外的,就能删除多段线内的吧? xyp1964 发表于 2012-8-27 17:51 static/image/common/back.gif
效果:
高手啊,可惜只会vba,不懂lisp
页:
[1]