SWFDisplayItem->setRatio

(no version information, might be only in CVS)

SWFDisplayItem->setRatio -- Sets the object's ratio

Description

void swfdisplayitem->setratio ( float ratio )

警示

本函數是實驗性的。本函數的行為,內含函數名稱以及其它任何關於本函數的文件可能會在沒有知會的情況下隨 PHP 以後的發佈而改變。使用本函數風險自擔。

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.

例子 1. swfdisplayitem->setname() example

<?php

  $p 
= new SWFMorph();

  
$g = new SWFGradient();
  
$g->addEntry(0.0000);
  
$g->addEntry(0.160xff0xff0xff);
  
$g->addEntry(0.32000);
  
$g->addEntry(0.480xff0xff0xff);
  
$g->addEntry(0.64000);
  
$g->addEntry(0.800xff0xff0xff);
  
$g->addEntry(1.00000);

  
$s $p->getShape1();
  
$f $s->addFill($gSWFFILL_RADIAL_GRADIENT);
  
$f->scaleTo(0.05);
  
$s->setLeftFill($f);
  
$s->movePenTo(-160, -120);
  
$s->drawLine(3200);
  
$s->drawLine(0240);
  
$s->drawLine(-3200);
  
$s->drawLine(0, -240);

  
$g = new SWFGradient();
  
$g->addEntry(0.0000);
  
$g->addEntry(0.160xff00);
  
$g->addEntry(0.32000);
  
$g->addEntry(0.4800xff0);
  
$g->addEntry(0.64000);
  
$g->addEntry(0.80000xff);
  
$g->addEntry(1.00000);

  
$s $p->getShape2();
  
$f $s->addFill($gSWFFILL_RADIAL_GRADIENT);
  
$f->scaleTo(0.05);
  
$f->skewXTo(1.0);
  
$s->setLeftFill($f);
  
$s->movePenTo(-160, -120);
  
$s->drawLine(3200);
  
$s->drawLine(0240);
  
$s->drawLine(-3200);
  
$s->drawLine(0, -240);

  
$m = new SWFMovie();
  
$m->setDimension(320240);
  
$i $m->add($p);
  
$i->moveTo(160120);

  for (
$n=0$n<=1.001$n+=0.01) {
    
$i->setRatio($n);
    
$m->nextFrame();
  }

  
header('Content-type: application/x-shockwave-flash');
  
$m->output();
?>