#!/bin/bash # # how to run this mess in a batch style # INCFILE="WS/bloubs.inc" TMPPNG="/dev/shm/bloubs7.png" POVOPT="+Q9 -a -v -d -W1600 -H1200 -WT2" DDIR="frames/a" LOGERR="log.error" TXTCOLOR="#db7000" # --- put the work file in ramdisk BLBS_IN="/dev/shm/in.blbs" BLBS_OUT="/dev/shm/out.blbs" NBIMG=120 make all err=$? if [ $err -ne 0 ] ; then echo 'make error code is = ' $err exit 1 fi printf "\n#declare NbImg = %d;\n" $NBIMG > WS/nbimg.inc # # first, we have to make a seminal buch of bloubs # --> this function need to be parametrizable # ./genbloubs ${BLBS_IN} 50 for idx in $(seq 0 $((NBIMG-1)) ) do echo "======== run passe $idx =========" ./exportbloubs ${BLBS_IN} | awk -f toinc.awk > $INCFILE povray -Iscene.pov -K${idx} -O${TMPPNG} ${POVOPT} 2> $LOGERR if [ 0 -ne $? ] ; then tail -15 $LOGERR sleep 90 fi td=$(date -u +'%F %R:%S' | tr '01' 'ol') hi=$(printf "#%05d" $idx | tr '01' 'ol') count=$(tail -1 "WS/log.nb_bloubs") PNG=$(printf "%s/%05d.png" ${DDIR} $idx) convert ${TMPPNG} \ -font Courier-Bold \ -pointsize 28 \ -fill "$TXTCOLOR" \ -gravity south-east \ -annotate +25+5 "$td" \ -gravity south-west \ -annotate +25+5 "$hi" \ -pointsize 48 \ -gravity north-east \ -annotate +45+5 "$count" \ -gravity north-west \ -annotate +45+5 "BloubWorld" \ $PNG echo $PNG '[done]' ./movebloubs ${BLBS_IN} ${BLBS_OUT} ./mergebloubs ${BLBS_OUT} ${BLBS_IN} # mv ${BLBS_OUT} ${BLBS_IN} echo sleep 90 done rm $LOGERR nice ./encode.sh