明经CAD社区

 找回密码
 注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2022|回复: 10

[函数] 修剪封口

[复制链接]
发表于 2013-11-4 21:49 | 显示全部楼层 |阅读模式
本帖最后由 luyu9635 于 2013-11-4 21:58 编辑

大家来看看这个怎么实现 ,本人写了个简单的,请高手完善,谢谢了,请看动画
;;luyu9635 2013.01.03
;;以线修剪并封口
(defun c:ff(/ en ent ent1 p1 p2 po  i ss)
(cond
   (
    (setq ss(ssget'((0 . "*LINE"))))
    (setvar 'cmdecho 0)(command ".undo" "be")
    (setq p1(getpoint"\n指定第一点:") p2(getpoint p1 "\n指定第二点:"))(grdraw  p1 p2 1)
    (setq po(getpoint"\n剪掉哪边:"))
    (entmake (list '(0 . "line") '(62 . 1) (cons 10 p1) (cons 11 p2)))
    (setq en(entlast) vla(vlax-ename->vla-object en) new(ssadd) i 0)
    (repeat (sslength ss)
         (setq ent(ssname ss i) ent1(vlax-ename->vla-object ent))
           (if (and (setq pts(intpt ent1 vla 0))(> (length pts) 1))
               (progn
                 (entmake (list '(0 . "line") '(62 . 1) (cons 10 (car pts)) (cons 11 (cadr pts))))
                 (ssadd (entlast) ss)
               )
           )
       (command ".trim" en "" (list ent po) "")
     (setq i(1+ i))
    )
    (entdel en)(redraw)
    (setvar "PEDITACCEPT" 1)
(if (= (sslength ss) 1)
         (vl-cmdf "PEDIT" (ssname ss 0) "j" "all" "" "")
         (command "PEDIT" "m" ss "" "j" "" "")
)
(setvar "PEDITACCEPT" 0)
(command ".undo" "e")(setvar 'cmdecho 1)   

)
   )
(princ)
)

;;两obj物件交点
(defun intpt (obj1 obj2 mod / lst lst2 x y z)
  (setq lst (vlax-invoke obj1 'intersectwith obj2 mod))
  (while (setq x (car lst))
    (setq y    (cadr lst)
   z    (caddr lst)
   lst  (cdddr lst)
   lst2 (cons (list x y z) lst2)
    )
  )
)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2013-11-4 22:02 | 显示全部楼层
演示图片压缩包【名字】长一点哈,没法下载[em0]
 楼主| 发表于 2013-11-4 22:09 | 显示全部楼层
emk 发表于 2013-11-4 22:02
演示图片压缩包【名字】长一点哈,没法下载

刚才我试了,可以下啊
发表于 2013-11-4 22:37 | 显示全部楼层
动画看不了,是我电脑的问题吗?
发表于 2013-11-5 09:55 | 显示全部楼层
确实不错!
发表于 2013-11-5 13:02 | 显示全部楼层
下载试用,确实不错!很实用。
发表于 2013-11-6 08:05 | 显示全部楼层
非常实用的程序!多谢楼主!
发表于 2013-11-7 11:20 | 显示全部楼层
看起来不赖,楼主的东西还应该实用
发表于 2016-1-22 09:26 | 显示全部楼层
感谢楼主分享程序,似乎不支持line封口!
发表于 2016-1-26 21:12 | 显示全部楼层
支持一下,好像很少用到
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2019-12-14 05:28 , Processed in 0.293877 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

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