我想从一个圆弧到另一个圆弧画一条线,但我不知道是否可以在圆弧上标记一个点并从该点开始绘制。是否可以绘制如下图所示的线条?
\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 等)。因此,这甚至可以适用于任意路径。