size(7cm,0); real r=4, R=r*1.5; pair pC=(0,-r), pA=pC*dir(-120), pB=pC*dir(120); path EnsA=circle(pA,R), EnsB=circle(pB,R), EnsC=circle(pC,R); pen coulA=lightblue, coulB=lightgreen, coulC=lightred, coula=blue, coulb=green, coulc=red; fill(EnsA,coulA+opacity(.8)); fill(EnsB,coulB+opacity(.6)); fill(EnsC,coulC+opacity(.4)); draw(EnsA^^EnsB^^EnsC,1bp+black); // On définit le chemin définissant l'intersection de EnsB et EnsC // ... et on trace l'ensemble. path BiC=buildcycle(EnsB,EnsC); // (comprendre buildcycle) filldraw(BiC,palegray+opacity(.7),2bp+red); // On conclut en plaçant les étiquettes. draw("A",2.5pA,e=roundbox,xmargin=.4,p=coula,FillDraw(coulA+white)); draw("B",2.5pB,e=roundbox,xmargin=.4,p=coulb,FillDraw(coulB+white)); draw("C",2.5pC,e=roundbox,xmargin=.4,p=coulc,FillDraw(coulC+white)); shipout(bbox(5mm,white));