给定圆上的点与圆相切

给定圆上的点与圆相切

我能够在圆上的给定点处绘制圆的切线,并且我使用两种方法(使用 calc 库和使用 /tikz/turn 功能)来实现。但我必须承认,我并不完全理解 /tikz/turn,也不知道使用 calc 或 turn(或其他方法)是否有优势。

我目前的 MWE 如下。我的问题是:

1) 我(认为)我明白了如何使用“转动”绘制蓝线(从圆心到圆上的点画一条线,然后相对于传入方向顺时针旋转 90 度,然后继续 2 厘米)。但红线让我感到困惑。如果我只是从圆上的一个点(在本例中为 P)开始,TikZ 如何知道相对于哪个方向“转动”?不知何故,它明白 +/- 90 是与圆相切的......是否有一条从 (0,0) 到点 P 的线(以定义角度=0 方向)?

2) 红色曲线和黑色曲线(使用 calc 库制作)都满足了我的需求。其中一个曲线比另一个曲线有什么优势吗?

在此处输入图片描述

制成品:

\documentclass[tikz]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
 [
   scale=1,
   point/.style = {draw, circle, fill=black, inner sep=0.5pt},
 ]

\def\rad{2cm}
\node (C) at (0,0) [point]{};
\draw (C) circle (\rad);
\node (P)  at +(160:\rad)  [point]{};

% Using the calc library
\draw (P) -- ($(P)!2!-90:(C)$);
\draw (P) -- ($(P)!2!90:(C)$);

% using /tikz/turn
\draw[->,thick, color=blue] (C) -- (P) -- ([turn]-90:2cm);
% this is the command that I don't understand
\draw[->,thick, color=red] (P) -- ([turn]90:1cm);

\end{tikzpicture}
\end{document}

答案1

巫术效应源于这样一个事实:当省略坐标时,原点被假定为圆心,而这恰好是圆心。如果你改变起点,谜团很快就会消失。

我放置了更多箭头来显示路径从不同坐标开始时的效果。

\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\def\rad{2cm}

\begin{document}
\begin{tikzpicture}
 [point/.style = {draw, circle, fill=black, inner sep=0.5pt}]
\draw[style=help lines] (0,-1) grid[step=1cm] (5,4);

\node (C) at (2,1) [point,label=0:C]{};
\draw (C) circle (\rad);
\path (2,1) node[point,label={180:P}] (P)  at +(120:\rad){};

\foreach \x in {0,10,...,90}{
\draw[-latex,draw=blue,thick] (2,1) -- (P) -- ([turn]\x:2cm);
\draw[-latex,draw=red] (P) -- ([turn]\x:2cm);% You can add (0,0) -- as an initial point too
}
\end{tikzpicture}
\end{document}

在此处输入图片描述

如您所见,当从不同的点开始时,红色箭头会失去神奇的切向性,而是沿着入射角到达该点(尽管蓝色箭头仍然保留,因为给出了初始点)。当省略初始点时,它会假定路径从 (0,0) 开始,因此存在猜测切线的固有错觉。

相关内容