Déplacement Picturebox d'un ppoint à un autre dans un temps donné (préçis) [Résolu]

Signaler
Messages postés
3
Date d'inscription
vendredi 26 octobre 2007
Statut
Membre
Dernière intervention
30 mars 2008
-
Messages postés
3
Date d'inscription
vendredi 26 octobre 2007
Statut
Membre
Dernière intervention
30 mars 2008
-
Je dois déplacer une picturebox d'un point à un autre sur une droite virtuelle en x ms (x étant paramétrable). J'ai fait le déplacement quel que soit l'emplacement des points dans la forme. Mais la gestion du temps est difficile.(Pb synchro) Je ne suis pas dévelloppeur, mais ce travail est impératif...

Merçi

4 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
Si tu as déjà commencé l'approche mathématique, je ne doute pas que tu as établi l'équation de la droite hébergeant le segment considéré et ne  t'encombrerai donc pas plus avec ce genre de considérations.

En ce qui concerne la précision, maintenant : les temps de calcul interviennent forcément, mais également celui de l'affichage. C'est là le véritable problème en matière de précision réelle, et je crains (une chose et l'autre dépendant de la machine, de la carte graphique et de la fréquence de rafraichissement de l'écran) que tu n'y puisses pas grand-chose pour y remédier, sauf à tricher (en accélérant ou ralentissant en fonction des mesures respectives du temps écoulé et de la distance "parcourue"... un peut comme pour un téléchargement de fichier, avec une progressbar... mais ce sera toujours de l'"à peu près", bien évidemment)

Bon courage et amitiés
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
Bonjour,

- tu connais la distance D (en unités logiques, pixels par exemple) séparant un point de l'autre
- tu connais le temps x (que tu définis) de parcours

que te reste-til à faire ?
Un simple calcul arithmétique !

soit depl le déplacement à effectuer entre deuc battements d'un contrôle Timer
soit Inter l'intervalle fixé entre deux battements de ton timer

ta question se résume à ceci :

combien de B battements à faire de sorte à ce que B*depl = D
une fois B ainsi déterminé
quel intervalle I de battement de sorte à ce que B multiplié par I = x  ===>> I = x/B

Et alors ?

un contrôle Timer dont la propriété intervalle = I et contenant une instruction de déplacement de ton image de depl unités par battement ...

C'est tout !
Messages postés
3
Date d'inscription
vendredi 26 octobre 2007
Statut
Membre
Dernière intervention
30 mars 2008

Je te remercie.

J'ai effectivement fais ce calcul et utilisé un timer. Mais j'obtiens des temps de parcours bizarrement différent suivant l'orientation de la droite (invisible : calcul affine) parcourue dans l'espace.
Les temps sont court genre quelque ms. et le minimum géré que je sache est la ms.
De plus, il faut que je sois synchrone avec un autre process qui lui fait clignoter ces extrimités au moment où la picturebox pointe celle-ci, mathématiquement ça devrait marcher, je continue à chercher. Peut-être que les temps de calcul influent !!! (ça m'étonnerai.)

Merci
Messages postés
3
Date d'inscription
vendredi 26 octobre 2007
Statut
Membre
Dernière intervention
30 mars 2008

Merci pour tes réponses.

Mon computer est très récent, je peux même dire au top. Bon !!! ça ne change rien.

J'ai l'idée de faire les calculs à l'avance, de préparer le pas, les coordonnées dans une table et de jouer la conf sans calcul au moment voulu, je vais voir si ça change quelque chose.

Je n'aime vraiment pas me retrouver devant des problèmes bloquants aussi mineurs. Mais tu as raison quand tu parles des progress bar qui ne savent pas depuis le temps vraiment synchroniser, c'est toujours de l'à peu près. Je crois bien que je vais tout de même devoir bidouiller. Je verrais ça demain. C'est en fait la pemière fois que je dscute sur un forum quelconque, je me rends compte que c'est plaisant. Bon, pour l'instant je uis du côté de celui qui a besoin d'aide mais bon ça peut changer.

Merci beaucoup et bonne soirée à toi.