明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1296|回复: 5

[已解答] 请问如何剔除选择集里的某些图元得到新选择集

[复制链接]
发表于 2015-7-21 11:21:29 来自手机 | 显示全部楼层 |阅读模式
比如现有选择集ss 请问如何剔除里面的LINE得到新选择集newss?

(ps:选择集ss是现有的 所以不用(ssget (list '(0.....)))这种方法)

本帖被以下淘专辑推荐:

  • · 学习|主题: 95, 订阅: 8
发表于 2015-7-21 11:24:36 | 显示全部楼层
(ssdel  e ss)
回复 支持 0 反对 1

使用道具 举报

发表于 2015-7-21 12:21:12 | 显示全部楼层
例子
(setq ss2(SS_REMOVETYPES ss '("LINE")))
  1. (defun SS_RemoveTypes ( ss TypeLst / cnt ss1 ssl ename entl en )

  2. (setq ss1 nil)
  3. (if (and ss (> (setq ssl (sslength ss)) 0))
  4. (progn
  5.         (setq
  6.                 cnt 0
  7.                 ss1 (ssadd)
  8.         )
  9.         (repeat ssl
  10.                 (setq
  11.                         ename (ssname ss cnt)
  12.                         entl  (entget ename)
  13.                         en    (LI_item 0 entl)
  14.                         cnt   (1+ cnt)
  15.                 )
  16.                 (if (not (member en TypeLst))
  17.                         (ssadd ename ss1)
  18.                 )
  19.         )
  20. ))

  21. (if (and ss1 (> (sslength ss1) 0)) ss1 nil)
  22. )

  23. (defun LI_item (n alist)

  24.         (cdr (assoc n alist))
  25. )
 楼主| 发表于 2015-7-21 13:20:10 来自手机 | 显示全部楼层
谢谢二位 搞定了
发表于 2015-7-24 21:32:20 | 显示全部楼层
。。。
发表于 2015-7-24 21:48:40 | 显示全部楼层
。。。。。。。。。。。。。。。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-22 15:11 , Processed in 0.160792 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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