метод intersection
Rectangle<T> intersection(Вычисляет пересечение this и other.
Пересечение двух прямоугольников с осями, если оно есть, всегда является другим прямоугольником с осями.
Возвращает пересечение этого и other, или null, если они не пересекаются.
Исходный код
Rectangle<T> intersection(Rectangle<T> other) {
var x0 = max(left, other.left);
var x1 = min(left + width, other.left + other.width);
if (x0 <= x1) {
var y0 = max(top, other.top);
var y1 = min(top + height, other.top + other.height);
if (y0 <= y1) {
return new Rectangle<T>(x0, y0, x1 - x0, y1 - y0);
}
}
return null;
}
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-math/MutableRectangle/intersection.html