<HTML ><HEAD ><TITLE >SWFDisplayItem->rotateTo</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="HOME" TITLE="PHP Manual" HREF="index.html"><LINK REL="UP" TITLE="Ming functions for Flash" HREF="ref.ming.html"><LINK REL="PREVIOUS" TITLE="SWFDisplayItem->Rotate" HREF="function.swfdisplayitem.rotate.html"><LINK REL="NEXT" TITLE="SWFDisplayItem->scale" HREF="function.swfdisplayitem.scale.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=ISO-8859-1"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP Manual</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.swfdisplayitem.rotate.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.swfdisplayitem.scale.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.swfdisplayitem.rotateto" ></A >SWFDisplayItem->rotateTo</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN53414" ></A ><P > (no version information, might be only in CVS)</P >SWFDisplayItem->rotateTo -- Rotates the object in global coordinates.</DIV ><DIV CLASS="refsect1" ><A NAME="AEN53417" ></A ><H2 >Description</H2 >void <B CLASS="methodname" >swfdisplayitem->rotateto</B > ( float degrees)<BR ></BR ><DIV CLASS="warning" ><P ></P ><TABLE CLASS="warning" BORDER="1" WIDTH="100%" ><TR ><TD ALIGN="CENTER" ><B >Warning</B ></TD ></TR ><TR ><TD ALIGN="LEFT" ><P >This function is <SPAN CLASS="emphasis" ><I CLASS="emphasis" >EXPERIMENTAL</I ></SPAN >. 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.</P ></TD ></TR ></TABLE ></DIV ><P > <B CLASS="function" >swfdisplayitem->rotateto()</B > set the current object rotation to <TT CLASS="parameter" ><I >degrees</I ></TT > degrees in global coordinates. </P ><P > The object may be a <A HREF="function.swfshape.html" ><B CLASS="function" >swfshape()</B ></A >, a <A HREF="function.swfbutton.html" ><B CLASS="function" >swfbutton()</B ></A >, a <A HREF="function.swftext.html" ><B CLASS="function" >swftext()</B ></A > or a <A HREF="function.swfsprite.html" ><B CLASS="function" >swfsprite()</B ></A > object. It must have been added using the <B CLASS="function" >swfmovie->add()</B >. </P ><P > This example bring three rotating string from the background to the foreground. Pretty nice. <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN53438" ></A ><P ><B >Example 1. <B CLASS="function" >swfdisplayitem->rotateto()</B > example</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="php" ><?php $thetext = "ming!"; $f = new SWFFont("Bauhaus 93.fdb"); $m = new SWFMovie(); $m->setRate(24.0); $m->setDimension(2400, 1600); $m->setBackground(0xff, 0xff, 0xff); // functions with huge numbers of arbitrary // arguments are always a good idea! Really! function text($r, $g, $b, $a, $rot, $x, $y, $scale, $string) { global $f, $m; $t = new SWFText(); $t->setFont($f); $t->setColor($r, $g, $b, $a); $t->setHeight(960); $t->moveTo(-($f->getWidth($string))/2, $f->getAscent()/2); $t->addString($string); // we can add properties just like a normal php var, // as long as the names aren't already used. // e.g., we can't set $i->scale, because that's a function $i = $m->add($t); $i->x = $x; $i->y = $y; $i->rot = $rot; $i->s = $scale; $i->rotateTo($rot); $i->scale($scale, $scale); // but the changes are local to the function, so we have to // return the changed object. kinda weird.. return $i; } function step($i) { $oldrot = $i->rot; $i->rot = 19*$i->rot/20; $i->x = (19*$i->x + 1200)/20; $i->y = (19*$i->y + 800)/20; $i->s = (19*$i->s + 1.0)/20; $i->rotateTo($i->rot); $i->scaleTo($i->s, $i->s); $i->moveTo($i->x, $i->y); return $i; } // see? it sure paid off in legibility: $i1 = text(0xff, 0x33, 0x33, 0xff, 900, 1200, 800, 0.03, $thetext); $i2 = text(0x00, 0x33, 0xff, 0x7f, -560, 1200, 800, 0.04, $thetext); $i3 = text(0xff, 0xff, 0xff, 0x9f, 180, 1200, 800, 0.001, $thetext); for($i=1; $i<=100; ++$i) { $i1 = step($i1); $i2 = step($i2); $i3 = step($i3); $m->nextFrame(); } header('Content-type: application/x-shockwave-flash'); $m->output(); ?></PRE ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><P > See also <B CLASS="function" >swfdisplayitem->rotate()</B >. </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.swfdisplayitem.rotate.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.swfdisplayitem.scale.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >SWFDisplayItem->Rotate</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.ming.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >SWFDisplayItem->scale</TD ></TR ></TABLE ></DIV ></BODY ></HTML >