texlive[74818] Master/texmf-dist/doc/latex/circuit-macros:
commits+karl at tug.org
commits+karl at tug.org
Tue Apr 1 22:02:46 CEST 2025
Revision: 74818
https://tug.org/svn/texlive?view=revision&revision=74818
Author: karl
Date: 2025-04-01 22:02:45 +0200 (Tue, 01 Apr 2025)
Log Message:
-----------
circuit-macros (1apr25)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/circuit-macros/CHANGES
trunk/Master/texmf-dist/doc/latex/circuit-macros/Copying
trunk/Master/texmf-dist/doc/latex/circuit-macros/README
trunk/Master/texmf-dist/doc/latex/circuit-macros/darrow.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ArrestersMan.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Circuit_macros.bib
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Circuit_macros.pdf
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/DiodesMan.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Makefile
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ResistorsMan.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/SourcesMan.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Version.tex
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/body.tex
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/defines.tex
trunk/Master/texmf-dist/doc/latex/circuit-macros/dpictools.pic
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Diodes.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/LT3724.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Loglog.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Makefile
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Resistors.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Sources.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Variable.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/cbresistor.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/control.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/DiodesDPV.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Makefile
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/README_svg
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/ResistorsDPV.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/SourcesDPV.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/controlDPV.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPV.htmx
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPVs.htmx
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/pwrsupplyDPV.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/examples.pdf
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Flow2.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/files.tex
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ics.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/mf/cct.mf
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/xfig/xfiglib.fig
trunk/Master/texmf-dist/doc/latex/circuit-macros/gpic.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/lib3D.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/libSLD.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/libcct.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/libgen.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/liblog.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/mfpic.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/mpost.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/pdf.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/pgf.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/postscript.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/psfrag.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/pstricks.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/svg.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/xfig.m4
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/heatsinkMan.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/PS50.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Reg723.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Reg723DPV.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex02.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex17.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/SPS.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Traintracks.m4
Removed Paths:
-------------
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ex02.tex
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex02.m4
trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex17.m4
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/CHANGES
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/CHANGES 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/CHANGES 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,5 +1,8 @@
CHANGES
+Version 10.8: New macros vec_r, rvec_r, adjust, and heatsink.
+ Small changes and additions to sarrow, arrester, Darlington, resistor,
+ diode, hatchbox, transformer, source, consource.
Version 10.7: Minor changes and additions to ics.m4 and macros polygon,
jack, LH_symbol, LT_symbol, opamp, amp, sarrow, dashline. Extra
examples.
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/Copying
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/Copying 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/Copying 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,4 +1,4 @@
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/README 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/README 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,5 +1,5 @@
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
@@ -117,9 +117,9 @@
from within the tex document source as described in the manual. For
near-immediate viewing of the results, three windows can be kept open:
one in which to edit the source, one to process the source and produce
- postscript or pdf, and a viewer such as gv or GSview 5.0. A window
- displaying the manual is also useful when you are composing a significant
- diagram.
+ postscript or pdf, and a viewer such as gv, GSview 5.0, or Okular, for
+ example. A window displaying the manual is also useful when you are
+ composing a significant diagram.
INSTALLATION AND TESTING: See the INSTALL file.
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/darrow.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/darrow.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/darrow.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
darrow.m4 Macros for double lines and arrows
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ArrestersMan.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ArrestersMan.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ArrestersMan.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,8 +1,10 @@
.PS
# ArrestersMan.m4
+# https://tex.stackexchange.com/questions/733192/spark-gap-in-circuit-package-and-voltage-arrow-capacitor
cct_init
sep = 0.2
+ rsep = 0.15
R1: [
arrester
@@ -42,35 +44,58 @@
move sep
arrester(,S)
{`"\tt \ldots(,S)"' at last line.c+(0,-0.2)}
+ ] with .nw at R1.sw+(0,-rsep)
- ] with .nw at R1.sw+(0,-0.2)
-
define(`Dlabels',
`{ thinlines_
- arrow <- from A.A up 0.1 left 0.1; "\sl A" rjust
- arrow <- from A.B up 0.1 right 0.1; "\sl B" ljust
- arrow <- from A.G up 0.05 right 0.15; "\sl G" ljust
+ arrow <- from last [].A up 0.1 left 0.1; "\sl A" rjust
+ arrow <- from last [].B up 0.1 right 0.1; "\sl B" ljust
+ arrow <- from last [].G up 0.05 right 0.15; "\sl G" ljust
thicklines_ }')
-[
+R3: [
arrester(,E)
{`"\tt \ldots(,E)"' at last line.c+(0,-0.25)}
move up_ 0.1 then right_ sep
- A: arrester(,DE,,,fill_(0.95))
- {`"\tt \ldots(,DE,{,},"' wid 61bp__ at A.A+(-0.1,-0.40) ljust \
+ DE: arrester(,DE,,,fill_(0.95))
+ {`"\tt \ldots(,DE,{,},"' wid 61bp__ at last [].A+(-0.1,-0.40) ljust \
`"\tt fill\_(0.95))"' ljust }
Dlabels
- move down_ 0.1 then right_ sep*3
- A: arrester(,DS)
+# move down_ 0.1 then right_ sep*3
+ move right_ sep*3
+ arrester(,DS)
{`"\tt \ldots(,DS)"' at last [].s+(0,-0.1)}
Dlabels
move sep*3
- A: arrester(,DEL)
+ DEL: arrester(,DEL)
{`"\tt \ldots(,DEL)"' at last [].s+(0,-0.1)}
Dlabels
move sep*3
- A: arrester(,DSL)
- {`"\tt \ldots(,DSL)"' at last [].s+(0,-0.1)}
- Dlabels
- ] with .nw at R2.sw+(0,-0.2)
+ DSL: arrester(up_ dimen_,DSL)
+ {`"\tt \ldots(up\_ dimen\_,DSL)"' at last [].s+(0,-0.1)}
+ { thinlines_
+ arrow <- from DSL.A up 0.1 left 0.1; "\sl A" rjust
+ arrow <- from DSL.B down 0.1 right 0.1; "\sl B" ljust
+ arrow <- from DSL.G up 0.05 left 0.15; "\sl G" rjust
+ thicklines_ }
+ ] with .nw at R2.sw+(0,-rsep)
+[ moveht *= 0.6
+ { arrester(,,:dimen_/5,:dimen_/3,shaded "red")
+ `"\tt arrester(,{,}:dimen\_/5,:dimen\_/3,shaded \"red\")"' ljust }
+# move down_; right_
+# { arrester(,,,,shaded "red" outlined "red")
+# `"\tt arrester(,{,},{,}shaded \"red\" outlined \"red\")"' ljust }
+ move down_; right_
+ { S: arrester(,S,,,shaded "yellow")
+ `"\tt arrester(,S,{,},shaded \"yellow\")"' ljust }
+ move down_; right_
+ { Gg: arrester(,g,,:dimen_/6,shaded "red")
+ `"\tt arrester(,g{,},:dimen\_/6,shaded \"red\")"' ljust }
+# move down_; right_
+# { M: arrester(,M,,:dimen_/8,shaded "orange")
+# `"\tt arrester(,M{,},:dimen\_/8,shaded \"orange\")"' ljust }
+ move down_; right_
+ { C: arrester(,C,,,shaded "blue")
+ `"\tt arrester(,C,{,},shaded \"blue\")"' ljust }
+ ] with .nw at R3.sw+(0,-rsep)
.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Circuit_macros.bib
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Circuit_macros.bib 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Circuit_macros.bib 2025-04-01 20:02:45 UTC (rev 74818)
@@ -106,7 +106,7 @@
@book{Landauer95,
author={Landauer, Thomas K.},
title={The Trouble with Computers},
-address={Cambridge},
+address={Cambridge, Massachusetts},
publisher={MIT Press},
year={1995}}
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Circuit_macros.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/DiodesMan.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/DiodesMan.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/DiodesMan.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -24,8 +24,10 @@
}
move right_ 2.0
-{ {diode(,K) ; move ; "`{\tt diode(,K)}'" ljust}
+{ {diode(,z) ; move ; "`{\tt diode(,z)}'" ljust}
move down 0.2; right_
+ {diode(,K) ; move ; "`{\tt diode(,K)}'" ljust}
+ move down 0.2; right_
{diode(,ZK) ; move ; "`{\tt diode(,ZK)}'" ljust}
move down 0.2; right_
{diode(,CR) ; move ; "`{\tt diode(,CR)}'" ljust}
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Makefile
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Makefile 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Makefile 2025-04-01 20:02:45 UTC (rev 74818)
@@ -25,7 +25,8 @@
VariableMan.tex WindingsMan.tex Workflow.tex XformMan.tex \
arrowex.tex \
bitr.tex bi_trans.tex bistableMan.tex \
- currents.tex eboxdims.tex fbfilter.tex fetMan.tex heaterMan.tex \
+ currents.tex eboxdims.tex fbfilter.tex fetMan.tex \
+ heaterMan.tex heatsinkMan.tex \
lrarrows.tex MoreTableMan.tex mplex.tex opampex.tex quick.tex \
sampleIC.tex stringdims.tex thyristorMan.tex ujtMan.tex \
woodchips.tex
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ResistorsMan.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ResistorsMan.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/ResistorsMan.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -26,7 +26,9 @@
{E:resistor(,,E) ; move ; "`\tt $\ldots$(,{,}E) $\equiv$ ebox'" ljust}
}
move down vm*1.1; right_
-{ {ebox(,,,0.9) ; move ;"`{\tt ebox(,{,},0.9)}'" ljust}
+{
+ {T:resistor(,,T) ; move ;"`{\tt $\ldots$(,{,}T)}'" ljust}
+# {ebox(,,,0.9) ; move ;"`{\tt ebox(,{,},0.9)}'" ljust}
move right_ hm
{ebox(,wdth=0.2;box=dashed shaded "green";text="H") ; move
"`\shortstack[l]{\tt ebox(,wdth=0.2;box=dashed shaded \"green\";\\' \
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/SourcesMan.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/SourcesMan.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/SourcesMan.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -12,10 +12,12 @@
{source(,I) ; move ; "`\tt source(,I)'" ljust} NL
{C:source(,i) ; move ; "`\tt source(,i)'" ljust} NL
{D:source(,ti) ; move ; "`\tt source(,ti)'" ljust} NL
+ {source(,dci) ; move ; "`\tt source(,dci)'" ljust} NL
{source(,ii) ; move ; "`\tt source(,ii)'" ljust} NL
{source(,V) ; move ; "`\tt source(,V)'" ljust} NL
{source(,v) ; move ; "`\tt source(,v)'" ljust} NL
{source(,tv) ; move ; "`\tt source(,tv)'" ljust} NL
+ {source(,dcv) ; move ; "`\tt source(,dcv)'" ljust} NL
{source(,SC) ; move ; "`\tt source(,SC)'" ljust} NL
{source(,AC); move ; "`\tt source(,AC)'" ljust} NL
{source(,X) ; move ; "`\tt source(,X)'" ljust} NL
@@ -22,8 +24,6 @@
{source(,G) ; move ; "`\tt source(,G)'" ljust} NL
{source(,Q) ; move ; "`\tt source(,Q)'" ljust} NL #(0.3)
{source(,F) ; move ; "`\tt source(,F)'" ljust} NL
- {geiger(,,,,fill_(0.9)); move;
- "`\tt \shortstack[l]{geiger(,{,},{,}\\ fill\_(0.9))}'" ljust} NL
}
move right_ 2.0
{
@@ -59,6 +59,8 @@
{consource(,tv) ; move ; "`\tt consource(,tv)'" ljust} NL(0.3)
{proximity ; move ;
"`\tt \shortstack[l]{proximity\\ = consource(,P)}'" ljust} NL(0.35)
+ {geiger(,,,,fill_(0.9)); move;
+ "`\tt \shortstack[l]{geiger(,{,},{,}\\ fill\_(0.9))}'" ljust} NL
iflatex(`ifpsfrag(,`latexcommand(})')')
.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Version.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Version.tex 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/Version.tex 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1 +1 @@
-Version 10.7
+Version 10.8
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/body.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/body.tex 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/body.tex 2025-04-01 20:02:45 UTC (rev 74818)
@@ -402,13 +402,12 @@
The libraries contain hints and explanations that might help in debugging
or if you wish to modify any of the macros. Macros are generally named
-using the obvious circuit element names so that programming becomes something
-of an extension of the \pic language. Some macro names end in an underscore
-to reduce the chance of name clashes. These can be invoked in the
-diagram source but there is no long-term guarantee that their names and
-functionality
-will remain unchanged. Finally, macros intended only for internal use
-begin with the characters {\tt m4}.
+using the obvious circuit element names so that programming becomes
+something of an extension of the \pic language. Some macro names end
+in an underscore to reduce the chance of name clashes. These can be
+invoked in the diagram source but there is no long-term guarantee that
+their names and functionality will remain unchanged. Finally, macros
+intended only for internal use begin with the characters {\tt m4}.
\xection{\Pic essentials\label{Pic:}}
@@ -1000,8 +999,8 @@
\end{figure}
As a convenience,
the macro {\tt ACsymbol(at {\sl position, length, height,}
- [n:][A]U|D|L|R|{\sl degrees})} is included as an interface to
-the {\tt sinusoid} macro. For example to add the sumbol
+ [n:][A]U|D|L|R|{\sl degrees})} defines an interface to
+the {\tt sinusoid} macro. For example, to add the symbol
``\input{ACsymbol.tex}'' to an ebox:
\par
{\tt ebox; $\lbrace$\ ACsymbol(at last [],{,},dimen\_/8) $\rbrace$}
@@ -1012,8 +1011,9 @@
and for power-system diagrams, macros
{\tt Deltasymbol(at {\sl position, keys,} U|D|L|R|{\sl degrees})},
and
-{\tt Ysymbol(at {\sl position, keys,} U|D|L|R|{\sl degrees})},
+{\tt Ysymbol(at {\sl position, keys,} U|D|L|R|{\sl degrees})}.
+\enlargethispage{\baselineskip}
Fuses, breakers, and jumpers are in \FR{Fuses},
and switches with numerous controls in \FR{Switches}.
%Switches with numerous controls are in \FR{Switches},
@@ -1051,16 +1051,18 @@
3-terminal (composite) elements described in \SR{Composite:}.
\begin{figure}[H]
\input ArrestersMan
- \caption{Variations of the {\tt arrester({\sl linespec, chars,}
- {\sl wid}[{\tt :}{\sl arrowhead ht}],
- {\sl ht}[{\tt :}{\sl arrowhead wid}])}
- macro. Putting {\tt D} in argument 2 for the {\tt S} or {\tt E}
+ \caption{Variations of the macro {\tt arrester({\sl linespec, chars,}
+ {\sl body len}[{\tt :}{\sl arrowhead ht}],
+ {\sl body ht}[{\tt :}{\sl arrowhead wid}],
+ {\sl attributes})}.
+ Putting {\tt D} in argument 2 for the {\tt S} or {\tt E}
configuration creates a 3-terminal composite element
- with terminals {\sl A, B}, and {\sl G.}}
+ with terminals {\sl A, B}, and {\sl G,} in which case the first
+ argument determines length and direction but not position.}
\label{Arresters}
\end{figure}
-\enlargethispage{\baselineskip}
+\pagebreak
\FR{Variable} shows some two-terminal elements with
arrows or lines overlaid to indicate variability using the macro
\par
@@ -1194,7 +1196,7 @@
\label{Loop}
\end{figure}
Most commonly, only
-the first three arguments are needed, and blank arguments are ignored.
+the first three label arguments are needed, and blank arguments are ignored.
The fourth argument can be {\tt above,} {\tt below,} {\tt left,} or {\tt
right} to supplement the default relative position.
The macro {\tt dlabel} performs these functions for an
@@ -1285,7 +1287,8 @@
\end{figure}
and ``{\tt rpoint\_(to Z)}'' sets
the current direction cosines to point from the current location to location Z.
-Macro {\tt vec\_(x,y)}
+
+To implement rotations, macro {\tt vec\_(x,y)}
evaluates to the position {\tt (x,y)} rotated as defined by the
argument of the previous
{\tt setdir\_, Point\_, point\_} or {\tt rpoint\_} command.
@@ -1805,7 +1808,20 @@
\label{Windings}
\end{figure}
-\pagebreak
+\enlargethispage{\baselineskip}
+A few compositie macros have no terminals at all. {\tt ACsymbol}
+ and {\tt DCsymbol} have been mentioned; some others are {\tt Ysymbol,}
+ {\tt Deltasymbol,} {\tt adjust,} and the {\tt heatsink} shown in \FR{heatsink}.
+\begin{figure}[H]
+ \input heatsinkMan
+ \caption{The elements {\tt ACsymbol, DCsymbol, Ysymbol, Deltasymbol,
+ adjust,} and
+ {\tt heatsink(at {\sl position, keys,}
+ U|D|L|R|{\sl degrees})} have similar argument sequences.}
+ \label{heatsink}
+ \end{figure}
+
+%\pagebreak
\subsection{Semiconductors\label{Semiconductors:}}%
\FR{Bip} shows the variants of bipolar transistor macro
{\tt bi\_tr(\linespec,L|R,P,E)}
@@ -2003,15 +2019,15 @@
\caption{Producing mitred angles and corners.}
\label{Corners}
\end{figure}
-This is normally
+This detail is normally
not an issue for circuit diagrams unless the figure is magnified or thick
lines are drawn. Rounded corners can be obtained by setting post-processor
parameters, but the figure shows the effect of
macros {\tt round} and {\tt corner}.
The macros
-{\tt mitre\_({\sl Position1,Position2,Position3,length,attributes})}
+{\tt mitre\_({\sl Position1, Position2, Position3, length, attributes})}
and
-{\tt Mitre\_({\sl Line1,Line2,length,attributes})}
+{\tt Mitre\_({\sl Line1, Line2, length, attributes})}
may assist as shown.
Otherwise, a right-angle line can be extended
by half the line thickness (macro {\tt hlth}) as shown on the upper row
@@ -2027,8 +2043,11 @@
[by {\sl expression}] do $\lbrace$ {\sl actions} $\rbrace$}
\noindent
-or at the
-\Mfour processing stage. The {\tt libgen} library defines the macro
+or at the \Mfour processing stage, which is executed and finished
+before \dpic or \gpic begin. An m4 macro inside a \pic loop is
+expanded only once and the resulting expansion executed with each
+\pic repetition. As an alternative,
+the {\tt libgen} library defines the m4 macro
{\tt for\_({\sl start}, {\sl end}, {\sl increment}, `{\sl actions}')}
@@ -2037,7 +2056,8 @@
index variable is {\tt m4x.}
The first three arguments must be
integers and the {\sl end} value must be reached exactly; for example,
-\verb|for_(1,3,2,`print In`'m4x')| prints locations {\sl In1} and {\sl In3},
+\verb|for_(1,3,2,`print In`'m4x')| prints predefined locations
+{\sl In1} and {\sl In3},
but \verb|for_(1,4,2,`print In`'m4x')| does not terminate since the
index takes on values 1, 3, 5, $\ldots$.
@@ -2051,6 +2071,8 @@
which evaluates {\sl actions} and increments counter {\tt m4Lx}
for each instance of {\sl variable} set to {\sl value1, value2, $\ldots$}
+\enlargethispage{\baselineskip}
+\vspace*{-0.5\baselineskip}
\xection{Logic gates\label{Logicgates:}}
Library {\tt liblog.m4} contains a selection of basic and advanced logic
gates and structures. The default size and style parameters defined
@@ -2079,7 +2101,8 @@
\label{Logic}
\end{figure}
-Input locations retain their positions relative to the gate body
+%Input locations retain their positions relative to the gate body
+Inputs retain their positions relative to the body
regardless of gate orientation, as in \FR{FF}.
\begin{figure}[H]
\vspace*{-\baselineskip}
@@ -2381,7 +2404,7 @@
The many-argument macro
{\tt lg\_pin( {\sl location, label, Picname,} n|e|s|w [L|M|I|O][N][E],
{\sl pinno, optional length})}
-can be used to draw a variety of pins as illustrated in the \FR{sampleIC}.
+can be used to draw a variety of pins as illustrated in \FR{sampleIC}.
To draw the left-side pins, for example, one can write
\begin{verbatim}
lg_pin( U.nw-(0,lg_pinsep), Vin, Pin1, w )
@@ -2422,7 +2445,7 @@
\input SLDsMan
Standard single-line diagrams for power distribution employ many of
the normal two-terminal elements along with others that are unique to
- the context. This distribution contains a library of draft single-line
+ the context. This distribution contains a library of single-line
diagram (SLD) elements that can be loaded with the
command {\tt include(libSLD.m4)}.
The {\tt examples.pdf} and {\tt examplesSVG.html}
@@ -2473,7 +2496,7 @@
\begin{figure}[H]
\vspace*{-\baselineskip}
\SLDTransformers
- \caption{The SLD draft transformers
+ \caption{The SLD transformers
drawn by {\tt sl\_transformer({\sl linespec, key-value pairs,
stem object, stem object, type {\tt S} circle object,
type {\tt S} circle object})},
@@ -2628,7 +2651,7 @@
\begin{verbatim}
resistor
-T: [linewid = linewid*1.5; up_; Q: bi_tr] with .Q.B at Here
+T: [linewid *= 1.5; up_; Q: bi_tr] with .Q.B at Here
ground(at T.Q.E)
resistor(up_ dimen_ from T.Q.C)
\end{verbatim}
@@ -3534,7 +3557,7 @@
element data encoded in the macros, which have been developed with
reference to standards and refined over decades, and which now total
thousands of lines. The learning curve of \pic\ compares well with
-other possibilities, but some of the macros have become less readable
+other possibilities but some of the macros have become less readable
as more options and flexibility have been added, and if starting
over today, perhaps I would change some details. Compromises have
been made to preserve the compatability of some of the older macros
@@ -3687,10 +3710,7 @@
\noindent produces an error, whereas
-{\tt shadebox(box with .n at w`,'h)}
-
-\noindent and
-
+{\tt shadebox(box with .n at w`,'h)} and
{\tt shadebox(box with .n at (w,h))}
\noindent do not. The parentheses are preferred.
@@ -3708,6 +3728,16 @@
\noindent
cured the problem because the protecting parentheses are not stripped away.
+As a second example, the expansion of
+{\tt rgbstring(}{\sl red frac,green frac,blue frac}{\tt )}
+for postprocessor PSTricks or pgf contains a comma, so this macro is fragile
+when part of an argument of another macro. One cure is to
+replace {\tt rgbstring(\ldots)} in the problematic argument
+by a name, {\tt newcolor} say, and define a pic macro:
+{\tt define newcolor \lbr{}rgbstring(\ldots)\rbr}
+so that {\tt newcolor} gets replaced by the color specification
+when needed during dpic execution.
+
\item
\bflistitem{Default directions and lengths}{defaultdir}
The \linespec argument of element
@@ -3739,7 +3769,12 @@
{\tt Point\_(45); source(to rvec\_(0.5,0))}
\item
-\bflistitem{Processing sequence}{sequence}
+%\bflistitem{Processing sequence}{sequence}
+%It is easy to forget that \Mfour finishes before \pic processing
+%begins. Consequently, it may be puzzling that the following mix of
+%a \pic loop and the \Mfour macro {\tt s\_box} does not appear to produce
+%the required result:
+\bflistitem{Mixing m4 and dpic code}{mixing}
It is easy to forget that \Mfour finishes before \pic processing
begins. Consequently, it may be puzzling that the following mix of
a \pic loop and the \Mfour macro {\tt s\_box} does not appear to produce
@@ -3755,6 +3790,19 @@
Note that the loop index variable {\tt m4x} is automatically defined.
+Another potential problem is that macros like {\tt vec\_()} and {\tt
+rvec\_()} attempt to produce the simplest output possible, depending on
+their arguments, in order to facilitate debugging. This is accomplished
+by checking for multiplication by 0, 1, or -1 and simplifying
+accordingly, and also checking for addition or subtraction of 0.
+However, their arguments may change inside a pic loop, for example,
+causing difficulties. A recent switch in {\tt libgen.m4} (that is,
+{\tt define(\LQ{}robustcode\_\RQ,1)}), will avoid these changes, if
+you must, for robustness at the expense of longer output expressions.
+The robust macros {\tt vec\_r()} and {\tt rvec\_r()} are also provided.
+Better strategies may be to avoid argument-sensitive m4 macros in pic
+loops or to use m4 loops instead.
+
\item
\bflistitem{Quotes}{quotes}
Single quote characters are stripped in pairs by \Mfour, so the string
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/defines.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/defines.tex 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/defines.tex 2025-04-01 20:02:45 UTC (rev 74818)
@@ -77,6 +77,14 @@
Tap names are Tap1, Tap2, $\cdots$ by default or
Name1, Name2, $\cdots$ if specified
\seesect{Composite:}}%
+\macrodef{adjust}{adjust}{([at {\sl position}], {\sl keys})}%
+ {cct}%
+ { Ajdustment screwhead in a [ ] block.
+ {\sl keys:}
+ {\tt size={\sl expression;}}
+ {\tt angle={\sl degrees;}}
+ {\tt slotwid={\sl expression;}}
+ {\tt circle={\sl attributes;}}}%
\macrodef{along\_}{along_}{({\sl linear object name})}%
{gen}%
{short for {\tt between {\sl name}.start and {\sl name}.end}}%
@@ -198,9 +206,9 @@
{$\;\;$ Find the index in {\sl array[1:n]} of the first occurrence
of the minimum array element value. The value is assigned if arg4 is
nonblank; see {\tt arraymax}.}%
-\macrodef{arrester}{arrester}{(\linespec,{\sl chars},
- {\sl len}[:{\sl arrowhead ht}],
- {\sl ht}[:{\sl arrowhead wid}],
+\macrodef{arrester}{arrester}{(\linespec, {\sl chars}[D[L|R]],
+ {\sl body len}[:{\sl arrowhead ht}],
+ {\sl body ht}[:{\sl arrowhead wid}],
{\sl attributes} )}%
{cct}%
{Arg2 {\sl chars:}\\
@@ -218,8 +226,9 @@
{\sl Modifiers appended to arg2:}\\
{\tt R=} right orientation\\
{\tt L=} left orientation\\
- {\tt D=} add terminals {\sl A, B, G} for {\tt S, E} only\\
- Arg5 applies to options C, E, S
+ {\tt D=} for {\tt S, E} only, create a 3-terminal composite element
+ with terminals {\sl A, B, G,} placed as a block since Arg1 now determines
+ length and direction but not position.\\
\seesect{Twoterminal:}}%
\macrodef{arrowline}{arrowline}{(\linespec)}%
{cct}%
@@ -473,10 +482,21 @@
\macrodef{cmyktorgb}{cmyktorgb}{({\sl c, m, y, k, r, g, b})}%
{dpictools}%
{$\;\;$ cmyk values in percent, i.e., 0 to 100, to rgb.}%
-\macrodef{consource}{consource}{(\linespec,V|I|v|i,R,{\sl attributes})}%
+\macrodef{consource}{consource}{(\linespec, V|I|tv|v|ti|i|P, R,
+ {\sl attributes})}%
{cct}%
- {voltage or current controlled source with alternate forms;
- {\tt R}: reversed polarity\seesect{Twoterminal:}}%
+ {controlled source or sensor with alternate forms;
+ {\tt V}: voltage;
+ {\tt I}: current;
+ {\tt v}: voltage type 2;
+ {\tt tv}: voltage type 3;
+ {\tt i}: current type 2;
+ {\tt ti}: current type 3;
+ {\tt P}: proximity sensor;
+ {\tt R}: reversed polarity.
+ Body internal locations N, S, E, W, and C are defined.
+ Arg 4 can be used to modify the body or to add internal symbols, e.g.\\
+ {\tt consource(,{,},fill\_(0.9); "S" at C)}\seesect{Twoterminal:}}%
\macrodef{ColoredV}{ColoredV}{%
(box|circle|ellipse,({\sl r,g,b})|(({\sl colorseq}))[:{\sl nlines}],%
{\sl attributes})}%
@@ -626,7 +646,7 @@
B1= internal base lead\\
D= damper diode\\
R1= Q1 bias resistor; E1= ebox\\
- R2= Q2 bias resistor; E1= ebox\\
+ R2= Q2 bias resistor; E2= ebox (require R1 or E1)\\
Z= zener bias diode
\seesect{Semiconductors:}}%
\macrodef{darrow}{darrow}{(\linespec,
@@ -719,7 +739,7 @@
\macrodef{deleminit\_}{deleminit_}{}%
{darrow}%
{sets drawing direction for dlines}%
-\macrodef{Deltasymbol}{Deltasymbol}{(at {\sl position},keys,
+\macrodef{Deltasymbol}{Deltasymbol}{(at {\sl position, keys,}
U|D|L|R|{\sl degrees}) (default {\tt U} for up)}%
{cct}%
{Delta symbol for power-system diagrams.
@@ -784,7 +804,7 @@
{gen}%
{macro for dimensioning diagrams; {\sl arrowhead=}{\tt -> | <-}}%
\macrodef{diode}{diode}{(\linespec,
-B|b|CR|D|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|chars,
+B|b|CR|D|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|z|chars,
[R][E])}%
{cct}%
{diode:
@@ -804,6 +824,7 @@
{\tt v}: varicap (curved plate)\\
{\tt w}: varicap (reversed polarity)\\
{\tt Z}: zener\\
+ {\tt z}: zener with angled centre bar\\
appending {\tt K} to arg 2 draws open arrowheads;
arg 3: {\tt R}: reversed polarity, {\tt E}: enclosure \seesect{Twoterminal:}}%
%\macrodef{DIP}{DIP}{({\sl pin count, attributes})}%
@@ -1242,21 +1263,22 @@
\macrodef{hatchbox}{hatchbox}{({\sl boxspec,hashsep,hatchspec,angle})
{\rm or} hatchbox({\sl keys})}%
{gen}%
-% {Alternate invocation: {\tt hatchbox({\sl keys})}.
- {Manhattan box hatched at a specified separation
- and angle (default 45 degrees).
+ { If Arg1 contains keys then a box is drawn in the current direction
+ or as specified by {\tt boxdir}; otherwise the box is drawn to the right.
+ The hatch lines are at {\tt angle} with respect to the current direction
+ (default 45 degrees).
Defined keys are:\\
{\tt wid={\sl expr};}\\
{\tt ht={\sl expr};}\\
{\tt box={\sl attributes};} (e.g. {\tt dashed outline "{\sl color}"})\\
- {\tt fillcolor="{\sl color}"|({\sl r,g,b});}\\
{\tt hatchsep={\sl expr};}\\
{\tt hatchspec={\sl attributes};}\\
- {\tt angle={\sl expr};}
+ {\tt angle={\sl degrees};}\\
+ {\tt boxdir={\sl degrees};}\\
e.g.,
{\tt hatchbox(outlined "blue",{},dashed outlined "green" thick 0.4)};\\
also
- {\tt DefineRGBColor(mycolor,1,0.2,0.5);\\
+ {\tt define mycolor \lbr{}rgbstring(1,0.2,0.5)\rbr;\\
hatchbox(box=dashed outlined mycolor)}}%
\macrodef{Header}{Header}{(1|2,{\sl rows,wid,ht,box attributes})}%
{log}%
@@ -1298,6 +1320,12 @@
{\tt box={\sl body attributes};}
(e.g., {\tt dotted, dashed, outlined, shaded}).
Args 3--5 are unused if any key is given}%
+\macrodef{heatsink}{heatsink}{(at {\sl position, keys,} U|D|L|R|{\sl degrees})}%
+ {cct}%
+ {Heatsink symbol drawn beside an element.
+ {\sl keys:} {\tt lgth={\sl expr;} hght={\sl expr;} fin={\sl attributes;}
+ base={\sl attributes;} fincount={\sl expr;}}
+ Arg3: drawing direction (default {\tt R}) }%
\macrodef{hexadecimal\_}{hexadecimal_}{($n$, [$m$])}%
{gen}%
{hexadecimal representation of $n,$ left padded to $m$ digits if the second
@@ -2053,6 +2081,7 @@
{\tt H}: squared,\\
{\tt N}: IEEE,\\
{\tt B}: not burnable,\\
+ {\tt T}: thermistor,\\
{\tt V}: varistor variant,\\
{\tt R}: right-oriented;\\
Arg4: {\sl cycle width} (default {\tt dimen\_}$/6$)
@@ -2086,7 +2115,11 @@
are fractions in the range $[0,1]$; For example, {\tt box outlined
rgbstring(0.1,0.2,0.7) shaded rgbstring(0.75,0.5,0.25)}. For those
postprocessors that allow it, there can be one argument which is the
- name of a defined color}%
+ name of a defined color.
+ This macro can be fragile when used as an m4 macro argument.
+ Then something like the following delays expansion:\\
+ {\tt define rgbpurp \lbr{}rgbstring(0.5,0,1)\rbr;}\\
+ {\tt curve(,{,},rail=outlined rgbpurp)} }%
\macrodef{rgbtocmyk}{rgbtocmyk}{({\sl r, g, b, c, m, y, k})}%
{dpictools}%
{$\;\;$ rgb to cmyk values in the range 0 to 100.}%
@@ -2192,6 +2225,9 @@
\macrodef{rvec\_}{rvec_}{({\sl x},{\sl y})}%
{gen}%
{location relative to current direction}%
+\macrodef{rvec\_r}{rvec_r}{({\sl x},{\sl y})}%
+ {gen}%
+ {Robust location relative to current direction for use in dpic loops}%
\Letter{S}%
@@ -2806,6 +2842,7 @@
{\tt i}: alternate current source;\\
{\tt ii}: double arrow current source;\\
{\tt ti}: truncated-bar alternate current source;\\
+ {\tt dci}: DC current source;\\
{\tt L}: lamp;\\
{\tt N}: neon;\\
{\tt NA}: neon 2;\\
@@ -2819,9 +2856,10 @@
{\tt T}: triangle;\\
{\tt U}: square-wave;\\
{\tt V}: voltage source;\\
- {\tt X}: interior X;\\
{\tt v}: alternate voltage source;\\
{\tt tv}: truncated-bar alternate voltage source;\\
+ {\tt dcv}: DC voltage source;\\
+ {\tt X}: interior X;\\
other: custom interior label or waveform;\\
arg 4: R: reversed polarity;\\
arg 5 modifies the circle (body) with e.g., color or fill;\\
@@ -3108,6 +3146,10 @@
\macrodef{vec\_}{vec_}{({\sl x},{\sl y})}%
{gen}%
{position rotated with respect to current direction}%
+\macrodef{vec\_r}{vec_r}{({\sl x},{\sl y})}%
+ {gen}%
+ {Robust position rotated with respect to current direction for use in
+ dpic loops}%
\macrodef{vec3}{vec3}{({\sl vector})}%
{dpictools}%
{$\;\;$ Expands to the threee components of the vector argument separated
@@ -3188,10 +3230,10 @@
\Letter{Y}%
-\macrodef{Ysymbol}{Ysymbol}{(at {\sl position},keys,
+\macrodef{Ysymbol}{Ysymbol}{(at {\sl position, keys,}
U|D|L|R|{\sl degrees}) (default {\tt U} for up)}%
{cct}%
- {Y symbol for power-system diagrams
+ {Y symbol for power-system diagrams.
{\sl keys:} {\tt size={\sl expression}; type=G}}%
\Letter{Z}%
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/heatsinkMan.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/heatsinkMan.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/heatsinkMan.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,18 @@
+.PS
+# `heatsinkMan.m4'
+cct_init
+movewid = 36bp__
+
+ ACsymbol
+ move
+ DCsymbol
+ move
+ Ysymbol
+ move
+ Deltasymbol
+ move
+ adjust
+ move
+ heatsink
+
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/doc/heatsinkMan.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/dpictools.pic
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/dpictools.pic 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/dpictools.pic 2025-04-01 20:02:45 UTC (rev 74818)
@@ -3,7 +3,7 @@
# m4 macro NeedDpicTools or the pic statement copy "HOMELIB_/dpictools.pic"
# when HOMELIB_ is defined or, generically, copy "<path>dpictools.pic"
-# Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under #
+# Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under #
# the LaTeX Project Public Licence in file Licence.txt. The files of #
# this distribution may be redistributed or modified provided that this #
# copyright notice is included and provided that modifications are clearly #
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Diodes.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Diodes.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Diodes.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -24,8 +24,10 @@
}
move right_ 2.0
-{ {diode(,K) ; move ; "`{\tt diode(,K)}'" ljust}
+{ {diode(,z) ; move ; "`{\tt diode(,z)}'" ljust}
move down 0.2; right_
+ {diode(,K) ; move ; "`{\tt diode(,K)}'" ljust}
+ move down 0.2; right_
{diode(,ZK) ; move ; "`{\tt diode(,ZK)}'" ljust}
move down 0.2; right_
{diode(,CR) ; move ; "`{\tt diode(,CR)}'" ljust}
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/LT3724.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/LT3724.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/LT3724.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -78,7 +78,7 @@
"\SI{12}{\volt}" at VOUT+(0,-blskip*1.2) ljust
"\SI{50}{\watt}" at VOUT+(0,-blskip*1.2*2) ljust
- "High voltage step-down regulator" ljust at (M1.e.x+10bp__,QR.n.y) \
+ "Step-down regulator" ljust at (M1.e.x+10bp__,QR.n.y) \
"\SI{48}{\volt} TO \SI{12}{\volt}, \SI{50}{\watt}" ljust
]
#showbox_
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Loglog.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Loglog.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Loglog.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -93,12 +93,12 @@
ell = F.ht-0.6i
r = 0.3i
offset = 8bp__
- hatch = 0.1i
- dhs = hatch * sqrt(2)
+ pitch = 0.1i
+ dhs = pitch * sqrt(2)
qmell = F.ht - ell
kwid = F.wid-qmell-r
- hatchbox(wid G.e.x-F.w.x ht F.ht,hatch) with .sw at F.sw
+ hatchbox(wid G.e.x-F.w.x ht F.ht,pitch) with .sw at F.sw
box invis fill_(1) ht ell wid E.e.x-F.w.x with .nw at F.nw
box wid G.e.x-F.w.x ht F.ht with .sw at F.sw thick linethick*3/2
@@ -114,13 +114,13 @@
"$t$" at (B`'T,B.n) + (-offset/2,offset)
sprintf("$\overbrace{\phantom{\hbox to %gin{}}}^{\hbox{$k$}}$",kwid/scale) \
at B.nw + (kwid/2,0) above
- hatchbox(wid kwid ht ell,hatch,,90) with .nw at B.nw
+ hatchbox(wid kwid ht ell,pitch,,90) with .nw at B.nw
line from B.ne to B.se thick linethick*3/2
',F,E)
line from (G.w,ET) right G.wid
line from ET + (0,r) left ET.x-E.w.x
- hatchbox(wid r ht r,hatch,,0) with .se at ET
+ hatchbox(wid r ht r,pitch,,0) with .se at ET
"$q$" at F.sw + (-offset,offset/3)
"$\ell$" at (F.w,FT) + (-offset,offset/3)
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Makefile
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Makefile 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Makefile 2025-04-01 20:02:45 UTC (rev 74818)
@@ -79,7 +79,8 @@
lcct.tex Logic.tex Loglog.tex LT3724.tex \
MC.tex Mixer.tex MoreTable.tex MotorControl.tex Multiplexer.tex \
NLG.tex NPDT.tex Nport.tex OneLine.tex Opamp.tex Optoiso.tex \
- Pconn.tex Plate.tex PushPull.tex pwrsupply.tex \
+ Pconn.tex Plate.tex PS50.tex PushPull.tex pwrsupply.tex \
+ Reg723.tex \
Quantum.tex quick.tex \
random.tex Rectifiers.tex recycle.tex relaycoil.tex Relay.tex \
Resistors.tex Rotbox.tex \
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/PS50.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/PS50.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/PS50.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,97 @@
+.PS
+# PS50.m4
+# See Horowitz and Hill Fig 9.49 p. 630
+cct_init
+command "{\small"
+
+# pconnex(U,PF)
+
+ h = dimen_*2.5
+ T: dot
+ Cs: capacitor(down_ h/2)
+ llabel(,"$C_s$" ljust "$0.1{-}\SI{1}{\micro\farad}$" ljust)
+ dot; { line right_ dimen_*3/4; ground(,,F) }
+ Rs: resistor(down_ Cs.len)
+ llabel(,"$R_s$" ljust "$\SI{10}{\ohm}{-}$" ljust "\SI{100}{\ohm}" ljust)
+ B: dot
+ Br: [ size=dimen_/2; W: dot;
+ { diode(to Here+(size, size)); N: dot
+ diode(to Here+( size,-size)); E: dot }
+ diode(to Here+( size,-size)); S: dot; diode(to E)
+ box thick 0.4 dashed wid 3*size ht 3*size with .c at 0.5 between N and S
+ "\scriptsize GBU604" at last box.n above rjust ] \
+ with .W at Cs.end+(dimen_*3/2,0)
+ line from Br.N to (Br.N,T) then left Br.N.x-Cs.x+dimen_*3/4
+ { line from (Here,B) to (Br.S,B) then to Br.S }
+ T80: transformer(up_ h,,,W) with .P2 at Here
+ "\SI{115}{\volt}:\SI{80}{V} CT" at T80+(-dimen_/4,-h/2-dimen_/3) \
+ "\SI{4}{\ampere}"
+
+ line from Br.E right dimen_/2 then up T.y-Br.E.y then right_ dimen_*2/3
+ dot; {C1: capacitor(down_ Cs.len+dimen_/3,C+); rlabel(,C_1)
+ dot; C2: capacitor(down_ C1.len,C+); rlabel(,C_2); dot}
+ {"$2$ $\times$ \SI{8200}{\micro\farad}" at C1.start+(0,dimen_/2) \
+ "\SI{80}{\volt}dc" }
+ {line right_ dimen_*3/2
+ P50: dot(,dotrad_*3/2,1)
+ "${+}\SI{50}{\volt}$" wid 29bp__ at last [].e ljust \
+ "\SI{2}{\ampere}" ljust }
+ dot(at 1/2 between Here and P50)
+ R2: resistor(down_ C1.len)
+ llabel(,"$R_2$" ljust "$680$" ljust "\SI{5}{\watt}" ljust)
+ {dot; line to (C1,Here)}
+ {line to (P50,Here); dot(,dotrad_*3/2,1)
+ "\scriptsize COM" at last [].e ljust}
+ R3: resistor(down_ C2.len)
+ llabel(,"$R_3$" ljust "$680$" ljust "\SI{5}{\watt}" ljust); dot
+ {line to (P50,Here); dot(,dotrad_*3/2,1);
+ "${-}\SI{50}{\volt}$" at last [].e ljust "\SI{2}{\ampere}" ljust }
+ line left_ Here.x-Br.W.x+dimen_/2; continue to (Here,Br.W) then to Br.W
+ line from T80.TP right_ (Rs.x-T80.TP.x)/2 \
+ then down_ T80.TP.y-B.y + (B.y-C2.end.y)/2
+ continue to (Br.E+(dimen_/2,0),Here)
+ continue to (Here,C2.start) then to C2.start
+ dot(at (T80.S2,T)-(dimen_*4/3,0))
+ { line from (T80.S2,T) to Here-(dimen_/2,0)
+ line dashed to Here-(dimen_/2,0) chop dimen_/10; In1: Here }
+ { line from (T80.S2,B) to (Here-(dimen_/2,0),B)
+ line dashed to Here-(dimen_/2,0) chop dimen_/10; In2: Here}
+ F2: fuse(down_ h/2,D)
+ llabel(,"$F_2$" ljust "\SI{100}{\celsius}" ljust "cutout" ljust)
+ MOV: ebox(down_ to (Here,B))
+ variable(,uNN,,dimen_/2)
+ "\scriptsize MOV" at last [].e ljust \
+ "$130\hbox{V}_{\hbox{\scriptsize ac}}$" ljust "\scriptsize S20K130" ljust
+ { arc dashed from 3rd last [].w-(2bp__,0) to 2nd last [].w-(2bp__,0) \
+ rad dimen_ }
+ dot(at MOV.end)
+
+ SB: In1+(dimen_*4,dimen_/2)
+ ST: SB+(0,h)
+ T880: transformer(right_ dimen_*7/8,,,WD1) at (ST+SB)/2-(2*dimen_,0)
+ line from T880.P2 to (T880.P2,SB) then to SB; dot(,dotrad_*3/2,1)
+ line from T880.S2 to (T880.S2,ST) then to ST; dot(,dotrad_*3/2,1)
+ line dashed from ST.e right_ dimen_/2 chop dimen_/10
+ line dashed from SB.e right_ dimen_/2 chop dimen_/10
+ dot(at (T880.P2,ST)+(dimen_,0))
+ Cy: capacitor(down_ h/2); rlabel(C_y,,\SI{2.2}{\nano\farad}); dot
+ {line right_ dimen_/3; ground(,,F)}
+ capacitor(down_ to (Here,SB)); rlabel(C_y,,\SI{2.2}{\nano\farad}); dot
+ Socket: pconnex(U,PF) at T880.w-(dimen_*3.5,0)
+ line right_ dimen_/2 from Socket.G.e; ground(,,F)
+ line from Socket.H.n to (Socket.H.n,ST);
+ F1: fuse(right_ dimen_,D); llabel(,"F1"); rlabel(,"\SI{6}{\ampere} SB")
+ TS: lswitch(right_ dimen_*3/4,,D); { line to (T880.S1,Here) then to T880.S1 }
+ dot(at Here+(dimen_/2,0))
+ { R1: resistor(down_ to (Here,SB)); rlabel(,"$R_1$" rjust \
+ "\SI{1}{\mega\ohm}" rjust); dot }
+ dot(at Here+(dimen_/2,0))
+ Cx: capacitor(down_ to (Here,SB)); llabel(C_{\hbox{\scriptsize x}},,
+ \SI{100}{\nano\farad}); dot
+ line from Socket.N.s to (Socket.N.s,SB) then to (TS.start,SB)
+ BS: lswitch(right_ TS.len,,D); { line dashed from TS to BS chop dimen_/3 }
+ line to (T880.P1,Here) then to T880.P1
+ "Qualtek 880-06/006" at Cx.start+(dimen_/2,dimen_/4)
+
+command "}%"
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/PS50.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Reg723.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Reg723.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Reg723.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,75 @@
+.PS
+# Reg723.m4
+# see Horowitz and Hill p 600
+cct_init
+ command "{\small\sf"
+
+# "+7.15V"
+ R1: resistor(down_ dimen_*3/4); rlabel(,\shortstack[r]{$R_1$\\1.15k})
+ R2: potentiometer(down_ dimen_) with .Start at Here
+ rlabel(,\shortstack[r]{$R_2$\\2.0k})
+ "$\mathstrut V_{\hbox{adj}}$" at R2.T1 below
+ R3: resistor(down_ dimen_ from R2.End); rlabel(,\shortstack[r]{$R_3$\\4.02k})
+ ground
+
+ line right_ dimen_*4/3 from R2.T1
+ A: opamp(,,,,R) with .In1 at Here
+
+ line right_ dimen_*3/4 from A.Out
+ B1: dot
+ Q2: bi_tr(up_ dimen_) with .B at Here
+ line right_ dimen_ from Q2.E
+ Q1: bi_tr(up_ dimen_*3/2) with .B at Here; heatsink(at Q1.e+(dimen_/2,0),,D)
+ "heat" ljust at last [].e+(dimen_/5,0) "sink" ljust
+ dot(at Q1.E)
+ resistor(down_ dimen_*3/2); llabel(,\shortstack[l]{0.25$\Omega$\\3W})
+ P5: dot
+
+ Q3: bi_tr(up_ dimen_,R) with .B at (Q2.C.x,Q1.E.y); dot(at Q3.C)
+ { line to Q2.B }
+ resistor(left_ dimen_ from Q1.E); llabel(,"100")
+ line to Q3.B
+ line from Q3.E to (Q3.E,P5) then to P5+(dimen_,0)
+ Out: "\shortstack[l]{+5V\\2A}" ljust
+ dot(at P5+(dimen_/2,0))
+ capacitor(down_ dimen_,C+); ground(,T)
+ rlabel(,\shortstack[r]{10$\mu$F\\15V})
+
+ Vref: box wid boxwid/2 ht boxht/2 with .w at (A.E.x,A.n.y+dimen_/3) \
+ "$V_{\hbox{ref}}$"
+ Bx: box thick 0.4 wid Q2.C.x-A.w.x+dimen_/2 rad 0.1 \
+ ht Vref.n.y-Q3.E.y+dimen_/3 with .sw at (A.In1.x-dimen_/7,Q3.E.y) dashed
+ "723" at Bx.n above
+
+ line from Vref.w to (Bx.w,Vref.w)
+ { "$V_{\hbox{ref}}$" above rjust }
+ continue to ((R1.x+Here.x)/2,Here.y); continue to (Here,R1.start) \
+ then to R1.start
+ "$+$7.15V" above ljust
+
+ P6: dot(at P5-(dimen_*2/3,0))
+ line from Q3.C left_ dimen_/2 then down_ Q3.C.y-Bx.s.y
+ Cp: capacitor(down_ dimen_*3/2); rlabel(,"100pF"); dot
+ line from A.In2 left_ dimen_/2 then down_ A.In2.y-Cp.end.y then to Cp.end
+ R4: resistor(right_ to (P6,Here)); rlabel(,"$R_4$ 1.5k"); line to P6
+
+ line from A.SE to (A.SE,Bx.s); ground
+ "COMP" at (Cp,Bx.s) below rjust
+ "CS" at (Q3.E,Bx.s) below ljust
+ "CL" at (Bx.e,Q1.E) below ljust
+ "NI" at (Bx.w,A.In1) rjust above
+ "$V_{\hbox{out}}$" at (Bx.e,Q1.B) above ljust
+ "INV" at (Bx.w,A.In2) rjust above
+
+ line from A.NE to (A.NE.x,Bx.n.y+dimen_/2)
+ { "$V_{+}$" at (Here,Bx.n) above rjust }
+ continue to (Out,Here)
+# {"$+V_{\hbox{in}}$ (unreg)" rjust at Here+(0,15bp__) "$+$9.5V (min)" rjust}
+ {"\shortstack{$+V_{\hbox{in}}$ (unreg)\\$+$9.5V (min)}" below}
+ {dot(at (Q2.C,Here)); line to Q2.C
+ "$V_C$" at (Here,Bx.n) above rjust }
+ dot(at (Q1.C,Here)); line to Q1.C
+ "\shortstack[l]{$Q_1$\\TIP41}" ljust
+
+ command "}%"
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Reg723.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Resistors.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Resistors.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Resistors.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -26,7 +26,8 @@
{E:resistor(,,E) ; move ; "`\tt $\ldots$(,{,}E) $\equiv$ ebox'" ljust}
}
move down vm*1.1; right_
-{ {ebox(,,,0.9) ; move ;"`{\tt ebox(,{,},0.9)}'" ljust}
+{
+ {T:resistor(,,T) ; move ; "`\tt $\ldots$(,{,}T)'" ljust}
move right_ hm
{ebox(,wdth=0.2;box=dashed shaded "green";text="H") ; move
"`\shortstack[l]{\tt ebox(,wdth=0.2;box=dashed shaded \"green\";\\' \
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Sources.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Sources.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Sources.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -12,10 +12,12 @@
{source(,I) ; move ; "`\tt source(,I)'" ljust} NL
{C:source(,i) ; move ; "`\tt source(,i)'" ljust} NL
{D:source(,ti) ; move ; "`\tt source(,ti)'" ljust} NL
+ {source(,dci) ; move ; "`\tt source(,dci)'" ljust} NL
{source(,ii) ; move ; "`\tt source(,ii)'" ljust} NL
{source(,V) ; move ; "`\tt source(,V)'" ljust} NL
{source(,v) ; move ; "`\tt source(,v)'" ljust} NL
{source(,tv) ; move ; "`\tt source(,tv)'" ljust} NL
+ {source(,dcv) ; move ; "`\tt source(,dcv)'" ljust} NL
{source(,SC) ; move ; "`\tt source(,SC)'" ljust} NL
{source(,AC); move ; "`\tt source(,AC)'" ljust} NL
{source(,X) ; move ; "`\tt source(,X)'" ljust} NL
@@ -22,8 +24,6 @@
{source(,G) ; move ; "`\tt source(,G)'" ljust} NL
{source(,Q) ; move ; "`\tt source(,Q)'" ljust} NL #(0.3)
{source(,F) ; move ; "`\tt source(,F)'" ljust} NL
- {geiger(,,,,fill_(0.9)); move;
- "`\tt \shortstack[l]{geiger(,{,},{,}\\ fill\_(0.9))}'" ljust} NL
}
move right_ 2.0
{
@@ -59,6 +59,8 @@
{consource(,tv) ; move ; "`\tt consource(,tv)'" ljust} NL(0.3)
{proximity ; move ;
"`\tt \shortstack[l]{proximity\\ = consource(,P)}'" ljust} NL(0.35)
+ {geiger(,,,,fill_(0.9)); move;
+ "`\tt \shortstack[l]{geiger(,{,},{,}\\ fill\_(0.9))}'" ljust} NL
iflatex(`ifpsfrag(,`latexcommand(})')')
.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Variable.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Variable.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/Variable.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -17,7 +17,7 @@
{ move right cskip+elen_+hskip
line invis right_ elen_ "\tt C"; move right_ hskip
line invis right_ elen_ "\tt S" }
- Loopover_(`char',
+ foreach_(`char',
`move down skp ifelse(char,A,*0.5)
{ line invis right_ cskip "\tt char"
variable(`capacitor(,C)',char); move right_ hskip
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/cbresistor.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/cbresistor.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/cbresistor.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -8,7 +8,7 @@
`cbresistor(linespec, keys)
keys:
lgth=expr; wdth=expr;
- body=body attributes, e.g. shaded "green"
+ body=body attributes; e.g. shaded "green"
type=A|B; pinched body shape
colors=color:color:...;
Up to 6 colors, a color may be nul '
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/control.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/control.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/control.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -177,6 +177,7 @@
# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . #
+ifelse(0,1,`
Nonlinear: [boxwid = boxwid*3/2; boxht = boxht*3/2
thicklines_
scale = 0.8
@@ -214,6 +215,76 @@
] with .nw at last [].sw + (0,-0.25)
"(d) Nonlinear feedforward (for performance) and small-signal feedback
(for stability)" below ljust at Nonlinear.sw+(0,-5pt__)
+')
-#print PID.n.y - Nonlinear.s.y
+# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . #
+# Gimbal.m4
+# https://tex.stackexchange.com/questions/734796/how-to-create-a-gimbal-model-for-one-axis-using-tikz
+
+#gen_init
+Gimbal: [
+textht = 15bp__
+circlerad = 8bp__
+
+ iflatex(command "{\sf
+ \newcommand{\Sub}[1]{{\hbox{\scriptsize `#1'}}}")
+
+ Ir: arrow right_ linewid*3/2
+ { "Current" ljust at Ir.start+(-5bp__,textht) "reference" ljust
+ "$i_\Sub{reference}$" ljust at Ir.start-(0,textht*2/3) }
+ Ka: box "$K_a$"
+ { "Current" at Ka.s -(0,textht) "amplifier gain" }
+ arrow right_ linewid*3/2
+ { "Motor" at last arrow+(0,textht) "current" }
+ Kt: box "$K_t$"
+ { "Motor torque" at Kt.s -(0,textht) "constant" }
+ arrow
+ S1: circle; {"$-$" at S1.n above ljust; "$+$" at S1.w above rjust }
+ arrow right_ linewid*1.2
+ GI: box "$\frac{1}{J_\Sub{s}}$"; arrow "$\omega_h$" above
+ { "Gimbal inertia" at GI.s -(0,textht) }
+ S2: circle at Here+(0,3/2*boxht)
+ {"$-$" at S2.e above ljust; "$+$" at S2.s below rjust }
+ { arrow <- right_; "$\omega_b$" above rjust }
+ arrow left_ from S2.w to (GI.e,S2)
+ Bv: box "$B_v$"
+ arrow left_ "$T_\Sub{viscous}\mathstrut$" below from Bv.w to (S1.e,Bv)
+ S3: circle "$+$"
+ { arrow <- from S3.w; "$T_\Sub{ext}$" above ljust }
+ arrow from S3 to S1 chop
+ Fc: box ht boxht*3/2 at Bv+(0,boxht*7/4)
+ arrow from S2.n to (S2,Fc) then to Fc.e
+ arrow from Fc.w to (S3,Fc) then to S3.n
+ "$T_\Sub{friction}$" at (S3,Fc) above
+ [ Orig: Here; thicktmp = linethick; thicklines_(0.4)
+ V: arrow from Orig up_ Fc.ht*5/12
+ H: arrow right_ Fc.wid*5/6 with .c at Orig; thicklines_(thicktmp)
+ line thick 1.2 up Fc.ht/2 with .c at Orig
+ spline 0.55 thick 1.2 down_ boxht/5 right_ boxht/9 \
+ then right_ boxwid/9 then right_ boxwid/4 up_ boxwid/8
+ { "$F_c$" above rjust }
+ spline 0.55 thick 1.2 from last line.start up_ boxht/5 left_ boxht/9 \
+ then left_ boxwid/9 then left_ boxwid/4 down_ boxwid/8
+ { "${-}F_c$" below ljust }
+ ] with .Orig at Fc
+ Gl: box wid boxwid*5/4 with .e at GI.e+(0,-boxht*2) \
+ "$\frac{\omega_g^2}{s^2+2\zeta \omega_g s + \omega_g^2}$ "
+ { "Gyro lowpass" at Gl.s -(0,textht) }
+ arrow from Gl.e to (S2,Gl) then to S2.s
+ Gd: box wid boxwid*5/3 at (Kt,Gl) \
+ "$\frac{(d^2/12)\,s^2 - (d/2)\,s + 1}{(d^2/12)\,s^2 + (d/2)\,s + 1}$"
+ { "Gyro delay" at Gd.s -(0,textht) }
+ arrow left_ from Gl.w to Gd.e
+ arrow left_ from Gd.w chop 0 chop
+ S4: circle "$+$"
+ {"Gyro noise" at (S4,last ""); arrow from last "".n to S4.s }
+ Rm: arrow left_ from S4.w to (Ir.start,S4)
+ { "Rate" ljust at Here+(0,textht) "measurement" ljust }
+ "$w{}_\Sub{measured}$" ljust at Here-(0,textht*2/3)
+
+ iflatex(command "}%")
+] with .nw at last [].sw + (0,-0.25)
+ "(d) Single-axis gimbal model" below ljust at Gimbal.sw+(0,-5pt__)
+
+#print PID.n.y - Gimbal.s.y
.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/DiodesDPV.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/DiodesDPV.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/DiodesDPV.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -23,8 +23,10 @@
}
move right_ 2.0
-{ {diode(,K) ; move ; "`diode(,K)'" ljust}
+{ {diode(,z) ; move ; "`diode(,z)'" ljust}
move down 0.2; right_
+ {diode(,K) ; move ; "`diode(,K)'" ljust}
+ move down 0.2; right_
{diode(,ZK) ; move ; "`diode(,ZK)'" ljust}
move down 0.2; right_
{diode(,CR) ; move ; "`diode(,CR)'" ljust}
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Makefile
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Makefile 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Makefile 2025-04-01 20:02:45 UTC (rev 74818)
@@ -27,6 +27,8 @@
# M4LIBS = svg.m4 windows.m4
# DPIC = ../dpic/bison/distsrc/Windows/dpic
+TR = | tr '!' '\134'
+
.SUFFIXES: .pic .svg .m4 .xsvg
.pic.svg:
$(DPIC) -v $*.pic > $*.svg
@@ -39,12 +41,11 @@
touch F_$*.dim
$(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic
$(DPIC) -g $*.pic >> $*.tex
-# echo "\documentclass[crop,tikz,multi=false]{standalone}" > F_$*.tex
- echo "\documentclass[tikz]{standalone}" > F_$*.tex
- echo "\usepackage{boxdims,siunitx,amssymb}" >> F_$*.tex
- echo "\begin{document}" >> F_$*.tex
- echo "\input $*.tex" >> F_$*.tex
- echo "\end{document}" >> F_$*.tex
+ echo "!documentclass[tikz]{standalone}" $(TR)> F_$*.tex
+ echo "!usepackage{boxdims,siunitx,amssymb}" $(TR)>> F_$*.tex
+ echo "!begin{document}" $(TR)>> F_$*.tex
+ echo "!input $*.tex" $(TR)>> F_$*.tex
+ echo "!end{document}" $(TR)>> F_$*.tex
pdf$(QLATEX) F_$*
$(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic
$(DPIC) -g $*.pic >> $*.tex
@@ -77,7 +78,7 @@
MultiplexerDPV.svg \
NLGDPV.svg NPDTDPV.svg NportDPV.svg OpampDPV.svg OptoisoDPV.svg \
PconnDPV.svg PlateDPV.svg PushPullDPV.svg QuantumDPV.svg \
- RectifiersDPV.svg RelayDPV.svg ResistorsDPV.svg RotboxDPV.svg\
+ RectifiersDPV.svg Reg723DPV.svg RelayDPV.svg ResistorsDPV.svg RotboxDPV.svg\
SchottkyDPV.svg SevensegmentDPV.svg ShiftRDPV.svg SierpinskiDPV.svg \
SixpoleDPV.svg SourcesDPV.svg Spec555DPV.svg SwitchesDPV.svg \
TTLnandDPV.svg TgateDPV.svg ThreeDPV.svg \
@@ -119,6 +120,13 @@
SED = sed -e '/^\%/d'
TEST = test
+
+tst1:
+ @if test -f test.pic; then printf "\n\nUsage: make clean tst\n\n"; exit 1;fi
+ m4 $(M4LIBS) test.m4 | $(SED) > test.pic
+ $(DPIC) -v $(TEST).pic > $(TEST).svg
+ make tstDPV.html
+
tst:
@if test -f test.pic; then printf "\n\nUsage: make clean tst\n\n"; exit 1;fi
m4 $(M4LIBS) test.m4 | $(SED) > test.pic
@@ -175,4 +183,4 @@
@printf "\n"
clobber: clean
- rm -f test.m4
+ rm -f test.m4 paletteDPV.svg
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/README_svg
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/README_svg 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/README_svg 2025-04-01 20:02:45 UTC (rev 74818)
@@ -8,6 +8,9 @@
sources have LaTeX formatting replaced by svg macros from configuration
file svg.m4 for font manipulation and special characters.
+ Type "make paletteDPV.svg" in this directory to generate a file of elements
+ that can be manipulated by Inkscape.
+
The source files consist of the .m4 diagram sources and
examplesDPV.htmx which is processed through m4 by the Makefile to
produce examplesDPV.html.
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Reg723DPV.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Reg723DPV.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Reg723DPV.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,76 @@
+.PS
+# Reg723.m4
+# see Horowitz and Hill p 600
+cct_init
+ svg_font(sans-serif,10bp__)
+
+ R1: resistor(down_ dimen_*3/4)
+ rlabel(,"R`'svg_sub(1)" rjust "1.15k" rjust)
+ R2: potentiometer(down_ dimen_) with .Start at Here
+ rlabel(,"R`'svg_sub(2)" rjust "2.0k" rjust)
+ "V`'svg_sub(adj)" at R2.T1 below
+ R3: resistor(down_ dimen_ from R2.End)
+ rlabel(,"R`'svg_sub(3)" rjust "4.02k" wid 4*textht rjust)
+ ground
+
+ line right_ dimen_*4/3 from R2.T1
+ A: opamp(,,,,R) with .In1 at Here
+
+ line right_ dimen_*3/4 from A.Out
+ B1: dot
+ Q2: bi_tr(up_ dimen_) with .B at Here
+ line right_ dimen_ from Q2.E
+ Q1: bi_tr(up_ dimen_*3/2) with .B at Here; heatsink(at Q1.e+(dimen_/2,0),,D)
+ "heat" ljust at last [].e+(dimen_/5,0) "sink" ljust
+ dot(at Q1.E)
+ resistor(down_ dimen_*3/2)
+ llabel(,"0.25`'svg_Omega" ljust "3W" ljust)
+ P5: dot
+
+ Q3: bi_tr(up_ dimen_,R) with .B at (Q2.C.x,Q1.E.y); dot(at Q3.C)
+ { line to Q2.B }
+ resistor(left_ dimen_ from Q1.E); llabel(,"100")
+ line to Q3.B
+ line from Q3.E to (Q3.E,P5) then to P5+(dimen_,0)
+ Out: "+5V" ljust "2A" ljust
+ dot(at P5+(dimen_/2,0))
+ capacitor(down_ dimen_,C+); ground(,T)
+ rlabel(,"10`'svg_micro`'F" rjust "15V" rjust)
+
+Vref: box wid boxwid/2 ht boxht/2 with .w at (A.E.x,A.n.y+dimen_/3) \
+ "V`'svg_sub(ref)"
+Bx: box thick 0.4 wid Q2.C.x-A.w.x+dimen_/2 rad 0.1 \
+ ht Vref.n.y-Q3.E.y+dimen_/3 with .sw at (A.In1.x-dimen_/7,Q3.E.y) dashed
+ "723" at Bx.n above
+
+ line from Vref.w to (Bx.w,Vref.w)
+ { "V`'svg_sub(ref)" above rjust }
+ continue to ((R1.x+Here.x)/2,Here.y); continue to (Here,R1.start) \
+ then to R1.start
+ "+7.15V" above ljust
+
+P6: dot(at P5-(dimen_*2/3,0))
+ line from Q3.C left_ dimen_/2 then down_ Q3.C.y-Bx.s.y
+Cp: capacitor(down_ dimen_*3/2); rlabel(,"100pF"); dot
+ line from A.In2 left_ dimen_/2 then down_ A.In2.y-Cp.end.y then to Cp.end
+R4: resistor(right_ to (P6,Here)); rlabel(,"R`'svg_sub(4) 1.5k"); line to P6
+
+ line from A.SE to (A.SE,Bx.s); ground
+ "COMP" at (Cp,Bx.s) below rjust
+ "CS" at (Q3.E,Bx.s) below ljust
+ "CL" at (Bx.e,Q1.E) below ljust
+ "NI" at (Bx.w,A.In1) rjust above
+ "V`'svg_sub(out)" at (Bx.e,Q1.B) above ljust
+ "INV" at (Bx.w,A.In2) rjust above
+
+ line from A.NE to (A.NE.x,Bx.n.y+dimen_/2)
+ { "V`'svg_sub(+)" at (Here,Bx.n) above rjust }
+ continue to (Out,Here)
+ {"+V`'svg_sub(in) (unreg)" wid 8*textht "+9.5V (min)" below}
+ {dot(at (Q2.C,Here)); line to Q2.C
+ "V`'svg_sub(C)" at (Here,Bx.n) above rjust }
+ dot(at (Q1.C,Here)); line to Q1.C
+ "Q`'svg_sub(1)" ljust "TIP41" ljust
+
+ command "</g>"
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/Reg723DPV.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/ResistorsDPV.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/ResistorsDPV.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/ResistorsDPV.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -28,7 +28,7 @@
{resistor(,,E) ; move ;"`...(,,E) svg_equiv ebox'" ljust}
}
move down vm*1.1; right_
-{ {ebox(,,,0.9) ; move ;"`ebox(,,,0.9)'" ljust}
+{ {resistor(,,T) ; move ;"`...(,,T)'" ljust}
move right_ hm
{ebox(,wdth=0.2;box=dashed shaded "green";text="X") ; move
"`ebox(,wdth=0.2;box=dashed shaded \"green\";'" ljust \
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/SourcesDPV.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/SourcesDPV.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/SourcesDPV.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -10,10 +10,12 @@
{source(,I) ; move ; "`source(,I)'" ljust} NL
{C:source(,i) ; move ; "`source(,i)'" ljust} NL
{D:source(,ti) ; move ; "`source(,ti)'" ljust} NL
+ {source(,dci) ; move ; "`source(,dci)'" ljust} NL
{source(,ii) ; move ; "`source(,ii)'" ljust} NL
{source(,V) ; move ; "`source(,V)'" ljust} NL
{source(,v) ; move ; "`source(,v)'" ljust} NL
{source(,tv) ; move ; "`source(,tv)'" ljust} NL
+ {source(,dcv) ; move ; "`source(,dcv)'" ljust} NL
{source(,SC) ; move ; "`source(,SC)'" ljust} NL
{source(,AC); move ; "`source(,AC)'" ljust} NL
{source(,X) ; move ; "`source(,X)'" ljust} NL
@@ -20,8 +22,6 @@
{source(,G) ; move ; "`source(,G)'" ljust} NL
{source(,Q) ; move ; "`source(,Q)'" ljust} NL #(0.3)
{source(,F) ; move ; "`source(,F)'" ljust} NL
- {geiger(,,,,fill_(0.9)); move;
- "`geiger(,,,,'" ljust "`fill_(0.9))'" ljust} NL
}
move right_ 2.0
@@ -59,6 +59,8 @@
{consource(,tv) ; move ; "`consource(,tv)'" ljust} NL(0.3)
{proximity ; move ;
"`proximity'" ljust "` = consource(,P)'" wid 80bp__ ljust} NL(0.35)
+ {geiger(,,,,fill_(0.9)); move;
+ "`geiger(,,,,'" ljust "`fill_(0.9))'" ljust} NL
command "</g>" # end font
.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/controlDPV.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/controlDPV.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/controlDPV.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -142,6 +142,7 @@
# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . #
+ifelse(0,1,`
Multiblock: [
boxht = 0.4
boxwid = boxht
@@ -218,7 +219,85 @@
] with .nw at last [].sw + (0,-0.3)
"(d) Nonlinear feedforward (for performance) and small-signal feedback
(for stability)" below ljust at Nonlinear.sw+(0,-5pt__)
+')
+# Gimbal.m4
+# https://tex.stackexchange.com/questions/734796/how-to-create-a-gimbal-model-for-one-axis-using-tikz
-#print PID.n.y - Nonlinear.s.y
+#gen_init
+#svg_font(sans-serif,9bp__)
+Gimbal: [
+textht = 9bp__
+circlerad = 8bp__
+linewid = linewid*4/3
+toffset = textht*3/2
+textoffset = textht/2
+
+ Ir: arrow right_ linewid*3/2
+ { "Current" ljust at Ir.start+(0,toffset) "reference" ljust
+ "svg_it(i)svg_sub(reference)" ljust at Ir.start-(0,toffset*2/3) }
+ Ka: box "svg_it(K)svg_sub(a)"
+ { "Current" at Ka.s -(0,toffset) "amplifier gain" }
+ arrow right_ linewid*3/2
+ { "Motor" at last arrow+(0,toffset) "current" }
+ Kt: box "svg_it(K)svg_sub(t)"
+ { "Motor torque" at Kt.s -(0,toffset) "constant" }
+ arrow
+ S1: circle; {"-" at S1.n above ljust; "+" at S1.w above rjust }
+ arrow
+ GI: box #"\frac{1}{J`'svg_sub(s)}";
+ { "svg_it(1)" at GI above
+ "svg_it(J)svg_sub(s)" wid toffset*5/4 at GI below
+ line right_ last "".e.x - last "".w.x with .c at GI }
+ arrow "svg_omega`'svg_sub(h)" above
+ { "Gimbal inertia" at GI.s -(0,toffset) }
+ S2: circle at Here+(0,3/2*boxht)
+ {"-" at S2.e above ljust; "+" at S2.s below rjust }
+ { arrow <- right_; "svg_omega`'svg_sub(b)" above rjust }
+ arrow left_ from S2.w to (GI.e,S2)
+ Bv: box "svg_it(B)svg_sub(v)"
+ arrow left_ "svg_it(T)svg_sub(viscous)" below
+ S3: circle "+"
+ { arrow <- from S3.w; "svg_it(T)svg_sub(ext)" above ljust }
+ arrow from S3 to S1 chop
+ Fc: box ht boxht*3/2 at Bv+(0,boxht*7/4)
+ arrow from S2.n to (S2,Fc) then to Fc.e
+ arrow from Fc.w to (S3,Fc) then to S3.n
+ "svg_it(T)svg_sub(friction)" at (S3,Fc) above
+ [ Orig: Here; V: arrow thick 0.4 from Orig up_ Fc.ht*5/12
+ H: arrow thick 0.4 right_ Fc.wid*5/6 with .c at Orig
+ line thick 1.2 up Fc.ht/2 with .c at Orig
+ spline 0.55 thick 1.2 down_ boxht/5 right_ boxht/9 \
+ then right_ boxwid/9 then right_ boxwid/4 up_ boxwid/8
+ { "svg_it(F)svg_sub(c)" above }
+ spline 0.55 thick 1.2 from last line.start up_ boxht/5 left_ boxht/9 \
+ then left_ boxwid/9 then left_ boxwid/4 down_ boxwid/8
+ { "svg_it(-F)svg_sub(c)" below }
+ ] with .Orig at Fc
+ Gl: box wid boxwid*7/4 with .e at GI.e+(0,-boxht*2)
+ { "svg_omega`'svg_sub(g)svg_sup(2)" at Gl above
+ "svg_it(s)svg_sup(2) + 2`'svg_zeta`'svg_omega`'svg_sub(g)s +
+ svg_omega`'svg_sub(g)svg_sup(2)" at Gl below
+ line right_ Gl.wid*7/8 with .c at Gl }
+ { "Gyro lowpass" at Gl.s -(0,toffset) }
+ arrow from Gl.e to (S2,Gl) then to S2.s
+ Gd: box wid boxwid*2 at (Kt,Gl)
+ { "svg_small((svg_it(d)svg_sup(2)/12)s`'svg_sup(2) - (svg_it(d)/2)s + 1,85)" \
+ at Gd above
+ "svg_small((svg_it(d)svg_sup(2)/12)s`'svg_sup(2) + (svg_it(d)/2)s + 1,85)" \
+ at Gd below
+ line right_ Gd.wid*7/8 with .c at Gd }
+ { "Gyro delay" at Gd.s -(0,toffset) }
+ arrow left_ from Gl.w to Gd.e
+ arrow left_ from Gd.w chop 0 chop
+ S4: circle "+"
+ {"Gyro noise" at (S4,last ""); arrow from last "".n to S4.s }
+ Rm: arrow left_ from S4.w to (Ir.start,S4)
+ { "Rate" ljust at Here+(0,toffset) "measurement" ljust }
+ "svg_omega`'svg_sub(measured)" ljust at Here-(0,toffset*2/3)
+
+# command "</g>"
+] with .nw at last [].sw + (0,-0.25)
+ "(c) Single-axis gimbal model" below ljust at Gimbal.sw+(0,-5pt__)
+
command "</g>"
.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPV.htmx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPV.htmx 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPV.htmx 2025-04-01 20:02:45 UTC (rev 74818)
@@ -474,9 +474,11 @@
A CMOS NAND gate`,' a test circuit`,' and an XMOSFET example)
cfig(pwrsupplyDPV,
- An elementary power supply circuit with colored elements`,'
- and a multiple-winding transformer with 3-phase rectifier)
+ An unregulated power supply)
+cfig(Reg723DPV,
+ A 723 regulator circuit)
+
cfig(TTLnandDPV,
TTL NAND gate illustrating a transistor with multiple emitters)
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPVs.htmx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPVs.htmx 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/examplesDPVs.htmx 2025-04-01 20:02:45 UTC (rev 74818)
@@ -10,7 +10,7 @@
<link rel="shortcut icon" href="../Circuit_macros.ico" type="image/x-icon" />
</HEAD>
-`<!-- Google tag (gtag.js) -->
+<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-HRS8TQGRE8"></script>
<script>
window.dataLayer = window.dataLayer || [];
@@ -18,7 +18,7 @@
gtag('js', new Date());
gtag('config', 'G-HRS8TQGRE8');
-</script>'
+</script>
<!-- m4 macros: ------------------------------------------------------------
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/pwrsupplyDPV.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/pwrsupplyDPV.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/dpv/pwrsupplyDPV.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -3,6 +3,7 @@
cct_init
ifdef(`m4pco',`resetrgb')
+ifelse(0,1,`
Singlephase:[
linewid = linewid*1.2
down_
@@ -72,5 +73,105 @@
line from T.X2.S2 to (L.T2,T.X2.S2); dot
line from T.X3.S2 to (L.T1,T.X3.S2); dot
] with .sw at Singlephase.se+(0.3,0)
+')
+
+#.PE
+#.PS
+# PS50.m4
+# Fig 9.49 p. 630
+#cct_init
+
+PS50: [
+svg_font(sans-serif,9bp__)
+
+ h = dimen_*2.5
+ T: dot
+ Cs: capacitor(down_ h/2)
+ llabel(,"C`'svg_sub(s)" ljust "0.1-1`'svg_micro`'F" ljust)
+ dot; { line right_ dimen_*3/4; ground(,,F) }
+ Rs: resistor(down_ Cs.len)
+ llabel(,"R`'svg_sub(s)" ljust "10`'svg_ohm-" ljust "100`'svg_ohm" ljust)
+ B: dot
+ Br: [ size=dimen_/2
+ N: dot; E: dot(at N+(size,-size))
+ W: dot(at N+(-size,-size)); S: dot(at W+(size,-size))
+ diode(from N to E); diode(from W to N)
+ diode(from W to S); diode(from S to E)
+ thinlines_
+ box dashed wid 3*size ht 3*size with .c at 0.5 between N and S
+ "GBU604" at last box.n above rjust ] with .W at Cs.end+(dimen_*3/2,0)
+ line from Br.N to (Br.N,T) then left Br.N.x-Cs.x+dimen_*3/4
+ { line from (Here,B) to (Br.S,B) then to Br.S }
+ T80: transformer(up_ h,,,W) with .P2 at Here
+ "115 V:80 V CT" at T80+(-dimen_/4,-h/2-dimen_/3) "4 A"
+
+ line from Br.E right dimen_/2 then up T.y-Br.E.y then right_ dimen_*2/3
+ dot; {C1: capacitor(down_ Cs.len+dimen_/3,C+); rlabel(,C`'svg_sub(1))
+ dot; C2: capacitor(down_ C1.len,C+); rlabel(,C`'svg_sub(2)); dot}
+ {"2 x 8200`'svg_micro`'F" \
+ at C1.start+(0,dimen_/2) "80 Vdc" }
+ {line right_ dimen_*3/2
+ P50: dot(,dotrad_*3/2,1)
+ "+50 V" at last [].e ljust "2 A" ljust }
+ dot(at 1/2 between Here and P50)
+ R2: resistor(down_ C1.len)
+ llabel(,"R`'svg_sub(2)" ljust "680" ljust "5 W" ljust)
+ {dot; line to (C1,Here)}
+ {line to (P50,Here); dot(,dotrad_*3/2,1)
+ "COM" wid 24bp__ at last [].e ljust}
+ R3: resistor(down_ C2.len)
+ llabel(,"R`'svg_sub(3)" ljust "680" ljust "5 W" ljust); dot
+ {line to (P50,Here); dot(,dotrad_*3/2,1);
+ "-50 V" at last [].e ljust "2 A" ljust }
+ line left_ Here.x-Br.W.x+dimen_/2; continue to (Here,Br.W) then to Br.W
+ line from T80.TP right_ (Rs.x-T80.TP.x)/2 \
+ then down_ T80.TP.y-B.y + (B.y-C2.end.y)/2
+ continue to (Br.E+(dimen_/2,0),Here)
+ continue to (Here,C2.start) then to C2.start
+ dot(at (T80.S2,T)-(dimen_*4/3,0))
+ { line from (T80.S2,T) to Here-(dimen_/2,0)
+ line dashed to Here-(dimen_/2,0) chop dimen_/10; In1: Here }
+ { line from (T80.S2,B) to (Here-(dimen_/2,0),B)
+ line dashed to Here-(dimen_/2,0) chop dimen_/10; In2: Here}
+ F2: fuse(down_ h/2,D)
+ llabel(,"F`'svg_sub(2)" ljust "100 svg_deg`'C" ljust "cutout" ljust)
+ MOV: ebox(down_ to (Here,B))
+ "MOV" at last [].e ljust "130 Vac" ljust "S20K130" ljust
+ variable(,uNN,,dimen_/2)
+ { arc dashed from 3rd last [].w-(2bp__,0) to 2nd last [].w-(2bp__,0) \
+ rad dimen_ }
+ dot(at MOV.end)
+
+#SB: In1+(dimen_*4,dimen_/2)
+#ST: SB+(0,h)
+ SB: In2
+ ST: In1
+ T880: transformer(right_ dimen_*7/8,,,WD1) at (ST+SB)/2-(2*dimen_,0)
+ line from T880.P2 to (T880.P2,SB) then to SB; dot(,dotrad_*3/2,1)
+ line from T880.S2 to (T880.S2,ST) then to ST; dot(,dotrad_*3/2,1)
+ line dashed from ST.e right_ dimen_/2 chop dimen_/10
+ line dashed from SB.e right_ dimen_/2 chop dimen_/10
+ dot(at (T880.P2,ST)+(dimen_,0))
+ Cy: capacitor(down_ h/2); rlabel(C`'svg_sub(y),,2.2 nF); dot
+ {line right_ dimen_/3; ground(,,F)}
+ capacitor(down_ to (Here,SB)); rlabel(C`'svg_sub(y),,2.2 nF); dot
+ Socket: pconnex(U,PF) at T880.w-(dimen_*3.5,0)
+ line right_ dimen_/2 from Socket.G.e; ground(,,F)
+ line from Socket.H.n to (Socket.H.n,ST);
+ F1: fuse(right_ dimen_,D); llabel(,"F1"); rlabel(,"6 A SB")
+ TS: lswitch(right_ dimen_*3/4,,D); { line to (T880.S1,Here) then to T880.S1 }
+ dot(at Here+(dimen_/2,0))
+ { R1: resistor(down_ to (Here,SB)); rlabel(,"R`'svg_sub(1)" rjust \
+ "1 M`'svg_ohm" rjust); dot }
+ dot(at Here+(dimen_/2,0))
+ Cx: capacitor(down_ to (Here,SB)); llabel(C`'svg_sub(x),,100 nF); dot
+ line from Socket.N.s to (Socket.N.s,SB) then to (TS.start,SB)
+ BS: lswitch(right_ TS.len,,D); { line dashed from TS to BS chop dimen_/3 }
+ line to (T880.P1,Here) then to T880.P1
+ "Qualtek 880-06/006" at Cx.start+(dimen_/2,dimen_/4)
+
+command "</g>"
+ ] #with .nw at Singlephase.sw+(0,-0.2)
+
.PE
Deleted: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ex02.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ex02.tex 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ex02.tex 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,1573 +0,0 @@
-\begin{tikzpicture}[scale=2.54]%
-% dpic version 2024.01.01 option -g for TikZ and PGF 1.01
-\ifx\dpiclw\undefined\newdimen\dpiclw\fi
-\global\def\dpicdraw{\draw[line width=\dpiclw]}
-\global\def\dpicstop{;}
-\dpiclw=0.8bp
-\dpiclw=0.8bp
-\dpicdraw (0,0.491667)
- --(0,0.691667)
- --(0.4,0.491667)
- --(0,0.291667)
- --(0,0.491667)\dpicstop
-\dpicdraw (0.4,0.491667)
- --(0.6,0.491667)\dpicstop
-\draw (0.055348,0.591667) node{{\scriptsize$-$}};
-\draw (0.055348,0.391667) node{{\scriptsize$+$}};
-\dpicdraw (0.175736,0.067403)
- --(0.034315,0.208824)
- --(0.458579,0.350245)
- --(0.317157,-0.074019)
- --(0.175736,0.067403)\dpicstop
-\dpicdraw (0.458579,0.350245)
- --(0.6,0.491667)\dpicstop
-\draw (0.144162,0.17725) node{{\scriptsize$-$}};
-\draw (0.285584,0.035829) node{{\scriptsize$+$}};
-\dpicdraw (0.6,-0.108333)
- --(0.4,-0.108333)
- --(0.6,0.291667)
- --(0.8,-0.108333)
- --(0.6,-0.108333)\dpicstop
-\dpicdraw (0.6,0.291667)
- --(0.6,0.491667)\dpicstop
-\draw (0.5,-0.052985) node{{\scriptsize$-$}};
-\draw (0.7,-0.052985) node{{\scriptsize$+$}};
-\dpicdraw (1.024264,0.067403)
- --(0.882843,-0.074019)
- --(0.741421,0.350245)
- --(1.165685,0.208824)
- --(1.024264,0.067403)\dpicstop
-\dpicdraw (0.741421,0.350245)
- --(0.6,0.491667)\dpicstop
-\draw (0.914416,0.035829) node{{\scriptsize$-$}};
-\draw (1.055838,0.17725) node{{\scriptsize$+$}};
-\dpicdraw (1.2,0.491667)
- --(1.2,0.291667)
- --(0.8,0.491667)
- --(1.2,0.691667)
- --(1.2,0.491667)\dpicstop
-\dpicdraw (0.8,0.491667)
- --(0.6,0.491667)\dpicstop
-\draw (1.144652,0.391667) node{{\scriptsize$-$}};
-\draw (1.144652,0.591667) node{{\scriptsize$+$}};
-\dpicdraw (1.024264,0.915931)
- --(1.165685,0.774509)
- --(0.741421,0.633088)
- --(0.882843,1.057352)
- --(1.024264,0.915931)\dpicstop
-\dpicdraw (0.741421,0.633088)
- --(0.6,0.491667)\dpicstop
-\draw (1.055838,0.806083) node{{\scriptsize$-$}};
-\draw (0.914416,0.947504) node{{\scriptsize$+$}};
-\dpicdraw (0.6,1.091667)
- --(0.8,1.091667)
- --(0.6,0.691667)
- --(0.4,1.091667)
- --(0.6,1.091667)\dpicstop
-\dpicdraw (0.6,0.691667)
- --(0.6,0.491667)\dpicstop
-\draw (0.7,1.036319) node{{\scriptsize$-$}};
-\draw (0.5,1.036319) node{{\scriptsize$+$}};
-\dpicdraw (0.175736,0.915931)
- --(0.317157,1.057352)
- --(0.458579,0.633088)
- --(0.034315,0.774509)
- --(0.175736,0.915931)\dpicstop
-\dpicdraw (0.458579,0.633088)
- --(0.6,0.491667)\dpicstop
-\draw (0.285584,0.947504) node{{\scriptsize$-$}};
-\draw (0.144162,0.806083) node{{\scriptsize$+$}};
-\dpicdraw (0.6,-0.108333)
- --(0.6,-0.208333)
- --(0.633333,-0.225)
- --(0.566667,-0.258333)
- --(0.633333,-0.291667)
- --(0.566667,-0.325)
- --(0.633333,-0.358333)
- --(0.566667,-0.391667)
- --(0.6,-0.408333)
- --(0.6,-0.508333)\dpicstop
-\dpicdraw (0.6,-0.508333)
- --(0.6,-0.612799)\dpicstop
-\filldraw[line width=0bp](0.741071,-0.503813)
- --(0.765763,-0.447693)
- --(0.709644,-0.472386) --cycle\dpicstop
-\dpicdraw (0.635656,-0.577801)
- --(0.754925,-0.458532)\dpicstop
-\filldraw[line width=0bp](0.776426,-0.539168)
- --(0.801119,-0.483049)
- --(0.744999,-0.507741) --cycle\dpicstop
-\dpicdraw (0.671011,-0.613156)
- --(0.79028,-0.493887)\dpicstop
-\fill[fill=black,line width=0bp](0.6,-0.612799)
- --(0.633333,-0.612799)
- --(0.6,-0.664999)
- --(0.566667,-0.612799)
- --(0.6,-0.612799)--cycle
-\dpicstop
-\dpicdraw (0.6,-0.612799)
- --(0.633333,-0.612799)
- --(0.6,-0.664999)
- --(0.566667,-0.612799)
- --(0.6,-0.612799)\dpicstop
-\dpicdraw (0.562615,-0.670534)
- --(0.637385,-0.670534)\dpicstop
-\dpicdraw (0.6,-0.670534)
- --(0.6,-0.775)\dpicstop
-\dpicdraw (0.6,-0.775)
- --(0.6,-0.879466)\dpicstop
-\filldraw[line width=0bp](0.455001,-0.774408)
- --(0.398881,-0.749715)
- --(0.423574,-0.805835) --cycle\dpicstop
-\dpicdraw (0.528989,-0.879823)
- --(0.40972,-0.760554)\dpicstop
-\filldraw[line width=0bp](0.490356,-0.739053)
- --(0.434237,-0.71436)
- --(0.458929,-0.77048) --cycle\dpicstop
-\dpicdraw (0.564344,-0.844468)
- --(0.445075,-0.725198)\dpicstop
-\fill[fill=black,line width=0bp](0.6,-0.879466)
- --(0.633333,-0.879466)
- --(0.6,-0.931666)
- --(0.566667,-0.879466)
- --(0.6,-0.879466)--cycle
-\dpicstop
-\dpicdraw (0.6,-0.879466)
- --(0.633333,-0.879466)
- --(0.6,-0.931666)
- --(0.566667,-0.879466)
- --(0.6,-0.879466)\dpicstop
-\dpicdraw (0.562615,-0.937201)
- --(0.637385,-0.937201)\dpicstop
-\dpicdraw (0.6,-0.937201)
- --(0.6,-1.041667)\dpicstop
-\dpicdraw (0.666667,-1.041667)
- --(0.533333,-1.041667)\dpicstop
-\dpicdraw (0.644444,-1.066667)
- --(0.555556,-1.066667)\dpicstop
-\dpicdraw (0.628571,-1.091667)
- --(0.571429,-1.091667)\dpicstop
-\dpicdraw[fill=black](2.725171,0.033504) circle (0.006299in)\dpicstop
-\dpicdraw (2.425171,-1.086111)
- --(2.625171,-1.086111)\dpicstop
-\dpicdraw (2.625171,-1.086111)
- --(2.625171,-1.091667)\dpicstop
-\dpicdraw (2.625171,-1.086111)
- ..controls (2.625171,-1.077179) and (2.629936,-1.068926)
- ..(2.637671,-1.06446)
- ..controls (2.645406,-1.059995) and (2.654936,-1.059995)
- ..(2.662671,-1.06446)
- ..controls (2.670406,-1.068926) and (2.675171,-1.077179)
- ..(2.675171,-1.086111)\dpicstop
-\dpicdraw (2.675171,-1.086111)
- --(2.675171,-1.091667)\dpicstop
-\dpicdraw (2.675171,-1.086111)
- ..controls (2.675171,-1.077179) and (2.679936,-1.068926)
- ..(2.687671,-1.06446)
- ..controls (2.695406,-1.059995) and (2.704936,-1.059995)
- ..(2.712671,-1.06446)
- ..controls (2.720406,-1.068926) and (2.725171,-1.077179)
- ..(2.725171,-1.086111)\dpicstop
-\dpicdraw (2.725171,-1.086111)
- --(2.725171,-1.091667)\dpicstop
-\dpicdraw (2.725171,-1.086111)
- ..controls (2.725171,-1.077179) and (2.729936,-1.068926)
- ..(2.737671,-1.06446)
- ..controls (2.745406,-1.059995) and (2.754936,-1.059995)
- ..(2.762671,-1.06446)
- ..controls (2.770406,-1.068926) and (2.775171,-1.077179)
- ..(2.775171,-1.086111)\dpicstop
-\dpicdraw (2.775171,-1.086111)
- --(2.775171,-1.091667)\dpicstop
-\dpicdraw (2.775171,-1.086111)
- ..controls (2.775171,-1.077179) and (2.779936,-1.068926)
- ..(2.787671,-1.06446)
- ..controls (2.795406,-1.059995) and (2.804936,-1.059995)
- ..(2.812671,-1.06446)
- ..controls (2.820406,-1.068926) and (2.825171,-1.077179)
- ..(2.825171,-1.086111)\dpicstop
-\dpicdraw (2.825171,-1.086111)
- --(2.825171,-1.091667)\dpicstop
-\dpicdraw (2.825171,-1.086111)
- --(3.025171,-1.086111)\dpicstop
-\dpicdraw (3.025171,-1.086111)
- --(3.198376,-0.986111)\dpicstop
-\dpicdraw (3.198376,-0.986111)
- --(3.201154,-0.990922)\dpicstop
-\dpicdraw (3.198376,-0.986111)
- ..controls (3.19391,-0.978376) and (3.19391,-0.968846)
- ..(3.198376,-0.961111)
- ..controls (3.202842,-0.953376) and (3.211095,-0.948611)
- ..(3.220027,-0.948611)
- ..controls (3.228958,-0.948611) and (3.237211,-0.953376)
- ..(3.241677,-0.961111)\dpicstop
-\dpicdraw (3.241677,-0.961111)
- --(3.244455,-0.965922)\dpicstop
-\dpicdraw (3.241677,-0.961111)
- ..controls (3.237211,-0.953376) and (3.237211,-0.943846)
- ..(3.241677,-0.936111)
- ..controls (3.246143,-0.928376) and (3.254396,-0.923611)
- ..(3.263328,-0.923611)
- ..controls (3.272259,-0.923611) and (3.280513,-0.928376)
- ..(3.284978,-0.936111)\dpicstop
-\dpicdraw (3.284978,-0.936111)
- --(3.287756,-0.940922)\dpicstop
-\dpicdraw (3.284978,-0.936111)
- ..controls (3.280513,-0.928376) and (3.280513,-0.918846)
- ..(3.284978,-0.911111)
- ..controls (3.289444,-0.903376) and (3.297697,-0.898611)
- ..(3.306629,-0.898611)
- ..controls (3.315561,-0.898611) and (3.323814,-0.903376)
- ..(3.32828,-0.911111)\dpicstop
-\dpicdraw (3.32828,-0.911111)
- --(3.331057,-0.915922)\dpicstop
-\dpicdraw (3.32828,-0.911111)
- ..controls (3.323814,-0.903376) and (3.323814,-0.893846)
- ..(3.32828,-0.886111)
- ..controls (3.332746,-0.878376) and (3.340999,-0.873611)
- ..(3.34993,-0.873611)
- ..controls (3.358862,-0.873611) and (3.367115,-0.878376)
- ..(3.371581,-0.886111)\dpicstop
-\dpicdraw (3.371581,-0.886111)
- --(3.374359,-0.890922)\dpicstop
-\dpicdraw (3.371581,-0.886111)
- --(3.544786,-0.786111)\dpicstop
-\dpicdraw (3.544786,-0.786111)
- --(3.644786,-0.612906)\dpicstop
-\dpicdraw (3.644786,-0.612906)
- --(3.649597,-0.615684)\dpicstop
-\dpicdraw (3.644786,-0.612906)
- ..controls (3.637051,-0.60844) and (3.632286,-0.600187)
- ..(3.632286,-0.591255)
- ..controls (3.632286,-0.582324) and (3.637051,-0.574071)
- ..(3.644786,-0.569605)
- ..controls (3.652521,-0.565139) and (3.662051,-0.565139)
- ..(3.669786,-0.569605)\dpicstop
-\dpicdraw (3.669786,-0.569605)
- --(3.674597,-0.572383)\dpicstop
-\dpicdraw (3.669786,-0.569605)
- ..controls (3.662051,-0.565139) and (3.657286,-0.556886)
- ..(3.657286,-0.547954)
- ..controls (3.657286,-0.539022) and (3.662051,-0.530769)
- ..(3.669786,-0.526303)
- ..controls (3.677521,-0.521838) and (3.687051,-0.521838)
- ..(3.694786,-0.526303)\dpicstop
-\dpicdraw (3.694786,-0.526303)
- --(3.699597,-0.529081)\dpicstop
-\dpicdraw (3.694786,-0.526303)
- ..controls (3.687051,-0.521838) and (3.682286,-0.513584)
- ..(3.682286,-0.504653)
- ..controls (3.682286,-0.495721) and (3.687051,-0.487468)
- ..(3.694786,-0.483002)
- ..controls (3.702521,-0.478536) and (3.712051,-0.478536)
- ..(3.719786,-0.483002)\dpicstop
-\dpicdraw (3.719786,-0.483002)
- --(3.724597,-0.48578)\dpicstop
-\dpicdraw (3.719786,-0.483002)
- ..controls (3.712051,-0.478536) and (3.707286,-0.470283)
- ..(3.707286,-0.461352)
- ..controls (3.707286,-0.45242) and (3.712051,-0.444167)
- ..(3.719786,-0.439701)
- ..controls (3.727521,-0.435235) and (3.737051,-0.435235)
- ..(3.744786,-0.439701)\dpicstop
-\dpicdraw (3.744786,-0.439701)
- --(3.749597,-0.442479)\dpicstop
-\dpicdraw (3.744786,-0.439701)
- --(3.844786,-0.266496)\dpicstop
-\dpicdraw (3.844786,-0.266496)
- --(3.844786,-0.066496)\dpicstop
-\dpicdraw (3.844786,-0.066496)
- --(3.850342,-0.066496)\dpicstop
-\dpicdraw (3.844786,-0.066496)
- ..controls (3.835854,-0.066496) and (3.827601,-0.061731)
- ..(3.823135,-0.053996)
- ..controls (3.81867,-0.046261) and (3.81867,-0.036731)
- ..(3.823135,-0.028996)
- ..controls (3.827601,-0.021261) and (3.835854,-0.016496)
- ..(3.844786,-0.016496)\dpicstop
-\dpicdraw (3.844786,-0.016496)
- --(3.850342,-0.016496)\dpicstop
-\dpicdraw (3.844786,-0.016496)
- ..controls (3.835854,-0.016496) and (3.827601,-0.011731)
- ..(3.823135,-0.003996)
- ..controls (3.81867,0.003739) and (3.81867,0.013269)
- ..(3.823135,0.021004)
- ..controls (3.827601,0.028739) and (3.835854,0.033504)
- ..(3.844786,0.033504)\dpicstop
-\dpicdraw (3.844786,0.033504)
- --(3.850342,0.033504)\dpicstop
-\dpicdraw (3.844786,0.033504)
- ..controls (3.835854,0.033504) and (3.827601,0.038269)
- ..(3.823135,0.046004)
- ..controls (3.81867,0.053739) and (3.81867,0.063269)
- ..(3.823135,0.071004)
- ..controls (3.827601,0.078739) and (3.835854,0.083504)
- ..(3.844786,0.083504)\dpicstop
-\dpicdraw (3.844786,0.083504)
- --(3.850342,0.083504)\dpicstop
-\dpicdraw (3.844786,0.083504)
- ..controls (3.835854,0.083504) and (3.827601,0.088269)
- ..(3.823135,0.096004)
- ..controls (3.81867,0.103739) and (3.81867,0.113269)
- ..(3.823135,0.121004)
- ..controls (3.827601,0.128739) and (3.835854,0.133504)
- ..(3.844786,0.133504)\dpicstop
-\dpicdraw (3.844786,0.133504)
- --(3.850342,0.133504)\dpicstop
-\dpicdraw (3.844786,0.133504)
- --(3.844786,0.333504)\dpicstop
-\dpicdraw (3.844786,0.333504)
- --(3.744786,0.506709)\dpicstop
-\dpicdraw (3.744786,0.506709)
- --(3.749597,0.509487)\dpicstop
-\dpicdraw (3.744786,0.506709)
- ..controls (3.732829,0.499806) and (3.717539,0.503903)
- ..(3.710635,0.51586)
- ..controls (3.703732,0.527817) and (3.707829,0.543107)
- ..(3.719786,0.55001)\dpicstop
-\dpicdraw (3.719786,0.55001)
- --(3.724597,0.552788)\dpicstop
-\dpicdraw (3.719786,0.55001)
- ..controls (3.712051,0.545545) and (3.702521,0.545545)
- ..(3.694786,0.55001)
- ..controls (3.687051,0.554476) and (3.682286,0.562729)
- ..(3.682286,0.571661)
- ..controls (3.682286,0.580593) and (3.687051,0.588846)
- ..(3.694786,0.593312)\dpicstop
-\dpicdraw (3.694786,0.593312)
- --(3.699597,0.59609)\dpicstop
-\dpicdraw (3.694786,0.593312)
- ..controls (3.682829,0.586408) and (3.667539,0.590505)
- ..(3.660635,0.602462)
- ..controls (3.653732,0.61442) and (3.657829,0.629709)
- ..(3.669786,0.636613)\dpicstop
-\dpicdraw (3.669786,0.636613)
- --(3.674597,0.639391)\dpicstop
-\dpicdraw (3.669786,0.636613)
- ..controls (3.657829,0.629709) and (3.642539,0.633806)
- ..(3.635635,0.645764)
- ..controls (3.628732,0.657721) and (3.632829,0.673011)
- ..(3.644786,0.679914)\dpicstop
-\dpicdraw (3.644786,0.679914)
- --(3.649597,0.682692)\dpicstop
-\dpicdraw (3.644786,0.679914)
- --(3.544786,0.853119)\dpicstop
-\dpicdraw (3.544786,0.853119)
- --(3.371581,0.953119)\dpicstop
-\dpicdraw (3.371581,0.953119)
- --(3.374359,0.957931)\dpicstop
-\dpicdraw (3.371581,0.953119)
- ..controls (3.367115,0.945384) and (3.358862,0.940619)
- ..(3.34993,0.940619)
- ..controls (3.340999,0.940619) and (3.332746,0.945384)
- ..(3.32828,0.953119)
- ..controls (3.323814,0.960854) and (3.323814,0.970384)
- ..(3.32828,0.978119)\dpicstop
-\dpicdraw (3.32828,0.978119)
- --(3.331057,0.982931)\dpicstop
-\dpicdraw (3.32828,0.978119)
- ..controls (3.323814,0.970384) and (3.315561,0.965619)
- ..(3.306629,0.965619)
- ..controls (3.297697,0.965619) and (3.289444,0.970384)
- ..(3.284978,0.978119)
- ..controls (3.280513,0.985854) and (3.280513,0.995384)
- ..(3.284978,1.003119)\dpicstop
-\dpicdraw (3.284978,1.003119)
- --(3.287756,1.007931)\dpicstop
-\dpicdraw (3.284978,1.003119)
- ..controls (3.280513,0.995384) and (3.272259,0.990619)
- ..(3.263328,0.990619)
- ..controls (3.254396,0.990619) and (3.246143,0.995384)
- ..(3.241677,1.003119)
- ..controls (3.237211,1.010854) and (3.237211,1.020384)
- ..(3.241677,1.028119)\dpicstop
-\dpicdraw (3.241677,1.028119)
- --(3.244455,1.032931)\dpicstop
-\dpicdraw (3.241677,1.028119)
- ..controls (3.237211,1.020384) and (3.228958,1.015619)
- ..(3.220027,1.015619)
- ..controls (3.211095,1.015619) and (3.202842,1.020384)
- ..(3.198376,1.028119)
- ..controls (3.19391,1.035854) and (3.19391,1.045384)
- ..(3.198376,1.053119)\dpicstop
-\dpicdraw (3.198376,1.053119)
- --(3.201154,1.057931)\dpicstop
-\dpicdraw (3.198376,1.053119)
- --(3.025171,1.153119)\dpicstop
-\dpicdraw (3.025171,1.153119)
- --(2.825171,1.153119)\dpicstop
-\dpicdraw (2.825171,1.153119)
- --(2.825171,1.158675)\dpicstop
-\dpicdraw (2.825171,1.153119)
- ..controls (2.825171,1.144188) and (2.820406,1.135935)
- ..(2.812671,1.131469)
- ..controls (2.804936,1.127003) and (2.795406,1.127003)
- ..(2.787671,1.131469)
- ..controls (2.779936,1.135935) and (2.775171,1.144188)
- ..(2.775171,1.153119)\dpicstop
-\dpicdraw (2.775171,1.153119)
- --(2.775171,1.158675)\dpicstop
-\dpicdraw (2.775171,1.153119)
- ..controls (2.775171,1.144188) and (2.770406,1.135935)
- ..(2.762671,1.131469)
- ..controls (2.754936,1.127003) and (2.745406,1.127003)
- ..(2.737671,1.131469)
- ..controls (2.729936,1.135935) and (2.725171,1.144188)
- ..(2.725171,1.153119)\dpicstop
-\dpicdraw (2.725171,1.153119)
- --(2.725171,1.158675)\dpicstop
-\dpicdraw (2.725171,1.153119)
- ..controls (2.725171,1.144188) and (2.720406,1.135935)
- ..(2.712671,1.131469)
- ..controls (2.704936,1.127003) and (2.695406,1.127003)
- ..(2.687671,1.131469)
- ..controls (2.679936,1.135935) and (2.675171,1.144188)
- ..(2.675171,1.153119)\dpicstop
-\dpicdraw (2.675171,1.153119)
- --(2.675171,1.158675)\dpicstop
-\dpicdraw (2.675171,1.153119)
- ..controls (2.675171,1.144188) and (2.670406,1.135935)
- ..(2.662671,1.131469)
- ..controls (2.654936,1.127003) and (2.645406,1.127003)
- ..(2.637671,1.131469)
- ..controls (2.629936,1.135935) and (2.625171,1.144188)
- ..(2.625171,1.153119)\dpicstop
-\dpicdraw (2.625171,1.153119)
- --(2.625171,1.158675)\dpicstop
-\dpicdraw (2.625171,1.153119)
- --(2.425171,1.153119)\dpicstop
-\dpicdraw (2.425171,1.153119)
- --(2.251966,1.053119)\dpicstop
-\dpicdraw (2.251966,1.053119)
- --(2.249188,1.057931)\dpicstop
-\dpicdraw (2.251966,1.053119)
- ..controls (2.256432,1.045384) and (2.256432,1.035854)
- ..(2.251966,1.028119)
- ..controls (2.2475,1.020384) and (2.239247,1.015619)
- ..(2.230315,1.015619)
- ..controls (2.221383,1.015619) and (2.21313,1.020384)
- ..(2.208664,1.028119)\dpicstop
-\dpicdraw (2.208664,1.028119)
- --(2.205887,1.032931)\dpicstop
-\dpicdraw (2.208664,1.028119)
- ..controls (2.21313,1.020384) and (2.21313,1.010854)
- ..(2.208664,1.003119)
- ..controls (2.204199,0.995384) and (2.195945,0.990619)
- ..(2.187014,0.990619)
- ..controls (2.178082,0.990619) and (2.169829,0.995384)
- ..(2.165363,1.003119)\dpicstop
-\dpicdraw (2.165363,1.003119)
- --(2.162585,1.007931)\dpicstop
-\dpicdraw (2.165363,1.003119)
- ..controls (2.169829,0.995384) and (2.169829,0.985854)
- ..(2.165363,0.978119)
- ..controls (2.160897,0.970384) and (2.152644,0.965619)
- ..(2.143713,0.965619)
- ..controls (2.134781,0.965619) and (2.126528,0.970384)
- ..(2.122062,0.978119)\dpicstop
-\dpicdraw (2.122062,0.978119)
- --(2.119284,0.982931)\dpicstop
-\dpicdraw (2.122062,0.978119)
- ..controls (2.126528,0.970384) and (2.126528,0.960854)
- ..(2.122062,0.953119)
- ..controls (2.117596,0.945384) and (2.109343,0.940619)
- ..(2.100411,0.940619)
- ..controls (2.09148,0.940619) and (2.083226,0.945384)
- ..(2.078761,0.953119)\dpicstop
-\dpicdraw (2.078761,0.953119)
- --(2.075983,0.957931)\dpicstop
-\dpicdraw (2.078761,0.953119)
- --(1.905556,0.853119)\dpicstop
-\dpicdraw (1.905556,0.853119)
- --(1.805556,0.679914)\dpicstop
-\dpicdraw (1.805556,0.679914)
- --(1.800744,0.682692)\dpicstop
-\dpicdraw (1.805556,0.679914)
- ..controls (1.813291,0.675448) and (1.818056,0.667195)
- ..(1.818056,0.658264)
- ..controls (1.818056,0.649332) and (1.813291,0.641079)
- ..(1.805556,0.636613)
- ..controls (1.797821,0.632147) and (1.788291,0.632147)
- ..(1.780556,0.636613)\dpicstop
-\dpicdraw (1.780556,0.636613)
- --(1.775744,0.639391)\dpicstop
-\dpicdraw (1.780556,0.636613)
- ..controls (1.788291,0.632147) and (1.793056,0.623894)
- ..(1.793056,0.614962)
- ..controls (1.793056,0.606031) and (1.788291,0.597778)
- ..(1.780556,0.593312)
- ..controls (1.772821,0.588846) and (1.763291,0.588846)
- ..(1.755556,0.593312)\dpicstop
-\dpicdraw (1.755556,0.593312)
- --(1.750744,0.59609)\dpicstop
-\dpicdraw (1.755556,0.593312)
- ..controls (1.763291,0.588846) and (1.768056,0.580593)
- ..(1.768056,0.571661)
- ..controls (1.768056,0.562729) and (1.763291,0.554476)
- ..(1.755556,0.55001)
- ..controls (1.747821,0.545545) and (1.738291,0.545545)
- ..(1.730556,0.55001)\dpicstop
-\dpicdraw (1.730556,0.55001)
- --(1.725744,0.552788)\dpicstop
-\dpicdraw (1.730556,0.55001)
- ..controls (1.738291,0.545545) and (1.743056,0.537291)
- ..(1.743056,0.52836)
- ..controls (1.743056,0.519428) and (1.738291,0.511175)
- ..(1.730556,0.506709)
- ..controls (1.722821,0.502243) and (1.713291,0.502243)
- ..(1.705556,0.506709)\dpicstop
-\dpicdraw (1.705556,0.506709)
- --(1.700744,0.509487)\dpicstop
-\dpicdraw (1.705556,0.506709)
- --(1.605556,0.333504)\dpicstop
-\dpicdraw (1.605556,0.333504)
- --(1.605556,0.133504)\dpicstop
-\dpicdraw (1.605556,0.133504)
- --(1.6,0.133504)\dpicstop
-\dpicdraw (1.605556,0.133504)
- ..controls (1.614487,0.133504) and (1.62274,0.128739)
- ..(1.627206,0.121004)
- ..controls (1.631672,0.113269) and (1.631672,0.103739)
- ..(1.627206,0.096004)
- ..controls (1.62274,0.088269) and (1.614487,0.083504)
- ..(1.605556,0.083504)\dpicstop
-\dpicdraw (1.605556,0.083504)
- --(1.6,0.083504)\dpicstop
-\dpicdraw (1.605556,0.083504)
- ..controls (1.614487,0.083504) and (1.62274,0.078739)
- ..(1.627206,0.071004)
- ..controls (1.631672,0.063269) and (1.631672,0.053739)
- ..(1.627206,0.046004)
- ..controls (1.62274,0.038269) and (1.614487,0.033504)
- ..(1.605556,0.033504)\dpicstop
-\dpicdraw (1.605556,0.033504)
- --(1.6,0.033504)\dpicstop
-\dpicdraw (1.605556,0.033504)
- ..controls (1.614487,0.033504) and (1.62274,0.028739)
- ..(1.627206,0.021004)
- ..controls (1.631672,0.013269) and (1.631672,0.003739)
- ..(1.627206,-0.003996)
- ..controls (1.62274,-0.011731) and (1.614487,-0.016496)
- ..(1.605556,-0.016496)\dpicstop
-\dpicdraw (1.605556,-0.016496)
- --(1.6,-0.016496)\dpicstop
-\dpicdraw (1.605556,-0.016496)
- ..controls (1.614487,-0.016496) and (1.62274,-0.021261)
- ..(1.627206,-0.028996)
- ..controls (1.631672,-0.036731) and (1.631672,-0.046261)
- ..(1.627206,-0.053996)
- ..controls (1.62274,-0.061731) and (1.614487,-0.066496)
- ..(1.605556,-0.066496)\dpicstop
-\dpicdraw (1.605556,-0.066496)
- --(1.6,-0.066496)\dpicstop
-\dpicdraw (1.605556,-0.066496)
- --(1.605556,-0.266496)\dpicstop
-\dpicdraw (1.605556,-0.266496)
- --(1.705556,-0.439701)\dpicstop
-\dpicdraw (1.705556,-0.439701)
- --(1.700744,-0.442479)\dpicstop
-\dpicdraw (1.705556,-0.439701)
- ..controls (1.713291,-0.435235) and (1.722821,-0.435235)
- ..(1.730556,-0.439701)
- ..controls (1.738291,-0.444167) and (1.743056,-0.45242)
- ..(1.743056,-0.461352)
- ..controls (1.743056,-0.470283) and (1.738291,-0.478536)
- ..(1.730556,-0.483002)\dpicstop
-\dpicdraw (1.730556,-0.483002)
- --(1.725744,-0.48578)\dpicstop
-\dpicdraw (1.730556,-0.483002)
- ..controls (1.738291,-0.478536) and (1.747821,-0.478536)
- ..(1.755556,-0.483002)
- ..controls (1.763291,-0.487468) and (1.768056,-0.495721)
- ..(1.768056,-0.504653)
- ..controls (1.768056,-0.513584) and (1.763291,-0.521838)
- ..(1.755556,-0.526303)\dpicstop
-\dpicdraw (1.755556,-0.526303)
- --(1.750744,-0.529081)\dpicstop
-\dpicdraw (1.755556,-0.526303)
- ..controls (1.763291,-0.521838) and (1.772821,-0.521838)
- ..(1.780556,-0.526303)
- ..controls (1.788291,-0.530769) and (1.793056,-0.539022)
- ..(1.793056,-0.547954)
- ..controls (1.793056,-0.556886) and (1.788291,-0.565139)
- ..(1.780556,-0.569605)\dpicstop
-\dpicdraw (1.780556,-0.569605)
- --(1.775744,-0.572383)\dpicstop
-\dpicdraw (1.780556,-0.569605)
- ..controls (1.788291,-0.565139) and (1.797821,-0.565139)
- ..(1.805556,-0.569605)
- ..controls (1.813291,-0.574071) and (1.818056,-0.582324)
- ..(1.818056,-0.591255)
- ..controls (1.818056,-0.600187) and (1.813291,-0.60844)
- ..(1.805556,-0.612906)\dpicstop
-\dpicdraw (1.805556,-0.612906)
- --(1.800744,-0.615684)\dpicstop
-\dpicdraw (1.805556,-0.612906)
- --(1.905556,-0.786111)\dpicstop
-\dpicdraw (1.905556,-0.786111)
- --(2.078761,-0.886111)\dpicstop
-\dpicdraw (2.078761,-0.886111)
- --(2.075983,-0.890922)\dpicstop
-\dpicdraw (2.078761,-0.886111)
- ..controls (2.083226,-0.878376) and (2.09148,-0.873611)
- ..(2.100411,-0.873611)
- ..controls (2.109343,-0.873611) and (2.117596,-0.878376)
- ..(2.122062,-0.886111)
- ..controls (2.126528,-0.893846) and (2.126528,-0.903376)
- ..(2.122062,-0.911111)\dpicstop
-\dpicdraw (2.122062,-0.911111)
- --(2.119284,-0.915922)\dpicstop
-\dpicdraw (2.122062,-0.911111)
- ..controls (2.126528,-0.903376) and (2.134781,-0.898611)
- ..(2.143713,-0.898611)
- ..controls (2.152644,-0.898611) and (2.160897,-0.903376)
- ..(2.165363,-0.911111)
- ..controls (2.169829,-0.918846) and (2.169829,-0.928376)
- ..(2.165363,-0.936111)\dpicstop
-\dpicdraw (2.165363,-0.936111)
- --(2.162585,-0.940922)\dpicstop
-\dpicdraw (2.165363,-0.936111)
- ..controls (2.169829,-0.928376) and (2.178082,-0.923611)
- ..(2.187014,-0.923611)
- ..controls (2.195945,-0.923611) and (2.204199,-0.928376)
- ..(2.208664,-0.936111)
- ..controls (2.21313,-0.943846) and (2.21313,-0.953376)
- ..(2.208664,-0.961111)\dpicstop
-\dpicdraw (2.208664,-0.961111)
- --(2.205887,-0.965922)\dpicstop
-\dpicdraw (2.208664,-0.961111)
- ..controls (2.21313,-0.953376) and (2.221383,-0.948611)
- ..(2.230315,-0.948611)
- ..controls (2.239247,-0.948611) and (2.2475,-0.953376)
- ..(2.251966,-0.961111)
- ..controls (2.256432,-0.968846) and (2.256432,-0.978376)
- ..(2.251966,-0.986111)\dpicstop
-\dpicdraw (2.251966,-0.986111)
- --(2.249188,-0.990922)\dpicstop
-\dpicdraw (2.251966,-0.986111)
- --(2.425171,-1.086111)\dpicstop
-\dpicdraw (2.485171,-0.862188)
- --(2.611784,-0.862188)\dpicstop
-\dpicdraw[line width=0.4bp](2.611784,-0.862188) circle (0.00109in)\dpicstop
-\dpicdraw (2.611784,-0.862188)
- ..controls (2.603019,-0.843391) and (2.610075,-0.821012)
- ..(2.628036,-0.810642)
- ..controls (2.645998,-0.800272) and (2.668906,-0.805351)
- ..(2.680802,-0.82234)
- ..controls (2.692698,-0.83933) and (2.689636,-0.862594)
- ..(2.673748,-0.875925)\dpicstop
-\dpicdraw[line width=0.4bp](2.673748,-0.875925) circle (0.00109in)\dpicstop
-\dpicdraw (2.673748,-0.875925)
- ..controls (2.660866,-0.865116) and (2.65612,-0.847404)
- ..(2.661872,-0.831603)
- ..controls (2.667623,-0.815801) and (2.682643,-0.805283)
- ..(2.699459,-0.805283)
- ..controls (2.716275,-0.805283) and (2.731296,-0.815801)
- ..(2.737047,-0.831603)
- ..controls (2.742798,-0.847404) and (2.738053,-0.865116)
- ..(2.725171,-0.875925)\dpicstop
-\dpicdraw[line width=0.4bp](2.725171,-0.875925) circle (0.00109in)\dpicstop
-\dpicdraw (2.725171,-0.875925)
- ..controls (2.712289,-0.865116) and (2.707543,-0.847404)
- ..(2.713295,-0.831603)
- ..controls (2.719046,-0.815801) and (2.734066,-0.805283)
- ..(2.750882,-0.805283)
- ..controls (2.767698,-0.805283) and (2.782719,-0.815801)
- ..(2.78847,-0.831603)
- ..controls (2.794221,-0.847404) and (2.789476,-0.865116)
- ..(2.776594,-0.875925)\dpicstop
-\dpicdraw[line width=0.4bp](2.776594,-0.875925) circle (0.00109in)\dpicstop
-\dpicdraw (2.776594,-0.875925)
- ..controls (2.760706,-0.862594) and (2.757643,-0.83933)
- ..(2.769539,-0.82234)
- ..controls (2.781435,-0.805351) and (2.804344,-0.800272)
- ..(2.822305,-0.810642)
- ..controls (2.840267,-0.821012) and (2.847323,-0.843391)
- ..(2.838558,-0.862188)\dpicstop
-\dpicdraw[line width=0.4bp](2.838558,-0.862188) circle (0.00109in)\dpicstop
-\dpicdraw (2.838558,-0.862188)
- --(2.965171,-0.862188)\dpicstop
-\dpicdraw (2.965171,-0.862188)
- --(3.074821,-0.798881)\dpicstop
-\dpicdraw[line width=0.4bp](3.074821,-0.798881) circle (0.00109in)\dpicstop
-\dpicdraw (3.074821,-0.798881)
- ..controls (3.057832,-0.786985) and (3.052753,-0.764077)
- ..(3.063123,-0.746115)
- ..controls (3.073493,-0.728154) and (3.095872,-0.721098)
- ..(3.114669,-0.729863)
- ..controls (3.133466,-0.738628) and (3.142445,-0.760307)
- ..(3.135352,-0.779796)\dpicstop
-\dpicdraw[line width=0.4bp](3.135352,-0.779796) circle (0.00109in)\dpicstop
-\dpicdraw (3.135352,-0.779796)
- ..controls (3.118791,-0.776876) and (3.105825,-0.76391)
- ..(3.102905,-0.74735)
- ..controls (3.099985,-0.730789) and (3.107735,-0.714171)
- ..(3.122298,-0.705763)
- ..controls (3.136861,-0.697355) and (3.155127,-0.698953)
- ..(3.168009,-0.709762)
- ..controls (3.180891,-0.720571) and (3.185637,-0.738283)
- ..(3.179885,-0.754085)\dpicstop
-\dpicdraw[line width=0.4bp](3.179885,-0.754085) circle (0.00109in)\dpicstop
-\dpicdraw (3.179885,-0.754085)
- ..controls (3.163325,-0.751165) and (3.150359,-0.738199)
- ..(3.147439,-0.721638)
- ..controls (3.144519,-0.705078) and (3.152268,-0.688459)
- ..(3.166831,-0.680051)
- ..controls (3.181394,-0.671643) and (3.199661,-0.673242)
- ..(3.212543,-0.684051)
- ..controls (3.225425,-0.69486) and (3.23017,-0.712571)
- ..(3.224419,-0.728373)\dpicstop
-\dpicdraw[line width=0.4bp](3.224419,-0.728373) circle (0.00109in)\dpicstop
-\dpicdraw (3.224419,-0.728373)
- ..controls (3.203994,-0.724772) and (3.18971,-0.706156)
- ..(3.191517,-0.685495)
- ..controls (3.193325,-0.664833) and (3.210625,-0.648981)
- ..(3.231365,-0.648981)
- ..controls (3.252105,-0.648981) and (3.269405,-0.664833)
- ..(3.271213,-0.685495)\dpicstop
-\dpicdraw[line width=0.4bp](3.271213,-0.685495) circle (0.00109in)\dpicstop
-\dpicdraw (3.271213,-0.685495)
- --(3.380863,-0.622188)\dpicstop
-\dpicdraw (3.380863,-0.622188)
- --(3.44417,-0.512538)\dpicstop
-\dpicdraw[line width=0.4bp](3.44417,-0.512538) circle (0.00109in)\dpicstop
-\dpicdraw (3.44417,-0.512538)
- ..controls (3.423508,-0.51073) and (3.407656,-0.49343)
- ..(3.407656,-0.47269)
- ..controls (3.407656,-0.45195) and (3.423508,-0.43465)
- ..(3.44417,-0.432842)
- ..controls (3.464831,-0.431035) and (3.483447,-0.445319)
- ..(3.487048,-0.465744)\dpicstop
-\dpicdraw[line width=0.4bp](3.487048,-0.465744) circle (0.00109in)\dpicstop
-\dpicdraw (3.487048,-0.465744)
- ..controls (3.471246,-0.471496) and (3.453535,-0.46675)
- ..(3.442726,-0.453868)
- ..controls (3.431916,-0.440986) and (3.430318,-0.422719)
- ..(3.438726,-0.408156)
- ..controls (3.447134,-0.393593) and (3.463753,-0.385844)
- ..(3.480313,-0.388764)
- ..controls (3.496874,-0.391684) and (3.50984,-0.40465)
- ..(3.51276,-0.42121)\dpicstop
-\dpicdraw[line width=0.4bp](3.51276,-0.42121) circle (0.00109in)\dpicstop
-\dpicdraw (3.51276,-0.42121)
- ..controls (3.496958,-0.426962) and (3.479246,-0.422216)
- ..(3.468437,-0.409334)
- ..controls (3.457628,-0.396453) and (3.45603,-0.378186)
- ..(3.464438,-0.363623)
- ..controls (3.472846,-0.34906) and (3.489464,-0.34131)
- ..(3.506025,-0.34423)
- ..controls (3.522585,-0.347151) and (3.535551,-0.360116)
- ..(3.538471,-0.376677)\dpicstop
-\dpicdraw[line width=0.4bp](3.538471,-0.376677) circle (0.00109in)\dpicstop
-\dpicdraw (3.538471,-0.376677)
- ..controls (3.518982,-0.38377) and (3.497303,-0.374791)
- ..(3.488538,-0.355994)
- ..controls (3.479773,-0.337197) and (3.486829,-0.314818)
- ..(3.50479,-0.304448)
- ..controls (3.522752,-0.294078) and (3.54566,-0.299157)
- ..(3.557556,-0.316146)\dpicstop
-\dpicdraw[line width=0.4bp](3.557556,-0.316146) circle (0.00109in)\dpicstop
-\dpicdraw (3.557556,-0.316146)
- --(3.620863,-0.206496)\dpicstop
-\dpicdraw (3.620863,-0.206496)
- --(3.620863,-0.079883)\dpicstop
-\dpicdraw[line width=0.4bp](3.620863,-0.079883) circle (0.00109in)\dpicstop
-\dpicdraw (3.620863,-0.079883)
- ..controls (3.602066,-0.088648) and (3.579687,-0.081592)
- ..(3.569317,-0.06363)
- ..controls (3.558947,-0.045669) and (3.564026,-0.02276)
- ..(3.581015,-0.010864)
- ..controls (3.598005,0.001032) and (3.621268,-0.002031)
- ..(3.6346,-0.017919)\dpicstop
-\dpicdraw[line width=0.4bp](3.6346,-0.017919) circle (0.00109in)\dpicstop
-\dpicdraw (3.6346,-0.017919)
- ..controls (3.623791,-0.030801) and (3.606079,-0.035546)
- ..(3.590277,-0.029795)
- ..controls (3.574476,-0.024044) and (3.563958,-0.009023)
- ..(3.563958,0.007793)
- ..controls (3.563958,0.024609) and (3.574476,0.039629)
- ..(3.590277,0.04538)
- ..controls (3.606079,0.051132) and (3.623791,0.046386)
- ..(3.6346,0.033504)\dpicstop
-\dpicdraw[line width=0.4bp](3.6346,0.033504) circle (0.00109in)\dpicstop
-\dpicdraw (3.6346,0.033504)
- ..controls (3.623791,0.020622) and (3.606079,0.015877)
- ..(3.590277,0.021628)
- ..controls (3.574476,0.027379) and (3.563958,0.0424)
- ..(3.563958,0.059216)
- ..controls (3.563958,0.076032) and (3.574476,0.091052)
- ..(3.590277,0.096803)
- ..controls (3.606079,0.102555) and (3.623791,0.097809)
- ..(3.6346,0.084927)\dpicstop
-\dpicdraw[line width=0.4bp](3.6346,0.084927) circle (0.00109in)\dpicstop
-\dpicdraw (3.6346,0.084927)
- ..controls (3.621268,0.069039) and (3.598005,0.065976)
- ..(3.581015,0.077873)
- ..controls (3.564026,0.089769) and (3.558947,0.112677)
- ..(3.569317,0.130639)
- ..controls (3.579687,0.1486) and (3.602066,0.155656)
- ..(3.620863,0.146891)\dpicstop
-\dpicdraw[line width=0.4bp](3.620863,0.146891) circle (0.00109in)\dpicstop
-\dpicdraw (3.620863,0.146891)
- --(3.620863,0.273504)\dpicstop
-\dpicdraw (3.620863,0.273504)
- --(3.557556,0.383154)\dpicstop
-\dpicdraw[line width=0.4bp](3.557556,0.383154) circle (0.00109in)\dpicstop
-\dpicdraw (3.557556,0.383154)
- ..controls (3.54566,0.366165) and (3.522752,0.361086)
- ..(3.50479,0.371456)
- ..controls (3.486829,0.381826) and (3.479773,0.404205)
- ..(3.488538,0.423002)
- ..controls (3.497303,0.441799) and (3.518982,0.450779)
- ..(3.538471,0.443685)\dpicstop
-\dpicdraw[line width=0.4bp](3.538471,0.443685) circle (0.00109in)\dpicstop
-\dpicdraw (3.538471,0.443685)
- ..controls (3.535551,0.427125) and (3.522585,0.414159)
- ..(3.506025,0.411239)
- ..controls (3.489464,0.408319) and (3.472846,0.416068)
- ..(3.464438,0.430631)
- ..controls (3.45603,0.445194) and (3.457628,0.463461)
- ..(3.468437,0.476343)
- ..controls (3.479246,0.489224) and (3.496958,0.49397)
- ..(3.51276,0.488219)\dpicstop
-\dpicdraw[line width=0.4bp](3.51276,0.488219) circle (0.00109in)\dpicstop
-\dpicdraw (3.51276,0.488219)
- ..controls (3.50984,0.471658) and (3.496874,0.458692)
- ..(3.480313,0.455772)
- ..controls (3.463753,0.452852) and (3.447134,0.460602)
- ..(3.438726,0.475165)
- ..controls (3.430318,0.489728) and (3.431916,0.507994)
- ..(3.442726,0.520876)
- ..controls (3.453535,0.533758) and (3.471246,0.538504)
- ..(3.487048,0.532752)\dpicstop
-\dpicdraw[line width=0.4bp](3.487048,0.532752) circle (0.00109in)\dpicstop
-\dpicdraw (3.487048,0.532752)
- ..controls (3.483447,0.512327) and (3.464831,0.498043)
- ..(3.44417,0.499851)
- ..controls (3.423508,0.501658) and (3.407656,0.518958)
- ..(3.407656,0.539698)
- ..controls (3.407656,0.560439) and (3.423508,0.577738)
- ..(3.44417,0.579546)\dpicstop
-\dpicdraw[line width=0.4bp](3.44417,0.579546) circle (0.00109in)\dpicstop
-\dpicdraw (3.44417,0.579546)
- --(3.380863,0.689196)\dpicstop
-\dpicdraw (3.380863,0.689196)
- --(3.271213,0.752503)\dpicstop
-\dpicdraw[line width=0.4bp](3.271213,0.752503) circle (0.00109in)\dpicstop
-\dpicdraw (3.271213,0.752503)
- ..controls (3.269405,0.731842) and (3.252105,0.715989)
- ..(3.231365,0.715989)
- ..controls (3.210625,0.715989) and (3.193325,0.731842)
- ..(3.191517,0.752503)
- ..controls (3.18971,0.773164) and (3.203994,0.79178)
- ..(3.224419,0.795381)\dpicstop
-\dpicdraw[line width=0.4bp](3.224419,0.795381) circle (0.00109in)\dpicstop
-\dpicdraw (3.224419,0.795381)
- ..controls (3.23017,0.77958) and (3.225425,0.761868)
- ..(3.212543,0.751059)
- ..controls (3.199661,0.74025) and (3.181394,0.738652)
- ..(3.166831,0.74706)
- ..controls (3.152268,0.755468) and (3.144519,0.772086)
- ..(3.147439,0.788647)
- ..controls (3.150359,0.805207) and (3.163325,0.818173)
- ..(3.179885,0.821093)\dpicstop
-\dpicdraw[line width=0.4bp](3.179885,0.821093) circle (0.00109in)\dpicstop
-\dpicdraw (3.179885,0.821093)
- ..controls (3.185637,0.805291) and (3.180891,0.787579)
- ..(3.168009,0.77677)
- ..controls (3.155127,0.765961) and (3.136861,0.764363)
- ..(3.122298,0.772771)
- ..controls (3.107735,0.781179) and (3.099985,0.797798)
- ..(3.102905,0.814358)
- ..controls (3.105825,0.830919) and (3.118791,0.843884)
- ..(3.135352,0.846804)\dpicstop
-\dpicdraw[line width=0.4bp](3.135352,0.846804) circle (0.00109in)\dpicstop
-\dpicdraw (3.135352,0.846804)
- ..controls (3.142445,0.827315) and (3.133466,0.805637)
- ..(3.114669,0.796871)
- ..controls (3.095872,0.788106) and (3.073493,0.795162)
- ..(3.063123,0.813124)
- ..controls (3.052753,0.831085) and (3.057832,0.853994)
- ..(3.074821,0.86589)\dpicstop
-\dpicdraw[line width=0.4bp](3.074821,0.86589) circle (0.00109in)\dpicstop
-\dpicdraw (3.074821,0.86589)
- --(2.965171,0.929196)\dpicstop
-\dpicdraw (2.965171,0.929196)
- --(2.838558,0.929196)\dpicstop
-\dpicdraw[line width=0.4bp](2.838558,0.929196) circle (0.00109in)\dpicstop
-\dpicdraw (2.838558,0.929196)
- ..controls (2.847323,0.910399) and (2.840267,0.888021)
- ..(2.822305,0.877651)
- ..controls (2.804344,0.86728) and (2.781435,0.872359)
- ..(2.769539,0.889349)
- ..controls (2.757643,0.906338) and (2.760706,0.929602)
- ..(2.776594,0.942933)\dpicstop
-\dpicdraw[line width=0.4bp](2.776594,0.942933) circle (0.00109in)\dpicstop
-\dpicdraw (2.776594,0.942933)
- ..controls (2.789476,0.932124) and (2.794221,0.914413)
- ..(2.78847,0.898611)
- ..controls (2.782719,0.882809) and (2.767698,0.872292)
- ..(2.750882,0.872292)
- ..controls (2.734066,0.872292) and (2.719046,0.882809)
- ..(2.713295,0.898611)
- ..controls (2.707543,0.914413) and (2.712289,0.932124)
- ..(2.725171,0.942933)\dpicstop
-\dpicdraw[line width=0.4bp](2.725171,0.942933) circle (0.00109in)\dpicstop
-\dpicdraw (2.725171,0.942933)
- ..controls (2.738053,0.932124) and (2.742798,0.914413)
- ..(2.737047,0.898611)
- ..controls (2.731296,0.882809) and (2.716275,0.872292)
- ..(2.699459,0.872292)
- ..controls (2.682643,0.872292) and (2.667623,0.882809)
- ..(2.661872,0.898611)
- ..controls (2.65612,0.914413) and (2.660866,0.932124)
- ..(2.673748,0.942933)\dpicstop
-\dpicdraw[line width=0.4bp](2.673748,0.942933) circle (0.00109in)\dpicstop
-\dpicdraw (2.673748,0.942933)
- ..controls (2.689636,0.929602) and (2.692698,0.906338)
- ..(2.680802,0.889349)
- ..controls (2.668906,0.872359) and (2.645998,0.86728)
- ..(2.628036,0.877651)
- ..controls (2.610075,0.888021) and (2.603019,0.910399)
- ..(2.611784,0.929196)\dpicstop
-\dpicdraw[line width=0.4bp](2.611784,0.929196) circle (0.00109in)\dpicstop
-\dpicdraw (2.611784,0.929196)
- --(2.485171,0.929196)\dpicstop
-\dpicdraw (2.485171,0.929196)
- --(2.375521,0.86589)\dpicstop
-\dpicdraw[line width=0.4bp](2.375521,0.86589) circle (0.00109in)\dpicstop
-\dpicdraw (2.375521,0.86589)
- ..controls (2.39251,0.853994) and (2.397589,0.831085)
- ..(2.387219,0.813124)
- ..controls (2.376848,0.795162) and (2.35447,0.788106)
- ..(2.335673,0.796871)
- ..controls (2.316876,0.805637) and (2.307896,0.827315)
- ..(2.31499,0.846804)\dpicstop
-\dpicdraw[line width=0.4bp](2.31499,0.846804) circle (0.00109in)\dpicstop
-\dpicdraw (2.31499,0.846804)
- ..controls (2.33155,0.843884) and (2.344516,0.830919)
- ..(2.347436,0.814358)
- ..controls (2.350356,0.797798) and (2.342607,0.781179)
- ..(2.328044,0.772771)
- ..controls (2.313481,0.764363) and (2.295214,0.765961)
- ..(2.282332,0.77677)
- ..controls (2.269451,0.787579) and (2.264705,0.805291)
- ..(2.270456,0.821093)\dpicstop
-\dpicdraw[line width=0.4bp](2.270456,0.821093) circle (0.00109in)\dpicstop
-\dpicdraw (2.270456,0.821093)
- ..controls (2.287017,0.818173) and (2.299983,0.805207)
- ..(2.302903,0.788647)
- ..controls (2.305823,0.772086) and (2.298073,0.755468)
- ..(2.28351,0.74706)
- ..controls (2.268947,0.738652) and (2.25068,0.74025)
- ..(2.237799,0.751059)
- ..controls (2.224917,0.761868) and (2.220171,0.77958)
- ..(2.225923,0.795381)\dpicstop
-\dpicdraw[line width=0.4bp](2.225923,0.795381) circle (0.00109in)\dpicstop
-\dpicdraw (2.225923,0.795381)
- ..controls (2.246348,0.79178) and (2.260632,0.773164)
- ..(2.258824,0.752503)
- ..controls (2.257017,0.731842) and (2.239717,0.715989)
- ..(2.218977,0.715989)
- ..controls (2.198236,0.715989) and (2.180936,0.731842)
- ..(2.179129,0.752503)\dpicstop
-\dpicdraw[line width=0.4bp](2.179129,0.752503) circle (0.00109in)\dpicstop
-\dpicdraw (2.179129,0.752503)
- --(2.069479,0.689196)\dpicstop
-\dpicdraw (2.069479,0.689196)
- --(2.006172,0.579546)\dpicstop
-\dpicdraw[line width=0.4bp](2.006172,0.579546) circle (0.00109in)\dpicstop
-\dpicdraw (2.006172,0.579546)
- ..controls (2.026833,0.577738) and (2.042686,0.560439)
- ..(2.042686,0.539698)
- ..controls (2.042686,0.518958) and (2.026833,0.501658)
- ..(2.006172,0.499851)
- ..controls (1.985511,0.498043) and (1.966895,0.512327)
- ..(1.963293,0.532752)\dpicstop
-\dpicdraw[line width=0.4bp](1.963293,0.532752) circle (0.00109in)\dpicstop
-\dpicdraw (1.963293,0.532752)
- ..controls (1.979095,0.538504) and (1.996807,0.533758)
- ..(2.007616,0.520876)
- ..controls (2.018425,0.507994) and (2.020023,0.489728)
- ..(2.011615,0.475165)
- ..controls (2.003207,0.460602) and (1.986589,0.452852)
- ..(1.970028,0.455772)
- ..controls (1.953468,0.458692) and (1.940502,0.471658)
- ..(1.937582,0.488219)\dpicstop
-\dpicdraw[line width=0.4bp](1.937582,0.488219) circle (0.00109in)\dpicstop
-\dpicdraw (1.937582,0.488219)
- ..controls (1.953384,0.49397) and (1.971095,0.489224)
- ..(1.981905,0.476343)
- ..controls (1.992714,0.463461) and (1.994312,0.445194)
- ..(1.985904,0.430631)
- ..controls (1.977496,0.416068) and (1.960877,0.408319)
- ..(1.944317,0.411239)
- ..controls (1.927756,0.414159) and (1.914791,0.427125)
- ..(1.91187,0.443685)\dpicstop
-\dpicdraw[line width=0.4bp](1.91187,0.443685) circle (0.00109in)\dpicstop
-\dpicdraw (1.91187,0.443685)
- ..controls (1.93136,0.450779) and (1.953038,0.441799)
- ..(1.961804,0.423002)
- ..controls (1.970569,0.404205) and (1.963513,0.381826)
- ..(1.945551,0.371456)
- ..controls (1.92759,0.361086) and (1.904681,0.366165)
- ..(1.892785,0.383154)\dpicstop
-\dpicdraw[line width=0.4bp](1.892785,0.383154) circle (0.00109in)\dpicstop
-\dpicdraw (1.892785,0.383154)
- --(1.829479,0.273504)\dpicstop
-\dpicdraw (1.829479,0.273504)
- --(1.829479,0.146891)\dpicstop
-\dpicdraw[line width=0.4bp](1.829479,0.146891) circle (0.00109in)\dpicstop
-\dpicdraw (1.829479,0.146891)
- ..controls (1.848276,0.155656) and (1.870654,0.1486)
- ..(1.881024,0.130639)
- ..controls (1.891394,0.112677) and (1.886316,0.089769)
- ..(1.869326,0.077873)
- ..controls (1.852337,0.065976) and (1.829073,0.069039)
- ..(1.815742,0.084927)\dpicstop
-\dpicdraw[line width=0.4bp](1.815742,0.084927) circle (0.00109in)\dpicstop
-\dpicdraw (1.815742,0.084927)
- ..controls (1.826551,0.097809) and (1.844262,0.102555)
- ..(1.860064,0.096803)
- ..controls (1.875866,0.091052) and (1.886383,0.076032)
- ..(1.886383,0.059216)
- ..controls (1.886383,0.0424) and (1.875866,0.027379)
- ..(1.860064,0.021628)
- ..controls (1.844262,0.015877) and (1.826551,0.020622)
- ..(1.815742,0.033504)\dpicstop
-\dpicdraw[line width=0.4bp](1.815742,0.033504) circle (0.00109in)\dpicstop
-\dpicdraw (1.815742,0.033504)
- ..controls (1.826551,0.046386) and (1.844262,0.051132)
- ..(1.860064,0.04538)
- ..controls (1.875866,0.039629) and (1.886383,0.024609)
- ..(1.886383,0.007793)
- ..controls (1.886383,-0.009023) and (1.875866,-0.024044)
- ..(1.860064,-0.029795)
- ..controls (1.844262,-0.035546) and (1.826551,-0.030801)
- ..(1.815742,-0.017919)\dpicstop
-\dpicdraw[line width=0.4bp](1.815742,-0.017919) circle (0.00109in)\dpicstop
-\dpicdraw (1.815742,-0.017919)
- ..controls (1.829073,-0.002031) and (1.852337,0.001032)
- ..(1.869326,-0.010864)
- ..controls (1.886316,-0.02276) and (1.891394,-0.045669)
- ..(1.881024,-0.06363)
- ..controls (1.870654,-0.081592) and (1.848276,-0.088648)
- ..(1.829479,-0.079883)\dpicstop
-\dpicdraw[line width=0.4bp](1.829479,-0.079883) circle (0.00109in)\dpicstop
-\dpicdraw (1.829479,-0.079883)
- --(1.829479,-0.206496)\dpicstop
-\dpicdraw (1.829479,-0.206496)
- --(1.892785,-0.316146)\dpicstop
-\dpicdraw[line width=0.4bp](1.892785,-0.316146) circle (0.00109in)\dpicstop
-\dpicdraw (1.892785,-0.316146)
- ..controls (1.904681,-0.299157) and (1.92759,-0.294078)
- ..(1.945551,-0.304448)
- ..controls (1.963513,-0.314818) and (1.970569,-0.337197)
- ..(1.961804,-0.355994)
- ..controls (1.953038,-0.374791) and (1.93136,-0.38377)
- ..(1.91187,-0.376677)\dpicstop
-\dpicdraw[line width=0.4bp](1.91187,-0.376677) circle (0.00109in)\dpicstop
-\dpicdraw (1.91187,-0.376677)
- ..controls (1.914791,-0.360116) and (1.927756,-0.347151)
- ..(1.944317,-0.34423)
- ..controls (1.960877,-0.34131) and (1.977496,-0.34906)
- ..(1.985904,-0.363623)
- ..controls (1.994312,-0.378186) and (1.992714,-0.396453)
- ..(1.981905,-0.409334)
- ..controls (1.971095,-0.422216) and (1.953384,-0.426962)
- ..(1.937582,-0.42121)\dpicstop
-\dpicdraw[line width=0.4bp](1.937582,-0.42121) circle (0.00109in)\dpicstop
-\dpicdraw (1.937582,-0.42121)
- ..controls (1.940502,-0.40465) and (1.953468,-0.391684)
- ..(1.970028,-0.388764)
- ..controls (1.986589,-0.385844) and (2.003207,-0.393593)
- ..(2.011615,-0.408156)
- ..controls (2.020023,-0.422719) and (2.018425,-0.440986)
- ..(2.007616,-0.453868)
- ..controls (1.996807,-0.46675) and (1.979095,-0.471496)
- ..(1.963293,-0.465744)\dpicstop
-\dpicdraw[line width=0.4bp](1.963293,-0.465744) circle (0.00109in)\dpicstop
-\dpicdraw (1.963293,-0.465744)
- ..controls (1.966895,-0.445319) and (1.985511,-0.431035)
- ..(2.006172,-0.432842)
- ..controls (2.026833,-0.43465) and (2.042686,-0.45195)
- ..(2.042686,-0.47269)
- ..controls (2.042686,-0.49343) and (2.026833,-0.51073)
- ..(2.006172,-0.512538)\dpicstop
-\dpicdraw[line width=0.4bp](2.006172,-0.512538) circle (0.00109in)\dpicstop
-\dpicdraw (2.006172,-0.512538)
- --(2.069479,-0.622188)\dpicstop
-\dpicdraw (2.069479,-0.622188)
- --(2.179129,-0.685495)\dpicstop
-\dpicdraw[line width=0.4bp](2.179129,-0.685495) circle (0.00109in)\dpicstop
-\dpicdraw (2.179129,-0.685495)
- ..controls (2.180936,-0.664833) and (2.198236,-0.648981)
- ..(2.218977,-0.648981)
- ..controls (2.239717,-0.648981) and (2.257017,-0.664833)
- ..(2.258824,-0.685495)
- ..controls (2.260632,-0.706156) and (2.246348,-0.724772)
- ..(2.225923,-0.728373)\dpicstop
-\dpicdraw[line width=0.4bp](2.225923,-0.728373) circle (0.00109in)\dpicstop
-\dpicdraw (2.225923,-0.728373)
- ..controls (2.220171,-0.712571) and (2.224917,-0.69486)
- ..(2.237799,-0.684051)
- ..controls (2.25068,-0.673242) and (2.268947,-0.671643)
- ..(2.28351,-0.680051)
- ..controls (2.298073,-0.688459) and (2.305823,-0.705078)
- ..(2.302903,-0.721638)
- ..controls (2.299983,-0.738199) and (2.287017,-0.751165)
- ..(2.270456,-0.754085)\dpicstop
-\dpicdraw[line width=0.4bp](2.270456,-0.754085) circle (0.00109in)\dpicstop
-\dpicdraw (2.270456,-0.754085)
- ..controls (2.264705,-0.738283) and (2.269451,-0.720571)
- ..(2.282332,-0.709762)
- ..controls (2.295214,-0.698953) and (2.313481,-0.697355)
- ..(2.328044,-0.705763)
- ..controls (2.342607,-0.714171) and (2.350356,-0.730789)
- ..(2.347436,-0.74735)
- ..controls (2.344516,-0.76391) and (2.33155,-0.776876)
- ..(2.31499,-0.779796)\dpicstop
-\dpicdraw[line width=0.4bp](2.31499,-0.779796) circle (0.00109in)\dpicstop
-\dpicdraw (2.31499,-0.779796)
- ..controls (2.307896,-0.760307) and (2.316876,-0.738628)
- ..(2.335673,-0.729863)
- ..controls (2.35447,-0.721098) and (2.376848,-0.728154)
- ..(2.387219,-0.746115)
- ..controls (2.397589,-0.764077) and (2.39251,-0.786985)
- ..(2.375521,-0.798881)\dpicstop
-\dpicdraw[line width=0.4bp](2.375521,-0.798881) circle (0.00109in)\dpicstop
-\dpicdraw (2.375521,-0.798881)
- --(2.485171,-0.862188)\dpicstop
-\dpicdraw (2.545171,-0.638265)
- --(2.625171,-0.638265)
- --(2.641837,-0.604932)
- --(2.675171,-0.671598)
- --(2.708504,-0.604932)
- --(2.741837,-0.671598)
- --(2.775171,-0.604932)
- --(2.808504,-0.671598)
- --(2.825171,-0.638265)
- --(2.905171,-0.638265)\dpicstop
-\dpicdraw (2.905171,-0.638265)
- --(2.974453,-0.598265)
- --(2.97222,-0.561064)
- --(3.034421,-0.602133)
- --(3.029955,-0.527731)
- --(3.092156,-0.568799)
- --(3.08769,-0.494398)
- --(3.149891,-0.535466)
- --(3.147658,-0.498265)
- --(3.21694,-0.458265)\dpicstop
-\dpicdraw (3.21694,-0.458265)
- --(3.25694,-0.388983)
- --(3.236406,-0.357883)
- --(3.310807,-0.362348)
- --(3.269739,-0.300148)
- --(3.344141,-0.304613)
- --(3.303072,-0.242413)
- --(3.377474,-0.246878)
- --(3.35694,-0.215778)
- --(3.39694,-0.146496)\dpicstop
-\dpicdraw (3.39694,-0.146496)
- --(3.39694,-0.066496)
- --(3.363607,-0.049829)
- --(3.430273,-0.016496)
- --(3.363607,0.016837)
- --(3.430273,0.050171)
- --(3.363607,0.083504)
- --(3.430273,0.116837)
- --(3.39694,0.133504)
- --(3.39694,0.213504)\dpicstop
-\dpicdraw (3.39694,0.213504)
- --(3.35694,0.282786)
- --(3.319739,0.280553)
- --(3.360807,0.342754)
- --(3.286406,0.338288)
- --(3.327474,0.400489)
- --(3.253072,0.396023)
- --(3.294141,0.458224)
- --(3.25694,0.455991)
- --(3.21694,0.525273)\dpicstop
-\dpicdraw (3.21694,0.525273)
- --(3.147658,0.565273)
- --(3.116557,0.544739)
- --(3.121023,0.619141)
- --(3.058822,0.578072)
- --(3.063288,0.652474)
- --(3.001087,0.611406)
- --(3.005553,0.685807)
- --(2.974453,0.665273)
- --(2.905171,0.705273)\dpicstop
-\dpicdraw (2.905171,0.705273)
- --(2.825171,0.705273)
- --(2.808504,0.67194)
- --(2.775171,0.738607)
- --(2.741837,0.67194)
- --(2.708504,0.738607)
- --(2.675171,0.67194)
- --(2.641837,0.738607)
- --(2.625171,0.705273)
- --(2.545171,0.705273)\dpicstop
-\dpicdraw (2.545171,0.705273)
- --(2.475889,0.665273)
- --(2.478122,0.628072)
- --(2.415921,0.669141)
- --(2.420387,0.594739)
- --(2.358186,0.635807)
- --(2.362652,0.561406)
- --(2.300451,0.602474)
- --(2.302684,0.565273)
- --(2.233402,0.525273)\dpicstop
-\dpicdraw (2.233402,0.525273)
- --(2.193402,0.455991)
- --(2.213936,0.424891)
- --(2.139534,0.429357)
- --(2.180602,0.367156)
- --(2.106201,0.371622)
- --(2.147269,0.309421)
- --(2.072867,0.313887)
- --(2.093402,0.282786)
- --(2.053402,0.213504)\dpicstop
-\dpicdraw (2.053402,0.213504)
- --(2.053402,0.133504)
- --(2.086735,0.116837)
- --(2.020068,0.083504)
- --(2.086735,0.050171)
- --(2.020068,0.016837)
- --(2.086735,-0.016496)
- --(2.020068,-0.049829)
- --(2.053402,-0.066496)
- --(2.053402,-0.146496)\dpicstop
-\dpicdraw (2.053402,-0.146496)
- --(2.093402,-0.215778)
- --(2.130602,-0.213545)
- --(2.089534,-0.275746)
- --(2.163936,-0.27128)
- --(2.122867,-0.333481)
- --(2.197269,-0.329015)
- --(2.156201,-0.391216)
- --(2.193402,-0.388983)
- --(2.233402,-0.458265)\dpicstop
-\dpicdraw (2.233402,-0.458265)
- --(2.302684,-0.498265)
- --(2.333784,-0.477731)
- --(2.329318,-0.552133)
- --(2.391519,-0.511064)
- --(2.387053,-0.585466)
- --(2.449254,-0.544398)
- --(2.444788,-0.618799)
- --(2.475889,-0.598265)
- --(2.545171,-0.638265)\dpicstop
-\dpicdraw (2.605171,-0.414342)
- --(2.705171,-0.414342)\dpicstop
-\dpicdraw (2.705171,-0.464342)
- --(2.705171,-0.364342)\dpicstop
-\dpicdraw (2.745171,-0.464342)
- ..controls (2.727308,-0.433402) and (2.727308,-0.395282)
- ..(2.745171,-0.364342)\dpicstop
-\dpicdraw (2.731773,-0.414342)
- --(2.845171,-0.414342)\dpicstop
-\dpicdraw (2.845171,-0.414342)
- --(2.931773,-0.364342)\dpicstop
-\dpicdraw (2.956773,-0.407643)
- --(2.906773,-0.321041)\dpicstop
-\dpicdraw (2.991414,-0.387643)
- ..controls (2.960474,-0.36978) and (2.941414,-0.336767)
- ..(2.941414,-0.301041)\dpicstop
-\dpicdraw (2.954812,-0.351041)
- --(3.053017,-0.294342)\dpicstop
-\dpicdraw (3.053017,-0.294342)
- --(3.103017,-0.207739)\dpicstop
-\dpicdraw (3.146318,-0.232739)
- --(3.059716,-0.182739)\dpicstop
-\dpicdraw (3.166318,-0.198098)
- ..controls (3.130592,-0.198098) and (3.097579,-0.179039)
- ..(3.079716,-0.148098)\dpicstop
-\dpicdraw (3.116318,-0.184701)
- --(3.173017,-0.086496)\dpicstop
-\dpicdraw (3.173017,-0.086496)
- --(3.173017,0.013504)\dpicstop
-\dpicdraw (3.223017,0.013504)
- --(3.123017,0.013504)\dpicstop
-\dpicdraw (3.223017,0.053504)
- ..controls (3.192077,0.035641) and (3.153957,0.035641)
- ..(3.123017,0.053504)\dpicstop
-\dpicdraw (3.173017,0.040107)
- --(3.173017,0.153504)\dpicstop
-\dpicdraw (3.173017,0.153504)
- --(3.123017,0.240107)\dpicstop
-\dpicdraw (3.166318,0.265107)
- --(3.079716,0.215107)\dpicstop
-\dpicdraw (3.146318,0.299748)
- ..controls (3.128455,0.268808) and (3.095442,0.249748)
- ..(3.059716,0.249748)\dpicstop
-\dpicdraw (3.109716,0.263145)
- --(3.053017,0.36135)\dpicstop
-\dpicdraw (3.053017,0.36135)
- --(2.966414,0.41135)\dpicstop
-\dpicdraw (2.991414,0.454651)
- --(2.941414,0.368049)\dpicstop
-\dpicdraw (2.956773,0.474651)
- ..controls (2.956773,0.438925) and (2.937713,0.405912)
- ..(2.906773,0.388049)\dpicstop
-\dpicdraw (2.943376,0.424651)
- --(2.845171,0.48135)\dpicstop
-\dpicdraw (2.845171,0.48135)
- --(2.745171,0.48135)\dpicstop
-\dpicdraw (2.745171,0.53135)
- --(2.745171,0.43135)\dpicstop
-\dpicdraw (2.705171,0.53135)
- ..controls (2.723034,0.50041) and (2.723034,0.46229)
- ..(2.705171,0.43135)\dpicstop
-\dpicdraw (2.718568,0.48135)
- --(2.605171,0.48135)\dpicstop
-\dpicdraw (2.605171,0.48135)
- --(2.518568,0.43135)\dpicstop
-\dpicdraw (2.493568,0.474651)
- --(2.543568,0.388049)\dpicstop
-\dpicdraw (2.458927,0.454651)
- ..controls (2.489867,0.436788) and (2.508927,0.403776)
- ..(2.508927,0.368049)\dpicstop
-\dpicdraw (2.49553,0.418049)
- --(2.397325,0.36135)\dpicstop
-\dpicdraw (2.397325,0.36135)
- --(2.347325,0.274748)\dpicstop
-\dpicdraw (2.304023,0.299748)
- --(2.390626,0.249748)\dpicstop
-\dpicdraw (2.284023,0.265107)
- ..controls (2.31975,0.265107) and (2.352763,0.246047)
- ..(2.370626,0.215107)\dpicstop
-\dpicdraw (2.334023,0.251709)
- --(2.277325,0.153504)\dpicstop
-\dpicdraw (2.277325,0.153504)
- --(2.277325,0.053504)\dpicstop
-\dpicdraw (2.227325,0.053504)
- --(2.327325,0.053504)\dpicstop
-\dpicdraw (2.227325,0.013504)
- ..controls (2.258265,0.031367) and (2.296385,0.031367)
- ..(2.327325,0.013504)\dpicstop
-\dpicdraw (2.277325,0.026902)
- --(2.277325,-0.086496)\dpicstop
-\dpicdraw (2.277325,-0.086496)
- --(2.327325,-0.173098)\dpicstop
-\dpicdraw (2.284023,-0.198098)
- --(2.370626,-0.148098)\dpicstop
-\dpicdraw (2.304023,-0.232739)
- ..controls (2.321887,-0.201799) and (2.354899,-0.182739)
- ..(2.390626,-0.182739)\dpicstop
-\dpicdraw (2.340626,-0.196137)
- --(2.397325,-0.294342)\dpicstop
-\dpicdraw (2.397325,-0.294342)
- --(2.483927,-0.344342)\dpicstop
-\dpicdraw (2.458927,-0.387643)
- --(2.508927,-0.301041)\dpicstop
-\dpicdraw (2.493568,-0.407643)
- ..controls (2.493568,-0.371917) and (2.512628,-0.338904)
- ..(2.543568,-0.321041)\dpicstop
-\dpicdraw (2.506966,-0.357643)
- --(2.605171,-0.414342)\dpicstop
-\dpicdraw (2.665171,-0.190419)
- --(2.696303,-0.190419)\dpicstop
-\fill[fill=black,line width=0bp](2.696303,-0.190419)
- --(2.696303,-0.157086)
- --(2.748504,-0.190419)
- --(2.696303,-0.223752)
- --(2.696303,-0.190419)--cycle
-\dpicstop
-\dpicdraw (2.696303,-0.190419)
- --(2.696303,-0.157086)
- --(2.748504,-0.190419)
- --(2.696303,-0.223752)
- --(2.696303,-0.190419)\dpicstop
-\dpicdraw (2.754038,-0.227804)
- --(2.754038,-0.153034)\dpicstop
-\dpicdraw (2.754038,-0.190419)
- --(2.785171,-0.190419)\dpicstop
-\dpicdraw (2.785171,-0.190419)
- --(2.812132,-0.174853)\dpicstop
-\fill[fill=black,line width=0bp](2.812132,-0.174853)
- --(2.795466,-0.145985)
- --(2.857339,-0.148753)
- --(2.828799,-0.20372)
- --(2.812132,-0.174853)--cycle
-\dpicstop
-\dpicdraw (2.812132,-0.174853)
- --(2.795466,-0.145985)
- --(2.857339,-0.148753)
- --(2.828799,-0.20372)
- --(2.812132,-0.174853)\dpicstop
-\dpicdraw (2.880825,-0.178362)
- --(2.84344,-0.113609)\dpicstop
-\dpicdraw (2.862132,-0.145985)
- --(2.889094,-0.130419)\dpicstop
-\dpicdraw (2.889094,-0.130419)
- --(2.90466,-0.103457)\dpicstop
-\fill[fill=black,line width=0bp](2.90466,-0.103457)
- --(2.875793,-0.086791)
- --(2.93076,-0.058251)
- --(2.933528,-0.120124)
- --(2.90466,-0.103457)--cycle
-\dpicstop
-\dpicdraw (2.90466,-0.103457)
- --(2.875793,-0.086791)
- --(2.93076,-0.058251)
- --(2.933528,-0.120124)
- --(2.90466,-0.103457)\dpicstop
-\dpicdraw (2.965904,-0.07215)
- --(2.901151,-0.034765)\dpicstop
-\dpicdraw (2.933528,-0.053457)
- --(2.949094,-0.026496)\dpicstop
-\dpicdraw (2.949094,-0.026496)
- --(2.949094,0.004637)\dpicstop
-\fill[fill=black,line width=0bp](2.949094,0.004637)
- --(2.915761,0.004637)
- --(2.949094,0.056837)
- --(2.982427,0.004637)
- --(2.949094,0.004637)--cycle
-\dpicstop
-\dpicdraw (2.949094,0.004637)
- --(2.915761,0.004637)
- --(2.949094,0.056837)
- --(2.982427,0.004637)
- --(2.949094,0.004637)\dpicstop
-\dpicdraw (2.986479,0.062372)
- --(2.911709,0.062372)\dpicstop
-\dpicdraw (2.949094,0.062372)
- --(2.949094,0.093504)\dpicstop
-\dpicdraw (2.949094,0.093504)
- --(2.933528,0.120466)\dpicstop
-\fill[fill=black,line width=0bp](2.933528,0.120466)
- --(2.90466,0.103799)
- --(2.907427,0.165672)
- --(2.962395,0.137132)
- --(2.933528,0.120466)--cycle
-\dpicstop
-\dpicdraw (2.933528,0.120466)
- --(2.90466,0.103799)
- --(2.907427,0.165672)
- --(2.962395,0.137132)
- --(2.933528,0.120466)\dpicstop
-\dpicdraw (2.937037,0.189158)
- --(2.872284,0.151773)\dpicstop
-\dpicdraw (2.90466,0.170466)
- --(2.889094,0.197427)\dpicstop
-\dpicdraw (2.889094,0.197427)
- --(2.862132,0.212993)\dpicstop
-\fill[fill=black,line width=0bp](2.862132,0.212993)
- --(2.845466,0.184126)
- --(2.816926,0.239094)
- --(2.878799,0.241861)
- --(2.862132,0.212993)--cycle
-\dpicstop
-\dpicdraw (2.862132,0.212993)
- --(2.845466,0.184126)
- --(2.816926,0.239094)
- --(2.878799,0.241861)
- --(2.862132,0.212993)\dpicstop
-\dpicdraw (2.830825,0.274237)
- --(2.79344,0.209485)\dpicstop
-\dpicdraw (2.812132,0.241861)
- --(2.785171,0.257427)\dpicstop
-\dpicdraw (2.785171,0.257427)
- --(2.754038,0.257427)\dpicstop
-\fill[fill=black,line width=0bp](2.754038,0.257427)
- --(2.754038,0.224094)
- --(2.701838,0.257427)
- --(2.754038,0.290761)
- --(2.754038,0.257427)--cycle
-\dpicstop
-\dpicdraw (2.754038,0.257427)
- --(2.754038,0.224094)
- --(2.701838,0.257427)
- --(2.754038,0.290761)
- --(2.754038,0.257427)\dpicstop
-\dpicdraw (2.696303,0.294812)
- --(2.696303,0.220042)\dpicstop
-\dpicdraw (2.696303,0.257427)
- --(2.665171,0.257427)\dpicstop
-\dpicdraw (2.665171,0.257427)
- --(2.638209,0.241861)\dpicstop
-\fill[fill=black,line width=0bp](2.638209,0.241861)
- --(2.654876,0.212993)
- --(2.593003,0.215761)
- --(2.621543,0.270728)
- --(2.638209,0.241861)--cycle
-\dpicstop
-\dpicdraw (2.638209,0.241861)
- --(2.654876,0.212993)
- --(2.593003,0.215761)
- --(2.621543,0.270728)
- --(2.638209,0.241861)\dpicstop
-\dpicdraw (2.569517,0.24537)
- --(2.606902,0.180617)\dpicstop
-\dpicdraw (2.588209,0.212993)
- --(2.561248,0.197427)\dpicstop
-\dpicdraw (2.561248,0.197427)
- --(2.545682,0.170466)\dpicstop
-\fill[fill=black,line width=0bp](2.545682,0.170466)
- --(2.574549,0.153799)
- --(2.519581,0.125259)
- --(2.516814,0.187132)
- --(2.545682,0.170466)--cycle
-\dpicstop
-\dpicdraw (2.545682,0.170466)
- --(2.574549,0.153799)
- --(2.519581,0.125259)
- --(2.516814,0.187132)
- --(2.545682,0.170466)\dpicstop
-\dpicdraw (2.484438,0.139158)
- --(2.54919,0.101773)\dpicstop
-\dpicdraw (2.516814,0.120466)
- --(2.501248,0.093504)\dpicstop
-\dpicdraw (2.501248,0.093504)
- --(2.501248,0.062372)\dpicstop
-\fill[fill=black,line width=0bp](2.501248,0.062372)
- --(2.534581,0.062372)
- --(2.501248,0.010171)
- --(2.467914,0.062372)
- --(2.501248,0.062372)--cycle
-\dpicstop
-\dpicdraw (2.501248,0.062372)
- --(2.534581,0.062372)
- --(2.501248,0.010171)
- --(2.467914,0.062372)
- --(2.501248,0.062372)\dpicstop
-\dpicdraw (2.463863,0.004637)
- --(2.538633,0.004637)\dpicstop
-\dpicdraw (2.501248,0.004637)
- --(2.501248,-0.026496)\dpicstop
-\dpicdraw (2.501248,-0.026496)
- --(2.516814,-0.053457)\dpicstop
-\fill[fill=black,line width=0bp](2.516814,-0.053457)
- --(2.545682,-0.036791)
- --(2.542914,-0.098664)
- --(2.487946,-0.070124)
- --(2.516814,-0.053457)--cycle
-\dpicstop
-\dpicdraw (2.516814,-0.053457)
- --(2.545682,-0.036791)
- --(2.542914,-0.098664)
- --(2.487946,-0.070124)
- --(2.516814,-0.053457)\dpicstop
-\dpicdraw (2.513305,-0.12215)
- --(2.578058,-0.084765)\dpicstop
-\dpicdraw (2.545682,-0.103457)
- --(2.561248,-0.130419)\dpicstop
-\dpicdraw (2.561248,-0.130419)
- --(2.588209,-0.145985)\dpicstop
-\fill[fill=black,line width=0bp](2.588209,-0.145985)
- --(2.604876,-0.117118)
- --(2.633416,-0.172085)
- --(2.571543,-0.174853)
- --(2.588209,-0.145985)--cycle
-\dpicstop
-\dpicdraw (2.588209,-0.145985)
- --(2.604876,-0.117118)
- --(2.633416,-0.172085)
- --(2.571543,-0.174853)
- --(2.588209,-0.145985)\dpicstop
-\dpicdraw (2.619517,-0.207229)
- --(2.656902,-0.142476)\dpicstop
-\dpicdraw (2.638209,-0.174853)
- --(2.665171,-0.190419)\dpicstop
-\end{tikzpicture}%
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/examples.pdf
===================================================================
(Binary files differ)
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex02.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex02.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex02.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,55 @@
+.PS
+# ex02.m4
+cct_init
+linewid = linewid*4/5
+
+[
+ [
+ for angl=0 to 315 by 45 do {
+ Point_(angl)
+ opamp(to rvec_(linewid*3/2,0)) with .Out at (0,0) }
+ ]
+ resistor(down_ dimen_ from last [].s)
+ diode(down_ dimen_*2/3,LE)
+ diode(down_ dimen_*2/3,LER)
+ ground(,T)
+]
+
+[
+ define(`elen_',`dimen_*3/2') # restore defaults
+ define(`sourcerad_',`dimen_*0.25')
+ leng = elen_
+ define(`fromcentre',`move to C+(-elen_/2,-elen_*cosd(15)/(2*sind(15)))')
+ C: dot
+ { fromcentre()
+ for i = 0 to 359 by 30 do { Point_(i); inductor }
+ }
+ define(`elen_',leng*0.8)
+ { fromcentre()
+ for i=0 to 359 by 30 do { Point_(i); inductor(,W) }
+ }
+ define(`elen_',leng*0.6)
+ { fromcentre()
+ for i=0 to 359 by 30 do { Point_(i); resistor }
+ }
+ define(`elen_',leng*0.4)
+ { fromcentre()
+ for i=0 to 359 by 30 do { Point_(i); capacitor(,C) }
+ }
+ define(`elen_',leng*0.2)
+ { fromcentre()
+ for i=0 to 359 by 30 do { Point_(i); diode }
+ }
+ define(`elen_',`dimen_*3/2')
+ ] with .sw at last [].se+(linewid,0)
+
+[
+linewid *=1.5
+for ang=0 to 359 by 30 do {
+ ebox(from (0,0) to (Rect_(elen_,ang)))
+ hatchbox(boxdir=ang;angle=70;hatchspec=thick 0.4 outlined "red";
+ wid=dimen_/2; ht=dimen_/5; hatchsep=dimen_/2/5) at last []
+ }
+ ] with .sw at last [].se+(linewid,0)
+
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex02.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex17.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex17.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex17.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,43 @@
+.PS
+# ex17.m4
+cct_init
+
+[
+nrows = 4
+ncols = 9
+linewid = linewid*0.6 # everything smaller
+define(`elen_',linewid) # shorter default length
+
+ for j = 1 to nrows do {
+ { for i = 1 to ncols do {
+ Point_(-120) resistor
+ Point_( 0) inductor
+ Point_( 120) capacitor
+ if i < ncols then {Point_(0) diode} }
+ }
+ Point_(-120) move to rvec_(elen_,0)
+ { for i = 1 to ncols do {
+ Point_(-60) capacitor
+ Point_( 60) resistor }
+ }
+ Point_(-60) move to rvec_(elen_,0)
+ }
+ Point_(0) for i = 1 to ncols-1 do { inductor }
+]
+
+[ # an exercise of the `parallel_' macro:
+ down_ # for labelling
+ Point_(-80) # skew current direction
+
+ parallel_(Sep=1.75*dimen_;
+ parallel_(
+ `capacitor(,C); rlabel(,,C_2)',
+ `resistor; rlabel(,R_2)' ),
+ parallel_(
+ `resistor; rlabel(,R_1); move to rvec_(-dimen_/5,0)
+ inductor(,W); rlabel(,L_1)',
+ `reversed(`source',to rvec_(elen_,0),V,sourcerad_*2.5); rlabel(,v_s)' )
+ )
+
+] with .sw at last [].se+(elen_,0)
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Ex17.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Flow2.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Flow2.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Flow2.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -8,7 +8,7 @@
testw = flowboxwid*7/4
testh = flowboxht*9/4
Start: Fbox("Start",,rad boxht/8 shaded "red!30")
- arrow down_ smallsep "False" ljust
+ arrow down_ smallsep
Input: Fdata(`"Input: $f(), a, b, \epsilon$"',wid boxwid*5/4,,
shaded "blue!30")
arrow down_ smallsep
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/SPS.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/SPS.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/SPS.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,154 @@
+.PS
+# `SPS.m4 Astrodyne OFM-1501'
+# AoE p. 666
+cct_init
+iflatex(`latexcommand({\sf)')
+
+ del = dimen_
+T1: transformer(down_ elen_,,,WD21)
+ {"70t" at T1.TP rjust; "$T_1$" at T1.n below}
+ { "$L_m=895\mu$H $L_{\ell}=42\mu$H" at T1.P1+(-del/2,0) above ljust }
+ line left_ del*2/3 from T1.P1
+Bd1: tline(down_ T1.ht/3,,del/6); { "bead" at last [].nw rjust }
+D2: diode(down_ T1.ht/3,Z); rlabel(,\shortstack[r]{$D_2$\\P6KE\\$200$})
+D3: reversed(`diode',to (Here,T1.P2)); rlabel(,,D_3); {T1L: line to T1.P2}
+HS201: heatsink(,,D) with .ne at T1.P2-(0,del/2); "$\,$HS" at last [].s below
+ pushdef(`dimen_',dimen_*3/4)
+MF: mosfet(up_ del*2/3,,FdMdSD) with .Channel at (D3,HS201) popdef(`dimen_')
+ line from MF.D to (MF.D,T1L); dot
+CTRL: box wid 30bp__ ht 16bp__ with .e at (MF.G,MF) "CTRL"
+ line from CTRL.s to (CTRL,MF.S) then to MF.S
+ line from CTRL.n to (CTRL,MF.D) then to MF.D
+TOP201: box wid MF.D.x-CTRL.w.x+del/6 ht MF.D.y-MF.S.y+del/6 \
+ with .w at CTRL.w-(del/12,0)
+ "$U_1$" at TOP201.nw above ljust; "TOP201" at TOP201.sw below ljust
+ "$D$" at (MF.S,TOP201.n) above rjust
+ "$S$" at (MF.S,TOP201.s) below rjust
+ "$FB$" above rjust at TOP201.w
+ dot(at TOP201.w-(del/4,0))
+ { capacitor(down_ dimen_*4/3); llabel(,,`0.1\mu{}F'); Grnd: Here; ground(,T,E)
+ line from MF.S to (MF.S,Grnd); ground(,T,E) }
+ dot(at Here-(del/2,0)); { line to TOP201.w }
+ { resistor(down_ (Here.y-Grnd.y)/2); rlabel(,33); capacitor(to (Here,Grnd),C)
+ rlabel(,\shortstack[r]{$22\mu{}$F\\50V}); ground(,T,E) }
+ U3b: bi_trans(up_ del,,BUdEC) with .E at Here
+ em_arrows(N,225,del/4) at U3b.e; "$U_{3b}$" at last [].n above ljust
+ spline dashed 3bp__ from U3b.E+(0,del/8) left_ del/2 \
+ then left_ del/6 up_ del/4 then up_ del/4 \
+ then up_ del/4 right_ del/6 then right_ del/2
+
+L4: inductor(down_ elen_*3/4 from (T1.P2,Grnd)-(0,del/3),W); rlabel(,"7t")
+Grnd2: ground(,T,E)
+ line from T1.M4Core1.end to (T1.M4Core1,L4)-(0,dimen_/4)
+ line from T1.M4Core2.end to (T1.M4Core2,L4)-(0,dimen_/4)
+ dot(at last [].S+(dotrad_*2,dotrad_*2),dotrad_/2)
+D4: diode(left_ elen_ from L4.start); rlabel(,,D4); dot
+ { capacitor(down_ to (Here,Grnd2),C+); llabel(,\shortstack[l]{$22\mu{}$F\\50V})
+ ground(,T,E) }
+ dot(at Here-(del,0)); resistor(down_ to (Here,Grnd2)); rlabel(,"$1$k")
+ ground(,T,E)
+Wc: U3b.C-(del,0)
+ line from D4.end to (Wc,D4.end) then up_ U3b.C.y-D4.end.y then to U3b.C
+
+L3: inductor(up_ T1.ht with .c at T1+(del*2/3,0),W); rlabel(,"3t")
+ dot(at (L3.end,last [].n)+(-dotrad_*2,dotrad_*2),dotrad_/2)
+ dot(at L3.end); dot(at L3.start)
+ line from T1.S2 right_ (L3.start.x-T1.S2.x)*2
+X2: dot
+ line down_ del/2; dot
+D5: parallel_(`Sep=del/2; reversed(`diode',down_ dimen_*2/3,S)',
+ `reversed(`diode',down_ dimen_*2/3,S)'); {"$D_5$" at D5.n above rjust}
+ heatsink(at D5.w-(del/4,0),,U); "HS" at last [].s below
+ dot(at D5.s); line down_ del/2
+Bm: dot
+Bo: dot(at L4.end+(0,del/7))
+ line to (Bm,Here) then up (Bm.y-Bo.y)/4
+ capacitor(up_ (Bm.y-Bo.y)/4)
+ { "$2.2$nF" ljust at last [].e "$250$V$_{\hbox{\scriptsize ac}}$" ljust \
+ "($2$)" ljust }
+ capacitor(up_ (Bm.y-Bo.y)/4); line to Bm
+ line from L3.start right_ del
+ capacitor(down_ distance(Here,Bm)*0.4); llabel(,,\shortstack[l]{$0.1$\\$\mu$F})
+ line down_ del/4; resistor(to (Here,Bm)); llabel(,10); dot
+ dot(at (Here.x+del/2,L3.end.y))
+ {capacitor(down_ to (Here,Bm),C+); {"\shortstack[r]{$680\mu$F\\ $10$V ($2$)}" \
+ at last [].n+(0,4bp__) above rjust}; dot }
+ dot(at Here+(del/2,0))
+ {capacitor(down_ to (Here,Bm),C+); dot }
+ dot(at (Here.x+del/2,L3.end.y))
+ {R150: resistor(down_ to (Here,Bm),); llabel(,150); dot }
+ { line to T1.S1 }
+ line right_ del/8
+L2: inductor(right_ dimen_*3/4,W,,M); llabel(,"$L_2$ $4.3\mu$H")
+ tline(right_ T1.ht/3,,del/6); {"bead" at last [].s below rjust}; Tm: dot
+ { tline(right_ T1.ht/3 from (last line.start,Bm),,del/6)
+ { "bead" at last [].n above rjust }; dot
+ line from Bm to last line.start }
+ { capacitor(down_ to (Here,Bm),C+); rlabel(,,\shortstack[r]{$680\mu$F\\$10$V})}
+ dot(at Here+(del/2,0))
+ { capacitor(down_ to (Here,Bm),C+); llabel(,,\shortstack[l]{$220\mu$F\\$10$V})
+ dot }
+ dot(at Here+(del,0))
+ { resistor(down_ dimen_*2/3); rlabel(,100)
+ U3a: diode(down_ dimen_*2/3); T3a: dot
+ { em_arrows(N,210,del/4) at U3a.c+(-del/4,0)
+ "$U_{3a}$" at last line.c+(-del/2,del/4)
+ spline dashed 3bp__ from U3a.end+(-del/10,del/8) right_ del/4 \
+ then up_ del/4 right_ del/6 then up_ del/4 left_ del/6 \
+ then left_ del/4 }
+ capacitor(down_ to (Here,Bm),C+); rlabel(,,"$3.3\mu$F"); dot
+ dot(at Here+(del/2,0))
+ U2: diode(up_ dimen_,Z); llabel(U_2); rlabel("TL$431$")
+ line to (Here,T3a); dot }
+ dot(at U2+(del/2,0))
+ capacitor(up_ (T3a.y-Here.y)/2); rlabel(,,"$0.1\mu$F")
+ resistor(up_ to (Here,T3a)); rlabel(,120)
+ { dot; line to (U3a,Here) }
+ resistor(to (Here,L2.end)); rlabel(,680); dot
+ dot(at Here+(del*1.1,0))
+ { resistor(down_ R150.len/3); llabel(,"$2.49$k")
+ Pt: potentiometer(down_ R150.len/3,,,-del/4) with .Start at Here
+ llabel(,\shortstack[l]{$1$k\\set\\$V_{\hbox{\scriptsize out}}$})
+ adjust(at Pt.Start-(del/4,del/6))
+ line from U2.c to (Pt.T1.end,U2.c) then to Pt.T1.end
+ resistor(from Pt.End to (Pt.End,Bm)); llabel(,"$2.49$k"); dot }
+ dot(at Here+(del,0))
+ { resistor(down_ R150.len/2); llabel(,"$220$")
+ diode(down_ to (Here,Bm)); llabel(,,D_6)
+ { em_arrows(N,45,del/4) at last [].ne +(del/8,del/8)}; dot }
+ dot(at Here+(del*2/3,0)); {reversed(`diode',to (Here,Bm)); rlabel(D_7); dot}
+ dot(at Here+(del/2,0)); {capacitor(down_ to (Here,Bm));llabel("$0.1\mu$F");dot}
+Op: circle diam del/3 "$+$" at Here+(del*2/3,0); line from Op.w to Tm
+ "$5.0$V" rjust at Op.e+(0,-del/2) "$0$--$3$A" rjust
+Om: circle diam del/3 "$-$" at (Op,Bm); line from Om.w to (Tm,Bm)
+ dot(at Bd1.start)
+Pwr: [
+ DB: [ W: dot(at (0,0)); N: dot(at (del/2,del/2));
+ S: dot(at (del/2,-del/2)); E: dot(at (del,0))
+ diode(from W to N); diode(from W to S)
+ diode(from N to E); diode(from S to E) ]
+ "$D_1$" at DB.N ljust above
+ dot(at DB.E+(del/4,0)); {capacitor(down_ del*3/4,C+); G2: Here; ground(,T,E)}
+ { "$47\mu$F" at Here+(0,del/2) ljust "$400$V" ljust }
+ line from DB.W left_ del/4; continue to (Here,G2); ground(,T,E)
+ L1: transformer(right_ dimen_,,,W) at DB.W+(-del,0)
+ {"$L_1$" at last [].n above }
+ line from DB.N up_ del/8; continue to (L1.S2,Here) then to L1.S2
+ line from DB.S down_ del/8; continue to (L1.P2,Here) then to L1.P2
+ Pair: [ N: dot; resistor(down_ (DB.ht+del/4)/2); C: Here
+ resistor(down_ (DB.ht+del/4)/2); S: dot ] with .C at L1+(-del*3/4,0)
+ "$270$k ($2$)" at Pair.s below
+ dot(at Pair.N+(-del/2,0))
+ { capacitor(down_ to (Here,Pair.S))
+ rlabel(,\shortstack[r]{$0.1\mu$F\\ $275$V$_{\hbox{\scriptsize ac}}$}); dot}
+ { line to (L1.S1,Here) then to L1.S1 }
+ fuse(left_ del,D); rlabel(,"$3.5$A")
+ H: box wid del/3 ht del/4; N: box same at (H,Pair.S)
+ "$H$" at H.n above; "$N$" at N.s below
+ line from N.e to (L1.P1,N.e) then to L1.P1
+ ] with .N.w at (Wc.x,Bd1.start.y+del*3/4)
+ line from Pwr.DB.E right_ del/2 then down_ del
+ continue to (Bd1.start,Here) then to Bd1.start
+
+iflatex(`latexcommand(})')
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/SPS.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Traintracks.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Traintracks.m4 (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Traintracks.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -0,0 +1,101 @@
+.PS
+# Traintracks.m4
+# https://tex.stackexchange.com/questions/729226/implementing-train-tracks-in-latex
+gen_init
+define(`robustcode_',1)
+
+divert(-1)
+########################################################################
+ `Default sizes'
+ define(`sectionlen',linewid)
+ define(`railgauge',(linewid/5))
+ define(`railthick',`1.5')
+ define(`buttlen',`(railthick bp__ * 3)')
+ define(`sleeperthick',`0.4')
+ define(`buttthick',`(sleeperthick*2)')
+
+ `straight(position,direction,keys)
+ keys: length=expr; (default sectionlen)
+ gauge=expr; (default railgauge)
+ tiecount=expr; (number of sleepers)
+ tie=attributes;
+ rail=attributes;'
+define(`straight',`ifelse(`$1',,,move to `$1';) ifelse(`$2',,,`setdir_(`$2')')
+ pushkeys_(`$3',
+ `length:sectionlen:N; gauge:railgauge; rail::N; tiecount:3:; tie::N;')dnl
+ for straighti=1 to m4tiecount do {
+ {line from rvec_((straighti-1/2)*m4length/m4tiecount, m4gauge/2+buttlen/2) \
+ to rvec_((straighti-1/2)*m4length/m4tiecount,-m4gauge/2-buttlen/2) \
+ thick sleeperthick m4tie }}
+ {strail(m4gauge/2)}; {strail(-m4gauge/2)}; move to rvec_(m4length,0)dnl
+ popdef(`m4tie',`m4tiecount',`m4length',`m4gauge',`m4rail') ')
+define(`strail',
+ `{line from rvec_(0,`$1') to rvec_(sectionlen,`$1') thick railthick m4rail
+ line from rvec_(0,-buttlen/2) to rvec_(0,buttlen/2) thick buttthick}
+ {line from rvec_(0,`$1'-buttlen/2) to rvec_(0,`$1'+buttlen/2) \
+ thick buttthick m4rail} ')
+
+ `curve(position,direction,L|R,keys)
+ keys: radius=expr; (default sectionlen*2)
+ gauge=expr; (default railgauge)
+ tiecount=expr; (number of sleepers)
+ tie=attributes;
+ rail=attributes;
+ Calls to robust rvec_r instead of rvec_ are for
+ use in pic loops'
+define(`curve',`ifelse(`$1',,,move to `$1';) ifelse(`$2',,,`setdir_(`$2')')
+ pushkeys_(`$4',
+ `radius:sectionlen*2; gauge:railgauge; rail::N; tiecount:3:; tie::N;')dnl
+ pushdef(`m4pm',`ifelse(`$3',,+,`$3',L,+,-)')dnl
+ M4C: rvec_r(0,m4pm m4radius) # robust rvec
+ m4rs = rp_ang*rtod_-(m4pm 90); m4rf = m4rs m4pm 30
+ for curvei=1 to m4tiecount do {{ line \
+ from M4C+(Rect_(m4radius+m4gauge/2+buttlen/2,\
+ m4rs+(curvei-1/2)*(m4rf-m4rs)/m4tiecount))\
+ to M4C+(Rect_(m4radius-m4gauge/2-buttlen/2,\
+ m4rs+(curvei-1/2)*(m4rf-m4rs)/m4tiecount)) thick sleeperthick m4tie }}
+ move to M4C+(Rect_(m4radius,m4rs))
+ {crail(M4C,m4radius-(m4pm m4gauge/2), m4gauge/2,m4pm)}
+ {crail(M4C,m4radius+(m4pm m4gauge/2),-m4gauge/2,m4pm)}
+ move to M4C+(Rect_(m4radius,m4rf)); setdir_(rp_ang*rtod_ m4pm 30)
+ popdef(`m4tie',`m4tiecount',`m4rail',`m4gauge',`m4radius',`m4pm') ')
+
+define(`crail', #`crail(center,rad,offset,+|-)'
+ `move to rvec_r(0,`$3'); crbuttf = buttlen/2/(`$2')
+ {arc ifelse(`$4',-,cw) to rvec_r((`$2')/2,`$4'((1-sqrt(3)/2)*(`$2'))) \
+ with .c at `$1' thick railthick m4rail
+ line from (-crbuttf between Here and `$1') \
+ to ( crbuttf between Here and `$1') thick buttthick}
+ {line from (-crbuttf between Here and `$1') \
+ to ( crbuttf between Here and `$1') thick buttthick} ')
+
+########################################################################
+divert(0)dnl
+
+[ straight
+ {curve; curve(,,R); straight; curve(,,R); curve; straight}
+ for i=1 to 5 do { straight } ]
+
+[ straight
+ for i=1 to 6 do { curve(,,R) }
+ straight
+ {T: Here
+ curve(,,R,rail=outlined "red"); curve(,,,rail=outlined "red")
+ straight
+ crad = sectionlen*2-(Here.y-T.y)
+ for i=1 to 6 do { curve(,,R,radius=crad) }
+ straight
+ define rgbpurp { rgbstring(0.5,0,1) }
+ { curve(,,, rail=outlined rgbpurp); curve(,,R, rail=outlined rgbpurp)
+ for i=1 to 5 do { straight(,180) } }
+ for i=1 to 3 do { straight(,0) }
+ for i=1 to 6 do { curve(,,R,radius=crad) }
+ for i=1 to 3 do { straight } }
+ for i=1 to 5 do { straight } ] with .nw at last [].sw+(0,-0.2)
+
+[ for dir=90 to 570 by 240 do {
+ curve(,dir,,tiecount=5;tie=outlined "gray" thick 2.5)
+ curve(, ,,tiecount=5;tie=outlined "gray" thick 2.5) }
+ ] with .nw at 1st [].ne+(0.2,0)
+
+.PE
Property changes on: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/Traintracks.m4
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+LF
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex02.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex02.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex02.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,55 +0,0 @@
-.PS
-# ex02.m4
-cct_init
-linewid = linewid*4/5
-
-[
- [
- for angl=0 to 315 by 45 do {
- Point_(angl)
- opamp(to rvec_(linewid*3/2,0)) with .Out at (0,0) }
- ]
- resistor(down_ dimen_ from last [].s)
- diode(down_ dimen_*2/3,LE)
- diode(down_ dimen_*2/3,LER)
- ground(,T)
-]
-
-[
- define(`elen_',`dimen_*3/2') # restore defaults
- define(`sourcerad_',`dimen_*0.25')
- leng = elen_
- define(`fromcentre',`move to C+(-elen_/2,-elen_*cosd(15)/(2*sind(15)))')
- C: dot
- { fromcentre()
- for i = 0 to 359 by 30 do {
- Point_(i); inductor
- }
- }
- define(`elen_',leng*0.8)
- { fromcentre()
- for i=0 to 359 by 30 do {
- Point_(i); inductor(,W)
- }
- }
- define(`elen_',leng*0.6)
- { fromcentre()
- for i=0 to 359 by 30 do {
- Point_(i); resistor
- }
- }
- define(`elen_',leng*0.4)
- { fromcentre()
- for i=0 to 359 by 30 do {
- Point_(i); capacitor(,C)
- }
- }
- define(`elen_',leng*0.2)
- { fromcentre()
- for i=0 to 359 by 30 do {
- Point_(i); diode
- }
- }
- ] with .sw at last [].se+(linewid,0)
-
-.PE
Deleted: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex17.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex17.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/extras/ex17.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,43 +0,0 @@
-.PS
-# ex17.m4
-cct_init
-
-[
-nrows = 4
-ncols = 9
-linewid = linewid*0.6 # everything smaller
-define(`elen_',linewid) # shorter default length
-
- for j = 1 to nrows do {
- { for i = 1 to ncols do {
- Point_(-120) resistor
- Point_( 0) inductor
- Point_( 120) capacitor
- if i < ncols then {Point_(0) diode} }
- }
- Point_(-120) move to rvec_(elen_,0)
- { for i = 1 to ncols do {
- Point_(-60) capacitor
- Point_( 60) resistor }
- }
- Point_(-60) move to rvec_(elen_,0)
- }
- Point_(0) for i = 1 to ncols-1 do { inductor }
-]
-
-[ # an exercise of the `parallel_' macro:
- down_ # for labelling
- Point_(-80) # skew current direction
-
- parallel_(Sep=1.75*dimen_;
- parallel_(
- `capacitor(,C); rlabel(,,C_2)',
- `resistor; rlabel(,R_2)' ),
- parallel_(
- `resistor; rlabel(,R_1); move to rvec_(-dimen_/5,0)
- inductor(,W); rlabel(,L_1)',
- `reversed(`source',to rvec_(elen_,0),V,sourcerad_*2.5); rlabel(,v_s)' )
- )
-
-] with .sw at last [].se+(elen_,0)
-.PE
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/files.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/files.tex 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/files.tex 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,5 +1,5 @@
-% The format of this file must be strictly retained to avoid problems
-% in the generation of examples.html
+% The format of this file must be strictly retained (including long lines)
+% to avoid problems in the generation of examples.html
\bfig{
\centerline{\getpic{quick}}
\caption{The quick-start example from the manual
@@ -254,6 +254,25 @@
}
\bfig{
+ \centerline{\getpic{pwrsupply}}
+ \caption{An elementary power supply circuit with colored elements,
+ and a multiple-winding transformer with 3-phase rectifier
+ \src{pwrsupply.m4}.}
+ }
+
+\bfig{
+ \centerline{\getpic{PS50}}
+ \caption{An unregulated 50V power supply
+ \src{PS50.m4}.}
+ }
+
+\bfig{
+ \centerline{\getpic{Reg723}}
+ \caption{A 723 regulator circuit with a heat sink
+ \src{Reg723.m4}.}
+ }
+
+\bfig{
\centerline{\getpic{Mixer}}
\caption{A balanced mixer, using {\tt mosfet} and a custom transformer
\src{Mixer.m4}.}
@@ -311,13 +330,6 @@
}
\bfig{
- \centerline{\getpic{pwrsupply}}
- \caption{An elementary power supply circuit with colored elements,
- and a multiple-winding transformer with 3-phase rectifier
- \src{pwrsupply.m4}.}
- }
-
-\bfig{
\centerline{\getpic{TTLnand}}
\caption{ TTL NAND gate illustrating a transistor with multiple emitters
\src{TTLnand.m4}.}
@@ -423,7 +435,7 @@
\centerline{\getpic{Tubediags}}
\caption{Electron-tube diagrams: a few bottom-view base diagrams,
a generic triode test circuit, and a 25-watt audio amplifier adapted
- from F.\ Langford-Smith, {\it Radiotron Designer's Handbook,} fourth
+ from F.~Langford-Smith, {\it Radiotron Designer's Handbook,} fourth
edition, Harrison, NJ: Radio Corporation of America, 1952
\src{Tubediags.m4}.}
}
@@ -519,7 +531,7 @@
\ifmpost\else\ifpostscript\else\bfig{
\centerline{\getpic{EEP}}
- \caption{A test of experimental single-line diagram macros
+ \caption{A test of single-line diagram macros
\src{EEP.m4}.}
}\fi\fi
@@ -568,8 +580,7 @@
\caption{Embellishments: the top row illustrates
{\tt shadowed(box|circle|ellipse|line,[at {\sl position}],{\sl keys})}
and the second row
- {\tt ColoredV(box|circle|ellipse,({\sl r,g,b})|(({\sl colorseq})),
- {\sl attributes})}
+ {\tt ColoredV(box|circle|ellipse,({\sl r,g,b})|(({\sl colorseq})),{\sl attributes})}
\src{Shadowed.m4}.}
}\fi\fi
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ics.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ics.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/ics.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -318,13 +318,16 @@
keys: pinsep=expr; (0.25)
pincount=expr; (8 per side)
hght=expr; ((pincount+1)*pinsep)
- wdth=expr; (0.6*hght)'
- `8 pins per side; pin labels
+ wdth=expr; (0.6*hght)
+ box=attributes; (shaded light blue)
+ 8 pins per side; pin labels
VIN, SHDN, CSS, BURST_EN, VFB, VC, SYNC, FSET,
SGND, SENSEM, SENSEP, PGND, VCC, SW, TG, BOOST'
define(`LT3724',`[ pushkeys_(`$1',`pinsep:0.25; pincount:8;
- hght:(m4`'m4pincount+1)*m4`'pinsep; wdth:0.6*m4`'hght')dnl
- Chip: box wid wdth ht hght shaded rgbstring(.94,.68,.76) "`LT3724'"
+ hght:(m4`'pincount+1)*m4`'pinsep; wdth:0.6*m4`'hght;
+ box:shaded LTtmpcolr:N')dnl
+ define LTtmpcolr {rgbstring(0.9,0.96,1)}
+ Chip: box wid m4wdth ht m4hght m4box "`LT3724'" ; undefine LTtmpcolr
foreach_(`m4hx',`ifelse(m4hx,nil,,
`patsubst(m4hx,^[^:]*:): Chip.nw-(0,m4Lx*hght/(m4pincount+1))
"patsubst(m4hx,:.*)" ljust at Chip.nw-(0,m4Lx*hght/(m4pincount+1))')',
@@ -337,9 +340,8 @@
"patsubst(m4hx,:.*)" rjust at Chip.se+(0,m4Lx*hght/(m4pincount+1))')',
SGND, SENSE$^-$:SENSEM, SENSE$^+$:SENSEP, PGND,
V$_{\hbox{\tiny CC}}$:VCC, SW, TG, BOOST)
- `$2' popdef(`m4pinsep',`m4pincount',`m4hght',`m4wdth') ]')
+ `$2' popdef(`m4pinsep',`m4pincount',`m4hght',`m4wdth',`m4box') ]')
-
`Here is another way to draw an IC and
label its pins:'
`LT3757( keys ) IC in a [] block
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/mf/cct.mf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/mf/cct.mf 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/mf/cct.mf 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,5 +1,5 @@
% cct.mf, generated by Mfpic, v1.10 2012/12/03,
-% from TeX source "font" on 2024/11/29 at 11:42
+% from TeX source "font" on 2025/03/30 at 12:31
numeric mfpicversion; mfpicversion := 110;
if unknown mode: mode := localfont; fi
if unknown mag: mag := 1000/1000; fi
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/xfig/xfiglib.fig
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/xfig/xfiglib.fig 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/examples/xfig/xfiglib.fig 2025-04-01 20:02:45 UTC (rev 74818)
@@ -206,8 +206,10 @@
6 1425 825 1875 1425
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 0 0 2
1650 1425 1650 1305
+6 1470 945 1830 1305
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 0 0 5
1650 1305 1470 1125 1650 945 1830 1125 1650 1305
+-6
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 0 0 2
1650 945 1650 825
-6
@@ -214,11 +216,13 @@
6 2025 825 2475 1425
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 0 0 2
2250 1425 2250 1305
+6 2070 945 2430 1305
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 0 0 5
2250 1305 2070 1125 2250 945 2430 1125 2250 1305
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 1 0 2
1 1 0.888889 60 120
2250 1260 2250 990
+-6
2 1 0 1 0 -1 0 -1 -1 0 0 0 0 0 0 2
2250 945 2250 825
-6
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/gpic.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/gpic.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/gpic.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
gpic.m4 Initialization for gpic.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/lib3D.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/lib3D.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/lib3D.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -3,7 +3,7 @@
operations on argument triples representing
3D vectors or colors.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/libSLD.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/libSLD.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/libSLD.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -2,7 +2,7 @@
libSLD.m4 Draft macros for single-line diagram elements
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/libcct.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/libcct.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/libcct.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
libcct.m4
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
@@ -28,12 +28,12 @@
# Visible lines:
{ line to rvec_(rp_len/2-m4h/2,0)
- (element body lines)
+ # The body drawn within a block:
+ {[ element body lines ] with .internal position at Here }
line to rvec_(rp_len/2-m4h/2,0) }
- # The invisible body block:
+ # Some elements overlay a block to define the body size.
{[box invis ht_ m4v wid_ m4h ] at rvec_(rp_len/2,0)}
- # Some elements omit this block but draw the visible lines within a block.
# The final invisible line:
line to rvec_(rp_len,0) invis
@@ -43,8 +43,8 @@
NON-TWO-TERMINAL ELEMENTS are usually constructed within a block:
set dimension parameters
- [ set size and direction from the initial linespec argument
- set orientation
+ [ set size and direction from the initial linespec argument if any
+ set orientation (left or right)
draw internal elements
define internal locations
]
@@ -71,7 +71,7 @@
expanded just before exit from the [] block to allow custom additions
to the elements.
- Subcomponents of a circuit element are drawn selectively according
+ Subcomponents of some circuit elements are drawn selectively according
to a "dna_" string and a sequence of calls to sc_draw(`dna_',arg2,arg3,arg4).
If the second argument of sc_draw is a substring of the first, it is deleted
from the first and the third argument is expanded, otherwise the fourth
@@ -215,6 +215,7 @@
H: squared
N: IEEE (default)
B: not burnable
+ T: thermistor
V: varistor variant
R: to right of drawing direction'
define(`resistor',
@@ -222,8 +223,8 @@
define(`m4type',ifelse(`$3',,N,`$3',R,N,`$3')`')dnl
define(`m4neg',sc_draw(`m4type',R,-))dnl
define(`m4cycles',`ifelse(`$2',,3,(`$2'))')dnl
- define(`m4cyclewid',`ifelse(`$4',,(dimen_/6),`($4)')')dnl
- define(`m4lgth',`(m4cycles*m4cyclewid)')dnl
+ define(`m4cwid',`ifelse(`$4',,(dimen_/6),`($4)')')dnl
+ define(`m4lgth',`(m4cycles*m4cwid)')dnl
ifelse(
`$2',E, # This is obsolete but kept for now
`ebox(`$1',shift(shift($@)))',
@@ -231,7 +232,7 @@
`define(`m4nN',`eval(2*m4cycles)')dnl Default resistor:
define(`m4v',2)dnl
if m4lgth > rp_len then { eleminit_(to rvec_(m4lgth,0)) }
- tr_xy_init(last line.c, m4cyclewid/4, m4neg)dnl
+ tr_xy_init(last line.c, m4cwid/4, m4neg)dnl
{ line from last line.start to tr_xy(-m4nN,0)\
for_(2,m4nN,2,
`then to tr_xy(eval(2*m4x-3-m4nN), m4v) \
@@ -238,13 +239,13 @@
then to tr_xy(eval(2*m4x-1-m4nN),-m4v) \')dnl
then to tr_xy(m4nN, 0) \
then to last line.end # This could be replaced for obtuse directions:
- [box invis ht_ m4cyclewid*m4v/2 wid_ m4cyclewid*m4nN/2] at 2nd last line.c
+ [box invis ht_ m4cwid*m4v/2 wid_ m4cwid*m4nN/2] at 2nd last line.c
}',
m4type,Q,
`define(`m4nQ',`eval(2*m4cycles)') define(`m4v',2)dnl
- if m4cyclewid*m4nQ/2 > rp_len then {
- eleminit_(to rvec_(m4cyclewid*m4nQ/2,0)) }
- tr_xy_init(last line.c, m4cyclewid/4, m4neg)dnl
+ if m4cwid*m4nQ/2 > rp_len then {
+ eleminit_(to rvec_(m4cwid*m4nQ/2,0)) }
+ tr_xy_init(last line.c, m4cwid/4, m4neg)dnl
{ line from last line.start to tr_xy(-m4nQ,0)\
for_(2,m4nQ,2,
`then to tr_xy(eval(2*m4x-2-m4nQ), m4v*2) \
@@ -251,7 +252,7 @@
then to tr_xy(eval(2*m4x-m4nQ),0) \')dnl
then to tr_xy(m4nQ, 0) \
then to last line.end
- [box invis ht_ m4cyclewid*m4v/2 wid_ m4cyclewid*m4nQ/2] \
+ [box invis ht_ m4cwid*m4v/2 wid_ m4cwid*m4nQ/2] \
at 2nd last line.c + ta_xy(0,m4v)
}',
m4type,ES,
@@ -266,7 +267,7 @@
line from rvec_(m4cwd,0) to rvec_(rp_len/2+m4cwd/2,0)}',
m4type,H,
`define(`m4nH',`eval(2*m4cycles-1)')dnl
- define(`m4hh',`m4cyclewid*6/5/4') define(`m4v',7/3)dnl
+ define(`m4hh',`m4cwid*6/5/4') define(`m4v',7/3)dnl
if m4hh*m4nH/2 > rp_len then { eleminit_(to rvec_(m4hh*m4nH/2,0)) }
tr_xy_init(last line.c, m4hh, m4neg)dnl
{ line from last line.start to tr_xy(-m4nH,0)\
@@ -280,6 +281,16 @@
[move from tr_xy(-m4nH,0) to tr_xy(m4nH,0) \
then to tr_xy(m4nH,m4v) then to tr_xy(-m4nH,m4v)] \
at 2nd last line.c+vec_(0,m4neg`'m4hh*m4v/2) }',
+ m4type,T,
+ `resistor(`$1',`$2',sc_draw(`m4type',T),`$4')
+ [ tl=m4lgth/2+m4cwid
+ spline ifdpic(ctension_) from rvec_(ifdpic(0,-tl*3/40),m4cwid*4/3)\
+ to rvec_( tl/3,m4cwid*4/3) then to rvec_( tl,m4cwid*8/9) \
+ then to rvec_( tl,-m4cwid*8/9) then to rvec_( tl/3,-m4cwid*4/3) \
+ then to rvec_(-tl/3,-m4cwid*4/3) then to rvec_(-tl,-m4cwid*8/9) \
+ then to rvec_(-tl,m4cwid*8/9) then to rvec_(-tl/3,m4cwid*4/3) \
+ then to rvec_(ifdpic(0,tl*3/40),m4cwid*4/3) `$4'
+ ] with .c at last line.c ',
m4type,V,
`define(`m4ht',`(m4lgth/2)')dnl
{line to rvec_(max(0,rp_len/2-m4lgth/2),0)
@@ -294,7 +305,7 @@
[lbox(m4lbwd+lthick*4,m4lbht+lthick*4,thick linethick/2)] with .c at M4LBC',
m4type,AC,
`ebox(`$1')
- { ACsymbol(at last [],m4cyclewid*3.5/4,m4cyclewid/2,R)
+ { ACsymbol(at last [],m4cwid*3.5/4,m4cwid/2,R)
[] wid 2nd last [].wid ht 2nd last [].ht at 2nd last [] } ')
ifelse(m4type,E,`ebox(`$1')',
`line invis from M4S to M4E') ')
@@ -558,7 +569,7 @@
m4xpand(m4drt`'_)
`$6' ]')
define(`m4trdot',`{`$6'dot(at (0.5 between `$1' and `$2') \
- +vec_(`$3'(`$4'+m4hlw)/2,`$5'dimen_/16), dotrad_/2)}')
+ +vec_(`$3'((`$4')/2+m4hlw),`$5'dimen_/16), dotrad_/2)}')
`delay( linespec, width, attributes or keys )
keys:
@@ -623,23 +634,33 @@
line from rvec_(m4wd,0) to rvec_(rp_len/2+m4wd/2,0) }
line to rvec_(rp_len,0) invis ')
- `source( linespec,V|v|tv|I|i|ti|ii|AC|B|F|G|H|Q|L|N|
- P|R|S[C[r]|E[r]]]|T|X|U|other,
- diameter, R, attributes, body name)
+ `source( linespec, chars,
+ diameter, R, attributes, body name)
+ chars:
+ AC = AC source;
+ B = bulb;
+ F = fluorescent;
+ G = generator;
+ H = step function;
+ I = current source;
+ i = alternate current source;
+ ii = double arrowhead current source;
+ ti = truncated-bar current source;
+ dci = DC current source;
+ L = lamp;
+ N = neon; NA = neon 2; NB = neon 3;
+ P = pulse;
+ Q = charge;
+ R = ramp;
+ S[C[r]|E[r]] = sinusoid;
+ SC = quarter arc; SE = arc; r = right orientation;
+ T = triangle;
+ U = square-wave;
V = voltage source;
v = alternate voltage source;
- tv = truncated-bar alternate voltage source;
- tv = truncated bar alternate voltage source;
- i = alternate current source;
- ti = truncated-bar alternate current source;
- I = current source;
- ii = double arrowhead current source;
- AC = AC source; B = bulb; F = fluorescent; G =
- generator; H = step function; L = lamp;
- N = neon; NA = neon 2; NB = neon 3;
- P = pulse; Q = charge; R = ramp; r = right
- orientation; S = sinusoid; SC = quarter arc; SE =
- arc; T = triangle; U = square-wave; X = interior X;
+ tv = truncated bar voltage source;
+ dcv = DC voltage source;
+ X = interior X;
other = custom interior label or waveform;
arg 4: R = reversed polarity;
arg 5 modifies the circle with e.g., color or fill
@@ -653,7 +674,7 @@
`$2',Q,`m4_sourceGQ(`$6',$@)',
`{ line to rvec_(rp_len/2-m4h,0)
move to rvec_(m4h,0)
- { Src_C: circle rad m4h `$5' at Here }
+ { Src_C: circle rad m4h ifelse(`$2',dci,invis) `$5' at Here }
ifelse(`$2',,,
`$2',F,`{ line from rvec_(-m4h,0) \
to rvec_(-m4h/2,0)}
@@ -665,6 +686,13 @@
to rvec_(m4h/2,0)}',
`$2',I,`{arrow from rvec_(-m4h*3/4,0) \
to rvec_(m4h*3/4,0)}',
+ `$2',dci,`{arrow from rvec_(-m4h*3/4,0) \
+ to rvec_(m4h*3/4,0)}
+ ifdef(`dcigapangle_',,`define(`dcigapangle_',20)')dnl
+ {arc from Src_C+vec_(Rect_(m4h,270+dcigapangle_/2)) \
+ to Src_C+(Rect_(m4h,90-dcigapangle_/2)) with .c at Src_C}
+ {arc from Src_C+vec_(Rect_(m4h,90+dcigapangle_/2)) \
+ to Src_C+(Rect_(m4h,270-dcigapangle_/2)) with .c at Src_C} ',
`$2',ti,`{line thick 2*linethick from rvec_(0,-m4h) \
to rvec_(0,m4h) chop m4h/4}',
`$2',ii,`{line from rvec_(-m4h,0) \
@@ -704,6 +732,8 @@
to rvec_(m4h/5,0)
{ line to rvec_(0,m4h) with .c at Here } }
{ dot(at rvec_(-m4h/2,-m4h/2)) } ',
+ `$2',dcv,`{ line to rvec_(0,m4h) with .c at rvec_(-m4h/5,0) }
+ { line to rvec_(0,m4h) with .c at rvec_(m4h/5,0) } ',
`$2',NB,`{ line from rvec_(-m4h,0) \
to rvec_(-m4h/2,0)
{ line to rvec_(0,m4h) with .c at Here } }
@@ -723,8 +753,8 @@
round }')
{line from rvec_(m4h/2,0) \
to rvec_(m4h,0)}}',
- `$2',V,`{"ifsvg(-,`$_-$')" at rvec_(-m4h/2,0) ifsvg(+(0,textht/10))}
- {"ifsvg(svg_small(+),`$_+$')" \
+ `$2',V,`{"ifsvg(-,`\scriptsize$-$')" at rvec_(-m4h/2,0) ifsvg(+(0,textht/10))}
+ {"ifsvg(svg_small(+),`\scriptsize$+$')" \
at rvec_( m4h/2,0) ifsvg(+(0,textht/10))}',
`$2',tv,`{line thick 2*linethick from rvec_(-m4h,0) \
to rvec_(m4h,0) chop m4h/4}',
@@ -815,43 +845,47 @@
{ [box invis ht_ m4r*2 wid_ (m4r+m4w)*2] at last circle.c }
line to rvec_(rp_len,0) invis ')
- `consource( linespec ,V|I|v|i|P, R, attributes )
+ `consource( linespec ,V|I|tv|v|ti|i|P, R,
+ attributes )
Controlled source
Arg3:
V= voltage
I= current
v= voltage type 2
+ tv= voltage type 3
i= current type 2
+ ti= current type 3
P= proximity sensor
arg 4 can be used to modify the body with e.g.
- color or fill'
+ color, fill, or ;internal symbols
+ e.g. consource(,,,; "S" at C)'
define(`consource',`ifelse(`$3',R,
`reversed(`consource',`$1',`$2',,shift(shift(shift($@))))',
`eleminit_(`$1')
{line to rvec_(rp_len/2-csdim_,0)
- M4CSN: rvec_(csdim_,csdim_)
- M4CSS: rvec_(csdim_,-csdim_)
- M4CSE: rvec_(2*csdim_,0)
- M4CSW: Here
- {line to M4CSN then to M4CSE then to M4CSS then to Here `$4'}
- ifelse(`$2',I,
- `{arrow from rvec_(csdim_/4,0) \
- to rvec_(csdim_*7/4,0)}',
- `$2',ti,
- `{line thick 2*linethick from M4CSN to M4CSS chop csdim_/4}',
- `$2',i,
- `{line from M4CSN to M4CSS}',
- `$2',V,
- `{"iflatex(`$-$',-)" at rvec_(csdim_*0.5,0) ifsvg(+(0,textht/10))}
- {"iflatex(`$+$',+)" at rvec_(csdim_*1.5,0) ifsvg(+(0,textht/10))}',
- `$2',tv,
- `{line thick 2*linethick to M4CSE chop csdim_/4} ',
- `$2',v,
- `{line to M4CSE} ',
- `$2',P,
- `{ Proxim(2*csdim_) at rvec_(csdim_,0) }')
- line from M4CSE to rvec_(rp_len/2+csdim_,0) }
- {[box invis ht_ 2*csdim_ wid_ 2*csdim_] at rvec_(rp_len/2,0)}
+ {[ N: rvec_(csdim_,csdim_)
+ S: rvec_(csdim_,-csdim_)
+ E: rvec_(2*csdim_,0)
+ W: Here; C: rvec_(csdim_,0)
+ {line to N then to E then to S then to W `$4'}
+ ifelse(`$2',I,
+ `{arrow to E chop csdim_/4}',
+ `$2',ti,
+ `{line thick 2*linethick from N to S chop csdim_/4}',
+ `$2',i,
+ `{line from N to S}',
+ `$2',V,
+ `{"iflatex(`\scriptsize$-$',-)" \
+ at rvec_(csdim_*0.5,0) ifsvg(+(0,textht/10))}
+ {"iflatex(`\scriptsize$+$',+)" \
+ at rvec_(csdim_*1.5,0) ifsvg(+(0,textht/10))}',
+ `$2',tv,
+ `{line thick 2*linethick to E chop csdim_/4} ',
+ `$2',v,
+ `{line to E} ',
+ `$2',P,
+ `{ Proxim(2*csdim_) at rvec_(csdim_,0) }') ] with .W at Here}
+ line from last [].E to rvec_(rp_len/2+csdim_,0)}
line to rvec_(rp_len,0) invis ')')
`geiger( linespec, r, diameter, R, attributes, body name)
@@ -994,8 +1028,10 @@
popdef(`m4wd',`m4d',`m4ht',`m4fusetype')dnl
line to rvec_(rp_len,0) invis ')
- `arrester( linespec, [G|E|S][D[L|R]],
- len[:arrowhead ht], ht[:arrowhead wid],
+ `arrester( linespec,
+ [chars][D[L|R]],
+ body len[:arrowhead ht],
+ body ht[:arrowhead wid],
attributes )
arg2 chars:
G= spark gap (default)
@@ -1019,42 +1055,49 @@
ifelse(m4rdna,,`define(`m4rdna',G)')dnl
define(`m4rL',ifinstr(`$2',L,-))dnl
define(`m4rR',ifinstr(`$2',R,-))dnl
- define(`m4aht',`m4Rightstr(`$3',arrowht*2/3)')dnl
- define(`m4awd',`m4Rightstr(`$4',arrowwid*4/3)')dnl
- define(`m4wd',
- `ifinstr(m4rdna,C,`m4Leftstr(`$3',dimen_/3)',
+ define(`m4aht',`(m4Rightstr(`$3',arrowht*2/3))')dnl
+ define(`m4awd',`(m4Rightstr(`$4',
+ ifelse(m4rdna,g,dotrad_*2,m4rdna,M,dotrad_*2,arrowwid*4/3)))')dnl
+ define(`m4wd',`(ifinstr( dnl body length
+ m4rdna,C,`m4Leftstr(`$3',dimen_/3)',
m4rdna,F,`m4Leftstr(`$3',dimen_/3)',
m4rdna,s,`m4Leftstr(`$3',dimen_/4)',
m4rdna,E,`m4Leftstr(`$3',dimen_*5/8)',
- `m4Leftstr(`$3',dimen_/2)')')dnl
- define(`m4ht',
- `ifinstr(Loopover_(`Z',`ifinstr(m4rdna,Z,T)',C,A,s),T,
- `m4Leftstr(`$4',dimen_/4)',
- ifinstr(m4rdna,F,T),T,`m4Leftstr(`$4',dimen_/3)',
- `m4Leftstr(`$4',dimen_/5)')')dnl
+ `m4Leftstr(`$3',dimen_/2)'))')dnl
+ define(`m4ht',`(ifinstr( dnl body height
+ Loopover_(`Z',`ifinstr(m4rdna,Z,T)',C,A,s),T,`m4Leftstr(`$4',dimen_/4)',
+ m4rdna,F,`m4Leftstr(`$4',dimen_/3)',
+ `m4Leftstr(`$4',dimen_/5)'))')dnl
ifinstr(`$2',D,
`[ define(`m4LL',m4rL)dnl
ifinstr(m4rdna,S,
- `R: arrester(ifelse(`$1',,`to rvec_(dimen_,0)'),m4rdna,shift(shift($@)))
+ `R: arrester(ifelse(`$1',,`to rvec_(m4wd*2,0)',`$1'),m4rdna,
+ shift(shift($@)))
Gb: line from R.c+vec_(0,m4LL m4ht/2) to R.c+vec_(0,m4LL (-m4ht*3/2))
A: R.start; B: R.end; C: R.c; G: Here ',
m4rdna,E,
- `R: arrester(ifelse(`$1',,`to rvec_(dimen_,0)'),m4rdna,shift(shift($@)))
+ `R: arrester(ifelse(`$1',,`to rvec_(m4wd*8/5,0)',`$1'),m4rdna,
+ shift(shift($@)))
Gb: line from R.c+vec_(0,m4LL m4wd/8) to R.c+vec_(0,m4LL (-m4wd*3/4))
A: R.start; B: R.end; C: R.c; G: Here ',
- `M4ErrorMsg(`D argument of Arrester() applies to types S, E only!') ') ]',
- `eleminit_(`$1',elen_)
+ `M4ErrorMsg(`D argument of Arrester() applies to types S, E only!') ')
+ `$6' ]',
+ `eleminit_(`$1',elen_) dnl 2-terminal elements:
{line to rvec_(max(0,rp_len/2-m4wd/2),0)
{[ Orig: Here
- ifinstr(m4rdna,G,
- `{arrow to rvec_(m4aht,0) wid m4awd ht m4aht}
+ ifinstr(m4rdna,G,`
+ {sarrow(to rvec_(m4aht,0),\
+ wdth=m4awd;lgth=m4aht;head=shaded "black" `$5';)}
move to rvec_(m4wd,0)
- arrow to rvec_(-m4aht,0) wid m4awd ht m4aht',
+ sarrow(to rvec_(-m4aht,0),\
+ wdth=m4awd;lgth=m4aht;head=shaded "black" `$5';)',
m4rdna,g,
- `{dot(at rvec_(dotrad_,0))}; dot(at rvec_(m4wd-dotrad_,0))',
+ `{dot(at rvec_(m4awd/2,0),rad=m4awd/2;circle=fill_(0) `$5')}
+ dot(at rvec_(m4wd-m4awd/2,0),rad=m4awd/2;circle=fill_(0) `$5')',
m4rdna,M,
- `{dot(at rvec_(dotrad_,0))}
- {dot(at rvec_(m4wd/2,0))}; dot(at rvec_(m4wd-dotrad_,0))',
+ `{dot(at rvec_(m4awd/2,0),rad=m4awd/2;circle=fill_(0) `$5')}
+ {dot(at rvec_(m4wd/2,0),rad=m4awd/2;circle=fill_(0) `$5')}
+ dot(at rvec_(m4wd-m4awd/2,0),rad=m4awd/2;circle=fill_(0) `$5')',
m4rdna,C,
`lbox(m4wd/3,m4ht,`$5'); move to rvec_(m4wd/3,0)
lbox(m4wd/3,m4ht,`$5')',
@@ -1071,10 +1114,10 @@
{arc ifelse(m4rR,-,c)cw from Here to rvec_(m4ht,m4rR m4ht) \
with .c at rvec_(m4ht,0)}
line to rvec_(m4ht,0)',
- m4rdna,P,
- `{open_arrow(to rvec_(m4aht,0),m4awd,m4aht)}
+ m4rdna,P,`
+ {sarrow(to rvec_(m4aht,0),wdth=m4awd;lgth=m4aht; `$5';)}
move to rvec_(m4wd,0)
- open_arrow(to rvec_(-m4aht,0),m4awd,m4aht)',
+ sarrow(to rvec_(-m4aht,0),wdth=m4awd;lgth=m4aht; `$5';)',
m4rdna,s,
`{line to rvec_(m4ht/2*(sqrt(2)-1),0)}
{arc from rvec_(0,-m4ht/2) to rvec_(0,m4ht/2) \
@@ -1089,11 +1132,14 @@
line from rvec_(m4wd,m4ht/2) to rvec_(m4wd,-m4ht/2)',
m4rdna,S,
`{lbox(m4wd,m4ht,`$5')}
- arrow to rvec_(m4wd/2,0) wid m4awd ht m4aht',
+ sarrow(to rvec_(m4wd/2,0),\
+ wdth=m4awd;lgth=m4aht;head=shaded "black";) ',
m4rdna,E,
`{circle diam m4wd at rvec_(m4wd/2,0) `$5'}
- {arrow to rvec_(m4wd*3/8,0) wid m4awd ht m4aht}
- {arrow <- from rvec_(m4wd*5/8,0) to rvec_(m4wd,0) wid m4awd ht m4aht}
+ {sarrow(to rvec_(m4wd*3/8,0),\
+ wdth=m4awd;lgth=m4aht;head=fill_(0);)}
+ {sarrow(from rvec_(m4wd,0) to rvec_(m4wd*5/8,0),\
+ wdth=m4awd;lgth=m4aht;head=fill_(0);)}
dot(at rvec_(m4wd*6/8,m4wd/4),dotrad_*2/3) ')
] with .Orig at Here }
line from rvec_(m4wd,0) to rvec_(max(0,rp_len/2+m4wd/2),0) }
@@ -1453,6 +1499,38 @@
`$5'; resetdir_ ] with .T ifelse(`$1',,`at Here',`$1')
move to last [].T')
+ `heatsink(at position, keys, U|D|L|R|degrees)
+ keys: lgth=expr; hght=expr; fin=attributes;
+ base=attributes; fincount=expr;
+ Arg3: drawing direction (default: R)'
+define(`heatsink',`[ setdir_(`$3',R)
+ pushkeys_(`$2',`lgth:dimen_*3/4; hght:m4`'lgth/3; fin::N;
+ base::N; fincount:6;')dnl
+ SW: (0,0); NW: vec_(0,m4hght); SE: vec_(m4lgth,0); NE: vec_(m4lgth,m4hght)
+ B: line from SW to SE m4base
+ T: line from SE+(NE-SE)/4 to SW+(NW-SW)/4 m4base
+ for i=0 to m4fincount-1 do {
+ move to (0.5+i)/m4fincount between T.end and T.start
+ line to Here+(NW-SW)*3/4 m4base m4fin }
+ `$4'; resetdir_ popdef(`m4lgth',`m4hght',`m4fin',`m4base',`m4fincount')
+ ] ifelse(`$1',,`at Here',`$1')')
+
+ `adjust(at position,keys)
+ Adjustment screw in a [] block
+ keys:
+ size=expr;
+ angle=degrees; slot angle
+ slotwid=expr; slot width
+ circle=attributes; shade, outline etc'
+define(`adjust',`[ pushkeys_(`$2',
+ `size:dimen_/4; angle:60; circle::N; slotwid:m4`'size/3')
+ C: circle diam m4size at (0,0) m4circle
+ ap = asin(m4slotwid/m4size)*rtod_
+ line from (Rect_(m4size/2,m4angle-ap)) to (Rect_(m4size/2,m4angle-180+ap))
+ line from (Rect_(m4size/2,m4angle+180-ap)) to (Rect_(m4size/2,m4angle+ap))
+ popdef(`m4size',`m4angle',`m4circle',`m4slotwid')
+ ] ifelse(`$1',,`at Here',`$1') ')
+
`switch( linespec,L|R,[O|C][D],L|B|D,attribs )
Wrapper for bswitch, lswitch, dswitch
R=right orientation (default L=left)
@@ -1876,8 +1954,8 @@
`$7']')
`diode(linespec,
- B|b|CR|D|F|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|chars,
- [R][E])
+ B|b|CR|D|F|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|z|
+ chars,[R][E])
Adding K to arg2 draws open arrowheads
Adding M draws a mid-arrowhead crossbar
Arg 3: R=reversed polarity, E=enclosure'
@@ -1891,7 +1969,7 @@
define(`m4cts',`ifelse(
dma_,,LACR,
dma_,B,uLAZQuR,
- dma_,b,uLAzQuR,
+ dma_,b,uLAzoQuR,
dma_,CR,LACRrb,
dma_,D,LuAHdQR,
dma_,F,LFR,
@@ -1909,6 +1987,7 @@
dma_,v,LACvdR,
dma_,w,LAdvXdR,
dma_,Z,LAZR,
+ dma_,z,LAzR,
dma_)')
ifelse(dma_,B,`define(`m4dh',2*m4dh)',
dma_,D,`define(`m4dv',2*m4dv)',
@@ -1922,6 +2001,7 @@
define(`m4dm',
`ifelse(dma_,S,`m4dv/4',
dma_,Z,`(m4dv/4-linethick pt__/2)',
+ dma_,z,`(m4dv/4-linethick pt__/2)',
dma_,v,`m4dv/4',
dma_,w,`m4dv/4',
0)')dnl
@@ -1956,7 +2036,8 @@
[u|d]v varicap diode-capacitor curved plate
Y bilateral core
Z zener bar
- z zener bar outlined
+ z zener bar angled
+ zo zener bar outlined
arg 2: f= fill the arrowhead
M=arrowhead crossbar
R=right orientation
@@ -2087,7 +2168,7 @@
to rvec_(0,-m4dv/2-m4dy) \
then to rvec_(0, m4dv/2+m4dy) \
then to rvec_(m4dv/4,m4dv/2+m4dy)}')
- sc_draw(`ddna_',z,dnl Outlined zener bar
+ sc_draw(`ddna_',zo,dnl Outlined zener bar
`{line from rvec_(-m4dv/4,-m4dv/2-m4dy-lthick*2) \
to rvec_( lthick*0.7,-m4dv/2-m4dy) \
then to rvec_( lthick*0.7, m4dv/2+m4dy+lthick) }
@@ -2094,6 +2175,11 @@
{line from rvec_( m4dv/4, m4dv/2+m4dy+lthick*2) \
to rvec_(-lthick*0.7, m4dv/2+m4dy) \
then to rvec_(-lthick*0.7,-m4dv/2-m4dy-lthick) }')
+ sc_draw(`ddna_',z,dnl Zener bar
+ `{line from rvec_(-m4dv/4,-m4dv/2-m4dy) \
+ to rvec_(0, -m4dv/3-m4dy) \
+ then to rvec_(0, m4dv/3+m4dy) \
+ then to rvec_( m4dv/4, m4dv/2+m4dy)}')
ifinstr(ddna_,Q,dnl left arrowhead
`sc_draw(`ddna_',Qc,`define(`m4Qc')')sc_draw(`ddna_',Q,`undefine(`m4Qc')')dnl
define(`m4dn',`ifelse(m4a,u,m4dv/2,m4a,d,-m4dv/2,0)')dnl
@@ -2125,6 +2211,7 @@
`line from 0.5 between M4_s and M4_e to M4_e \
chop m4dh ifelse(m4a,,/2,m4a,d,/2+m4dv/4) chop 0')
')dnl
+
`em_arrows( type|keys,angle,length )
type=N|I|E [D|T]
N=nonionizing, I=ionizing, E=simple;
@@ -2376,9 +2463,9 @@
pushdef(`dotrad_',(dotrad_/2))dnl
ifelse(ifinstr(m4Da,B1,T,m4Da,R1,T,m4Da,R2,T),T,`dot(at Q2.E)')
ifelse(ifinstr(m4Da,R2,T,m4Da,Z,T),T,
- `dot(at Q2.Bulk.c+vec_(0,m4DR`'m4_U))')
+ `M4D1: dot(at Q2.Bulk.c+vec_(0,m4DR`'m4_U))')
ifelse(ifinstr(m4Da,B1,T,m4Da,R1,T),T,`ifinstr(m4Da,R2,
- `dot(at Q2.E+vec_(-m4_U,0))')')
+ `M4D2: dot(at Q2.E+vec_(-m4_U,0))')')
ifinstr(m4Da,B1,
`ifinstr(m4Da,R1,`dot(at Q2.E-vec_(3*m4_U,0))')
B1: Q2.E+vec_(-3*m4_U,m4DR`'5.2*m4_U)
@@ -2400,10 +2487,9 @@
ifinstr(m4Da,E,,`corner;E: Here; line from Q1.E to E')
point_(hp_ang)')')')
ifinstr(m4Da,R2,
- `move to Q2.Bulk.c+vec_(0,m4DR`'m4_U)
- line to rvec_(-4*m4_U,0); corner
+ `line from M4D1 to M4D1+vec_(-4*m4_U,0); corner
pushdef(`dimen_',((dimen_)*0.6))dnl
- R2: resistor(to Q2.E+vec_(-m4_U/0.6,0),,m4DE2) popdef(`dimen_')
+ R2: resistor(to M4D2,,m4DE2) popdef(`dimen_')
point_(hp_ang)')
ifinstr(m4Da,D,
`DE: Q1.E + vec_(m4_U*3/2,m4DR`'(-m4_U*3/2))
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/libgen.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/libgen.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/libgen.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -2,7 +2,7 @@
libgen.m4 Base macros for dpic and gpic diagrams
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
@@ -192,7 +192,7 @@
`$2')')
define(`m4announceprocessor',`dnl Do not change the format of the next line:
-`#' `$1' Version 10.7: ifelse(m4picprocessor,gpic,`Gpic',
+`#' `$1' Version 10.8: ifelse(m4picprocessor,gpic,`Gpic',
m4postprocessor,pstricks,`PSTricks',
m4postprocessor,pgf,`TikZ PGF',
m4postprocessor,mfpic,`Mfpic',
@@ -481,8 +481,7 @@
`intersect_(Start1,End1,Start2,End2)
Intersection of lines joining named positions'
define(`intersect_',`((($3.x-$1.x)*($3.y-$4.y)-($3.y-$1.y)*($3.x-$4.x))/\
- (($2.x-$1.x)*($3.y-$4.y)-($2.y-$1.y)*($3.x-$4.x))\
- between `$1' and `$2')')
+ (($2.x-$1.x)*($3.y-$4.y)-($2.y-$1.y)*($3.x-$4.x)) between `$1' and `$2')')
`Dashed line drawn in detail (dpic only)
dashline(
@@ -697,10 +696,30 @@
define(`vscal_',`prod_($1,$2),prod_($1,$3)')
Relative position
define(`rpos_',`Here+`$1'')
- Absolute and relative vector determined by
- current direction numbers
+ Absolute vector determined by current
+ direction numbers
+
+define(`robustcode_',0) Choose robust or terse code
+ifelse(robustcode_,0,`
+ This provides the cleanest code for
+ debug but can cause problems when inside
+ a dpic loop:
define(`vec_',
`(sum_(prod_($1,m4a_),prod_($2,m4c_)),sum_(prod_($1,m4b_),prod_($2,m4d_)))')
+',
+`
+ This is most robust when mixed with pure
+ pic code, at the expense of long expressions
+ that are more complicated for debug:
+define(`vec_',`vec_r($@)')
+')
+ Force robust code for use in pic loops:
+define(`vec_r',
+ `(((`$1')*cos(rp_ang)-(`$2')*sin(rp_ang)),\
+ ((`$1')*sin(rp_ang)+(`$2')*cos(rp_ang)))')
+define(`rvec_r',`Here+vec_r($1,$2)')
+
+ Relative vector
define(`rvec_',`Here+vec_($1,$2)')
Sine and cosine of integer degrees with
@@ -962,7 +981,7 @@
define(`dotrad_',(0.02*scale))
define(`dot',`[ define(`m4ft',`ifelse(`$3',,0,(`$3'))')dnl
pushkeys_(`$2',`rad:m4nul:N;circle:fill_(m4ft):N')dnl
- ifelse(m4rad,m4nul,`popdef(`m4rad')pushdef(`m4rad',
+ ifelse(m4rad,m4nul,`poppushdef(`m4rad',
`ifinstr(`$2',=,`dotrad_',`ifelse(`$2',,`dotrad_',(`$2'))')')')dnl
ifdef(`r_',`rgbfill(r_+(1-r_)*m4ft, g_+(1-g_)*m4ft, b_+(1-b_)*m4ft,
circle rad m4rad )',
@@ -1035,63 +1054,52 @@
popdef(`m4attrib',`m4rad',`m4shadowthick',`m4shadowcolor',`m4shadowangle') ')
`hatchbox(boxspec,hatchsep,hatchspec,angle)
+ Hatched manhattan box in a [] block
or
hatchbox(keys)
- Manhattan box with hatching at angle degrees
+ Box in current direction (or boxdir) with
+ hatching at angle degrees relative to boxdir
keys:
wid=expr;
ht=expr;
box=attributes; (e.g. dashed outline "color")
- fillcolor="color"|(r,g,b);
hatchsep=expr;
hatchspec=attributes;
- angle=expr; '
-define(`hatchbox',`[
- pushkeys_(`$1',`wid:boxwid:N; ht:boxht:N; box::N;fillcolor::N;
- hatchsep:0.075*scale; hatchspec::N; angle:45')
- b = ifelse(`$4',,m4angle,`$4')
- a = pmod((ifelse(b,,45,b)+90),180)-90
- if a >=0 then { B: box ifinstr(`$1',=,`wid m4wid ht m4ht m4box dnl
- ifelse(m4fillcolor,,,m4colorfix(shaded,m4fillcolor))',
- invis `$1') with .nw at (0,0) } \
- else { B: box ifinstr(`$1',=,`wid m4wid ht m4ht m4box dnl
- ifelse(m4fillcolor,,,m4colorfix(shaded,m4fillcolor))',
- invis `$1') with .sw at (0,0) }
- ds = m4hatchsep
+ angle=degrees;
+ boxdir=degrees; '
+define(`hatchbox',`[ pushkeys_(`$1',`wid:boxwid:N; ht:boxht:N; box::N;
+ hatchsep:m4`'ht*3/20; hatchspec:`$3':N; boxdir:rp_ang*rtod_; angle:45;')
+ m4_b = ifelse(`$4',,m4angle,`$4')
+ m4_a = pmod((ifelse(m4_b,,45,m4_b)+90),180)-90 # 1st or 4th quadrant
+ B: box wid m4wid ht m4ht ifinstr(`$1',=,,`$1') invis with .c at (0,0)
+ setdir_(ifinstr(`$1',=,m4boxdir))
+ Bx: rotbox(B.wid,B.ht,ifinstr(`$1',=,m4box,`$1')) with .C at B.c
+ m4_hs = ifelse(`$2',,m4hatchsep,`$2')
ifelse(m4hatchspec,,`thicktemp = linethick; thinlines_')
- ca = cosd(a); sa = sind(a)
- if abs(a) < 0.1 then { for y = ds to B.ht by ds do {
- line from B.nw-(0,y) to B.ne-(0,y) } } \
- else { if abs(abs(a)-90) < 0.1 then { for x = ds to B.wid by ds do {
- line from B.nw+(x,0) to B.sw+(x,0) } } \
- else { d = min(B.wid,B.ht)/5
- if a>=0 then { T: B.nw
- for lp=1 to 0 by -1 do { T: T+(ds*sa,-ds*ca); Q: T+(ca*d,sa*d)
- S: (0,intersect_(T,Q,B.nw,B.sw).y)
- if (-S.y) > B.ht then { S: (intersect_(T,Q,B.sw,B.se).x,-B.ht) }
- F: (intersect_(T,S,B.nw,B.ne).x,0)
- if F.x > B.wid then { F: (B.wid,intersect_(T,S,B.ne,B.se).y) }
- lp=((-F.y)<=B.ht && F.x<=B.wid)
- # Use this with dpic-2017.08.24 or later:
- line from S*lp to F*lp m4hatchspec
- }
- } else { T: B.sw
- for lp=1 to 0 by -1 do { T: T+(-ds*sa,ds*ca); Q: T+(-ca*d,-sa*d)
- S: intersect_(T,Q,B.nw,B.sw)
- if S.y > B.ht then { S: (intersect_(T,Q,B.nw,B.ne).x,B.ht) }
- F: intersect_(T,S,B.sw,B.se)
- if F.x > B.wid then { F: (B.wid,intersect_(T,S,B.ne,B.se).y) }
- lp=(F.y<=B.ht && F.x<=B.wid)
- # Use this with dpic-2017.08.24 or later:
- line from S*lp to F*lp `$3'
- line from S*lp to F*lp m4hatchspec
- }
- } } }
+ m4_ca = cosd(m4_a); m4_sa = sind(abs(m4_a))
+ if abs(m4_a) < 0.1 then { for y = m4_hs to B.ht by m4_hs do {
+ U: B.nw-(0,y); V: B.ne-(0,y)
+ line from vec_(U.x,U.y) to vec_(V.x,V.y) m4hatchspec } } \
+ else { if abs(abs(m4_a)-90) < 0.1 then { for x = m4_hs to B.wid by m4_hs do {
+ U: B.nw+(x,0); V: B.sw+(x,0)
+ line from vec_(U.x,U.y) to vec_(V.x,V.y) m4hatchspec } } \
+ else { m4_d = max(B.wid,B.ht)/5
+ dnl DT is hatchline rotated -90 deg
+ T: B.nw; DT: (m4_hs*m4_sa,-m4_hs*m4_ca); DQ: (m4_ca*m4_d,m4_sa*m4_d)
+ for m4_lp=1 to 0 by -1 do { T: T+DT; Q: T+DQ
+ S: (B.w.x, intersect_(T,Q,B.nw,B.sw).y)
+ if S.y < B.s.y then { S: (intersect_(T,Q,B.sw,B.se).x, B.s.y) }
+ F: (intersect_(T,S,B.nw,B.ne).x, B.n.y)
+ if F.x > B.e.x then { F: (B.e.x, intersect_(T,S,B.ne,B.se).y) }
+ m4_lp = (F.y >= B.s.y && F.x <= B.e.x)
+ if m4_lp then { line from vec_(S.x,sign(m4_a)*S.y) \
+ to vec_(F.x,sign(m4_a)*F.y) m4hatchspec }
+ } }}
ifelse(m4hatchspec,,`linethick_(thicktemp)')
- box wid B.wid ht B.ht at B m4box ifinstr(`$1',=,,`$1')
- popdef(`m4wid',`m4ht',`m4box',`m4fillcolor',
- `m4hatchsep',`m4hatchspec',`m4angle') dnl
- `$5' ]' )
+ By: rotbox(B.wid,B.ht,ifinstr(`$1',=,patsubst(m4box,shaded[^;]*),`$1')) \
+ with .C at B.c; `$5'
+ resetdir_; popdef(`m4wid',`m4ht',`m4box',`m4hatchsep',`m4hatchspec',
+ `m4angle',`m4boxdir') undef m4ng ]' )
`lbox(wid,ht,attributes)
box oriented in current direction;
@@ -1118,8 +1126,8 @@
If a spline is used, the bounding box is
approximate'
define(`rotbox',`[
- pushdef(`m4bw2',ifelse(`$1',,(boxwid/2),`(($1)/2)'))dnl
- pushdef(`m4bh2',ifelse(`$2',,(boxht/2) ,`(($2)/2)'))dnl
+ m4bw2 = ifelse(`$1',,(boxwid/2),`(($1)/2)')
+ m4bh2 = ifelse(`$2',,(boxht/2) ,`(($2)/2)')
C: Here
N: vec_(0, m4bh2)
S: vec_(0,-m4bh2)
@@ -1152,7 +1160,7 @@
NW: vec_(-m4bw2, m4bh2)
SW: vec_(-m4bw2,-m4bh2)
Line: line from E to NE then to NW then to SW then to SE then to E `$3'')
- popdef(`m4bw2',`m4bh2') `$5' ]')
+ `$5' ]')
`rotellipse(wid,ht,attributes)
ellipse oriented in current direction and
@@ -1469,7 +1477,7 @@
define(`sarrow',
`pushkeys_(`$2',`type:O:N; head::N; shaft:m4`'head:N; wdth:arrowwid;
lgth:arrowht; hook::N; name:Sarrow_:N')dnl
- arrow `$1' m4head invis
+ arrow `$1' patsubst(m4head,fill [0-9.]*\|shaded "[^"]*") invis
m4_sadx = last arrow.end.x-last arrow.start.x
m4_sady = last arrow.end.y-last arrow.start.y
m4_sath = last arrow.thick bp__
@@ -1941,6 +1949,11 @@
only)
The "1:" after rgb is a divisor for the values
(xcolor manual p 16)'
+ `This macro can be fragile when used as
+ an m4 macro argument. Then something like
+ the following delays expansion:
+ define rgbpurp {rgbstring(0.5,0,1)}
+ curve(,,,rail=outlined rgbpurp)'
ifelse(
m4postprocessor,pstricks,`define(`rgbstring',`ifelse(`$2',,`"$1"',
`sprintf("{rgb,1:red,%7.5f;green,%7.5f;blue,%7.5f}",`$1',`$2',`$3')')')',
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/liblog.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/liblog.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/liblog.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
liblog.m4 Logic gates
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/mfpic.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/mfpic.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/mfpic.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
mfpic.m4 Initialization for mfpic.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/mpost.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/mpost.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/mpost.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
mpost.m4 Initialization for metapost.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/pdf.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/pdf.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/pdf.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
pdf.m4 Initialization for pdf output.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/pgf.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/pgf.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/pgf.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
pgf.m4 Initialization for Tikz-pgf.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/postscript.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/postscript.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/postscript.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
postscript.m4 Initialization for Postscript output.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/psfrag.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/psfrag.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/psfrag.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -2,7 +2,7 @@
psfrag.m4 Initialization for dpic -f processing:
Postscript with psfrag strings
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/pstricks.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/pstricks.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/pstricks.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
pstricks.m4 Initialization for PSTricks.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/svg.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/svg.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/svg.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
svg.m4 Initialization for svg output.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
Modified: trunk/Master/texmf-dist/doc/latex/circuit-macros/xfig.m4
===================================================================
--- trunk/Master/texmf-dist/doc/latex/circuit-macros/xfig.m4 2025-04-01 20:01:51 UTC (rev 74817)
+++ trunk/Master/texmf-dist/doc/latex/circuit-macros/xfig.m4 2025-04-01 20:02:45 UTC (rev 74818)
@@ -1,7 +1,7 @@
divert(-1)
xfig.m4 Initialization for xfig.
-* Circuit_macros Version 10.7, copyright (c) 2024 J. D. Aplevich under *
+* Circuit_macros Version 10.8, copyright (c) 2025 J. D. Aplevich under *
* the LaTeX Project Public Licence in file Licence.txt. The files of *
* this distribution may be redistributed or modified provided that this *
* copyright notice is included and provided that modifications are clearly *
More information about the tex-live-commits
mailing list.