import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class Triangle_click extends Applet{

  Point2D tri[] = new Point2D[3];
  Dimension d;
  int cnt;
  Color colors[] = {Color.red, Color.yellow, Color.green, Color.pink,
                  Color.magenta, Color.cyan, Color.white};
  
  public void init(){
    makePoints();
    d = getSize();
    addMouseListener(new MouseAdapter(){
      public void mouseClicked(MouseEvent me){
        int xP = me.getX();
        int yP = deviceY(me.getY());
        Point2D p = new Point2D(xP, yP);
        if(Tools2D.insideTriangle(tri[0],tri[1],tri[2],p)){
          cnt++;
          cnt%=colors.length;
          repaint();
        }
      }
    });    
  }

  public int deviceY(int a){
    return d.height - a;
  }

  public void makePoints(){
    tri[0] = new Point2D(10,10);
    tri[1] = new Point2D(90,10);
    tri[2] = new Point2D(50,90);
  }

  public void drawTri(Graphics g){
    int x[] = new int[3];
    int y[] = new int[3];
    for(int i = 0; i<3; i++){
      x[i] = tri[i].getX();
      y[i] = deviceY(tri[i].getY());
    }
    g.fillPolygon(x,y,3);
  }

  public void paint(Graphics g){
    g.setColor(Color.blue);
    g.fillRect(0,0,d.width,d.height);
    g.setColor(colors[cnt]);
    drawTri(g);
  }
}
