Я сделал это приложение, которое позволяет пользователю рисовать линию на экране, и мяч реально отскакивает от линии под углом, под которым он будет отражаться в реальной жизни и тому подобном.Но это работало только по прямой.Теперь я пытаюсь сделать его изогнутым.
Я решил отойти от метода исчисления, так как используемые матрицы кажутся страшнее, чем нужно.Вместо этого я делаю в событии -(void)touchesMoved
запись текущей точки касания в массиве CGPoint.Затем, чтобы найти коллизию, у меня есть цикл for, подобный for (int i = 2; i <= numberOfPoints; i++) {
, который просматривает все значения для i по мере увеличения numberOfPoints.Так что для столкновений я предполагал, что получу наклон линии между i и i-1, затем получу перпендикулярное расстояние от мяча до этой линии, и когда он приблизится к нулю, произошло столкновение, как я это делал в прямой линии.
Однако это не работает.У кого-нибудь есть какие-либо советы для лучшего способа сделать это?Я действительно подчеркнул все мои варианты для этого