private Layout<ElementName, Dependency> circleLayout( final DirectedGraph<ElementName, Dependency> g, final Dimension d) { final CircleLayout<ElementName, Dependency> l = new CircleLayout<ElementName, Dependency>( g); l.setSize(new Dimension(d.width - 100, d.height - 60)); shift(l, 60, 50); return l; }
private Layout<ElementName, Dependency> circleLayout( final DirectedGraph<ElementName, Dependency> g, final Dimension d) { final CircleLayout<ElementName, Dependency> l = new CircleLayout<ElementName, Dependency>( g); l.setSize(new Dimension(d.width - 100, d.height - 60)); shift(l, 60, 50); return l; }
private Layout<ElementName, Dependency> circleLayout( final DirectedGraph<ElementName, Dependency> g, final Dimension d) { final CircleLayout<ElementName, Dependency> l = new CircleLayout<ElementName, Dependency>( g); l.setSize(new Dimension(d.width - 100, d.height - 60)); shift(l, 60, 50); return l; }
/** * Re-position nodes in circular layout */ private void repositionTopology(String containerName) { Graph<String, String> graph = new SparseMultigraph<String, String>(); metaCache.get(containerName).clear(); metaCache.get(containerName).putAll(stagedNodes); metaCache.get(containerName).putAll(newNodes); for (Map<String, Object> on : metaCache.get(containerName).values()) { graph.addVertex(on.toString()); List<Map<String, Object>> adjacencies = (List<Map<String, Object>>) on.get("adjacencies"); for (Map<String, Object> adj : adjacencies) { graph.addEdge( adj.toString(), adj.get("nodeFrom").toString(), adj.get("nodeTo").toString() ); } } CircleLayout<String, String> layout = new CircleLayout<String, String>(graph); layout.setSize(new Dimension(1200, 365)); for (Map.Entry<String, Map<String, Object>> v : newNodes.entrySet()) { Double x = layout.transform(v.getKey()).getX(); Double y = layout.transform(v.getKey()).getY(); Map<String, String> nodeData = (HashMap<String, String>) v.getValue().get("data"); nodeData.put("$x", (x - 600) + ""); nodeData.put("$y", (y - 225) + ""); newNodes.get(v.getKey()).put("data", nodeData); } }
private Layout<Node, Edge> newLayout(final Diagram diagram) { final Layout<Node, Edge> diagramLayout; if (layout != null && layout.startsWith("spring")) { diagramLayout = new SpringLayout<Node, Edge>(diagram, new ConstantTransformer(Integer.parseInt(config("spring", "100")))); } else if (layout != null && layout.startsWith("kk")) { Distance<Node> distance = new DijkstraDistance<Node, Edge>(diagram); if (layout.endsWith("unweight")) { distance = new UnweightedShortestPath<Node, Edge>(diagram); } diagramLayout = new KKLayout<Node, Edge>(diagram, distance); } else if (layout != null && layout.equalsIgnoreCase("circle")) { diagramLayout = new CircleLayout<Node, Edge>(diagram); } else if (layout != null && layout.equalsIgnoreCase("fr")) { diagramLayout = new FRLayout<Node, Edge>(diagram); } else { final LevelLayout levelLayout = new LevelLayout(diagram); levelLayout.adjust = adjust; diagramLayout = levelLayout; } return diagramLayout; }
private void groupCluster(AggregateLayout<Number,Number> layout, Set<Number> vertices) { if(vertices.size() < layout.getGraph().getVertexCount()) { Point2D center = layout.apply(vertices.iterator().next()); Graph<Number,Number> subGraph = SparseMultigraph.<Number,Number>getFactory().get(); for(Number v : vertices) { subGraph.addVertex(v); } Layout<Number,Number> subLayout = new CircleLayout<Number,Number>(subGraph); subLayout.setInitializer(vv.getGraphLayout()); subLayout.setSize(new Dimension(40,40)); layout.put(subLayout,center); vv.repaint(); } } }
createEdges(v); Layout<Integer,Number> layout = new CircleLayout<Integer,Number>(graph); vv = new VisualizationViewer<Integer,Number>(layout, new Dimension(600,400)); vv.setBackground(Color.white);
@Override public void actionPerformed(ActionEvent e) { final GraphViewerPanel viewerPanel = (GraphViewerPanel) frame.getTabbedPane().getSelectedComponent(); CircleLayout circleLayout = new CircleLayout<String, String>(viewerPanel.getCurrentGraph()); MyVisualizationViewer vv = (MyVisualizationViewer) viewerPanel.getVisualizationViewer(); vv.setGraphLayout(circleLayout); vv.repaint(); } }
Layout<String, String> layout = new CircleLayout<String, String>(graph); layout.setSize(new Dimension(900, 600));
private static AbstractLayout<Vertex, Edge> getLayout(GraphJung<Graph> graph, String layoutName) { switch (layoutName) { case "KKLayout": return new KKLayout<>(graph); case "CircleLayout": return new CircleLayout<>(graph); case "FRLayout": return new FRLayout<>(graph); case "FRLayout2": return new FRLayout2<>(graph); case "ISOMLayout": return new ISOMLayout<>(graph); case "SpringLayout": return new SpringLayout<>(graph); default: return new KKLayout<>(graph); } }
private Layout createLayout(G graph, String layout, double repultion , double attraction, int maxIterations, double nodeDensity) { PersistentLayout test = null; if (layout.equals("CircleLayout")) { CircleLayout circleLayoutLayout = new CircleLayout<String, String>(graph);
case CIRCLE : layout = new CircleLayout<V, E>(graph); break; case ISOM : layout = new ISOMLayout<V, E>(graph); break; case FR : layout = new FRLayout<V, E>(graph); break;
@Override public void updateLayout(final Graph graph) { final Layout graphLayout = graph.getLayout(); SparseGraph<VertexRef, Edge> jungGraph = new SparseGraph<VertexRef, Edge>(); Collection<? extends Vertex> vertices = graph.getDisplayVertices(); for(VertexRef v : vertices) { jungGraph.addVertex(v); } for(Edge e : graph.getDisplayEdges()) { jungGraph.addEdge(e, e.getSource().getVertex(), e.getTarget().getVertex()); } CircleLayout<VertexRef, Edge> layout = new CircleLayout<VertexRef, Edge>(jungGraph); layout.setInitializer(initializer(graphLayout)); layout.setSize(selectLayoutSize(graph)); for(VertexRef v : vertices) { graphLayout.setLocation(v, new Point(layout.getX(v), layout.getY(v))); } }
public DerivationViewer(DerivationTree g, Dimension d, Color targetColor, AnchorType anchor) { super(new CircleLayout<>(g)); anchorStyle = anchor; DerivationTreeTransformer dtt = new DerivationTreeTransformer(g, d, false); StaticLayout<Node, DerivationTreeEdge> derivationLayout = new StaticLayout<>(g, dtt); // derivationLayout.setSize(dtt.getSize()); setGraphLayout(derivationLayout); scaleToLayout(new LayoutScalingControl()); // g.addCorrespondences(); setPreferredSize(new Dimension(DEFAULT_HEIGHT, DEFAULT_WIDTH)); getRenderContext().setVertexLabelTransformer(new ToStringLabeller<>()); DefaultModalGraphMouse<Node, DerivationTreeEdge> graphMouse = new DefaultModalGraphMouse<>(); graphMouse.setMode(ModalGraphMouse.Mode.TRANSFORMING); setGraphMouse(graphMouse); addKeyListener(graphMouse.getModeKeyListener()); // this.setPickedVertexState(new DerivationTreePickedState(g)); getRenderContext().setVertexFillPaintTransformer(vp); getRenderContext().setEdgeStrokeTransformer(es); getRenderContext().setVertexShapeTransformer(ns); getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR); TGT = targetColor; anchorPoint = dtt.getAnchorPosition(anchorStyle); }
@Override public void updateLayout(final Graph graph) { final Layout graphLayout = graph.getLayout(); SparseGraph<VertexRef, Edge> jungGraph = new SparseGraph<VertexRef, Edge>(); Collection<? extends Vertex> vertices = graph.getDisplayVertices(); for(VertexRef v : vertices) { jungGraph.addVertex(v); } for(Edge e : graph.getDisplayEdges()) { jungGraph.addEdge(e, e.getSource().getVertex(), e.getTarget().getVertex()); } CircleLayout<VertexRef, Edge> layout = new CircleLayout<VertexRef, Edge>(jungGraph); layout.setInitializer(initializer(graphLayout)); layout.setSize(selectLayoutSize(graph)); for(VertexRef v : vertices) { graphLayout.setLocation(v, new Point(layout.getX(v), layout.getY(v))); } }
break; case CircleLayout: layout = new CircleLayout<N, EdgeWrapper<E>>(graph); break; case FRLayout2:
break; case CircleLayout: layout = new CircleLayout<N, EdgeWrapper<E>>(graph); break; case FRLayout2: