размещение узла относительное позиционирование

размещение узла относительное позиционирование

Я пытаюсь нарисовать схему с усилением, которое имеет \times 2 внутри. Описание размещает текст намного выше элемента. Я пытался разместить узел точно там, где находится усилитель, но он, кажется, находится в другом месте, это из-за относительного позиционирования? Я пытаюсь заставить "test" отображаться внутри усилителя.

\documentclass[border=10pt]{standalone}

\usepackage[pdftex]{graphicx}           %% Grafikeinbindung
\usepackage{circuitikz}


\begin{document}
        \begin{circuitikz} [scale=2] 
            % switches
            %S1
            \path(0,0) -- (2,0) node[midway, nigfete, bodydiode, rotate=90, xscale=-1](s1){} ;
            \draw (s1.G) node[anchor=east] {$S_1$};
            \draw (0,0) to (s1.D) (s1.S) to (2,0);

            %S3
            \path(2,-2) -- (4,-2) node[midway, nigfete, bodydiode,rotate=90, xscale=-1](s3){};
            \draw (s3.G) node[anchor=east] {$S_3$};         
            \draw[color=red] (s3.G |- 0,-0.5) to (s3.G |- 0, 0) -- ++ (s1.G -| 0,0) to [amp, l_=$\times 2$] ++(-1,0) node[midway]{test}  to [nos](s1.G) ;

        \end{circuitikz} 
\end{document}

введите описание изображения здесь

решение1

Один из способов — дать узлу имя и разместить метку позже.

введите описание изображения здесь

\documentclass[border=10pt]{standalone}
\usepackage{circuitikz}
\begin{document}
        \begin{circuitikz} [scale=2] 
            \draw[color=red] (0,0) to [amp,name=opamp] ++(2,0);
        \node[red,anchor=west] at (opamp.west) {$\times 2$};
        \end{circuitikz} 
\end{document}

решение2

В вашем оде метка «x2» находится так далеко, потому что вы, вероятно, используете версию circuitikzдо того, как было введено исправление для меток в масштабируемых средах (то есть до версии 0.9.0).

Чтобы поместить метку «test» в усилитель, можно использовать клавишу t=, но для этого придется отменить переворот текста (усилитель нарисован слева направо, поэтому он повернут на 180 градусов):

\documentclass[border=10pt]{standalone}
\usepackage[RPvoltages]{circuitikz}
\begin{document}
        \begin{circuitikz} [scale=2]
            % switches
            %S1
            \path(0,0) -- (2,0) node[midway, nigfete, bodydiode, rotate=90, xscale=-1](s1){} ;
            \draw (s1.G) node[anchor=east] {$S_1$};
            \draw (0,0) to (s1.D) (s1.S) to (2,0);

            %S3
            \path(2,-2) -- (4,-2) node[midway, nigfete, bodydiode,rotate=90, xscale=-1](s3){};
            \draw (s3.G) node[anchor=east] {$S_3$};
            \draw[color=red] (s3.G |- 0,-0.5) to (s3.G |- 0, 0) -- ++ (s1.G -| 0,0) 
                to [amp, l_=$\times 2$, t={\scalebox{-1}{test}}, ] ++(-1,0)
                to [nos](s1.G);
        \end{circuitikz}
\end{document}

В текущей версии (0.9.3) это даёт:

введите описание изображения здесь

Связанный контент