我尝试使用 绘制一个椭圆的一部分\pgfpatharcto
。但是,当我尝试与原始完整椭圆进行比较时,发现存在细微差异。我附上了代码以及结果。
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\draw (2.5cm,0) ellipse (3.5cm and 3.8436cm);
\pgfsetstrokecolor{red}
\pgfmoveto{\pgfpoint{2.841cm}{3.8284cm}}
\pgfpatharcto{3.5cm}{3.8436cm}{0}{0}{0}{\pgfpoint{2.841cm}{-3.8284cm}}\pgfusepath{stroke};
\end{tikzpicture}
\end{document}
答案1
也可以绘制两次椭圆,但第二次在裁剪范围内:
\documentclass[tikz, border=1cm]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\draw (2.5cm,0) ellipse (3.5cm and 3.8436cm);
\begin{scope}
\clip (2.5cm,0)--++(80:3.9) arc(80:-80:3.9)--cycle;
\draw[red] (2.5cm,0) ellipse (3.5cm and 3.8436cm);
\end{scope}
\end{tikzpicture}
\end{document}
答案2
你可能想尝试元帖子来执行此操作。它有一个有用的subpath
语法,可让您绘制已保存路径的片段。使用 进行编译lualatex
。
\RequirePackage{luatex85}
\documentclass[border=5mm]{standalone}
\usepackage{luamplib}
\begin{document}
\mplibtextextlabel{enable}
\begin{mplibcode}
beginfig(1);
path e;
e = fullcircle xscaled 3.5cm yscaled 3.8436cm;
draw e withpen pencircle scaled 2 withcolor .8 white;
draw subpath (-2,2) of e withcolor 2/3 red;
endfig;
\end{mplibcode}
\end{document}
Metapost 提供了沿着路径的“时间”概念。在fullcircle
路径上,有 8 个时间点,从 0 点开始,就像是“3 点钟方向”。
所以subpath (0,2) of c
是从 3 点到中午。您也可以使用分数:subpath (2.718, 3.1415) of c
。
正如我的例子所示,您可以使用负数来引用点 0“之前”的点。