diff options
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/pgf/contrib/circuitikz/doc/changelog.tex | 108 | ||||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf | bin | 17749 -> 17748 bytes | |||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf | bin | 908573 -> 910006 bytes | |||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex | 25 | ||||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/tex/circuitikz.sty | 4 | ||||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex | 9 | ||||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex | 73 | ||||
-rw-r--r-- | graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex | 4 |
8 files changed, 169 insertions, 54 deletions
diff --git a/graphics/pgf/contrib/circuitikz/doc/changelog.tex b/graphics/pgf/contrib/circuitikz/doc/changelog.tex index af37be95ea..c1dac70eb8 100644 --- a/graphics/pgf/contrib/circuitikz/doc/changelog.tex +++ b/graphics/pgf/contrib/circuitikz/doc/changelog.tex @@ -4,62 +4,76 @@ here. See \url{https://github.com/circuitikz/circuitikz/commits} for a full list of changes. \begin{itemize} -\tightlist +\item + Version 1.0.2 (2020-03-22) + + \begin{itemize} + \tightlist + \item + added Schottky transistors (thanks to a suggestion by Jérôme + Monclard on GitHub) + \item + fixed formatting of \texttt{CHANGELOG.md} + \end{itemize} \item Version 1.0.1 (2020-02-22) -\end{itemize} -Minor fixes and addition to 1.0, in time to catch the freeze for TL2020. + Minor fixes and addition to 1.0, in time to catch the freeze for + TL2020. -\begin{itemize} -\item - add v1.0 version snapshots -\item - added crossed generic impedance (suggested by Radványi Patrik Tamás) -\item - added open barrier bipole (suggested by Radványi Patrik Tamás) -\item - added two flags to flip the direction of light's arrows on LED and - photodiode (suggested by karlkappe on GitHub) -\item - added a special key to help with precision loss in case of fractional - scaling (thanks to AndreaDiPietro92 on GitHub for noticing and - reporting, and to Schrödinger's cat for finding a fix) -\item - fixed a nasty bug for the flat file generation for ConTeXt + \begin{itemize} + \tightlist + \item + add v1.0 version snapshots + \item + added crossed generic impedance (suggested by Radványi Patrik Tamás) + \item + added open barrier bipole (suggested by Radványi Patrik Tamás) + \item + added two flags to flip the direction of light's arrows on LED and + photodiode (suggested by karlkappe on GitHub) + \item + added a special key to help with precision loss in case of + fractional scaling (thanks to AndreaDiPietro92 on GitHub for + noticing and reporting, and to Schrödinger's cat for finding a fix) + \item + fixed a nasty bug for the flat file generation for ConTeXt + \end{itemize} \item Version 1.0 (2020-02-04) -\end{itemize} -And finally\ldots{} version 1.0 (2020-02-04) of \texttt{circuitikz} is -released. + And finally\ldots{} version 1.0 (2020-02-04) of \texttt{circuitikz} is + released. -The main updates since version 0.8.3, which was the last release before -Romano started co-maintaining the project, are the following --- part -coded by Romano, part by several collaborators around the internet: + The main updates since version 0.8.3, which was the last release + before Romano started co-maintaining the project, are the following + --- part coded by Romano, part by several collaborators around the + internet: -\begin{itemize} -\item - The manual has been reorganized and extended, with the addition of a - tutorial part; tens of examples have been added all over the map. -\item - Around 74 new shapes where added. Notably, now there are chips, - mux-demuxes, multi-terminal transistors, several types of switches, - flip-flops, vacuum tubes, 7-segment displays, more amplifiers, and so - on. -\item - Several existing shapes have been enhanced; for example, logic gates - have a variable number of inputs, transistors are more configurable, - resistors can be shaped more, and more. -\item - You can style your circuit, changing relative sizes, default thickness - and fill color, and more details of how you like your circuit to look; - the same you can do with labels (voltages, currents, names of - components and so on). -\item - A lot of bugs have been squashed; especially the (very complex) - voltage direction conundrum has been clarified and you can choose your - preferred style here too. + \begin{itemize} + \tightlist + \item + The manual has been reorganized and extended, with the addition of a + tutorial part; tens of examples have been added all over the map. + \item + Around 74 new shapes where added. Notably, now there are chips, + mux-demuxes, multi-terminal transistors, several types of switches, + flip-flops, vacuum tubes, 7-segment displays, more amplifiers, and + so on. + \item + Several existing shapes have been enhanced; for example, logic gates + have a variable number of inputs, transistors are more configurable, + resistors can be shaped more, and more. + \item + You can style your circuit, changing relative sizes, default + thickness and fill color, and more details of how you like your + circuit to look; the same you can do with labels (voltages, + currents, names of components and so on). + \item + A lot of bugs have been squashed; especially the (very complex) + voltage direction conundrum has been clarified and you can choose + your preferred style here too. + \end{itemize} \end{itemize} A detailed list of changes can be seen below. diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf b/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf Binary files differindex de9bb9e6b1..683b25c31d 100644 --- a/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf +++ b/graphics/pgf/contrib/circuitikz/doc/circuitikz-context.pdf diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf Binary files differindex ded6de75ca..28e478825c 100644 --- a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf +++ b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf diff --git a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex index 1475ffc16f..dbd67b0d3c 100644 --- a/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex +++ b/graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.tex @@ -2350,9 +2350,11 @@ To show that a device is optional, you can dash it. The inner symbol will be kep \begin{groupdesc} \circuitdesc{npn}{npn}{Q}( B/180/0.2,C/0/0.2,E/0/0.2 ) \circuitdesc{pnp}{pnp}{} + \circuitdesc{npn, schottky base}{schottky npn}{} + \circuitdesc{pnp, schottky base}{schottky pnp}{} \circuitdesc{npn, bodydiode}{npn}{}(body C in/60/0.2, body E in/-60/0.2,body C out/0/0.3, body E out/-0/0.3) - \circuitdesc{npn,photo}{npn}{}( nobase/0/0.4 ) - \circuitdesc{pnp,photo}{pnp}{} + \circuitdesc{npn,photo}{photo npn}{}( nobase/0/0.4 ) + \circuitdesc{pnp,photo}{photo pnp}{} \circuitdesc{nigbt}{nigbt}{Q} \circuitdesc{pigbt}{pigbt}{} \circuitdesc{Lnigbt}{Lnigbt}{Q} @@ -2364,7 +2366,7 @@ To show that a device is optional, you can dash it. The inner symbol will be kep In addition to the standard BJTs transistors, since version~\texttt{0.9.6} the \texttt{bjtnpn} and \texttt{bjtpnp} are also available; these are devices where you can have more collectors and emitters (on the other hand, they have no \texttt{photo} nor \texttt{bodydiode} options --- they are silently ignored). -Basically they are the same as the normal \texttt{npn} and \texttt{pnp}, and they (by default) have similar sizes; the options \texttt{collectors} and \texttt{emitters} will change the number of the relative terminals. The base terminal is connected midway from the collector and the emitter, \emph{not} on the center of the base; a \texttt{cbase} anchor is available if you prefer to use it. The label of the component (the text) is set on the right side, vertically centered around the base terminal. +Basically they are the same as the normal \texttt{npn} and \texttt{pnp}, and they (by default) have similar sizes; the options \texttt{collectors} and \texttt{emitters} will change the number of the relative terminals. The base terminal is connected midway from the collector and the emitter, \emph{not} on the center of the base; a \texttt{cbase} anchor is available if you prefer to use it. The label of the component (the text) is set on the right side, vertically centered around the base terminal. They will accept the \texttt{schottky base} key. \begin{groupdesc} \circuitdesc{bjtnpn, collectors=1, emitters=2}{bjt npn}{Q}(B/180/0.2, C/45/0.2, E/-45/0.2, C1/0/0.4, E1/0/0.4, E2/0/0.4, nobase/135/0.4, cbase/-135/0.4, center/0/0.6) @@ -2487,6 +2489,23 @@ You can use the \texttt{body ...} anchors to add more or different things to the \end{circuitikz} \end{LTXexample} +\paragraph{Schottky transistors.} +The Schottky transistors are generated by adding the \texttt{schottky base} key (there is also a \texttt{no schottky base} key that can be used if you use the other one as a default). +You can change the size of the Schottky ``hook'' changing the parameter \texttt{tripoles/schottky base size} with \verb|\ctikzset{}| (default \texttt{0.07}; the unit is the standard resistor length, scaled if needed.) + +\begin{LTXexample}[varwidth=true] + \begin{circuitikz} + \draw (0,4) node[npn]{} + ++(2,0) node[npn, schottky base]{}; + \draw (1,2) node[bjtnpn, collectors=2, emitters=3, + schottky base, rotate=90]{}; + \tikzset{schottky base} + \ctikzset{tripoles/schottky base size=0.1} + \draw (0,0) node[pnp]{} + ++(2,0) node[npn, no schottky base]{}; + \end{circuitikz} +\end{LTXexample} + \paragraph{Base/Gate terminal.} The Base/Gate connection of all transistors can be disabled by the options \textit{nogate} or \textit{nobase}, respectively. The Base/Gate anchors are floating, but there is an additional anchor \texttt{nogate}/\texttt{nobase} , which can be used to point to the unconnected base: \begin{LTXexample}[varwidth=true] \begin{circuitikz} diff --git a/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty b/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty index 0460d13c90..74d8e070ba 100644 --- a/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty +++ b/graphics/pgf/contrib/circuitikz/tex/circuitikz.sty @@ -12,8 +12,8 @@ \NeedsTeXFormat{LaTeX2e} -\def\pgfcircversion{1.0.1} -\def\pgfcircversiondate{2020/02/22} +\def\pgfcircversion{1.0.2} +\def\pgfcircversiondate{2020/03/22} \ProvidesPackage{circuitikz}% [\pgfcircversiondate{} The CircuiTikz circuit drawing package version \pgfcircversion] diff --git a/graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex b/graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex index ae0f8ee642..ad86e49627 100644 --- a/graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex +++ b/graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex @@ -801,6 +801,15 @@ \pgfkeys{/tikz/nobase/.add code={}{\pgf@circuit@bpt@drawgatefalse}} \ctikzset{nobase/.add code={}{\pgf@circuit@bpt@drawgatefalse}} +% Option draw bpt with schottky base +\newif\ifpgf@circuit@bpt@schottky +\pgf@circuit@bpt@schottkyfalse +\pgfkeys{/tikz/schottky base/.add code={}{\pgf@circuit@bpt@schottkytrue}} +\ctikzset{schottky base/.add code={}{\pgf@circuit@bpt@schottkytrue}} +\pgfkeys{/tikz/no schottky base/.add code={}{\pgf@circuit@bpt@schottkyfalse}} +\ctikzset{no schottky base/.add code={}{\pgf@circuit@bpt@schottkyfalse}} +\ctikzset{tripoles/schottky base size/.initial=0.07} + % Option draw bpt without base connection \newif\ifpgf@circuit@bpt@drawbase \pgf@circuit@bpt@drawbasetrue diff --git a/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex b/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex index 9957fdee5a..672cbf78b0 100644 --- a/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex +++ b/graphics/pgf/contrib/circuitikz/tex/pgfcirctripoles.tex @@ -1699,6 +1699,7 @@ {\ctikzvalof{tripoles/#1/base height 2}\pgf@circ@res@up}} \pgfusepath{draw} + % drawing base \pgfscope \pgfpathmoveto{\pgfpoint {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left} @@ -1707,6 +1708,42 @@ {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left} {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@down}} \pgf@circ@setlinewidth{tripoles}{\pgflinewidth} + \ifpgf@circuit@bpt@schottky + % upper + \pgfpathmoveto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@up+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@up+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@up}} + % % lower + \pgfpathmoveto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@down- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@down- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/#1/base width}\pgf@circ@res@left- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/#1/base height}\pgf@circ@res@down}} + \fi \pgfusepath{draw} \endpgfscope @@ -2027,6 +2064,42 @@ {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left} {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@down-(\numdown-1)*\multistep}} \pgf@circ@setlinewidth{tripoles}{\pgflinewidth} + \ifpgf@circuit@bpt@schottky + % upper + \pgfpathmoveto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@up+(\numup-1)*\multistep}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@up+(\numup-1)*\multistep+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@up+(\numup-1)*\multistep+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left+ + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@up+(\numup-1)*\multistep}} + % lower + \pgfpathmoveto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@down-(\numdown-1)*\multistep}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@down-(\numdown-1)*\multistep- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@down-(\numdown-1)*\multistep- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen}} + \pgfpathlineto{\pgfpoint + {\ctikzvalof{tripoles/bjt/base width}\pgf@circ@res@left- + \ctikzvalof{tripoles/schottky base size}\pgf@circ@scaled@Rlen} + {\ctikzvalof{tripoles/bjt/base height}\pgf@circ@res@down-(\numdown-1)*\multistep}} + \fi \pgfsetroundcap % I like it more... \pgfusepath{draw} \endpgfscope diff --git a/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex b/graphics/pgf/contrib/circuitikz/tex/t-circuitikz.tex index f3984d02ee..ac8bbf4296 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.0.1} -\def\pgfcircversiondate{2020/02/22} +\def\pgfcircversion{1.0.2} +\def\pgfcircversiondate{2020/03/22} \writestatus{loading}{\pgfcircversiondate{} The CircuiTikz circuit drawing package version \pgfcircversion} \usemodule[tikz] |