
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}
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}
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 mirror
para 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}
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}
(*) Para mais detalhes sobre setas em circuitikz
, vejahttps://tex.stackexchange.com/a/549354/38080