2013-06-29 3 views
7

У меня есть прямоугольник в холсте, и я знаю, как его перемещать и боком. То, что я хочу сделать, это заставить его двигаться круговым движением.Холст перемещать объект по кругу

Так что мои объекты (прямоугольник) x и y будут идти по кругу.

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

Любые идеи?

ответ

13

Параметрическое уравнение для перемещения по окружности заключается в следующем:

x=r*cos(theta) 
y=r*sin(theta) 

theta угол, и r радиус.

Если вы хотите знать изменение theta, чтобы получить желаемую скорость, решая для расстояния d вы получите, что изменение theta является: arccos(1-(d/r)^2/2)

Функции JavaScript являются Math.cos, Math.sin и Math.acos, respsectively , Все они имеют дело с радианами.

+0

Не могли бы вы или кто-нибудь предоставить мне jsFiddle о том, как добавить математические библиотеки или как они связаны? –

+0

Математическая библиотека уже доступна в браузере. – simonzack

+4

Вот скрипка, показывающая математику: http://jsfiddle.net/m1erickson/Qnk5d/ – markE

Смежные вопросы