NAME

SWF::Shape - Shape class

SYNOPSIS

 use SWF::Shape;
 my $shape = new SWF::Shape();

DESCRIPTION

SWF::Shape is the fundamental object of a flash movie.

METHODS

new SWF::Shape();
Creates a new Shape object.
$shape->moveTo($x, $y); or $shape->movePenTo($x, $y);
Move the Shape's (imaginary) pen location to ($x, $y) in the Shape's coordinate space.
$shape->moveToRelative($dx, $dy); or $shape->movePen($dx, $dy);
Add ($dx, $dy) to the Shape's pen current location.
$x = $shape->getPenX();
Returns Pen's x-coordinates
$y = $shape->getPenY();
Returns Pen's y-coordinates
($x, $y) = $shape->getPen();
Returns Pen's (x,y) coordinates
$shape->drawLineTo($x, $y);
Draw a line (using current line style - see "setLine()" method) from the current position to ($x, $y).
$shape->drawLine($dx, $dy);
Draw a line (using current line style - see "setLine()" method) from the current position to displacement ($dx, $dy).
$shape->drawCurveTo($controlx, $controly, $anchorx, $anchory);
Draw a quadratic curve (using current line style - see "setLine()" method) from current pen position to ($anchorx, $anchory) using control point ($controlx, $controly).
$shape->drawCurve($controldx, $controly, $anchorx, $anchory);
Draw a quadratic curve (using current line style - see "setLine()" method) from current pen position to displacement ($anchordx, $anchordy) using displacement control point ($controldx, $controldy).
$shape->setLine($width, $r, $g, $b [,$a]);
Sets Shape's line width and color (RGB). To remove the Shape's line style call this method without any arguments, i.e. $shape->setLine().
$fill = $shape->addFill($r, $g, $b [,$a]);
Adds a solid fill to $shape list of fill styles and returns an SWF::Fill object. This object is used with the "setLine()" method described below. The default value of $a is 0.
$fill = $shape->addFill($bitmap [,FLAG]);

Adds a bitmap fill to $shape list of fill styles and returns an SWF::Fill object. This object is used with the "setLine()" method described below.

$bitmap is an SWF::Bitmap object while FLAG arguemnt can be SWFFILL_TILED_BITMAP or SWFFILL_CLIPPED_BITMAP. Make sure to import these constants to your package before useing it, i.e. use the following statement:

     use SWF::Fill <list of constants>;

The default value of FLAG is SWFFILL_TILED_BITMAP.

$fill = $shape->addFill($gradient [,FLAG]);

Adds a gradient fill to $shape list of fill styles and returns an SWF::Fill object. This object is used with the "setLine()" method described below.

$gradient is an SWF::Gradient object while FLAG arguemnt can be SWFFILL_LINEAR_GRADIENT or SWFFILL_RADIAL_GRADIENT.Make sure to import these constants to your package before useing it, i.e. use the following statement:

     use SWF::Fill <list of constants>;

The default value of FLAG is SWFFILL_LINEAR_GRADIENT.

$shape->setLeftFill($fill);
Sets the fill on the left side of the edge. $fill is an SWF::Fill object returned from "addFill" method.
$shape->setLeftFill($r, $g, $b [,$a]);

This is another way of saying:

     my $fill = $shape->addSolidFill($r, $g, $b [,$a]);
     $shape->setLeftFill($fill);
$shape->setRightFill($fill);
Sets the fill on the right side of the edge. $fill is an SWF::Fill object returned from "addFill" method.
$shape->setRightFill($r, $g, $b [,$a]);

This is another way of saying:

     my $fill = $shape->addSolidFill($r, $g, $b [,$a]);
     $shape->setRightFill($fill);
$shape->drawCircle($r) - Don't use. Interface may change.
Draws a circle with radious $r.
$shape->drawArc($r, $startAngle, $endAngle) - Don't use. Interface may change.

AUTHOR

Soheil Seyfaie (soheil at users.sourceforge.net).

SEE ALSO

SWF, SWF::Action, SWF::Bitmap, SWF::Button, SWF::Constants, SWF::DisplayItem, SWF::Fill, SWF::Font, SWF::Gradient, SWF::Morph, SWF::Movie, SWF::Shape, SWF::Sound, SWF::Sprite, SWF::TextField, SWF::Text