import Vertex2D;

class EdgeEqn {
  public float A, B, C;
  
  public EdgeEqn(Vertex2D v0, Vertex2D v1) {
    float a = v0.y - v1.y;
    float b = v1.x - v0.x;
    float c = -0.5f*(a*(v0.x + v1.x) + b*(v0.y + v1.y));
    A = a;
    B = b;
    C = c;
  }
  
  public void flip() {
    A = -A;
    B = -B;
    C = -C;
  }
  
  public float evaluate(int x, int y) {
    return (A*(float)(x) + B*(float)(y) + C);
  }
}
