分享一个能统一标注的箭头大小和字体高度小插件
正常MATCHPROP就能满足但是一张图里如果有 不同比例因子的就不能用格式刷了。该插件能同时修改框选内的 文字 和引线。(defun c:dma ()
(setq ys_e (car (entsel)))
(setq ty1 (entget ys_e))
(if(/= (cdr (assoc 0 ty1))"DIMENSION")
(progn
(print "数据类型错误")(exit)
)
)
(setq ty_sty_name (cdr (assoc 3 ty1)))
(setq jtdx (cdr (assoc 41 (tblsearch "DIMSTYLE" ty_sty_name))))
(setq wzgd (cdr (assoc 140 (tblsearch "DIMSTYLE" ty_sty_name))))
(setq yt_blyz (cdr (assoc 144 (tblsearch "DIMSTYLE" ty_sty_name))))
(setq ss (ssget))
(setq i 0)
(repeat (sslength ss)
(setq e_e (ssname ss i))
(setq e_e_e (entget e_e))
(if (and (= "DIMENSION" (cdr (assoc 0 e_e_e))) (= yt_blyz (cdr (assoc 144 (tblsearch "DIMSTYLE" (cdr (assoc 3 e_e_e)))))))
(progn
(command "MATCHPROP" ys_e e_e "")
)
(progn
(command ".-DIMSTYLE" "_Restore" (cdr (assoc 3 (entget e_e))))
(setq ys_jddx (getvar "DIMASZ"))
(setq ys_wzgd (getvar "DIMTXT"))
(setvar "DIMASZ" jtdx)
(setvar "DIMTXT"wzgd)
(command "._-DIMSTYLE" "_Apply" (ssname ss i) "")
(setvar "DIMASZ" ys_jddx)
(setvar "DIMTXT"ys_wzgd)
)
)
(if (= (cdr (assoc 0 e_e_e))"MULTILEADER")
(progn
(setq e_e_e (subst (cons 41 wzgd) (assoc 41 e_e_e) e_e_e))
(setq e_e_e (subst (cons 140 jtdx) (assoc 140 e_e_e) e_e_e))
(entmod e_e_e)
)
)
(if (= (cdr (assoc 0 e_e_e))"MTEXT")
(progn
(setq e_e_e (subst (cons 40 wzgd) (assoc 40 e_e_e) e_e_e))
(entmod e_e_e)
)
)
(setq i (1+ i))
)
)
qd001 发表于 2025-9-6 16:03
感谢爱心群主
数据类型错误 太酷了 我很喜欢 感谢楼主分享!!! 感谢热心分享! 感谢楼主分享 感谢爱心群主{:1_1:} 功能蛮不错的,我的设置了全局比例,刷文字的时候用不了
页:
[1]