diff options
author | Karl Berry <karl@freefriends.org> | 2017-05-02 21:41:32 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-05-02 21:41:32 +0000 |
commit | 65318cd9d563ee78cb75275164d326a7d7eb97e3 (patch) | |
tree | f3c3949e1b2246f7b3fbd6a058fb661a12f8afd8 /Master | |
parent | 6e4c9895b91d909b7d6f65553dbb41186f54b8da (diff) |
circuitikz (2may17)
git-svn-id: svn://tug.org/texlive/trunk@44155 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/context/third/circuitikz/circuitikz-context.pdf | bin | 12578 -> 12647 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/generic/circuitikz/CHANGELOG.md | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/circuitikz/changelog.tex | 28 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf | bin | 279325 -> 283257 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex | 49 | ||||
-rw-r--r-- | Master/texmf-dist/tex/context/third/circuitikz/t-circuitikz.tex | 4 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex | 19 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex | 231 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex | 91 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex | 26 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex | 112 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty | 6 |
13 files changed, 336 insertions, 245 deletions
diff --git a/Master/texmf-dist/doc/context/third/circuitikz/circuitikz-context.pdf b/Master/texmf-dist/doc/context/third/circuitikz/circuitikz-context.pdf Binary files differindex 88579c8e6ae..419d0bcf4d7 100644 --- a/Master/texmf-dist/doc/context/third/circuitikz/circuitikz-context.pdf +++ b/Master/texmf-dist/doc/context/third/circuitikz/circuitikz-context.pdf diff --git a/Master/texmf-dist/doc/generic/circuitikz/CHANGELOG.md b/Master/texmf-dist/doc/generic/circuitikz/CHANGELOG.md index 9d41260fe85..fc68852703a 100644 --- a/Master/texmf-dist/doc/generic/circuitikz/CHANGELOG.md +++ b/Master/texmf-dist/doc/generic/circuitikz/CHANGELOG.md @@ -1,6 +1,16 @@ <!--- CircuiTikz - Changelog ---> The major changes among the different circuitikz versions are listed here. See <https://github.com/circuitikz/circuitikz/commits> for a full list of changes. +* Version 0.8.2 (2017-05-01) + - Fixes pgfkeys error using alternatively specified mixed colors(see pgfplots manual section "4.7.5 Colors") + - Added new switches "ncs" and "nos" + - Reworked arrows at spst-switches + - Fixed direction of controlled american voltage source + - "v<=" and "i<=" do not rotate the sources anymore(see them as "counting direction indication", this can be different then the shape orientation); Use the option "invert" to change the direction of the source/apperance of the shape. + - current label "i=" can now be used independent of the regular label "l=" at current sources + - rewrite of current arrow placement. Current arrows can now also be rotated on zero-length paths + - New DIN/EN compliant operational amplifier symbol "en amp" + * Version 0.8.1 (2017-03-25) - Fixed unwanted line through components if target coordinate is a name of a node - Fixed position of labels with subscript letters. diff --git a/Master/texmf-dist/doc/latex/circuitikz/changelog.tex b/Master/texmf-dist/doc/latex/circuitikz/changelog.tex index 2c9a5c4e43c..3d4abe682a1 100644 --- a/Master/texmf-dist/doc/latex/circuitikz/changelog.tex +++ b/Master/texmf-dist/doc/latex/circuitikz/changelog.tex @@ -6,6 +6,34 @@ full list of changes. \begin{itemize} \tightlist \item + Version 0.8.2 (2017-05-01) + + \begin{itemize} + \tightlist + \item + Fixes pgfkeys error using alternatively specified mixed colors(see + pgfplots manual section ``4.7.5 Colors'') + \item + Added new switches ``ncs'' and ``nos'' + \item + Reworked arrows at spst-switches + \item + Fixed direction of controlled american voltage source + \item + ``v\textless{}='' and ``i\textless{}='' do not rotate the sources + anymore(see them as ``counting direction indication'', this can be + different then the shape orientation); Use the option ``invert'' to + change the direction of the source/apperance of the shape. + \item + current label ``i='' can now be used independent of the regular + label ``l='' at current sources + \item + rewrite of current arrow placement. Current arrows can now also be + rotated on zero-length paths + \item + New DIN/EN compliant operational amplifier symbol ``en amp'' + \end{itemize} +\item Version 0.8.1 (2017-03-25) \begin{itemize} diff --git a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf Binary files differindex 95ac7bff3cd..fc660280f5f 100644 --- a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf +++ b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.pdf diff --git a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex index c31b6325074..5f71c56ddd3 100644 --- a/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex +++ b/Master/texmf-dist/doc/latex/circuitikz/circuitikzmanual.tex @@ -92,7 +92,7 @@ \maketitle \tableofcontents - +\cleardoublepage \section{Introduction} \subsection{About} \Circuitikz\ was initiated by Massimo Redaelli in 2007, who was working as a research assistant at the Polytechnic University of Milan, Italy, and needed a tool for creating exercises and exams. @@ -126,7 +126,7 @@ This documentation is somewhat scant. Hopefully the authors will find the leisur \subsection{Requirements} \begin{itemize} - \item \texttt{tikz}, version $\ge 2$; + \item \texttt{tikz}, version $\ge 3$; \item \texttt{xstring}, not older than 2009/03/13; \item \texttt{siunitx}, if using \texttt{siunitx} option. \end{itemize} @@ -147,6 +147,7 @@ The easiest way to contact the authors is via the official Github repository: \u Here, we will provide a list of incompabilitys between different version of circuitikz. We will try to hold this list short, but sometimes it is easier to break with old syntax than including a lot of switches and compatibility layers. You can check the used version at your local installation using the macro \verb!\pgfcircversion{}!. \begin{itemize} +\item Since v0.8.2: voltage and current label directions(v<= / i<=) do NOT change the orientation of the drawn source shape anymore. Use the "invert" option to rotate the shape of the source. Furthermore, from this version on, the current label(i=) at current sources can be used independent of the regular label(l=). \item Since v0.7?: The label behaviour at mirrored bipoles has changes, this fixes the voltage drawing, but perhaps you have to adjust your label positions. \item Since v0.5.1: The parts pfet,pigfete,pigfetebulk and pigfetd are now mirrored by default. Please adjust your yscale-option to correct this. \item Since v0.5: New voltage counting direction, here exists an option to use the old behaviour @@ -488,7 +489,6 @@ Similarly, if (default behaviour) \texttt{europeanvoltages} option is active (or \circuititembip{dcisource}{DC current source}{} \end{itemize} - \subsubsection{Mechanical Analogy} \begin{itemize} \circuititembip{damper}{Mechanical Damping}{} @@ -496,18 +496,13 @@ Similarly, if (default behaviour) \texttt{europeanvoltages} option is active (or \circuititembip{mass}{Mechanical Mass}{} \end{itemize} - -%\begin{framed} -%The options \texttt{europeancurrent} [resp. \texttt{europeanvoltage}] (the default) and \texttt{americancurrent} [resp. \texttt{americanvoltage}] define which sinusoidal current [resp. voltage] source is selected by default when the abbreviated styles \texttt{sinusoidal current source}, \texttt{csourcesin}, \texttt{cI} [resp. \texttt{sinusoidal voltage source}, \texttt{vsourcesin}, \texttt{cV}] are used. - -%One can also use the related styles \texttt{[european currents]} [resp. \texttt{[european voltages]}] and \texttt{[american currents]} [resp. \texttt{[american voltages]}]. -%\end{framed} - \subsubsection{Switch} \begin{itemize} \circuititembip{switch}{Switch}{spst} \circuititembip{closing switch}{Closing switch}{cspst} \circuititembip{opening switch}{Opening switch}{ospst} + \circuititembip{normal open switch}{Normally open switch}{nos} + \circuititembip{normal closed switch}{Normally closed switch}{ncs} \circuititembip{push button}{Push button}{} \end{itemize} @@ -772,6 +767,7 @@ If otherwise \texttt{europeanports} option is active (or the style \texttt{[euro \begin{itemize} \circuititem{op amp}{Operational amplifier}{} + \circuititem{en amp}{Operational amplifier compliant to DIN/EN 60617 standard}{} \circuititem{fd op amp}{Fully differential operational amplifier\footnote{Contributed by Kristofer M. Monisit.}}{} \circuititem{gm amp}{transconductance amplifier}{} \circuititem{plain amp}{Plain amplifier}{} @@ -986,9 +982,21 @@ Also \begin{LTXexample}[varwidth=true] \begin{circuitikz}[american] - \draw (0,0) to[V<=10V, i_=$i_1$] (2,0); + \draw (0,0) to[V=10V,invert, i_=$i_1$] (2,0); \end{circuitikz} -\end{LTXexample} +\end{LTXexample} + +\begin{LTXexample}[varwidth=true] +\begin{circuitikz}[american] + \draw (0,0) to[dcisource=1A, i_=$i_1$] (2,0); +\end{circuitikz} +\end{LTXexample} + +\begin{LTXexample}[varwidth=true] +\begin{circuitikz}[american] + \draw (0,0) to[dcisource=1A,invert, i_=$i_1$] (2,0); +\end{circuitikz} +\end{LTXexample} \subsection{Voltages} @@ -1040,7 +1048,18 @@ See introduction note at Currents (chapter \ref{currents}, page \pageref{current \begin{LTXexample}[varwidth=true] \begin{circuitikz} - \draw (0,0) to[I<=1A, v_=$i_1$] (2,0); + \draw (0,0) to[I<=1A, v_=$u_1$] (2,0); +\end{circuitikz} +\end{LTXexample} + +\begin{LTXexample}[varwidth=true] +\begin{circuitikz} + \draw (0,0) to[I=$~$,l=1A, v_=$u_1$] (2,0); +\end{circuitikz} +\end{LTXexample} +\begin{LTXexample}[varwidth=true] +\begin{circuitikz} + \draw (0,0) to[I,l=1A, v_=$u_1$] (2,0); \end{circuitikz} \end{LTXexample} @@ -1297,7 +1316,7 @@ The following results from using the option \texttt{americanvoltage} or the styl \begin{LTXexample}[varwidth=true] \begin{circuitikz}[american voltages] - \draw (0,0) to[cV=$k\cdot a_1$] (2,0); + \draw (0,0) to[cV=$k v_e$] (2,0); \end{circuitikz} \end{LTXexample} @@ -1310,7 +1329,7 @@ The following results from using the option \texttt{americanvoltage} or the styl \begin{LTXexample}[varwidth=true] \begin{circuitikz}[american voltages] - \draw (0,0) to[csV=$k\cdot a_1$] (2,0); + \draw (0,0) to[csV=$k v_e$] (2,0); \end{circuitikz} \end{LTXexample} diff --git a/Master/texmf-dist/tex/context/third/circuitikz/t-circuitikz.tex b/Master/texmf-dist/tex/context/third/circuitikz/t-circuitikz.tex index 46de1dd5a98..8eb4a73befd 100644 --- a/Master/texmf-dist/tex/context/third/circuitikz/t-circuitikz.tex +++ b/Master/texmf-dist/tex/context/third/circuitikz/t-circuitikz.tex @@ -1,5 +1,5 @@ -\def\pgfcircversion{0.8.1} -\def\pgfcircversiondate{2017/03/25} +\def\pgfcircversion{0.8.2} +\def\pgfcircversiondate{2017/05/01} \writestatus{loading}{\pgfcircversiondate{} The CircuiTikz circuit drawing package version \pgfcircversion} \usemodule[tikz] diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex index 828a7af89ee..6668b6451a4 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex @@ -192,9 +192,13 @@ \ctikzset{bipoles/diode/width/.initial=.40} \ctikzset{bipoles/varcap/height/.initial=.50} \ctikzset{bipoles/varcap/width/.initial=.45} -\ctikzset{bipoles/interr/height/.initial=.35} -\ctikzset{bipoles/interr/width/.initial=.35} -\ctikzset{bipoles/interr/height 2/.initial=.1} +\ctikzset{bipoles/spst/height/.initial=.35} +\ctikzset{bipoles/spst/width/.initial=.35} +\ctikzset{bipoles/spst/depth/.initial=.2} +\ctikzset{bipoles/nos/height/.initial=.3} +\ctikzset{bipoles/nos/width/.initial=.35} +\ctikzset{bipoles/ncs/height/.initial=.35} +\ctikzset{bipoles/ncs/width/.initial=.35} \ctikzset{bipoles/generic/height/.initial=.30} \ctikzset{bipoles/generic/width/.initial=.80} \ctikzset{bipoles/european gas filled surge arrester/height/.initial=.30} @@ -669,6 +673,13 @@ \ctikzset{tripoles/op amp/input height/.initial=.5} \ctikzset{tripoles/op amp/up pos/.initial=.45} \ctikzset{tripoles/op amp/font/.initial= \fontsize{10}{0}\selectfont\boldmath}%absolut font size needed! +\ctikzset{tripoles/en amp/width/.initial=1.7} +\ctikzset{tripoles/en amp/port width/.initial=.7} +\ctikzset{tripoles/en amp/height/.initial=1.6} +\ctikzset{tripoles/en amp/input height/.initial=.3} +\ctikzset{tripoles/en amp/up pos/.initial=.45} +\ctikzset{tripoles/en amp/font/.initial= \fontsize{10}{0}\selectfont\boldmath}%absolut font size needed! +\ctikzset{tripoles/en amp/font2/.initial= \fontsize{14}{0}\selectfont\boldmath}%absolut font size needed! \ctikzset{tripoles/gm amp/width/.initial=1.7} \ctikzset{tripoles/gm amp/port width/.initial=.7} \ctikzset{tripoles/gm amp/height/.initial=1.4} @@ -836,7 +847,7 @@ \ctikzset{thickness/.initial=2} \ctikzset{color/.initial=black} -\pgfkeys{/tikz/color/.add code={}{\ctikzset{color=#1}}} +\pgfkeys{/tikz/color/.add code={}{\ctikzset{color={#1}}}} \newif\ifpgf@circ@siunitx diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex index 28470321cd8..1e159c64f60 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex @@ -492,22 +492,15 @@ \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/vsourceam/height}}{vsourceAM}{\ctikzvalof{bipoles/vsourceam/height}}{\ctikzvalof{bipoles/vsourceam/width}}{ \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} - \pgfpathellipse{\pgfpointorigin}{\pgfpoint{0}{\pgf@circ@res@up}}{\pgfpoint{\pgf@circ@res@left}{0}} - + \pgfusepath{draw} \ifpgf@circ@oldvoltagedirection \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@down]{$+$} \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@up]{$-$} \else - \ifpgf@circuit@bipole@voltage@backward - \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@down]{$+$} - \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@up]{$-$} - \else - \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@down]{$-$} - \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@up]{$+$} - \fi + \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@down]{$-$} + \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/vsourceam/margin}\pgf@circ@res@up]{$+$} \fi - \pgfusepath{draw} } @@ -551,24 +544,22 @@ } -% contributed by Alistair Kwan +% Square Voltage source - contributed by Alistair Kwan \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/vsourcesquare/height}}{vsourcesquare}{\ctikzvalof{bipoles/vsourcesquare/height}}{\ctikzvalof{bipoles/vsourcesquare/width}}{ - \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} \pgfpathellipse{\pgfpointorigin}{\pgfpoint{0}{\pgf@circ@res@up}}{\pgfpoint{\pgf@circ@res@left}{0}} - \pgfusepath{draw} - - \pgf@circ@res@up = .5\pgf@circ@res@up - \pgfscope - \pgftransformrotate{90} - \pgfpathmoveto{\pgfpoint{-1\pgf@circ@res@up}{0cm}} - \pgfpathlineto{\pgfpoint{-1\pgf@circ@res@up}{1\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{0\pgf@circ@res@up}{1\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{0\pgf@circ@res@up}{-1\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{1\pgf@circ@res@up}{-1\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{1\pgf@circ@res@up}{0\pgf@circ@res@up}} - \pgfusepath{draw} - \endpgfscope + \pgfusepath{draw} + \pgf@circ@res@up = .5\pgf@circ@res@up + \pgfscope + \pgftransformrotate{90} + \pgfpathmoveto{\pgfpoint{-1\pgf@circ@res@up}{0cm}} + \pgfpathlineto{\pgfpoint{-1\pgf@circ@res@up}{1\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{0\pgf@circ@res@up}{1\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{0\pgf@circ@res@up}{-1\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{1\pgf@circ@res@up}{-1\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{1\pgf@circ@res@up}{0\pgf@circ@res@up}} + \pgfusepath{draw} + \endpgfscope } % Triangle Voltage source - contributed by Ralf Farkas @@ -607,7 +598,6 @@ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@step}{\pgf@circ@res@up}} \pgfusepath{draw} - %Adapted from battery1 \pgfpathmoveto{\pgfpoint{.15\pgf@circ@res@right}{0}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{0}} \pgfpathmoveto{\pgfpoint{.15\pgf@circ@res@left}{0}} @@ -653,21 +643,15 @@ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0}}\pgfpatharc{180}{270}{0.85\pgf@circ@res@right and \pgf@circ@res@up} \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0}}\pgfpatharc{180}{90}{0.85\pgf@circ@res@right and \pgf@circ@res@up} \pgfusepath{draw} - \pgfpathmoveto{\pgfpoint{.7\pgf@circ@res@left}{\pgf@circ@res@zero}} - \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@zero}} - \pgfusepath{draw} - \pgfscope - \ifpgf@circ@oldvoltagedirection - \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \else - \ifpgf@circuit@bipole@current@backward - \pgftransformshift{\pgfpoint{-.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \pgftransformrotate{180} - \else - \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \fi\fi - \pgfnode{currarrow}{center}{}{}{\pgfusepath{stroke}} - \endpgfscope + + \pgfpathmoveto{\pgfpoint{.7\pgf@circ@res@left}{\pgf@circ@res@zero}} + \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@zero}} + \pgfusepath{draw} + \pgfscope + + \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} + \pgfnode{currarrow}{center}{}{}{\pgfusepath{stroke}} + \endpgfscope } %% DC-Voltage source @@ -721,22 +705,12 @@ \pgfpathlineto{\pgfpoint{.7\pgf@circ@res@right}{\pgf@circ@res@zero}} \pgfusepath{draw} \pgfscope - \ifpgf@circ@oldvoltagedirection - \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \else - \ifpgf@circuit@bipole@current@backward - \pgftransformshift{\pgfpoint{-.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \pgftransformrotate{180} - \else - \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \fi\fi + \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} \pgfnode{currarrow}{center}{}{}{\pgfusepath{stroke}} \endpgfscope } - - %% Independent sinusoidal current source \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/isource/height}}{isourcesin}{\ctikzvalof{bipoles/isource/height}}{\ctikzvalof{bipoles/isource/width}}{ @@ -778,24 +752,26 @@ %% Controlled voltage source - American - \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/cvsourceam/height}}{cvsourceAM}{\ctikzvalof{bipoles/cvsourceam/height}}{\ctikzvalof{bipoles/cvsourceam/width}}{ - \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@zero}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@zero}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@zero}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@zero}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@zero}} + \pgfusepath{draw} - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@zero}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@zero}{\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@zero}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@zero}{\pgf@circ@res@down}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@zero}} - \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/cvsourceam/margin}\pgf@circ@res@left]{$+$} - \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/cvsourceam/margin}\pgf@circ@res@right]{$-$} - \pgfusepath{draw} + \ifpgf@circ@oldvoltagedirection + \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/cvsourceam/margin}\pgf@circ@res@left]{$+$} + \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/cvsourceam/margin}\pgf@circ@res@right]{$-$} + \else + \pgftext[bottom,rotate=90,y=\ctikzvalof{bipoles/cvsourceam/margin}\pgf@circ@res@left]{$-$} + \pgftext[top,rotate=90,y=\ctikzvalof{bipoles/cvsourceam/margin}\pgf@circ@res@right]{$+$} + \fi } %% Controlled sinusoidal voltage source - \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/cvsourcesin/height}}{cvsourcesin}{\ctikzvalof{bipoles/cvsourcesin/height}}{\ctikzvalof{bipoles/cvsourcesin/width}}{ \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} @@ -889,15 +865,7 @@ \pgfpathlineto{\pgfpoint{.7\pgf@circ@res@right}{\pgf@circ@res@zero}} \pgfusepath{draw} \pgfscope - \ifpgf@circ@oldvoltagedirection - \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \else - \ifpgf@circuit@bipole@current@backward - \pgftransformshift{\pgfpoint{-.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \pgftransformrotate{180} - \else - \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} - \fi\fi + \pgftransformshift{\pgfpoint{.5\pgf@circ@res@right}{\pgf@circ@res@zero}} \pgfnode{currarrow}{center}{}{}{\pgfusepath{stroke}} \endpgfscope } @@ -1268,81 +1236,76 @@ \pgfusepath{draw} } -%% SPST - -\pgfcircdeclarebipole{}{\ctikzvalof{bipoles/interr/height 2}}{spst}{\ctikzvalof{bipoles/interr/height}}{\ctikzvalof{bipoles/interr/width}}{ - - \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} - - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} - \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}} - \pgfpathmoveto{\pgfpoint{.9\pgf@circ@res@left}{.9\pgf@circ@res@up}} - \pgfpatharc{65}{25}{\pgfkeysvalueof{/tikz/circuitikz/bipoles/interr/width}\pgf@circ@Rlen} - %\pgfsetarrowsend{latex'} - \pgfusepath{draw} - - \pgfpathmoveto{\pgfpoint{.1\pgf@circ@res@right}{-.25\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{.14\pgf@circ@res@right}{-.35\pgf@circ@res@up}} - \pgfsetarrowsend{latex'} - \pgfusepath{draw} - -} - -%% Closing SPST - -\pgfcircdeclarebipole{}{\ctikzvalof{bipoles/interr/height 2}}{cspst}{\ctikzvalof{bipoles/interr/height}}{\ctikzvalof{bipoles/interr/width}}{ - - \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} - - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} - \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}} - \pgfpathmoveto{\pgfpoint{.9\pgf@circ@res@left}{.9\pgf@circ@res@up}} - \pgfpatharc{65}{25}{\pgfkeysvalueof{/tikz/circuitikz/bipoles/interr/width}\pgf@circ@Rlen} - %\pgfsetarrowsend{latex'} - \pgfusepath{draw} - +%% (Closing) SPST +\pgfcircdeclarebipole{}{\ctikzvalof{bipoles/spst/depth}}{cspst}{\ctikzvalof{bipoles/spst/height}}{\ctikzvalof{bipoles/spst/width}}{ + \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfusepath{draw} + + \pgfsetarrowsstart{latex'} + \pgfpathmoveto{\pgfpoint{.2\pgf@circ@res@right}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{0\pgf@circ@res@down}} + \pgfpatharcto{1.2\pgf@circ@res@right}{1.2\pgf@circ@res@right}{0}{0}{1}{\pgfpoint{.9\pgf@circ@res@left}{.9\pgf@circ@res@up}} + \pgfsetbeveljoin + \pgfusepath{draw} } %% Opening SPST +\pgfcircdeclarebipole{}{\ctikzvalof{bipoles/spst/depth}}{ospst}{\ctikzvalof{bipoles/spst/height}}{\ctikzvalof{bipoles/spst/width}}{ -\pgfcircdeclarebipole{}{\ctikzvalof{bipoles/interr/height 2}}{ospst}{\ctikzvalof{bipoles/interr/height}}{\ctikzvalof{bipoles/interr/width}}{ + \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfusepath{draw} + + \pgfpathmoveto{\pgfpoint{.2\pgf@circ@res@right}{0.5\pgf@circ@res@down}} + \pgfpatharcto{1.1\pgf@circ@res@right}{1.1\pgf@circ@res@right}{0}{0}{1}{\pgfpoint{.7\pgf@circ@res@left}{.9\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{1.2\pgf@circ@res@left}{1\pgf@circ@res@up}} + \pgfsetarrowsend{latex'} + \pgfsetbeveljoin + \pgfusepath{draw} +} - \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} - - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} - \pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}} - \pgfpathmoveto{\pgfpoint{.3\pgf@circ@res@right}{.1\pgf@circ@res@down}} - \pgfpatharc{15}{50}{\pgfkeysvalueof{/tikz/circuitikz/bipoles/interr/width}\pgf@circ@Rlen} - %\pgfpathlineto{\pgfpoint{.6\pgf@circ@res@right}{\pgf@circ@res@up}} - \pgfusepath{draw} - - \pgfpathmoveto{\pgfpoint{.85\pgf@circ@res@left}{1.25\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{.87\pgf@circ@res@left}{1.26\pgf@circ@res@up}} - \pgfsetarrowsend{latex'} - \pgfusepath{draw} - +%% Normal open Switch +\pgfcircdeclarebipole{}{0}{nos}{\ctikzvalof{bipoles/nos/height}}{\ctikzvalof{bipoles/nos/width}}{ + \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfsetbuttcap + \pgfusepath{draw} } +%% Normal closed Switch +\pgfcircdeclarebipole{}{0}{ncs}{\ctikzvalof{bipoles/ncs/height}}{\ctikzvalof{bipoles/ncs/width}}{ + \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfpathlineto{\pgfpoint{.9\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfusepath{draw} + \pgfsetlinewidth{\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}} + \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{0pt}} + \pgfpathlineto{\pgfpoint{.2\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfusepath{draw} +} %% Push Button - \pgfcircdeclarebipole{}{\ctikzvalof{bipoles/pushbutton/height 2}}{pushbutton}{\ctikzvalof{bipoles/pushbutton/height}}{\ctikzvalof{bipoles/pushbutton/width}}{ - - %\pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{.5\pgf@circ@res@up}} - \pgfpathmoveto{\pgfpoint{0}{.5\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{0}{\pgf@circ@res@up}} - \pgfusepath{draw} - - \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} - \pgfnode{ocirc}{center}{}{}{\pgfusepath{draw}} - \pgftransformshift{\pgfpoint{2\pgf@circ@res@right}{0pt}} - \pgfnode{ocirc}{center}{}{}{\pgfusepath{draw}} + \pgfsetlinewidth{\pgfkeysvalueof{/tikz/circuitikz/bipoles/thickness}\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{.5\pgf@circ@res@up}} + \pgfpathmoveto{\pgfpoint{0}{.5\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{0}{\pgf@circ@res@up}} + \pgfusepath{draw} + + \pgftransformshift{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfnode{ocirc}{center}{}{}{\pgfusepath{draw}} + \pgftransformshift{\pgfpoint{2\pgf@circ@res@right}{0pt}} + \pgfnode{ocirc}{center}{}{}{\pgfusepath{draw}} } -%METERINGSHAPE +% % METERINGSHAPE \long\def\drawmeteringcircle{ \def\pgf@circ@temp{right} \ifx\tikz@res@label@pos\pgf@circ@temp diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex index bf4777a6ae4..1971f32a160 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex @@ -11,8 +11,6 @@ %% Current handling %% Options - - \ctikzset{i^>/.style = { i = #1, \circuitikzbasekey/bipole/current/direction = forward, @@ -78,12 +76,7 @@ } \ctikzset{i/.code = { -% \ifpgf@circuit@bipole@iscurrent -% \pgfkeys{\circuitikzbasekey/bipole/current/position=above} -% \else -% \pgfkeys{\circuitikzbasekey/bipole/current/position=below} -% \fi - \pgfkeys{\circuitikzbasekey/bipole/current/direction = forward, + \pgfkeys{\circuitikzbasekey/bipole/current/direction = forward, \circuitikzbasekey/bipole/current/x position = after, \circuitikzbasekey/bipole/current/y position = above } \pgfkeys{/tikz/circuitikz/bipole/current/label/name=#1} @@ -124,38 +117,7 @@ \ctikzset{i>/.style = {i = #1, \circuitikzbasekey/bipole/current/direction = forward } } \ctikzset{i^/.style = { i= #1, \circuitikzbasekey/bipole/current/y position = above } } - -\def\pgf@circ@drawnormalcurrent{ - \ifpgf@circuit@bipole@current@before - \ifpgf@circuit@bipole@current@backward - { (anchorstartnode) -- - node [currarrow, pos=\ctikzvalof{current/distance}, sloped, allow upside down] (Iarrow) {} - (\tikztostart) - } - \else - { (\tikztostart) -- - node [currarrow, pos=\ctikzvalof{current/distance}, sloped, allow upside down] (Iarrow) {} - (anchorstartnode) - } - \fi - \else - \ifpgf@circuit@bipole@current@backward - { (\tikztotarget) -- - node [currarrow, pos=\ctikzvalof{current/distance}, sloped, allow upside down] (Iarrow) {} - (anchorendnode) - } - \else - { (anchorendnode) -- - node [currarrow, pos=\ctikzvalof{current/distance}, sloped, allow upside down] (Iarrow) {} - (\tikztotarget) - } - \fi - \fi -} - %% Output routine -%% #1 - node name - \def\pgf@circ@drawcurrent{ \pgfextra{ \edef\pgf@circ@ffffff{\pgf@circ@direction} @@ -213,44 +175,25 @@ \def\pgf@circ@bipole@current@label@where{+90} \fi } - - \pgfextra{ \def\pgf@temp{short} \edef\pgf@circ@temp{\ctikzvalof{bipole/kind}} } - - \ifx\pgf@circ@temp\pgf@temp % caso di corrente (centrata) su un corto - \ifpgf@circuit@bipole@current@backward - { (\tikztotarget) -- - node [currarrow, pos=\ctikzvalof{current/distance}, sloped, allow upside down] (Iarrow) {} - (\tikztostart) } - \else - { (\tikztostart) -- - node [currarrow, pos=\ctikzvalof{current/distance}, sloped, allow upside down] (Iarrow) {} - (\tikztotarget) } - \fi - - \else % altri bipoli - e quindi tra nodo e target - - \ifpgf@circuit@bipole@iscurrent - \ifpgf@circuit@europeancurrent - \pgf@circ@drawnormalcurrent - \else - \fi + \pgfextra{\def\pgf@temp{short}\edef\pgf@circ@temp{\ctikzvalof{bipole/kind}}} + \ifx\pgf@circ@temp\pgf@temp%draw current at a short at middle of the line + (\tikztostart)--(\tikztotarget) + \else% normal bipole or source + \ifpgf@circuit@bipole@current@before + (\tikztostart)--(anchorstartnode) \else - \pgf@circ@drawnormalcurrent + (anchorendnode)--(\tikztotarget) \fi \fi - - \ifpgf@circuit@bipole@iscurrent - node [anchor=\pgf@circ@dir] at (\ctikzvalof{bipole/name}.\pgf@circ@bipole@current@label@where) - { \pgf@circ@finallabels{current/label} } - \else - (Iarrow.\pgf@circ@bipole@current@label@where) node [anchor=\pgf@circ@dir] - { \pgf@circ@finallabels{current/label} } - \fi - + \ifpgf@circuit@bipole@current@backward + \pgfextra{ + \pgfmathsubtract{\pgf@circ@ffffff}{180} + \edef\pgf@circ@ffffff{\expandafter\pgf@circ@stripdecimals\pgfmathresult\pgf@nil} + } + \fi + coordinate[currarrow,pos=\ctikzvalof{current/distance},rotate=\pgf@circ@ffffff](Iarrow) + (Iarrow.\pgf@circ@bipole@current@label@where) node[anchor=\pgf@circ@dir]{\pgf@circ@finallabels{current/label}} } -\endinput - - - +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex index ae43c40cd65..8fe1397467d 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex @@ -61,8 +61,9 @@ } (\tikztostart) coordinate (\ctikzvalof{bipole/name}start)%necessary to get correct coordinates in the case of relativ start/end or constructions like ((node1)-|(node2)) - (\tikztotarget)++(0,0) coordinate (\ctikzvalof{bipole/name}end) %++(0,0) needed, if tikztotarget is a node, maybe a bug at tikz/pgf? + (\tikztotarget) coordinate (\ctikzvalof{bipole/name}end) \pgfextra{ + \let\tikz@moveto@waiting=\relax%necessary, if \tikztatarget is a node \pgfmathanglebetweenpoints{\pgfpointanchor{\ctikzvalof{bipole/name}start}{center}} {\pgfpointanchor{\ctikzvalof{bipole/name}end}{center}} \edef\pgf@circ@direction{\pgfmathresult}%Calculate direction(angle) of path @@ -206,8 +207,9 @@ \def\pgf@circ@cisourcesin@path#1{\pgf@circ@bipole@path{cisourcesin}{#1}} \def\pgf@circ@short@path#1{\pgf@circ@bipole@path{short}{#1}} \def\pgf@circ@cspst@path#1{\pgf@circ@bipole@path{cspst}{#1}} -\def\pgf@circ@spst@path#1{\pgf@circ@bipole@path{spst}{#1}} \def\pgf@circ@ospst@path#1{\pgf@circ@bipole@path{ospst}{#1}} +\def\pgf@circ@nos@path#1{\pgf@circ@bipole@path{nos}{#1}} +\def\pgf@circ@ncs@path#1{\pgf@circ@bipole@path{ncs}{#1}} \def\pgf@circ@pushbutton@path#1{\pgf@circ@bipole@path{pushbutton}{#1}} \def\pgf@circ@open@path#1{\pgf@circ@bipole@path{open}{#1}} \def\pgf@circ@generic@path#1{\pgf@circ@bipole@path{generic}{#1}} @@ -330,9 +332,9 @@ \compattikzset{controlled sinusoidal current source/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@cisourcesin@path, \circuitikzbasekey/bipole/is current=true, i=#1}} \compattikzset{voltage source/.style = {\comnpatname \ifpgf@circuit@europeanvoltage european \else american \fi voltage source, \circuitikzbasekey/bipole/is voltage=true, v=#1}} -\compattikzset{current source/.style = {\comnpatname \ifpgf@circuit@europeancurrent european \else american \fi current source, \circuitikzbasekey/bipole/is current=true, i=#1}} +\compattikzset{current source/.style = {\comnpatname \ifpgf@circuit@europeancurrent european \else american \fi current source = #1, \circuitikzbasekey/bipole/is current=true}} \compattikzset{controlled voltage source/.style = {\comnpatname \ifpgf@circuit@europeanvoltage european \else american \fi controlled voltage source, \circuitikzbasekey/bipole/is voltage=true, v=#1}} -\compattikzset{controlled current source/.style = {\comnpatname \ifpgf@circuit@europeancurrent european \else american \fi controlled current source, \circuitikzbasekey/bipole/is current=true, i=#1}} +\compattikzset{controlled current source/.style = {\comnpatname \ifpgf@circuit@europeancurrent european \else american \fi controlled current source = #1, \circuitikzbasekey/bipole/is current=true}} \compattikzset{generic/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@generic@path, l=#1}} @@ -490,7 +492,11 @@ \compattikzset{memristor/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@memristor@path}} \compattikzset{closing switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@cspst@path, l=#1}} \compattikzset{opening switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@ospst@path, l=#1}} -\compattikzset{switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@spst@path, l=#1}} +\compattikzset{ncs/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@ncs@path, l=#1}} +\compattikzset{nos/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@nos@path, l=#1}} +\compattikzset{normal closed switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@ncs@path, l=#1}} +\compattikzset{normal open switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@nos@path, l=#1}} +\compattikzset{switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@cspst@path, l=#1}} \compattikzset{push button/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@pushbutton@path, l=#1}} \compattikzset{toggle switch/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@toggleswitch@path}} @@ -502,10 +508,10 @@ \compattikzset{esource/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@esource@path, \circuitikzbasekey/bipole/is voltage=true,\circuitikzbasekey/bipole/is voltageoutsideofsymbol=true, v=#1}} \compattikzset{pvsource/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@pvsource@path, \circuitikzbasekey/bipole/is voltage=true,\circuitikzbasekey/bipole/is voltageoutsideofsymbol=true, v=#1}} \compattikzset{dcvsource/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@dcvsource@path, \circuitikzbasekey/bipole/is voltage=true,\circuitikzbasekey/bipole/is voltageoutsideofsymbol=true, v=#1}} -\compattikzset{dcisource/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@dcisource@path, \circuitikzbasekey/bipole/is current=true, i=#1}} +\compattikzset{dcisource/.style = {\circuitikzbasekey, /tikz/to path=\pgf@circ@dcisource@path, \circuitikzbasekey/bipole/is current=true, l=#1}} -\compattikzset{ioosource/.style = {\circuitikzbasekey, \circuitikzbasekey/bipole/is current=true,/tikz/to path=\pgf@circ@oosource@path}} -\compattikzset{voosource/.style = {\circuitikzbasekey, \circuitikzbasekey/bipole/is voltage=true,/tikz/to path=\pgf@circ@oosource@path}} +\compattikzset{ioosource/.style = {\circuitikzbasekey, \circuitikzbasekey/bipole/is current=true,/tikz/to path=\pgf@circ@oosource@path, i=#1}} +\compattikzset{voosource/.style = {\circuitikzbasekey, \circuitikzbasekey/bipole/is voltage=true,/tikz/to path=\pgf@circ@oosource@path, v=#1}} \compattikzset{vsource/.style = {\comnpatname voltage source = #1}} \compattikzset{isource/.style = {\comnpatname current source = #1}} @@ -551,7 +557,9 @@ \compattikzset{csV#1/.style = {\comnpatname controlled sinusoidal voltage source, v#1=##1} } } \pgf@temp{_>} \pgf@temp{_<} \pgf@temp{^>} \pgf@temp{^<} -\pgf@temp{>} \pgf@temp{<} \pgf@temp{^} \pgf@temp{_} +\pgf@temp{>} \pgf@temp{<} \pgf@temp{^} \pgf@temp{_} + +%current sources \compattikzset{I/.style = {\comnpatname current source = #1}} \compattikzset{cI/.style = {\comnpatname controlled current source = #1}} \compattikzset{sI/.style = {\comnpatname sinusoidal current source = #1}} diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex index b98af8b9123..5acebc07c82 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex @@ -2270,9 +2270,11 @@ \anchor{south}{ \northwest \pgf@y=-\pgf@y + \pgf@x=0pt } \anchor{north}{ \northwest + \pgf@x=0pt } \savedanchor\left{% \pgf@y=0pt @@ -2386,6 +2388,116 @@ } } +%op amp shape as in european standard en 60617 +\pgfdeclareshape{en amp} +{ + \anchor{center}{\pgfpointorigin} + \savedanchor\northwest{% + \pgf@y= \pgfkeysvalueof{/tikz/circuitikz/bipoles/length} + \pgf@y=\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/height}\pgf@y + \pgf@y=.5\pgf@y + \pgf@x= \pgfkeysvalueof{/tikz/circuitikz/bipoles/length} + \pgf@x=-\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/width}\pgf@x + \pgf@x=.5\pgf@x + } + \anchor{south}{ + \northwest + \pgf@y=-\pgf@y + \pgf@x=0pt + } + \anchor{north}{ + \northwest + \pgf@x=0pt + } + \savedanchor\left{% + \pgf@y=0pt + } + \anchor{leftedge} + { + \left + \pgf@x = \pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/port width}\pgf@x + } + \savedanchor\inOne{% + \pgf@y= \pgfkeysvalueof{/tikz/circuitikz/bipoles/length} + \pgf@y=\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/height}\pgf@y + \pgf@y=.5\pgf@y + \pgf@y=\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@y + \pgf@x= \pgfkeysvalueof{/tikz/circuitikz/bipoles/length} + \pgf@x=-\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/width}\pgf@x + \pgf@x=.5\pgf@x + } + \anchor{-}{ + \inOne + } + \anchor{+}{ + \inOne + \pgf@y=-\pgf@y + } + \anchor{up}{ + \northwest + \pgf@x=0pt + } + \anchor{down}{ + \northwest + \pgf@x=0pt + \pgf@y=-\pgf@y + } + \anchor{out}{ + \northwest + \pgf@y=0pt + \pgf@x=-\pgf@x + } + \anchor{west}{ + \left + } + \anchor{east}{ + \left + \pgf@x=-\pgf@x + } + \backgroundpath{ + \pgfsetcolor{\pgfkeysvalueof{/tikz/circuitikz/color}} + \northwest + \pgf@circ@res@up = \pgf@y + \pgf@circ@res@down = -\pgf@y + \pgf@circ@res@right = -\pgf@x + \pgf@circ@res@left = \pgf@x + + \pgfpathmoveto{\pgfpoint + {\pgf@circ@res@left} + {\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint + {\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/port width}\pgf@circ@res@left} + {\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@circ@res@up}} + \pgftext[left, at=\pgfpoint{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/port width}\pgf@circ@res@left}{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@circ@res@up}]{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/font} $-$} + + \pgfpathmoveto{\pgfpoint + {\pgf@circ@res@left} + {\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint + {\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/port width}\pgf@circ@res@left} + {\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@circ@res@down}} + \pgftext[left, at=\pgfpoint{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/port width}\pgf@circ@res@left}{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/input height}\pgf@circ@res@down}]{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/font} $+$} + + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}} + \pgfpathlineto{\pgfpoint{.7\pgf@circ@res@right}{0pt}} + \pgfsetrectcap + \pgfusepath{draw} + + \pgfscope + \pgfsetlinewidth{2\pgflinewidth} + \pgfpathmoveto{\pgfpoint{\pgfkeysvalueof{/tikz/circuitikz/tripoles/american nand port/port width}\pgf@circ@res@left}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgfkeysvalueof{/tikz/circuitikz/tripoles/american nand port/port width}\pgf@circ@res@left}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgfkeysvalueof{/tikz/circuitikz/tripoles/american nand port/port width}\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgfkeysvalueof{/tikz/circuitikz/tripoles/american nand port/port width}\pgf@circ@res@right}{\pgf@circ@res@down}} + \pgfpathclose + \pgfusepath{draw} + \endpgfscope + + \pgftext[base,y=-3ex,at=\pgfpoint{.3\pgf@circ@res@left}{\pgf@circ@res@up}]{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/font2} $\triangleright$} + \pgftext[base,y=-3ex,at=\pgfpoint{.3\pgf@circ@res@right}{\pgf@circ@res@up}]{\pgfkeysvalueof{/tikz/circuitikz/tripoles/en amp/font2} $\infty$} + } +} + %%Transkonduktanzverstärker \pgfdeclareshape{gm amp} { diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex index a9322362709..de8305354f2 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex @@ -89,10 +89,7 @@ %% Output routine for generic bipoles \def\pgf@circ@drawvoltagegeneric{ - \pgfextra{ - - - \edef\pgf@temp{/tikz/circuitikz/bipoles/\pgfkeysvalueof{/tikz/circuitikz/bipole/kind}/voltage/straight label distance} + \pgfextra{\edef\pgf@temp{/tikz/circuitikz/bipoles/\pgfkeysvalueof{/tikz/circuitikz/bipole/kind}/voltage/straight label distance} \pgfkeysifdefined{\pgf@temp} { \edef\partwidth{\ctikzvalof{bipoles/\pgfkeysvalueof{/tikz/circuitikz/bipole/kind}/voltage/straight label distance}} \def\tmpdistfromline{\partwidth\pgf@circ@Rlen}} diff --git a/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty b/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty index 3999270e77d..d15d6bf81d9 100644 --- a/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty +++ b/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty @@ -10,13 +10,13 @@ \NeedsTeXFormat{LaTeX2e} -\def\pgfcircversion{0.8.1} -\def\pgfcircversiondate{2017/03/25} +\def\pgfcircversion{0.8.2} +\def\pgfcircversiondate{2017/05/01} \ProvidesPackage{circuitikz}% [\pgfcircversiondate{} The CircuiTikz circuit drawing package version \pgfcircversion] -%% Version 2.0 of pgf/TikZ is required +%% Version 3.0 of pgf/TikZ is required \RequirePackage{tikz} \usetikzlibrary{calc} \usepgflibrary{arrows} |