- Je remercie Yves Lamoureux pour m'avoir indiqué la "marche
à suivre" pour réaliser ce tutorial sur l'heure
- pour
afficher une heure, on a besoin de l'objet Date
& Heure, car c'est
le seul objet permettant de la récupérer
dans une nouvelle application, faire Menu / Insérer / Nouvel Objet /
Temps / Date et Heure,
cliquer sur la scène et choisir Créer un objet Horloge
pour changer son aspect, cf. le tutorial Les
Objets , mais l'objectif n'est
pas de travailler sur l'objet - il ne sert là
que comme extension -, mais de programmer une
pendule qui affichera l'heure (celle de l'ordinateur)
- pour
afficher l'heure avec un objet actif
"aiguille", c'est simple, il suffit
de convertir l'heure en angle et de
changer l'angle de l'objet actif
- le matériel se trouve dans
les tutoriaux 16 à télécharger - cf. page des téléchargements
|
 |
- 1ère pendule :
- 1 créez un objet actif
aiguille_heure avec une seule image
pointant vers le haut. - mettre bien le point
chaud de l'image en bas au
centre
- 2
mettez un objet Date
& Heure en dehors du terrain
- 3 dans l'éditeur d'événements, ajouter
une condition Toujours et dans
cette condition ajouter une action Changer
Angle
récupérer l'heure de
l'objet Date Heure, ensuite
faire un calcul mathématique pour calculer la valeur de l'angle, à savoir
multiplier la valeur de l'objet actif par 360/12 (avec
inversion car les angles tournent dans le sens
inverse des aiguilles d'une montre)
dans le tableau, on a donc cette expression hours of(
"Date Heure" )*-360/12
- même
procédure pour les minutes, mais Fixer l'angle avec cette
expression minutes of( "Date Heure"
)*-360/60
pour les secondes, seconds of( "Date
Heure" )*-360/60
- 4 demeure un problème, c'est la
position de l'aiguille entre 2 heures, que ce
soit 8h05 ou 8h55, l'aiguille reste sur le 8,
ce qui n'est pas réaliste, aussi, on apporte une
correction à l'expression
pour l'heure
il faut ajouter à l'angle principal l'angle
entre 2 heures successives (30 degrés)
multiplié par le nombre de minutes divisé par
soixante
ce qui donne comme expression générale pour
fixer l'angle de l'aiguille des heures : (hours of(
"Date Heure" )*-360)/12-(minutes of(
"Date Heure" )*30)/60
- pour afficher l'heure et
les minutes en chiffres, insérer 2 objets compteur dont on Changera la valeur en
récupérant l'heure et les minutes ce qui Fixe sa nouvelle valeur hours of( "Date Heure"
)
- pour le look des compteurs,
cf. le tutorial Danypong qui explique comment changer la
police
- ATTENTION, l'objet Date
& Heure a une fonction permettant de
changer la date et l'heure, cette fonction change
l'heure de la machine...
|