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


Java VisRunner类代码示例

本文整理汇总了Java中edu.uci.ics.jung.algorithms.layout.util.VisRunner的典型用法代码示例。如果您正苦于以下问题:Java VisRunner类的具体用法?Java VisRunner怎么用?Java VisRunner使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


VisRunner类属于edu.uci.ics.jung.algorithms.layout.util包,在下文中一共展示了VisRunner类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: doGraphLayout

import edu.uci.ics.jung.algorithms.layout.util.VisRunner; //导入依赖的package包/类
@Override
public void doGraphLayout() {
	layout.setSize(vv.getSize());
	layout.initialize();
	Relaxer relaxer = new VisRunner((IterativeContext) layout);
	relaxer.stop();
	relaxer.prerelax();
	
	StaticLayout<Node, Edge> staticLayout = new StaticLayout<Node,Edge>(graph, layout, vv.getSize());
	LayoutTransition<Node,Edge> lt = new LayoutTransition<Node,Edge>(vv, vv.getGraphLayout(),
										staticLayout);
	Animator animator = new Animator(lt);
	animator.start();
	vv.repaint();
	
	FeatureMask mask = new FeatureMask(FeatureMask.TRANSLATE_SUPPORT | FeatureMask.SCALING_SUPPORT);
	GraphEditorEventHandler eventHandler = new GraphEditorEventHandler(vv.getRenderContext(),
												null, null, mask);
	vv.setGraphMouse(eventHandler);
}
 
开发者ID:andreiolaru-ro,项目名称:AmIciTy-Grph,代码行数:21,代码来源:AnimatedJungGraphViewer.java

示例2: animate

import edu.uci.ics.jung.algorithms.layout.util.VisRunner; //导入依赖的package包/类
private void animate()
  {
  	// while we are animating, the task scheduler is not allowed to modify the graph
  	// otherwise we will have a ConcurrentModificationException, because this animation iterates
  	// over the vertices and edges, while the task scheduler thread modifies them.
  	
  	layout.initialize();

  	if (GeneralMDPSettings.ANIMATE) {
   	Relaxer relaxer = new VisRunner((IterativeContext)layout);
	relaxer.stop();
	relaxer.prerelax();
	
	StaticLayout<Vertex<?>,Edge<?,?>> staticLayout =
		new StaticLayout<Vertex<?>,Edge<?,?>>(g, layout);
	LayoutTransition<Vertex<?>,Edge<?,?>> lt =
		new LayoutTransition<Vertex<?>,Edge<?,?>>(vv, vv.getGraphLayout(),
				staticLayout);

	Animator animator = new Animator(lt);
	animator.start();
  	}
  	
vv.repaint();
  	repaint();
  	
  	// resume scheduling after 200ms, give the visualization some time to draw before editing the graph again
  	resumeTaskScheduler(GeneralMDPSettings.REPAINT_DELAY-100); 
  }
 
开发者ID:marcvanzee,项目名称:mdp-plan-revision,代码行数:30,代码来源:MDPDrawer.java

示例3: LayoutTransition

import edu.uci.ics.jung.algorithms.layout.util.VisRunner; //导入依赖的package包/类
/**
 * @param startLayout
 * @param endLayout
 */
public LayoutTransition(VisualizationViewer<V,E> vv, Layout<V, E> startLayout, Layout<V, E> endLayout) {
	this.vv = vv;
	this.startLayout = startLayout;
	this.endLayout = endLayout;
	if(endLayout instanceof IterativeContext) {
		Relaxer relaxer = new VisRunner((IterativeContext)endLayout);
		relaxer.prerelax();
	}
	this.transitionLayout =
		new StaticLayout<V,E>(startLayout.getGraph(), startLayout);
	vv.setGraphLayout(transitionLayout);
}
 
开发者ID:SiLeBAT,项目名称:BfROpenLab,代码行数:17,代码来源:LayoutTransition.java

示例4: process

