Маятник с подвижным шарниром

Я делаю игру, которую вы можете увидеть здесь, если вы находитесь в Windows или Linux: http://insertnamehere.org/birdsofprey/

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

Я нашел документ по этой теме, но уравнения полагаются на знание ускорения поворота (X 'и Y' '), которое Я не; Я только неоднократно переводил рисунок птицы в текущую позицию мыши.

У меня есть угол наклона птицы (от -180 до 180 градусов), скорость и ускорение angular. Мне нужно будет изменить эти три переменные каждый раз, когда мышь перемещается, поэтому я также буду иметь последнюю (x, y) и новую мышь (x, y).

Достаточно ли этого, чтобы сделать хорошую симуляцию маятника с движущейся осью вращения?

1 ответ

Если вы можете выбрать положение мыши (x, y) с достаточно высоким временным разрешением, вы можете вычислить ускорения X '' и Y '' численно. Предположим, вы измерили три X-положения в известные моменты времени: (x0, t0), (x1, t1), (x2, t2).

Вычислите v = X '= dx/dt для интервалов (t0, t1) и (t1, t2):

v0 = (x1 - x0)/(t1 - t0) в момент времени tv0 = (t1 - t0)/2

v1 = (x2 - x1)/(t2 - t1) в момент времени tv1 = (t2 - t1)/2

Затем вычислим X '' = V '= dv/dt = (v1-v0)/(tv1 - tv0)

Y '' вычисляется аналогично. Затем вы можете подключить X '' и Y '' к уравнениям вы уже нашли, чтобы вычислить положение маятника на следующем шаге.

licensed under cc by-sa 3.0 with attribution.