Example usage for org.apache.commons.collections15 Transformer Transformer

List of usage examples for org.apache.commons.collections15 Transformer Transformer

Introduction

In this page you can find the example usage for org.apache.commons.collections15 Transformer Transformer.

Prototype

Transformer

Source Link

Usage

From source file:org.structnetalign.util.GraphMLAdaptor.java

private static <E extends Edge> Transformer<E, String> getEdgeWeightTransformer() {
    return new Transformer<E, String>() {
        @Override//from   w  w  w  .  j  a  va2  s  . c o m
        public String transform(E edge) {
            return PipelineProperties.getInstance().getOutputFormatter().format(edge.getWeight());
        }
    };
}

From source file:org.structnetalign.util.GraphMLAdaptor.java

private static <E extends Edge> Transformer<GraphMetadata, Graph<Integer, E>> getGraphTransformer() {
    return new Transformer<GraphMetadata, Graph<Integer, E>>() {
        @Override//  www .  j a v  a2 s .  co m
        public Graph<Integer, E> transform(GraphMetadata metadata) {
            metadata.getEdgeDefault();
            if (metadata.getEdgeDefault().equals(EdgeDefault.DIRECTED)) {
                return new DirectedSparseGraph<Integer, E>();
            } else {
                return new UndirectedSparseGraph<Integer, E>();
            }
        }
    };
}

From source file:org.structnetalign.util.GraphMLAdaptor.java

private static <E extends Edge> Transformer<HyperEdgeMetadata, E> getHyperEdgeTransformer() {
    return new Transformer<HyperEdgeMetadata, E>() {
        @Override/*from   w w  w  .ja  v  a 2s . c o m*/
        public E transform(HyperEdgeMetadata metadata) {
            return null;
        }
    };
}

From source file:org.structnetalign.util.GraphMLAdaptor.java

private static Transformer<NodeMetadata, Integer> getVertexTransformer() {
    return new Transformer<NodeMetadata, Integer>() {
        @Override// w w w .j  av a  2  s  .c  om
        public Integer transform(NodeMetadata metadata) {
            try {
                return Integer.parseInt(metadata.getId());
            } catch (NumberFormatException e) {
                throw new IllegalArgumentException("The graph has a vertex whose Id is not a number");
            }
        }
    };
}

From source file:org.tellervo.desktop.tridasv2.ui.ComponentViewer.java

private void setupTreeGUI() {
    //create a graph
    Graph<String, String> ig = Graphs
            .<String, String>synchronizedDirectedGraph(new DirectedSparseMultigraph<String, String>());

    ObservableGraph<String, String> og = new ObservableGraph<String, String>(ig);
    og.addGraphEventListener(new GraphEventListener<String, String>() {

        public void handleGraphEvent(GraphEvent<String, String> evt) {
            System.err.println("got " + evt);

        }//from   w  w  w. j  a  v  a2  s .c o m
    });
    this.g = og;
    //create a graphdraw
    layout = new FRLayout<String, String>(g);
    //layout = new ISOMLayout<String, String>(g);
    //layout = new KKLayout<String, String>(g);
    //layout = new CircleLayout<String, String>(g);

    vv = new VisualizationViewer<String, String>(layout, null);

    //tree2Panel.putClientProperty("defeatSystemEventQueueCheck", Boolean.TRUE);

    tree2Panel.setLayout(new BorderLayout());
    tree2Panel.setBackground(java.awt.Color.lightGray);
    tree2Panel.setFont(new Font("Serif", Font.PLAIN, 12));

    vv.getModel().getRelaxer().setSleepTime(500);
    final DefaultModalGraphMouse graphMouse = new DefaultModalGraphMouse<Number, Number>();

    vv.setGraphMouse(graphMouse);

    vv.getRenderer().getVertexLabelRenderer().setPosition(Renderer.VertexLabel.Position.CNTR);
    vv.getRenderContext().setVertexLabelTransformer(new ToStringLabeller());
    vv.getRenderContext().setEdgeLabelTransformer(new ToStringLabeller());

    Transformer<String, Paint> vertexColor = new Transformer<String, Paint>() {
        public Paint transform(String i) {

            if (i.equals(ComponentTreeCellRenderer.getFullTitle(sample, false))) {
                return Color.ORANGE;
            } else {
                return Color.PINK;
            }
        }
    };

    Transformer<String, Paint> edgeColor = new Transformer<String, Paint>() {
        public Paint transform(String i) {
            return Color.WHITE;
        }
    };

    Transformer<String, Shape> vertexShape = new Transformer<String, Shape>() {
        public Shape transform(String i) {

            if (i.equals(ComponentTreeCellRenderer.getFullTitle(sample, false))) {
                return new Rectangle(-150, -20, 300, 40);

            } else {
                return new Rectangle(-150, -10, 300, 20);
            }
        }
    };

    vv.getRenderContext().setVertexFillPaintTransformer(vertexColor);
    vv.getRenderContext().setEdgeDrawPaintTransformer(edgeColor);
    vv.getRenderContext().setVertexShapeTransformer(vertexShape);
    ;

    vv.setForeground(Color.BLACK);
    tree2Panel.add(vv, BorderLayout.CENTER);

    JComboBox modeBox = graphMouse.getModeComboBox();

    modeBox.setRenderer(new JUNGModeRenderer());

    modeBox.addItemListener(graphMouse.getModeListener());
    graphMouse.setMode(ModalGraphMouse.Mode.TRANSFORMING);

    final ScalingControl scaler = new CrossoverScalingControl();

    JButton plus = new JButton("+");
    plus.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1.1f, vv.getCenter());
        }
    });
    JButton minus = new JButton("-");
    minus.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            scaler.scale(vv, 1 / 1.1f, vv.getCenter());
        }
    });

    JPanel scaleGrid = new JPanel(new GridLayout(1, 0));
    scaleGrid.setBorder(BorderFactory.createTitledBorder("Zoom"));

    JPanel controls = new JPanel();
    scaleGrid.add(plus);
    scaleGrid.add(minus);
    controls.add(scaleGrid);
    controls.add(modeBox);

    tree2Panel.add(controls, BorderLayout.NORTH);

}

