SWFDisplayItem->setRatio SWFDisplayItem->setRatio (no version information, might be only in CVS)
SWFDisplayItem->setRatio -- Sets the object's ratio
Description void
swfdisplayitem->setratio ( float ratio )
Warning This function is
EXPERIMENTAL . The behaviour of this function, the
name of this function, and anything else documented about this
function may change without notice in a future release of PHP.
Use this function at your own risk.
swfdisplayitem->setratio() sets the object's ratio
to ratio . Obviously only useful for morphs.
The object may be a swfshape() , a
swfbutton() , a swftext() or a
swfsprite() object. It must have been added using
the swfmovie->add() .
This simple example will morph nicely three concentric circles.
Example 1. swfdisplayitem->setname() example
<?php $p = new SWFMorph (); $g = new SWFGradient (); $g -> addEntry ( 0.0 , 0 , 0 , 0 ); $g -> addEntry ( 0.16 , 0xff , 0xff , 0xff ); $g -> addEntry ( 0.32 , 0 , 0 , 0 ); $g -> addEntry ( 0.48 , 0xff , 0xff , 0xff ); $g -> addEntry ( 0.64 , 0 , 0 , 0 ); $g -> addEntry ( 0.80 , 0xff , 0xff , 0xff ); $g -> addEntry ( 1.00 , 0 , 0 , 0 ); $s = $p -> getShape1 (); $f = $s -> addFill ( $g , SWFFILL_RADIAL_GRADIENT ); $f -> scaleTo ( 0.05 ); $s -> setLeftFill ( $f ); $s -> movePenTo (- 160 , - 120 ); $s -> drawLine ( 320 , 0 ); $s -> drawLine ( 0 , 240 ); $s -> drawLine (- 320 , 0 ); $s -> drawLine ( 0 , - 240 ); $g = new SWFGradient (); $g -> addEntry ( 0.0 , 0 , 0 , 0 ); $g -> addEntry ( 0.16 , 0xff , 0 , 0 ); $g -> addEntry ( 0.32 , 0 , 0 , 0 ); $g -> addEntry ( 0.48 , 0 , 0xff , 0 ); $g -> addEntry ( 0.64 , 0 , 0 , 0 ); $g -> addEntry ( 0.80 , 0 , 0 , 0xff ); $g -> addEntry ( 1.00 , 0 , 0 , 0 ); $s = $p -> getShape2 (); $f = $s -> addFill ( $g , SWFFILL_RADIAL_GRADIENT ); $f -> scaleTo ( 0.05 ); $f -> skewXTo ( 1.0 ); $s -> setLeftFill ( $f ); $s -> movePenTo (- 160 , - 120 ); $s -> drawLine ( 320 , 0 ); $s -> drawLine ( 0 , 240 ); $s -> drawLine (- 320 , 0 ); $s -> drawLine ( 0 , - 240 ); $m = new SWFMovie (); $m -> setDimension ( 320 , 240 ); $i = $m -> add ( $p ); $i -> moveTo ( 160 , 120 ); for ( $n = 0 ; $n <= 1.001 ; $n += 0.01 ) { $i -> setRatio ( $n ); $m -> nextFrame (); } header ( 'Content-type: application/x-shockwave-flash' ); $m -> output (); ?>