sbwdx 发表于 2019-12-23 14:14:11

请教添加,比例列表没有的比例?

各位老师,我自己编了一个简单的代码,可以添加列表里面没有的比例,但是列表里面有,就会提示已存在,是否替换,这个就有点烦人了,我还得去点N,点E退出,请教:怎么处理这个情况好一点?是设置不替换,退出?还是说获取列表"-SCALELISTEDIT"里面有个?选项,获取当前列表信息,判断,列表有就加,没有就不加,退出呢?
(defun c:TT1()
(setvar 'cmdecho 0)
(setq UNA (getstring "\n设置列表新比例:"))
(command "-SCALELISTEDIT" "A"(strcat "1:" UNA ) (strcat "1:" UNA ) "E" )
(princ"\n完成添加!")
(setvar 'cmdecho 1)
(princ)
)

x_s_s_1 发表于 2019-12-23 14:14:12

试试
(defun c:TT1 (/ lst UNA)
(setvar 'cmdecho 0)
(setq        lst (mapcar '(lambda (x) (cdr (assoc 300 (entget (cdr x)))))
                  (vl-remove-if-not
                      '(lambda (x) (eq 350 (car x)))
                      (dictsearch (namedobjdict) "ACAD_SCALELIST")
                  )
          )
)
(setq UNA (getstring "\n设置列表新比例:"))
(setq UNA (strcat "1:" UNA))
(if (member UNA lst)
    (princ "\n已有比例!")
    (progn (command "-SCALELISTEDIT" "A" UNA UNA "E")
           (princ "\n完成添加!")
    )
)
(setvar 'cmdecho 1)
(princ)
)

taoyi0727 发表于 2019-12-23 16:26:28

你不发这个我都还不知道有这个东西
研究下这个有什么用

sbwdx 发表于 2019-12-23 16:31:21

taoyi0727 发表于 2019-12-23 16:26
你不发这个我都还不知道有这个东西
研究下这个有什么用

画图的时候,没有系统比例啊,显示0.0几等,我不想每次去点,添加,麻烦的很,就想到了这办法

594826903 发表于 2019-12-23 17:08:54

手头有一个看是否有用!

taoyi0727 发表于 2019-12-23 17:14:39

(setvar "DIMDEC" 0)
(setvar "DIMADEC" 0)
这用个就行了,不显示小数

sbwdx 发表于 2019-12-23 17:21:25

taoyi0727 发表于 2019-12-23 17:14
(setvar "DIMDEC" 0)
(setvar "DIMADEC" 0)
这用个就行了,不显示小数

不是这个意思哦,比如,这个视口300比例,如果不添加,是显示不对的,添加了,才会显示1:300

taoyi0727 发表于 2019-12-23 17:37:54

没用过布局看的我一脸蒙X
刚才找了一下,没有找到有(比例列表)的系统变量,只要找到列表里所有的比例,就能搞定了

taoyi0727 发表于 2019-12-23 17:39:02

(getvar "CANNOSCALEVALUE")
(getvar "MSLTSCALE")
(getvar "CANNOSCALE")
(getvar"ANNOALLVISIBLE")
(getvar "PSLTSCALE")

找了好几个 都不是

start4444 发表于 2019-12-23 19:26:00

http://bbs.mjtd.com/forum.php?mod=viewthread&tid=179341
换一种查询方法看看行不
页: [1] 2
查看完整版本: 请教添加,比例列表没有的比例?