Subversion Repositories wimsdev

Rev

Rev 562 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
535 bpr 1
#! /bin/sh
2
# This is a script to break a gif photo into pieces.
3
# Flydraw is used to do it.
4
 
5
cd `dirname $0`
6
flydraw=../../../../other/bin/flydraw
562 bpr 7
pics=`cd ../photos; ls *.gif | sed 's/.gif$//'`
535 bpr 8
levels="2x2 2x3 3x3 3x4 4x5"
9
 
10
p=`echo $pics`
11
echo !set photos=$p >photindex
12
echo !set levels=!words2items $levels >>photindex
13
 
14
for name in $pics
15
do
563 bpr 16
if [ "$name" = "small" ]; then continue; fi
535 bpr 17
if [ ! -d pieces/$name ] || [ pieces/$name -ot photos/$name.gif ]; then
562 bpr 18
photo=../photos/$name.gif
19
#siz=`(identify -verbose '%x:%y' $photo | grep -i 'geometry:' \
20
#     | grep -iv page | awk '{print $2}') 2>/dev/null`
21
siz=`identify -format '%wx%h' $photo`
535 bpr 22
if [ -z "$siz" ]; then
23
 echo ImageMagick missing in your system. Impossible to cut photos.
24
 echo Program aborted.
25
 exit
26
fi
27
sizex=`echo $siz | awk -F x '{print $1}'`
28
sizey=`echo $siz | awk -F x '{print $2}'`
29
echo Cutting $photo: $sizex x $sizey
30
 
562 bpr 31
mkdir -pm 755 pieces
535 bpr 32
if [ ! -d pieces/$name ]; then mkdir -m 755 pieces/$name; fi
33
touch pieces/$name
34
 
35
for q in $levels
36
do
37
 echo q=$q
38
 qy=`echo $q | awk -F x '{print $1}'`
39
 qx=`echo $q | awk -F x '{print $2}'`
40
 if [ ! -d pieces/$name/$q ]; then mkdir -m 755 pieces/$name/$q; fi
41
 xp=`expr $sizex / $qx`
42
 yp=`expr $sizey / $qy`
43
 xpp=`expr $xp - 1`
44
 ypp=`expr $yp - 1`
45
 x=0
46
 while [ $x -lt $qx ]; do
47
  xstart=`expr $xp \* $x`
48
  xend=`expr $xstart + $xp - 2`
49
  y=0
50
  while [ $y -lt $qy ]; do
51
   ystart=`expr $yp \* $y`
52
   yend=`expr $ystart + $yp - 2`
53
   $flydraw pieces/$name/$q/p.$x.$y.gif <<@
54
new
55
size $xpp,$ypp
56
fill 0,0,192,192,192
57
copy 0,0,$xstart,$ystart,$xend,$yend,$photo
58
@
59
   y=`expr $y + 1`
60
  done
61
  x=`expr $x + 1`
62
 done
63
# $flydraw -o pieces/$name/$q/p.bad.gif <<@ 2>/dev/null
64
#new
65
#size $xp,$yp
66
#fill 0,0,0,0,0
67
#@
68
 chmod a+r pieces/$name/$q/*.gif
69
done
70
 
71
fi
72
done