2010-08-11 13 views
1

Есть ли способ обнаружить, если какая-либо точка в данном прямоугольнике содержится внутри другого, большего, rect? Я пытаюсь понять, когда на экране появляются определенные исправления (для управления памятью освобождать те, которые не являются), но прямоугольники большие, и поэтому иногда на них будут только части из них, но мне все еще нужно иметь они загружаются в память.iPhone: обнаружение любой точки в прямоугольнике в другом прямоугольнике

ответ

3

Использование:

CGRectIntersectsRect(CGRect rect1, CGRect rect2) 

вы можете использовать ваш Прямоугольник х и рамы зрения в качестве двух параметров.

+0

Большое спасибо, это именно то, что мне нужно! – Alexander

+0

Лучший ответ @Lukya +1 –

1

Вы можете использовать -pointInside:withEvent:, который является методом для UIViews.

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event 

Возвращает логическое значение, указывающее, содержит ли приемника в указанной точки.

Смотрите документацию компании Apple here.

+0

Но он ищет пересечение между двумя прямоугольниками. Используя pointInside, он должен будет проверить, является ли каждая точка в одном прямоугольнике точкой внутри другого прямоугольника. – lukya

+0

@lukya: К сожалению, неверно сформулирован вопрос –