0

我正在使用 JUNG 2.0 直观地渲染有向无环图,并添加了自定义 EdgeRenderer 来渲染各种颜色的边缘。通过调用对象的drawLine()drawPolyline()方法来绘制实际的边缘RenderContext

一切正常,除非我手动滚动GraphZoomScrollPane添加VisualizationViewer对象的对象:然后顶点按预期滚动,但边缘线完全保持在屏幕上的同一位置。也就是说:

这是对的

这就是我滚动时发生的事情

我怎样才能让边缘实际滚动?

(如果有帮助,使用 a 进行缩放CrossoverScalingControl可以很好地工作,并且边缘在正确的位置会变得越来越小。)

4

1 回答 1

1

听起来您在错误的坐标空间中绘制边缘。有两个坐标系:布局坐标和渲染坐标。您需要确保在正确的上下文中使用正确的坐标系(特别是,您对顶点使用与边缘相同的坐标系)。

如果您可以在您的问题中提供更多关于您如何实际调用 draw*Line() 以及这与 JUNG 的操作方式有何不同的上下文,则可能更容易确定您需要修复的确切内容。

于 2017-03-09T05:55:51.613 回答