@override Rect getBounds() { if (startPoint == null || endPoint == null) return Rect.zero; return Rect.fromPoints(startPoint!, endPoint!); }