cjjh8301 发表于 2011-9-17 13:34:29

快速修改标注内容为固定内容

本帖最后由 cjjh8301 于 2011-9-17 13:36 编辑

求一个程序,功能如下,选中标注,输入命令,空格(或回车),标注数字就替换成预先设定好的内容,
(如将标注 “数字” 替换成 “现场实测”)

gbhsu 发表于 2011-9-17 13:34:30

(defun c:dimt( / ss s0 ent0 ss-num)
    (if (not dimtext)(setq dimtext "现场实测"))
    (prompt (strcat"请选取尺寸标注[替代文字:" dimtext "][回车设置]"))
    (setq ss (ssget '((0 . "DIMENSION"))))
    (if ss
         (progn
         (setq ss-num (sslength ss))
         (while (>= ss-num 1)
                (setq s0 (ssname ss 0))
                (setq ent0 (entget s0))
                (setq ent0 (subst (cons 1 dimtext)(assoc 1 ent0)ent0))
                (entmod ent0)
                (setq ss (ssdel s0 ss))
                (setq ss-num(sslength ss))
           );end of while
       );progn
          (progn
          (setq dimtext_saved dimtext)
            (setq dimtext(getstring (strcat "\n请输入替代文字[" dimtext "]:")))
          (if (= dimtext "")(setq dimtext dimtext_saved)(setq dimtext_saved dimtext))
          (c:dimt)
          );progn
    );if
);defun

cjjh8301 发表于 2011-9-17 20:05:48

完美! 给分!
页: [1]
查看完整版本: 快速修改标注内容为固定内容