From cef58753eba8ad7e2071195dbd92454febe82d32 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Tue, 27 Jul 2021 03:01:57 +0000 Subject: CTAN sync 202107270301 --- graphics/pgf/contrib/circuitikz/doc/changelog.tex | 14 ++++++++ .../contrib/circuitikz/doc/circuitikz-context.pdf | Bin 17688 -> 17688 bytes .../contrib/circuitikz/doc/circuitikzmanual.pdf | Bin 1441257 -> 1440146 bytes .../contrib/circuitikz/doc/circuitikzmanual.tex | 20 ++++++++--- .../pgf/contrib/circuitikz/doc/ctikzmanutils.sty | 13 ++++--- graphics/pgf/contrib/circuitikz/tex/circuitikz.sty | 4 +-- .../pgf/contrib/circuitikz/tex/pgfcircbipoles.tex | 40 +++++++++++++++++++++ .../pgf/contrib/circuitikz/tex/pgfcircutils.tex | 2 +- .../pgf/contrib/circuitikz/tex/t-circuitikz.tex | 4 +-- 9 files changed, 80 insertions(+), 17 deletions(-) (limited to 'graphics/pgf') diff --git a/graphics/pgf/contrib/circuitikz/doc/changelog.tex b/graphics/pgf/contrib/circuitikz/doc/changelog.tex index ceccd2d6a0..508a25d9fe 100644 --- a/graphics/pgf/contrib/circuitikz/doc/changelog.tex +++ b/graphics/pgf/contrib/circuitikz/doc/changelog.tex @@ -4,6 +4,20 @@ here. See \url{https://github.com/circuitikz/circuitikz/commits} for a full list of changes. \begin{itemize} +\item + Version 1.4.2 (2021-07-26) + + This is a minor release, containing just a new component and a small + set of fixes (mainly in the documentation). + + \begin{itemize} + \tightlist + \item + add the \texttt{cpe} (constant phase element) + \item + correct minor errors in the manual (capacitor's fill, spaces) and + the code. + \end{itemize} \item Version 1.4.1 (2021-07-14) diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf b/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf index 62a082a633..31a4cec4f9 100644 Binary files a/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf and b/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf differ diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf index 0f13dab3cf..ce0a14da3f 100644 Binary files a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf and b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf differ diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex index d2d3ee394b..8de6e6209f 100644 --- a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex +++ b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex @@ -2087,12 +2087,13 @@ You can change that globally or locally, as ever. The tip specification is the o \subsubsection{Capacitors} \begin{groupdesc} - \circuitdescbip{capacitor}{Capacitor}{C} - \circuitdescbip[ccapacitor]{curved capacitor}{Curved (polarized) capacitor}{cC} + \circuitdescbip*{capacitor}{Capacitor}{C} + \circuitdescbip*[ccapacitor]{curved capacitor}{Curved (polarized) capacitor}{cC} \circuitdescbip*{ecapacitor}{Electrolytic capacitor}{eC,elko} - \circuitdescbip[vcapacitor]{variable capacitor}{Variable capacitor}{vC} - \circuitdescbip[capacitivesens]{capacitive sensor}{Capacitive sensor}{sC}(label/0/0.3) + \circuitdescbip*[vcapacitor]{variable capacitor}{Variable capacitor}{vC} + \circuitdescbip*[capacitivesens]{capacitive sensor}{Capacitive sensor}{sC}(label/0/0.3) \circuitdescbip*{piezoelectric}{Piezoelectric Element}{PZ} + \circuitdescbip*{cpe}{Constant Phase Element}{cpe} \circuitdescbip*[ferrocap]{feC}{Ferroelectric capacitor\footnotemark}{ferrocap}(kink left/180/0.2, kink right/0/0.2, curve left/160/0.3, curve right/-20/0.2, center/45/0.3) \footnotetext{suggested by \href{https://github.com/circuitikz/circuitikz/issues/515}{Mayeul Cantan}} \end{groupdesc} @@ -2127,7 +2128,16 @@ You can change the scale of the capacitors by setting the key \texttt{capacitors Variable capacitors arrow tips follow the settings of resistors, see section~\ref{sec:tunablearrows}. -The relative size of the capacitors is a bit of a mixed bag, because each one has historically different internal parameters that makes maintaining coherence quite difficult. In \texttt{v1.4.1} this has changed and now you can use styling options to change the way the capacitors look. The main parameter you can set is \texttt{capacitors/width} (default \texttt{0.2}), which controls the standard distance between plates. That will change all the components (notice that the \texttt{piezoelectric} component is twice the size of a standard capacitor). +The relative size of the capacitors is a bit of a mixed bag, because each one has historically different internal parameters that makes maintaining coherence quite difficult. In \texttt{v1.4.1} this has changed and now you can use styling options to change the way the capacitors look. The main parameter you can set is \texttt{capacitors/width} (default \texttt{0.2}), which controls the standard distance between plates. That will change all the components (notice that \texttt{piezoelectric} and \texttt{cpe} default width is twice the size of a standard capacitor --- although this is not evident for the \texttt{cpe} given its shape.) + +\begin{LTXexample}[varwidth=true, basicstyle=\small\ttfamily] +\begin{circuitikz}[european] + \draw (0,1) to[C=aaa] ++(2,0) to[cpe=bbb] ++(2,0); + \draw[color=red] (0,0) to [C] ++(2,0); + \draw[color=blue] (0,0) to [cpe] ++(2,0) + to[cpe, fill=yellow, capacitors/width=0.1] ++(2,0); +\end{circuitikz} +\end{LTXexample} The \texttt{capacitors/height} key is available also to set the height of the capacitor; the default is \texttt{0.6} for most of the capacitors, but \texttt{0.5} for electrolytic ones and \texttt{0.7} for piezoelectric. When used, it will set all of them at the same value, which is a good thing. diff --git a/graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty b/graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty index 3c5b38eb28..68b1bd37b7 100644 --- a/graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty +++ b/graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty @@ -106,7 +106,7 @@ } %% New circuit description macros \newcommand{\twopartbox}[2]{% - \leavevmode\null\par\noindent\fbox{\parbox[c]{0.3\linewidth}{#1} \parbox[c]{0.6\linewidth}{\raggedright #2}\par\noindent}% + \leavevmode\null\par\noindent\fbox{\parbox[c]{0.3\linewidth}{#1} \parbox[c]{0.6\linewidth}{\RaggedRight #2}\par\noindent}% } % filling color for filled-enabled component \colorlet{fillcol}{cyan!30!white} @@ -142,7 +142,7 @@ \foreach \n/\a/\d in {#7} \path(N-\n) \showcoordb(N-\n)<\a:\d>; } \end{circuitikz}% - }{\sloppy% + }{\sloppy {#4, type: node\IfBooleanT{#1}{, fillable}% } (\texttt{node[\detokenize{#3}]\IfValueT{#7}{(N)}\{\detokenize{#5}\}}). \index{#3}% \checkclass{N}% @@ -157,7 +157,7 @@ % optional between []: internal nodes specification list % 1 2 3 4 5 6 7 8 \NewDocumentCommand{\circuitdescbip}{s o m d<> m m d() d[]} -{ +{% \index{#3} \tikz\foreach \i in {#6} {\index{\i|see{#3}} }; \twopartbox{% \begin{circuitikz} @@ -173,16 +173,15 @@ \foreach \n/\a/\d in {#8} \path(B-\n) \showcoordb(B-\n)<\a:\d>; } \end{circuitikz}% - }{\sloppy% + }{\sloppy \texttt{\textbf{#3}}: #5, \texttt{type: path-style\IfBooleanT{#1}{, fillable}% \IfValueT{#8}{, \texttt{name=B}}% - \IfValueTF{#4}{, nodename: #4.}{ + \IfValueTF{#4}{, nodename: #4.}{% \IfValueTF{#2}{, nodename: #2shape.%\drawphantomshape{#2shape}% }{, nodename: #3shape.%\drawphantomshape{#3shape}% }}% }% - \ifthenelse{\equal{#6}{}}{ }{% - Aliases: \texttt{#6}. }\checkclass{B}% + \ifthenelse{\equal{#6}{}}{ }{ Aliases: \texttt{#6}. }\checkclass{B}% }% } diff --git a/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty b/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty index 4a291574ac..5a1b983a14 100644 --- a/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty +++ b/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty @@ -16,8 +16,8 @@ \providecommand\DeclareRelease[3]{} \providecommand\DeclareCurrentRelease[2]{} -\def\pgfcircversion{1.4.1} -\def\pgfcircversiondate{2021/07/14} +\def\pgfcircversion{1.4.2} +\def\pgfcircversiondate{2021/07/26} \DeclareRelease{0.4}{2012/12/20}{circuitikz-0.4-body.tex} \DeclareRelease{v0.4}{2012/12/20}{circuitikz-0.4-body.tex} diff --git a/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex b/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex index 19d377e45c..228c46e935 100644 --- a/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex +++ b/graphics/pgf/contrib/circuitikz/tex/pgfcircbipoles.tex @@ -736,8 +736,12 @@ \ctikzset{bipoles/vcapacitor/capacitor width/.code={% \pgfutil@packagewarning{circuitikz}{vcapacitor/capacitor width deprecated; ignored}% }}% deprecated +% piezoelectric (double size by default) \ctikzset{bipoles/piezoelectric/height/.initial=.7} \ctikzset{bipoles/piezoelectric/width/.initial=.4}% +% constant phase element (double size by default) +\ctikzset{bipoles/cpe/height/.initial=.6} +\ctikzset{bipoles/cpe/width/.initial=.4} % % style settings % @@ -747,12 +751,14 @@ capacitor/width=#1, ecapacitor/width=#1, ccapacitor/width=#1, vcapacitor/width=#1, piezoelectric/width=\pgfcirc@@double, + cpe/width=\pgfcirc@@double, }}} \ctikzset{capacitors/height/.code={% \ctikzset{bipoles/.cd, capacitor/height=#1, ecapacitor/height=#1, ccapacitor/height=#1, vcapacitor/height=#1, piezoelectric/height=#1, + cpe/height=#1, }}} \def\pgfcirc@maybe@fill@straight@capacitor{% \pgfscope @@ -1017,6 +1023,39 @@ \endpgfscope } +%% Constant phase element +\pgfcircdeclarebipolescaled{capacitors} +{} +{\ctikzvalof{bipoles/cpe/height}} +{cpe} +{\ctikzvalof{bipoles/cpe/height}} +{\ctikzvalof{bipoles/cpe/width}} +{ + \pgfscope + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpointorigin} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{0pt}} + \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@up}} + \pgfpathclose + \pgf@circ@maybefill + \endpgfscope + + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfpathlineto{\pgfpointorigin} + \pgfusepath{draw} + \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpointorigin} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@down}} + + \pgfpathmoveto{\pgfpoint{0pt}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{0pt}} + \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@down}} + \pgfusepath{draw} +} + % %>>> %% Paths for capacitors%<<< @@ -1038,6 +1077,7 @@ \pgfcirc@style@to@style{capacitive sensor}{sC} \pgfcirc@activate@bipole@simple{l}{ferrocap} \pgfcirc@style@to@style{ferrocap}{feC} +\pgfcirc@activate@bipole@simple{l}{cpe} % %>>> %%%%%%%%%%%%%%% diff --git a/graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex b/graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex index 8d9a4ad46a..ae5fcf38de 100644 --- a/graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex +++ b/graphics/pgf/contrib/circuitikz/tex/pgfcircutils.tex @@ -96,7 +96,7 @@ %% changes suggested by Jonathan P. Spratte %% \newbox\ctikz@scratchbox -\long\def\ctikzsubcircuitdef#1#2#3{% +\pgfutil@protected\def\ctikzsubcircuitdef#1#2#3{% \expandafter\gdef\csname #1@Anchor\endcsname{}% \expandafter\gdef\csname #1@setanchors\endcsname{% \setbox\ctikz@scratchbox=\hbox{% diff --git a/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex b/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex index 2d307a86cc..50ac5b4f19 100644 --- a/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex +++ b/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex @@ -10,8 +10,8 @@ % % See the files gpl-3.0_license.txt and lppl-1-3c_license.txt for more details. -\def\pgfcircversion{1.4.1} -\def\pgfcircversiondate{2021/07/14} +\def\pgfcircversion{1.4.2} +\def\pgfcircversiondate{2021/07/26} \writestatus{loading}{\pgfcircversiondate{} The CircuiTikz circuit drawing package version \pgfcircversion} \usemodule[tikz] -- cgit v1.2.3