segmentIntersectsRect function
Implementation
bool segmentIntersectsRect(Offset a, Offset b, Rect rect) {
if (rect.contains(a) || rect.contains(b)) return true;
final tl = rect.topLeft;
final tr = rect.topRight;
final bl = rect.bottomLeft;
final br = rect.bottomRight;
return _segmentsIntersect(a, b, tl, tr) ||
_segmentsIntersect(a, b, tr, br) ||
_segmentsIntersect(a, b, br, bl) ||
_segmentsIntersect(a, b, bl, tl);
}