add tag
Anonymous 1123
I draw this figure with GeoSpace
![ScreenHunter 79.png](/image?hash=cb67b32dbcf24d438d7dc8ebc4d40bcab082fa8db49ec081556a203de1e17c6a)

I think, I can use a part of this code to draw
```
\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{calc,3dtools}% https://github.com/marmotghost/tikz-3dtools
\begin{document}
\begin{tikzpicture}[3d/install view={phi=110,theta=70},line join = round, line cap = round,
	declare function={R=2;v=R;% base radius and height of the cone 
		r=R/3;% radius of the small circle
		h=(R-r)*v/R;%  height of the base of the upper circle
	}] 
 \path pic{3d/cone={r=R,h=v}} (0,0,h) pic{3d/cone={r=r,h/.evaluated=v-h}};	
\end{tikzpicture} 
\end{document} 
```
How can I draw it?
Top Answer
user 3.14159
In this case one can just use some combination of cones and arcs.
```
\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{calc,3dtools}% https://github.com/marmotghost/tikz-3dtools
\begin{document}
\begin{tikzpicture}[3d/install view={phi=0,theta=65},
	line cap=round,line join=round,
	declare function={R=2;% bigger radius
		r=1;% radius of the upper, smaller cone
		rs=0.6; % radius of the cylinder
		h=3;% height of the bigger cone
		H=2;% height of the bigger base cylinder
		}]
	\path (0,0,-H) coordinate (B)
		pic{3d/circle on sphere={R=R,C={(0,0,0)},P={(0,0,0)},n={(0,0,1)}}} 
	(0,0,0) coordinate (O) pic{3d/cone={r=R,h=h}}
	(0,0,h-h*r/R) coordinate (T) pic{3d/cone={r=r,h/.evaluated=h*r/R}};
	\draw[3d/hidden] (B) circle[radius=rs] (T) circle[radius=rs]
		(-rs,0|-T) -- (-rs,0|-B) (rs,0|-T) -- (rs,0|-B);
    \draw[3d/visible,3d/screen coords] 
		(-R,0|-O) -- (-R,0|-B) (R,0|-O) -- (R,0|-B);
\end{tikzpicture}
\end{document} 
```
![Screen Shot 2021-04-04 at 8.54.36 PM.png](/image?hash=1f8b824cf0a6e220a3300517db6ca5d489000af9017acd546612afec7c0c7d69)

This room is for discussion about this question.

Once logged in you can direct comments to any contributor here.

Enter question or answer id or url (and optionally further answer ids/urls from the same question) from

Separate each id/url with a space. No need to list your own answers; they will be imported automatically.