本帖最后由 MZ_li 于 2024-6-27 16:39 编辑
图纸用SC缩小一千倍后,所有标注的文字全都不能跟着缩小,自己琢磨写了一段代码,但是有时候运行没问题,有时候又提示错误ActiveX 服务器返回错误: 未知名称:PRIMARYUNITSPRECISION,大家帮我看看哪里出问题
- (defun bz_sfbl( bzss bzbs / n en);标注全局缩放比例
- (setq n 0)
- (repeat (sslength bzss)
- (setq en (ssname bzss n);;提取图元
- en (vlax-ename->vla-object en)
- n (1+ n)
- )
- (vlax-put-property en 'ScaleFactor bzbs);全局缩放
- (setvar "DIMSCALE" bzbs);标注全局缩放比例
- (if (= gndh_n 1)
- (progn
- (vlax-put-property en 'LinearScaleFactor 1000.0);测量单位比例
- (setvar "DIMLFAC" 1000);标注测量单位比例
- )
- (vlax-put-property en 'PrimaryUnitsPrecision acDimPrecisionThree);设置标注精度
- )
- )
- )
(bz_sfbl (setq bzss (ssget '((0 . "DIMENSION")))) 0.001)
|