home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 2000 April & May / AMIGA_2000_04.iso / amiga-magazin / visualengineer / ve-full.lha / arexx / VisualTexture.rexx < prev    next >
OS/2 REXX Batch file  |  1999-07-15  |  4KB  |  214 lines

  1. /*
  2.  
  3.    v1.02 Visual Texture
  4.  
  5.    Marko Seppänen
  6.    marko.seppanen@wwnet.fi
  7.  
  8. */
  9.  
  10.  
  11. address IMAGEENGINEER
  12.  
  13. Options results
  14. signal on error            /* Setup a place for errors to go */
  15.  
  16. 'REQUEST "Please select one of these effects." "1|2|3|4|Cancel"'
  17. res=result
  18. if res=="0" then exit
  19.  
  20.  
  21. /* Here we load a old savepath for textures */
  22.  
  23. if exists("ie:prefs/texturesavedir.cfg") == "1" then
  24.   do
  25.     call open("def","ie:prefs/texturesavedir.cfg","R")
  26.     defdir=readln("def")
  27.     call close("def")
  28.   end
  29. else
  30.   do
  31.     defdir="ram:"
  32.   end
  33.  
  34. 'GET_DIR "And where is the save-directory?" "DefaultSave"' defdir
  35. if RC=5 then exit
  36. texturesavedir=result
  37. endpart=right(texturesavedir,1)
  38. if endpart~=":" & endpart~="/" then texturesavedir=texturesavedir||"/"
  39.  
  40. call open("def","ie:prefs/texturesavedir.cfg","W")
  41. call writeln("def",texturesavedir)
  42. call close("def")
  43.  
  44.  
  45.  
  46. /* Let's have some textures */
  47.  
  48. 'GET_FILES "Choose some textures..." "Ok"' texturesavedir
  49. if RC=5 then exit
  50. filelist=result
  51.  
  52. do while filelist~=""
  53.   parse var filelist x1 ';' filelist
  54.   OPEN "'"x1"'" COLOUR
  55.   x1=result
  56.   MARK x1 PRIMARY
  57.  
  58.   select
  59.  
  60.     when res == 1 then do
  61.  
  62.       CONVOLVE x1 "IE:Convolves/Emboss_High"
  63.       x2=result
  64.  
  65.       CONVERT_TO_GREY x2
  66.       x3=result
  67.       CLOSE x2
  68.  
  69.       REFLECT_X x3
  70.       x4=result
  71.       CLOSE x3
  72.  
  73.       REFLECT_Y x4
  74.       x5=result
  75.       CLOSE x4
  76.  
  77.       MARK x1 ALPHA
  78.       MARK x5 SECONDARY
  79.       COMPOSITE 0 0 MIX 50
  80.       final=result
  81.       CLOSE x1
  82.       CLOSE x5
  83.  
  84.     end
  85.  
  86.     when res == 2 then do
  87.  
  88.       BRIGHTNESS x1 100
  89.       x2=result
  90.  
  91.       CONVOLVE x2 "IE:Convolves/Emboss_High"
  92.       x3=result
  93.       CLOSE x2
  94.  
  95.       CONVERT_TO_GREY x3
  96.       x4=result
  97.       CLOSE x3
  98.  
  99.       MARK x1 ALPHA
  100.       MARK x4 SECONDARY
  101.       COMPOSITE 0 0 SUBTRACT
  102.       final=result
  103.       CLOSE x1
  104.       CLOSE x4
  105.     end
  106.  
  107.  
  108.     when res == 3 then do
  109.  
  110.       'REQUEST "Sorry, I do not work well." "I know"'
  111.       exit
  112. /*
  113.       PROJECT_INFO x1 WIDTH
  114.       WIDTH=result
  115.       PROJECT_INFO x1 HEIGHT
  116.       HEIGHT=result
  117.  
  118.       RESIZE x1 WIDTH*2 HEIGHT*2 TILE
  119.       x2=result
  120.  
  121.       CROP x2 WIDTH/2 HEIGHT/2 WIDTH/2*3-1 HEIGHT/2*3-1
  122.       tmp=result
  123.       MARK tmp PRIMARY
  124.       CLOSE x1
  125.  
  126.       MINIMUM x2 5 5
  127.       x3=result
  128.       CLOSE x2
  129.  
  130.       CROP x3 WIDTH/2 HEIGHT/2 WIDTH/2*3-1 HEIGHT/2*3-1
  131.       x4=result
  132.       CLOSE x3
  133.  
  134.       CONVOLVE x4 "IE:Convolves/Emboss_High"
  135.       x5=result
  136.       CLOSE x4
  137.  
  138.       CONVERT_TO_GREY x5
  139.       x6=result
  140.       CLOSE x5
  141.  
  142.       MARK tmp ALPHA
  143.       MARK x6 SECONDARY
  144.       COMPOSITE 0 0 ALPHA
  145.       final=result
  146.       CLOSE x6
  147.       CLOSE tmp
  148. */
  149.     end
  150.  
  151.  
  152.     when res == 4 then do
  153.  
  154.       BRIGHTNESS x1 100
  155.       x2=result
  156.  
  157.       CONVOLVE x2 "IE:Convolves/Emboss_High"
  158.       x3=result
  159.       CLOSE x2
  160.  
  161.       CONVERT_TO_GREY x3
  162.       x4=result
  163.       CLOSE x3
  164.  
  165.       MARK x1 ALPHA
  166.       MARK x4 SECONDARY
  167.       COMPOSITE 0 0 ALPHA
  168.       final=result
  169.       CLOSE x1
  170.       CLOSE x4
  171.  
  172.     end
  173.  
  174.   otherwise
  175.     exit
  176.   end
  177.  
  178.  
  179. RENDER final
  180.  
  181. tmp=0
  182. do until test=0
  183.   test=exists(texturesavedir""tmp"-"x1)
  184.   if test=1 then do
  185.     tmp=tmp+1
  186.   end
  187. end
  188.  
  189. savename=texturesavedir""tmp"-"x1
  190.  
  191. SAVE final savename '"'ILBM CmpByteRun1'"'
  192. CLOSE final
  193.  
  194. end
  195. exit
  196.  
  197. /*******************************************************************/
  198. /* This is where control goes when an error code is returned by IE */
  199. /* It puts up a message saying what happened and on which line     */
  200. /*******************************************************************/
  201. error:
  202. if RC=5 then do            /* Did the user just cancel us? */
  203.     IE_TO_FRONT
  204.     LAST_ERROR
  205.     'REQUEST "'||RESULT||'"'
  206.     exit
  207. end
  208. else do
  209.     IE_TO_FRONT
  210.     LAST_ERROR
  211.     'REQUEST "Error detected!!!'||D2C(10)||'Image Engineer error message is as follows'||D2C(10)||result||D2C(10)||'Script failed on line '||SIGL||'"' 'Doh!'
  212.     exit
  213. end
  214.