\draw 命令中的相对坐标问题

\draw 命令中的相对坐标问题

以下代码有问题。我尝试使用circuitikz。但是,电流源应在 x 方向上移动 1 个单位,以便它与变压器的第一个电感器平行放置。我认为它应该适用于这种相对坐标定位,但似乎存在问题。

\begin{figure}[h!]
    \begin{center}
        \begin{circuitikz}
            \draw (0,0)
            node[transformer core, yscale=1.25] (T) {};
            \draw (T.A2)+(-1,0)
            to [sI] (T.A1)+(-1,0);              
            \end{circuitikz}
        \caption{My first circuit.}
    \end{center}
\end{figure}

答案1

你应该使用类似

\draw (T.A2) -- +(-1,0)
            to [sI] ($(T.A1)+(-1,0)$) -- (T.A1);

从 开始T.A2,将笔向左移动 1 个单位,然后将电流源绘制到 点($(T.A1)+(-1,0)$)(这需要calc库),然后连接到T.A1

完整代码:

\documentclass{article}
\usepackage{circuitikz}
\usetikzlibrary{calc}
\begin{document}
  \begin{circuitikz}
            \draw (0,0)
            node[transformer core, yscale=1.25] (T) {};
            \draw (T.A2) -- +(-1,0)
            to [sI] ($(T.A1)+(-1,0)$) -- (T.A1);
  \end{circuitikz}
\end{document}

在此处输入图片描述

答案2

PSTricks 解决方案使用pst-circ包裹:

\documentclass{article}

\usepackage{pst-circ}

\begin{document}

\begin{pspicture}(4.5,4)
  \pnodes(0.5,0){A}(0.5,4){B}(2.5,4){C}(4.5,4){D}(4.5,0){E}(2.5,0){F}
  \transformer(C)(F)(D)(E){}
  \wire(A)(F)
  \vac(A)(B){}
  \wire(B)(C)
\end{pspicture}

\end{document}

输出

相关内容