我正在使用jung库绘制我的grap,所以我想知道是否有任何方法可以创建不同形状的顶点而不是创建椭圆。例如,我想要八角形。这就是我设置形状的方式:
Transformer<String,Shape> vertexSize = new Transformer<String,Shape>(){
@Override
public Shape transform(String str) {
Ellipse2D circle = new Ellipse2D.Double(-5, -5, 10, 10);
if(drugnames.contains(str)){
return AffineTransform.getScaleInstance(3,3).createTransformedShape(circle);
}
else{
return AffineTransform.getScaleInstance(1,1).createTransformedShape(circle);
}
// TODO Auto-generated method stub
}
};
答案 0 :(得分:0)
VisualizationViewer.getRenderContext().setVertexShapeTransformer(vst)
其中vst是Transformer<V, Shape>
。
AbstractVertexShapeTransformer can do a lot of the heavy lifting for you.
请参阅PluggableRendererDemo
了解这些事情的实例(来源是分发的一部分)。