input constantes; input geometriepoint; beginfig(1); affixe.B(u*(1,1)); affixe.C(u*(5,1)); affixe.A(u*(1,4)); affixe.O(1/2[z.A,z.C]); path lun[]; path cc[]; cc1=cercledia(A,B); lun1=z.A--(subpath(0.25*length cc1,0.75*length cc1) of cc1)--z.B--cycle; cc2=cercledia(B,C); lun2=z.B--(subpath(0.5*length cc2,length cc2) of cc2)--z.C--cycle; lun3=z.C--arccercle(C,A,O)--z.A--cycle; draw hachure(60,0.3,0); clip currentpicture to lun1; picture lune[]; lune1=currentpicture; currentpicture:=nullpicture; draw hachure(60,0.3,0); clip currentpicture to lun2; lune2=currentpicture; currentpicture:=nullpicture; affixe.B(u*(1,1))so; affixe.C(u*(5,1))se; affixe.A(u*(1,4))no; draw triangle(A,B,C); draw codeperp(A,B,C,5); draw lun1; draw lun2; draw lune1; draw lune2; fill lun3 withcolor 0.9*white; draw lun3; endfig; beginfig(2); affixe.A(u*(1,1)); affixe.B(u*(5,1)); affixe.C(u*(1,-4)); affixe.O(1/2[z.B,z.C]); path lunu[]; path cd[]; cd1=cercledia(A,B); cd2=cercledia(A,C); cd3=cercledia(B,C); %lunu1=z.A--(subpath(0.25*length cd2,0.75*length cd2) of cd2)--z.C--arcicercle(C,A,O)--cycle; lunu1=z.A--arccercle(A,C,O)--z.C--(subpath(0.75*length cd2,0.25*length cd2) of cd2)--cycle; %lunu2=z.B--(subpath(0,0.5*length cd1) of cd1)--z.A--arcicercle(A,B,O)--cycle; lunu2=z.B--arccercle(B,A,O)--z.A--(subpath(0.5*length cd1,0) of cd1)--cycle; draw hachure(60,0.5,1); clip currentpicture to lunu1; picture lunul; lunul=currentpicture; currentpicture:=nullpicture; affixe.A(u*(1,1))no; affixe.B(u*(5,1))ne; affixe.C(u*(1,-4))s; affixe.O(1/2[z.B,z.C]); draw triangle(A,B,C); draw codeperp(B,A,C,5); draw lunu1; draw lunul; fill lunu2 withcolor 0.9*white; draw lunu2; endfig; end