#!/bin/csh -f
#
#
#
if ($#argv != 1) then
   echo Usage\: spin file.rle
   exit
else
   set rlein = $1
   set rleout = $1:r-spin.rle
endif
if (-e $rleout) then
   echo $rleout exists.  Do you wish to overwrite this file\(y/n\)\?
   set answer = $<
   if ($answer == y) then
      rm -f $rleout
   else
      exit
   endif
endif
#
#
set tmp = /usr/tmp/junk.$$.rle
set back = /usr/tmp/back.$$.rle
@ xsize = `rlehdr -h -b $rlein | awk -F'[' '{print $3}' | awk -F, '{printf $1}'`
@ ysize = `rlehdr -h -b $rlein | awk -F']' '{print $2}' | awk -F, '{printf $2}'`
@ width = `echo 1.2 $xsize | nawk '{print int($1*$2)}'`
@ height = $width
rlebg -s $width $height -v 0.1 0.9 20 20 240 >$back
#
#
#
@ deg = 0
@ inc = 10
while ($deg < 360)
   echo $deg degrees...
   if ($deg <= 45) then
      repos -p 1000 1000 $rlein | fant -a $deg > $tmp
   else if ($deg <= 135) then
      @ i = $deg - 90
      rleflip -r $rlein | repos -p 1000 1000 | fant -a $i >$tmp
   else if ($deg <= 225) then
      @ i = $deg - 180
      rleflip -h $rlein | rleflip -v | repos -p 1000 1000 | fant -a $i >$tmp
   else if ($deg <= 315) then
      @ i = $deg - 270
      rleflip -l $rlein | repos -p 1000 1000 | fant -a $i >$tmp
   else
      @ i = $deg - 360
      repos -p 1000 1000 $rlein | fant -a $i >$tmp
   endif
   @ xsize=`rlehdr -h -b $tmp | awk -F'[' '{print $3}'| awk -F, '{printf $1}'`
   @ ysize=`rlehdr -h -b $tmp | awk -F']' '{print $2}'| awk -F, '{printf $2}'`
   @ xpos = `echo $width $xsize | nawk '{print int($1/2 - $2/2)}'`
   @ ypos = `echo $height $ysize | nawk '{print int($1/2 - $2/2)}'`
   crop -b $tmp | repos -p $xpos $ypos | rlecomp - over $back >>$rleout
   @ deg += $inc
end
rm $back $tmp
echo Created $rleout
