Package org.geotools.graph.structure

Examples of org.geotools.graph.structure.Graph


    assertTrue(n1.getOutEdges().contains(e));
    assertTrue(n2.getInEdges().contains(e));
  }
 
  public void test_getGraph() {
    Graph graph = m_builder.getGraph();
    assertTrue(graph instanceof DirectedGraph);
  }
View Full Code Here


      victim.deleteOnExit();
      serializer().setProperty(SerializedReaderWriter.FILENAME, victim.getAbsolutePath());
     
      serializer().write(builder().getGraph());
     
      Graph before = builder().getGraph();
      Graph after = serializer().read();
     
      //ensure same number of nodes and edges
      assertTrue(before.getNodes().size() == after.getNodes().size());
      assertTrue(before.getEdges().size() == after.getEdges().size());

      //ensure two nodes of degree 1, and nnodes-2 nodes of degree 2
      GraphVisitor visitor = new GraphVisitor() {
        public int visit(Graphable component) {
          DirectedNode node = (DirectedNode)component;
          if (node.getInDegree() == 0 || node.getOutDegree() == 0)
            return(Graph.PASS_AND_CONTINUE);
          return(Graph.FAIL_QUERY);
        }
      };
      assertTrue(after.queryNodes(visitor).size() == 2);
     
      visitor = new GraphVisitor() {
        public int visit(Graphable component) {
          DirectedNode node = (DirectedNode)component;
          if (node.getInDegree() == 1 || node.getOutDegree() == 1)
            return(Graph.PASS_AND_CONTINUE);
          return(Graph.FAIL_QUERY);
        }
      };
     
      assertTrue(after.getNodesOfDegree(2).size() == nnodes-2);
           
    }
    catch(Exception e) {
      e.printStackTrace();
      assertTrue(false)
View Full Code Here

      victim.deleteOnExit();
      serializer().setProperty(SerializedReaderWriter.FILENAME, victim.getAbsolutePath());
     
      serializer().write(builder().getGraph());
     
      Graph before = builder().getGraph();
      Graph after = serializer().read();
     
       //ensure same number of nodes and edges
      assertTrue(before.getNodes().size() == after.getNodes().size());
      assertTrue(before.getEdges().size() == after.getEdges().size());

      GraphVisitor visitor = new GraphVisitor() {
        public int visit(Graphable component) {
          DirectedNode node = (DirectedNode)component;
          if (node.getInDegree() == 0 && node.getOutDegree() == 2)
            return(Graph.PASS_AND_CONTINUE);
          return(Graph.FAIL_QUERY);
        }
      };
      assertTrue(after.queryNodes(visitor).size() == 1); //root
     
      visitor = new GraphVisitor() {
        public int visit(Graphable component) {
          DirectedNode node = (DirectedNode)component;
          if (node.getInDegree() == 1 && node.getOutDegree() == 2)
            return(Graph.PASS_AND_CONTINUE);
          return(Graph.FAIL_QUERY);
        }
      };
      assertTrue(after.queryNodes(visitor).size() == Math.pow(2,k)-2); //internal
     
      visitor = new GraphVisitor() {
        public int visit(Graphable component) {
          DirectedNode node = (DirectedNode)component;
          if (node.getInDegree() == 1 && node.getOutDegree() == 0)
            return(Graph.PASS_AND_CONTINUE);
          return(Graph.FAIL_QUERY);
        }
      };
      assertTrue(after.queryNodes(visitor).size() == Math.pow(2,k)); //leaves
    }
    catch(Exception e) {
      e.printStackTrace();
      assertTrue(false);
    }
View Full Code Here

      assertTrue(true);   
    }
  }
 
  public void test_getGraph() {
    Graph graph = m_builder.getGraph()
    assertTrue(graph != null);
  }
