请问标注和文字比例怎么设置,如下
本帖最后由 無恒的地盘 于 2011-9-3 15:03 编辑(defun c:D12 nil
(setvar "DIMSCALE" 75);这个数值怎样可以设置成手动输入比例,另想加入一个同时更改文字大小比例
(setvar "OSMODE" 7103)
(command "LTSCALE" "20")
(setq ss (ssget '((0 . "DIMENSION,LEADER"))))
(command "_DIMSTYLE" "APPLY" ss ""))
(defun c:D12 ()
(setq old (getvar 'dimscale))
(if (setq new (getreal (strcat "\n当前尺寸标注的比例为:<"
(rtos old)
">,请输入新的比例:"
)
)
)
(progn
(setvar "DIMSCALE" new)
(setq ss (ssget '((0 . "DIMENSION,LEADER"))))
(command "_DIMSTYLE" "APPLY" ss "")
)
)
)
下面一个参考一下:
(defun c:tt ()
(vl-load-com)
(setq en (car (entsel "\n选择一个尺寸标注:")))
(setq obj (vlax-Ename->Vla-Object en))
(setq old (vla-get-scalefactor obj))
(if (setq new (getreal (strcat "\n当前尺寸标注的比例系数为:<"
(rtos old)
">,请输入新的比例系数:"
)
)
)
(progn
(setq ss (ssget '((0 . "DIMENSION,LEADER"))))
(setq k 0)
(repeat (sslength ss)
(setq obj (vlax-Ename->Vla-Object (ssname ss k)))
(vla-put-scalefactor obj new)
(setq k (1+ k))
)
)
)
(princ)
) ljpnb 发表于 2011-9-3 16:37 static/image/common/back.gif
(defun c:D12 ()
(setq old (getvar 'dimscale))
(if (setq new (getreal (strcat "\n当前尺寸标注的 ...
谢谢ljpnb,很好用,贪心一下想加个输入比例的时候更改标注同时文字的大小也一起调整,文字大小等于比例等于乘以3 無恒的地盘 发表于 2011-9-3 20:54 static/image/common/back.gif
谢谢ljpnb,很好用,贪心一下想加个输入比例的时候更改标注同时文字的大小也一起调整,文字大小等于比例等 ...
(defun c:tt ()
(vl-load-com)
(setq en (car (entsel "\n选择一个尺寸标注:")))
(setq obj (vlax-Ename->Vla-Object en))
(setq old (vla-get-scalefactor obj))
(if (setq new (getreal (strcat "\n当前尺寸标注的比例系数为:<"
(rtos old)
">,请输入新的比例系数:"
)
)
)
(progn
(setq ss (ssget '((0 . "DIMENSION,LEADER"))))
(setq k 0)
(repeat (sslength ss)
(setq obj (vlax-Ename->Vla-Object (ssname ss k)))
(setq h (vla-get-textheight obj ))
(vla-put-textheight obj (* h 3.0));;3.0可以修改的
(vla-put-scalefactor obj new)
(setq k (1+ k))
)
)
)
(princ)
) 本帖最后由 無恒的地盘 于 2011-9-4 22:46 编辑
ljpnb 发表于 2011-9-4 20:51 static/image/common/back.gif
谢谢ljpnb,刚用了一下,但有以下问题,就是输入比例后标注成倍放大,并不是按比例来缩放的,文字不被选中,是否加入文字样式会好一些.
还有一个问题就是您帮我写的两个工具,D12工具可以改引线比例,TT工具不可以改引线标注比例,再次谢谢ljpnb帮忙解决。 能改成可以记录上次输入的比例吗
页:
[1]