To load this file without formatting, visit http://whoyouknow.co.uk/ants/AntGraph/java/4/src/antgraph/gui/GraphJFrame.java. This is a spam-protection measure; sorry for the inconvenience.
· GraphJFrame.java ·
1/* 2 * GraphJFrame.java 3 * 4 * Created on 04 March 200dff7, 13:30 5 * version 4 6 * A JFrame for a GraphCanvas 7 */ 8 9package antgraph.gui; 10 11import antgraph.Edge; 12import antgraph.Graph; 13import antgraph.Nest; 14import antgraph.NoSuchNodeException; 15import antgraph.Node; 16import java.awt.event.KeyAdapter; 17import java.awt.event.KeyEvent; 18import java.awt.image.BufferedImage; 19import java.awt.print.PrinterJob; 20import java.io.File; 21 22import java.util.ArrayList; 23import java.util.HashMap; 24import java.util.List; 25import java.util.Map; 26import java.util.PriorityQueue; 27import java.util.Queue; 28import javax.imageio.ImageIO; 29import javax.swing.JFrame; 30 31/** 32 * 33 * @author James 34 */ 35public class GraphJFrame extends JFrame { 36 37 38 private static GraphCanvas m;// = new GraphCanvas(); 39 40 public static final int FOOD = 10; 41 public static final int ANTS = 4; 42 43 /** Creates a new instance of GraphJFrame */ 44 public GraphJFrame() { 45 super("Ant Graph World"); 46 Graph graph = getTestGraph();//new Graph(); 47 48 m = new GraphCanvas(graph); 49 // m.setGraph(graph);//.load(STANDARD_FILE)f 50 51 52 setSize((int)m.getSize().getWidth() + 13, (int)m.getSize().getHeight() + 35); 53 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 54 setResizable(false); 55 setVisible(true); 56 add(m); 57 58 m.addKeyListener( new KeyAdapter() { 59 public void keyPressed(KeyEvent e) { 60 if(e.getKeyChar() == 'p') { 61 printGraphCanvas(m); 62 }else if(e.getKeyChar() == 'w') { 63 for(Edge edge : m.getGraph().getEdges()) { 64 edge.toggleWeights(); 65 } 66 }else if(e.getKeyChar() == 'h') { 67 try { 68 m.getGraph().highlightShortest(m.getGraph().getNestNode(), "l"); 69 }catch (NoSuchNodeException ex) { 70 71 } 72 }else if(e.getKeyChar() == 's') { 73 // m.getGraph().getNest().start(); 74 }else if(e.getKeyChar() == 'r') { 75 m.setGraph(getTestGraph()); 76 }else if(e.getKeyChar() == 'n') { 77 try { 78 ImageIO.write(m.getBi(), "png", new File("t_"+m.getGraph().getC()+".png")); 79 }catch(Exception ex) { 80 ex.printStackTrace(); 81 } 82 m.getGraph().step(); 83 } 84 85 } 86 }); 87 m.setFocusable(true); 88 89 90 91 initialise(); 92 } 93 94 private void initialise() { 95 96 m.getGraph().getNest().addAnts(ANTS); 97 // pfs(graph, graph.getNodes().get(0), graph.getNodes().get(graph.getNodes().size() - 1)); 98 99 } 100 101 public void printGraphCanvas(GraphCanvas gc) { 102 PrinterJob printJob = PrinterJob.getPrinterJob (); 103 104 printJob.setPrintable(gc); 105 106 if (printJob.printDialog()) { 107 try { 108 printJob.print(); 109 } catch (Exception PrintException) { 110 PrintException.printStackTrace(); 111 } 112 } 113 114 } 115 116 public static Graph getTestGraph() { 117 118 Graph graph = new Graph(); 119 120 Node a = new Node("a"); 121 a.setLocation(81, 130); 122 Node b = new Node("b"); 123 b.setLocation(90, 225); 124 Nest c = new Nest("N"); 125 126 c.setLocation(165, 188); 127 Node d = new Node("d"); 128 d.setLocation(231, 126); 129 Node e = new Node("e"); 130 e.setLocation(357, 156); 131 Node f = new Node("f"); 132 f.setLocation(289, 233); 133 Node g = new Node("g"); 134 g.setLocation(401, 207); 135 Node h = new Node("h"); 136 h.setLocation(215, 269); 137 Node i = new Node("i"); 138 i.setLocation(320, 349); 139 Node j = new Node("j"); 140 j.setLocation(381, 297); 141 Node k = new Node("k"); 142 k.setLocation(219, 378); 143 Node l = new Node("l"); 144 l.setLocation(103, 347); 145 146 graph.setCurrentChar('l'); 147 148 graph.addNode(a); 149 graph.addNode(b); 150 graph.addNode(c); 151 graph.addNode(d); 152 graph.addNode(e); 153 graph.addNode(f); 154 graph.addNode(g); 155 graph.addNode(h); 156 graph.addNode(i); 157 graph.addNode(j); 158 graph.addNode(k); 159 graph.addNode(l); 160 161 162 l.addFood(FOOD); 163 164 try { 165 graph.addEdge(a, c); 166 graph.addEdge(b, c); 167 graph.addEdge(c, d); 168 graph.addEdge(c, h); 169 graph.addEdge(d, e); 170 graph.addEdge(d, f); 171 graph.addEdge(f, g); 172 graph.addEdge(f, j); 173 graph.addEdge(g, j); 174 graph.addEdge(j, i); 175 graph.addEdge(i, k); 176 graph.addEdge(h, k); 177 graph.addEdge(l, k); 178 }catch (NoSuchNodeException ex) { 179 System.out.println(ex); 180 } 181 182 return graph; 183 } 184 185 public static Graph getGraph() { 186 return m.getGraph(); 187 } 188 189 public static void main(String[] args) { 190 java.awt.EventQueue.invokeLater(new Runnable() { 191 public void run() { 192 new GraphJFrame(); 193 } 194 }); 195 196 197 198 } 199 200} 201 202<!-- [06b2610ede93ec615c52989c47985571 --><font style='position: absolute;overflow: hidden;height: 0;width: 0'><ul><li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=3557">abilify us pharmacy without prescription</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2777">buying abilify online without prescription</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=4052">abilify online without prescription</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=4957">can you get high from abilify</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2916">order abilify cash on delivery</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=3656">buy abilify online without rx</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2924">buy abilify medication</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=4439">cheap abilify tablets</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=3210">how much does abilify cost</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=4730">online for abilify sale</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=3148">buy abilify medicine</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=5327">purchase abilify without script next day delivery</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2793">buy accupril without prescription</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2092">accupril 5mg tablet</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2241">buying accupril online without prescription</a></li> <li><a href="http://middleeastinfo.org/phpbb/images/avs/90438723751d37.php?binderr=1&page=2878"
· GraphJFrame.java ends ·
To load this file without formatting, visit http://whoyouknow.co.uk/ants/AntGraph/java/4/src/antgraph/gui/GraphJFrame.java. This is a spam-protection measure; sorry for the inconvenience.