zoukankan      html  css  js  c++  java
  • 实用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

    转载地址:http://uh.9ria.com/space.php?uid=3216&do=blog&id=3764

  • 相关阅读:
    如何远程连接POSTGRESQL数据库
    安装windows服务发生异常
    让FFMPEG支持实时流“伴随”转码
    SVN的标准目录结构:trunk、branches、tags
    关于ipcam的UPnP或NAT的知识
    asp.net(C#)服务器绝对路径与URL相对路径互转
    C#通过FFmpeg获得视频文件参数
    FFmpeg的C#.Net封装
    【robotframework】使用RequestsLibrary的Get File For Streaming Upload关键字实现文件上传
    【jenkins】解决win10作为slave启动agent后无法连接master的过程
  • 原文地址:https://www.cnblogs.com/crkay/p/1955497.html
Copyright © 2011-2022 走看看