Je suis nouveau avec pymunk et je voudrais mettre en œuvre une simulation n-corps (en 2D) comme celui-ci: https://www.youtube.com/watch?v=otIGNTFJwpU&feature=youtu.beComment implémenter la simulation n-body avec pymunk?
Je sais déjà comment créer l'espace, les formes et le rendu avec pygame. Ma question: est-il un moyen d'ajouter des forces de gravitation entre les formes dans pymunk?
Merci pour votre aide.
Peut-être que vous pourriez montrer ce que vous avez essayé, ou décrire la recherche que vous avez faite? Comment avez-vous établi que cela ne peut pas être fait par pymunk? – barny
Ok donc ce que j'ai déjà fait est de créer l'espace avec les corps. Maintenant, j'ai besoin de mettre en œuvre des forces de gravitation entre chaque paire de corps. Ma première supposition était d'utiliser 'pymunk.constraint' qui * décrit comment deux corps interagissent les uns avec les autres *. Cependant, cette classe contient seulement ["PinJoint", "SlideJoint", "PivotJoint", "GrooveJoint", "DampedSpring", "DampedRotarySpring", "RotaryLimitJoint", "RatchetJoint", "GearJoint", "SimpleMotor"] 'et il ne semble pas évident de modifier ces derniers pour reproduire la force de gravitation. – rronan
S'il vous plaît pourriez-vous modifier votre question pour inclure le code que vous avez déjà (utilisez 4 espaces pour mettre en forme comme code). La méthode que vous voudrez probablement utiliser est une double boucle pour les corps de votre système. Ensuite, utilisez [l'inverse loi du carré] (https://en.wikipedia.org/wiki/Gravity#Newton.27s_theory_of_gravitation) pour calculer l'ampleur et l'utilisation [apply_force_at_local_point] (http://www.pymunk.org/en/ latest/pymunk.html # pymunk.Body.apply_force_at_local_point) au centre de l'objet. – cdo256