Added mouse move support for the Mandelbrot.
1.1 --- a/factory/v2010/chrome.html Fri Sep 24 14:31:04 2010 +0200
1.2 +++ b/factory/v2010/chrome.html Fri Sep 24 21:29:37 2010 +0200
1.3 @@ -1,7 +1,7 @@
1.4 <p>
1.5 <!--<img src="images/world.png" alt="world map" height="280" width="100%" />
1.6 -->
1.7 -<canvas id="mandelbrot" width="670" height="280"></canvas>
1.8 +<canvas id="mandelbrot" width="670" height="280" onclick="draw2(event);"></canvas>
1.9 <button onclick="draw(0, -2, 0, 0, 0);">Left</button>
1.10 <button onclick="draw(0, 2, 0, 0, 0);">Right</button>
1.11 <button onclick="draw(0, 0, -2, 0, 0)">Up</button>
2.1 --- a/script.js Fri Sep 24 14:31:04 2010 +0200
2.2 +++ b/script.js Fri Sep 24 21:29:37 2010 +0200
2.3 @@ -268,4 +268,51 @@
2.4 }
2.5 }
2.6 }
2.7 -}
2.8 +}
2.9 +
2.10 +function getEventOffsetX(evt)
2.11 +{
2.12 + if (evt.offsetX != null)
2.13 + return evt.offsetX;
2.14 +
2.15 + var obj = evt.target || evt.srcElement;
2.16 + setPageTopLeft(obj);
2.17 + return (evt.clientX - obj.pageLeft);
2.18 +}
2.19 +
2.20 +function getEventOffsetY(evt)
2.21 +{
2.22 + if (evt.offsetY != null)
2.23 + return evt.offsetY;
2.24 +
2.25 + var obj = evt.target || evt.srcElement;
2.26 + setPageTopLeft(obj);
2.27 + return (evt.clientY - obj.pageTop);
2.28 +}
2.29 +
2.30 +function setPageTopLeft( o )
2.31 +{
2.32 + var top = 0,
2.33 + left = 0,
2.34 + obj = o;
2.35 +
2.36 + while (o.offsetParent)
2.37 + {
2.38 + left += o.offsetLeft ;
2.39 + top += o.offsetTop ;
2.40 + o = o.offsetParent ;
2.41 + };
2.42 +
2.43 + obj.pageTop = top;
2.44 + obj.pageLeft = left;
2.45 +}
2.46 +
2.47 +function draw2(evt)
2.48 +{
2.49 + var iter = 0;
2.50 + var res = 0;
2.51 + var x = (getEventOffsetX(evt) - 335) / 167.5;
2.52 + var y = (getEventOffsetY(evt) - 140) / 70;
2.53 + var z = 0;
2.54 + draw(iter, x, y, z, res);
2.55 +}