CGPathContainsPoint: А если я увеличу или уменьшу ??? - PullRequest
0 голосов
/ 11 сентября 2011

вопрос ....

Мне нужно обработать жест касания.

Теперь у меня есть много путей, построенных с помощью CGPath (каждый путь имеет свой идентификатор), и с помощью CGContextAddPath я создаю и заполняю свою планиметрию. Если я нажму на путь, я хочу, чтобы правильный идентификатор был показан.

Итак, я использую CGPathContainsPoint в touchbegin, чтобы сделать это, но, если я увеличиваю или уменьшаю свою планиметрию с помощью CGAffineTransform, метод CGPathContainsPoint возвращает неверную информацию (FALSE) также, если я касаюсь (масштабированного) пути.

Как я могу это исправить ?! Я попытался добавить элемент CGAffineTransform в качестве второго аргумента метода CGPathContainsPoint, но точка касания тоже не масштабируется, поэтому ничего не происходит (вместо этого та же проблема с переводом решается тем же способом!).

Здесь вы можете найти КОД, упрощенный

Извините за мой английский (я итальянец): P

Спасибо заранее

1 Ответ

1 голос
/ 16 сентября 2011

OK! Я нашел проблему !!! Я должен применить обратную функцию !!

Если я масштабируюсь на 10, мне нужно масштабировать точку на 1/10.

Для перевода, если я перетаскиваю на 10, мне нужно перетащить назад на -10 (для поворота то же самое, я думаю).

...