本文整理汇总了Java中edu.uci.ics.jung.graph.util.Graphs.synchronizedDirectedGraph方法的典型用法代码示例。如果您正苦于以下问题:Java Graphs.synchronizedDirectedGraph方法的具体用法?Java Graphs.synchronizedDirectedGraph怎么用?Java Graphs.synchronizedDirectedGraph使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类edu.uci.ics.jung.graph.util.Graphs
的用法示例。
在下文中一共展示了Graphs.synchronizedDirectedGraph方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: goReplay
import edu.uci.ics.jung.graph.util.Graphs; //导入方法依赖的package包/类
@Override
public void goReplay(final INetworkTape tape, final INetworkViewPortSwitch viewPortSwitch) {
if (tape.getFrameCount() == 0) {
logger.warn("Framecount of the given tape to be played is zero");
return;
}
playbackFrameCountProperty.set(tape.getFrameCount() - 1);
final Graph<INode, IConnection> replayViewGraph = Graphs.synchronizedDirectedGraph(new DirectedSparseGraph<>());
final INetwork replayNetwork = new ReplayNetwork(new ObservableUpdatableGraph<>(replayViewGraph, new ReplayUpdater()));
viewPortSwitch.setActiveViewPort(replayNetwork.getViewPort());
isLive = false;
// this.playTape = tape;
tape.setCurrentReadingFrame(0);
// TODO Take the real framel ength!!! instead of 100 - --- the -1 PROBLEM
final long frameLength = 1000 / tape.getFrameRate();
final Timeline frameReader = new Timeline(new KeyFrame(Duration.millis(frameLength), new FrameHandler(tape, replayNetwork)));
// frameReader.setCycleCount(playTape.frameCount() - 1);Timeline.INDEFINITE
frameReader.setCycleCount(Timeline.INDEFINITE);
frameReader.play();
}
示例2: JungGraph
import edu.uci.ics.jung.graph.util.Graphs; //导入方法依赖的package包/类
public JungGraph(String name, boolean isPattern) {
this.setName(name);
this.graph = Graphs.<Node,Edge>synchronizedDirectedGraph(new DirectedSparseMultigraph<Node, Edge>());
this.isPattern = isPattern;
undoManager = new UndoManager();
trackHistory = true;
}
示例3: initNetwork
import edu.uci.ics.jung.graph.util.Graphs; //导入方法依赖的package包/类
private void initNetwork() {
// initialize the live network that will be writte on by the receiver commands
// create a Graph
// TODO check if synchronized is really needed
final Graph<INode, IConnection> graph = Graphs.synchronizedDirectedGraph(new DirectedSparseGraph<>());
final ObservableUpdatableGraph<INode, IConnection> og = new ObservableUpdatableGraph<>(graph, new LiveUpdater());
// TODO Ctor injection with the Ports that are within the networks
liveNetwork = new LiveNetwork(og);
/*
// initialize the replay network that will be written on by a networkTape if the device plays a replay
final INetwork replayNetwork = new ReplayNetwork(new ConcurrentDirectedSparseGraph<>());
*/
// initialize the writing port switch that use the writing port of the live network
// as their initial default writing port
writingPortSwitch = new NetworkWritingPortSwitch(liveNetwork.getWritingPort());
// initialize the reading port switch that uses the reading port of the live network
// as its initial default reading port
readingPortSwitch = new NetworkReadingPortSwitch(liveNetwork.getReadingPort());
// initialize the view port switch that uses the view port of the live network
// as its initial default view port
viewPortSwitch = new NetworkViewPortSwitch(liveNetwork.getViewPort());
// intialize the network device which is capable of recording and replaying any ongoing network session
// on serveral screens
networkDevice = new NetworkDevice();
// create a new empty tape to record something on
// Tell the network observation device to start recording the
// given network with 25fps on the created tape
// goReplay that ongoing recording on the given viewportswitch
//networkDevice.goReplay(tape, viewPortSwitch);
// track the live network on the given viewportswitch
networkDevice.goLive(liveNetwork, viewPortSwitch);
}
示例4: init
import edu.uci.ics.jung.graph.util.Graphs; //导入方法依赖的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();
}
示例5: init
import edu.uci.ics.jung.graph.util.Graphs; //导入方法依赖的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();
}
示例6: setUp
import edu.uci.ics.jung.graph.util.Graphs; //导入方法依赖的package包/类
@Before
public void setUp() throws Exception {
final Graph<INode, IConnection> graph = Graphs.synchronizedDirectedGraph(new DirectedSparseGraph<>());
final ObservableUpdatableGraph<INode, IConnection> og = new ObservableUpdatableGraph<>(graph, new LiveUpdater());
port = new NetworkIOPort(og);
}