在我之前关于箭头的问题中:
我现在正尝试将箭头的末端绝对地定位。
基本上,我希望箭头进入节点上的某个特定点(例如底部),但我想指定进入(或出去)的角度。
如果我只是指定[out, in]
它会改变箭头的位置,效果不好。我需要某种方法来修复箭头的端点,这样才[out, in]
不会影响位置。
要理解这一点。假设箭头的尖端固定在节点上的某个点(底部、角落或边缘),但假设它“进入”节点的角度是错误的(因为它是弯曲的箭头,就像我之前的问题一样)或者你只是想改变它。使用[out, in]
它会改变位置而不仅仅是角度。
\draw[-stealth,shorten <=0.2cm,shorten >=0.2cm,thick,red](\source)to[out=180, in=60](\destination);
如果您不明白该问题,请将链接中的代码行更改为上面。(只需将 bend right 替换为 out=180, in=60)
在这种情况下,您会注意到所有箭头(和末端)都指向同一方向,但在每种情况下相对于节点的位置都不同。
在上图中,您可以看到所有箭头都指向同一方向,但与节点接触的位置不同。顶部箭头指向北方,左上角箭头指向西北,等等...例如,我希望它们都指向北方,或者都指向节点的底部(假设每个节点的顶部都指向圆心的反方向)。
答案1
我不确定如何回答这个问题!您可以尝试在节点上指定附着点,但无论如何,如果您使用缩短选项,则点不能相同
\documentclass[12pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[draw](source) at (0,0){};
\node[draw](destination) at (2,5){};
\draw[-stealth,shorten <=0.2cm,shorten >=0.2cm,thick,red](source.180)to[out=180, in=30](destination.60);
\draw[-stealth,shorten <=0.2cm,shorten >=0.2cm,thick,blue](source.180)to[out=180, in=60](destination.60);
\end{tikzpicture}
\begin{tikzpicture}
\node[draw](source) at (0,0){};
\node[draw](destination) at (2,5){};
\draw[-stealth,shorten <=0.2cm,thick,red](source.180)to[out=180, in=30](destination.60);
\draw[-stealth,shorten <=0.2cm,thick,blue](source.180)to[out=180, in=60](destination.60);
\end{tikzpicture}
\end{document}