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 / AddTexture.rexx < prev    next >
OS/2 REXX Batch file  |  1999-06-23  |  2KB  |  112 lines

  1. /*
  2.  
  3.    v1.00 AddTexture
  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.  
  17. if arg()=0 then exit
  18. x=arg(1)
  19. parse var x pic texturefile bordersize .
  20.  
  21.  
  22.  
  23. MARK pic PRIMARY
  24. PROJECT_INFO pic WIDTH
  25. picwidth=result
  26. PROJECT_INFO pic HEIGHT
  27. picheight=result
  28. PROJECT_INFO pic ZOOM
  29. origzoomval=result
  30.  
  31.  
  32. if texturefile="" then do
  33.  
  34.   if exists("ie:prefs/veaddtexture.cfg") == "1" then
  35.     do
  36.       call open("temp","ie:prefs/veaddtexture.cfg","R")
  37.       values=readln("temp")
  38.       parse var values ok texturefile bordersize .
  39.       call close("temp")
  40.     end
  41.   else
  42.     do
  43.       texturefile="<tileabletexturefile>"
  44.       bordersize=20
  45.     end
  46.  
  47.   'FORM "Add Texture" "Use|Cancel"',
  48.   'FILE,"Texturefile",'texturefile'',
  49.   'INTEGER,"Bordersize",1,1000,'bordersize',SLIDER'
  50.  
  51.   values=result
  52.   parse var values ok texturefile bordersize .
  53.  
  54.   if ok = 0 then exit
  55.  
  56.   call open("temp","ie:prefs/veaddtexture.cfg","W")
  57.   res=writeln("temp",values)
  58.   call close("temp")
  59.  
  60. end
  61.  
  62.  
  63.  
  64. if exists(strip(texturefile,B,'"')) == "0" then do
  65.  
  66.   'REQUEST "Please choose an existing tileable texture." "Sorry"'
  67.   exit
  68.  
  69. end
  70.  
  71.  
  72. OPEN texturefile COLOUR
  73. texture=result
  74.  
  75. PROJECT_SET texture ZOOM "1:4"
  76.  
  77. RESIZE texture picwidth+(bordersize*2) picheight+(bordersize*2) TILE
  78. tiled=result
  79.  
  80. CLOSE texture
  81.  
  82.  
  83.  
  84. MARK pic PRIMARY
  85. MARK tiled SECONDARY
  86. COMPOSITE bordersize bordersize MIX 100
  87. final=result
  88.  
  89.  
  90. CLOSE tiled
  91.  
  92.  
  93. exit
  94.  
  95. /*******************************************************************/
  96. /* This is where control goes when an error code is returned by IE */
  97. /* It puts up a message saying what happened and on which line     */
  98. /*******************************************************************/
  99. error:
  100. if RC=5 then do            /* Did the user just cancel us? */
  101.     IE_TO_FRONT
  102.     LAST_ERROR
  103.     'REQUEST "'||RESULT||'"'
  104.     exit
  105. end
  106. else do
  107.     IE_TO_FRONT
  108.     LAST_ERROR
  109.     'REQUEST "Error detected!!!'||D2C(10)||'Image Engineer error message is as follows'||D2C(10)||result||D2C(10)||'Script failed on line '||SIGL||'"' 'Doh!'
  110.     exit
  111. end
  112.