如何在 TikZ 中绘制此方案?

如何在 TikZ 中绘制此方案?

我需要使用 TikZ 绘制这张图片:

在此处输入图片描述

主椭圆可以用以下方法绘制:

\begin{tikzpicture}
\draw (0,0) ellipse [x radius = 3cm, y radius = 1 cm];
\end{tikzpicture}

然后,为了制作椭圆的虚线部分,\draw (x1,y1) arc [start angle=-120, end angle=-240, x radius=3cm, y radius=1 cm]我需要知道起点(x1,y1)。好的,它可以通过椭圆方程计算出来,但弧线可能可以用不同的方式设置?对我来说,主要的困难是如何编码那个实心向上倾斜的弧线?

提前谢谢了。

答案1

不用弄清楚(x,y)是什么,从同一点开始画两个单独的弧。倾斜的弧可以用语法画出来controls

开头的原因\useasboundingbox是用于倾斜弧的控制点(可能 TikZ 用于绘制两个主弧的一些控制点)增加了边界框的大小,因此会产生大量空白。如果此图中还有其他内容,则可能需要或不需要将其包括在内,或者可能需要调整坐标。

在此处输入图片描述

\documentclass[border=4mm]{standalone} 
\usepackage{tikz}
\begin{document} 
\begin{tikzpicture}
\useasboundingbox (-1.2,-1.8) rectangle (5,0.3); % coordinates found by trial and error
\draw (0,0) arc[start angle=130,delta angle=-260,x radius=3cm, y radius=1cm];
\draw [dashed] (0,0) arc[start angle=130,delta angle=100,x radius=3cm, y radius=1cm] coordinate (a);

\draw (0,0) .. controls +(-2,1) and +(-0.5,0.5) .. (a);
\end{tikzpicture}
\end{document}

相关内容