CircuitTiKz 线不直

CircuitTiKz 线不直

我使用以下代码制作了示意图:

\begin{circuitikz}
    \draw
        (0,0) node[op amp, scale=2] (opamp) {}
        (opamp.+) -- (-2.38,-3) node[ground] {}
        (opamp.+) node[left, above] {$u_+$}
        (opamp.-) node[left, below] {$u_-$}
        (opamp.out) to[short, -*](4,0) node[right] {$u_{izl}$}
        (opamp.-) to[R, label=$R_1$, i<=$i_1$, *-*] (-8, 1) node[left] {$u_{ul}$}
        (opamp.-) to[short] (-2.4,4) {}
        (-2.4, 4) to[R, label=$R_2$, i>=$i_2$] (3,4) {}
        (3,4) to[short, -*] (3,0)
        (opamp.up) to[short, -*] (-0.17,2.5) {}
        (opamp.down) to[short, -*] (-0.17,-2.5) {}
        (4,0) to[] (4,0) {}
        ;
\end{circuitikz}

但是上面的一些线条并不直,例如这些:

在此处输入图片描述

我尝试更改坐标,但无法正确更改。有没有更简单的方法?

答案1

您可以为将形成交叉点的节点分配节点名称,然后使用语法to[short] (u1|-u2)。这可能会产生非常精确的结果,但由于结构化的方式circuitikz,我不得不对另一条边进行一些手动调整。

无论如何,这条线现在都是直的。

输出

图1

代码

\documentclass[tikz, margin=10pt]{standalone}
\usepackage[europeanresistors]{circuitikz}

\begin{document}
\begin{circuitikz}
    \draw
        (0,0) node[op amp, scale=2] (opamp) {}
        (opamp.+) -- (-2.38,-3) node[ground] {}
        (opamp.+) node[left, above] {$u_+$}
        (opamp.-) node[left, below] (u1) {$u_-$}
        (opamp.out) to[short, -*](4,0) node[right] {$u_{izl}$}
        (opamp.-) to[R, label=$R_1$, i<=$i_1$, *-*] (-8, 1) node[left] {$u_{ul}$}
        (-2.38,4) to[R, label=$R_2$, i>=$i_2$] (3,4) node (u2) {}
        (opamp.-) to[short] (u1|-u2) {}
        (3,4) to[short, -*] (3,0)
        (opamp.up) to[short, -*] (-0.17,2.5) {}
        (opamp.down) to[short, -*] (-0.17,-2.5) {}
        (4,0) to[] (4,0) {}
        ;
\end{circuitikz}
\end{document}

相关内容