Yes.
```
\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{calc,3dtools}%https://github.com/marmotghost/tikz-3dtools
\begin{document}
\begin{tikzpicture}[3d/install view=%
{phi=110,psi=180,theta=60},
declare function={R=5;r=3;h=3;}]
\draw (0,0,-4) coordinate(T) circle[radius=R];
\path (0,0,0) coordinate (O);
\draw[3d/screen coords] (O-|-R,0) -- (T-|-R,0) (O-|R,0) -- (T-|R,0);
\begin{scope}
\path[opacity=0] (0,0,0) pic{3d/frustum={R=R,r=r,h=h}};
\clip[3d/screen coords] (-R,0) -- (R,0) -- (0,0-|current bounding box.east)
-- (current bounding box.south east)
-- (current bounding box.south west)
-- (0,0-|current bounding box.west) -- cycle;
\path (0,0,0) pic{3d/frustum={R=R,r=r,h=h}};
\end{scope}
\end{tikzpicture}
%
\begin{tikzpicture}[3d/install view=%
{phi=110,psi=180,theta=60},
declare function={R=5;r=3;h=3;}]
\path[3d/install view={phi=110,psi=0,theta=60}] pic{3d/cone={r=R,h=5}};
\begin{scope}
\path[opacity=0] (0,0,0) pic{3d/frustum={R=R,r=r,h=h}};
\clip[3d/screen coords] (-R,0) -- (R,0) -- (0,0-|current bounding box.east)
-- (current bounding box.south east)
-- (current bounding box.south west)
-- (0,0-|current bounding box.west) -- cycle;
\path (0,0,0) pic{3d/frustum={R=R,r=r,h=h}};
\end{scope}
\end{tikzpicture}
\end{document}
```