nataca 发表于 2022-7-6 09:45:11

如何获取(Autol的)变量

我有问题:
(原子族1)->列表变量,函数。。。
如何排序或获取变量(由Autolisp而非Autocad创建)?
谢谢

Tharwat 发表于 2022-7-6 10:14:33

这就是你的意思吗。。。
 

(setq a 1
   b 2
   c 3)
(atoms-family 1 '("a" "b" "c" "d"))

将d返回为零
塔瓦特

pBe 发表于 2022-7-6 10:24:38

试试这个
 
MP原子
 

 
http://www.theswamp.org/index.php?topic=30256.msg358398#msg358398
 
你可能需要注册
atoms16.zip

nataca 发表于 2022-7-6 10:38:45

谢谢我试过了。但有些变量无法设置(“只读”)
这是我的代码:
(defun C:RSB        (/ a b)
(setq        a        (vl-remove-if '(lambda (x) (or (wcmatch x "*-*,*_*,C:,AC*,PI,@@@@@@@@@@@*")
                                     (not (member (type (eval (read x))) '(INT REAL LIST STR))))
                                      )
                            ) (atoms-family 1)))
(setq        b        (mapcar'(lambda (x)         (set (read x) nil)) a))
(princ)
)

pBe 发表于 2022-7-6 10:45:41

您是否试图将浮动变量设置为零?
 
无论如何。。。
 
(defun c:RSB ()
(mapcar' (lambda (x)                        
(set (setq ss (read x)) nil))
(vl-remove-if
'(lambda (X)
   (or (wcmatch x "*-*,*_*,C:,AC*,PI,@@@@@@@@@@@*")
(not (or (eq (type (eval (read x))) 'INT)
(eq (type (eval (read x))) 'REAL)
(eq (type (eval (read x))) 'LIST)
(eq (type (eval (read x))) 'STR)
))
)
   )
(atoms-family 1)))
(princ)
)
页: [1]
查看完整版本: 如何获取(Autol的)变量