明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5487|回复: 14

谁有批量删除短小线的插件

[复制链接]
发表于 2012-7-20 19:25:45 | 显示全部楼层 |阅读模式
谁有批量删除短小线的插件,即用户输入长度,框选范围,即该长度范围内的线全被删除。
发表于 2021-4-21 10:40:45 | 显示全部楼层

;批量删除短小线的插件
(defun c:e3 (/ s n index ent leng)
(setvar "cmdecho" 0)(command "UNDO" "G")
(if (not va) (progn (setq va 0.3)) (setq va2 va))
(setq va2 (getreal (strcat "\n請輸入欲删除線长在<0.3>以下之圖元<" (rtos va) ">:")))
(if (not va2) (setq va2 va) (setq va va2))
  (setq entde (ssadd))
  (setq s (ssget '((0 . "line,arc,circle,POLYLINE,LWPOLYLINE,SPLINE"))))
  (setq n (sslength s))                       
  (setq index (- n 1))                       
  (repeat n
    (vl-load-com)
    (setq ent (ssname s index))
    (setq curve-obj (vlax-ename->vla-object ent))
    (setq leng (vlax-curve-getDistAtParam
                 curve-obj
                 (vlax-curve-getEndParam curve-obj)
               )
    )
    (setq index (- index 1))
    (if (> leng va2)
      T
      (progn
        (setq entde (ssadd ent entde))
      )
     )
  );(prompt (strcat "\r余 " (itoa (- SSL N)) " 个物件     "))
(command "_.ERASE" entde "")
  (setq mm (sslength entde))
;(prompt (strcat "\共删除长度" (itoa (VA2)) "以下图元" (itoa (entde)) " 个 "))
(princ "\n共删除长度")
(princ  va2)
(princ "以下图元")
(princ mm)
(princ"个")
  (command "UNDO" "E")
  (princ)
)
回复 支持 1 反对 0

使用道具 举报

发表于 2021-1-19 23:10:25 | 显示全部楼层
(defun c:eed (/ s n index ent leng)
  (setq entde (ssadd))
  (setq s (ssget "X" '((0 . "line,arc,circle,POLYLINE,LWPOLYLINE,SPLINE"))))
  (setq n (sslength s))                       
  (setq index (- n 1))                       
  (repeat n
    (vl-load-com)
    (setq ent (ssname s index))
    (setq curve-obj (vlax-ename->vla-object ent))
    (setq leng (vlax-curve-getDistAtParam
                 curve-obj
                 (vlax-curve-getEndParam curve-obj)
               )
    )
    (setq index (- index 1))
    (if (> leng 0.005)
      T
      (progn
        (setq entde (ssadd ent entde))
      )
     )
  )
  (command "_.ERASE" entde "")
  (princ)
)
发表于 2012-7-23 15:43:50 | 显示全部楼层
痛苦,可能别人发布的插件都是下载后再上传的
发表于 2012-7-23 21:00:45 | 显示全部楼层
不知这要求用在哪方面
发表于 2012-7-24 09:53:10 | 显示全部楼层
Roughly...

  1. (vl-load-com)
  2. (defun C:3ShortObj ()
  3.    (setq MinL (getDist "\n Length Limit to: ")
  4.            ss (ssget '((0 . "*LINE,ARC")))
  5.             i  0
  6.    )
  7.    (while (setq ee (ssname ss i))
  8.      (cond
  9.       ((> (vlax-get-property  (vlax-ename->vla-object ee) 'Length) MinL))
  10.       (T (entdel ee))
  11.      )
  12.      (setq i (1+ i))
  13.    )
  14. )

评分

参与人数 1金钱 +20 收起 理由
随梦而飞 + 20 很给力!

查看全部评分

发表于 2012-7-25 20:41:50 | 显示全部楼层
Andyhon 发表于 2012-7-24 09:53
Roughly...

楼主最好直接插件,代码我看不懂
发表于 2012-7-25 20:55:41 | 显示全部楼层
插件的原身不就是代码?
那么请描述您对插件的定义是

当然插件不一定是Lisp源码...
发表于 2012-7-26 06:30:24 来自手机 | 显示全部楼层
楼主肯定是新手中的新手。

点评

崭新崭新的新手! :)  发表于 2012-10-31 10:55
发表于 2012-10-31 10:26:55 | 显示全部楼层
用cad自带的qs命令选择后 e删除
发表于 2013-3-13 15:35:07 | 显示全部楼层
Andyhon 发表于 2012-7-24 09:53
Roughly...

这个命令是什么呢,大哥可以发给我一个吗
发表于 2013-3-13 15:45:24 | 显示全部楼层
Ref:
http://bbs.mjtd.com/thread-79961-1-1.html
...会加载使用别人开发的程序...
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-22 20:58 , Processed in 0.197990 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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