Проверьте, находится ли шар внутри круга, нарисованного линией
Я новичок в Unity, и мне нужно знать, как проверить, находится ли шар внутри круга, нарисованного линией. Я сохраняю точки столкновения каждой точки линии в массиве, чтобы определить, сталкивается ли она с мячом, и каждая точка столкновения имеет свои точки X - Y, и мне нужно знать, удалось ли пользователю окружить мяч с линией, которую он нарисовал.
Если вы можете помочь мне с небольшим кодом, я был бы признателен.
Спасибо.
1 ответ
Не совсем понятно - что такое "круг, нарисованный линией"?
В любом случае окружность имеет центр C и радиус R, шар имеет центр bc, радиус br, расстояние между центрами D = Sqrt((bc.X-C.X)*(bc.X-C.X) + (bc.Y-C.Y)(bc.Y-C.Y))
Мяч:
не пересекает окружность, если расстояние между центрами больше суммы радиуса
D > R + br
касается круга, если
D = R + br
пересекает его, если
R - br < D < R + br
лежит внутри полностью, если (предполагая, что br <= R)
R - br >= D