var apheight=600;
var apwidth=800;
var gr=0;              //for graphics properties
var xmin=0.0;
var xmax=1.0;
var ymin=-1;
var ymax = 1;
var xsc=60.0;
var ysc=160.0;
var Red=new Array(255,0,0);
var Blue=new Array(0,0,255);
var Green=new Array(0,255,0);
var Black=new Array(0,0,0);
var White=new Array(255,255,255);
var Cream=new Array(255,255,235);
var Dull=new Array(200,200,150);

function InitGraph() {
  document.Graph.init();
  gr=document.Graph.g;
  Colour(Dull);
  gr.fillRect(0,0,apwidth,apheight);
  Colour(Cream);
  gr.fillRect(5,5,apwidth-10,apheight-10);
}

function ScaleWindow(a,b,c,d)  {
  xmin=a;
  ymin=b;
  xmax=c;
  ymax=d;
  xsc=(apwidth-40)/(xmax-xmin);
  ysc=(apheight-40)/(ymin-ymax);
  gr.translate(Math.floor(20-xmin*xsc),Math.floor(20-ymax*ysc));
}

function DrawAxes()  {
  Colour(Blue);
  LineStart(xmin,0);
  LineTo(xmax,0);
  LineStart(0,ymin);
  LineTo(0,ymax);
}

function Label(a,b,c) {
  gr.drawString(a,Math.floor(b*xsc),Math.floor(c*ysc));
}

function LineStart(p,q)   {
  oldx=p*xsc;
  oldy=q*ysc;
  gr.drawLine(oldx,oldy,oldx+1,oldy);
}

function LineTo(p,q)  {
  newx=p*xsc;
  newy=q*ysc;
  gr.drawLine(oldx,oldy,newx,newy);
  oldx=newx;
  oldy=newy;
}

function Box(a,b,c,d) {  //top left x,y, bottom right x,y
  gr.drawRect(a*xsc,b*ysc,(c-a)*xsc,(d-b)*ysc);
}

function BoxFill(a,b,c,d) {
  gr.fillRect(a*xsc,b*ysc,(c-a)*xsc,(d-b)*ysc);
}

function Colour(c)  {
  document.Graph.setRGB(c[0],c[1],c[2]);
}

function ColourRGB(r,g,b) {
  c=new Array(r,g,b);
  Colour(c);
}

