diff options
author | Karl Berry <karl@freefriends.org> | 2021-09-10 21:02:02 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-09-10 21:02:02 +0000 |
commit | c5121330f7413d484bdcfe5206ac682acf9ff641 (patch) | |
tree | e51681a88363240f1f0e368bcbb2cdec96c945e2 /Master/texmf-dist/tex/generic | |
parent | d47195262a5323cc776706da3caf2c198e393306 (diff) |
pst-circ (10sep21)
git-svn-id: svn://tug.org/texlive/trunk@60464 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic')
-rw-r--r-- | Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex | 264 |
1 files changed, 132 insertions, 132 deletions
diff --git a/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex b/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex index d13be6321d3..4a3e81fde05 100644 --- a/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex +++ b/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex @@ -1,4 +1,4 @@ -%% $Id: pst-circ.tex 1181 2020-05-26 13:19:14Z herbert $ +%% $Id: pst-circ.tex 210 2021-09-10 07:52:09Z herbert $ %% This is file `pst-circ.tex' %% %% IMPORTANT NOTICE: @@ -26,8 +26,8 @@ \ifx\PSTXKeyLoaded\endinput \else\input pst-xkey \fi \ifx\PSTMultidoLoaded\endinput\else\input multido.tex\fi % -\def\fileversion{2.18} -\def\filedate{2021/04/28} +\def\fileversion{2.19} +\def\filedate{2021/09/09} \message{`pst-circ' v\fileversion (hv)} % \edef\PstAtCode{\the\catcode`\@} @@ -1011,7 +1011,7 @@ \pst@getcoor{#1}\pst@tempa \pst@getcoor{#2}\pst@tempb \pst@getcoor{#3}\pst@tempc - \pnode(!% + \pnode(! 10 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def \pst@tempb /Y2 exch \pst@number\psyunit div def @@ -1020,7 +1020,7 @@ /X3 exch \pst@number\psxunit div def /XC X1 X2 lt {X3 X2} {X3 X1} ifelse add 2 div def /YC Y1 Y2 add 2 div def - XC YC){C@} + XC YC end ){C@} \rput(C@){\pst@draw@OA} \ncangle[arrows=-,arm=.5,angleA=0,angleB=180]{#1}{\ifPst@OAinvert Minus@\else Plus@\fi} \ncput[npos=2]{\pnode{\ifPst@OAinvert Minus@@\else Plus@@\fi}} @@ -1085,7 +1085,7 @@ \pst@getcoor{#1}\pst@tempa \pst@getcoor{#2}\pst@tempb \pst@getcoor{#3}\pst@tempc - \pnode(!% + \pnode(! 10 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def \pst@tempb /Y2 exch \pst@number\psyunit div def @@ -1094,7 +1094,7 @@ /X3 exch \pst@number\psxunit div def /XC X1 X2 lt {X3 X2} {X3 X1} ifelse add 2 div def /YC Y1 Y2 add 2 div def - XC YC){C@} + XC YC end){C@} \rput(C@){\pst@draw@GM} \ncangle[arrows=-,arm=.5,angleA=0,angleB=180]{#1}{\ifPst@GMinvert Minus@\else Plus@\fi} \ncput[npos=2]{\pnode{\ifPst@GMinvert Minus@@\else Plus@@\fi}} @@ -1177,18 +1177,18 @@ \else \pst@getcoor{#1}\pst@tempA% \pnode(! - \pst@tempA /YB exch \pst@number\psyunit div def - /XB exch \pst@number\psxunit div def + \pst@tempA /YB_t exch \pst@number\psyunit div def + /XB_t exch \pst@number\psxunit div def /basesep \Pst@basesep\space \pst@number\psxunit div def - XB basesep \Pst@TRot\space cos mul add - YB basesep \Pst@TRot\space sin mul add){TBaseNode}% base node + XB_t basesep \Pst@TRot\space cos mul add + YB_t basesep \Pst@TRot\space sin mul add){TBaseNode}% base node \fi % Base \rput[c]{\Pst@TRot}(! - \pst@tempA /YB exch \pst@number\psyunit div def - /XB exch \pst@number\psxunit div def + \pst@tempA /YB_t exch \pst@number\psyunit div def + /XB_t exch \pst@number\psxunit div def /basesep \Pst@basesep\space \pst@number\psxunit div def - XB basesep \Pst@TRot\space cos mul add - YB basesep \Pst@TRot\space sin mul add){% + XB_t basesep \Pst@TRot\space cos mul add + YB_t basesep \Pst@TRot\space sin mul add){% \ifdim180pt=\Pst@TRot pt\relax % rotate 180? \ifPst@transistorcircle\pscircle(0.3,0){0.7}\fi % circle drawing \ifx\psk@Ttype\pst@Ttype@NPN\relax % NPN @@ -1419,9 +1419,9 @@ /X3 exch \pst@number\psxunit div def /LR X1 X2 lt { false }{ true } ifelse def % change left-right /basesep \Pst@basesep\space \pst@number\psxunit div def - /XBase X1 basesep \Pst@TRot\space cos mul add def - /YBase Y1 basesep \Pst@TRot\space sin mul add def - XBase YBase ){@@base}% base node + /XB_tase X1 basesep \Pst@TRot\space cos mul add def + /YB_tase Y1 basesep \Pst@TRot\space sin mul add def + XB_tase YB_tase ){@@base}% base node % \global\Pst@temptrue% \transistor@ii(@@base){@@emitter}{@@collector}% @@ -1493,7 +1493,7 @@ \pst@getcoor{#1}\pst@tempa \pst@getcoor{#2}\pst@tempb \pst@getcoor{#3}\pst@tempc - \pnode(!% + \pnode(! 10 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def \pst@tempb /Y2 exch \pst@number\psyunit div def @@ -1502,7 +1502,7 @@ /X3 exch \pst@number\psxunit div def /XC X1 X2 add 2 div def /YC Y2 def - XC YC){C@} + XC YC end ){C@} \rput(C@){\pst@draw@Tswitch} \ncangle[arrows=-,arm=0.5,angleB=180]{#1}{Tswi@left} \ncangle[arrows=-,arm=0.5,angleB=0]{#2}{Tswi@right} @@ -1524,35 +1524,35 @@ \pst@getcoor{#1}\pst@tempa \pst@getcoor{#2}\pst@tempb \pst@getcoor{#3}\pst@tempc - \pnode(!% - \pst@tempa /Y1 exch \pst@number\psyunit div def - /X1 exch \pst@number\psxunit div def - \pst@tempb /Y2 exch \pst@number\psyunit div def - /X2 exch \pst@number\psxunit div def - \pst@tempc /Y3 exch \pst@number\psyunit div def - /X3 exch \pst@number\psxunit div def - /dx X2 X1 sub def - /dy Y2 Y1 sub def - dx 2 div X1 add - dy 2 div Y1 add ){Center@} + \pnode(! tx@CircDict begin + \pst@tempa /Y1_p exch \pst@number\psyunit div def + /X1_p exch \pst@number\psxunit div def + \pst@tempb /Y2_p exch \pst@number\psyunit div def + /X2_p exch \pst@number\psxunit div def + \pst@tempc /Y3_p exch \pst@number\psyunit div def + /X3_p exch \pst@number\psxunit div def + /dx X2_p X1_p sub def + /dy Y2_p Y1_p sub def + dx 2 div X1_p add + dy 2 div Y1_p add end ){Center@} \pst@getcoor{Center@}\pst@tempd - \pnode(!% - \pst@tempd /Y4 exch \pst@number\psyunit div def - /X4 exch \pst@number\psxunit div def + \pnode(! tx@CircDict begin + \pst@tempd /Y4_p exch \pst@number\psyunit div def + /X4_p exch \pst@number\psxunit div def dx abs 0.01 lt{ - X3 Y4 + X3_p Y4_p }{dy abs 0.01 lt { - X4 Y3 + X4_p Y3_p }{/m dy dx div def - /x Y4 Y3 sub m X3 mul add X4 m div add m 1 m div add div def - x dup X3 sub m mul Y3 add + /x_p Y4_p Y3_p sub m X3_p mul add X4_p m div add m 1 m div add div def + x_p dup X3_p sub m mul Y3_p add } ifelse - }ifelse){@tempNodeB} - \pnode(!% + }ifelse end ){@tempNodeB} + \pnode(! tx@CircDict begin /Alpha dy dx atan def /dx Alpha sin 0.25 mul def /dy Alpha cos 0.25 mul def - Y3 Y2 gt {X4 dx sub Y4 dy add}{X4 dx add Y4 dy sub}ifelse ){@tempNodeC} + Y3_p Y2_p gt { X4_p dx sub Y4_p dy add}{X4_p dx add Y4_p dy sub}ifelse end ){@tempNodeC} \psline[arrows=->,arrowsize=0.2](#3)(@tempNodeB)(@tempNodeC) \pcline[linestyle=none](#1)(#3)% for the endarrows \end@ClosedObj% @@ -1578,7 +1578,7 @@ \pst@getcoor{#2}\pst@tempB \pst@getcoor{#3}\pst@tempC \pst@getcoor{#4}\pst@tempD - \pnode(!% + \pnode(! 10 dict begin \pst@tempA /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def \pst@tempB /Y2 exch \pst@number\psyunit div def @@ -1589,7 +1589,7 @@ /X4 exch \pst@number\psxunit div def /XC X1 X2 lt {X2} {X1} ifelse X3 X4 lt {X3} {X4} ifelse add 2 div def /YC Y1 Y3 lt {Y1} {Y3} ifelse Y2 Y4 lt {Y2} {Y4} ifelse add 2 div def - XC YC){C@} + XC YC end){C@} \rput(C@){\pst@draw@transformer} \pnode(#1){@endA}\pnode(#2){@endB}\pnode(#3){@endC}\pnode(#4){@endD}% \ncangle[arrows=-,arm=0.5,angleB=90]{@endA}{inup@} @@ -1627,7 +1627,7 @@ \pst@getcoor{#2}\pst@tempb \pst@getcoor{#3}\pst@tempc \pst@getcoor{#4}\pst@tempd - \pnode(!% + \pnode(! 10 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def \pst@tempb /Y2 exch \pst@number\psyunit div def @@ -1638,7 +1638,7 @@ /X4 exch \pst@number\psxunit div def /XC X1 X2 lt {X2} {X1} ifelse X3 X4 lt {X3} {X4} ifelse add 2 div def /YC Y1 Y3 lt {Y1} {Y3} ifelse Y2 Y4 lt {Y2} {Y4} ifelse add 2 div def - XC YC){C@} + XC YC end){C@} \rput(C@){\pst@draw@optoCoupler} \ncangle[arrows=-,arm=0.5,angleB=90]{#1}{inup@} \ncangle[arrows=-,arm=0.5,angleB=-90]{#2}{indown@} @@ -1660,7 +1660,7 @@ \pst@getcoor{#2}\pst@tempb \pst@getcoor{#3}\pst@tempc \pst@getcoor{#4}\pst@tempd - \pnode(!% + \pnode(! 10 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def \pst@tempb /Y2 exch \pst@number\psyunit div def @@ -1671,7 +1671,7 @@ /X4 exch \pst@number\psxunit div def /XC X1 X2 lt {X2} {X1} ifelse X3 X4 lt {X3} {X4} ifelse add 2 div def /YC Y1 Y3 lt {Y1} {Y3} ifelse Y2 Y4 lt {Y2} {Y4} ifelse add 2 div def - XC YC){C@} + XC YC end){C@} \rput(C@){#5} \rput(C@){\psframe[linewidth=1.5\pslinewidth](-1.5,-1.2)(1.5,1.2) \pnode(-1.5,1){inup@} \pnode(-1.5,-1){indown@} @@ -2401,73 +2401,73 @@ \pst@getcoor{#2}\pst@tempa \ifPst@logicChangeLR\def\logic@LR{true}\else\def\logic@LR{false}\fi \pstVerb{ - /YA \pst@tempa exch pop \pst@number\psyunit div def - /YB YA \psk@logic@height\space add def + /YA_log \pst@tempa exch pop \pst@number\psyunit div def + /YB_log YA_log \psk@logic@height\space add def \logic@LR {% - /XB \pst@tempa pop \pst@number\psxunit div def - /XA XB \psk@logic@width\space add def + /XB_log \pst@tempa pop \pst@number\psxunit div def + /XA_log XB_log \psk@logic@width\space add def }{% - /XA \pst@tempa pop \pst@number\psxunit div def - /XB XA \psk@logic@width\space add def + /XA_log \pst@tempa pop \pst@number\psxunit div def + /XB_log XA_log \psk@logic@width\space add def } ifelse - /dy YB YA sub def + /dy YB_log YA_log sub def } \ifx\psk@logic@type\pst@logic@type@RS%---------------- RS ----------------- - \pnode(! XA YA dy 4 div add){#3S} - \pnode(! XA YA dy 4 div 3 mul add){#3R} - \psline(#3R)(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 4 div 3 mul add) - \psline(#3S)(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 4 div add) + \pnode(! XA_log YA_log dy 4 div add){#3S} + \pnode(! XA_log YA_log dy 4 div 3 mul add){#3R} + \psline(#3R)(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 4 div 3 mul add) + \psline(#3S)(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 4 div add) \uput[\ifPst@logicChangeLR 180\else 0\fi](#3R){\psk@logic@nodestyle R} \uput[\ifPst@logicChangeLR 180\else 0\fi](#3S){\psk@logic@nodestyle S} - \pnode(! XB 0.2 \logic@LR {sub}{add} ifelse YA dy 4 div add){#3Qneg} - \pscircle[linewidth=0.5pt](! XB 0.1 \logic@LR {sub}{add} ifelse YA dy 4 div add){0.1} - \pnode(! XB YA dy 4 div 3 mul add){#3Q} - \psline(#3Q)(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 4 div 3 mul add) - \psline(#3Qneg)(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 4 div add) + \pnode(! XB_log 0.2 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){#3Qneg} + \pscircle[linewidth=0.5pt](! XB_log 0.1 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){0.1} + \pnode(! XB_log YA_log dy 4 div 3 mul add){#3Q} + \psline(#3Q)(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 4 div 3 mul add) + \psline(#3Qneg)(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 4 div add) \uput[\ifPst@logicChangeLR 0\else 180\fi](#3Q){\psk@logic@nodestyle Q} \uput{0.4}[\ifPst@logicChangeLR 0\else 180\fi](#3Qneg){\psk@logic@nodestyle $\mathrm{\overline{Q}}$} \ifPst@logicShowDot - \qdisk(! XA \psk@logic@wireLength\space \logic@LR {add}{sub} ifelse YA dy 4 div 3 mul add){3pt} - \qdisk(! XA \psk@logic@wireLength\space \logic@LR {add}{sub} ifelse YA dy 4 div add){3pt} - \qdisk(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 4 div 3 mul add){3pt} - \qdisk(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 4 div add){3pt} + \qdisk(! XA_log \psk@logic@wireLength\space \logic@LR {add}{sub} ifelse YA_log dy 4 div 3 mul add){3pt} + \qdisk(! XA_log \psk@logic@wireLength\space \logic@LR {add}{sub} ifelse YA_log dy 4 div add){3pt} + \qdisk(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 4 div 3 mul add){3pt} + \qdisk(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 4 div add){3pt} \fi \rput[b](!% - /dx XB XA sub 2 div def - XA dx add YA 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} + /dx XB_log XA_log sub 2 div def + XA_log dx add YA_log 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} \else \ifx\psk@logic@type\pst@logic@type@D%---------------- D ----------------- - \pnode(! XA YA dy 2 div add){#3C} - \pnode(! XA YA dy 4 div 3 mul add){#3D} - \psline(#3D)(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 4 div 3 mul add) - \psline(#3C)(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 2 div add) - \psline[linewidth=0.5pt](! XA YA dy 2 div add 0.15 add) - (! XA 0.4 \logic@LR {sub}{add} ifelse YA dy 2 div add)(! XA YA dy 2 div add 0.15 sub) + \pnode(! XA_log YA_log dy 2 div add){#3C} + \pnode(! XA_log YA_log dy 4 div 3 mul add){#3D} + \psline(#3D)(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 4 div 3 mul add) + \psline(#3C)(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 2 div add) + \psline[linewidth=0.5pt](! XA_log YA_log dy 2 div add 0.15 add) + (! XA_log 0.4 \logic@LR {sub}{add} ifelse YA_log dy 2 div add)(! XA_log YA_log dy 2 div add 0.15 sub) \uput[\ifPst@logicChangeLR 180\else 0\fi](#3D){\psk@logic@nodestyle D} \uput{0.5}[\ifPst@logicChangeLR 180\else 0\fi](#3C){\psk@logic@nodestyle C} - \pnode(! XB 0.2 \logic@LR {sub}{add} ifelse YA dy 4 div add){#3Qneg} - \pscircle[linewidth=0.5pt](! XB 0.1 \logic@LR {sub}{add} ifelse YA dy 4 div add){0.1} - \pnode(! XB YA dy 4 div 3 mul add){#3Q} - \psline(#3Q)(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div 3 mul add) - \psline(#3Qneg)(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div add) + \pnode(! XB_log 0.2 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){#3Qneg} + \pscircle[linewidth=0.5pt](! XB_log 0.1 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){0.1} + \pnode(! XB_log YA_log dy 4 div 3 mul add){#3Q} + \psline(#3Q)(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div 3 mul add) + \psline(#3Qneg)(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div add) \uput[\ifPst@logicChangeLR 0\else 180\fi](#3Q){\psk@logic@nodestyle Q} \uput{0.4}[\ifPst@logicChangeLR 0\else 180\fi](#3Qneg){\psk@logic@nodestyle $\mathrm{\overline{Q}}$} \ifPst@logicShowDot - \qdisk(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 4 div 3 mul add){3pt} - \qdisk(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 2 div add){3pt} - \qdisk(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div 3 mul add){3pt} - \qdisk(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div add){3pt} + \qdisk(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 4 div 3 mul add){3pt} + \qdisk(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 2 div add){3pt} + \qdisk(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div 3 mul add){3pt} + \qdisk(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){3pt} \fi \rput[b](!% - /dx XB XA sub 2 div def - XA dx add YA 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} + /dx XB_log XA_log sub 2 div def + XA_log dx add YA_log 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} \else \ifx\psk@logic@type\pst@logic@type@JK%---------------- JK ----------------- \multido{\n=1+1}{\psk@logic@JInput}{% \pnode(!% /Step dy 2 div \psk@logic@JInput\space div def /yNew Step \n\space mul def - XA YA yNew add Step 2 div sub){#3J\n} + XA_log YA_log yNew add Step 2 div sub){#3J\n} \pst@getcoor{#3J\n}\pst@tempc \uput[\ifPst@logicChangeLR 180\else 0\fi](#3J\n){\psk@logic@nodestyle J\n} \pnode(! @@ -2483,7 +2483,7 @@ \pnode(!% /Step dy 2 div \psk@logic@KInput\space div def /yNew Step \n\space mul def - XA YB yNew sub Step 2 div add){#3K\n} + XA_log YB_log yNew sub Step 2 div add){#3K\n} \pst@getcoor{#3K\n}\pst@tempc \uput[\ifPst@logicChangeLR 180\else 0\fi](#3K\n){\psk@logic@nodestyle K\n} \pnode(! @@ -2495,33 +2495,33 @@ \qdisk(tempK\n){3pt} \fi } - \psline[linewidth=0.5pt](! XA YA dy 2 div add 0.15 add) - (! XA 0.4 \logic@LR {sub}{add} ifelse YA dy 2 div add)(! XA YA dy 2 div add 0.15 sub) - \pnode(! XA YA dy 2 div add){#3C} - \psline(#3C)(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 2 div add) + \psline[linewidth=0.5pt](! XA_log YA_log dy 2 div add 0.15 add) + (! XA_log 0.4 \logic@LR {sub}{add} ifelse YA_log dy 2 div add)(! XA_log YA_log dy 2 div add 0.15 sub) + \pnode(! XA_log YA_log dy 2 div add){#3C} + \psline(#3C)(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 2 div add) \uput{0.5}[\ifPst@logicChangeLR 180\else 0\fi](#3C){\psk@logic@nodestyle C} - \pnode(! XB 0.2 \logic@LR {sub}{add} ifelse YA dy 4 div add){#3Qneg} - \pscircle[linewidth=0.5pt](! XB 0.1 \logic@LR {sub}{add} ifelse YA dy 4 div add){0.1} - \pnode(! XB YA dy 4 div 3 mul add){#3Q} - \psline(#3Q)(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div 3 mul add) - \psline(#3Qneg)(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div add) + \pnode(! XB_log 0.2 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){#3Qneg} + \pscircle[linewidth=0.5pt](! XB_log 0.1 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){0.1} + \pnode(! XB_log YA_log dy 4 div 3 mul add){#3Q} + \psline(#3Q)(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div 3 mul add) + \psline(#3Qneg)(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div add) \uput[\ifPst@logicChangeLR 0\else 180\fi](#3Q){\psk@logic@nodestyle Q} \uput{0.4}[\ifPst@logicChangeLR 0\else 180\fi](#3Qneg){\psk@logic@nodestyle $\mathrm{\overline{Q}}$} \ifPst@logicShowDot - \qdisk(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div 3 mul add){3pt} - \qdisk(! XB 0.5 \logic@LR {sub}{add} ifelse YA dy 4 div add){3pt} - \qdisk(! XA 0.5 \logic@LR {add}{sub} ifelse YA dy 2 div add){3pt} + \qdisk(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div 3 mul add){3pt} + \qdisk(! XB_log 0.5 \logic@LR {sub}{add} ifelse YA_log dy 4 div add){3pt} + \qdisk(! XA_log 0.5 \logic@LR {add}{sub} ifelse YA_log dy 2 div add){3pt} \fi \rput[b](!% - /dx XB XA sub 2 div def - XA dx add YA 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} + /dx XB_log XA_log sub 2 div def + XA_log dx add YA_log 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} \else%---------------- default AND/NAND/OR/NOR/NOT/EXOR/ENOR ----------------- \ifx\psk@logic@type\pst@logic@type@not \def\@nMax{1}\else \def\@nMax{\psk@logic@nInput}\fi \multido{\n=1+1}{\@nMax}{% \pnode(!% /Step dy \psk@logic@nInput\space div def /yNew Step \n\space mul def - XA YA yNew add \@nMax\space 1 gt {Step 2 div sub} if){#3\n} + XA_log YA_log yNew add \@nMax\space 1 gt {Step 2 div sub} if){#3\n} \pst@getcoor{#3\n}\pst@tempc \pnode(! /YC \pst@tempc exch pop \pst@number\psyunit div def @@ -2537,10 +2537,10 @@ \ifx\psk@logic@type\pst@logic@type@nand\else \ifx\psk@logic@type\pst@logic@type@nor\else \ifx\psk@logic@type\pst@logic@type@exnor\else - \pnode(! XB YA dy 2 div add){#3Q} - \psline(#3Q)(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 2 div add)% output + \pnode(! XB_log YA_log dy 2 div add){#3Q} + \psline(#3Q)(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 2 div add)% output \ifPst@logicShowDot - \qdisk(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 2 div add){3pt} + \qdisk(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 2 div add){3pt} \fi \ifPst@logicShowNode \uput[\ifPst@logicChangeLR 0\else 180\fi](#3Q){\psk@logic@nodestyle Q} @@ -2552,11 +2552,11 @@ \ifx\psk@logic@type\pst@logic@type@and\else% NotX output \ifx\psk@logic@type\pst@logic@type@or\else \ifx\psk@logic@type\pst@logic@type@exor\else - \pnode(! XB 0.2 \logic@LR {sub}{add} ifelse YA dy 2 div add){#3Q} - \pscircle[linewidth=0.5pt](! XB 0.1 \logic@LR {sub}{add} ifelse YA dy 2 div add){0.1} - \psline(#3Q)(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 2 div add)% output + \pnode(! XB_log 0.2 \logic@LR {sub}{add} ifelse YA_log dy 2 div add){#3Q} + \pscircle[linewidth=0.5pt](! XB_log 0.1 \logic@LR {sub}{add} ifelse YA_log dy 2 div add){0.1} + \psline(#3Q)(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 2 div add)% output \ifPst@logicShowDot - \qdisk(! XB \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA dy 2 div add){3pt} + \qdisk(! XB_log \psk@logic@wireLength\space \logic@LR {sub}{add} ifelse YA_log dy 2 div add){3pt} \fi \ifPst@logicShowNode \uput{0.4}[\ifPst@logicChangeLR 0\else 180\fi](#3Q){\psk@logic@nodestyle Q} @@ -2590,11 +2590,11 @@ \fi \fi \rput(!% - /dx XB XA sub \psk@logic@symbolpos\space mul def - XA dx add YB 0.3 sub){\if$\psk@logic@symbolstyle$\else\psk@logic@symbolstyle\textbf{\logic@type}\fi} + /dx XB_log XA_log sub \psk@logic@symbolpos\space mul def + XA_log dx add YB_log 0.3 sub){\if$\psk@logic@symbolstyle$\else\psk@logic@symbolstyle\textbf{\logic@type}\fi} \rput[b](!% - /dx XB XA sub 2 div def - XA dx add YA 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} + /dx XB_log XA_log sub 2 div def + XA_log dx add YA_log 0.1 add){\if$\psk@logic@labelstyle$\else\psk@logic@labelstyle#3\fi} \fi \fi \fi% end of no special RS/JK/D @@ -2772,18 +2772,18 @@ \psframe(-0.15,-0.3)(0.15,0.3) \psline(0.2,-0.35)(0.2,0.35) \else - \pscurve[linewidth=1.5\pslinewidth]{c-c}(-0.3,0.000)(-0.225,0.088375)(-0.15,0.1250)(-0.075,0.088375)% - (0,0.000)(0.075,-0.088375)(0.15,-0.125)(0.225,-0.088375)(0.3,0.000) + \pscurve[linewidth=1.5\pslinewidth]{cc}(-0.3,0.000)(-0.225,0.088375)(-0.15,0.1250)(-0.075,0.088375)% + (0,0.000)(0.075,-0.088375)(0.15,-0.125)(0.225,-0.088375)(0.3,0.000) \fi \ifx\psk@LOoutput\pst@LOoutput@left \pst@getcoor{#3}\pst@tempa - \pnode(!% + \pnode(! 5 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def /XC X1 def /YC Y1 -0.6 add def - XC YC){C@} - \rput[t]{#2}(C@){#4} + XC YC end){C@osciA} + \rput[t]{#2}(C@osciA){#4} \ifPst@inputarrow \psline[arrows=->,arrowinset=0](-0.5,0)(-1,0) \else @@ -2792,13 +2792,13 @@ \fi \ifx\psk@LOoutput\pst@LOoutput@top \pst@getcoor{#3}\pst@tempa - \pnode(!% + \pnode(! 5 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def /XC X1 def /YC Y1 -0.6 add def - XC YC){C@} - \rput[t]{#2}(C@){#4} + XC YC end ){C@osciB} + \rput[t]{#2}(C@osciB){#4} \ifPst@inputarrow \psline[arrows=->,arrowinset=0](0,0.5)(0,1) \else @@ -2807,13 +2807,13 @@ \fi \ifx\psk@LOoutput\pst@LOoutput@right \pst@getcoor{#3}\pst@tempa - \pnode(!% + \pnode(! 5 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def /XC X1 def /YC Y1 -0.6 add def - XC YC){C@} - \rput[t]{#2}(C@){#4} + XC YC end){C@osciC} + \rput[t]{#2}(C@osciC){#4} \ifPst@inputarrow \psline[arrows=->,arrowinset=0](0.5,0)(1,0) \else @@ -2822,21 +2822,21 @@ \fi \ifx\psk@LOoutput\pst@LOoutput@bottom \pst@getcoor{#3}\pst@tempa - \pnode(!% + \pnode(! 5 dict begin \pst@tempa /Y1 exch \pst@number\psyunit div def /X1 exch \pst@number\psxunit div def /XC X1 def /YC Y1 0.6 add def - XC YC){C@} - \rput[b]{#2}(C@){#4} + XC YC end){C@osciD} + \rput[b]{#2}(C@osciD){#4} \ifPst@inputarrow \psline[arrows=->,arrowinset=0](0,-0.5)(0,-1) \else \psline(0,-0.5)(0,-1) \fi \fi - }}% - \ignorespaces% + } + }\ignorespaces } % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -5441,14 +5441,14 @@ \pst@draw@dipole{#1}{#2}{#3}{#4}\pst@draw@vac \pst@getcoor{#2}\pst@tempa \pst@getcoor{#3}\pst@tempb - \rput(! % + \rput(! 5 dict begin \pst@tempa \pst@number{\psyunit} div /YA ED \pst@number{\psxunit} div /XA ED \pst@tempb \pst@number{\psyunit} div /YB ED \pst@number{\psxunit} div /XB ED XA XB add 2 div YA YB add 2 div - ){\pscurve(-0.25,0)(-0.125,0.25)(0.125,-0.25)(0.25,0)}}\ignorespaces} + end ){\pscurve(-0.25,0)(-0.125,0.25)(0.125,-0.25)(0.25,0)}}\ignorespaces} % \def\pst@draw@vac{{% \pnode(-0.5,0){dipole@1} |