View Full Code Here

    fc.accepts(new FeatureVisitor() {
        public void visit(Feature feature) {
            generator.add(feature);
        }
    }, null);
    Graph graph = generator.getGraph();
    // graphExample end
   
    // visitor example start
    class OrphanVisitor implements GraphVisitor {
        private int count = 0;
View Full Code Here

          gg.add(new Object[]{type,ad.getType()});
        }
      }
    }
   
    Graph graph = gg.getGraph();
   
    //test the graph for cycles
    CycleDetector cycleDetector = new DirectedCycleDetector(graph);
    if (cycleDetector.containsCycle()) {
      logger.info("Cycle found");
View Full Code Here

        )
      );
    }
   
    generator().generate();
    Graph built = generator().getGraph();
   
    //ensure correct graph structure
    assertTrue(built.getEdges().size() == n);
    assertTrue(built.getNodes().size() == n+1);
   
    //ensure coordinates
    GraphVisitor visitor = new GraphVisitor() {
      public int visit(Graphable component) {
        Edge e = (Edge)component;
        XYNode a = (XYNode)e.getNodeA();
        XYNode b = (XYNode)e.getNodeB();
       
        //coordinats should be a distance of sqrt(2)
        //assertTrue(b.getX() == a.getX() + 1 && b.getY() == a.getY() + 1);
        assertTrue(
          b.getCoordinate().equals(
            new Coordinate(a.getCoordinate().x+1, a.getCoordinate().y+1)
          )
        );
       
        return(0);
      }
    };
    built.visitEdges(visitor);
  }
View Full Code Here

      new LineSegment(new Coordinate(base.x + n, base.y + n), base)
    );
   
    generator().generate();
   
    Graph built = generator().getGraph();
   
    assertTrue(built.getEdges().size() == n+1);
    assertTrue(built.getNodes().size() == n+1);
   
    assertTrue(built.getNodesOfDegree(2).size() == n+1);
   
    //ensure coordinates
    GraphVisitor visitor = new GraphVisitor() {
      public int visit(Graphable component) {
        Edge e = (Edge)component;
        XYNode a = (XYNode)e.getNodeA();
        XYNode b = (XYNode)e.getNodeB();
       
        //coordinats should be a distance of sqrt(2)
        if (b.getCoordinate().equals(base))
          assertTrue(a.getCoordinate().equals(new Coordinate(n,n)));
        else
          assertTrue(
            b.getCoordinate().equals(
              new Coordinate(a.getCoordinate().x+1, a.getCoordinate().y+1)
            )
          );
       
//        if (b.getX() == base.x && b.getY() == base.y)
//          assertTrue(a.getX() == n && a.getY() == n);
//        else assertTrue(b.getX() == a.getX() + 1 && b.getY() == a.getY() + 1);
       
        return(0);
      }
    };
    built.visitEdges(visitor);
  }
View Full Code Here

    List partitions = partitioner.getPartitions();
   
    assertTrue(partitions.size() == 1);
   
    //ensure every node in the original graph is in the new graph
    final Graph g = (Graph)partitions.get(0);
    assertTrue(g.getNodes().size() == builder().getGraph().getNodes().size());
    assertTrue(g.getEdges().size() == builder().getGraph().getEdges().size());
   
    GraphVisitor visitor = new GraphVisitor() {
      public int visit(Graphable component) {
        assertTrue(g.getNodes().contains(component));
        return 0;
      }
    };
    builder().getGraph().visitNodes(visitor);
  }
View Full Code Here

   
    List partitions = parter.getPartitions();
   
    assertTrue(partitions.size() == 2);
   
    Graph left = (Graph)partitions.get(0);
    Graph right = (Graph)partitions.get(1);
   
    if (!left.getNodes().contains(lc)) {
      //swap
      left = (Graph)partitions.get(1);
      right = (Graph)partitions.get(0);
    }
   
    assertTrue(left.getNodes().contains(lc));
    assertTrue(right.getNodes().contains(rc));
   
    assertTrue(left.getNodes().size() == Math.pow(2, k)-1);
    assertTrue(left.getEdges().size() == Math.pow(2, k)-2);
    assertTrue(right.getNodes().size() == Math.pow(2, k)-1);
    assertTrue(right.getEdges().size() == Math.pow(2, k)-2);
   
    GraphVisitor visitor = new GraphVisitor() {
      public int visit(Graphable component) {
        assertTrue(component.getObject().toString().startsWith("0.0"));
        return 0;
      }
    };
    left.visitNodes(visitor);
   
    visitor = new GraphVisitor() {
      public int visit(Graphable component) {
        assertTrue(component.getObject().toString().startsWith("0.1"));
        return 0;
      }
    };
    right.visitNodes(visitor);
  }
View Full Code Here

TOP

Related Classes of org.geotools.graph.structure.Graph

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.