Как распознать, включен ли CGPoint в форму? - PullRequest
0 голосов
/ 17 ноября 2011

Я новичок в кварце.

Мне интересно, как узнать, включен ли CGPoint в форму.

Пожалуйста, дайте мне помощь эксперта.

Следуйте за концептуальной диаграммой.

enter image description here

В вышеприведенном случае, Я хочу получить результат ДА, потому что три КРАСНЫХ CGPoint включены в форму.

Это возможно, как следовать?

CGPoint RedPoint1 = {200,100};
CGPoint RedPoint2 = {200,200};
CGPoint RedPoint3 = {350,300};

BOOL includeRect;
includeRect = CGRectContainsPoint(RectCase, RedPoint1);

BOOL includeCircle;
includeCircle = CG ? ContainsPoint(CircleCase, RedPoint2)

BOOL includeBoldLine;
includeBoldLine = CG ? ContainsPoint(BoldLineCase, RedPoint3);

1 Ответ

2 голосов
/ 17 ноября 2011

Простота всего этого зависит от того, как определяются ваши фигуры.

Если у вас есть такие значения как CGPathRefs или NSBezierPaths, существует метод containsPoint:, который вы можете использовать.

Если это CGRect, к которым применено преобразование, вы можете использовать методы CGAffineTransformPoint, чтобы переместить точку в то же координатное пространство, а затем использовать CGRectContainsPoint

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...