Auteur ou autrice : Vincent Zoonekynd.
Mise en ligne le 6 novembre 2024
En 1999, puis mis à jour en 2001, Vincent Zoonekynd a mis en ligne un fichier MetaPost illustrant différentes utilisations du programme avec plus de 300 exemples. Ces exemples sont disponibles sur le CTAN.
Code
beginfig(232)
vardef inversion (expr O,k,M) =
if pair M:
(O + k*unitvector(M-O)/abs(M-O))
elseif path M:
for i=0 step length(M)/10 until length(M):
hide(
draw O--inversion(O,k,point i of M)--(point i of M);
draw inversion(O,k,point i of M) withpen pencircle scaled 2pt;
draw point i of M withpen pencircle scaled 2pt withcolor red;
draw O withpen pencircle scaled 2pt;
)
inversion(O,k,point i of M) ..
endfor
cycle
fi
enddef;
path p[];
p1=fullcircle scaled 2u shifted (u,0);
p2=fullcircle scaled 2u shifted (-u,0);
draw p1 dashed withdots scaled .25;
draw p2 dashed withdots scaled .25;
z0 = (.5u,2u);
draw inversion( z0, 2 (u**2), p1 );
draw inversion( z0, 2 (u**2), p2 );
endfig;
end.