Coordonnées, pixels et rapport orthonormé
Les coordonnées sur la scène
La position des lutins
Lorsque l’on crée un lutin, il apparait automatiquement sur la scène. Dans un programme, si l’on souhaite le localiser ou bien le déplacer à un endroit particulier il va nous falloir récupérer ou indiquer sa position sur la scène. Pour cela nous allons utiliser ses coordonnées.
Pour comprendre comment utiliser les coordonnées des lutins dans Scratch regardons tout d’abord à quoi correspond la scène.
Scène, affichage, et pixel
Comme nous l’avons vu lors de la présentation de SCRATCH, la scène est comme un mini écran qui va afficher ce que l’on programme. La scène peut être représentée comme une grille qui est entièrement composée de pixels, ou points. Cette grille fait 480 pixels de large et 360 pixel de haut.
Regardons en gros plan pour voir ce que cela donnerait :;
La scène est donc comme un repère du plan et les coordonnées sont une paire de nombre qui correspondent à un point ou pixel.
La première coordonnée, x, est la position du sur l’axe horizontal(ou l’axe des abscisses).
La seconde , y, est la position sur l’axe vertical (ou l’axe des ordonnées).
Le point d’origine [0,0] se situe au centre de la grille.
Tous les points auront donc :
une valeur x comprise entre -240 et 240
et une valeur y comprise entre 180 et -180.
Lorsque nous plaçons un lutin sur la scène nous lui donnons les coordonnées x,y du point où nous voulons qu’il s’affiche. Regardons quelques exemples :
Info
Il est possible de voir à tous moments les coordonnées d’un lutin dans le coin en haut à droite du plan de travail de la fenêtre script.
Déplacer un lutin en utilisant ses coordonnées
Dans une ressource précédente nous avons vu comment déplacer un lutin là l’aide du bloc mouvement « avancer de » en donnant la distance à parcourir, par exemple 30. En fait il signifie, prendre la position x du lutin sur la scène et lui ajouter 30 pixels ou points. La nouvelle position du lutin aura donc pour coordonnées:
(ancienne coordonnée x +30, y)
Si nous regardons les autres blocs de type mouvement, nous voyons que plusieurs d’entre eux nous propose de donner des coordonnées x et y à notre lutin ou de les modifier. Ainsi nous allons pouvoir contrôler notre lutin de manière très précise. Le faire avancer, aller vers le haut, vers le bas, en diagonale,etc. Et ce de manière très précise, au pixel près.
Pour placer un lutin à un endroit, au début d’un programme par exemple, nous pouvons par exemple utiliser les blocs:
Donner la valeur à x (1 sur l’image ci-dessus)
Donner la valeur à y (2 sur l’image ci-dessus)
Ou encore le bloc :
Aller à x y (3 sur l’image ci-dessus)
La vidéo présente plus haut montre un exemple de l’utilisation de quelques un de ces blocs avec un petit programme déplaçant un lutin de manière aléatoire.
Life in pixel
Maintenant que nous avons vu comment positionner un lutin sur la scène avec ses coordonnées, regardons ce qui se passe encore plus en détail.
Un lutin est un assemblage de pixels. Regardons par exemple une portion d’un lutin en gros plan sur l’image ci-dessous.
Le point de référence
Si nous mettons notre lutin au centre de la scène, c’est à dire au point 0,0, nous voyons que le point de référence utilisé pour positionner notre lutin se trouve au centre de celui-ci.
Lorsque nous mettons un lutin par exemple au centre de la scène, c’est à dire au point 0,0, nous voyons que le point de référence utilisé pour positionner notre lutin se trouve au centre de celui-ci.
Chaque costume de lutin dispose en effet d’un point de référence qui est utilisé pour placer le lutin sur la grille de la scène. C’est ce point qui sera placé aux coordonnées.
Il est possible de voir ce point et de le changer. Pour cela il faut aller dans la fenêtre costume. En haut à droite, nous avons un bouton qui s’appelle « définir le centre du costume ». Si nous cliquons dessus nous voyons 2 axes, et le point d’intersection est le centre du lutin. Nous pouvons le déplacer à l’aide de la souris et ainsi donner le point de référence que l’on souhaite à nos lutins.SCRATCH repositionnera alors automatiquement le lutin sur la scène avec cette nouvelle référence.
C’est ce point de référence est également celui utilisé lors de la rotation d’un lutin.
Bien définir son point de référence est important lorsque l’on fait des programmes où l’on doit utiliser la position du lutin pour des calculs (de distance ou autre) ou des déplacements.
Quelques exemples sont en démonstration dans la vidéo qui se trouve en début de page.