我需要將FLA中的時間軸動畫轉換爲AS3代碼(可能是通過XML)。問題在於字面上有數百個圖層和數千個圖框。JSFL導出「指南」動畫
儘管我理解JSFL的結構,但我無法通過循環到時間軸 - >圖層 - >框架中找到「指南」動畫。使用curFrame.isMotionObject()總是爲false。
這裏是什麼,我試圖做一個樣本:
/* Gets all motions in all motion objects and exports to a file. */
fl.outputPanel.clear();
//store max layers/frames
var fcnt = fl.getDocumentDOM().getTimeline().frameCount;
var lcnt = fl.getDocumentDOM().getTimeline().layerCount;
fl.trace("fl.getDocumentDOM().getTimeline().frameCount = " + fcnt);
fl.trace("fl.getDocumentDOM().getTimeline().layerCount = " + lcnt);
//store pre-run layers/frames:
var origFr = fl.getDocumentDOM().getTimeline().currentFrame;
var origLyr = fl.getDocumentDOM().getTimeline().currentLayer;
fl.trace("fl.getDocumentDOM().getTimeline().currentFrame = " + origFr);
fl.trace("fl.getDocumentDOM().getTimeline().currentLayer = " + origLyr);
var totout = 0;
var curFrm;
var curl = origLyr;
var curf = origFr;
var outstr = "";
for (curf = 0; curf < fcnt; curf++)
{
// have the IDE go into the current frame:
fl.getDocumentDOM().getTimeline().currentFrame = curf;
// removed to test one layer only
//for (curl = 0; curl < lcnt; curl = lcnt) // curl++) // curl = lcnt)
//{
// have the IDE go into the current layer:
fl.getDocumentDOM().getTimeline().currentLayer = curl;
if(curf > fl.getDocumentDOM().getTimeline().layers[curl].frames.length)
break;
curFrm = fl.getDocumentDOM().getTimeline().layers[curl].frames[curf];
//this is always false. . . why?
if (
curFrm.isMotionObject()
//&& curFrm.hasMotionPath()
){
totout++;
//curFrm.selectMotionPath(true);
}
else{
outstr += "There is no motion path\n";
}
//for testing:
break;
//}
//for testing:
//break;
}
//reset layers/frames back to pre-run status:
fl.getDocumentDOM().getTimeline().currentFrame = origFr;
fl.getDocumentDOM().getTimeline().currentLayer = origLyr;
fl.trace(outstr);
fl.trace("totout = " + totout);
您是否需要僅導出我們運動路徑的補間?另外,你有沒有嘗試導出到默認的運動xml? – 2011-12-18 00:27:39
你能解釋一下嗎?不清楚「默認」運動路徑的含義。 。 。我錯過了文檔中的某些內容嗎?我認爲他們都是運動路徑;如果他們是別的東西,它會影響嗎? – iND 2011-12-18 03:28:13
好吧,有經典補間可以有一個運動路徑應用到它,或不,然後是運動補間,它總是有一個運動路徑。如果你去命令>導出Motion XML我認爲xml格式對於兩種補間類型是不同的(據我所知) – 2011-12-18 10:28:12