//  Code by Søren Hattel and Rasmus Rask Andersen | © netbureauet ARANEUM 2000 | http://www.na.dk

NA_Layer.prototype.glide2 =
  function () {
  	this.xp=this.a1*this.xx+this.a2*this.xm+this.a3*this.x0;
  	this.xm=this.xx;
  	this.xx=this.xp;
  	this.position((this.dX)?this.dX*Math.floor(this.xx):null,(this.dY)?this.dY*Math.floor(this.xx):null);
  	setTimeout(this.name + ".glide2()",this.t);
  }

NA_Layer.prototype.glidePos =
  function (pXpos,pYpos) {
    pos = (this.dX) ? pXpos : pYpos;
    this.x0 = 1.0*pos+.5;
  }

NA_Layer.prototype.glideInit =
  function (pXpos,pYpos,pdX,pdY) {
    this.dX = pdX;
    this.dY = pdY;
    this.m=2.5,this.r=10.0,this.k=50.0,this.t=50;
    this.dt = this.t * 0.002;
    this.a1=(2.0*this.m-this.k*this.dt*this.dt)/(this.m+.5*this.r*this.dt),this.a2=(.5*this.r*this.dt-this.m)/(this.m+.5*this.r*this.dt);this.a3=this.k*this.dt*this.dt/(this.m+.5*this.r*this.dt);
    pos = (this.dX) ? pXpos : pYpos;
    this.xp = 1.0*pos+.5;
    this.xm = this.xp, this.xx = this.xp, this.x0=this.xp;
  	this.position(pXpos,pYpos);
   	this.glidePos(pXpos,pYpos);
   	this.glide2();
  }