import edu.uci.ics.jung.algorithms.layout.util.VisRunner; //导入依赖的package包/类
public void process() {

    	vv.getRenderContext().getPickedVertexState().clear();
    	vv.getRenderContext().getPickedEdgeState().clear();
        try {

            if (g.getVertexCount() < 100) {
                //add a vertex
                Integer v1 = new Integer(g.getVertexCount());

                g.addVertex(v1);
                vv.getRenderContext().getPickedVertexState().pick(v1, true);

                // wire it to some edges
                if (v_prev != null) {
                	Integer edge = g.getEdgeCount();
                	vv.getRenderContext().getPickedEdgeState().pick(edge, true);
                    g.addEdge(edge, v_prev, v1);
                    // let's connect to a random vertex, too!
                    int rand = (int) (Math.random() * g.getVertexCount());
                    edge = g.getEdgeCount();
                	vv.getRenderContext().getPickedEdgeState().pick(edge, true);
                   g.addEdge(edge, v1, rand);
                }

                v_prev = v1;

                layout.initialize();

        		Relaxer relaxer = new VisRunner((IterativeContext)layout);
        		relaxer.stop();
        		relaxer.prerelax();
        		StaticLayout<Number,Number> staticLayout =
        			new StaticLayout<Number,Number>(g, layout);
				LayoutTransition<Number,Number> lt =
					new LayoutTransition<Number,Number>(vv, vv.getGraphLayout(),
							staticLayout);
				Animator animator = new Animator(lt);
				animator.start();
//				vv.getRenderContext().getMultiLayerTransformer().setToIdentity();
				vv.repaint();

            } else {
            	done = true;
            }

        } catch (Exception e) {
            System.out.println(e);

        }
    }
 
开发者ID:marcvanzee,项目名称:mdp-plan-revision,代码行数:52,代码来源:AnimatingAddNodeDemo.java

示例5: setRelaxer

import edu.uci.ics.jung.algorithms.layout.util.VisRunner; //导入依赖的package包/类
/**
 * @param relaxer the relaxer to set
 */
public void setRelaxer(VisRunner relaxer) {
	this.relaxer = relaxer;
}
 
开发者ID:SiLeBAT,项目名称:BfROpenLab,代码行数:7,代码来源:DefaultVisualizationModel.java

示例6: refreshLayout

import edu.uci.ics.jung.algorithms.layout.util.VisRunner; //导入依赖的package包/类
private void refreshLayout() {
	if (active) {
		taskManager.cancelAllWaitingTasks();
		taskManager.addTask(new ICTask() {
			public void doTask() {
				StaticLayout<V, E> toLayout;
				Layout<V, E> currentLayout;
				synchronized (getTreeLock()) {
					currentLayout = viewer.getGraphLayout(); // StaticLayout
					layout.setSize(viewer.getSize());
					if (layout instanceof IterativeContext) { // 最後まで進める
						// layout.setInitializer(currentLayout);
						Relaxer relaxer = new VisRunner(
								(IterativeContext) layout);
						relaxer.prerelax();
					} else {// CircleLayoutの場合
						layout.initialize();
					}
					toLayout = new StaticLayout<V, E>(getGraph(), layout);
				}
				if (isAnimation()) {
					LayoutTransition<V, E> layoutTransition = new LayoutTransition<V, E>(
							viewer, currentLayout, toLayout);

					Animator animator = new Animator(layoutTransition);
					// animator.setSleepTime(100);						
					animator.run(); // animator.start();

					//						while (!layoutTransition.done()) {
					//							viewer.requestRefresh();
					//							layoutTransition.step();
					//							CThread.sleep(10L);
					//						}
				} else {
					viewer.setGraphLayout(toLayout);
					// while (!layoutTransition.done()) {
					// layoutTransition.step();
					// }
				}

				// viewer.getRenderContext().getMultiLayerTransformer()
				// .setToIdentity();
				viewer.requestRefresh();
				viewer.repaint();
			}
		});
	}
}
 
开发者ID:macc704,项目名称:KBDeX,代码行数:49,代码来源:KNetworkPanel.java


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