树櫴希德 发表于 2015-8-28 12:29:34

输入南方CASS编码批量选择物体

;选择集与对象名表互转
(defun cx-ss2en
(ss / enlst)
(cond
    ((= (type ss) 'PICKSET)
      (vl-remove-if-not '(lambda (x) (= (type x) 'ENAME)) (mapcar 'cadr (ssnamex SS)))
    )
    ((= (type ss) 'LIST)
      (setq enlst (ssadd))
      (last (mapcar '(lambda (x) (ssadd x enlst)) ss))
    )
    ((='ename(type ss))
      (ssadd ss)
    )
)
)
(defun c:xzwt ( / bm ss i lst e en lstt);输入南方CASS编码批量选择物体
(setq bm(cons 1000 (rtos(getreal "请输入实体南方编码" )2 0)) )

(setq ss (ssget "x"'()   ))
(setq i 0)
(setq lst '())
   (repeat (sslength ss)

   (setq e (ssname ss i))
       (setq en (entget e '("*")))
   
(if
   (equal (car(cdr (car (cdr (assoc -3 en))))) bm)

      (setq lst (appendlst (list e)))
         )
   (setqi(1+ i))
   
   )
(setq lstt (cx-ss2en lst))
(sssetfirst nil lstt)

)

树櫴希德 发表于 2015-8-28 12:36:57

;选择集与对象名表互转
(defun cx-ss2en
(ss / enlst)
(cond
    ((= (type ss) 'PICKSET)
      (vl-remove-if-not '(lambda (x) (= (type x) 'ENAME)) (mapcar 'cadr (ssnamex SS)))
    )
    ((= (type ss) 'LIST)
      (setq enlst (ssadd))
      (last (mapcar '(lambda (x) (ssadd x enlst)) ss))
    )
    ((='ename(type ss))
      (ssadd ss)
    )
)
)
(defun c:xzwt ( / bm ss i lst e en lstt ydx);输入南方CASS编码批量选择物体
(prompt "\n请选择一个源对象:")
(setq ydx (entget (car (entsel ""))'("*")))

(setq bm (car(cdr (car (cdr (assoc -3 ydx))))) )

(setq ss (ssget "x"'()   ))
(setq i 0)
(setq lst '())
   (repeat (sslength ss)

   (setq e (ssname ss i))
       (setq en (entget e '("*")))
   
(if
   (equal (car(cdr (car (cdr (assoc -3 en))))) bm)

              (setq lst (appendlst (list e)))
         )
   (setqi(1+ i))
   
   )
(setq lstt (cx-ss2en lst))
(sssetfirst nil lstt)
       
)

fengbuliulei 发表于 2015-8-29 21:50:16

绝对的好东西。

血司 发表于 2015-9-8 09:05:59

楼主,CASS不是自带了这个功能的么?批量选目标就可以完成的呀,而且更强大,无心冒犯,只是不知道有什么区别

树櫴希德 发表于 2015-9-8 11:22:58

血司 发表于 2015-9-8 09:05 static/image/common/back.gif
楼主,CASS不是自带了这个功能的么?批量选目标就可以完成的呀,而且更强大,无心冒犯,只是不知道有什么区 ...

供学习之用 各位不要过分依赖CASS 有时为了一个小功能装一个系统很不划算

血司 发表于 2015-9-8 12:21:44

树櫴希德 发表于 2015-9-8 11:22 static/image/common/back.gif
供学习之用 各位不要过分依赖CASS 有时为了一个小功能装一个系统很不划算

赞成供学习之用

theaking 发表于 2015-9-28 22:09:52

楼主可以的,,厉害。。。这个都弄做到

gzbccy 发表于 2015-10-2 09:38:33

树櫴希德 发表于 2015-8-28 12:36 static/image/common/back.gif


到底是那一个才是源程序?一楼还是二楼?

awd37 发表于 2019-1-27 13:35:26

(ssget "x" '((8 . "TK") (-3 ("SOUTH" (1000 . "121100")))))
全选 TK图层,编码为121100
页: [1]
查看完整版本: 输入南方CASS编码批量选择物体