circuitikz: Adicionando ponta de seta ao toque de indutância variável?

circuitikz: Adicionando ponta de seta ao toque de indutância variável?

Gostaria que a derivação de um indutor variável tivesse uma ponta de seta, como para um resistor variável ou potenciômetro, conforme mostrado abaixo. Alguma sugestão sobre como adicionar isso? Eu tentei "->" com e sem "to[short,...". Eu tentei "-A". O que estou esquecendo?

\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[siunitx, RPvoltages]{circuitikz}
\begin{document}
\pagestyle{empty}

\begin{circuitikz}[american]
  \draw (0,0) to[L, name=L, mirror] ++(0,-2) coordinate(tap) -- ++(0,-1);
  \draw (tap) -- ++(1,0) coordinate(end) -- (L.midtap -| end) -- (L.midtap);
  \draw (0,-3) to[potentiometer, name=R] ++(0,-2) coordinate(tapR) -- ++(0,-1);
  \draw (tapR) -- ++(1,0) coordinate(endR) -- (R.wiper -| endR) -- (R.wiper);
\end{circuitikz}
\end{document}

Indutor variável (sem ponta de seta na torneira) e potenciômetro

Obrigado por qualquer ajuda e sugestões.

-Kevin

Responder1

Uma solução possível (rude) é:

\documentclass[margin=3mm]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikz}
\usetikzlibrary[arrows.meta]

\begin{document}

\begin{circuitikz}[american]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, name=L]  ++ (0,2);
\draw[Stealth-]   (L.center) --  ++ (1,0)   |-  (a)
            ;
\end{circuitikz}
\end{document}

insira a descrição da imagem aqui

Editar:
Em vez de usar coordenadas (L.center), que neste caso específico funciona bem, é mais correto usar (L.midtap), que funciona em qualquer formato para indutância (veja a resposta do @rmano):

\begin{circuitikz}[american]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, name=L]  ++ (0,2);
\draw[Stealth-]   (L.midtap) --  ++ (1,0)   |-  (a)
            ;
\end{circuitikz}

Responder2

Resposta de @Zarkoé a maneira correta de fazer isso. Eu sugeriria usar a midtapâncora e o uso criterioso de mirrorpara torná-la geral para outroseu-formas.

Observe que o uso de mirroré meio que uma coisa de “ajustar”, porque depende do formato e de quantos “loops” você tem na indutância...

\documentclass[margin=2.718mm]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikz}
\usetikzlibrary[arrows.meta]

\begin{document}

\begin{circuitikz}[]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, mirror,  name=L]  ++ (0,2);
\draw[Stealth-]   (L.midtap) --  ++ (1,0)   |-  (a);
\begin{scope}[american, xshift=3cm]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, name=L]  ++ (0,2);
\draw[Stealth-]   (L.midtap) --  ++ (1,0)   |-  (a);
\end{scope}
\begin{scope}[american, xshift=6cm, 
    circuitikz/inductors/coils=5]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, mirror, name=L]  ++ (0,2);
\draw[Stealth-]   (L.midtap) --  ++ (1,0)   |-  (a);
\end{scope}
\begin{scope}[european, xshift=9cm]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, mirror, name=L]  ++ (0,2);
\draw[Stealth-]   (L.midtap) --  ++ (1,0)   |-  (a);
\end{scope}
\end{circuitikz}

\end{document}

insira a descrição da imagem aqui

Se quiser a mesma seta "falsa" do resto de circuitikz(*), você pode:

\documentclass[margin=2.718mm]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikz}
\usetikzlibrary[arrows.meta]

\begin{document}

\begin{circuitikz}[]
\draw (0,0) to [short,-*]   ++ (0,1)  coordinate (a)
            to [L, mirror,  name=L]  ++ (0,2);
            \draw[]   (L.midtap) node[inputarrow, xscale=-1]{} 
            --  ++ (1,0)   |-  (a);
\end{circuitikz}

\end{document}

insira a descrição da imagem aqui


(*) Para mais detalhes sobre setas em circuitikz, vejahttps://tex.stackexchange.com/a/549354/38080

informação relacionada