tikz 中的箭头角度

tikz 中的箭头角度

使用tikz,我怎样才能使此示例中的箭头的角度“更好”?

\draw [arrows=-{>[scale=2, length=3, width=3.5]},line width=0.7mm] (0,0) arc (90:-20:0.4);

在此处输入图片描述

答案1

默认情况下,箭头沿直线路径移动。此处它与 -110° 角段相切。请参阅下文解释。

加载bending库时,该flex选项默认启用。我对flexflex'bend选项进行了几次测试。只有最后两个选项给出了合适的视觉效果。该bend选项使箭头变形,而该flex选项不会使箭头变形,它保持刚性。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{bending}
\begin{document}

tangent  \tikz\draw [densely dotted](0,0)--(-110:1)([shift={(.58,0)}]0,0)--([shift={(.58,0)}]-110:1)[arrows=-{>[scale=2, length=3, width=3.5]},thin] (0,0) arc (90:-20:0.4);
\bigskip

flex=0 \tikz\draw [arrows=-{>[scale=2, length=3, width=3.5,flex=0]},line width=0.7mm] (0,0) arc (90:-20:0.4);
\bigskip

flex=1 \tikz\draw [arrows=-{>[scale=2, length=3, width=3.5,flex=1]},line width=0.7mm] (0,0) arc (90:-20:0.4);
\bigskip

flex'=1 \tikz\draw [arrows=-{>[scale=2, length=3, width=3.5,flex'=1]},line width=0.7mm] (0,0) arc (90:-20:0.4);
\bigskip

flex'=.75 \tikz\draw [arrows=-{>[scale=2, length=3, width=3.5,flex'=.75]},line width=0.7mm] (0,0) arc (90:-20:0.4);
\bigskip

bend \tikz\draw [arrows=-{>[scale=2, length=3, width=3.5,bend]},line width=0.7mm] (0,0) arc (90:-20:0.4);

\end{document}

输出:

箭头

由于箭头的末端为 -20°,因此该箭头的切线在角度半径为 -20° 处也是法线。该法线与横坐标轴的夹角为 -110°。

正切一法线

\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,bending,patterns,angles,calc}
\usepackage{siunitx}
\begin{document}

\begin{tikzpicture}
\coordinate (A) at (-20:3);
\coordinate (B) at (0:3);
\coordinate(O) at (0,0);
\coordinate (x) at ($(A)!2.5cm!90:(O)$);
\coordinate (y) at ($(A)!3cm!-90:(O)$);
\draw[densely dotted] (0,0) circle (3cm);
\draw[blue] (0,0) --(0:4cm)coordinate(x');
\draw[blue] (0,0) --(-20:4cm);
\draw[very thick,blue] (x)node[below,text=black]{tangent to the arrow}--(y)node[above,text=black]{\parbox{2cm}{normal at the angle radius $\ang{-20}$}};
\pic  [pic text=$\ang{20}$,blue,fill=cyan!30,draw, angle eccentricity=1.5,angle radius=1cm]{angle=A--O--B};
\coordinate (I) at (intersection of x--y and O--B);
\pic  [pic text=$\ang{70}$,draw,blue, angle eccentricity=1.7,angle radius=5mm]{angle=x'--I--y};
\pic  [pic text=$\ang{110}$,draw,blue, angle eccentricity=2,double,angle radius=3mm]{angle=x--I--x'};
\draw[fill=cyan!30] (A)--($(A)!3mm!(O)$)--($(A)!3mm!(O)!3mm!90:(O)$)--($(A)!3mm!(x)$)--cycle;
\draw [red,arrows=-{>[scale=2, length=3, width=3.5,flex=0]},line width=.6mm](0,3)arc (90:-20:3);
\end{tikzpicture}
\end{document}

相关内容