如何用线连接小部件来构建例如节点图?

Tob*_*asW 6 mobile dart flutter

我想要实现的场景是节点图编辑器。节点应该用线连接,并且可以拖动。

在此输入图像描述

在我的想象中,我想要像画布这样的东西,我可以在其中将控件和线条全部渲染在一个地方。据我所知,flutter 无法在画布上绘制控件。所以我目前实现我想要的最好的猜测是:

  1. 在堆栈上绘制控件并将它们与对齐小部件放置在一起。
  2. 使用也放置在堆栈上的 CustomPainter 绘制线条。此 CustomPainter 需要访问堆栈上的控制位置以将它们连接在一起。

这个答案Drawing a line Between Widgets基本上提供了这种方法。但这种方法对我来说感觉不好,因为我必须同步自定义画家和我的节点小部件。我正在寻找替代方案。