package geneticAnt; import java.awt.Polygon; public class Arrow { // An arrow drawn in 00..99 cordinates public static final int X[] = {0,60,60,99,60,60,0} ; public static final int Y[] = {40,40,0,50,99,60,60} ; private int x[]; // coordinates for the arrow private int y[]; public static Polygon create(int pos[], int grid, int direction) { // create an arrow polygon at pos on the board -- note that pos[0] goes down int x[] = new int[7]; // coordinates for the arrow int y[] = new int[7]; switch(direction) { case Board.EAST : for (int i = 0; i < 7; i++) { x[i] = (X[i]*grid)/100 + pos[1]*grid; y[i] = (Y[i]*grid)/100 + pos[0]*grid; } break; case Board.WEST : for (int i = 0; i < 7; i++) { x[i] = (100 - X[i])*grid/100 + pos[1]*grid; y[i] = (100 - Y[i])*grid/100 + pos[0]*grid; } break; case Board.SOUTH : for (int i = 0; i < 7; i++) { x[i] = (Y[i]*grid)/100 + pos[1]*grid; // switch X and Y y[i] = (X[i]*grid)/100 + pos[0]*grid; } break; case Board.NORTH : for (int i = 0; i < 7; i++) { x[i] = (100 - Y[i])*grid/100 + pos[1]*grid; // switch X and Y y[i] = (100 - X[i])*grid/100 + pos[0]*grid; } break; } // for (int i = 0; i < 7; i++) // System.out.println("Pos" + pos[0] + " " + pos[1] + "Grid " + grid + // " i X Y " + i + " " + x[i] + " " + y[i]); return new Polygon(x,y,7); } }