size(7cm,0); pair C1=(-3,0),C2=(3,0); real r=4; path EnsA=circle(C1,r); path EnsB=circle(C2,r); picture AinterB; // Sur l'image courante, on colorie successivement les disques // représentant les ensembles A et B. fill(EnsA,lightblue); fill(EnsB,lightgreen); // B vient au dessus de A. // Sur une image nommée AinterB, on dessine l'ensemble A // avec la "couleur somme" (mélange des couleurs de A et B) fill(AinterB,EnsA,lightblue+lightgreen); // puis on découpe cette image AinterB pour ne garder que la // partie de l'ensemble A qui est incluse aussi dans l'ensemble B. clip(AinterB,EnsB); // On vient ajouter (superposer) l'image AinterB à l'image courante. add(AinterB); // On trace les cercles délimitant les ensembles, on les étiquette draw(EnsA); label("$A$",C1); draw(EnsB); label("$B$",C2); // et on ajoute la flèche indiquant l'intersection. draw(Label("$A\cap B$",0),(0,-5)--(0,0),Arrow); shipout(bbox(5mm,white));