input latexmp; setupLaTeXMP(class="article",options="12pt",fontencoding="T1",inputencoding="latin1",language="frenchb",packages="fourier,textpathmp"); input textpath; prologues:=2; input geometriesyr16; figure(0,-3u,10u,13u); pair A,B,C,D,O,P[],R[],S[],M[],N[]; A=u*(2,5); B-A=u*(6,0); O=iso(A,B); C-O=u*(0,5); D=symetrie(C,O); l=0; for k=-90 step 0.1 until 90: P[k]=(k/10)[A,B]; if (cercles(P[k],7u) intersectiontimes droite(C,D))<>(-1,-1): l:=l+1; R[k]=cercles(P[k],7u) intersectionpoint droite(C,D); S[k]=symetrie(R[k],O); M[l]=perpendiculaire(P[k],R[k],R[k]) intersectionpoint parallele(P[k],R[k],O); N[l]=perpendiculaire(P[k],S[k],S[k]) intersectionpoint parallele(P[k],S[k],O); fi; endfor; drawoptions(dashed evenly withcolor gris); trace codeperp(C,O,B,5); trace segment(1.5[A,B],1.5[B,A]); trace segment(1.5[C,D],1.5[D,C]); drawoptions(withcolor rouge); path doubleoeuf; doubleoeuf=M1 for k=2 upto l: --M[k] endfor for k=1 upto l: --N[k] endfor --cycle; trace doubleoeuf; drawoptions(withcolor bleu); trace textpath("\Large Double \oe uf",doubleoeuf,0.6); fin; end