路线设计中纵横绘图示例

分类:lisp函数 | 标签: lisp   函数   纵横   绘图  
2007-07-06 15:16 阅读(?)评论(0)

程序名称 : 路线设计中纵横绘图示例

作者 : zml84

生成时间 : 2007-07-06 15:00:32


  1. ;;; 横断面文件读取绘图 示例
  2. ;;; 日期:zml84 于 2007-06-20
  3. (defun C:AAA ()
  4. (princ "\n读取文件数据,绘制横断面地面线。")
  5. (if (setq FILE (getfiled "选择横断面文件"
  6. ""
  7. "hdm"
  8. 4
  9. )
  10. )
  11. (progn
  12. ;;读模式打开lsp文件
  13. (setq F1 (open FILE "r"))
  14. ;;指定插入点
  15. (if (setq PT0 (getpoint "\n插入点:"))
  16. ()
  17. (setq PT0 '(0 0))
  18. )
  19. ;;间隔距离
  20. (if (setq DIST (getdist PT0 "\n间隔距离:"))
  21. ()
  22. (setq DIST 5)
  23. )
  24. ;;0---桩号 1---左侧 2---右侧
  25. (setq MODE 0)
  26. ;;逐行读入
  27. (while (setq STR (read-line F1))
  28. (if (= MODE 0)
  29. (command "_.text" "non" PT0 2.5 0 STR)
  30. (progn
  31. (setq LST (read (strcat "(" STR ")")))
  32. (command "_.pline" "non" PT0)
  33. (setq I 0)
  34. (repeat (/ (length LST) 2)
  35. (command
  36. (strcat (if (= MODE 1)
  37. "@"
  38. "@-"
  39. )
  40. (vl-princ-to-string (nth I LST))
  41. ","
  42. (vl-princ-to-string
  43. (nth (1+ I) LST)
  44. )
  45. )
  46. )
  47. (setq I (+ I 2))
  48. ) ;_ 结束repeat
  49. (command "")
  50. )
  51. ) ;_ 结束if
  52. (if (= MODE 2)
  53. (setq MODE 0
  54. PT0 (polar PT0 (* 0.5 pi) DIST)
  55. )
  56. (setq MODE (1+ MODE))
  57. )
  58. )
  59. ;;关闭文件
  60. (close F1)
  61. )
  62. )
  63. (princ)
  64. ) ;_ 结束defun
  65. ;;;=============================================================
  66. ;;; 纵断面文件读取绘图 示例
  67. ;;; 日期:zml84 于 2007-06-20
  68. (defun C:BBB ()
  69. (princ "\n读取文件数据,绘制纵断面地面线。")
  70. (if (setq FILE (getfiled "选择纵断面文件"
  71. ""
  72. "dmg"
  73. 4
  74. )
  75. )
  76. (progn
  77. ;;读模式打开lsp文件
  78. (setq F1 (open FILE "r"))
  79. ;;指定插入点
  80. (if (setq PT0 (getpoint "\n插入点:"))
  81. ()
  82. (setq PT0 '(0 0))
  83. )
  84. (command "_.pline")
  85. ;;逐行读入
  86. (while (setq STR (read-line F1))
  87. (setq LST (read (strcat "(" STR ")")))
  88. (command "non" (list (car LST) (cadr LST)))
  89. )
  90. (command "")
  91. ;;关闭文件
  92. (close F1)
  93. )
  94. )
  95. (princ)
  96. ) ;_ 结束defun
  97. ;;;=============================================================

 

  最后修改于 2007-07-06 15:24    阅读(?)评论(0)
 
表  情:
加载中...
 

请各位遵纪守法并注意语言文明