Можно ли обнаружить пересечение CGMutablePathRef и CGRect? - PullRequest
3 голосов
/ 30 декабря 2011

У меня есть спрайт с его ограничительной рамкой, и я хочу обнаружить его пересечение с CGMutablePathRef.Как бы я это сделал?

Ответы [ 3 ]

1 голос
/ 30 декабря 2011

Если это чисто прямоугольное сравнение, вы можете использовать CGPathGetBoundingBox, чтобы получить ограничивающую рамку пути, а затем использовать CGRectIntersectsRect, чтобы определить, происходит ли пересечение.

1 голос
/ 30 декабря 2011

В зависимости от требований к производительности нарисуйте 1-битное растровое изображение, обрезав его до CGRect. Затем отсканируйте пиксель. (Этот метод более подходит для тестирования до определенной степени.)

1 голос
/ 30 декабря 2011

Нет готового решения для этого. Это также зависит от того, какие функции CGPath вы используете. Если это просто серия точек, вы можете использовать обычную линию с тестом пересечения прямоугольника .

Все остальное (например, кривая Безье и пересечение прямоугольника) будет очень сложным.

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