Dépôt du be graphe
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

WeaklyConnectedComponentGraphicObserver.java 1.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package org.insa.algo.weakconnectivity;
  2. import java.awt.Color;
  3. import java.util.ArrayList;
  4. import org.insa.drawing.Drawing;
  5. import org.insa.drawing.graph.GraphDrawing;
  6. import org.insa.graph.Node;
  7. public class WeaklyConnectedComponentGraphicObserver extends WeaklyConnectedComponentObserver {
  8. private static final Color[] COLORS = {
  9. Color.BLUE, Color.ORANGE, Color.GREEN, Color.YELLOW, Color.RED
  10. };
  11. // Drawing + Graph drawing
  12. private Drawing drawing;
  13. private GraphDrawing gdrawing;
  14. // Current index color
  15. private int cindex = 0;
  16. public WeaklyConnectedComponentGraphicObserver(Drawing drawing) {
  17. super(true);
  18. this.drawing = drawing;
  19. this.gdrawing = new GraphDrawing(drawing);
  20. this.drawing.setAutoRepaint(true);
  21. }
  22. @Override
  23. public void notifyStartComponent(Node curNode) {
  24. this.drawing.setColor(COLORS[cindex]);
  25. cindex = (cindex + 1) % COLORS.length;
  26. }
  27. @Override
  28. public void notifyNewNodeInComponent(Node node) {
  29. this.gdrawing.drawPoint(node.getPoint(), 5);
  30. this.drawing.repaint();
  31. }
  32. @Override
  33. public void notifyEndComponent(ArrayList<Node> nodes) {
  34. }
  35. }