/** * @param lock {@code true} to lock all vertices in place, {@code false} to unlock all vertices */ public void lock(boolean lock) { for(V v : graph.getVertices()) { lock(v, lock); } } }
/** * Locks all vertices in place if {@code lock} is {@code true}, otherwise unlocks all vertices. */ public void lock(boolean lock) { for(V v : graph.getVertices()) { lock(v, lock); } } }
public void process() { try { if (g.getVertexCount() < 100) { layout.lock(true); //add a vertex Integer v1 = new Integer(g.getVertexCount()); Relaxer relaxer = vv.getModel().getRelaxer(); relaxer.pause(); g.addVertex(v1); System.err.println("added node " + v1); // wire it to some edges if (v_prev != null) { g.addEdge(g.getEdgeCount(), v_prev, v1); // let's connect to a random vertex, too! int rand = (int) (Math.random() * g.getVertexCount()); g.addEdge(g.getEdgeCount(), v1, rand); } v_prev = v1; layout.initialize(); relaxer.resume(); layout.lock(false); } else { done = true; } } catch (Exception e) { System.out.println(e); } }