// Un nouvel exemple pour mieux comprendre les trois tailles // du cercle bleu de l'exemple précédent. // 5 pictures (currentpicture, pic40, pic20, pic10, pic1) avec 5 unités différentes unitsize(60); // unité de longueur de currentpicture : 60bp picture pic40; unitsize(pic40,40); // unité de longueur de pic2 : 40bp picture pic20; unitsize(pic20,20); // unité de longueur de pic2 : 20bp picture pic10; unitsize(pic10,10); // unité de longueur de pic2 : 10bp picture pic1; // unité de longueur de pic1 : celle par défaut de 1bp draw(pic1,unitcircle,blue); // cercle bleu de rayon 1 unité (1 bp) dans pic1 add(pic1); // ajouté à currentpicture, on obtient un cercle bleu de rayon 1 unité (1x60 bp) add(pic1.fit()); // pic1.fit() une frame qui tient compte du unitsize (implicite) de pic1 // ajoutée à currentpicture, on obtient un cercle bleu de rayon 1x1 = 1 bp draw(pic10,scale(2)*unitcircle,red); // cercle rouge de rayon 2 unités (2x10 bp) dans pic10 add(pic20,pic10); // Même si on l'ajoute de picture en picture, quand on finit par l'ajouter add(pic40,pic20); // à currentpicture, on obtient : add(pic40); // un cercle rouge de rayon 2 unités (2x60 bp). add(pic10.fit()); // pic10.fit() une frame qui tient compte du unitsize de pic10 : // ajoutée à currentpicture, on obtient un cercle rouge de rayon 2x10 = 20 bp // Il me semble avoir compris que : // 1. lorsque l'on ajoute une picture à une autre, c'est le unitsize de la picture destinataire // qui est pris en compte : peu importe celui de l'image initiale. // 2. pour ajouter une picture pic à une autre en tenant compte du unitsize de pic, // on ajoutera en fait la frame pic.fit() à la picture destinataire.