public class Perpendicular extends LineElement {

  PointElement C;	// draw perpendicular to AC at A equal to BC

  Perpendicular (PointElement Aval, PointElement Cval) {
    dimension = 1;
    A = Aval;  B = new PointElement();  C = Cval;
  }

  Perpendicular (LineElement AC) {
    dimension = 1;
    A = AC.A;  B = new PointElement();  C = AC.B;
  }

  protected void translate (double dx, double dy) {
    B.translate(dx,dy);
  }

  protected void rotate (PointElement pivot, double ac, double as) {
    B.rotate(pivot,ac,as);
  }

  protected void update() {
    B.x = A.x + C.y - A.y;
    B.y = A.y - C.x + A.x;
  }
}
