var rad = Math.PI/180 var maxY =400 var color ="red" var Ox =-1 var Oy =-1 function outPlot(x,y,w,h) { print('<span style="position:absolute;left:'+x+';top:'+y+';height:'+h+';width:'+w+';font-size:1px;background-color:'+color+'"></span>') } function Plot(x,y) { outPlot(x,y,1,1) if(Ox>=0|| Oy>=0) ShowLine(Ox,Oy,x-Ox,y-Oy) Ox = x Oy = y } function ShowLine(x,y,w,h) { if(w<0) { x += w w = Math.abs(w) } if(h<0) { y += h h = Math.abs(h) } if(w<1) w=1 if(h<1) h=1 outPlot(x,y,Math.round(w),Math.round(h)) } function orgY(y) { return y; return maxY-y } function sign(n) { if(n>0) return1 if(n<0) return-1 return n } function Line(x1,y1,x2,y2) { x2 = Math.round(x2) y2 = Math.round(y2) xo = x2 yo = y2 y1 = orgY(y1) y2 = orgY(y2) var str ="" var i=0 var x = x1 var y = y1 dx = Math.abs(x2-x1) dy = Math.abs(y2-y1) s1 = sign(x2-x1) s2 = sign(y2-y1) if(dx==0|| dy==0) { ShowLine(x1,y1,x2-x1,y2-y1) return } if(dx>dy) { temp = dx dx = dy dy = temp key =1 }else key =0 e =2*dy-dx for(i=0;i<dx;i++) { px =0 py =0 Plot(x,y) while(e>=0) { if(key==1) { x += s1 px += s1 }else { y += s2 py += s2 } e = e-2*dx } if(key==1) y += s2 else x += s1 e = e+2*dy } } function print(str) { document.all.printLine.innerHTML += str; }