明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2372|回复: 5

[资源] 求完美,我修改的lxx大师的靠近边界线修剪程序,不选边界线的框选修剪

[复制链接]
发表于 2011-5-16 11:20 | 显示全部楼层 |阅读模式
本帖最后由 crazylsp 于 2011-5-16 11:31 编辑

兰色的句子这里,  我想能否不指定要修剪的一侧的点,用什么办法程序能判断出要修剪的这一侧,而又不会出现部分线修剪时出错的情况,剪到另一边的问题,这样这个程序就完美了

;;不用选择边界线,框选选择要被剪去线的程序, 源码来自 lxx.2007.2

(defun c:xt (/ ss ssl i enlst box ll rr p)
      
(prompt "\n 选择要剪去的线")
      
(setq ss  (ssget) ssl (sslength ss) i  0  enlst '() )
         
(repeat ssl
    (setq en    (ssname ss i)   i (1+ i)   enlst  (cons en enlst) )
)

;;选择未来作成边界的线
(setq box (mapcar 'getvar '("vsmin" "vsmax")))
    (vla-GetBoundingBox (vlax-ename->vla-object en) 'll 'rr)
    (setq box  (list (vlax-safearray->list ll) (vlax-safearray->list rr) ))
    (setq ss (ssget "c" (car box) (cadr box) '((0 . "*LINE,ARC,RAY,CIRCLE,ELLIPSE"))))

;;明确要修剪的一侧, 如果不指定, 下句用(command ".trim" ss "r" en "" "e" "n" (list en (car box)) "")将有少量线出错
    (setq p (getpoint"\n 选择要剪的一侧"))

;;修剪
(foreach en enlst
      (command ".trim" ss "r" en "" "e" "n" (list en p) "")
    )
;;
   (princ)
)


"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2011-7-22 12:28 | 显示全部楼层
下载先,以后可能有用
发表于 2012-5-22 17:26 | 显示全部楼层
下载先,以后可能有用
发表于 2013-5-24 07:59 | 显示全部楼层
大师在晓东发的源码为何在08下无法使用啊
 楼主| 发表于 2013-5-24 17:33 | 显示全部楼层
我已经在晓东修改了
发表于 2021-3-8 22:51 | 显示全部楼层

下载先,以后可能有用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-6 05:50 , Processed in 0.265823 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表