我想知道是否有办法反转箭头尖端但保持线的长度不变?我查看了arrow.meta
文档,但找不到类似的东西rotate
...
平均能量损失
\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}
\draw[orange, very thin] (0.93,-0.5) -- (0.93,1.5);
\draw[orange, very thin] (1,-0.5) -- (1,1.5);
% \draw[orange, very thin] (1.07,-0.5) -- (1.07,1.5);
\draw[-{>[length=0.07cm]}] (0,0) -- (1,0);
\draw[-{<[length=0.07cm]}] (0,0.5) -- (1,0.5);
% \draw[-{>[rotate=180]}] (0,1) -- (1,1);
\draw[-{<[length=0.07cm]}] (0,1) -- (1.07,1);
\end{tikzpicture}
\end{document}
在我的示例中,我定义了尖端的长度并将该长度添加到总长度中,但也许有更简单的方法可以做到这一点?
答案1
除了 Sandy G 的精彩评论之外,我建议tikzset
为此创建一个,以便您甚至可以使用预定义节点来使用它,而不必每次都进行任何计算。
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{arrows.meta}
\tikzset{%
revarrow/.style={-{<[length=#1]},shorten >=-#1},
circ/.style={circle,inner sep=1pt,fill=black,label={#1}}}
\begin{document}
\begin{tikzpicture}
\path (0,0) node[circ=A](A){} --++ (3,0) node[circ=B](B){};
\draw[orange,revarrow=.5cm,thick] (A.center)--(B.center);
\end{tikzpicture}
\end{document}