2013-06-29 6 views
7

J'ai un rectangle dans la toile, et je sais comment le déplacer vers le haut et sur le côté. Ce que je veux faire est de le faire bouger dans un mouvement circulaire. Donc, mes objets (rectangle) x et y iraient dans un cercle.Toile déplacer l'objet en cercle

Maintenant, je suppose que j'ai besoin d'un rayon pour quelle distance et une formule pour la vitesse (1pixel) pour l'obtenir tourner sur l'axe.

Une idée est?

Répondre

13

L'équation paramétrique destiné à déplacer en cercle est la suivante:

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

theta est l'angle et le rayon r.

Si vous voulez savoir le changement de theta pour obtenir la vitesse souhaitée, la résolution de la distance d vous que le changement de theta est: arccos(1-(d/r)^2/2)

Les fonctions JavaScript sont Math.cos, Math.sin et Math.acos, respsectively . Ils traitent tous avec des radians.

+0

Pourriez-vous ou quelqu'un me fournir un jsFiddle sur la façon d'ajouter les bibliothèques de mathématiques ou comment ils sont connectés? –

+0

La bibliothèque mathématique est déjà disponible dans le navigateur. – simonzack

+4

Voici un violon montrant les maths: http://jsfiddle.net/m1erickson/Qnk5d/ – markE

Questions connexes