[BACK] [FORWARD] [Tutorial] [Table of Contents]


BatmanTransition


The following Rivl procedure uses two modifications of the whirlpool effect the cheesy transition effect often combined with the old Batman series.

proc ForwardWhirlpool {image p} {
        im_scaleC! image [expr 1- $p]
        im_rotateC! image [expr 3600 * $p]
        return $image
        }
proc BackwardWhirlpool {image p} {
        im_scaleC! image $p
        im_rotateC! image [expr -3600 * $p]
        return $image
        }

proc BatmanTransition {movieA movieB} {
	set in [seq_map $movieA { ForwardWhirlpool %1 %p }]
	set out [seq_map $movieB { BackwardWhirlpool %1 %p }]
	seq_concat $in $out
	}
The first procedure ForwardWhirlpool rotates the sequence to the right ten times (3600 degrees), making it smaller each time. The second procedure does the exact opposite. BatmanTransition takes advantage of seq_map to spin and scale each frame in the sequences depending on the relative time of the image (%p).
Click on the image to see the output from this procedure after making the call

BatmanTransition football_seq bike_seq















[Top]