Bonjour, et bienvenue à cette 4° leçon sur le petit circuit de voitures.
On va s'intéresser à l'ergonomie.
Actuellement la voiture est orientée avec la souris,
et accélère avec le clavier.
Ce qui n'est pas très pratique.
Il vaudrait mieux regrouper les commandes au même endroit
par exemple sur la souris. Comme ça l'utilisateur pourra se concentrer sur l'écran.
Alors, avez-vous une idée de la manière dont on pourrait contrôler la vitesse avec la souris ?
On contrôle déjà l'orientation, mais comment faire pour la vitesse ?
Alors, la question que je vous pose, c'est :
Quelle est l'information et quels sont les blocs que vous allez utiliser pour contrôler la vitesse ?
Vous allez faire une pause vidéo pour chercher une solution et les blocs pour la réaliser.
Vous pouvez en discuter à plusieurs si vous êtes en groupe.
Ce que vous devez faire, c'est :
1° composer le bloc qui met à jour la vitesse, 2° mettre ce bloc au bon endroit
Alors maintenant passez en mode pause vidéo et recherchez ces blocs.
Alors, vous avez trouvé ? Je vais vous donner un indice :
On peut utiliser la distance entre la voiture et la souris pour controler la vitesse.
Cette distance c'est un "capteur" qui mesure en nombre de points d'écran, ou pixels
Refaites pause vidéo, trouvez ce capteur et utilisez le pour définir la vitesse.
Bien, donc on va maintenant décrire une solution
et on va donc utiiser la distance entre la voiture et le curseur pour controler la vitesse
Cette distance c'est un capteur et ce capteur il est làﾠ.
il fournit une mesure de distance en points d'écran ou en pixels.
Le pixel correspond au point d'une image ou au point d'un écran.
Dans le cas de Scratch, l'écran fait 480 pixels de large par 360 de large.
Donc si je me mets le curseur à peu près ici par rapport à la voiture
ça fait ￃﾠ peu près un quart de la largeur de l'écran donc àﾠpeu près 120 pixels
Si je veux que cette distance corresponde àﾠ une vitesse de 10,
ll faut que je divise 120 la distance par 12 pour obtenir 10 la vitesse.
Je vais donc calculer la variable vitesse en divisant la distance
par un coefficient dont la valeur initiale sera à 12
Je pourrai ajuster ce coefficient en fonction de ce que je veux.
Donc, Je crée une variable appelée "coeff"
et je l'inititalise à 12 au démarrage, c'est à dire au drapeau vert.
On va ensuite calculer la vitesse, ou la mettre àﾠ jour
en divisant
la distance qui est un capteur.
par ce coefficient.
Le calcul de la vitesse doit être fait en permanence,
Donc, je le mets dans la boucle infinie,
après le bloc qui oriente la voiture et avant celui qui la fait avancer.
Ce qu'il ne faut pas oublier par ailleurs
c'est de supprimer les fonctions qui réglaient la vitesse avec les flèches.
Plutôt que de les détruire,Je vais les désactiver parce que j'en aurai besoin tout à l'heure
Maintenant, je vais pouvoir tester le bon fonctionnement du programme.
On y va,
j'appuie sur drapeau vert.
Je vois que la voiture va tout doucement quand elle est près de la souris
et qu'elle va vite quand je l'éloigne.
Alors allez-y, essayez, je suis sￃﾻr que vous avez battre votre record
et puis rendez-vous à la prochaine leçon.