partial
diff --git a/player/js/utils/DataManager.js b/player/js/utils/DataManager.js index d6b09e9..21371c2 100644 --- a/player/js/utils/DataManager.js +++ b/player/js/utils/DataManager.js
@@ -648,27 +648,63 @@ o: [], v: [] }; + var propertyArray = []; + var j, k, kLen; var jLen = keyframes[0].s[0].i.length; for(j=0;j<jLen;j+=1){ var coordsIData = []; var coordsOData = []; var coordsVData = []; - kLen = keyData.s[i].i[j].length; + kLen = keyframes[0].s[0].i[j].length; for(k=0;k<kLen;k+=1){ - if(keyData.h === 1){ - coordsIData.push(keyData.s[i].i[j][k]); - coordsOData.push(keyData.s[i].o[j][k]); - coordsVData.push(keyData.s[i].v[j][k]); - }else{ - coordsIData.push(keyData.s[i].i[j][k]+(keyData.e[i].i[j][k]-keyData.s[i].i[j][k])*perc); - coordsOData.push(keyData.s[i].o[j][k]+(keyData.e[i].o[j][k]-keyData.s[i].o[j][k])*perc); - coordsVData.push(keyData.s[i].v[j][k]+(keyData.e[i].v[j][k]-keyData.s[i].v[j][k])*perc); - } + coordsIData.push(keyframes[0].s[0].i[j][k]); + coordsOData.push(keyframes[0].s[0].o[j][k]); + coordsVData.push(keyframes[0].s[0].v[j][k]); } shapeData.i.push(coordsIData); shapeData.o.push(coordsOData); shapeData.v.push(coordsVData); } + propertyArray.push(shapeData); + if(renderType == 'svg'){ + if(!keyframes.__minString){ + keyframes.__minString = createPathString(propertyArray,pathData.closed); + } + pathData.pathString = keyframes.__minString; + } + return pathData; + }else if(frameNum > keyframes[keyframes.length - 1].t-offsetTime){ + var shapeData = { + i: [], + o: [], + v: [] + }; + var pos = keyframes.length - 2; + var propertyArray = []; + var j, k, kLen; + var jLen = keyframes[pos].s[0].i.length; + for(j=0;j<jLen;j+=1){ + var coordsIData = []; + var coordsOData = []; + var coordsVData = []; + kLen = keyframes[pos].s[0].i[j].length; + for(k=0;k<kLen;k+=1){ + coordsIData.push(keyframes[pos].s[0].i[j][k]+(keyframes[pos].e[0].i[j][k]-keyframes[pos].s[0].i[j][k])); + coordsOData.push(keyframes[pos].s[0].o[j][k]+(keyframes[pos].e[0].o[j][k]-keyframes[pos].s[0].o[j][k])); + coordsVData.push(keyframes[pos].s[0].v[j][k]+(keyframes[pos].e[0].v[j][k]-keyframes[pos].s[0].v[j][k])); + } + shapeData.i.push(coordsIData); + shapeData.o.push(coordsOData); + shapeData.v.push(coordsVData); + } + propertyArray.push(shapeData); + if(renderType == 'svg'){ + if(!keyframes.__maxString){ + keyframes.__maxString = createPathString(propertyArray,pathData.closed); + } + pathData.pathString = keyframes.__maxString; + } + return pathData; } return false; }