|
(PHP 4 >= 4.0.5)
SWFMorph - создаёт новый SWFMorph-объект. Описание
new swfmorph (void)
Предупреждение! |
Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.
|
Называется также "shape tween".
Методы здесь несколько странные. Было бы понятнее просто newSWFMorph(shape1, shape2);,
но, поскольку имеем то, что имеем, необходим shape2 как вторая часть morph. (Это
потому что она начинает записывать свой вывод сразу при получении команд
рисования - она сохраняет своё собственное описание фигур, и записывать это и
ещё некоторые вещи по завершении было бы намного проще.) SWFMorph имеет следующие методы:
swfmorph->getshape1() и swfmorph->getshape1().
В примере morph большой красный квадрат в маленький голубой квадрат с чёрной рамкой.
Пример 1. swfmorph()
<?php
$p = new SWFMorph();
$s = $p->getShape1();
$s->setLine(0,0,0,0);
/* Обратите внимание, что это противоположно нормальным фигурам (left вместо right).
Я не знаю, почему, но, похоже, это работает ... */
$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();
?> |
|
| |