 
import java.util.*;
import stiftUndCo.*;
import java.awt.*;

public class Dreieck extends Figur
{

  /* verwendete Objekte */
  
  private BuntStift s;
  private double x2, y2, x3, y3, x1, y1;
  private double xPoints[], yPoints[];
  boolean gefuellt;

public Dreieck(double x1, double y1, double x2, double y2, double x3, double y3)
{

  this.x1 = x1;
  this.y1 = y1;
  this.x2 = x2;
  this.y2 = y2;
  this.x3 = x3;
  this.y3 = y3;
  s = new BuntStift();


  /*Setze Standartwerte*/
  linienfarbe = Color.BLACK;
  fuellfarbe = Color.WHITE;
  linienbreite = 1;
}

/**
	 * Liefert die x-Koordinate des 1. Punkes
	 * 
	 * @return     die x-Koordinate des 1. Punktes
	 */
public double getX1()
   {
       return x1;
   }
    
   /**
	 * Liefert die x-Koordinate des 2. Punkes
	 * 
	 * @return     die x-Koordinate des 2. Punktes
	 */
   public double getX2()
   {
       return x2;
   }
    /**
	 * Liefert die y-Koordinate des 1. Punkes
	 * 
	 * @return     die y-Koordinate des 1. Punktes
	 */
   public double getY1()
   {
       return y1;
   }
   /**
	 * Liefert die y-Koordinate des 2. Punkes
	 * 
	 * @return     die y-Koordinate des 2. Punktes
	 */
   public double getY2()
   {
       return y2;
   } 
   
/**
	 * Liefert die x-Koordinate des 3. Punkes
	 * 
	 * @return     die x-Koordinate des 3. Punktes
	 */
   public double getX3()
   {
       return x3;
   }
   /**
	 * Liefert die y-Koordinate des 3. Punkes
	 * 
	 * @return     die y-Koordinate des 3. Punktes
	 */
   public double getY3()
   {
       return y3;
   } 
/**
	 *
	 * Zeichnet das Dreieck auf dem Bildschirm
	 */
public void zeige()
{
  s.hoch();
  s.bewegeBis(x1,y1);
  s.runter();
  s.bewegeBis(x2,y2);
  s.bewegeBis(x3,y3);
  s.bewegeBis(x1,y1);
  s.hoch();

  if (gefuellt){
     double xPoints[] = {x1,x2,x3};
     double yPoints[] = {y1,y2,y3};
     s.fuellePolygon (xPoints, yPoints,3,fuellfarbe);
  }

}
  

  public void setzeLinienFarbe(Color c)
        {
          linienfarbe = c;
          s.setzeFarbe(linienfarbe);
        }

      public void setzeFuellFarbe(Color c)
        {
          fuellfarbe = c;
    gefuellt=true;
        }

  public void setzeLinienBreite(int lb)
  {
    linienbreite = lb;
  }

  /**
	 * Methode verschiebe
	 * 
	 * @param  dx Verschiebung um dx in x-Richtung
	 * @param  dy Verschiebung um dy in y-Richtung
	 */
  public void verschiebe(double dx, double dy)
  {
    loesche();  
    x1=x1+dx;
    y1=y1+dy;
    x2=x2+dx;
    y2=y2+dy;
    x3=x3+dx;
    y3=y3+dy;
    zeige();
  }

  public void strecke(double a)
  {
      // noch nicht programmiert
  }

  public void loesche()
  {
      s.radiere();
      zeige();
      s.normal();
  }

}














































