有人能帮我写 tikz 代码来生成以下图像吗?我尝试过改编其他人制作的方法来生成圆柱体,但我想要的是带有轴的圆柱体,里面有一个较小的圆柱体。
这里写的代码可能是最有用的,同心圆柱与 tikz
基本气缸的代码如下TikZ 中的 3D 物体
我是 tikz 新手,发现编辑后,线条和尺寸不成比例,看起来不再合理。我也不明白如何在这些圆柱体中加入线条或如何为内部圆柱体着色。
答案1
确实不清楚您尝试了什么或问题是什么。因此,这几乎是替我做的,因此,我认为我不应该回答。
由于是自己动手,所以剩下的调整完全留给读者练习。对于微调和解释的要求,我不太会表示同情。
我完全为我自己回答“帮我做”。如果它碰巧有用,那就去做吧。如果没有用,那就去做吧。
你说你找到的最有用的代码是针对一个问题的答案甚至不使用 Ti钾Z。我不清楚您是否知道这一点......
\documentclass[border=10pt,tikz]{standalone}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}
\draw [fill=gray, fill opacity=.25]
(180:5mm) coordinate (a)
-- ++(0,-12.5mm) coordinate (b)
arc (180:360:5mm and 1.75mm) coordinate (d)
-- (a -| d) coordinate (c) arc (0:180:5mm and 1.75mm);
\draw [fill=gray, fill opacity=.25]
(0,0) coordinate (t) circle (5mm and 1.75mm);
\draw [densely dashed] (d) arc (0:180:5mm and 1.75mm);
\draw []
(180:7.5mm) coordinate (A)
-- ++(0,-12.5mm) coordinate (B) node [midway, right, inner sep=1pt] {$v$}
arc (180:360:7.5mm and 2.625mm) coordinate (D)
-- (A -| D) coordinate (C) arc (0:180:7.5mm and 2.625mm);
\draw []
(0,0) coordinate (T) circle (7.5mm and 2.625mm);
\draw [densely dashed] (D) arc (0:180:7.5mm and 2.625mm);
\draw [densely dashed ]
([yshift=-12.5mm]T) coordinate (B)
edge [-Latex] node [pos=1, right] {$y$} +(-30:7.5mm)
edge [-Latex] node [pos=1, left] {$x$} +(-150:7.5mm)
-- (T) node [midway, right, anchor=west, fill=white, inner sep=.5pt] {$w$} node [anchor=center, circle, draw, solid, inner sep=.5pt, fill=white] {} edge [solid, -Latex] node [right, pos=1] {$z$} ++(0,5mm) ;
\end{tikzpicture}
\end{document}