История изменений
Исправление Deleted, (текущая версия) :
Это для двух прямоугольников, но одна к друго задаче вроде сводится:
static boolean intersect(Rect a, Rect b) {
final float bxMin = b.getXMin();
final float bxMax = b.getXMax();
final float axMin = a.getXMin();
final float axMax = a.getXMax();
final float ayMin = a.getYMin();
final float ayMax = a.getYMax();
final float byMin = b.getYMin();
final float byMax = b.getYMax();
return (
bxMin >= axMin && bxMin <= axMax ||
bxMax >= axMin && bxMax <= axMax ||
bxMin <= axMin && bxMax >= axMax
) && (
byMin >= ayMin && byMin <= ayMax ||
byMax >= ayMin && byMax <= ayMax ||
byMin <= ayMin && byMax >= ayMax
);
}
результат ковыряния R*-tree Split
Исходная версия Deleted, :
Это для двух прямоугольников, но одна к друго задаче вроде сводится:
static boolean intersect(Rect a, Rect b) {
final float bxMin = b.getXMin();
final float bxMax = b.getXMax();
final float axMin = a.getXMin();
final float axMax = a.getXMax();
final float ayMin = a.getYMin();
final float ayMax = a.getYMax();
final float byMin = b.getYMin();
final float byMax = b.getYMax();
return (
bxMin >= axMin && bxMin <= axMax ||
bxMax >= axMin && bxMax <= axMax ||
bxMin <= axMin && bxMax >= axMax
) && (
byMin >= ayMin && byMin <= ayMax ||
byMax >= ayMin && byMax <= ayMax ||
byMin <= ayMin && byMax >= ayMax
);
}