Как обрезать или вычесть CGMutablePathRf другим CGMutalbePathRef? - PullRequest
2 голосов
/ 15 июня 2011

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

Кажется, что нет никаких функций для пересечения или вычитания путей из другого. Как я могу это сделать?

1 Ответ

1 голос
/ 27 июня 2011

Вам нужно посмотреть на CGContext, в который вы рисуете, и использовать отсечение в контексте, а не в пути. Документация Apple находится здесь.

Если я понимаю ваш вопрос, вы можете нарисовать прямоугольник в контексте и затем "обрезать" траекторию круга.Если вы заполняете пути, вам нужно обратить внимание на правила обмотки.

В качестве альтернативы вы можете создать свой путь с помощью ряда команд, таких как CGPathAddLineToPoint, CGPathAddArcToPoint и т. Д., А затем добавить путь вваш контекст.Если вы используете этот подход, вы можете применить преобразования к конечному пути для масштабирования и поворота по мере необходимости.В зависимости от того, чего вы пытаетесь достичь, это может быть лучшим подходом.

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