实用AS3代码收集

(1)  InteractivePNG类

使PNG图像中的透明像素不再响应鼠标交互。

          用法,在Flash库中,把包含png图片的MovieClip“链接属性”基类设为InteractivePNG类

    下载:InteractivePNG_1_0.zip

 (2)Stats 类

 方便查看swf当前的状态:fps,内存占用。很方便。

AS3代码
  1. addChild(  new  Stats() );   
  2. addChild(  new  Stats( { bg:  0x202020 , fps:  0xC0C0C0 , ms:  0x505050 , mem:  0x707070 , memmax:  0xA0A0A0  } ) );  

 

(3) FontLoader类

如果想对SWF中的动态文本应用非系统的字体,方法当然是在本身的SWF中嵌入相应的字体,另外一种方法是把字体嵌入到另外的SWF中,当需要对应的字体时,把这个SWF载入,并引用相应的字体。FontLoader是一个字体载入类,它帮助你实现这个过程。

用法,假设把字体编译在fonts.swf中:

AS3代码
  1. var  _loader:FontLoader =  new  FontLoader();   
  2. _loader.load(  new   URLRequest'fonts.swf' ) );  

载入完成后,可以引用字体:

AS3代码
  1. var  fonts = _loader.fonts; var  tf: TextFormat  =  new   TextFormat (fonts[ 0 ].fontName,  20 );  

下载:http://code.google.com/p/collisiondetectionkit/

 

(4) Collision Detection Kit

AS3写的一个碰撞检测工具包。可基于像素和shape检测。

下载:http://code.google.com/p/collisiondetectionkit/

 

(5)swfupload类库

swfupload是js+flash的类库,借此实现flash上传获取进度,也实现了页面无需重载的类似ajax的效果。

用法,引入js文件:

AS3代码
  1. <script src= "http://www.swfupload.org/swfupload.js"  type= "text/javascript" ></script>  

创建SWFUpload对象,指定swf,由swf通过FileReference类调出上传对话框,接下来就交给js了。

AS3代码
  1. var  swfu =  new  SWFUpload({ upload_url :  "http://www.swfupload.org/upload.php" , flash_url :  "http://www.swfupload.org/swfupload.swf" , file_size_limit :  "200 MB" , upload_start_handler : uploadStartEventHandler, upload_success_handler : uploadSuccessEventHandler });  

下载:http://code.google.com/p/swfupload/downloads/list

 

(6) Bitmap Mosaic 类

创建显示对象的“像素化”位图。

AS3代码
  1. var  myMoz:Mosaic =  new  Mosaic(yourDisplayObj);   
  2.   
  3. myMoz.pixelSize =  10 ;   
  4.   
  5. myMoz.render();  

下载:mosaic.zip

 

 (7) Object Pool 类

flash player中有两个开销比较大的操作:对象的创建(object creation)和垃圾回收(garbage collection)。如果我们把不需的对象存放到一个对象池,当需要同类型的对象时直接从对象池里面获取。这样可以减少“对象的创建”,垃圾回收机制 对象池里也不会工作,从而减少开销。

用法:

从ObjectPool中获取一个SomeClass的实例:

AS3代码
  1. var  obj:SomeClass = ObjectPool.getObject( SomeClass );  

当你不需要一个对象,把它存进对象池中:

AS3代码
  1. ObjectPool.disposeObject( obj );  

下载:objectpool.zip

 

 

(8)SWFWheel 类

解决鼠标中键与浏览器冲突的问题, 把js方法声明在as代码中, 通过ExternalInterface来调用. 完全不需要另外的js文件。

AS3代码
  1. SWFWheel.initialize( this . stage );  

下载: SWFWheel.as

 

(9) GreenThread 类

把一些需要消耗大的计算, (模拟线程的方式), 动态分配到多帧里去计算, 避免出现"卡帧"的现象. 如一些寻路算法, 图形编码算法, 大量数据解析等. 很有用.
需要自定义扩展GreenThread的子类, 把主要的循环计算放在run函数里头.

AS3代码
  1. var  astar:AStarGreenThread =  new  AStarGreenThread();   
  2. astar. addEventListener ( Event .COMPLETE, onFindPath);   
  3. astar.star();  

下载:greenthreads-1.0.zip

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值