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..ecdc44acc1df60e955b9382cf8c32fb084e3ad58 |
--- /dev/null |
+++ b/PerformanceTests/SVG/Bamboo_transform.html |
@@ -0,0 +1,61 @@ |
+<pre id="log"></pre> |
fs
2015/08/19 23:04:32
Add <!DOCTYPE html>? (Who wants quirks mode anyway
junchao.han
2015/08/20 06:32:47
Done.
|
+<div id="svg-div"> |
+ <embed id="svg-content" src="./resources/Bamboo.svg" width="400px" height="400px" type="image/svg+xml" /> |
fs
2015/08/19 23:04:31
Use <object> instead of <embed>?
junchao.han
2015/08/20 06:32:47
Done.
|
+</div> |
+<script src="../resources/runner.js"></script> |
+<script> |
+var svgContent; |
+var startTime; |
+var endTime; |
+var loop0 = 20; |
pdr.
2015/08/19 17:28:35
Lets change this to a static in all caps. Maybe va
junchao.han
2015/08/20 06:32:47
Done.
|
+var loop = loop0; |
+var offset = 0; |
+var state = 'zoomin'; |
+var delta = 1; |
+var step = function(){ |
+ loop--; |
+ if (loop==0){ |
+ loop = loop0; |
+ if (state=='zoomin'){ |
+ state='scroll'; |
+ delta = 0; |
+ } |
+ else if (state=='scroll'){ |
+ state='zoomout'; |
+ delta = 2; |
+ } |
+ else if (state=='zoomout'){ |
+ endTime = Date.now(); |
pdr.
2015/08/19 17:28:35
Lets use performance.now if available:
endTime = w
junchao.han
2015/08/20 06:32:47
Done.
|
+ var log = document.getElementById("log"); |
+ log.innerHTML += "values "+(endTime-startTime)+" ms"; |
+ testRunner.notifyDone(); |
+ return; |
+ } |
+ } |
+ if (state=='zoomin'){ |
pdr.
2015/08/19 17:28:35
Lets replace these if(...) blocks with a switch st
junchao.han
2015/08/20 06:32:47
Done.
|
+ delta += 0.05; |
+ svgContent.style.transform='matrix('+delta+',0,0,'+delta+',0,0)'; |
+ } |
+ if (state=='scroll'){ |
+ if (loop>loop0/2) delta += 20; |
+ else delta -= 20; |
+ svgContent.style.transform='matrix(2,0,0,2,'+delta+',0)'; |
+ } |
+ if (state=='zoomout'){ |
+ delta -= 0.05; |
+ svgContent.style.transform='matrix('+delta+',0,0,'+delta+',0,0)'; |
+ } |
+ requestAnimationFrame(step); |
+}; |
+var init = function(){ |
+ try{ |
+ svgContent = document.getElementById('svg-content').getSVGDocument().documentElement; |
fs
2015/08/19 23:04:31
Prefer to not use getSVGDocument() - contentDocume
junchao.han
2015/08/20 06:32:47
Done.
|
+ startTime = Date.now(); |
+ requestAnimationFrame(step); |
+ } |
+ catch(err){ |
+ setTimeout(init,100); |
fs
2015/08/19 23:04:32
This looks a bit sketchy - listen for a load event
junchao.han
2015/08/20 06:32:47
Done.
|
+ } |
+}; |
+init(); |
+</script> |