Mouvement circulaire

Résolu
jhon_smith Messages postés 40 Date d'inscription jeudi 16 octobre 2003 Statut Membre Dernière intervention 30 mars 2007 - 24 févr. 2007 à 21:43
jhon_smith Messages postés 40 Date d'inscription jeudi 16 octobre 2003 Statut Membre Dernière intervention 30 mars 2007 - 25 févr. 2007 à 21:41
Bonjour,
mon problème se résume comme suit : je veux créer le mouvement circulaire d'un bouton, c'est-à-dire , suivant un certain orbite autour d'un point. L'idée que j'ai c'est qu'il faut utiliser Move dans un Timer, et dans le left, il y aura le cosinus d'une variable, dans le top, son sinus mais j'arrive pas à savoir comment procéder .. Si quelqu'un peut m'aider, je lui serait reconnaissant , et merci d'avance ! 

La réalité n'est qu'une vaste illusion !

4 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 févr. 2007 à 21:57
Tien un petit bout de code fait très très rapidement, sans trop réfléchir. Il te faudra donc peut-etre l'amélioré.

Const PI As Single = 3.14159265358979
Const R As Integer = 500 'rayon
du cercle décrit par le bouton
Const OFFX As Integer = 1000 'left
du centre du cercle (offset)
Const OFFY As Integer = 1000 'top
du centre du cercle (offset)

Private Sub Timer1_Timer()
Static i As Integer

'Nouvelles coordonnées du bouton
button1.Left = R * Cos(i * PI / 180) + OFFX
button1.Top = R * Sin(i * PI / 180) + OFFY

'Incrément de 10
degrés
i = i + 10
If i > 359 Then i = 0

End Sub

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
24 févr. 2007 à 21:46
c'est avec le left et le top que tu fera le Move comme tu dis

Sinon pour le reste c'est bon, un timer, le left du bouton sur le cosinus, le top sur le sinus

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
24 févr. 2007 à 21:47
Bonsoir,
Je ne comprends pas !
Tu veux faire tourner un bouton ?
Si oui : comment exactement ?
tu pourras toujours le déplacer pour qu'il accomplisse un "tour" circulaire, mais tu ne pourras pas lui conserver une position perpendiculaire au diamètre du cercle fictif.
Explique-toi donc .
0
jhon_smith Messages postés 40 Date d'inscription jeudi 16 octobre 2003 Statut Membre Dernière intervention 30 mars 2007
25 févr. 2007 à 21:41
Merci beaucoup, ça donne l'effet demandé !
0
Rejoignez-nous