PolyEdge(double x0, double y0, double x1, double y1)
PolyEdge(double x0, double y0, double x1, double y1, boolean clip)
  PolyEdge(double x0, double y0, double x1, double y1)  {    if (y0 < y1)      {        this.x0 = x0;        this.y0 = y0;        this.x1 = x1;        this.y1 = y1;      }    else      {        this.x0 = x1;        this.y0 = y1;        this.x1 = x0;        this.y1 = y0;      }    slope = (this.x1 - this.x0) / (this.y1 - this.y0);    if (this.y0 == this.y1) // Horizontal edge.      xIntersection = Math.min(this.x0, this.x1);    else      xIntersection = this.x0 + slope * (Math.ceil(this.y0) - this.y0);  }