程序名称 : 路线设计中纵横绘图示例
作者 : zml84
生成时间 : 2007-07-06 15:00:32
;;; 横断面文件读取绘图 示例
;;; 日期:zml84 于 2007-06-20
(defun C:AAA ()
(princ "\n读取文件数据,绘制横断面地面线。")
(if (setq FILE (getfiled "选择横断面文件"
""
"hdm"
4
)
)
(progn
;;读模式打开lsp文件
(setq F1 (open FILE "r"))
;;指定插入点
(if (setq PT0 (getpoint "\n插入点:"))
()
(setq PT0 '(0 0))
)
;;间隔距离
(if (setq DIST (getdist PT0 "\n间隔距离:"))
()
(setq DIST 5)
)
;;0---桩号 1---左侧 2---右侧
(setq MODE 0)
;;逐行读入
(while (setq STR (read-line F1))
(if (= MODE 0)
(command "_.text" "non" PT0 2.5 0 STR)
(progn
(setq LST (read (strcat "(" STR ")")))
(command "_.pline" "non" PT0)
(setq I 0)
(repeat (/ (length LST) 2)
(command
(strcat (if (= MODE 1)
"@"
"@-"
)
(vl-princ-to-string (nth I LST))
","
(vl-princ-to-string
(nth (1+ I) LST)
)
)
)
(setq I (+ I 2))
) ;_ 结束repeat
(command "")
)
) ;_ 结束if
(if (= MODE 2)
(setq MODE 0
PT0 (polar PT0 (* 0.5 pi) DIST)
)
(setq MODE (1+ MODE))
)
)
;;关闭文件
(close F1)
)
)
(princ)
) ;_ 结束defun
;;;=============================================================
;;; 纵断面文件读取绘图 示例
;;; 日期:zml84 于 2007-06-20
(defun C:BBB ()
(princ "\n读取文件数据,绘制纵断面地面线。")
(if (setq FILE (getfiled "选择纵断面文件"
""
"dmg"
4
)
)
(progn
;;读模式打开lsp文件
(setq F1 (open FILE "r"))
;;指定插入点
(if (setq PT0 (getpoint "\n插入点:"))
()
(setq PT0 '(0 0))
)
(command "_.pline")
;;逐行读入
(while (setq STR (read-line F1))
(setq LST (read (strcat "(" STR ")")))
(command "non" (list (car LST) (cadr LST)))
)
(command "")
;;关闭文件
(close F1)
)
)
(princ)
) ;_ 结束defun
;;;=============================================================
最后修改于 2007-07-06 15:24
阅读(
?)
评论(0)编辑删除
评论 想第一时间抢沙发么?