正如标题所写,我想在 YZ 平面上画一个圆,目前我写的是静态坐标,但如果可以让 tikz 计算透视,那就更好了。提前谢谢您:)
这是我的(因此可能没用)代码+png: - 我想,我必须使用\usepackage{tikz-3dplot}
,但不知道该怎么做..
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
%3D-Koordinatensystem:
\draw[->, >=latex] (-0.5,0,0) -- (7,0,0) node[below]{};
\draw[->, >=latex] (0,-0.5,0) -- (0,3,0) node[left]{};
\draw[->, >=latex] (0,0,-0.5) -- (0,0,5) node[left]{};
\coordinate (0) at (-1.5,1);
\coordinate (1) at (-2,-0.62);
\coordinate (2) at (-1,-0.62);
\coordinate (3) at (0,-0.62);
\coordinate (4) at (1,-0.62);
\coordinate (5) at (2,-0.62);
\coordinate (6) at (3,-0.62);
\coordinate (7) at (4,-0.62);
\coordinate (8) at (5,-0.62);
\coordinate (9) at (6,-0.62);
\coordinate (10) at (7,-0.62);
\coordinate (10) at (8,-0.62);
\coordinate (10) at (9,-0.62);
\draw[thick, dashed] (0) circle[x={(1cm,1.4cm)},y={(1cm,-1cm)},x radius=1, y radius=0.8] node [above=14mm, left=4mm] {$(t_o,x_o)$} ;
\draw[thick] (0) circle[x={(1cm,1.4cm)},y={(1cm,-1cm)},x radius=0.4, y radius=0.3];
\filldraw (0) circle (0.25mm) node [below=1.5mm, right=0.5mm] {$\delta$};
\draw (0) -- (-1.05,1) node [above=10mm, left=1mm] {$\varepsilon$};
\draw (0) -- (-1,2.62);
\filldraw (-2,-0.62)circle (0.2mm);
\draw [line width=0.8] (1) to [out=350,in=130] (2);
\draw [line width=0.8] (2) to [out=320,in=140] (3);
\draw [line width=0.8] (3) to [out=320,in=140] (4);
\draw [line width=0.8] (4) to [out=320,in=140] (5);
\draw [line width=0.8] (5) to [out=320,in=140] (6);
\draw [line width=0.8] (6) to [out=320,in=140] (7);
\draw [line width=0.8] (7) to [out=320,in=140] (8);
\draw [line width=0.8] (8) to [out=320,in=140] (9);
\end{tikzpicture}
\end{document}
答案1
也许是这样的:
这是使用圆的参数图完成的,使用tikz 的三维坐标:
\draw[smooth] plot (0,{2.2+0.6*cos(\x r)},{2.2+0.6*sin(\x r)});
完整代码如下:
\documentclass[tikz, border=2mm]{standalone}
\begin{document}
\begin{tikzpicture}
%3D-Koordinatensystem:
\draw[->, >=latex] (-0.5,0,0) -- (7,0,0) node[below]{};
\draw[->, >=latex] (0,-0.5,0) -- (0,3,0) node[left]{};
\draw[->, >=latex] (0,0,-0.5) -- (0,0,5) node[left]{};
\coordinate (0) at (-1.5,1);
\coordinate (1) at (-2,-0.62);
\coordinate (2) at (-1,-0.62);
\coordinate (3) at (0,-0.62);
\coordinate (4) at (1,-0.62);
\coordinate (5) at (2,-0.62);
\coordinate (6) at (3,-0.62);
\coordinate (7) at (4,-0.62);
\coordinate (8) at (5,-0.62);
\coordinate (9) at (6,-0.62);
\coordinate (10) at (7,-0.62);
\coordinate (10) at (8,-0.62);
\coordinate (10) at (9,-0.62);
\draw[smooth] plot (0,{2.2+0.6*cos(\x r)},{2.2+0.6*sin(\x r)});
\draw[smooth, dashed] plot (0,{2.2+1.4*cos(\x r)},{2.2+1.4*sin(\x r)});
\draw(0,2.2,2.2)--++(0.55,0.75,0)node[above right]{$\varepsilon$};
\draw(0,2.2,2.2)--node[below]{$\delta$} ++(0.5,0,0);
\filldraw (0, 2.2, 2.2) circle (0.2mm);
\draw [line width=0.8] (1) to [out=350,in=130] (2);
\draw [line width=0.8] (2) to [out=320,in=140] (3);
\draw [line width=0.8] (3) to [out=320,in=140] (4);
\draw [line width=0.8] (4) to [out=320,in=140] (5);
\draw [line width=0.8] (5) to [out=320,in=140] (6);
\draw [line width=0.8] (6) to [out=320,in=140] (7);
\draw [line width=0.8] (7) to [out=320,in=140] (8);
\draw [line width=0.8] (8) to [out=320,in=140] (9);
\end{tikzpicture}
\end{document}
我把圆圈的位置安排得有些随机,特别是没有把它们与你的“波浪”对齐,但这些细节很容易调整。