home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 13 / 13.iso / p / p190 / 3.ddi / LSP / HM11.LSP < prev    next >
Encoding:
Text File  |  1990-03-09  |  3.4 KB  |  108 lines

  1. (defun input (sl m)
  2. ;(SETVAR "CMDECHO" 1)
  3.   (MENUCMD "S=IN1")
  4.   (if (= sl 0)(setq l (getreal "\n╩Σ ╚δ │ñ ╢╚=: ")))
  5.   (if (= sl 1)(setq l (getstring "\n╩Σ ╚δ │ñ ╢╚=: ")))
  6.   (if (= l "t")(setq l "T"))
  7.   (if (and (= sl 1) (/= l "T"))(setq l (atof l)))
  8.   (if (= l "T")(setq l (- m xb) l (/ l s)))
  9.   (if (= l "t")(setq l (- m xb) l (/ l s)))
  10.   (setq schl 0 xchl 0)
  11.   (MENUCMD "S=IN2")
  12.   (setq yn (getstring "\n╙╨ ╣½ ▓ε ╖±(N)? "))
  13.                                  (MENUCMD "S=IN1")
  14.   (if (= yn "")(setq yn "n" schl 0 xchl 0))
  15.   (if (or (= yn "y") (= yn "Y"))(progn
  16.                                  (setq schl (getreal "\n╔╧ ╞½ ▓ε=: "))
  17.                                  (setq xchl (getreal "\n╧┬ ╞½ ▓ε=: "))
  18.                                  )
  19.   )
  20.   (setq angl 0 angr 0)
  21.   (setq dgl (getreal "\n╫≤ ╡╣ ╜╟ │ñ ╢╚=:(0) "))
  22.   (if (null dgl)(setq dgl 0))
  23.   (if (> dgl 0)(setq angl (getreal "\n╫≤ ╡╣ ╜╟=: ")))
  24.   (if (= dgl 0)(progn
  25.   (setq dgl (getreal "\n╫≤ ╡╣ ╘▓ ┴┐=:(0) "))
  26.   (if (null dgl)(setq dgl 0))
  27.   (if (/= dgl 0)(setq dgl (- 0 dgl)))
  28. ))
  29.   (setq dgr (getreal "\n╙╥ ╡╣ ╜╟ │ñ ╢╚=:(0) "))
  30.   (if (null dgr)(setq dgr 0))
  31.   (if (> dgr 0)(setq angr (getreal "\n╙╥ ╡╣ ╜╟=: ")))
  32.   (if (= dgr 0)(progn
  33.   (setq dgr (getreal "\n╙╥ ╡╣ ╘▓ ┴┐=:(0) "))
  34.   (if (null dgr)(setq dgr 0))
  35.   (if (/= dgr 0)(setq dgr (- 0 dgr)))
  36. ))
  37. (setq yn "")
  38. )
  39. ;**************************************
  40. ;*  The fuction for drwing worm bar. *
  41. ;*************************************
  42. (defun WORMBAR ()
  43. (SETVAR "CMDECHO" 0)
  44. (SETVAR "BLIPMODE" 0)
  45. (MENUCMD "S=WB1")
  46. (SETQ M1 (GETREAL "\n╟δ╩Σ╚δ╬╧╕╦╡──ú╩²: "))
  47. (MENUCMD "S=IN1")
  48. (SETQ Q (GETREAL "\n╟δ╩Σ╚δ╬╧╕╦╡─╠╪╨╘╧╡╩²: "))
  49. (SETQ Z1 (GETREAL "\n╟δ╩Σ╚δ╬╧╕╦╡─═╖╩²: "))
  50. (MENUCMD "S=IN2")
  51. (SETQ YY (GETSTRING "\n╟δ╩Σ╚δ┬▌╨²╖╜╧≥(R): "))
  52. (COND ((= YY "")(SETQ YY "R")))
  53. (MENUCMD "S=IN1")
  54. (SETQ ALF (GETREAL "\n╟δ╩Σ╚δ╬╧╕╦╡─╤╣┴ª╜╟(20): "))
  55. (COND ((= ALF NIL)(SETQ ALF 20)))
  56. (SETQ D (* M1 Q))
  57. (SETQ DT (+ (* M1 Q) (* 2 M1)))
  58. (SETQ DB (- (* M1 Q) (* 2.4 M1)))
  59. (SETQ GMA (ATAN Z1 Q))
  60. (SETQ T (* PI M1))
  61. (SETQ TT (* Z1 T))
  62. (SETQ D (* D S) DT (* DT S) DB (* DB S) T (* T S) TT (* TT S))
  63. (INPUT 0 M)
  64. (SETQ SL 0 DR (/ DT 2))
  65. (SETQ DL DR)
  66. (SETQ L (* L S) DGL (* DGL S) DGR (* DGR S))
  67. (DBSA1 XB 0)
  68. (SETQ B (LIST XB YB))
  69. (SETQ B1 (LIST (CAR TOPR) YB))
  70. (SETQ TOPL (LIST XB (+ YB (/ DB 2))))
  71. (SETQ TOPR (LIST (+ XB L) (CADR TOPL)))
  72. (COMMAND "LAYER" "N" "F2" "S" "F2" "L" "HIDDEN" "" "C" "G" "" "")
  73. (COMMAND "LINE" TOPL TOPR "")
  74. (COMMAND "MIRROR" "L" "" B B1 "N")
  75. (SETQ TOPL (LIST (- XB 0.1) (+ YB (/ D 2))))
  76. (SETQ TOPR (LIST (+ XB L 0.1) (CADR TOPL)))
  77. (COMMAND "LAYER" "N" "F7" "S" "F7" "L" "DASHDOT" "" "C" "R" "" "")
  78. (COMMAND "LINE" TOPL TOPR "")
  79. (COMMAND "MIRROR" "L" "" B B1 "N")
  80. (COMMAND "LAYER" "S" 0 "L" "" "" "")
  81. (SETQ DL1 D DR1 D L1 L LK1 Q DGL1 DGL DGR1 DGR)
  82. (SETQ BF1 (* (/ GMA PI) 180))
  83. (FN)
  84. (SETQ DL1 (/ DL1 S) DR1 (/ DR1 S) L1 (/ L1 S))
  85. (SETQ DGL1 (/ DGL1 S) DGR1 (/ DGR1 S))
  86. (attdef2)
  87. (ATTDEF1 "LK1" LK1 FPT)
  88. (ATTDEF1 "GPSZ1" "WB" FPT)
  89. (ATTDEF1 "M1" M1 FPT)
  90. (ATTDEF1 "BF1" BF1 FPT)
  91. (ATTDEF1 "ALF1" ALF FPT)
  92. (ATTDEF1 "Z11" Z1 FPT)
  93. (ATTDEF1 "DIR1" YY FPT)
  94. (command "block" no fpt "w" (list xb (- yb dR)) (list (+ xb l) (+ yb dR)) "")
  95. (command "insert" no fpt "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "")
  96. (XB1)
  97. ;(redraw)
  98. (MENUCMD "S=IN2")
  99. (SETQ YN (GETSTRING "\n╩╟╖±╝╠╨°╗¡═Γ▒φ├µ: "))
  100. (IF (OR (= YN "Y") (= YN "y"))
  101.  (PROGN(MENUCMD "I=YY")
  102.        (MENUCMD "I=*")
  103.  )
  104.                (MENUCMD "S=SCREEN")
  105. )
  106. )
  107. (WORMBAR)
  108.