标注尺寸对齐是否可以改成不移动标注,仅对齐
(defun c:dag (/ ss ptx i endata pt13 pt14 ang vlen)(princ "\n选择要对齐的标注")
(setq ss (ssget '((0 . "DIMENSION"))))
;;需要计算一下哪种标注最多
;;排除少量的,用最多的那种
(while (= (car(setq poi(grread 1))) 5)
(setq ptx (cadr poi))
(setq i 0)
(repeat (sslength ss)
(setq endata (entget (ssname ss i)))
(entmod (subst (cons 10 ptx) (assoc 10 endata) endata ))
(setq i (1+ i))
))
;;下面来指定引线起点
(setq ptx (getpoint "\n指定标注引线起点"))
(setq i 0)
(repeat (sslength ss)
(setq endata (entget (ssname ss i)))
(setq pt13 (cdr (assoc 13 endata))
pt14 (cdr (assoc 14 endata)))
(if (= 33 (cdr (assoc 70 endata))) (setq ang (angle pt13 pt14)) (setqang(cdr (assoc 50 endata))))
(entmake (list '(0 . "LINE") (cons 10 ptx) (cons 11 (polar ptx ang 100))))
(setq vlen (vlax-ename->vla-object (entlast)))
;;求出跟线最近的点
(setqendata (subst (cons 13(vlax-curve-getclosestpointto vlen pt13 T)) (assoc 13 endata) endata)
endata (subst (cons 14(vlax-curve-getclosestpointto vlen pt14 T)) (assoc 14 endata) endata))
(vla-erase vlen)
(entmod endata)
(setq i (1+ i))
);end repeat
)
明白了。看看这个是你的要求吗?
没明白你的意思,能说具体一点吗? xvjiex 发表于 2020-6-10 09:21
没明白你的意思,能说具体一点吗?
运行命令后,选中尺寸,然后软件会让你移动尺寸的位置,一般我的尺寸位置是放好的只需要尺寸界线对齐,也就是他这个命令的最后一步 xvjiex 发表于 2020-6-10 11:07
明白了。看看这个是你的要求吗?
正是想要的,感谢感谢 没明白你的意思,能说具体一点吗? xvjiex 发表于 2020-6-10 07:40
明白了。看看这个是你的要求吗?
您好,这个插件下载不了
页:
[1]