bigroom 简介:提供一些AS3的辅助类,有些挺实用,如KeyPoll类、ObjectPool类和Martix2D类等。 资源地址:http://code.google.com/p/bigroom/ 或 http://www.bigroom.co.uk/ 或http://www.bigroom.co.uk/ AS Classes 简介:国人的收集AS类的Blog,作者挺有心的,有时还会给收集的类配上插图,值得收藏。 资源地址:http://asclass.yo2.cn/ flint-particle-system 简介:提供AS3开发的2D和3D粒子类。 资源地址:http://code.google.com/p/flint-particle-system/ 或 http://flintparticles.org/ Demo:http://flintparticles.org/examples 拖拽组件 拖拽组件在网络上主要有Object Handls和TransformTools。 Object Handls 资源地址:http://code.google.com/p/flex-object-handles/ 或 http://www.rogue-development.com/objectHandles.html TransformTools 资源地址:http://www.soave.com.cn/post/2008/12/22/TransformTool-e7b1bb.aspx 另外发现一个叫Resize frame class的拖拽组件,其资源地址:http://www.mediaverk.lv/resize/ CASAlib 类库
CASAlib一个非常有用的As3的工具类库。CASAlib 1.0.0
NpContextMenu 类 NpContextMenu 类
封装了一些方法,方便操作Flash Player的右键菜单。
一些方法:
addMenuItem() 添加菜单项 removeMenuItem() 删除菜单项 hideMenuItem() 隐藏菜单项 showMenuItem() 显示菜单项
如果想对SWF中的动态文本应用非系统的字体,方法当然是在本身的SWF中嵌入相应的字体,另外一种方法是把字体嵌入到另外的SWF中,当需要对应的字体时,把这个SWF载入,并引用相应的字体。FontLoader是一个字体载入类,它帮助你实现这个过程。
用法,假设把字体编译在fonts.swf中:
var _loader:FontLoader = new FontLoader(); _loader.load( new URLRequest( 'fonts.swf') );
载入完成后,可以引用字体:
var fonts = _loader.fonts;var tf:TextFormat = new TextFormat(fonts[0].fontName, 20);
AS3写的一个碰撞检测工具包。可基于像素和shape检测。
swfupload是js+flash的类库,借此实现flash上传获取进度,也实现了页面无需重载的类似ajax的效果。
用法,引入js文件:
<script src="http://www.swfupload.org/swfupload.js" type="text/javascript"></script>
创建SWFUpload对象,指定swf,由swf通过FileReference类调出上传对话框,接下来就交给js了。
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 });
BulkLoader提供简单的载入函数,不管要载入的是xml、swf还是声音文件,都只使用同一接口。功能强大,十分推荐。
用法,载入xml文件:
var bulkLoader:BulkLoader = new BulkLoader('main loading');
bulkLoader.add('my_xml_file.xml');
bulkLoader.start();
引用前面载入的资源:
var myXML:XML = BulkLoader.getLoader("main loading").getXML("my_xml_file.xml");
TransformTool让你轻松实现对DisplayObject的旋转、缩放功能。使用起来也超简单。
用法:
var tool:TransformTool = new TransformTool();
addChild(tool);
tool.target = mc;
Layout是个AS3的布局类。例如你要实现一个布局:让一个mc,不管舞台大小如何调整,位置始终保持在舞台的右上角。
用法举例,让mc始终保持在舞台的右上角:
var stageLayout:Layout = new Layout(stage); var layout:Layout = new Layout(mc, true);
layout.top = 0;
layout.left = 0;
stageLayout.addChild(layout);
ColorMatrix 类asclass as3, color, filter 查看详细
ColorMatrix可以方便你调节显示对象的饱和度、色调、对比度、亮度。
用法:
var cm:ColorMatrix = new ColorMatrix(); cm.adjustColor(brightnessValue, contrastValue, saturationValue, hueValue); clip.filters = [new ColorMatrixFilter(cm)];
Bitmap Mosaic 类asclass as3, bitmap 查看详细
创建显示对象的“像素化”位图。
用法:
var myMoz:Mosaic = new Mosaic(yourDisplayObj isplayObject, pixelSize:uint, useCache:Boolean);
或者
var myMoz:Mosaic = new Mosaic(yourDisplayObj);
myMoz.pixelSize = 10;
myMoz.render();
flash player中有两个开销比较大的操作:对象的创建(object creation)和垃圾回收(garbage collection)。如果我们把不需的对象存放到一个对象池,当需要同类型的对象时直接从对象池里面获取。这样可以减少“对象的创建”,垃圾回收机制 对象池里也不会工作,从而减少开销。
用法:
从ObjectPool中获取一个SomeClass的实例:
var obj:SomeClass = ObjectPool.getObject( SomeClass );
当你不需要一个对象,把它存进对象池中:
ObjectPool.disposeObject( obj );