summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pst-circ
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-06-19 20:22:56 +0000
committerKarl Berry <karl@freefriends.org>2014-06-19 20:22:56 +0000
commit4946b3d986b882382c32cae009ee1354b028df56 (patch)
tree734ff78749d6d89bbae53cbb1ee9cfe5bb9c218b /Master/texmf-dist/tex/generic/pst-circ
parent876cf99818de5f8faae4fbbf5770517d8065ae48 (diff)
pst-circ (19jun14)
git-svn-id: svn://tug.org/texlive/trunk@34316 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/pst-circ')
-rw-r--r--Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex111
1 files changed, 101 insertions, 10 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 b5f9ff8918d..b467da6286a 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 915 2014-05-18 17:23:55Z herbert $
+%% $Id: pst-circ.tex 928 2014-06-19 13:56:25Z 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.09}
-\def\filedate{2014/05/18}
+\def\fileversion{2.10}
+\def\filedate{2014/06/19}
\message{`pst-circ' v\fileversion (hv)}
%
\edef\PstAtCode{\the\catcode`\@}
@@ -79,6 +79,8 @@
\def\pst@Dstyle@close{close}
\def\pst@Dstyle@zigzag{zigzag}
\def\pst@Dstyle@diamond{diamond}
+\def\pst@Dstyle@normalCei{normalCei}
+\def\pst@Dstyle@diamondCei{diamondCei}
\def\pst@tripole@style@left{left}
\def\pst@tripole@style@right{right}
\def\pst@tripole@style@center{center}
@@ -1372,7 +1374,7 @@
/X2 exch \pst@number\psxunit div def
\pst@tempc /Y3 exch \pst@number\psyunit div def
/X3 exch \pst@number\psxunit div def
- \pst@tempc /Y4 exch \pst@number\psyunit div def
+ \pst@tempd /Y4 exch \pst@number\psyunit div def
/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
@@ -1405,7 +1407,7 @@
/X2 exch \pst@number\psxunit div def
\pst@tempc /Y3 exch \pst@number\psyunit div def
/X3 exch \pst@number\psxunit div def
- \pst@tempc /Y4 exch \pst@number\psyunit div def
+ \pst@tempd /Y4 exch \pst@number\psyunit div def
/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
@@ -1516,10 +1518,11 @@
\else\ifx\RelayNOP #4\let\pscirc@next\pst@multidipole@RelayNOP %%% mla 26
\else\ifx\OpenDipol #4\let\pscirc@next\pst@multidipole@OpenDipol% 27
\else\ifx\OpenTripol #4\let\pscirc@next\pst@multidipole@OpenTripol% 28
+ \else\ifx\arrowswitch #4\let\pscirc@next\pst@multidipole@arrowswitch% 29
\else\let\pscirc@next\ignorespaces
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi% 1..10
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%11..20
- \fi\fi\fi\fi\fi\fi\fi\fi% 21..28
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi% 21..29
\advance\pst@count@i\@ne
\advance\pst@count@iii\@ne
\pscirc@next}
@@ -1553,10 +1556,11 @@
\else\ifx\RelayNOP #1\let\pscirc@next\pst@multidipole@RelayNOP%% mla change 26
\else\ifx\OpenDipol#1\let\pscirc@next\pst@multidipole@OpenDipol% 27
\else\ifx\OpenTripol#1\let\pscirc@next\pst@multidipole@OpenTripol% 28
+ \else\ifx\arrowswitch#1\let\pscirc@next\pst@multidipole@arrowswitch% 29
\else\let\pscirc@next\ignorespaces\pst@multidipole@output
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
- \fi\fi\fi\fi\fi\fi\fi\fi
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi
\advance\pst@count@i\@ne
\advance\pst@count@iii\@ne
\pscirc@next
@@ -1864,7 +1868,17 @@
\ifx\psk@Dstyle\pst@Dstyle@diamond
\pspolygon[linewidth=1.5\pslinewidth](-0.5,0)(0,0.5)(0.5,0)(0,-0.5)
\else
- \pscircle[linewidth=1.5\pslinewidth](0,0){0.5}
+ \ifx\psk@Dstyle\pst@Dstyle@diamondCei
+ \pspolygon[linewidth=1.5\pslinewidth](-0.5,0)(0,0.5)(0.5,0)(0,-0.5)
+ \psline[linewidth=1.5\pslinewidth](-0.5,0)(0.5,0)
+ \else
+ \ifx\psk@Dstyle\pst@Dstyle@normalCei
+ \pscircle[linewidth=1.5\pslinewidth](0,0){0.5}
+ \psline[linewidth=1.5\pslinewidth](-0.5,0)(0.5,0)
+ \else
+ \pscircle[linewidth=1.5\pslinewidth](0,0){0.5}
+ \fi
+ \fi
\fi
\ifcase\psk@labelInside\or% do nothing
\psline[arrows=-,linewidth=2\pslinewidth]{->}(-0.35,0)(0.35,0)\or% case 1
@@ -1883,7 +1897,11 @@
\else
\pnode(-0.5,0){dipole@1}
\pnode(0.5,0){dipole@2}
- \pscircle[linewidth=1.5\pslinewidth](0,0){0.5}
+ \ifx\psk@Dstyle\pst@Dstyle@diamond
+ \pspolygon[linewidth=1.5\pslinewidth](-0.5,0)(0,0.5)(0.5,0)(0,-0.5)
+ \else
+ \pscircle[linewidth=1.5\pslinewidth](0,0){0.5}
+ \fi
\psline[arrows=-,linewidth=1.5\pslinewidth](0,-0.5)(0,0.5)
\fi%
}
@@ -2915,7 +2933,7 @@
/X2 exch \pst@number\psxunit div def
\pst@tempc /Y3 exch \pst@number\psyunit div def
/X3 exch \pst@number\psxunit div def
- \pst@tempc /Y4 exch \pst@number\psyunit div def
+ \pst@tempd /Y4 exch \pst@number\psyunit div def
/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 -0.4 add def
@@ -5365,6 +5383,79 @@
\fi
}
%
+%%% newtransformer %%%
+%
+\newCircDipole{newtransformer}
+\def\pst@draw@newtransformer{%
+ \pnode(-0.8,0){dipole@1}
+ \pnode(0.8,0){dipole@2}
+ \pscircle[linewidth=1.5\pslinewidth](-0.3,0){0.5}
+ \pscircle[linewidth=1.5\pslinewidth](0.3,0){0.5}
+}
+%
+
+
+\def\newtransformerquad{\pst@object{newtransformerquad}}%
+\def\newtransformerquad@i(#1)(#2)(#3)(#4)#5{%
+ \addbefore@par{dimen=middle,arm=0}%
+ \begin@ClosedObj%
+ \pst@getcoor{#1}\pst@tempa
+ \pst@getcoor{#2}\pst@tempb
+ \pst@getcoor{#3}\pst@tempc
+ \pst@getcoor{#4}\pst@tempd
+ \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
+ \pst@tempd /Y4 exch \pst@number\psyunit div def
+ /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@}
+ \rput(C@){#5}
+ \rput(C@){\pscircle[linewidth=1.5\pslinewidth](-0.3,0){0.5}
+ \pscircle[linewidth=1.5\pslinewidth](0.3,0){0.5}
+ \pnode(-1,0.3){inup@} \pnode(-1,-0.3){indown@}
+ \pnode(1,-0.3){outdown@} \pnode(1,0.3){outup@}
+ \psline(inup@)(-0.7,0.3) \psline(indown@)(-0.7,-0.3)
+ \psline(outup@)(0.7,0.3) \psline(outdown@)(0.7,-0.3)}
+ \ncangle[arrows=-,arm=0.5,angleB=180]{#1}{inup@}
+ \ncangle[arrows=-,arm=0.5,angleB=180]{#2}{indown@}
+ \ncangle[arrows=-,arm=0.5,angleB=0]{#3}{outup@}
+ \ncangle[arrows=-,arm=0.5,angleB=0]{#4}{outdown@}
+ \ncline[arrows=-,linestyle=none,fillstyle=none]{indown@}{outdown@}
+ \pcline[linestyle=none](#1)(#3)% for the end arrows
+ \pcline[linestyle=none](#2)(#4)% for the end arrows
+ \end@ClosedObj%
+ \ignorespaces%
+}
+
+
+
+\newCircDipole{arrowswitch}
+\def\pst@draw@arrowswitch{%
+ \ifx\psk@Dstyle\pst@Dstyle@close
+ \pnode(-0.5,0){dipole@1}
+ \pnode(0.5,0){dipole@2}
+ \qdisk(-0.5,0){1.5pt}
+ \qdisk(0.5,0){1.5pt}
+ \psline[arrows=-,linewidth=2\pslinewidth](-0.5,0.05)(0.5,0.05)
+ \psarc[arrowinset=0]{->}(-0.5,0){0.75}{-45}{45}
+ \else
+ \pnode(-0.55,0){dipole@1}
+ \pnode(0.5,0){dipole@2}
+ \psline[arrows=-,linewidth=2\pslinewidth](-0.5,0)(0.5,0.5)
+ \psarcn[arrowinset=0]{->}(-0.5,0){0.75}{45}{-45}
+ \pscircle[fillstyle=solid](-0.5,0){0.07}
+ \qdisk(0.5,0){1.5pt}
+ \fi
+}
+
+
+
\catcode`\@=\PstAtCode\relax
%
\endinput \ No newline at end of file