明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1174|回复: 0

多段线上删除一端点LISP程度(转载)

[复制链接]
发表于 2009-3-25 19:40 | 显示全部楼层 |阅读模式

(defun c:dfg (/ ent pt ents i n npt item lstNew)
   (setq ent (entsel "选择一条多段线:"))
 
   (while (setq point (getpoint "\n选择要删除的端点:"))
     (setq ents (entget (car ent)))
     (setq i  0
    npt  0
    n  (length ents)
    lstNew '()
           )
     (while (< i n)
       (setq item (nth i ents))
       (cond
  ((= npt 0)
   (if (= (car item) 10)
     (progn
       (setq npt (1+ npt))
       (setq i (1- i))
     )
     (setq lstNew (append lstNew (list item)))
   )
  )
  ((= npt 1)
   (if (equal (cdr item) (list (car point) (cadr point)) 0.00001)
     (setq i (+ i 3))
     (setq lstNew (append lstNew (list item)))
   )
  )
       )    
       (setq i (1+ i))
     )    
     (entmod lstNew)
   )
   (princ)
)

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-18 21:48 , Processed in 0.240304 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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