标记弧上的特定点

标记弧上的特定点

我想从一个圆弧到另一个圆弧画一条线,但我不知道是否可以在圆弧上标记一个点并从该点开始绘制。是否可以绘制如下图所示的线条?

在此处输入图片描述

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \draw[thick] (90:3cm) arc (90:0:3cm);
  \draw[thick] (90:3cm) arc (180:90:3cm);
\end{tikzpicture}

\end{document}

答案1

有很多可能性tikz

第一种方法

如果您想手动指定点,请参考以下示例。

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \draw[thick] (90:3cm) arc (90:0:3cm);
  \draw[thick] (90:3cm) arc (180:90:3cm);
  \coordinate (A) at (80:3cm);
  \path (90:3cm) arc (180:135:3cm) node [inner sep=0pt] (B) {};
  \draw [blue,thick] (A) -- (B);
  \foreach \X in {A,B}
    \fill [blue] (\X) circle (2pt);

  \coordinate (C) at (33:3cm);
  \path (90:3cm) arc (180:123:3cm) node [inner sep=0pt] (D) {};
  \draw [red,thick] (C) -- (D);
  \foreach \Y in {C,D}
        \fill [red] (\Y) circle (2pt);
\end{tikzpicture}

\end{document}

在此处输入图片描述

decorations.markings图书馆

这是一个使用decorations.markings库的解决方案。

%http://tex.stackexchange.com/questions/88053/marking-a-specific-point-on-an-arc/88060#88060
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.markings}

\begin{document}

\begin{tikzpicture}[
every node/.style={circle,inner sep=1.5pt,outer sep=0pt},
decoration={
markings,% switch on markings
mark=at position 1cm with {\node (A) [fill=blue] {};},
mark=at position 3cm with {\node (B) [fill=red] {};},
mark=at position 0.7 with {\node (C) [fill=blue] {};},
mark=at position 0.8 with {\node (D) [fill=red] {};}
}
]

\draw [thick,postaction={decorate}] (90:3cm) arc (90:0:3cm)(90:3cm) arc (180:90:3cm);
\draw [blue,thick] (A) -- (C);
\draw [red,thick] (B) -- (D);
\end{tikzpicture}
\end{document}

在此处输入图片描述

第二种方法的优点是,您可以指定路径的第一个坐标/节点和最后一个坐标/节点之间的相对点位置(0.1、0.23 等)。因此,这甚至可以适用于任意路径。

相关内容