Nuage de moustique (ou autre)

5/5 (12 avis)

Vue 5 166 fois - Téléchargée 370 fois

Description

Ce programme s'inscrit dans une ligne de recherche que je mène, qui à pour but de générer un algorithme simulant un vol d'oiseaux, les déplacements d'un banc de poissons, etc.
Pour l'instant, j'en suis au stade le plus simple à concevoir (mais il faut un point de départ) : simulation d'un nuage d'insecte. Amusez vous bien

Source / Exemple :


'In the Zip

Conclusion :


J'ai pensé améliorer le programme pour en faire un écran de veille : qu'en pensez vous ?
J'attend vos commentaires.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
vjeux Messages postés 92 Date d'inscription lundi 14 avril 2003 Statut Membre Dernière intervention 5 décembre 2003
27 mai 2003 à 13:10
Wahooo :D

Bravo ! C'est super :D

Quelques détails : pourquoi mets tu :
Private Sub OKButton_GotFocus()
NbIndiv.SetFocus
End Sub

C'est assez embetant de devoir faire entrer et de ne pas pouvoir cliquer sur OK :D

Apres, mets qquechose pour que quand on mette 1 comme nombre de moustique ca ne bug pas ;)

Enfin, quand il y en a une centaine ca tourne au ralenti ... Normal !?
IdhaoBlue Messages postés 23 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 29 juillet 2005
27 mai 2003 à 13:28
Etonnant !
cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
27 mai 2003 à 13:47
En effet, étonnant !
Il serait sympa qu'un des "insectes" ait une couleur différente afin de pouvoir le suivre des yeux et ainsi mieux apprécier le travail.
Rigolo comme tout !
cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
27 mai 2003 à 13:53
Essayez ça :
Le "patient 0" sera rouge


Private Sub Affichage()
Dim a As Long
Me.Cls
Me.PSet (Group(0).PosX, Group(0).PosY), &HFF&
For a = 1 To UBound(Group)
Me.PSet (Group(a).PosX, Group(a).PosY), Me.ForeColor
Next a
End Sub
clementio Messages postés 432 Date d'inscription samedi 18 mai 2002 Statut Membre Dernière intervention 17 février 2014 1
27 mai 2003 à 14:35
Très, très bonne source et pour enjoliver le tout j'ai rajouté ça:

Private Type INDIVIDU
PosX As Single 'Abscisse de l'individu
PosY As Single 'Ordonnée de l'individu
Direction As Single 'Direction de l'individu
RotatD As Single 'Changement de direction
Vitesse As Single 'Vitesse de l'individu
Couleur As Long 'C'est ce que j'ai rajouté
End Type

Ainsi que:

For a = 0 To NB_INDIV - 1
DoEvents
With Group(a)
.PosX = BorneX * Rnd() / 2 + BorneX / 4
.PosY = BorneY * Rnd() / 2 + BorneY / 4
.Vitesse = MAX_VIT '* Rnd()
.Direction = 2 * PI * Rnd() - PI
.RotatD = 2 * ROTATION * Rnd() - ROTATION
.Couleur = RGB(Int(Rnd * 256), Int(Rnd * 256), Int(Rnd * 256)) 'C'est encore ce que j'ai rajouté
End With
Next a

et:

Private Sub Affichage()
Dim a As Long
Me.Cls
For a = 0 To UBound(Group)
Me.PSet (Group(a).PosX, Group(a).PosY), Group(a).Couleur
' Me.Print a
Next a
End Sub


Voilà, c'est super code, bravo, 10/10

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.