Ejemplo n.º 1
0
 @Override
 public Set<E> edgesOf(V v) {
   Set<E> edges = new LinkedHashSet<E>();
   if (vertices.contains(v)) {
     for (E edge : graph.edgesOf(v)) {
       V target = Graphs.getOppositeVertex(graph, edge, v);
       if (vertices.contains(target)) {
         edges.add(edge);
       }
     }
   }
   return edges;
 }
Ejemplo n.º 2
0
  public static <V, E> void assertEmbeddingEquals(PlanarGraph<V, E> graph, V vertex, String ids) {
    String[] idArray = ids.split(",");

    LinkedList<String> embeddingIds = new LinkedList<String>();
    for (E edge : graph.edgesOf(vertex)) {
      V other = Graphs.getOppositeVertex(graph, edge, vertex);
      embeddingIds.add(other.toString());
    }

    if (idArray.length > 0) {
      int firstIndex = embeddingIds.indexOf(idArray[0]);
      if (firstIndex < 0) {
        assertEquals(Arrays.deepToString(idArray), Arrays.deepToString(embeddingIds.toArray()));
      } else {
        Collections.rotate(embeddingIds, -firstIndex);
        assertEquals(Arrays.deepToString(idArray), Arrays.deepToString(embeddingIds.toArray()));
      }
    } else {
      assertEquals(Arrays.deepToString(idArray), Arrays.deepToString(embeddingIds.toArray()));
    }
  }