当前位置: 首页>>代码示例>>Java>>正文


Java ObservableGraph.addGraphEventListener方法代码示例

本文整理汇总了Java中edu.uci.ics.jung.graph.ObservableGraph.addGraphEventListener方法的典型用法代码示例。如果您正苦于以下问题:Java ObservableGraph.addGraphEventListener方法的具体用法?Java ObservableGraph.addGraphEventListener怎么用?Java ObservableGraph.addGraphEventListener使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在edu.uci.ics.jung.graph.ObservableGraph的用法示例。


在下文中一共展示了ObservableGraph.addGraphEventListener方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: init

import edu.uci.ics.jung.graph.ObservableGraph; //导入方法依赖的package包/类
@Override
    public void init() {

        //create a graph
    	Graph<Number,Number> ig = Graphs.<Number,Number>synchronizedDirectedGraph(new DirectedSparseMultigraph<Number,Number>());

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

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

			}});
        
        this.g = og;
        //create a graphdraw
        layout = new FRLayout2<Number,Number>(g);
//        ((FRLayout)layout).setMaxIterations(200);

        vv = new VisualizationViewer<Number,Number>(layout, new Dimension(600,600));

        JRootPane rp = this.getRootPane();
        rp.putClientProperty("defeatSystemEventQueueCheck", Boolean.TRUE);

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

        vv.getModel().getRelaxer().setSleepTime(500);
        vv.setGraphMouse(new DefaultModalGraphMouse<Number,Number>());

        vv.getRenderer().getVertexLabelRenderer().setPosition(Renderer.VertexLabel.Position.CNTR);
        vv.getRenderContext().setVertexLabelTransformer(new ToStringLabeller<Number>());
        vv.setForeground(Color.white);
        getContentPane().add(vv);
        switchLayout = new JButton("Switch to SpringLayout");
        switchLayout.addActionListener(new ActionListener() {

            @SuppressWarnings("unchecked")
            public void actionPerformed(ActionEvent ae) {
            	Dimension d = new Dimension(600,600);
                if (switchLayout.getText().indexOf("Spring") > 0) {
                    switchLayout.setText("Switch to FRLayout");
                    layout = new SpringLayout<Number,Number>(g,
                        new ConstantTransformer(EDGE_LENGTH));
                    layout.setSize(d);
                    vv.getModel().setGraphLayout(layout, d);
                } else {
                    switchLayout.setText("Switch to SpringLayout");
                    layout = new FRLayout<Number,Number>(g, d);
                    vv.getModel().setGraphLayout(layout, d);
                }
            }
        });

        getContentPane().add(switchLayout, BorderLayout.SOUTH);

        timer = new Timer();
    }
 
开发者ID:marcvanzee,项目名称:mdp-plan-revision,代码行数:60,代码来源:AddNodeDemo.java

示例2: getGraph

import edu.uci.ics.jung.graph.ObservableGraph; //导入方法依赖的package包/类
/**
 * @return the graph for this demo
 */
Graph<String, Number> getGraph(String[] word_set1, String[] word_set2) {
       //Graph<String, Number> g = new SparseGraph<String, Number>();

       //create a graph
   	Graph<String,Number> ig = Graphs.<String,Number>synchronizedGraph(new SparseGraph<String,Number>());

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

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

		}});
       Graph<String, Number> g = og;

       // extract all vertices which belong to shortest paths in graph 'g_all_relations'

       //String word1 = "WAN"; //String word2 = "network";   //WAN - LAN - network
       for(String word1 : word_set1) {
           g.addVertex(word1);
           for(String word2 : word_set2) {
               g.addVertex(word2);
               String[] word_path = null;

               if(null != TPage.get(ruwikt_parsed_conn, word1) &&
                  null != TPage.get(ruwikt_parsed_conn, word2))
               {
                   System.out.println("Starting search path ['" + word1 + "', '" + word2 + "']");
                   word_path = PathSearcher.getShortestPath(g_all_relations, alg, word1, word2);
                   if(word_path.length > 0) {
                       int len = word_path.length - 1;
                       System.out.println("There is a path from '" + word1 + "' to '" + word2 + "', length = " + len);
                       System.out.println("" + 0 + ": " + word_path[0]);

                       g.addVertex(word_path[0]);
                       for(int i=1; i<word_path.length; i++) {
                           Relation r = TRelation.getRelationType(ruwikt_parsed_conn, word_path[i-1], word_path[i]);
                           String rel_name = null == r ? "" : r.toString();
                           System.out.println("" + i + ".: " + rel_name + "["+ word_path[i-1] + ", "+ word_path[i] + "]");

                           g.addVertex(word_path[i]);
                           g.addEdge(g.getEdgeCount(), word_path[i-1], word_path[i]);
                       }
                   }
               }

               if(null == word_path || 0 == word_path.length)
                   System.out.println("There is no path from '" + word1 + "' to '" + word2 + "'.");
           }
       }
       return g;
}
 
开发者ID:componavt,项目名称:wikokit,代码行数:56,代码来源:ShortestPathRelation.java

示例3: init

import edu.uci.ics.jung.graph.ObservableGraph; //导入方法依赖的package包/类
@Override
    public void init() {

        //create a graph
    	Graph<Number,Number> ig = Graphs.<Number,Number>synchronizedDirectedGraph(new DirectedSparseMultigraph<Number,Number>());

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

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

			}});
        this.g = og;
        //create a graphdraw
        layout = new FRLayout2<Number,Number>(g);
//        ((FRLayout)layout).setMaxIterations(200);

        vv = new VisualizationViewer<Number,Number>(layout, new Dimension(600,600));

        JRootPane rp = this.getRootPane();
        rp.putClientProperty("defeatSystemEventQueueCheck", Boolean.TRUE);

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

        vv.getModel().getRelaxer().setSleepTime(500);
        vv.setGraphMouse(new DefaultModalGraphMouse<Number,Number>());

        vv.getRenderer().getVertexLabelRenderer().setPosition(Renderer.VertexLabel.Position.CNTR);
        vv.getRenderContext().setVertexLabelTransformer(new ToStringLabeller<Number>());
        vv.setForeground(Color.white);
        getContentPane().add(vv);
        switchLayout = new JButton("Switch to SpringLayout");
        switchLayout.addActionListener(new ActionListener() {

            @SuppressWarnings("unchecked")
            public void actionPerformed(ActionEvent ae) {
            	Dimension d = new Dimension(600,600);
                if (switchLayout.getText().indexOf("Spring") > 0) {
                    switchLayout.setText("Switch to FRLayout");
                    layout = new SpringLayout<Number,Number>(g,
                        new ConstantTransformer(EDGE_LENGTH));
                    layout.setSize(d);
                    vv.getModel().setGraphLayout(layout, d);
                } else {
                    switchLayout.setText("Switch to SpringLayout");
                    layout = new FRLayout<Number,Number>(g, d);
                    vv.getModel().setGraphLayout(layout, d);
                }
            }
        });

        getContentPane().add(switchLayout, BorderLayout.SOUTH);

        timer = new Timer();
    }
 
开发者ID:macc704,项目名称:KBDeX,代码行数:59,代码来源:AddNodeDemo.java


注:本文中的edu.uci.ics.jung.graph.ObservableGraph.addGraphEventListener方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。