2011-08-31 140 views
1

我想为使用JUNG库创建的图形边缘添加颜色。我有自定义边缘类型的边缘,我将标签和权重设置为边缘。向自定义边缘添加颜色

Transformer<CustomEdge, Paint> edgesPaint = new Transformer<CustomEdge, Paint>() { 

     private final Color[] palette = {Color.GREEN, 
      Color.YELLOW, Color.RED}; 

     public Paint transform(CustomEdge edgeValue) { 
      String stringvalue=edgeValue.toString(); 
      stringvalue=stringvalue.replaceAll("%",""); 
      int value=Integer.valueOf(stringvalue); 
      if (value<= 10) { 
       return palette[0]; 
      } 
      if (value> 10 && value<=20) { 
       return palette[1]; 
      } 
      else { 
       return palette[2]; 
      } 
     } 
    }; 

下面一行将返回错误消息说,edgesPaint的类型应该是(string,Paint)

visualizationViewer.getRenderContext().setEdgeFillPaintTransformer(edgesPaint); 

请帮助我。

回答

1

随口说说我猜你VisualizationViewer被宣布为有边缘型“字符串”(即VisualizationViewer。但是,如果没有更多的情况下是很难确定。

请打印确切的错误信息和堆栈跟踪。显示VisualizationViewer的声明也可能会有帮助。

+0

是的..这是问题.. thanx。:D – Nuwan