limj2007 发表于 2007-4-4 09:00:00

坐标标注LISP程序修改.

<p>SOS:</p><p>坐标标注LISP程序修改.</p><p>思路如下:</p><p>按画好的线--&gt;生成指定位置坐标标注值.</p><p>现有点坐标标注程序,麻烦各位高手帮帮忙,修改此程序,让其按画好的线生成指定位置坐标标注,谢谢!</p><p>&nbsp;</p>

byghbcx 发表于 2007-4-4 10:29:00

(defun c:zbb( / zg wid pt x y xx yy lken width pt2 pp2);<br/>&nbsp;(setq zg (getreal"\n字高&lt;3.0&gt;:"))<br/>&nbsp;(if (not zg) (setq zg 3.0))<br/>&nbsp;(command "_layer" "m" "坐标标注" "")<br/>&nbsp;(setvar "cecolor" "7")<br/>&nbsp;(setvar "clayer" "坐标标注")<br/>&nbsp;(setvar "dimzin" 0)<br/>&nbsp;(initget (+ 1 2) " ")<br/>&nbsp;;(command "style" "k2" "Rs" "" "" "" "" "" "")<br/>&nbsp;(setvar "osmode" 33)<br/>&nbsp;(setq wid (cdr (assoc 41 (tblsearch "style" (getvar "TEXTSTYLE")))))<br/>&nbsp;(setq pt (getpoint "\n中心点:"))<br/>&nbsp;(while (listp pt)<br/>&nbsp;&nbsp;&nbsp; (setq x (rtos (car pt) 2 3))<br/>&nbsp;&nbsp;&nbsp; (setq y (rtos (cadr pt) 2 3))<br/>&nbsp;&nbsp;&nbsp; (setq xx (strcat "Y=" x))<br/>&nbsp;&nbsp;&nbsp; (setq yy (strcat "X=" y))<br/>&nbsp;&nbsp;&nbsp; (setq lken (strlen xx) width (* wid lken zg 0.75))<br/>&nbsp;&nbsp;&nbsp; (setvar "osmode" 0)<br/>&nbsp;&nbsp;&nbsp; (command "pline" pt )<br/>&nbsp;&nbsp;&nbsp; (setq pt2 (getpoint "\n方向点:" pt))<br/>&nbsp;&nbsp;&nbsp; (setq pp2 (polar pt2 (if (&gt;= (car pt2) (car pt)) 0 pi) width))<br/>&nbsp;&nbsp;&nbsp; (command pt2)<br/>&nbsp;&nbsp;&nbsp; (command pp2 "")<br/>&nbsp;&nbsp;&nbsp; (setvar "osmode" 0)<br/>&nbsp;&nbsp;&nbsp; (command "text" (polar (if (&gt;= (car pt2) (car pt)) pt2 (polar pt2 pi width)) (* pi 0.5) (/ zg 4)) zg 0 yy)<br/>&nbsp;&nbsp;&nbsp; (command "text" (polar (if (&gt;= (car pt2) (car pt)) pt2 (polar pt2 pi width)) (* pi 1.5) (/ zg 0.8)) zg 0 xx)<br/>&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp; (setvar "osmode" 33)<br/>&nbsp;&nbsp; (initget (+ 1 2) " ")<br/>&nbsp;&nbsp;&nbsp; (setq pt (getpoint "\n下一中心点:"))<br/>&nbsp;)<br/>(princ)<br/>)

陈亚娣 发表于 2014-1-15 11:44:29

学习学习
页: [1]
查看完整版本: 坐标标注LISP程序修改.