package test;
import java.awt.*;
import javax.swing.*;
import llections15.Transformer;
//
import edu.uci.aph.*;
import edu.uci.aph.util.EdgeType;
import edu.uci.ics.jung.algorithms.layout.*;
import edu.uci.ics.jung.visualization.BasicVisualizationServer;
import edu.uci.ics.jung.visualization.VisualizationViewer;
import edu.uci.ics.l.DefaultModalGraphMouse;
import edu.uci.ics.l.ModalGraphMouse.Mode;
import edu.uci.ics.jung.visualization.decorators.ToStringLabeller;
public class Test1To5 extends JFrame {
@SuppressWarnings("unchecked")
public Test1To5() {
this.setTitle("示例");
this.setFont(new Font("Times New Roman", Font.PLAIN, 12));
this.setBackground(Color.white);// 设置窗口背景颜色
// 初始化图g
SparseGraph g = new SparseGraph();
for (int i = 1; i < 10; i++) {
g.addVertex(i);
g.addEdge("Edge[1," + (i + 1) + "]", 1, i + 1);
if (i > 1) {
g.addEdge("Edge[" + i + "," + (i + 1) + "]", i, i + 1);
}
}
//
System.out.println("The graph g = " + g.toString());
// 使用该图创建布局对象
// Layout layout = new CircleLayout(g);//圆形布局结构
Layout layout = new FRLayout2(g);
// 使用布局对象创建BasicVisualizationServer对象
// BasicVisualizationServer vv = new BasicVisualizationServer(layout);
VisualizationViewer<Integer, Paint> vv = new VisualizationViewer<Integer, Paint>(
layout);
// 渲染环境 颜色参数
Transformer<Integer, Paint> vertexPaint = new Transformer<Integer, Paint>() {
public Paint transform(Integer s) {
if (s == 1)
;
else
return Color.YELLOW;
}
};
// 设置顶点文本标签
vv.getRenderContext().setVertexLabelTransformer(new ToStringLabeller());
// 设置顶点颜色
// vv.getRenderContext().setVertexFillPaintTransformer(vertexPaint);
// 设置边的文本标签
vv.getRenderContext().setEdgeLabelTransformer(new ToStringLabeller());
// 设置边的线型
// vv.getRenderContext().setEdgeStrokeTransformer();
DefaultModalGraphMouse<Integer, Paint> gm = new DefaultModalGraphMouse<Integer, Paint>();
gm.setMode(Mode.PICKING);
vv.setGraphMouse(gm);
// 将上述对象放置在一个Swing容器中并显示之
getContentPane().add(vv);
pack();
}
public static void main(String[] args) {
Test1To5 myframe = new Test1To5();
myframe.setExtendedState(JFrame.MAXIMIZED_BOTH);
myframe.setVisible(true);
}
}
[img][/img]
本文发布于:2024-01-30 19:42:59,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170661498222377.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |