修改比例因子的话,会把相同的标注样式一起修改了,需要重新建立标注样式才可以。
放大3倍的话,标注比例=1除以3,数值的话0.33333333,标注会有一些误差。所以一般的情况下,是放大2的倍数,这样不会产生误差。
还有一个方法,1:1的情况下,直接修改标注文字,不管放大或缩小,标注的尺寸都不会改变。代码如下:
(defun C:tes ( / #k1 %k1 %k2 &k1 &kw i)
(setvar "cmdecho" 0)
(setvar "blipmode" 0)
(princ "\n请选择需要固定尺寸的标注")
(setq &kw (ssget (list (cons 0 "DIMENSION"))))
(if (/= &kw nil) ;;如果有选择
(progn
(setq i 0)
(repeat (sslength &kw) ;;选择循环
(setq &k1 (ssname &kw i) ;;取得一个对象
#k1 (entget &k1) ;;取得对象属性列表
%k1 (rtos (cdr (assoc 42 #k1)) 2 0);;取得标注尺寸
%k1 (cons 1 %k1) ;;取得修改尺寸
%k2 (assoc 1 #k1) ;;取得原来尺寸
)
(setq #k1 (subst %k1 %k2 #k1)) ;;替换
(entmod #k1) ;;刷新图元
(setq i (+ i 1)) ;;下一个图元
)
(princ "\n修改完成") (princ i) (princ "个")
)
)
(prin1)
);框选标注,就把标注的尺寸固定,不改变尺寸
;复制到记事本,以【.lsp】为后缀命名,打开CAD,autolisp加载,命令【TES】