1、增加 AUTOCAD 在文字处理上的功能一、说明 在用 AUTOCAD 制图的过程中,必然要写说明性文字。当然在制表和写设计说明时,文字量就更大,AUTOCAD 写文字并无难处,难的是怎么使写出的文字的尺寸、间距、对齐等方面象文字处理软件那样合适。若用 AUTOCAD 基本命令来处理,会很麻烦,并影响作图速度。为此我编写了一些小程序供大家使用。这次我提供如下两个程序:二、程序的安装及使用先把 ZDDQLSP 和 ZDJTLSP 拷贝到一个特定的目录下(如:C:R12SUPPORT 或C:TCHSYS 等)。用户可以将持到 AUTOCAD 或其它开发软件的系统菜单上,通过菜单来调动,也可以 AU
2、TOCAD 环境 COMMAND 后面用 LOAD 命令装入,形成一个附加命令ZDDQ 或 ZDST。1将程序调用装入系统菜单先找到菜单源文件 ACAD.MNU,并编辑它。在* * * POP1 最后加下面内容。字的对齐CCP(“ZDDQ”);ZDDQ;P。字的间距调整CCP(LOAD“ZDJT”);ZDJT;P。用鼠标点取下拉菜单即可调用。 2命令调 用 ZDDQLSP、ZDJTLSP在 COMMAND 后面输入(LOAD“ZDDQ”)或(LOAD“ZDJT”),产生可用命令ZDDQ、 ZD JT,击入命令按提示操作。3两程序在使用中基本为中文提示,易用,现已在我院网络上全面使用。 4两程序
3、适用于 AUTOCAD R10.0, R11,R12.0。 三、操作过程1多文字对齐。提示如下:(其中“= n 2)(setq j 1)(wh ile ( bj1 bj2)(BBBB)(if (AND (= S1 2)( (cdr (assoc 40 (tblsearch “style“ zx) 0.00001)(command “text“ zb (/ (* jd 180.0) pi) wb)(command “text“ zb wg (/ (* jd 180.0) pi) wb) )(if ( (cdr (assoc 40 (tblsearch “style“ zx) 0.00001) (
4、command “text“ fs zb (/ (* jd 180.0) pi) wb)KG*2(command “text“ fs zb wg (/ (* jd 180.0) pi) wb)(p rogn(setq ys (- y (* cj (- n 1)(setq zb (list x ys)( if (= fs “)( if ( (cdr (assoc 40 (tblsearch “style“ zx) 0.00001)(command “text“ zb (/ (* jd 180.0) pi) wb)(command “text“ zb wg (/ (* jd 180.0) pi)
5、wb) )(if ( (cdr (assoc 40 (tblsearch “style“ zx) 0.00001)(command “text“ fs zb (/ (* jd 180.0) pi) wb)(command “text“ fs zb wg (/ (* jd 180.0) pi) wb) )(progn(princ “n 按先后次序选取文字“)(princ) (setq ss (ssget) cd (sslength ss)(princ “n 按选取文字先后次序,从斜线起点至终点等分这组文字“)(princ) (setq qd (getpoint “n 斜线起点: “)(setq
6、zd (getpoint qd “n 斜线终点: “)(setq jd (angle qd zd)(setq jl (distance qd zd) jl (/ jl (- cd 1)(setq i 0)(repeat cd(setq zd (polar qd jd (* i jl)(setq wg (cdr (assoc 40 (entget (ssname ss i)(setq wb (cdr (assoc 1 (entget (ssname ss i)(command “text“ zd wg “0“ wb)(setq i (1+ i)(DEFUN BBBB ()(setq b$ bj1 a$ aj1 c$ cj1)(set (read (strcat “b“ (itoa j) bj2)(set (read (strcat “a“ (itoa j) aj2)(set (read (strcat “c“ (itoa j) cj2)(set (read (strcat “b“ (itoa (+ j 1) b$)(set (read (strcat “a“ (itoa (+ j 1) a$)(set (read (strcat “c“ (itoa (+ j 1) c$) )