Chromium Code Reviews| Index: PerformanceTests/SVG/Bamboo_transform.html |
| diff --git a/PerformanceTests/SVG/Bamboo_transform.html b/PerformanceTests/SVG/Bamboo_transform.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..eb8a4984db1d7fc0b45aebcbb27456e261934662 |
| --- /dev/null |
| +++ b/PerformanceTests/SVG/Bamboo_transform.html |
| @@ -0,0 +1,74 @@ |
| +<!DOCTYPE html> |
| +<div> |
| + <object id="svg-content" data="./resources/Bamboo.svg" width="400px" height="400px" type="image/svg+xml"> |
|
pdr.
2015/08/26 21:19:40
Nit: just data="resources/Bamboo.svg"
|
| + </object> |
| +</div> |
| +<script src="../resources/runner.js"></script> |
| +<script> |
| +var svgContent; |
| +var startTime; |
| +var loop_iterations = 5; |
| +var ANIMATION_ITERATIONS = 20; |
| +var animation_loop; |
| +var offset; |
| +var state; |
| +var delta; |
| +var results = []; |
| +var now = function(){ |
| + return window.performance ? performance.now() : Date.now(); |
| +}; |
| +var init = function(){ |
| + animation_loop = ANIMATION_ITERATIONS; |
| + offset = 0; |
| + state = 'zoomin'; |
| + delta = 1; |
| + startTime = now(); |
| + requestAnimationFrame(step); |
| +}; |
| +var step = function(){ |
| + animation_loop--; |
| + if (animation_loop==0){ |
| + animation_loop = ANIMATION_ITERATIONS; |
| + switch(state){ |
| + case 'zoomin': |
| + state='scroll'; |
| + delta = 0; |
| + break; |
| + case 'scroll': |
| + state='zoomout'; |
| + delta = 2; |
| + break; |
| + case 'zoomout': |
| + loop_iterations--; |
| + results.push(now()-startTime); |
| + if (loop_iterations>0) |
| + init(); |
| + else{ |
| + PerfTestRunner.logStatistics(results, 'ms', "Time:"); |
| + if (testRunner) testRunner.notifyDone(); |
| + } |
| + return; |
| + } |
| + } |
| + switch(state){ |
| + case 'zoomin': |
| + delta += 0.05; |
| + svgContent.style.transform='matrix('+delta+',0,0,'+delta+',0,0)'; |
| + break; |
| + case 'scroll': |
| + if (animation_loop>ANIMATION_ITERATIONS/2) delta += 20; |
| + else delta -= 20; |
| + svgContent.style.transform='matrix(2,0,0,2,'+delta+',0)'; |
| + break; |
| + case 'zoomout': |
| + delta -= 0.05; |
| + svgContent.style.transform='matrix('+delta+',0,0,'+delta+',0,0)'; |
| + break; |
| + } |
| + requestAnimationFrame(step); |
| +}; |
| +window.onload = function(){ |
| + svgContent = document.getElementById('svg-content').contentDocument.documentElement; |
| + init(); |
| +} |
| +</script> |