cadbird 发表于 2003-5-9 11:33:00

[求助]求教在命令行中改变全局比例因子的方法

比如说当前标注样式为iso-25,全局比例因子为1
我输入dimscale 回车 2 回车
想把全局比例因子改为2,但得到的结果是在iso-25样式下面多出了一个样式替代,在样式替代中的全局比例因子变成了2 ,而iso-25中的全局比例因子还是1没变

请教如何才能在命令行中改变iso-25中的全局比例因子

fango 发表于 2003-6-28 08:05:00

到尺寸样式ISO-25的对话框里去修改不新么?

meflying 发表于 2003-6-28 10:18:00

因为这些变量都是只读的,你修改变量时当然就产生新的标注样式,要改变某一样式的属性,只能在样式属性里面去改

t4ed6p 发表于 2003-7-2 20:34:00

这是不是就是说没法用LISP自定义命令修改了?
VBA行不行?

龙龙仔 发表于 2003-7-3 08:08:00

;;method-1
;;我知道这不是你想要的,因它不会改变已存在的旧尺寸标注
;;BY 龙龙仔
;;USAGE: (CH_DIMSTYLE_SCALE "STANDARD" 8)
;;USAGE: (CH_DIMSTYLE_SCALE "iso-25" 4)

(defun CH_DIMSTYLE_SCALE (DIMNAME DIMSCALE / WW QQ NAME)
(setq QQ (TABLE "DIMSTYLE" DIMNAME))
(foreach NAME        QQ
    (setq WW (entget (tblobjname "dimstyle" NAME)))
    (setq WW (subst (cons 40 DIMSCALE) (assoc 40 WW) WW))
    (entmod WW)
)
(command "_.DIMSTYLE" "R" DIMNAME)
(princ)
)

;;(TABLE "DIMSTYLE" "STANDARD")
(defun TABLE (S DIMNAME / D R)
(while (setq D (tblnext S (null D)))
    (if        (wcmatch (strcase (cdr (assoc 2 D)))
               (strcase (strcat DIMNAME "*"))
        )
      (setq R (cons (cdr (assoc 2 D)) R))
    )
)
)


;;method-2
;;下列转贴自xdcad
;;----------------------------------------------------------------
(setq OLDEXP (getvar "expert"))
(setvar "expert" 5)
(command "dim" "res" "STANDARD" "dimscale" 8.0 "save" "STANDARD" "exit")
(setvar "expert" OLDEXP)

t4ed6p 发表于 2003-7-3 21:04:00

我所需要的就是(setvar "expert" 5),谢谢!

atone 发表于 2024-2-14 18:55:05

龙龙仔 发表于 2003-7-3 08:08
;;method-1
;;我知道这不是你想要的,因它不会改变已存在的旧尺寸标注
;;BY 龙龙仔


厉害,牛逼啦哥
页: [1]
查看完整版本: [求助]求教在命令行中改变全局比例因子的方法