
Na minha pergunta anterior sobre seta:
Conecte vértices de um polígono regular por setas curvas
Estou tentando agora posicionar a ponta da ponta da flecha de forma absoluta.
Basicamente, quero que a ponta da seta entre em algum ponto específico do nó (como a parte inferior), mas quero especificar o ângulo de entrada (ou saída).
Se eu apenas especificar, [out, in]
muda a posição da seta e não funciona bem. Preciso de alguma forma de fixar os pontos finais da seta para que [out, in]
não afetem a posição.
Para entender isso. Suponha que a ponta da ponta da seta esteja fixada em algum ponto de um nó (parte inferior, canto ou borda), mas suponha que o ângulo em que ela "entra" no nó esteja errado (por ser uma seta curva como minha pergunta anterior) ou você apenas deseja alterá-lo. Ao usá [out, in]
-lo mudará a posição e não apenas o ângulo.
\draw[-stealth,shorten <=0.2cm,shorten >=0.2cm,thick,red](\source)to[out=180, in=60](\destination);
Se você não entendeu a pergunta, altere a linha do código no link acima. (basta substituir dobrar para a direita por saída = 180, entrada = 60)
Neste caso, você notará que todas as pontas (e extremidades) das setas apontam na mesma direção, MAS em cada caso a posição relativa ao nó é diferente.
Na imagem acima você pode ver que todas as pontas de seta apontam na mesma direção, mas tocam o nó em posições diferentes. O superior é o norte, o superior esquerdo é o noroeste, etc... Quero que todos estejam ao norte, por exemplo, ou todos estejam na parte inferior do nó (suponha que os pontos superiores de cada nó estejam longe do centro do círculo) .
Responder1
Não tenho certeza de responder à pergunta! você pode tentar especificar o ponto de fixação no nó, mas em qualquer caso, se estiver usando a opção encurtar os pontos não podem ser idênticos
\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}