文字

SWFMorph::__construct

(PHP 5 <= 5.3.0, PECL ming SVN)

SWFMorph::__constructCreates a new SWFMorph object

说明

SWFMorph::__construct ( void )
Warning

此函数是实验性的。此函数的表象,包括名称及其相关文档都可能在未来的 PHP 发布版本中未通知就被修改。使用本函数风险自担 。

Creates a new SWFMorph object.

Also called a "shape tween". This thing lets you make those tacky twisting things that make your computer choke. Oh, joy!

范例

This simple example will morph a big red square into a smaller blue black-bordered square.

Example #1 swfmorph() example

<?php
  $p 
= new  SWFMorph ();

  
$s  $p -> getShape1 ();
  
$s -> setLine ( 0 0 0 0 );

  


  
$s -> setLeftFill ( $s -> addFill ( 0xff 0 0 ));
  
$s -> movePenTo (- 1000 ,- 1000 );
  
$s -> drawLine ( 2000 , 0 );
  
$s -> drawLine ( 0 , 2000 );
  
$s -> drawLine (- 2000 , 0 );
  
$s -> drawLine ( 0 ,- 2000 );

  
$s  $p -> getShape2 ();
  
$s -> setLine ( 60 , 0 , 0 , 0 );
  
$s -> setLeftFill ( $s -> addFill ( 0 0 0xff ));
  
$s -> movePenTo ( 0 ,- 1000 );
  
$s -> drawLine ( 1000 , 1000 );
  
$s -> drawLine (- 1000 , 1000 );
  
$s -> drawLine (- 1000 ,- 1000 );
  
$s -> drawLine ( 1000 ,- 1000 );

  
$m  = new  SWFMovie ();
  
$m -> setDimension ( 3000 , 2000 );
  
$m -> setBackground ( 0xff 0xff 0xff );

  
$i  $m -> add ( $p );
  
$i -> moveTo ( 1500 , 1000 );

  for (
$r = 0.0 $r <= 1.0 $r += 0.1 ) {
    
$i -> setRatio ( $r );
    
$m -> nextFrame ();
  }

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

用户评论:

[#1] mark omohundro, ajamyajax dot com [2009-02-22 10:07:59]

<?php
  
// with a few changes to the example above --
  // looks like SWFMorph() can also be used to DISSOLVE a shape...
  // Shape2's fill below is set to same movie setBackground() color,
  // and its setLine() parameter #1 for weight is set to zero.
  // smaller seems to look a little better with this also...

  
$rbg 0x66// 102
  
$gbg 0x99// 153
  
$bbg 0xCD// 205

  
$p = new SWFMorph();

  
$s $p->getShape1();
  
$s->setLine(0000);
  
$s->setLeftFill($s->addFill(0xff00));
  
$s->movePenTo(-1000,-1000);
  
$s->drawLine(2000,0);
  
$s->drawLine(0,2000);
  
$s->drawLine(-2000,0);
  
$s->drawLine(0,-2000);

  
$s $p->getShape2();
  
$s->setLine(0,0,0,0);  // changed from (60,0,0,0)
  
$s->setLeftFill($s->addFill($rbg$gbg$bbg));  // new color to match
  
$s->movePenTo(0,-1000);
  
$s->drawLine(1000,1000);
  
$s->drawLine(-1000,1000);
  
$s->drawLine(-1000,-1000);
  
$s->drawLine(1000,-1000);

  
$m = new SWFMovie();
  
$m->setDimension(6000,4000);
  
$m->setBackground($rbg$gbg$bbg);

  
$i $m->add($p);
  
$i->moveTo(3000,2000);

  for (
$r=0.0$r<=1.0$r+=0.1) {
    
$i->setRatio($r);
    
$m->nextFrame();
  }
  
$m->add(new SWFAction("stop();"));
  
$m->nextFrame();

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

上一篇: 下一篇: