Simulation de billes

Soyez le premier à donner votre avis sur cette source.

Vue 3 883 fois - Téléchargée 229 fois

Description

Série de billes qui rebondissent... C tendu a programmer !
Et ca plante royal!

Conclusion :


Pour lancer les billes : utiliser la touche 6
ya un truc sympas : c de les lancer toutes a la suite ( de facon a ce qu'elles ne se touchent pas)
elle vont touner indéfiniment...
Il est possible d'arreter la boule rouge avec la touche 5 et de la faire repartir avec la touche 6...
Pour sortir : la touche entrée sur le pavé numerique.

Evidement ya un gros bug! Les billes se poussent et finissent par sortir du carré.

C hyper dur a programmer ces petites billes...
Les billes n'ont que quatre points pour tester les collisions...
Si quelqu'un s'amuse a zieuter le code... il verra que c du travail de porc...


Encore un truc : si vous avez des VRAIES idées pour programmer Des VRAIES billes... faut surtout pas hésiter une demi seconde...
En fait il me faut surtout un vague truc mathematique...

PS-- G grave besoin d'info sur l'utilisation des BUFFER si kelkun se sent a l'aise sur ce domaine, kil laisse un message.

Merci pour vos infos.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008

ouais c'est parfaitement faisable, si tu veux je peux te passer mon code, je le poste pas parce qu'il ya des passages assez pas-très-propre, mais les collisions sont physiquement réalistes (conservation d'énergie du système, angles de collisions impeccables, une infinité théorique de points de collision, et pas 4 comme ds cet exemple), le tout approuvé par mon prof de physique ^^

nicolasboumal AT hotmail . com su tu veux le code, un jour peut-être je le nettoirai et je le posterai, lol
Messages postés
7
Date d'inscription
dimanche 16 novembre 2003
Statut
Membre
Dernière intervention
16 avril 2007

c'est pas mal
je debute en C++ mais j'ai quelques connaissances

je n'ai pas eu trop le temp de voir comment le code est organizé
mais a mon avis pour gerer les colisions entre les billes, tu calcules
la distance entre le centre de 2 billes :
racine((xa-xb)^2+(ya-yb)^2)
si cette distance est superieur a 2*"diametre d' une bille" il ya colision
Le plus dur c'est pour calculer la nouvelle vitesse il faut raisonner avec
des vecteurs (c'est faisable mais c'est chaud bon courage)
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008

salut, tu devrais donner la possibilité de sortir du programme avec une touche (escape par exemple), parce que là j'ai du le fermer sauvagement.

aussi, je vois que tu as utilisé des struct pour les billes, c'est déjà une bonne idée à la base, mais le mieux, ce serait de la vraie POO, avec des classes, elles simplifient la vie. Qu'est-ce que ton programme sinon une collection d'objets de la même nature ? Tu pourrais donc simplifier (et clarifier) ton code en utilisant de vraies classes, avec constructeur et tout ce qu'il faut, et alors un tableau de billes (si tu utilises des vector ou list de la STL c encore mieux, plus flexible), qui gèrerait la collection.

Ceci dit, j veux bien croire que ce soit compliqué de les faire ricocher l'une contre l'autre.
Messages postés
252
Date d'inscription
vendredi 13 juin 2003
Statut
Membre
Dernière intervention
25 avril 2011

Bijourr!
Je voudrais savoir comment tu utilises EGAVGA.BGI.

Merci d'avance et bravo pour ton prog (malgré les bugs)
Messages postés
31
Date d'inscription
jeudi 28 août 2003
Statut
Membre
Dernière intervention
13 décembre 2003

ouai, sa ce passe avec moi aussi.
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.