input constantes; input geometriepoint1; beginfig(1); affixe.D(u*(1,1))so; affixe.C(u*(5,1))se; affixe.B(u*(5,4))ne; affixe.A(z.D shifted(z.B-z.C))no; draw z.A--z.B--z.C--z.D--cycle; affixec.E(z.D rotatedabout(z.A,90))n; draw codesegments(D,A,A,E,2); endfig; beginfig(2); affixe.B(u*(1,1))so; affixe.A(u*(1,4))n; affixe.C(u*(6,4))ne; affixe.E(4/7[z.A,z.C])no; affixe.F(4/7[z.B,z.C])se; affixe.G(4/7[z.B,z.A])so; draw triangle(A,B,C); draw droite(G,F,1.15); draw droite(F,E,1.15); endfig; u:=0.75cm; beginfig(3); affixe.A(u*(1,1))so; affixe.B(u*(9,1))se; affixe.C(u*(13,3))ne; affixe.D(z.A shifted (z.C-z.B))no; affixe.S((xpart(1/2[z.A,z.C]),5u))n; affixe.H(1/2[z.A,z.C])s; draw z.A--z.B--z.C--z.S--cycle; draw z.S--z.B; draw z.A--z.D--z.C dashed evenly; draw z.D--z.S--z.H--z.B dashed evenly; draw codeperp(S,H,B,5); endfig; beginfig(4); affixe.A(u*(1,1))so; affixe.B(u*(9,1))se; affixe.C(u*(13,3))ne; affixe.D(z.A shifted (z.C-z.B))no; affixe.S((xpart(1/2[z.A,z.C]),5u))n; affixe.H(1/2[z.A,z.C])s; draw z.A--z.B--z.C--z.S--cycle; draw z.S--z.B; draw z.A--z.D--z.C dashed evenly; draw z.D--z.S--z.H--z.B dashed evenly; draw codeperp(S,H,B,5); affixe.I(1/2[z.B,z.C])se; draw segment(S,I); draw codeperp(S,I,C,5); affixe.A'(1/4[z.S,z.A])n; affixe.B'(1/4[z.S,z.B])s; affixe.C'(1/4[z.S,z.C])n; affixe.D'(1/4[z.S,z.D])no; affixe.H'(1/4[z.S,z.H])o; affixe.I'(1/4[z.S,z.I])s; draw z.A'--z.B'--z.C'; draw z.C'--z.D'--z.A' dashed evenly; draw codeperp(S,I',C',3); endfig; end