明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1190|回复: 6

[函数] 取得选择集中虚线、中心线、双点划线图元选择集

[复制链接]
发表于 2021-6-12 11:12 | 显示全部楼层 |阅读模式
本帖最后由 langjs 于 2021-6-12 17:59 编辑

;;; 取得选择集中虚线、中心线、双点划线图元选择集。by:langjs
(defun ssline (ss xianxing / ent i name ss1 tuc xlst)
  (setq ss1 (ssadd) xlst '() )
  (repeat (setq i (sslength ss))
    (setq name (ssname ss (setq i (1- i)))
          ent (entget name)
          tuc (cdr (assoc 8 ent))      ; 取得图元所在具体图层
    )
    (if (assoc 6 ent)                       ; 如果取得6代码,则说明该图元线型是不随层的
      (if (member (cdr (assoc 6 ent)) xianxing)        ; 不随层则判断该图元线型是否在线型过滤条件里,在则加入选择集。
        (setq ss1 (ssadd name ss1))
      )                                       ; 没有6代码,则说明该图元线型必然是随层的
      (if (member (cdr (assoc 6 (tblsearch "layer" tuc))) xianxing) ; 随层的判断该图元图层默认线型是否在线型过滤条件里,在则
        (setq ss1 (ssadd name ss1))
      )
    )
  )
  ss1
)
;;; 测试
(defun c:aa (/ ss xuxian)               ; 亮显虚线
  (setq ss (ssget ":S" '((0 . "LINE,LWPOLYLINE,CIRCLE,ARC")))
        xuxian (list "ACAD_ISO03W100" "ACAD_ISO02W100" "DASHED" "DASHED2" "DASHEDX2" "HIDDEN" "HIDDEN2" "HIDDENX2")
        ss (ssline ss xuxian)
  )
  (sssetfirst nil ss)
  (princ)
)
(defun c:bb (/ ss zxxian)               ; 亮显中心线
  (setq ss (ssget ":S" '((0 . "LINE,LWPOLYLINE,CIRCLE,ARC")))
        zxxian (list "ACAD_ISO04W100" "ACAD_ISO08W100" "ACAD_ISO10W100" "CENTER" "CENTER2" "CENTERX2" "DASHDOT" "DASHDOTX2"
                     "G" "J" "ZX"
               )
        ss (ssline ss zxxian)
  )
  (sssetfirst nil ss)
  (princ)
)
(defun c:cc (/ sdxian ss)               ; 亮显双点划线
  (setq ss (ssget ":S" '((0 . "LINE,LWPOLYLINE,CIRCLE,ARC")))
        sdxian (list "ACAD_ISO05W100" "ACAD_ISO12W100" "DIVIDE" "DIVIDE2" "DIVIDEX2" "PHANTOM" "PHANTOM2" "PHANTOMX2" "SD")
        ss (ssline ss sdxian)
  )
  (sssetfirst nil ss)
  (princ)
)


评分

参与人数 1明经币 +1 收起 理由
669423907 + 1 请教一下,如果我要选择非 continuous 线型.

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2021-6-12 17:04 | 显示全部楼层
感谢分享,感谢分享!!
发表于 2021-6-12 17:08 | 显示全部楼层
新鲜的代码,感谢楼主分享。
发表于 2021-6-13 08:56 | 显示全部楼层
谢谢大师分享
发表于 2021-6-13 10:22 | 显示全部楼层
感谢大神的分享
发表于 2021-6-19 18:21 | 显示全部楼层
非常感谢langjs大师分享好程序。随便请教一下,如果我要选择非 continuous 线型 (~continuous)该如何表达?
发表于 2021-6-27 06:30 来自手机 | 显示全部楼层
感谢大师分享。。。感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-20 19:42 , Processed in 0.364231 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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