prologues := 3;
outputtemplate := "%j/%j-%c.svg";
outputformat := "svg";
verbatimtex
%&latex
\documentclass{minimal}
\usepackage[utf8]{inputenc}
\usepackage[charter]{mathdesign}
\usepackage{amsmath}
\begin{document}
etex
pair A,B,O;
u:=0.6cm;
A:=(3u,0);
B:=(0,2u);
O:=(0,0);
path fol;
for i:=-60 upto 65:
beginfig(i+60);
pair N,P,Q,M;
path rayvec, vertiA, horiB,rayorth,drNP,drPM,raysym,rayorthsy,drQM;
drawarrow (-10u,0)--(10u,0);
drawarrow (0,-10u)--(0,10u);
vertiA := 12[A,(xpart A, 3u)]--12[(xpart A, 3u),A];
horiB := 12[B,(5u,ypart B)]--12[(5u,ypart B),B];
rayvec :=(-40*u*cosd(i),-40*u*sind(i))--(40*u*cosd(i),40*u*sind(i));
N := rayvec intersectionpoint vertiA;
rayorth := rayvec rotated (-90);
drNP := rayorth shifted N;
P := drNP intersectionpoint horiB;
drPM := rayvec shifted P;
Q := drPM intersectionpoint vertiA;
drQM := rayorth shifted Q;
M := drQM intersectionpoint rayvec;
if i=-60:
fol:=M;
else:
fol:=fol--M;
fi;
draw vertiA dashed evenly withcolor blue withpen pencircle scaled 0.8pt;
draw horiB dashed evenly withcolor blue withpen pencircle scaled 0.8pt;
draw rayvec dashed evenly withcolor green withpen pencircle scaled 0.8pt;
draw N--P dashed evenly withcolor green withpen pencircle scaled 0.8pt;
draw Q--P dashed evenly withcolor green withpen pencircle scaled 0.8pt;
draw Q--M dashed evenly withcolor green withpen pencircle scaled 0.8pt;
draw fol withcolor red withpen pencircle scaled 1pt;
dotlabel.urt(btex $O$ etex,O);
dotlabel.urt(btex $N$ etex,N);
dotlabel.urt(btex $Q$ etex,Q);
dotlabel.llft(btex $P$ etex,P);
dotlabel.llft(btex $M$ etex,M);
dotlabel.lrt(btex $A(a,0)$ etex,A);
dotlabel.ulft(btex $B(0,b)$ etex,B);
label.llft(btex $x$ etex,(10u,0));
label.lrt(btex $y$ etex , (0,10u));
label.llft(btex $\mathcal{D'}$ etex,(10u,ypart B));
label.lrt(btex $\mathcal{D}$ etex , (xpart A,10u));
label.top(btex \textit{Folium parabolique} etex, (7u,7u));
label.top(btex $x^3=a(x^2-y^2)+bxy$ etex, (7u,6u));
clip currentpicture to (-10u,-10u)--(-10u,10u)--(10u,10u)--(10u,-10u)--cycle;
endfig;
endfor;
end.