public FastRenderingGraph(Graph<V,E> graph, Set<Rectangle2D> bounds, BasicVisualizationServer<V,E> vv) { this.graph = graph; this.bounds = bounds; this.vv = vv; this.rc = vv.getRenderContext(); }
@Override public void writeTo(Graph data, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String, Object> headers, OutputStream out) throws IOException { Integer width = Integer.parseInt(Optional.ofNullable(request.getParameter("width")).orElse(DEFAULT_WIDTH)); Integer height = Integer.parseInt(Optional.ofNullable(request.getParameter("height")).orElse(DEFAULT_HEIGHT)); String layoutName = Optional.ofNullable(request.getParameter("layout")).orElse(DEFAULT_LAYOUT); GraphJung<Graph> graph = new GraphJung<Graph>(data); AbstractLayout<Vertex, Edge> layout = getLayout(graph, layoutName); layout.setSize(new Dimension(width, height)); BasicVisualizationServer<Vertex, Edge> viz = new BasicVisualizationServer<>(layout); viz.setPreferredSize(new Dimension(width, height)); viz.getRenderContext().setEdgeLabelTransformer(edgeLabelTransformer); viz.getRenderContext().setVertexLabelTransformer(vertexLabelTransformer); viz.getRenderContext().setVertexFillPaintTransformer(vertexColorTransformer); BufferedImage bi = renderImage(viz); String imageType = null; if (mediaType.equals(CustomMediaTypes.IMAGE_JPEG_TYPE)) { imageType = "jpg"; } else if (mediaType.equals(CustomMediaTypes.IMAGE_PNG_TYPE)) { imageType = "png"; } ImageIO.write(bi, imageType, out); }
public void startNodeCreate(BasicVisualizationServer<N, E> vv, Point2D point) { Preconditions.checkState( vv.getModel().getNetwork() instanceof MutableNetwork<?, ?>, "graph must be mutable"); N newNode = nodeFactory.get(); VisualizationModel<N, E> visualizationModel = vv.getModel(); MutableNetwork<N, E> graph = (MutableNetwork<N, E>) visualizationModel.getNetwork(); graph.addNode(newNode); Point2D p2d = vv.getRenderContext().getMultiLayerTransformer().inverseTransform(point); visualizationModel.getLayoutModel().set(newNode, p2d.getX(), p2d.getY()); vv.repaint(); }
@SuppressWarnings({ "rawtypes", "unchecked" }) public CachingEdgeRenderer(BasicVisualizationServer<V,E> vv) { vv.getRenderContext().getMultiLayerTransformer().addChangeListener(this); Layout<V,E> layout = vv.getGraphLayout(); if(layout instanceof LayoutEventSupport) { ((LayoutEventSupport)layout).addLayoutChangeListener(this); } } /**
@SuppressWarnings({ "rawtypes", "unchecked" }) public CachingVertexRenderer(BasicVisualizationServer<V,E> vv) { vv.getRenderContext().getMultiLayerTransformer().addChangeListener(this); Layout<V,E> layout = vv.getGraphLayout(); if(layout instanceof LayoutEventSupport) { ((LayoutEventSupport)layout).addLayoutChangeListener(this); } }
layout); vv.setPreferredSize(new Dimension(700, 700)); vv.getRenderContext().setVertexFillPaintTransformer( vertexFillPaintTransformer); vv.getRenderContext().setVertexLabelTransformer(vertexStringer);
layout); vv.setPreferredSize(new Dimension(700, 700)); vv.getRenderContext().setVertexFillPaintTransformer( vertexFillPaintTransformer); vv.getRenderContext().setVertexLabelTransformer(vertexStringer);
public void startVertexCreate(BasicVisualizationServer<V, E> vv, Point2D point) { V newVertex = vertexFactory.get(); Layout<V,E> layout = vv.getGraphLayout(); Graph<V,E> graph = layout.getGraph(); graph.addVertex(newVertex); layout.setLocation(newVertex, vv.getRenderContext().getMultiLayerTransformer().inverseTransform(point)); vv.repaint(); }
visualization.getRenderContext().setVertexLabelTransformer(new ToStringLabeller<String>()); Transformer<String, Paint> myVertexTransformer = new MyVertexTransformer(startMessage, stopMessages); visualization.getRenderContext().setVertexFillPaintTransformer(myVertexTransformer); Transformer<String, Paint> myEdgeTransformer = new MyEdgeTransformer(); visualization.getRenderContext().setEdgeDrawPaintTransformer(myEdgeTransformer); visualization.getRenderer().getVertexLabelRenderer().setPosition(Position.AUTO); visualization.setPreferredSize(new Dimension(900, 650));