From source file:org.wicketstuff.datatable_autocomplete.tree.TreeVisualizer.java

/**
 * @param graph/*from w ww .  j a  va2 s  .c o  m*/
 * 
 */
public TreeVisualizer(String title, DirectedGraph<TrieNode<String>, String> graph) {
    super();

    // The Layout<V, E> is parameterized by the vertex and edge types
    Layout<TrieNode<String>, String> layout = new TreeLayout<TrieNode<String>, String>(
            new DelegateForest<TrieNode<String>, String>(graph));
    // layout.setSize(new Dimension(300,300)); // sets the initial size of the space
    // The BasicVisualizationServer<V,E> is parameterized by the edge types
    BasicVisualizationServer<TrieNode<String>, String> vv = new BasicVisualizationServer<TrieNode<String>, String>(
            layout);
    vv.setPreferredSize(new Dimension(350, 350)); // Sets the viewing area size

    vv.getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR);

    vv.getRenderContext().setVertexLabelTransformer(new Transformer<TrieNode<String>, String>() {

        public String transform(TrieNode<String> node) {
            return node.getCharacter();
        }
    });

    JFrame frame = new JFrame(title);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(vv);
    frame.pack();
    frame.setVisible(true);
}

From source file:org.wicketstuff.datatable_autocomplete.tree.TrieVisualizer.java

/**
 * @param graph//  w  w w  . j  a v a 2s .  c  o m
 * 
 */
public TrieVisualizer(String title, TrieGraph<T> graph, TrieVisualizerLayout layoutType) {

    this.graph = graph;

    // The Layout<V, E> is parameterized by the vertex and edge types

    Layout<TrieNode<T>, String> layout = null;

    switch (layoutType) {
    case TREE:
        layout = new TreeLayout<TrieNode<T>, String>(new DelegateForest<TrieNode<T>, String>(graph));
        break;

    case DAG:
        layout = new DAGLayout<TrieNode<T>, String>(graph);
        break;
    }

    // layout.setSize(new Dimension(300,300)); // sets the initial size of
    // the space
    // The BasicVisualizationServer<V,E> is parameterized by the edge types
    VisualizationViewer<TrieNode<T>, String> vv = new VisualizationViewer<TrieNode<T>, String>(layout);
    vv.setPreferredSize(new Dimension(350, 350)); // Sets the viewing area
    // size

    vv.getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR);

    vv.getRenderContext().setVertexLabelTransformer(new Transformer<TrieNode<T>, String>() {

        public String transform(TrieNode<T> node) {
            return node.getCharacter();
        }
    });

    // Create a graph mouse and add it to the visualization component
    DefaultModalGraphMouse<TrieNode<T>, String> gm = new DefaultModalGraphMouse<TrieNode<T>, String>();
    gm.setMode(ModalGraphMouse.Mode.TRANSFORMING);
    vv.setGraphMouse(gm);

    JFrame frame = new JFrame(title);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(vv);
    frame.pack();
    frame.setVisible(true);
}

From source file:org.wicketstuff.datatable_autocomplete.tree.TSTVisualizer.java

/**
 * @param title/*  ww  w  . ja  v a 2s.  c o  m*/
 * @param graph
 * 
 */
