Node? getNodeUnderPoint(Offset point) { for (Node node in nodes) { if (node.contains(point)) { return node; } } return null; }