Есть ли способ рисовать линии на экране, проводя и проверяя, пересекаются ли они друг с другом - PullRequest
0 голосов
/ 10 июня 2011

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

Есть ли способ добиться этого в iPhone с помощью Cocoa-Touch? Пожалуйста, укажите направление, и, если возможно, пример кода будет gr8 для меня, так как я застрял в этом с последних 2 дней.

Пожалуйста, помогите.

1 Ответ

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

На мой взгляд, это чисто математика.

Когда пользователь касается экрана (и перемещается пальцем), вы получите некоторые координаты. Исходя из текущего места касания (x, y) и предыдущего, вы можете считать его линией. Храните каждую строку внутри массива.

Теперь, когда происходит новое касание, проверьте, пересекает ли эта новая линия (текущие координаты касания и предыдущие) любую другую линию из вашего массива.

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

...