\documentclass{article} \usepackage{pst-solides3d} \begin{document} \pagestyle{empty} \psset{lightsrc=100 0 100,viewpoint=25 10 10,Decran=30} \begin{pspicture}(-6,-4)(6,8) \pstVerb{/Pneu { /m {90 4 div} bind def /Scos {m cos 2 m mul cos add 3 m mul cos add} bind def /Z0 {h 4 div} bind def /c {Z0 Scos div} bind def /Z1 {Z0 c m cos mul add} bind def /Z2 {Z1 c m 2 mul cos mul add} bind def /R1 {R c m sin mul sub} bind def /R2 {R1 c m 2 mul sin mul sub} bind def /R3 {R2 c m 3 mul sin mul sub} bind def R h 4 div neg % 1 R h 4 div % 2 R1 Z1 % 3 R2 Z2 % 4 R3 h 2 div % 5 r h 2 div % 6 r h 2 div neg % 7 R3 h 2 div neg % 8 R2 Z2 neg % 9 R1 Z1 neg % 10 } def}% \psSolid[object=grille,base=-5 5 -5 5,linecolor=gray!70,fillcolor=gray!20] \codejps{ /roue12 { % solide 1 /R 2 def /r 1 def /h 1 def [Pneu] 36 newanneau {90 0 90 rotateOpoint3d} solidtransform {3 4 2 translatepoint3d} solidtransform dup (White) outputcolors % solide 2 [Pneu] 36 newanneau {90 0 90 rotateOpoint3d} solidtransform {-3 4 2 translatepoint3d} solidtransform dup (White) outputcolors % fusion solidfuz } def /axe12{ 0 0.1 6 [4 16] newcylindre {90 0 90 rotateOpoint3d} solidtransform {-3 4 2 translatepoint3d} solidtransform dup (White) outputcolors } def /roue12axes { roue12 axe12 solidfuz } def /roue34 { % solide 3 /R 1.5 def /r 1 def /h 1 def [Pneu] 36 newanneau {90 0 110 rotateOpoint3d} solidtransform {3 -4 1.5 translatepoint3d} solidtransform dup (White) outputcolors % solide 4 [Pneu] 36 newanneau {90 0 110 rotateOpoint3d} solidtransform {-3 -4 1.5 translatepoint3d} solidtransform dup (White) outputcolors % fusion solidfuz } def /axe34{ 0 0.1 6 [16 16] newcylindre {90 0 90 rotateOpoint3d} solidtransform {-3 -4 1.5 translatepoint3d} solidtransform dup (White) outputcolors } def /roue34axes34 { roue34 axe34 solidfuz } def /roues {roue34axes34 roue12axes solidfuz} def /chassis { 0 1 8 [4 16] newcylindre {100 0 0 rotateOpoint3d} solidtransform {0 4 2.5 translatepoint3d} solidtransform dup (White) outputcolors } def roues chassis solidfuz drawsolid**} %\psPoint(0,0,2.7){Z'} %\psline[arrowsize=0.3,arrowinset=0.2,linecolor=blue]{->}(Z')(Z) \end{pspicture} \end{document}