我使用 Jung2 为我的图表使用 CircleLayout。我重写了该initiate()
方法,以便根据其 id 在圆中的某个位置绘制顶点。这意味着顶点在圆上不规则地分布。
现在我有一个问题:由于边缘的绘制方式,图形不再像圆形了。
有没有办法让边缘再次看起来像一个圆圈?
您需要提供不同的(自定义)边缘渲染器;请参阅中的代码以jung.visualization.renderers
获取指导。您将其提供给可视化系统,如下所示:
VisualizationServer.getRenderer().setEdgeRenderer(yourCustomEdgeRenderer);
或者,如果你真的只是想让它看起来像一个圆圈,你可以这样做:
(0) 使用预渲染 Paintable 绘制一个圆圈。(演示展示了它是如何工作的。)
(1) 提供一个总是返回假的边缘渲染谓词,即确保没有任何边缘被渲染。
这将比在每对连接的顶点之间绘制适当的圆弧更容易和简单。