需要帮助创建特定的 Tikz 图片

需要帮助创建特定的 Tikz 图片

尝试使用 Tikz 将以下绘图重新创建为物理图:

我真的只是需要帮助弄清楚如何完成这两个标记的部分:

i) 如何制作这个带有箭头的闭合环,其中一个箭头穿过环的中心。不知道如何获得这种 3D 透视效果。

ii) 这个比较简单。只需要知道如何在杆周围画出这个部分椭圆,箭头在尖端

答案1

从问题中的图像来看,要理解它们应该是什么样子并不容易。如果您不打算探索 Ti,我建议使用图形编辑器z 进一步然后将其保存为 pdf。例如,一个非常好的免费开源图形编辑器可以是 Inkscape 或 GIMP。

但是这里有可能的解决方案。对于第一个图:

\documentclass[tikz, border = 1cm]{standalone}
\usetikzlibrary{positioning, arrows.meta}
\definecolor{custom}{RGB}{234,234,230}

% square
\def\a{5}
\def\t{0.6}
% arrows
\def\l{3}
% axis
\def\axis{7}

\begin{document}
\begin{tikzpicture}
[x={(1cm,0cm)}, y={(0cm,1cm)}, z={(-0.5cm,-0.5cm)}, even odd rule]
    % axis below
    \draw[line width = 3pt, fill] (0,-\axis,0) circle (2pt) -- (0,0,0);
    % circuit
    \filldraw[fill=custom, line width = 2pt, rounded corners]
    (\a+\t,0,-\a-\t) -- (\a+\t,0,\a+\t) -- (-\a-\t,0,\a+\t) -- (-\a-\t,0,-\a-\t) -- cycle
    (\a-\t,0,-\a+\t) -- (\a-\t,0,\a-\t) -- (-\a+\t,0,\a-\t) -- (-\a+\t,0,-\a+\t) -- cycle;
    % arrows
    \draw[-{Latex[round]},very thick] (\l,0,-\a) -- (-\l,0,-\a);
    \draw[-{Latex[round]},very thick] (-\l,0,+\a) -- (\l,0,+\a);
    \draw[-{Latex[round]},very thick] (\a,0,\l) -- (\a,0,-\l);
    \draw[-{Latex[round]},very thick] (-\a,0,-\l) -- (-\a,0,+\l);
    % axis above
    \draw[-{Stealth[round, scale = 2]}, line width = 3pt]
    (0,0,0) -- (0,\axis,0) node [above = 0.2] {\Huge $y$};
    % annotation
    \path (\a+2*\t,0,0) node [right = 0.2] {\Huge $i)$};
\end{tikzpicture}
\end{document}

在这里我用\def(在这种情况下可能可以避免使用 TeX 原始命令)来确定一些长度。 第一张图片

对于第二张图:

\documentclass[tikz, border = 1cm]{standalone}
\usetikzlibrary{positioning, arrows.meta}
\definecolor{custom}{RGB}{234,234,230}

\begin{document}
\begin{tikzpicture}
[x={(1cm,0cm)}, y={(0cm,1cm)}, z={(0.2cm,0.05cm)}]
    \draw[domain = 0:pi/2,smooth,thick]
    plot(0,{2*sin(\x r)},{2*cos(\x r)});
    \filldraw[thick, fill = custom]
    (-2,0.5,0) -- (3,0.5,0) -- (3,-0.5,0) -- (-2,-0.5,0);
    \draw[domain = pi/2:2*pi-pi/5,smooth,thick,-{Latex[round,scale=1.2]}]
    plot(0,{2*sin(\x r)},{2*cos(\x r)});
    \draw[thick,-{Latex[round,scale=1.2]}]
    (-1,0,0) -- (2,0,0);
    \path (0,-2,0) node [right = 0.5] {\Large $ii)$};
\end{tikzpicture}
\end{document}

第二张图片

相关内容