#! /bin/csh -f # # make a repetitive O macro # set script = example.com set start = 1 set end = 6 set step = 0.05 # rocking viewpoint set rock_range = 20 # degrees set rock_period = 50 # frames set frame = 0 set num = $start # fix direction of step set step = `echo "$step $start $end" | nawk '$2<=$3{print sqrt($1*$1)+0} $2>$3{print 0 - sqrt($1*$1)}'` if($step == 0) exit while( "$num" != "$end" ) # compute movie frame number set frame = `echo $frame | nawk '{printf "%04d\n", $1+1}'` # actual number of interest set num = `echo "$start $frame $step" | nawk '{print $1+$2*$3}'` set num = `echo "$num $step $end" | nawk '{num=$1} num<$3 && $2<0{num=$3} num>$3 && $2>0{num=$3} {print num}'` # neat version of number for printing on frame set printnum = `echo $num | nawk '{printf "%.1fA\n", $1}'` # generate sinusoidal rotation set rot_step = `echo "$frame $rock_range $rock_period" | nawk '{print ($2*3.1415927/$3)*sin((6.2831853/$3)*$1)}'` # create the desired map cat << EOF \$ $script $num map_cache map_active_center map_file this.omap map_object map map_parameter 20 20 20 1 white 0.5 0 1 map_draw rot_pic y $rot_step \$ scrsave temp.rgb 320 1271 136 848 \$ label.com $printnum \$ mv temp.gif87 ${frame}.gif EOF end exit