- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
function line( x0, y0, x, y, elmId ) {
var sx = x-x0, sy = y-y0, dir = (sx>sy), adir = (Math.abs(sx)>Math.abs(sy));
if ( (x0>x&&y0<=y&&adir)||(x0<=x&&y0>y&&!adir)||(x0>x&&y0>y) ) return line(x, y, x0, y0, elmId); // black magic!
var d1 = dir? x0:y0, d2 = dir? y0:x0, b1 = dir? sx:sy, b2 = dir? sy:sx, k = b2/b1;
for( var i=0; i<=b1;i++ ){
if ( dir ) plot( d1, Math.floor(d2), elmId );
else plot( Math.floor(d2), d1, elmId );
d1++;d2+=k;
}
return true;
}
/* ... */
function plot(x, y, elmId) {
var div = document.createElement('div');
div.className = 'dot' + (!!elmId? ' dot-'+elmId:'' ) ;
div.style.left = x + 'px';
div.style.top = y + 'px';
document.getElementsByTagName('BODY')[0].appendChild(div);
}
santa_microbe 21.04.2012 10:34 # 0
Lure Of Chaos 21.04.2012 11:15 # 0
wvxvw 21.04.2012 12:55 # 0
bormand 21.04.2012 14:57 # 0
Lure Of Chaos 21.04.2012 16:00 # +1
bormand 21.04.2012 16:21 # +2