run with xelatex
\documentclass[pstricks]{standalone}
\usepackage{pst-solides3d}
\begin{document}
\psset{unit=0.75}
\begin{pspicture}(-6,-4)(6,6)
\psset{viewpoint=20 120 40 rtp2xyz,Decran=15,lightsrc=-10 15 10}
\psSolid[object=grille,base=-5 6 -6 4,action=draw*,linecolor={[cmyk]{1,0,1,0.5}}](0,0,0)
\defFunction[algebraic]{A}(u,v){4*cos(u)}% x(u)
{4*sin(u)}% y(u)
{v} % z(v)
\psSolid[object=surfaceparametree,linecolor={[cmyk]{1,0,1,0.5}},base=0 pi pi add 1 5,
fillcolor=blue!50,incolor=green!20,function=A,linewidth=0.5\pslinewidth,ngrid=40 4]%
\end{pspicture}
\end{document}

and the same for only y>0 and a different viewpoint:
\documentclass[pstricks]{standalone}
\usepackage{pst-solides3d}
\begin{document}
\psset{unit=0.75}
\begin{pspicture}(-6,-4)(6,6)
\psset{viewpoint=20 -40 20 rtp2xyz,Decran=15,lightsrc=viewpoint}
\psSolid[object=grille,base=-4 5 -6 4,action=draw*,linecolor={[cmyk]{1,0,1,0.5}}](0,0,0)
\defFunction[algebraic]{A}(u,v){4*cos(u)}% x(u)
{4*sin(u)}% y(u)
{v} % z(v)
\psSolid[object=surfaceparametree,linecolor={[cmyk]{1,0,1,0.5}},base=0 pi 1 5,
fillcolor=blue!50,incolor=green!20,function=A,linewidth=0.5\pslinewidth,ngrid=20 4]
\axesIIID(6,4,6-)
%\gridIIID[Zmin=0,Zmax=5](-4,5)(-4,4)
\end{pspicture}
\end{document}

and for a closed solid:
\documentclass[pstricks]{standalone}
\usepackage{pst-solides3d}
\begin{document}
\psset{unit=0.75}
\begin{pspicture}[solidmemory](-4,-3)(6,6)
\psset{viewpoint=20 -40 30 rtp2xyz,Decran=15,lightsrc=viewpoint}
\psSolid[object=grille,base=-5 4 -1 5,linecolor={[cmyk]{1,0,1,0.5}}](0,0,0)
\defFunction{F}(t){t cos 4 mul}{t sin 4 mul}{}% A circle
\psSolid[object=prisme, h=4,fillcolor=blue!30,incolor=green!20,ngrid=8 9,
base=0 180 {F} CourbeR2+ ](0,0,1)
\axesIIID(4,7,5)(5,8,6)
\end{pspicture}
\end{document}
