#!/bin/sh # syntax: $0 # Christopher Alexander North-Keys # Incept: 2002-11-06 06:30:27 CST (Nov Wed) 1036585827 # Capture of the originals # xanim vmoon2.mpg # i=0 ; while [ $i -le 29 ] ; do num=`printf '%02d' $i` ; echo ready for frame '#'$num: | tr -d '\012' ; read toss ; import -windowid 0x2e00002 -comment "moon phase #$num of [0-28]" phase-$num.png ; i=`expr $i + 1` ; done # for f in *.png ; do convert $f `echo $f | sed 's/png$/gif/'` ; done sizes="320 256 160 128 80 64 48 32 24 16" sizes="24" for size in $sizes ; do [ -d $size ] || mkdir $sizes cp Originals/index.html $size/ ./MaskGen $size $size/mask.gif # use depth 16 to force not to use 1-bit gray, which confused convert. convert -depth 16 $size/mask.gif $size/mask.png for num in `range -2 0 29` ; do png=phase-$num.png gif=phase-$num.gif adjust='-gamma 1 -modulate 140' compop='Minus' echo generating "$size/phase-$num.{png,gif}" convert $adjust -geometry ${size}x${size} -depth 24 Originals/$png ${size}/tmp0.png convert $adjust -geometry ${size}x${size} Originals/$gif ${size}/tmp0.gif composite -compose $compop $size/tmp0.png $size/mask.png $size/tmp1.png composite -compose $compop $size/tmp0.gif $size/mask.gif $size/tmp1.gif convert -matte -transparent '#000000' ${size}/tmp1.png ${size}/$png convert -transparent '#000000' ${size}/tmp1.gif ${size}/$gif /bin/rm ${size}/tmp*.{gif,png} done ( cd ${size} && convert -loop 0 -delay 25 phase-[0-9][0-9].gif phases.gif ) done #------------------------------------------------------------eof