Nous avons vu comment tracer un carré, un rectangle à des tailles différentes. Nous allons reprendre
l’exemple de la maison p. 58 et voir comment modifier le code pour tracer la maison à l’échelle
souhaitée.
L’objectif est de passer un argument à la procédure ma pour que selon le paramètre, la maison soit plus ou moins
grande. Nous souhaitons que ma 1 trace la maison en taille réelle.
ma 0,5 tracera une maison à l’échelle 0,5.
ma 2 tracera une maison aux dimensions deux fois plus grandes etc
La notion de proportionnalité est bien sûr sous-jacente. En vraie grandeur, la procédure carre était la
suivante :
pour carre repete 4[av 150 td 90] fin |
Toutes les dimensions originales de la maison sont multipliées par l’échelle. La procédure carre devient :
pour carre :c repete 4[av 150*:c td 90] fin |
Ainsi quand on tapera carre 2, le carré aura pour côté 150 × 2 = 300. les proportions sont bien respectées!
En fait, on s’aperçoit qu’il va juste falloir reprendre toutes les procédures et changer les longueurs de
déplacement de la manière suivante :
av 70 devient av 70* :c
av 45 devient av 45* :c
etc
pour carre :c repete 4[av 150*:c td 90] fin pour tri :c repete 3[av 150*:c td 120] fin pour porte :c repete 2[av 70*:c td 90 av 50*:c td 90] fin pour che :c av 55*:c td 90 av 20*:c td 90 av 20*:c fin pour dep1 :c td 90 av 50*:c tg 90 fin pour dep2 :c tg 90 av 50*:c td 90 av 150*:c td 30 fin pour dep3 :c lc td 60 av 20*:c tg 90 av 35*:c bc fin pour ma :c carre :c dep1 :c porte :c dep2 :c tri :c dep3 :c che :c fin |