\documentclass[border=5mm]{standalone}

\usepackage{pst-solides3d}

\begin{document}
\psset{unit=1.5}
\psset{viewpoint=50 -20 30 rtp2xyz, Decran=50}
\begin{pspicture}[showgrid=false](-6,-6)(6,5)
\codejps{
/sph1 {%
    6 -90 0 [12 36] newcalottespherecreuse
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/cub1 {%
    6 newcube
    dup 0.9 solidaffine
    dup videsolid
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/sph2 {%
    3 -90 0 [12 36] newcalottespherecreuse
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/tet1 {%
    3 newtetraedre
    dup 0.9 solidaffine
    dup videsolid
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/sph3 {%
    1.5 -90 0 [12 36] newcalottespherecreuse
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
    /dod1 {%
    1.3 newdodecaedre
    dup 0.9 solidaffine
    dup videsolid
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/sph4 {%
    0.85 -90 0 [12 36] newcalottespherecreuse
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/ico1 {%
    0.7 newicosaedre
    dup 0.9 solidaffine
    dup videsolid
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/sph5 {%
    0.5 -90 0 [12 36] newcalottespherecreuse
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/tet2 {%
    0.4 newtetraedre
    dup 0.9 solidaffine
    dup videsolid
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
/sph6 {%
    0.2 -90 0 [12 36] newcalottespherecreuse
    dup (Gray) outputcolors
    dup (White) inputcolors
} def
    sph1 cub1 solidfuz sph2 solidfuz tet1 solidfuz sph3 solidfuz dod1 solidfuz sph4 solidfuz ico1 solidfuz sph5 solidfuz tet2 solidfuz sph6 solidfuz
drawsolid**
}
\end{pspicture}
\end{document} 