如何使用JUNG颜色和形状顶点和边

时间:2010-01-25 11:31:26

标签: java graphics jung

我在使用JUNG时遇到了问题。我想画一个网络图,其中顶点将具有不同的形状和颜色,边缘将是虚线或全线以不同的颜色。

由于我是Java的新手,我无法理解jung的实际架构。当我使用setVertexFillPaintTransformer时,它会为所有具有相同颜色的顶点着色。顶点存储在整数数组中。我现在正在敲打我的头一周。 如果有人可以帮助我或有一些反问题,请问我

1 个答案:

答案 0 :(得分:3)

方法 setVertexFillPaintTransformer 接收将顶点转换为颜色的变换器。因此,要为不同的顶点设置不同的颜色,您需要使其检查顶点。方法 public Paint transform(Integer i) 中的参数 i 是顶点,因此您可以提供基于顶点的颜色(或 i )。例如,如果我有一个顶点是整数的图形,我可以通过向 setVertexFillPaintTransformer <提供以下变换器来循环为顶点分配三种不同的颜色/强>:

Transformer<Integer, Paint> vertexPaint = new Transformer<Integer, Paint>() {
    private final Color[] palette = {Color.GREEN, Color.BLUE, Color.RED}; 

    public Paint transform(Integer i) {
        return palette[i.intValue() % palette.length];
    }
};