public TSTVisualizer(String title, TSTGraph<String> graph) {
    super();

    this.graph = graph;

    // The Layout<V, E> is parameterized by the vertex and edge types
    Layout<TernaryNode<String>, String> layout = new TreeLayout<TernaryNode<String>, String>(
            new DelegateForest<TernaryNode<String>, String>(graph));
    // layout.setSize(new Dimension(300,300)); // sets the initial size of the space
    // The BasicVisualizationServer<V,E> is parameterized by the edge types
    BasicVisualizationServer<TernaryNode<String>, String> vv = new BasicVisualizationServer<TernaryNode<String>, String>(
            layout);
    vv.setPreferredSize(new Dimension(350, 350)); // Sets the viewing area size

    vv.getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR);

    vv.getRenderContext().setVertexLabelTransformer(new Transformer<TernaryNode<String>, String>() {

        public String transform(TernaryNode<String> node) {
            return node.getCharacter();
        }
    });

    JFrame frame = new JFrame(title);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(vv);
    frame.pack();
    frame.setVisible(true);
}

From source file:org.wmediumd.WmediumdGraphView.java

private void setupVisualization() {
    // Create a Layout to display our graph data
    Layout<MyNode, MyLink> layout = new FRLayout<MyNode, MyLink>(graph);
    layout.setSize(new Dimension(640, 480)); // Sets the initial size of the space

    Transformer<MyNode, Paint> vertexPaint = new Transformer<MyNode, Paint>() {

        @Override/*from  w w w  .ja  va2 s . co  m*/
        public Paint transform(MyNode arg0) {
            // TODO Auto-generated method stub
            return Color.ORANGE;
        }
    };
    // Transformer to draw links with dark blue color
    //      Transformer<MyLink,Paint> edgePaint = new Transformer<MyLink, Paint>() {
    //
    //         @Override
    //         public Paint transform(MyLink arg0) {
    //            // TODO Auto-generated method stub
    //            return new Color(68, 68, 68);
    //         }
    //      };

    // Set up a new stroke Transformer for the edges
    Transformer<MyLink, Stroke> edgeStrokeTransformer = new Transformer<MyLink, Stroke>() {

        @Override
        public Stroke transform(MyLink s) {

            float plossSum = s.getPlossSumFloat();

            if (plossSum > 0.0f) {
                // For each Link estimate the quality and create a custom stroke
                float dash[] = { 12.5f - s.getPlossSumFloat(), s.getPlossSumFloat() };
                return new BasicStroke(1.5f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 1.0f, dash, 0.0f);
            } else {
                return new BasicStroke(1.5f);
            }
        }
    };

    // Create a Visualization viewer to draw our Layout
    vViewer = new VisualizationViewer<MyNode, MyLink>(layout);
    vViewer.setPreferredSize(new Dimension(640, 480)); //Sets the viewing area size
    vViewer.getRenderContext().setVertexFillPaintTransformer(vertexPaint);
    //vViewer.getRenderContext().setEdgeDrawPaintTransformer(edgePaint);
    vViewer.getRenderContext().setEdgeStrokeTransformer(edgeStrokeTransformer);
    vViewer.getRenderContext().setVertexLabelTransformer(new ToStringLabeller<MyNode>());
    vViewer.getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR);

}

From source file:paquete.HollywoodUI.java

private void Mostrar_grafoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_Mostrar_grafoActionPerformed
    SimpleGraphView sgv = new SimpleGraphView();
    sgv.setGrafo(HollyUniverseGraph);//from  ww  w  .j av a  2s.  c o m
    Layout<Actor, Arista> layout = new CircleLayout(sgv.grafo);
    layout.setSize(new Dimension(800, 600));
    BasicVisualizationServer<Actor, Arista> bvs = new BasicVisualizationServer<>(layout);
    bvs.setPreferredSize(new Dimension(850, 650));
    //agregando etiquetas al grafo
    Transformer<Actor, Paint> vertexPaint = new Transformer<Actor, Paint>() {
        public Paint transform(Actor i) {
            return Color.GREEN;
        }
    };
    float dash[] = { 10.0f };
    final Stroke edgeStroke = new BasicStroke(3.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 10.0f, dash,
            0.0f);
    Transformer<Arista, Stroke> edgeStrokeTransformer = new Transformer<Arista, Stroke>() {
        public Stroke transform(Arista s) {
            return edgeStroke;
        }
    };

    bvs.getRenderContext().setVertexFillPaintTransformer(vertexPaint);
    //        bvs.getRenderContext().setEdgeStrokeTransformer(edgeStrokeTransformer);
    bvs.getRenderContext().setVertexLabelTransformer(new ToStringLabeller());
    bvs.getRenderContext().setEdgeLabelTransformer(new ToStringLabeller());
    bvs.getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR);

    JFrame frame = new JFrame("Vista del grafo con libreria JUNG2");
    frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
    frame.getContentPane().add(bvs);
    frame.pack();
    frame.setLocationRelativeTo(this);
    frame.setVisible(true);
}