@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); }
.setPosition(Renderer.VertexLabel.Position.CNTR); vv.setForeground(Color.black); vv.getRenderContext().setVertexFillPaintTransformer(vertexPainter); vv.addMouseListener(mouseListener); vv.setVertexToolTipTransformer(vertexToolTipTransformer);
vv.getRenderContext().setVertexLabelTransformer(VertexRef::getLabel); vv.getRenderContext().setEdgeLabelTransformer(Edge::getLabel); vv.getRenderContext().setVertexFillPaintTransformer(vertexRef -> { if (roots.contains(vertexRef)) { return Color.RED;
vv.getRenderContext().setVertexLabelTransformer(VertexRef::getLabel); vv.getRenderContext().setEdgeLabelTransformer(Edge::getLabel); vv.getRenderContext().setVertexFillPaintTransformer(vertexRef -> { if (roots.contains(vertexRef)) { return Color.RED;
public static void setupRenderContext(RenderContext<NodeVisualization, EdgeVisualization> ctx) { ctx.setVertexLabelTransformer(NodeVisualization.LABEL); ctx.setVertexDrawPaintTransformer(NodeVisualization.DRAW_COLOR); ctx.setVertexFillPaintTransformer(NodeVisualization.FILL_COLOR); ctx.setVertexShapeTransformer(NodeVisualization.SHAPE); ctx.setVertexStrokeTransformer(NodeVisualization.STROKE); ctx.setEdgeLabelTransformer(EdgeVisualization.LABEL); ctx.setEdgeDrawPaintTransformer(EdgeVisualization.DRAW_COLOR); ctx.setEdgeStrokeTransformer(EdgeVisualization.STROKE); }
public static void setupRenderContext(RenderContext<NodeVisualization, EdgeVisualization> ctx) { ctx.setVertexLabelTransformer(NodeVisualization.LABEL); ctx.setVertexDrawPaintTransformer(NodeVisualization.DRAW_COLOR); ctx.setVertexFillPaintTransformer(NodeVisualization.FILL_COLOR); ctx.setVertexShapeTransformer(NodeVisualization.SHAPE); ctx.setVertexStrokeTransformer(NodeVisualization.STROKE); ctx.setEdgeLabelTransformer(EdgeVisualization.LABEL); ctx.setEdgeDrawPaintTransformer(EdgeVisualization.DRAW_COLOR); ctx.setEdgeStrokeTransformer(EdgeVisualization.STROKE); }
layout); vv.setPreferredSize(new Dimension(700, 700)); vv.getRenderContext().setVertexFillPaintTransformer( vertexFillPaintTransformer); vv.getRenderContext().setVertexLabelTransformer(vertexStringer);
vv.setBackground(Color.white); vv.getRenderContext().setVertexLabelTransformer(s -> s); vv.getRenderContext().setVertexFillPaintTransformer(vertex -> vertex.equals("Created") ? Color.decode("#B5D9E6") : Color.decode("#FFF1BC")); vv.getRenderContext().setVertexDrawPaintTransformer(vertex -> Color.black);
vis.getRenderContext().setVertexFillPaintTransformer( new VertexColor( selectedComponent, defaultBgColor, highlightBgcolor ));
vis.getRenderContext().setVertexFillPaintTransformer( new VertexColor( selectedComponent, defaultBgColor, highlightBgcolor ));
/** * Sets viewer to be used in satellite view. * * @param viewer * OVTK2Viewer */ public void setViewer(OVTK2Viewer viewer) { this.viewer = viewer; // new satellite viewer satellite = new SatelliteVisualizationViewer<ONDEXConcept, ONDEXRelation>(viewer.getVisualizationViewer(), preferredSize); satellite.setPreferredSize(this.preferredSize); satellite.setSize(this.preferredSize); RenderContext<ONDEXConcept, ONDEXRelation> context = viewer.getVisualizationViewer().getRenderContext(); // configure satellite appearance satellite.getRenderContext().setVertexDrawPaintTransformer(context.getVertexDrawPaintTransformer()); satellite.getRenderContext().setVertexFillPaintTransformer(context.getVertexFillPaintTransformer()); satellite.getRenderContext().setVertexShapeTransformer(context.getVertexShapeTransformer()); satellite.getRenderContext().setEdgeDrawPaintTransformer(context.getEdgeDrawPaintTransformer()); satellite.getRenderContext().setEdgeArrowPredicate(context.getEdgeArrowPredicate()); satellite.getRenderContext().setEdgeStrokeTransformer(context.getEdgeStrokeTransformer()); // add to content pane this.getContentPane().removeAll(); this.getContentPane().add(satellite, BorderLayout.CENTER); JButton scaleToFit = new JButton(Config.language.getProperty("Satellite.ScaleToFit")); scaleToFit.addActionListener(this); this.getContentPane().add(scaleToFit, BorderLayout.SOUTH); this.revalidate(); // fit graph in scaleToFit(); }
private void init() { setOpaque(true); setBackground(new Color(255, 255, 255, 0)); final RenderContext<Node, Edge> context = getRenderContext(); context.setVertexFillPaintTransformer(new VertexFillPaintTransformer()); context.setVertexShapeTransformer(new VertexShapeTransformer(getFontMetrics(getFont()))); context.setVertexLabelTransformer(new VertexLabelTransformer()); getRenderer().getVertexLabelRenderer().setPosition(Renderer.VertexLabel.Position.CNTR); context.setEdgeLabelTransformer(new EdgeLabelTransformer()); context.setEdgeShapeTransformer(new EdgeShape.Line<Node, Edge>()); context.setEdgeLabelClosenessTransformer(new EdgeLabelClosenessTransformer()); context.getEdgeLabelRenderer().setRotateEdgeLabels(rotateEdges); getRenderer().setEdgeLabelRenderer(new EdgeLabelRenderer()); } }
public void export(final DirectedGraph<ElementName, Dependency> g) throws IOException { final Dimension d = new Dimension(this.width, this.height); final Layout<ElementName, Dependency> layout = pickLayout(g, d); final VisualizationImageServer<ElementName, Dependency> viz = new VisualizationImageServer<ElementName, Dependency>( layout, d); final RenderContext<ElementName, Dependency> context = viz .getRenderContext(); context.setEdgeLabelTransformer(new EdgeLabeller()); context.setVertexLabelTransformer(new VertexLabeller()); final VertexRenderer vertexRenderer = new VertexRenderer( viz.getRenderContext()); viz.getRenderContext().setVertexShapeTransformer(vertexRenderer); viz.getRenderer().setVertexLabelRenderer(vertexRenderer); context.setVertexFillPaintTransformer(fillVertex()); context.setEdgeDrawPaintTransformer(fillEdge(g)); context.setEdgeLabelClosenessTransformer(closenessTransformer()); context.setEdgeStrokeTransformer(edgeWeight()); context.setEdgeArrowStrokeTransformer(edgeWeight()); context.setArrowFillPaintTransformer(fillEdge(g)); context.setArrowDrawPaintTransformer(fillEdge(g)); viz.setPreferredSize(new Dimension(this.width, this.height)); viz.setBackground(new Color(1, 1, 1, 0)); final SVGGraphics2D svgGenerator = new SVGGraphics2D(this.out, d); svgGenerator.writeHeader(); viz.paintAll(svgGenerator); svgGenerator.writeTrailer(); svgGenerator.dispose(); }
/** * Create an instance with the specified model and view dimension. * * @param model the model to use * @param preferredSize initial preferred size of the view */ public BasicVisualizationServer(VisualizationModel<V,E> model, Dimension preferredSize) { this.model = model; renderContext = new PluggableRenderContext<V,E>(model.getGraphLayout().getGraph()); model.addChangeListener(this); setDoubleBuffered(false); this.addComponentListener(new VisualizationListener(this)); setPickSupport(new ShapePickSupport<V,E>(this)); setPickedVertexState(new MultiPickedState<V>()); setPickedEdgeState(new MultiPickedState<E>()); renderContext.setEdgeDrawPaintTransformer(new PickableEdgePaintTransformer<E>(getPickedEdgeState(), Color.black, Color.cyan)); renderContext.setVertexFillPaintTransformer(new PickableVertexPaintTransformer<V>(getPickedVertexState(), Color.red, Color.yellow)); setPreferredSize(preferredSize); renderingHints.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); renderContext.getMultiLayerTransformer().addChangeListener(this); }
public void export(final DirectedGraph<ElementName, Dependency> g) throws IOException { final Dimension d = new Dimension(this.width, this.height); final Layout<ElementName, Dependency> layout = pickLayout(g, d); final VisualizationImageServer<ElementName, Dependency> viz = new VisualizationImageServer<ElementName, Dependency>( layout, d); final RenderContext<ElementName, Dependency> context = viz .getRenderContext(); context.setEdgeLabelTransformer(new EdgeLabeller()); context.setVertexLabelTransformer(new VertexLabeller()); final VertexRenderer vertexRenderer = new VertexRenderer( viz.getRenderContext()); viz.getRenderContext().setVertexShapeTransformer(vertexRenderer); viz.getRenderer().setVertexLabelRenderer(vertexRenderer); context.setVertexFillPaintTransformer(fillVertex()); context.setEdgeDrawPaintTransformer(fillEdge(g)); context.setEdgeLabelClosenessTransformer(closenessTransformer()); context.setEdgeStrokeTransformer(edgeWeight()); context.setEdgeArrowStrokeTransformer(edgeWeight()); context.setArrowFillPaintTransformer(fillEdge(g)); context.setArrowDrawPaintTransformer(fillEdge(g)); viz.setPreferredSize(new Dimension(this.width, this.height)); viz.setBackground(new Color(1, 1, 1, 0)); final SVGGraphics2D svgGenerator = new SVGGraphics2D(this.out, d); svgGenerator.writeHeader(); viz.paintAll(svgGenerator); svgGenerator.writeTrailer(); svgGenerator.dispose(); }
public void export(final DirectedGraph<ElementName, Dependency> g) throws IOException { final Dimension d = new Dimension(this.width, this.height); final Layout<ElementName, Dependency> layout = pickLayout(g, d); final VisualizationImageServer<ElementName, Dependency> viz = new VisualizationImageServer<ElementName, Dependency>( layout, d); final RenderContext<ElementName, Dependency> context = viz .getRenderContext(); context.setEdgeLabelTransformer(new EdgeLabeller()); context.setVertexLabelTransformer(new VertexLabeller()); final VertexRenderer vertexRenderer = new VertexRenderer( viz.getRenderContext()); viz.getRenderContext().setVertexShapeTransformer(vertexRenderer); viz.getRenderer().setVertexLabelRenderer(vertexRenderer); context.setVertexFillPaintTransformer(fillVertex()); context.setEdgeDrawPaintTransformer(fillEdge(g)); context.setEdgeLabelClosenessTransformer(closenessTransformer()); context.setEdgeStrokeTransformer(edgeWeight()); context.setEdgeArrowStrokeTransformer(edgeWeight()); context.setArrowFillPaintTransformer(fillEdge(g)); context.setArrowDrawPaintTransformer(fillEdge(g)); viz.setPreferredSize(new Dimension(this.width, this.height)); viz.setBackground(new Color(1, 1, 1, 0)); final SVGGraphics2D svgGenerator = new SVGGraphics2D(this.out, d); svgGenerator.writeHeader(); viz.paintAll(svgGenerator); svgGenerator.writeTrailer(); svgGenerator.dispose(); }
public DrawnIconVertexDemo(final Deployment dm) { this.dmodel = dm; // create a simple graph for the demo graph = new DirectedSparseGraph<Vertex, Edge>(); vv = new VisualizationViewer<Vertex, Edge>(new SpringLayout2<Vertex, Edge>(graph)); vv.getRenderContext().setVertexLabelRenderer(new DefaultVertexLabelRenderer(Color.cyan)); vv.getRenderContext().setEdgeLabelRenderer(new DefaultEdgeLabelRenderer(Color.cyan)); vv.getRenderContext().setVertexIconTransformer(vertexColor); vv.getRenderContext().setVertexFillPaintTransformer(new PickableVertexPaintTransformer<Vertex>(vv.getPickedVertexState(), Color.white, Color.yellow)); vv.getRenderContext().setEdgeDrawPaintTransformer(edgeColor); vv.setBackground(Color.white); // add my listener for ToolTips vv.setVertexToolTipTransformer(new ToStringLabeller<Vertex>()); }
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); }
vv.getRenderContext().setVertexFillPaintTransformer(new MyVertexFillPaintFunction<String>()); vv.getRenderContext().setEdgeDrawPaintTransformer(new MyEdgePaintFunction()); vv.getRenderContext().setEdgeStrokeTransformer(new MyEdgeStrokeFunction());
emptyEdgeLabelTransformer = rc.getEdgeLabelTransformer(); rc.setVertexIconTransformer(new VertexIconTransformer<N>(vv.getPickedVertexState())); rc.setVertexFillPaintTransformer(new ColorTransformer<N>(vv.getPickedVertexState())); rc.setVertexLabelRenderer(new DefaultVertexLabelRenderer(UIDefaults.SELECTEDCOLOR)); rc.setEdgeDrawPaintTransformer(new ColorTransformer<EdgeWrapper<E>>(vv.getPickedEdgeState()));