@SuppressWarnings({ "rawtypes", "unchecked" }) public static void main(String[] args) throws IOException { JFrame jf = new JFrame(); Graph g = getGraph(); VisualizationViewer vv = new VisualizationViewer(new FRLayout(g)); jf.getContentPane().add(vv); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jf.pack(); jf.setVisible(true); }
private static void doFRLayout(final Layout graphLayout, SparseGraph<VertexRef, EdgeRef> jungGraph, Dimension size, final int xOffset, final int yOffset) { FRLayout<VertexRef, EdgeRef> layout = new FRLayout<VertexRef, EdgeRef>(jungGraph); layout.setInitializer(initializer(graphLayout, xOffset, yOffset)); layout.setSize(size); while(!layout.done()) { layout.step(); } for(VertexRef v : jungGraph.getVertices()) { graphLayout.setLocation(v, new Point(layout.getX(v)+xOffset, layout.getY(v)+yOffset)); } }
for(V v1 : getGraph().getVertices()) { calcRepulsion(v1); for(E e : getGraph().getEdges()) { calcAttraction(e); for(V v : getGraph().getVertices()) { if (isLocked(v)) continue; calcPositions(v); cool();
protected void calcRepulsion(V v1) { FRVertexData fvd1 = getFRData(v1); if(fvd1 == null) return; for(V v2 : getGraph().getVertices()) { Point2D p1 = apply(v1); Point2D p2 = apply(v2); if(p1 == null || p2 == null) continue; double xDelta = p1.getX() - p2.getX(); calcRepulsion(v1);
createGraph(VERTEX_COUNT); FRLayout<Number, Number> layout = new FRLayout<Number, Number>(graph); layout.setMaxIterations(100); vv = new VisualizationViewer<Number, Number>(layout, new Dimension(400,400));
FRLayout<Number, Number> layout = new FRLayout<Number, Number>(graph); layout.setMaxIterations(100); layout.setInitializer(new RandomLocationTransformer<Number>(new Dimension(400,400), 0)); vv = new VisualizationViewer<Number, Number>(layout, new Dimension(400,400));
FRLayout frLayout = new FRLayout<String, String>(graph); frLayout.setRepulsionMultiplier(repultion); frLayout.setAttractionMultiplier(attraction); frLayout.setMaxIterations(maxIterations); test = new MyPersistentLayoutImpl(frLayout);
protected void calcRepulsion(V v1) { FRVertexData fvd1 = getFRData(v1); if(fvd1 == null) return; for(V v2 : getGraph().getVertices()) { Point2D p1 = transform(v1); Point2D p2 = transform(v2); if(p1 == null || p2 == null) continue; double xDelta = p1.getX() - p2.getX(); calcRepulsion(v1);
@Override public void setSize(Dimension size) { if(initialized == false) { setInitializer(new RandomLocationTransformer<V>(size)); } super.setSize(size); max_dimension = Math.max(size.height, size.width); }
public void initialize() { doInit(); }
graphLayout = new FRLayout<String,Number>(graph); graphLayout.setMaxIterations(1000);
@Override public void setSize(Dimension size) { if(initialized == false) { setInitializer(new RandomLocationTransformer<V>(size)); } super.setSize(size); max_dimension = Math.max(size.height, size.width); }
public void reset() { doInit(); }
public MyVisualizationViewer(TopologyViewerConfType viewerConfig, Graph<String, String> graph, Map<String, GraphMLMetadata<String>> vertexMetadatas, Map<String, GraphMLMetadata<String>> edgeMetadatas, Map<String, Icon> iconMap, Map<String, Stroke> edgesStrokeMap, Map<String, Color> edgesColorMap) { // RadialTreeLayout<String,Integer> radialLayout; super(new MyPersistentLayoutImpl(new FRLayout<String,String>(graph))); // super(new PersistentLayoutImpl(new RadialTreeLayout(<String,Integer>(graph))); this.viewerConfig = viewerConfig; this.vertexMetadatas = vertexMetadatas; this.edgeMetadatas = edgeMetadatas; this.iconMap = iconMap; this.edgesStrokeMap = edgesStrokeMap; this.edgesColorMap = edgesColorMap; createGraphViewer(); }
private static void doFRLayout(final Layout graphLayout, SparseGraph<VertexRef, EdgeRef> jungGraph, Dimension size, final int xOffset, final int yOffset) { FRLayout<VertexRef, EdgeRef> layout = new FRLayout<VertexRef, EdgeRef>(jungGraph); layout.setInitializer(initializer(graphLayout, xOffset, yOffset)); layout.setSize(size); while(!layout.done()) { layout.step(); } for(VertexRef v : jungGraph.getVertices()) { graphLayout.setLocation(v, new Point(layout.getX(v)+xOffset, layout.getY(v)+yOffset)); } }
FRLayout<String,Number> layout = new FRLayout<String,Number>(graph); layout.setMaxIterations(500);
for(V v1 : getGraph().getVertices()) { calcRepulsion(v1); for(E e : getGraph().getEdges()) { calcAttraction(e); for(V v : getGraph().getVertices()) { if (isLocked(v)) continue; calcPositions(v); cool();
public void reset() { doInit(); }
new PersistentLayoutImpl<String,Number>(new FRLayout<String,Number>(graph));