[转][开源]AS3 Evaldraw (动态代码绘图引擎)[更新在线演示]

http://bbs.9ria.com/thread-59398-1-1.html

主要受Ken Silverman的EVALDRAW启发,做了个简单的代码绘图引擎.
脚本引擎采用了强大的BISE Scripting Engine (AS3)http://kinsmangames.wordpress.com/bise-scripting-engine/
(强烈推荐大家使用,简单易学,功能强大,语法与AS3基本一致,非常适合用作游戏中的脚本引擎)
界面组件使用Keith Peters的MinimalComps.
内置代码编辑器,支持代码高亮显示.
动态绘图代码解析运行,不需编译,支持AS3大部分的graphics的绘图API和bitmapData的像素操作.
语法遵从ECMAScript规范,Eval Draw代码可导出为.as类文件(AS3代码),可用于直接编译生成相同效果swf.
支持截图并保存为.png图片文件功能.
as3eval.jpg
项目地址(推荐):https://flaswf.googlecode.com/svn/trunk/AS3_Evaldraw_Ch/
打包下载(源代码及教程和相关例子):http://adobec.csdn.net/works/showDetail/290
示例代码,复制到上面swf的代码编辑区,单击"运行代码(Eval)",再单击"画板"查看结果.
  1. /*变量与运算*/
  2. var x = 10; var y = x + 20; 
  3. trace(y);
  4. /*循环*/
  5. for (i=0;i<5;i++){trace(i*2);}
  6. /*AS3变量*/
  7. trace(Math);
  8. trace(Math.sin(Math.random()));
  9. trace(stage);
  10. /*Evaldraw变量*/
  11. trace(Pen);
  12. trace(Canvas);
  13. trace(ScreenBuffer);
  14. /*简单绘制*/
  15. Pen.lineStyle(10,0xff0000);
  16. Pen.moveTo(6,6);
  17. Pen.lineTo(512,512);
  18. /*渲染绘制结果*/
  19. ScreenBuffer.draw(Canvas);
  20. /*声明帧循环*/
  21. function onEnterFrame()
  22. {trace(stage.frameRate);
  23. var a=Math.random()*512;
  24. var b=Math.random()*512;
  25. /*直接操作屏幕像素*/
  26. ScreenBuffer.setPixel(a,b,0xffffff*Math.random());
  27. Pen.lineStyle(10*Math.random(),0xffffff*Math.random());
  28. Pen.lineTo(a,b);
  29. /*渲染绘制结果*/
  30. ScreenBuffer.draw(Canvas);}
复制代码
在线演示地址:
http://flaswf.googlecode.com/svn/trunk/AS3_Evaldraw_Ch/bin/index.html

例子http://flaswf.googlecode.com/svn/trunk/AS3_Evaldraw_Ch/Evaldraw_examples/
打开文本代码,复制到代码编辑区.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值