Flash as3.0 保存MovieClip运动轨迹到json文件
//放在第一帧调用
import flash.events.Event;
import flash.display.MovieClip;
stage.addEventListener(Event.ENTER_FRAME,onUpdate);
var bStop:Boolean = false;
//var saveFile:FileReference = new FileReference();
var str:String = new String("{");
function onUpdate(event:Event):void
{
if(!bStop)
{
str = str+"\""+ currentFrame+"\""+":{";
for(var j:int = 0;j<=this.numChildren - 2;j++)
{
var movieClip:MovieClip = this.getChildAt(j) as MovieClip;
str = str + "\""+movieClip.name+"\":{\"x\":"+movieClip.x+",\"y\":"+movieClip.y+",\"rotation\":"+movieClip.rotation+"},";
}
var movieClip:MovieClip = this.getChildAt(this.numChildren - 1) as MovieClip;
str = str + "\""+movieClip.name+"\":{\"x\":"+movieClip.x+",\"y\":"+movieClip.y+",\"rotation\":"+movieClip.rotation+"}},";
}
}
//放在最后一帧调用
stop();
bStop = true;
function replaceAt(char:String, value:String, beginIndex:int, endIndex:int):String
{
beginIndex = Math.max(beginIndex, 0);
endIndex = Math.min(endIndex, char.length);
var firstPart:String = char.substr(0, beginIndex);
var secondPart:String = char.substr(endIndex, char.length);
return (firstPart + value + secondPart);
}
str = replaceAt(str,"",str.length - 1,str.length);
str = str+"}"
trace(str);
var saveFile:FileReference = new FileReference();
saveFile.save(str,"mytest.txt");
//json文件格式如下
以上方法可以用作精灵的运动轨迹
最新文章
- 单元测试实战 - Junit测试
- 基于服务(Web Service)的文件管理Winform程序实现
- 11个很棒的 jQuery 图表库
- Shell Python 日期和时间戳的互相转换
- EmguCV学习——简单使用
- 8. Android框架和工具之 NineOldAndroids(动画框架)
- OpenSSL再爆多处高危漏洞
- MySQL如何选择float, double, decimal
- Bootstrap-全局css样式之按钮
- 前后端分离,接口API,契约
- DevExpress winform 友好皮肤
- RT-SA-2019-004 Cisco RV320 Unauthenticated Diagnostic DataRetrieval
- C. Painting the Fence
- Mac配置本地hadoop
- 简单了解pytorch的forward
- 如何让ajax执行完后再继续往下执行
- 数组指针与指针数组(good)
- ethereumjs/ethereumjs-account-2-test
- 设置VMWARE通过桥接方式使用主机无线网卡上网(转载)
- 用windows公文包实现不同盘符两个文件文件夹文件同步