绘制圆柱体的一部分

绘制圆柱体的一部分

这是我想要绘制的图形:

在此处输入图片描述

我想绘制圆柱体的这一部分和一个带有内部阴影的正方形(我不想要正方形内的虚线,这是一个拼写错误)

有人可以帮我画一下吗?

答案1

你可以从这样的事情开始:

\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, patterns, patterns.meta}

\begin{document}

\begin{tikzpicture}
\node at (0,0) [draw,shape=ellipse,minimum width=2cm] {};
\node at (0,-3cm) [draw,shape=ellipse,minimum width=2cm] {};
\draw (-1,0)node[left]{$\alpha,x$} --node[left]{$c$} (-1,-3)node[left]{$f(x)\equiv y$};

\draw [pattern={Lines[angle=45,distance=5pt]},pattern color=blue] (3,0)node[left]{$x$} --node[left]{$c$} ++(0,-3)node[left]{$y$} --++(6.28,0)node[right]{$y$} --node[right]{$c$} ++(0,3)node[right]{$x$} --cycle;
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案2

您可以使用3d工具。请注意,一般来说,垂直线段不是从点(0,-r,0到的路径(0,r,0)。我在这段代码中用红色画出了这条线段。

\documentclass[12pt,border= 3.14 mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,3dtools}% https://github.com/marmotghost/tikz-3dtools
\begin{document}
\begin{tikzpicture}[3d/install view={phi=70,psi=0,theta=65},line join = round, line cap = round,declare function={h=5;r=3;}]
\path 
(0,0,0) coordinate (O)
(0,0,h) coordinate (O'); 
\pgfmathsetmacro{\myscreenex}{TDunit("(0,0,1)x(nscreenx,nscreeny,nscreenz)")}
\path[3d coordinate={(L)=(O)-r*(\myscreenex)},3d coordinate={(R)=(L) + (O')}];
\draw[3d/visible] (O') circle[radius = r] (O) circle[radius = r];       
\draw[3d/visible] (R) node[left]{$\alpha,x$} --node[left]{$c$} (L)node[left]{$f(x)\equiv y$};
\draw[red] (0,-r,0) -- (0,-r,h);
    \end{tikzpicture}
\end{document}  

在此处输入图片描述

相关内容