SHARE
TWEET

Untitled

a guest Dec 5th, 2019 69 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package lab4;
  2.  
  3. import java.awt.Graphics;
  4. import java.io.Serializable;
  5. import java.util.ArrayList;
  6. import java.util.List;
  7.  
  8. /*
  9.  *  Program: Prosty edytor grafu
  10.  *     Plik: Graph.java
  11.  *          
  12.  *  Klasa Graph reprezentuje graf na płaszczyźnie.
  13.  *  Klasa może być klasą bazową dla klas reprezentujących
  14.  *  grafy modelujące wybrane zagadnienia np.:
  15.  *     - schemat komunikacji miejskiej,
  16.  *     - drzewo genealogiczne,
  17.  *     - schemat obwodu elektronicznego typu RLC,
  18.  *     - schemat topologi sieci komputerowej
  19.  *            
  20.  *    Autor: Adrian Siwak
  21.  *     Data:  grudzień 2019 r.
  22.  */
  23.  
  24. public class Graph implements Serializable {
  25.    
  26.     private static final long serialVersionUID = 1L;
  27.  
  28.     // Lista węzłów grafu
  29.     private List<Node> nodes;
  30.     private List<Edge> edges;
  31.    
  32.     public Graph() {
  33.         this.nodes = new ArrayList<Node>();
  34.         this.edges = new ArrayList<Edge>();
  35.            
  36.     }
  37.    
  38.     public void addEdge(Edge edge){
  39.         edges.add(edge);
  40.     }
  41.    
  42.     public void addNode(Node node){
  43.         nodes.add(node);
  44.     }
  45.    
  46.     public void removeEdge(Edge edge){
  47.         edges.remove(edge);
  48.     }
  49.    
  50.     public void removeNode(Node node){
  51.         nodes.remove(node);
  52.     }
  53.    
  54.     public Edge[] getEdges(){
  55.         Edge [] array = new Edge[0];
  56.         return edges.toArray(array);
  57.     }
  58.    
  59.     public Node[] getNodes(){
  60.         Node [] array = new Node[0];
  61.         return nodes.toArray(array);
  62.     }
  63.    
  64.     public void draw(Graphics g){
  65.         for(Edge edge : edges){
  66.             edge.draw(g);
  67.         }
  68.         for(Node node : nodes){
  69.             node.draw(g);
  70.         }
  71.     }
  72.    
  73.    
  74.  
  75. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top