Linie.java

import java.awt.*;

public class Linie implements Figur {
  // einfache Figur, gegeben durch zwei Punkte

  private Punkt p1, p2;

  // Konstruktoren

  public Linie(Punkt pa, Punkt pb) {
    p1 = pa;
    p2 = pb;
  }

  public Linie() {
    // Standardlinie: auf der x-Ache von 0 bis 1
    this(new Punkt(), new Punkt(1.0, 0.0));
  }  


  // öffentliche Methoden

  public void move(Punkt p) {
    // verschiebt um "Vektor" p

    p1.move(p);
    p2.move(p);
  }

  public void scale(double s) {
    // skaliert um Faktor s, Bezugspunkt O
  
    p1.scale(s);
    p2.scale(s);
  }    

  public void rotate(double alpha) {
    // dreht um Winkel alpha, Drehpunkt O
    
    p1.rotate(alpha);
    p2.rotate(alpha);
  }  

  public void draw(Graphics g) {
    // zeichne die Figur 

    g.drawLine(p1.getX(), p1.getY(), p2.getX(), p2.getY());
  }

  public String toString() {
    // beschreibt Objekt als String
 
    return "LINIE\n" + "   " + p1 + "\n   " + p2 + "\n";
  }
}