 - (defun DR (num)
- (* pi (/ num 180.0))
- )
- (defun c:bz (/ fname bzcs jcd STR LST li wz wzbz ckjd bzqd bzzd wzck wzwz s sl fl)
- (vl-load-com)
- ;;打开数据文件并获取路径
- (setq lsppath
- (vl-registry-read
- "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\ComDlg32\\OpenSaveMRU\\txt"
- (substr
- (vl-registry-read
- "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\ComDlg32\\OpenSaveMRU\\txt"
- "MRUList"
- )
- 1
- 1
- )
- )
- )
- (setq fname (getfiled "选取控制点数据文件" lsppath "txt" 2))
- (if (not fname)
- (progn
- (alert "请输入有效文件名!")
- (quit)
- )
- (progn
- (setq fl (open fname "r"))
- (while (setq s (read-line fl))
- (setq sl (cons s sl))
- )
- (close fl)
- )
- )
- ;;设置环境参数
- (setvar "cmdecho" 0)
- (setq bzcs (getvar "osmode"))
- (setvar "osmode" 33)
- (command "-layer" "m" "桥梁起终点" "c" "blue" "桥梁起终点" "")
- ;;设置坐标系
- (setq jcd (getpoint "\n 请选择K0与正线交叉点(右线):"))
- (command "_.UCS" "_n" jcd)
- ;;进行标注
- ;;(setq F1 (open fname "r"))
- ;;(while
- ;;(setq STR (read-line F1))
- (foreach str sl
- (setq LST (read (strcat "(" STR ")")))
- (setq li (car LST)
- wz (cadr LST)
- wz (vl-princ-to-string wz)
- wzbz (strcat wz)
- )
- (setq ckjd (list (* li 0.02) 0))
- (setq bzqd (polar ckjd (dr 270) 0.7)
- bzzd (polar ckjd (dr 270) 11)
- )
- (setq wzck (polar ckjd (dr 270) 2.2)
- wzwz (polar wzck (dr 180) 0.2)
- )
- (command "_.line" bzqd bzzd "")
- (command "_.text" "j" "br" wzwz "1.2" "90" wzbz)
- )
- ;;(close F1)
- ;;恢复系统参数
- (command "_.UCS" "_W")
- (setvar "osmode" bzcs)
- ;;(princ)
- ;;)
- (prompt "\n 1、执行命令bz。\n 2、比例:横向1:5000")
- (princ)
- )
|