bhxhenshuai 发表于 2025-9-5 14:43:59

分享一个能统一标注的箭头大小和字体高度小插件

正常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:08:33

qd001 发表于 2025-9-6 16:03
感谢爱心群主

数据类型错误

qifeifei 发表于 2025-9-5 14:50:55

太酷了 我很喜欢

不一样地设计 发表于 2025-9-5 17:03:12

感谢楼主分享!!!

shirker 发表于 2025-9-5 22:59:19

感谢热心分享!

xfjiamy 发表于 2025-9-6 08:00:10

感谢楼主分享

qd001 发表于 2025-9-6 16:03:38

感谢爱心群主{:1_1:}

潘成祥2015 发表于 2025-9-6 19:53:39

功能蛮不错的,我的设置了全局比例,刷文字的时候用不了
页: [1]
查看完整版本: 分享一个能统一标注的箭头大小和字体高度小插件