55 votes

Comment puis-je générer des points aléatoires sur la circonférence d'un cercle en javascript

J'essaie d'écrire une fonction qui renverra au hasard des coordonnées (x,y) autour d'une circonférence donnée donc si j'ai un point qui est à (0,0) (étant le centre du div), comment puis-je écrire une fonction qui place au hasard d'autres entités qui apparaissent parmi le bord extérieur d'un cercle.

Tout ce dont j'ai besoin, c'est de l'équation, je sais qu'elle a quelque chose à voir avec l'obtention de la distance entre le centre et le bord de la circonférence, mais aucune idée de comment la calculer et la randomiser pour qu'elle ait l'air bien.

121voto

Niet the Dark Absol Points 154811

Obtenez simplement un angle aléatoire :

 var angle = Math.random()*Math.PI*2;

Puis

 x = Math.cos(angle)*radius;
y = Math.sin(angle)*radius;

Terminé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X