diff options
author | Karl Berry <karl@freefriends.org> | 2020-03-23 22:22:49 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-03-23 22:22:49 +0000 |
commit | e97958c8865ac786e7309d0d8752d6903743efe1 (patch) | |
tree | 6011b00c615ef058766f9a8f0c6fb644f0293d57 /Master/texmf-dist/tex/generic | |
parent | 678ada712bf6918e464ffc6cb23f27aed7b3ca21 (diff) |
circuitikz (23mar20)
git-svn-id: svn://tug.org/texlive/trunk@54506 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic')
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex | 9 | ||||
-rw-r--r-- | Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex | 73 |
2 files changed, 82 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex index ae0f8ee6426..ad86e496271 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/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/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex index 9957fdee5af..672cbf78b03 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/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 |