Какао-Touch: как узнать, находится ли CGPoint в определенном CGRect?

Мне было интересно, есть ли простой способ узнать, находится ли определенная точка в определенном CGRect?

У меня есть это, чтобы узнать, где пользователь коснулся экрана:

UITouch *touch = [touches anyObject];    
CGPoint currentPosition = [touch locationInView:self.view];

Нет, я хотел бы узнать, находится ли эта точка в следующем прямоугольнике:

CGRect aFrame = CGRectMake(0, 100, 320, 200);

Следующее, очевидно, не работает:

if (currentPosition = aFrame) {//do something}

Буду благодарен за любую помощь. Большое спасибо!


person n.evermind    schedule 22.04.2011    source источник


Ответы (2)


Используйте функцию CGRectContainsPoint, чтобы определить, находится ли точка внутри прямоугольника:

if (CGRectContainsPoint(aFrame, currentPosition))
   // Do something
person Vladimir    schedule 22.04.2011

Все, что вам нужно, это справочник по CGGeomery. особенно CGRectContainsPoint.

person Vincent Guerci    schedule 22.04.2011