TikZ 箭头从节点以一定角度发出,持续一定距离

TikZ 箭头从节点以一定角度发出,持续一定距离

如何在 TikZ 中从圆形节点绘制一条长度l为 且角度为 的线?aN

答案1

您可以使用 访问节点周围的点,<node name.angle>例如,a.50将为您提供节点边界上a与 50 度成一定角度的点。此外,您可以绘制一条长度为 cm 的线,该线与 度l成一定角度。t(t:lcm)

\documentclass[tikz,margin=10pt]{standalone}
\begin{document}
  \begin{tikzpicture}
      \node[draw,circle]  at (0,0) (a) {N};
      %% draw a line of 2cm length from the border of node a at an angle 50. The line is having a slope of tan(50).
      \draw (a.50) -- (50:2cm);
  \end{tikzpicture}
\end{document}

在此处输入图片描述

画很多线条,化一些妆 ;-)

\documentclass[tikz,margin=10pt]{standalone}
\begin{document}
  \begin{tikzpicture}
      \node[circle]  at (0,0) (a) {N};
      \foreach \angle in {5,10,...,360}{%
      \draw (a.\angle) -- (\angle:2cm);
      }
  \end{tikzpicture}
\end{document}

在此处输入图片描述

还有一些动画:

\documentclass[tikz,margin=10pt]{standalone}
\begin{document}
  \foreach \angle in {1,2,...,360}{%
    \begin{tikzpicture}
      \path (-2,-2.3) rectangle (2,2.3);  %% pad some bounding box
      \node[circle]  at (0,0) (a) {N};      
      \draw (a.-\angle) -- (-\angle:2cm);
    \end{tikzpicture}
  }
\end{document}

在此处输入图片描述

答案2

您还可以使用pins

\documentclass{standalone}

\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \node [circle,draw,pin={[pin distance=2cm,pin edge={blue,thick}]330:$P_1$},
                     pin=60:$P_2$] at (0,0) {N};
\end{tikzpicture}
\end{document}

PinP1代表默认行为:一定长度的灰色线条,而 pinP2是自定义的。长度用 来设置pin distance,而pin edge可以让你定义颜色、粗细,可以让你添加箭头甚至装饰路径(例如蛇形路径)。在这两种情况下,冒号前面:都是定义线条斜率的角度。

在此处输入图片描述

相关内容