Crie uma seta de loop no TikZ

Crie uma seta de loop no TikZ

Estou tentando criar uma seta que sai do final de uma palavra e depois circula até o topo da mesma palavra. O objetivo é ilustrar que a saída de “Operações” também se torna a entrada de “Operações”.

Minha tentativa inicial foi simplesmente usar edge[out = -90, in = 90], mas isso não faz a seta girar em torno da palavra.

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \node at (0,0) (Operations) {Operations};
    \draw [->] (Operations) edge[out = -90, in = 90] (Operations);
\end{tikzpicture}

\end{document}

insira a descrição da imagem aqui


EDITAR

No meu exemplo real, tenho uma seta apontando para "Operações" de um nó acima e uma seta apontando para baixo de "Operações" para um nó abaixo. Idealmente, o início e o fim da seta do loop devem estar alinhados com essas duas setas existentes.

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \node at (0,3) (Input) {Input};
    \node at (0,1.5) (Operations) {Operations};
    \node at (0,0) (Output) {Output};
    \draw [->] (Input) -- (Operations);
    \draw [->] (Operations.center) arc (-180:180:1);
    \draw [->] (Operations) -- (Output);
\end{tikzpicture}

\end{document}

insira a descrição da imagem aqui

Responder1

Aqui está uma solução muito interessante, adicionando um terceiro nó \node at (1,0) (here) {};e modificando o tamanho da seta em looseness.

\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
    \node at (0,0) (Operations) {Operations};
    \node at (1,0) (here) {};
    \draw [->] (Operations) to[out=-80, in=-90,looseness=2] (here)    to[out=90,in=80,looseness=2] (Operations);
\end{tikzpicture}

\end{document}

insira a descrição da imagem aqui

Responder2

Como eu disse no comentário, com número preciso

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \node at (0,0) (Operations) {Operations};
    \draw [->] (Operations.south)arc(-160:160:1);
\end{tikzpicture}

\end{document}



Outra abordagem

\draw[->,shorten <=5pt,shorten >=5pt](Operations.center)arc(-180:180:1);



Terceira abordagem

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \node at (0,3) (Input) {Input};
    \node at (0,1.5) (Operations) {Operations};
    \node at (0,0) (Output) {Output};
    \draw [->] (Input) -- (Operations);
    \draw [->] (Operations) -- (Output);
    \draw[->](Operations.south)arc(-180:0:1)coordinate(X)
             (Operations.north)+(2,0)--(X)
             (Operations.north)+(2,0)arc(0:180:1);
\end{tikzpicture}

\end{document}

informação relacionada