Fortraneries/BloubWorld/runme.sh

94 lines
1.8 KiB
Bash
Raw Normal View History

2022-02-07 09:45:08 +11:00
#!/bin/bash
#
# how to run this mess in a batch style
#
2022-02-19 05:30:10 +11:00
INCFILE="WS/bloubs.inc"
2022-02-07 09:45:08 +11:00
TMPPNG="/dev/shm/bloubs7.png"
2024-01-30 23:32:43 +11:00
POVOPT="+Q9 +a -v -d -W1024 -H768 -WT2"
2022-03-18 22:21:40 +11:00
DDIR="frames/a"
2022-02-07 11:50:49 +11:00
LOGERR="log.error"
2024-01-30 23:32:43 +11:00
TXTCOLOR="#db4090"
2022-02-07 09:45:08 +11:00
BLOUBDATAS="WS/bloubs.data"
BARYDATAS="WS/log.barycentres"
2022-02-17 01:59:42 +11:00
# --- put the work file in ramdisk
2022-02-10 05:51:42 +11:00
BLBS_IN="/dev/shm/in.blbs"
BLBS_OUT="/dev/shm/out.blbs"
2024-01-28 10:06:57 +11:00
NBIMG=2000
2022-02-09 04:56:51 +11:00
2022-02-07 09:45:08 +11:00
make all
err=$?
if [ $err -ne 0 ] ; then
2022-02-10 05:51:42 +11:00
echo 'make error code is = ' $err
2022-02-07 09:45:08 +11:00
exit 1
fi
2022-02-07 12:09:54 +11:00
2022-02-19 05:30:10 +11:00
printf "\n#declare NbImg = %d;\n" $NBIMG > WS/nbimg.inc
2022-02-09 04:56:51 +11:00
2022-02-07 09:45:08 +11:00
#
# first, we have to make a seminal buch of bloubs
2022-02-17 01:59:42 +11:00
# --> this function need to be parametrizable
2022-02-07 09:45:08 +11:00
#
2024-02-07 03:03:00 +11:00
./genbloubs ${BLBS_IN} 2
2022-02-07 09:45:08 +11:00
2022-03-18 22:21:40 +11:00
for idx in $(seq 0 $((NBIMG-1)) )
2022-02-07 09:45:08 +11:00
do
2024-01-30 23:32:43 +11:00
echo "================= run passe $idx ===================="
2022-02-07 09:45:08 +11:00
2024-01-28 10:06:57 +11:00
# make the bloubs's data readable by POVray
#
./exportbloubs ${BLBS_IN} > $BLOUBDATAS
awk -f toinc.awk < $BLOUBDATAS > $INCFILE
awk '{ print $1, $2, $3 }' < $BLOUBDATAS > $BARYDATAS
2022-02-07 09:45:08 +11:00
2024-01-28 10:06:57 +11:00
echo "### raytracing pass $idx"
2022-02-07 11:50:49 +11:00
povray -Iscene.pov -K${idx} -O${TMPPNG} ${POVOPT} 2> $LOGERR
2022-02-08 12:53:49 +11:00
if [ 0 -ne $? ] ; then
tail -15 $LOGERR
2024-01-26 07:44:49 +11:00
sleep 90
2022-02-08 12:53:49 +11:00
fi
2024-01-30 23:32:43 +11:00
td=$(date -u +'%F %R' | tr '01' 'ol')
2024-01-28 10:06:57 +11:00
hi=$(printf "#%04d" $idx | tr '01' 'ol')
2024-01-30 23:32:43 +11:00
count=$(tail -1 "WS/log.nb_bloubs" | tr '01' 'ol')
2022-02-19 05:30:10 +11:00
2022-02-07 09:45:08 +11:00
PNG=$(printf "%s/%05d.png" ${DDIR} $idx)
convert ${TMPPNG} \
2022-02-11 20:23:13 +11:00
-font Courier-Bold \
2024-01-30 23:32:43 +11:00
-pointsize 32 \
2022-03-19 09:41:42 +11:00
-fill "$TXTCOLOR" \
2022-02-07 09:45:08 +11:00
-gravity south-east \
2022-03-18 22:21:40 +11:00
-annotate +25+5 "$td" \
2022-02-10 05:51:42 +11:00
-gravity south-west \
2022-03-18 22:21:40 +11:00
-annotate +25+5 "$hi" \
2022-02-19 05:30:10 +11:00
-gravity north-east \
2022-03-26 08:42:15 +11:00
-annotate +45+5 "$count" \
2022-03-18 22:21:40 +11:00
-gravity north-west \
2022-03-26 08:42:15 +11:00
-annotate +45+5 "BloubWorld" \
2022-02-07 09:45:08 +11:00
$PNG
2024-02-07 03:03:00 +11:00
echo ' ' $PNG '[done]'
2022-02-07 09:45:08 +11:00
2022-02-10 05:51:42 +11:00
./movebloubs ${BLBS_IN} ${BLBS_OUT}
2022-03-26 08:42:15 +11:00
./mergebloubs ${BLBS_OUT} ${BLBS_IN}
# mv ${BLBS_OUT} ${BLBS_IN}
2024-01-28 10:06:57 +11:00
echo "### run done"
2024-02-07 03:03:00 +11:00
sleep 35
2022-02-07 09:45:08 +11:00
done
2022-02-07 11:50:49 +11:00
rm $LOGERR
2022-02-07 09:45:08 +11:00
2022-02-17 01:59:42 +11:00
nice ./encode.sh
2022-02-07 09:45:08 +11:00