flint 使用 爆破照片等图片

对图片进行爆破

在flint 的例子里有

下面是对它的注解

 

 

 

 

 

import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.emitters.Emitter2D;
import org.flintparticles.twoD.particles.Particle2DUtils;
import org.flintparticles.twoD.renderers.*;
import org.flintparticles.twoD.zones.RectangleZone; 

var txt:TextField = new TextField();
txt.text = "Click on the image";
txt.textColor = 0xFFFFFF;
addChild( txt );

var emitter:Emitter2D = new Emitter2D();

var particles:Array = Particle2DUtils.createRectangleParticlesFromBitmapData( BitmapData(new Image1(384,255)), 10, emitter.particleFactory, 56, 47 );// 10指的是其爆炸后每一小块的像素大小 后面的56,47是图片的坐标 Image1 是图片的链接名
emitter.addExistingParticles( particles, false );

var renderer:DisplayObjectRenderer = new DisplayObjectRenderer();
renderer.addEmitter( emitter );
addChild( renderer );
emitter.start();

stage.addEventListener( MouseEvent.CLICK, explode, false, 0, true );
  
function explode( ev:MouseEvent ):void
{
 var p:Point = renderer.globalToLocal( new Point( ev.stageX, ev.stageY ) );//转化为全局坐标 渲染环境renderer也是DisplayObject 用的是flash player的globalToLocal方法
 emitter.addAction( new Explosion( 8, p.x, p.y, 500 ) );// 后面的500值爆破的程度  即开始爆破的像素  (爆破500像素,一开始就出现500像素的缺口,然后慢慢的往外延伸)
 emitter.addAction( new Move() );
 emitter.addAction( new DeathZone( new RectangleZone( -10, -10, 510, 360 ), true ) );
 stage.removeEventListener( MouseEvent.CLICK, explode );

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值