为什么任兵 发表于 2012-8-27 13:27:32

删除多段线(面域)外的圆孔

本帖最后由 为什么任兵 于 2012-8-29 05:51 编辑

请看图片

几个小要求:数度要快(秒杀),因为有的图形用很多个圆孔,上面的只是示意,所以圆孔大些
                   只删除框选区域,保留多段线(面域)里面的圆孔,线穿过的圆孔也要保留。
                   恳请高手帮助,谢谢了!!!!!

Andyhon 发表于 2012-8-27 13:27:33

本帖最后由 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:13

请看附件

xyp1964 发表于 2012-8-27 17:51:01

效果:


Andyhon 发表于 2012-8-27 18:03:32

为什么任兵 发表于 2012-8-27 17:22 static/image/common/back.gif
请看附件

原程序已修改,但您的调试用图并不存在您所述的现象
请另传有状况不合所求的样图

为什么任兵 发表于 2012-8-27 18:08:37

Andyhon 发表于 2012-8-27 18:03 static/image/common/back.gif
原程序已修改,但您的调试用图并不存在您所述的现象
请另传有状况不合所求的样图

呵呵,就是的,不好意思啊,我上次的图纸没有加上, 长老多谢了!!!

500w008 发表于 2012-8-27 18:35:11

革天明 发表于 2013-1-8 16:45:19

现在权限可以放开了吗

haoryh 发表于 2013-1-9 11:54:47

能删除多段线外的,就能删除多段线内的吧?

bjjob1 发表于 2013-5-29 11:43:48

xyp1964 发表于 2012-8-27 17:51 static/image/common/back.gif
效果:

高手啊,可惜只会vba,不懂lisp
页: [1]
查看完整版本: 删除多段线(面域)外的圆孔