\psclip{\pscircle(0,0){4}}%\psgrid
  %\newlength{\radius}\setlength{\radius}{0cm}
  %\newcounter{rapport}\setcounter{i}{1}
  %\whiledo{\value{i}<100}{
  %  \setlength{\radius}{4cm*\value{i}}
  %  \setcounter{rapport}{\value{i}+1}
  %  \divide\radius by \arabic{rapport}
  %  \pscircle[linestyle=dotted, linecolor=gray]%
  %    (0, 0){\radius}
  %  \setcounter{i}{\value{i}*2}
  %  }
  \pstGeonode(1, 2){M}\pstGeonode(-2,2){N}\pstGeonode(0,-2){P}%
  \psset{DrawCirABC=false, PointSymbol=none, PointName=none}%
  \pstGeonode(0,0){O}\pstGeonode(4,0){A}\pstCircleOA{O}{A}%
  \pstHomO[HomCoef=\pstDistAB{O}{A} 2 mul \pstDistAB{O}{M} sub
    \pstDistAB{O}{M} div]{O}{M}[M']%
  \pstHomO[HomCoef=\pstDistAB{O}{A} 2 mul \pstDistAB{O}{P} sub
    \pstDistAB{O}{P} div]{O}{P}[P']%
  \pstHomO[HomCoef=\pstDistAB{O}{A} 2 mul \pstDistAB{O}{N} sub
    \pstDistAB{O}{N} div]{O}{N}[N']%
  \psset{linecolor=green, linewidth=1.5pt}%
  \pstCircleABC{M}{N}{M'}{OmegaMN}\pstArcOAB{OmegaMN}{N}{M}%
  \pstCircleABC{M}{P}{M'}{OmegaMP}\pstArcOAB{OmegaMP}{M}{P}%
  \pstCircleABC{N}{P}{P'}{OmegaNP}\pstArcOAB{OmegaNP}{P}{N}%
  \psset{linecolor=blue}
  %% la hauteur issue de M
  \pstHomO[HomCoef=\pstDistAB{OmegaNP}{N} 2 mul \pstDistAB{OmegaNP}{M} sub
    \pstDistAB{OmegaNP}{M} div]{OmegaNP}{M}[MH']
  \pstCircleABC{M}{M'}{MH'}{OmegaMH}\pstArcOAB{OmegaMH}{MH'}{M}
  %% la hauteur issue de N
  \pstHomO[HomCoef=\pstDistAB{OmegaMP}{M} 2 mul \pstDistAB{OmegaMP}{N} sub
    \pstDistAB{OmegaMP}{N} div]{OmegaMP}{N}[NH']
  \pstCircleABC{N}{N'}{NH'}{OmegaNH}\pstArcOAB{OmegaNH}{N}{NH'}
  %% la hauteur issue de P
  \pstHomO[HomCoef=\pstDistAB{OmegaMN}{M} 2 mul \pstDistAB{OmegaMN}{P} sub
    \pstDistAB{OmegaMN}{P} div]{OmegaMN}{P}[PH']
  \pstCircleABC{P}{P'}{PH'}{OmegaPH}\pstArcOAB{OmegaPH}{P}{PH'}
\endpsclip