Пересечение между 2 линиями в COCOS2D
Я занимаюсь разработкой игры с использованием COCOS2D. В моей игре 4 очка, каждый из которых связан между собой одной линией. Когда пользователь перемещает точку, линии перемещаются вместе с точкой. Во время перемещения, если линия пересекается с другой, цвет линии должен стать красным. Как я могу это сделать, то есть линия до красного цвета? А как обнаружить пересечение двух линий? Может кто-нибудь помочь мне решить эту проблему пересечения в COCOS2D?
2 ответа
Вы можете определить, пересекаются ли 2 сегмента, используя эту функцию, предоставляемую cocos2d.
BOOL ccpSegmentIntersect (CGPoint A, CGPoint B, CGPoint C, CGPoint D)
Есть вопрос, который можно считать дубликатом вашего вопроса, но он более общий:
Как определить, где пересекаются два отрезка?
У него есть несколько хороших алгоритмов, хотя ответ, который может быть наиболее полезным для вас, - это ответ Гевина, поскольку он предоставляет функцию C, которую вы можете легко адаптировать.