yanshengjiang 发表于 2011-10-12 00:44:44

选择“-3"组码内 某1注册扩展名下的信息(明镜亦非台)

;选择“-3"组码内 某1注册扩展名下的信息(明镜亦非台)
;
;当目标为(-3 ("SOUTH" (1 . 2)) ("NO" (1 . "123")))这样的

;扩展属性里面定义的了很多名字的,可选择某1名字下的内容

;我觉得这个程序很冗余,求一个精简版的
(defun c:qq( / name appdata nlis)
(setq name (getstring "\n请输入你要选择的扩展名"))
(setq appdata (assoc -3 (entget (car (entsel "\n>>>选择对象")) '("*"))))
(setq nlis (appname appdata name))
)

(defun appname (li nam / i len nlist nli n0);;li = -3扩展属性   NAM = 注册扩展名
    (setq i 1
      len (length li))
(while (< i len)
(setq nlist (nth i li))
(setq n0(nth 0 nlist))
(if (= n0 nam);;;;;;;设定扩展名
    (progn
      (setq nli (nth i li)
            i len)
      ));if progn
(setq i (1+ i))
);while      
nli
)

cabinsummer 发表于 2011-10-12 06:50:08

本帖最后由 cabinsummer 于 2011-10-12 06:51 编辑

(defun c:qq()
(setq name (getstring "\n请输入你要选择的扩展名"))
(setq appdata (cadr (assoc -3 (entget (car (entsel "\n>>>选择对象"))(list name)))))
)

yanshengjiang 发表于 2011-10-12 18:52:22

cabinsummer 发表于 2011-10-12 06:50 static/image/common/back.gif


感谢summer兄的函数

(entget (car (entsel "\n>>>请选择对象")) '("*"))
我一直没搞懂这个星号的意思。原来就是扩展名 呵呵

cable2004 发表于 2012-5-16 22:52:55

不错的想法

cchessbd 发表于 2023-3-17 22:03:50

cabinsummer 发表于 2011-10-12 06:50


大师,真牛!!!但是我还是不太懂……
页: [1]
查看完整版本: 选择“-3"组码内 某1注册扩展名下的信息(明镜亦非台)