我很奇怪,同样是手动标注,但有些坐标标注为什么会是230的dxf组码,将11楼的程序改成支持多选,但是230的标注使终改不了! ;by sailorcwx (defun c:qa(/ DXF70 ENT ENTDXF) (setq os (getvar "osmode")) (setvar "cmdecho" 0) (command "undo" "be") (setq ss (ssget '((0 . "DIMENSION")))) (setq i 0) (while (< i (sslength ss)) (setq ent (ssname ss i)) (setq entdxf (entget ent)) (setq dxf70 (cdr (assoc 70 entdxf))) (if (= dxf70 38)(entmod (subst (list 14 (cadr(assoc 14 entdxf)) (caddr(assoc 13 entdxf)) (cadddr(assoc 14 entdxf))) (assoc 14 entdxf) entdxf))) (if (= dxf70 102)(entmod (subst (list 14 (cadr(assoc 13 entdxf)) (caddr(assoc 14 entdxf)) (cadddr(assoc 14 entdxf))) (assoc 14 entdxf) entdxf))) (if (= dxf70 230)(entmod (subst (list 14 (cadr(assoc 13 entdxf)) (caddr(assoc 14 entdxf)) (cadddr(assoc 14 entdxf))) (assoc 14 entdxf) entdxf))) (setq i (+ i 1)) ) (setvar "osmode" os) (command "undo" "e") (princ) )
|