1、;功能 桥梁设计点取墩台坐标 用法 将此文件内容全部粘贴到 txt 文档 重命名为 lsp文件 拖放到 cad 即加载 命令 dzb 按命令行操作即可(defun c:dzb(/ )(setvar “cmdecho“ 0)(setvar “blipmode“ 0)(setq os (getvar “osmode“)(setq dim (getvar “dimzin“)(setvar “osmode“ 0)(setvar “dimzin“ 0);(chk_style)(setq i_sc (getvar “DIMSCALE“)(if (setq pier (getreal “n 输入起始墩台编号
2、:“) () (setq pier 0)(setq ptb0 (getpoint “n 指定表格右上角点:“)(u_doubli)(d_sum)(setq i 0 ii 0)(setq ikey “Yes“)(while (= ikey “Yes“)(setvar “osmode“ os)(if(setq pt0 (getpoint (strcat “n 点取第“ (rtos (+ pier ii) 2 0) “号墩台“ (rtos (+ 1 i) 2 0) “号点或结束ENTER:“)(progn(d_sumsing)(setq i (1+ i)(progn(command “_.pline
3、“ ptb1 “w“ (* 0.35 i_sc) (* 0.35 i_sc) (polar ptb1 0 (* 60.0 i_sc) “)(setvar “osmode“ 0)(command “_.text“ “j“ “m“ (polar (polar ptb1 0 (* 7.5 i_sc) (/ pi 2) (* i 0.5 6.0 i_sc) (* 3.0 i_sc) “0“ (strcat (rtos (+ pier ii) 2 0) “号墩“)(setq i 0)(setq ii (1+ ii)(initget “Yes No“)(if (setq ikey (getkword “n
4、 本墩号点取结束,是否继续?Yes/No:“) () (setq ikey “Yes“)(setvar “osmode“ os)(setvar “dimzin“ dim)(prin1) ;表头(defun d_sum()(setq ptb1 (polar ptb0 (/ pi -2) (* 8.0 i_sc)(setq ptb2 (polar (polar ptb0 (/ pi -2) (* 4.0 i_sc) 0 (* 7.5 i_sc)(command “_.text“ “j“ “m“ ptb2 (* 3.5 i_sc) 0 “墩台编号“)(command “_.text“ “j“ “m“
5、 (polar ptb2 0 (* 15.0 i_sc) (* 3.5 i_sc) 0 “点 号“)(command “_.text“ “j“ “m“ (polar ptb2 0 (* 30.0 i_sc) (* 3.5 i_sc) 0 “坐标(N)“)(command “_.text“ “j“ “m“ (polar ptb2 0 (* 45.0 i_sc) (* 3.5 i_sc) 0 “坐标(E)“)(command “_.pline“ ptb0 “w“ (* 0.35 i_sc) (* 0.35 i_sc) ptb1 “)(command “_.pline“ ptb0 “w“ (* 0.
6、35 i_sc) (* 0.35 i_sc) (polar ptb0 0 (* 60.0 i_sc) “)(command “_.pline“ ptb1 “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar ptb1 0 (* 15.0 i_sc) “)(command “_.pline“ (polar ptb0 0 (* 60.0 i_sc) “w“ (* 0.35 i_sc) (* 0.35 i_sc) (polar ptb1 0 (* 60.0 i_sc) “)(command “_.pline“ (polar ptb0 0 (* 15.0 i_sc) “w“ (
7、* 0.18 i_sc) (* 0.18 i_sc) (polar ptb1 0 (* 15.0 i_sc) “)(command “_.pline“ (polar ptb0 0 (* 30.0 i_sc) “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar ptb1 0 (* 30.0 i_sc) “)(command “_.pline“ (polar ptb0 0 (* 45.0 i_sc) “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar ptb1 0 (* 45.0 i_sc) “);写内容(defun d_sumsing()(se
8、tvar “osmode“ 0)(setq zb_n (cadr pt0)zb_e (car pt0)(command “_.text“ “j“ “m“ (polar (polar ptb1 (/ pi -2) (* 3.0 i_sc) 0 (* 22.5 i_sc) (* 3.0 i_sc) “0“ (strcat (rtos (+ 1 i) 2 0) “#“ )(command “_.text“ “j“ “m“ (polar (polar ptb1 (/ pi -2) (* 3.0 i_sc) 0 (* 37.5 i_sc) (* 3.0 i_sc) “0“ (rtos zb_n 2 3)
9、(command “_.text“ “j“ “m“ (polar (polar ptb1 (/ pi -2) (* 3.0 i_sc) 0 (* 52.5 i_sc) (* 3.0 i_sc) “0“ (rtos zb_e 2 3)(command “_.pline“ ptb1 “w“ (* 0.35 i_sc) (* 0.35 i_sc) (polar ptb1 (/ pi -2) (* 6.0 i_sc) “)(command “_.pline“ (polar ptb1 0 (* 60.0 i_sc) “w“ (* 0.35 i_sc) (* 0.35 i_sc) (polar (pola
10、r ptb1 (/ pi -2) (* 6.0 i_sc) 0 (* 60.0 i_sc) “)(command “_.pline“ (polar ptb1 0 (* 15.0 i_sc) “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar ptb1 0 (* 60.0 i_sc) “)(command “_.pline“ (polar ptb1 0 (* 15.0 i_sc) “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar (polar ptb1 (/ pi -2) (* 6.0 i_sc) 0 (* 15.0 i_sc) “)(com
11、mand “_.pline“ (polar ptb1 0 (* 30.0 i_sc) “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar (polar ptb1 (/ pi -2) (* 6.0 i_sc) 0 (* 30.0 i_sc) “)(command “_.pline“ (polar ptb1 0 (* 45.0 i_sc) “w“ (* 0.18 i_sc) (* 0.18 i_sc) (polar (polar ptb1 (/ pi -2) (* 6.0 i_sc) 0 (* 45.0 i_sc) “)(setq ptb1 (polar ptb1 (/
12、pi -2) (* 6.0 i_sc)(setvar “osmode“ os);双下划线子程序(defun u_doubli(/ ss ssdata box pt11 pt22 )(setvar “clayer“ “文本“)(command “_.text“ “j“ “m“ (polar (polar ptb0 (/ pi 2) (* 10.5 i_sc) 0 (* 30.0 i_sc) (* 5.5 i_sc) “0“ “全桥桩位坐标表 “)(setq ss (entlast)(setq ssdata (entget ss)(command “ucs“ “e“ ss)(setq box (t
13、extbox ssdata)(setq pt11 (car box)(setq pt22 (list (car (cadr box) (cadr pt11)(setq pt11 (polar pt11 pi (* 1.4 i_sc) pt22 (polar pt22 0 (* 1.4 i_sc)(setq pt11 (polar pt11 (* 1.5 pi) (* 1.4 i_sc) pt22 (polar pt22 (* 1.5 pi) (* 1.4 i_sc);偏1.4mm(command “pline“ pt11 “w“ (* 0.35 i_sc) “ pt22 “)(setq pt11 (polar pt11 (* 1.5 pi) (* 0.8 i_sc) pt22 (polar pt22 (* 1.5 pi) (* 0.8 i_sc);偏0.8mm(command “pline“ pt11 “w“ (* 0.15 i_sc) “ pt22 “)(command “ucs“ “w“)(princ “n-点坐标-命令 dzb-hez87“)(prin1)