Учебник РНР
НазадВперёд

SWFShape->addFill

(unknown)

SWFShape->addFill - добавляет сплошное заполнение фигуре.

Описание

void swfshape->addfill (int red, int green, int blue [, int a])

Предупреждение!

Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

void swfshape->addfill (SWFbitmap bitmap [, int flags])

Предупреждение!

Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

void swfshape->addfill (SWFGradient gradient [, int flags])

Предупреждение!

Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

swfshape->addfill() добавляет сплошное заполнение к списку стилей заполнения фигуры. swfshape->addfill() принимает три различных типа аргументов.

red, green, blue это цвет (режим RGB). Последний параметр a не обязателен.

Аргумент bitmap это swfbitmap()-объект. Аргумент flags может иметь одно из значений: SWFFILL_CLIPPED_BITMAP или SWFFILL_TILED_BITMAP. По умолчанию SWFFILL_TILED_BITMAP. Я так думаю.

Аргумент gradient это swfgradient()-объект. Аргумент flags может иметь одно из значений: SWFFILL_RADIAL_GRADIENT или SWFFILL_LINEAR_GRADIENT. По умолчанию SWFFILL_LINEAR_GRADIENT. Насчёт этого я уверен. Действительно.

swfshape->addfill() возвращает swffill()-объект для использования с функциями swfshape->setleftfill() и swfshape->setrightfill(), описанными далее.

См. также swfshape->setleftfill() и swfshape->setrightfill().

В этом простом примере рисуется кадр на растре. А, вот и другой баглет во flash-плэйере - похоже он не слишком беспокоится о трансформации растра второй фигуры в morph. В соответствии со спецификацией, растр должен в этом примере растянуться вместе с фигурой.
Пример 1. swfshape->addfill()
<?php

  $p = new SWFMorph();

  $b = new SWFBitmap("alphafill.jpg");
  // использовать ваш собственный растр
  $width = $b->getWidth();
  $height = $b->getHeight();

  $s = $p->getShape1();
  $f = $s->addFill($b, SWFFILL_TILED_BITMAP);
  $f->moveTo(-$width/2, -$height/4);
  $f->scaleTo(1.0, 0.5);
  $s->setLeftFill($f);
  $s->movePenTo(-$width/2, -$height/4);
  $s->drawLine($width, 0);
  $s->drawLine(0, $height/2);
  $s->drawLine(-$width, 0);
  $s->drawLine(0, -$height/2);

  $s = $p->getShape2();
  $f = $s->addFill($b, SWFFILL_TILED_BITMAP);

  // эти два не оказываю действия!
  $f->moveTo(-$width/4, -$height/2);
  $f->scaleTo(0.5, 1.0);

  $s->setLeftFill($f);
  $s->movePenTo(-$width/4, -$height/2);
  $s->drawLine($width/2, 0);
  $s->drawLine(0, $height);
  $s->drawLine(-$width/2, 0);
  $s->drawLine(0, -$height);

  $m = new SWFMovie();
  $m->setDimension($width, $height);
  $i = $m->add($p);
  $i->moveTo($width/2, $height/2);

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

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


Назад Оглавление Вперёд
SWFMovie ВверхSWFShape->drawCurve