home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / GFX / Raytracing / Raytracer / LW5VT09.LHA / Toaster / Arexx_examples / lwm / RockGen.lwm < prev    next >
Encoding:
Text File  |  1996-06-10  |  1.6 KB  |  86 lines

  1. /* CMD: RockGen
  2.  *
  3.  * Test requester from ARexx to Modeler.
  4.  */
  5.  
  6. /* trace results */
  7.  
  8. address "LWModelerARexx.port"
  9. libadd = addlib("LWModelerARexx.port",0)
  10.  
  11. check = addlib("rexxmathlib.library",0,-30,0)
  12.  
  13. /* -- Main code body -- */
  14.  
  15. say "rockgen.lwm"
  16. call req_begin "Bony's Rock Generator"
  17.  
  18.  
  19. id6 = req_addcontrol("Rock Segments",'N',0)
  20.  
  21. call req_setval id6, 8
  22.  
  23. x = req_post()
  24. if (x) then do
  25.     say "Ok"
  26.     say req_getval(id6)
  27.     suck = req_getval(id6)
  28.     say
  29.  
  30.  
  31.  
  32. boxshape = " l-1 "||"h1 "||"n"||suck
  33. sphereshape = " center0 radius1 nsides"||suck||" nsegments"||suck
  34.  
  35.  
  36. /* MAKEBOX||boxshape */
  37. MAKEBALL||sphereshape
  38.  
  39.  
  40. say ket
  41. say sphereshape
  42. Jitx = RANDOM(500,600,time('s'))
  43. Jity = RANDOM(650,950,time('s'))
  44. Jitz = RANDOM(500,600,time('s'))
  45. ROT1 = RANDOM(30,160,time('s'))
  46. ROT2 = RANDOM(30,160,time('s'))
  47. ROT3 = RANDOM(10,170,time('s'))
  48. jitx = jitx * .001
  49. jity = jity * .001
  50. jitz = jitz * .001
  51.  
  52. Jitstr = " "||jitx||" "||jity||" "||jitz
  53. JITTER||Jitstr
  54. Centstr1 = " center0"||" axis Y"||" angle"||ROT1
  55. Centstr2 = " center0"||" axis X"||" angle"||ROT2
  56. Centstr3 = " center0"||" axis Z"||" angle"||ROT3
  57. ROTATE||Centstr1
  58. ROTATE||Centstr2
  59. JITTER||Jitstr
  60. say jitstr
  61. ROTATE||Centstr3
  62. if suck < 2 then suck = 2
  63. dropsuck = suck - 3
  64. if dropsuck < 1 then dropsuck=1
  65. do dropsuck
  66.         SMOOTH s2 i20
  67.         say dropsuck
  68.         end
  69. jitx = jitx * .15
  70. jity = jity * .15
  71. jitz = jitz * .15
  72.  
  73. Jitstr = " "||jitx||" "||jity||" "||jitz
  74. JITTER||Jitstr
  75.  
  76. say jitstr
  77. say Centstr1
  78. say Centstr2
  79. say Centstr3
  80. end; else say "Canceled"
  81.  
  82. /* -- End Main code -- */
  83.  
  84. if (libadd) then call remlib("LWModelerARexx.port")
  85. exit
  86.