diff --git a/record-and-playback/slides/playback/slides/lib/writing.js b/record-and-playback/slides/playback/slides/lib/writing.js index cbd15f787361ad4b4c37c2a8d4c3aaf3b1971f22..7de5e54979a9ee2ee90f383c83ea2027a92d1506 100644 --- a/record-and-playback/slides/playback/slides/lib/writing.js +++ b/record-and-playback/slides/playback/slides/lib/writing.js @@ -92,8 +92,8 @@ viewBoxes = xmlDoc.getElementsByTagName("viewBox"); var pzlen = panZoomArray.length; //fill the times array with the times of the svg images. -for (var k = 0;k < pzlen; k++) { - vboxValues[panZoomArray[k].getAttribute("timestamp")] = viewBoxes[k].childNodes[0].data; +for (var k = 0;k < pzlen-1; k++) { + vboxValues[[panZoomArray[k].getAttribute("timestamp"), panZoomArray[k+1].getAttribute("timestamp")]] = viewBoxes[k].childNodes[0].data; } // - - - END OF GLOBAL VARIABLES - - - // @@ -163,7 +163,8 @@ function setViewBox(val) { function getImageAtTime(time) { var curr_t = parseFloat(time); - for (var key in imageAtTime) { + var key; + for (key in imageAtTime) { var arry = key.split(","); if ((parseFloat(arry[0]) <= curr_t) && (parseFloat(arry[1]) >= curr_t)) { return imageAtTime[key]; @@ -171,6 +172,17 @@ function getImageAtTime(time) { } } +function getViewboxAtTime(time) { + var curr_t = parseFloat(time); + var key; + for (key in vboxValues) { + var arry = key.split(","); + if ((parseFloat(arry[0]) <= curr_t) && (parseFloat(arry[1]) >= curr_t)) { + return vboxValues[key]; + } + } +} + // - - - END OF JAVASCRIPT FUNCTIONS - - - // window.onresize = function(event) { @@ -312,7 +324,7 @@ p.code({ curr_pgid = next_pgid; } - var vboxVal = vboxValues[t]; + var vboxVal = getViewboxAtTime(t); if(vboxVal !== undefined) { setViewBox(vboxVal); }