Flash / Flex / ActionScript/Graphics/Shape — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Текущая версия на 11:15, 26 мая 2010
Содержание
Custom Graphical Classes
<source lang="java">
package {
import flash.display.Shape; import flash.display.*; public class Rectangle extends Shape { public function Rectangle (w:Number, h:Number, lineThickness:Number, lineColor:uint, fillColor:uint) { graphics.lineStyle(lineThickness, lineColor); graphics.beginFill(fillColor, 1); graphics.drawRect(0, 0, w, h); } }
}
</source>
Filling a Shape with a Gradient
<source lang="java">
package{
import flash.display.*; import flash.ui.*; import flash.geom.*; public class Main extends Sprite{ public function Main(){ var sampleSprite:Sprite = new Sprite(); var matrix:Matrix = new Matrix( ); matrix.createGradientBox(100, 100, 0, 50, 50); var colors:Array = [0xFF0000, 0x0000FF]; var alphas:Array = [100, 100]; var ratios:Array = [0x00, 0xFF]; sampleSprite.graphics.lineStyle( ); // sampleSprite.graphics.beginGradientFill(GradientType.GRADIENT, colors, alphas, ratios, matrix); sampleSprite.graphics.drawCircle(100, 100, 50); sampleSprite.graphics.endFill( ); addChild(sampleSprite); } }
}
</source>
Filling a Shape with a Solid or Translucent Color
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var sampleSprite:Sprite = new Sprite(); sampleSprite.graphics.lineStyle( ); sampleSprite.graphics.beginFill(0x00FF00); sampleSprite.graphics.lineTo(100, 0); sampleSprite.graphics.lineTo(100, 100); sampleSprite.graphics.lineTo(0, 100); sampleSprite.graphics.lineTo(0, 0); sampleSprite.graphics.endFill( ); addChild(sampleSprite); } }
}
</source>
Filling Shapes
<source lang="java">
package {
import flash.display.*; import flash.events.Event; import flash.geom.Matrix; import flash.net.URLRequest; public class Main extends Sprite { private var shape:Sprite = new Sprite(); private var loader:Loader = new Loader(); private var bmpImage:BitmapData; public function Main() { loader.loaderInfo.addEventListener(Event.ruPLETE, picLoaded) loader.load(new URLRequest("image1.jpg")); shape.x = 100; shape.y = 200; } private function picLoaded(event:Event):void { bmpImage = new BitmapData(loader.width, loader.height); bmpImage.draw(loader); shape.graphics.lineStyle(25); shape.graphics.lineGradientStyle(GradientType.LINEAR, [0x00ff00, 0xff0000], [100, 100], [150, 255]); var mxBox:Matrix = new Matrix(); mxBox.createGradientBox(200, 200); shape.graphics.lineGradientStyle(GradientType.LINEAR,[0xFFFF00, 0x00FFFF], [100, 100], [0x00, 0xFF], mxBox); shape.graphics.beginBitmapFill(bmpImage); shape.graphics.drawRect(0, 0, 200, 200); shape.graphics.endFill(); } }
}
</source>
Shape Demo
<source lang="java">
package{ import flash.display.Sprite; import flash.display.Shape; public class Main extends Sprite {
public function Main() { var shape:Shape = new Shape(); shape.graphics.beginFill(0x00ff00, 1.0); shape.graphics.drawRect(10, 10, 50, 50); shape.graphics.endFill(); addChild(shape); }
} }
</source>