diff options
Diffstat (limited to 'graphics/circuit_macros/doc/defines.tex')
-rw-r--r-- | graphics/circuit_macros/doc/defines.tex | 405 |
1 files changed, 383 insertions, 22 deletions
diff --git a/graphics/circuit_macros/doc/defines.tex b/graphics/circuit_macros/doc/defines.tex index e598203179..eb7d914fb2 100644 --- a/graphics/circuit_macros/doc/defines.tex +++ b/graphics/circuit_macros/doc/defines.tex @@ -49,10 +49,11 @@ {gen} {absolute value function} \macrodef{ACsymbol}{ACsymbol}{(at {\sl position, len, ht,} - [A]U|D|L|R|{\sl degrees}) } + [n:][A]U|D|L|R|{\sl degrees}) } {cct} - {draw an AC symbol ( 1-cycle sine wave); If arg 4 contains A, two arcs - are drawn. The current drawing direction is default, otherwise Up, Down, + {draw a stack of $n$ (default 1) AC symbols + ( 1-cycle sine waves); If arg 4 contains A, two arcs + are used. The current drawing direction is default, otherwise Up, Down, Left, Right, or at {\sl degrees} slant; \seesect{Twoterminal:} e.g.,\\ {\tt ebox; $\lbrace$ACsymbol(at last [],{,}dimen\_/8)$\rbrace$}} \macrodef{adc}{adc}{({\sl width,height,nIn,nN,nOut,nS})} @@ -349,10 +350,11 @@ arg5 = wid (defaults F: {\sl height}*0.3, C,P: {\sl height}*0.4, CP: {\sl height}*0.8, E,K: {\sl height}) \seesect{Twoterminal:}} -\macrodef{cbreaker}{cbreaker}{(\linespec,L|R,D|Th|TS)} +\macrodef{cbreaker}{cbreaker}{(\linespec, L|R, D|Th|TS, body name)} {cct} {circuit breaker to left or right, {\tt D}=with dots; {\tt Th}=thermal; - {\tt TS}=squared thermal\seesect{Twoterminal:}} + {\tt TS}=squared thermal; default body bounding box name is + {\sl Br}\seesect{Twoterminal:}} \macrodef{ccoax}{ccoax}{(at {\sl location}, M|F, {\sl diameter})} {cct} {coax connector, {\tt M}=male, {\tt F}=female @@ -441,9 +443,10 @@ \macrodef{cross3D}{cross3D}{({\sl x1,y1,z1,x2,y2,z2})} {3D} {cross product of two triples} -\macrodef{crossover}{crossover}{(\linespec, L|R, Line1, ...)} +\macrodef{crossover}{crossover}{(\linespec, [L|R][:{\sl line attributes}], + Line1, Line2, .{.}.)} {cct} - {line jumping left or right over named lines\seesect{Semiconductors:}} + {line jumping left or right over ordered named lines\seesect{Semiconductors:}} \macrodef{crosswd\_}{crosswd_}{} {gen} {cross dimension} @@ -557,7 +560,9 @@ U|D|L|R|{\sl degrees}) (default {\tt U} for up)} {cct} {Delta symbol for power-system diagrams. - {\sl keys:} {\tt size={\sl expression}}} + {\sl keys:} {\tt size={\sl expression;}} + {\tt type=C|O} (default {\tt C} for closed; + {\tt O} draws an ``open'' symbol); } \macrodef{Demux}{Demux}{({\sl n},{\sl label}, {\tt [L][B|H|X][N[{\sl n}]|S[{\sl n}]][[N]OE], {\sl wid},{\sl ht}})} @@ -593,7 +598,7 @@ {macro for dimensioning diagrams; {\sl arrowhead=}{\tt -> | <-}} \macrodef{diode}{diode}{(\linespec,% -B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% +B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|chars,% [R][E])} {cct} {diode: @@ -607,6 +612,7 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% {\tt S}=Schottky, {\tt Sh}=Shockley, {\tt T}=tunnel, + {\tt U}=limiting, {\tt V}=varicap, {\tt v}=varicap (curved plate), {\tt w}=varicap (reversed polarity), @@ -699,7 +705,7 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% \macrodef{drjust}{drjust}{(at {\sl location})} {darrow} {rjust (displaced dlinewid/2)} -\macrodef{dswitch}{dswitch}{(\linespec,L|R,W[ud]B[K]{\sl chars})} +\macrodef{dswitch}{dswitch}{(\linespec,L|R,W[ud]B {\sl chars})} {cct} {SPST switch left or right, W=baseline, B=contact blade, dB=contact blade to the right of drawing direction, @@ -1511,6 +1517,23 @@ elementspec}\char39,% {cct} {pass transistor; {\tt L=} left orientation \seesect{Semiconductors:}} +\macrodef{pushkey\_}{pushkey_}{({\sl string, key, default value,}[N])} + {gen} + {Key-value definition. + If {\sl string} contains the substring + {\sl key}{\tt =}{\sl expr} then macro {\tt m4{\sl key}} + is defined using {\tt pushdef()} to + expand to {\tt ({\sl expr})}, or to {\tt ({\sl default value})} if the + substring is missing. Arg 1 can contain several such substrings separated + by semicolons. + If arg4 is nonblank, the parentheses are omitted. + \seesect{Macroarguments:}} +\macrodef{pushkeys\_}{pushkeys_}{({\sl string, key sequence})} + {gen} + {Multiple key-value definitions. Arg 2 is a semicolon-separated + sequence of terms of the form {\tt {\sl key}:{\sl default value}:[N]}. + Macro {\tt pushkey\_} is applied to each of the terms in order. + \seesect{Macroarguments:}} \Letter{R}% \macrodef{r\_}{r_}{} {gen} @@ -1606,6 +1629,10 @@ degrees})} {Draw a right-angle symbol at {\sl Pos2}, of size given by arg4. Arg5 = line attributes, e.g., {\tt outlined "gray"}} +\macrodef{r\_text}{s_text}{({\sl text},{\sl degrees})} + {gen} + {Rotate text by arg2 degrees (PSTricks, PGF, or SVG only). + \seesect{Interaction:}, \seesect{Pstricks:}} \macrodef{rjust\_}{rjust_}{} {gen} {right justify with respect to current direction} @@ -1660,10 +1687,16 @@ degrees})} \macrodef{rrot\_}{rrot_}{({\sl x, y, angle})} {gen} {\tt Here + vrot\_({\sl x, y, cos(angle), sin(angle))}} -\macrodef{rs\_box}{rs_box}{({\sl text},{\sl expr1},$\cdots$)} +\macrodef{rs\_box}{rs_box}{([angle={\sl expr};] + {\sl text},{\sl expr1},$\cdots$)} {gen} {like {\tt s\_box} but the text is rotated by {\tt text\_ang} - (default 90) degrees \seesect{Interaction:}, \seesect{Pstricks:}} + (default 90) degrees. Two or more args are passed to {\tt sprintf()}. + If the first argument begins with {\tt angle={\sl expr};} then + the specified angle is used. + The examples {\tt define(`text\_ang',45); rs\_box(Hello World)} and + {\tt rs\_box(angle=45; Hello World)} are equivalent + \seesect{Interaction:}, \seesect{Pstricks:}} \macrodef{rsvec\_}{rsvec_}{({\sl position})} {gen} {Here + {\sl position}} @@ -1756,7 +1789,7 @@ $\ldots$)} Start}, {\tt End}, and {\tt C} are defined \seesect{Seriesandparallel:} } \macrodef{setdir\_}{setdir_}{(R|L|U|D|{\sl degrees}, {\sl default} -U|D|R|L|{\sl degrees})} + U|D|R|L|{\sl degrees})} {gen} {store drawing direction and set it to up, down, left, right, or angle in degrees (reset by {\tt @@ -1771,11 +1804,14 @@ U|D|R|L|{\sl degrees})} svg values are integers from 0 to 255\seesect{Semiconductors:}} \macrodef{setkey\_}{setkey_}{({\sl string, key, default,}[N])} {gen} - {Key-value definition. The string contains semicolon-separated - terms - of the form {\sl key}{\tt =}{\sl value}. Then macro {\tt m4{\sl key}} - is defined using {\tt pushdef} to be {\tt ({\sl value})} but if arg4 - is nonbland, the parentheses are omitted.} + {Key-value definition, like {\tt pushkey\_()} but the resulting + macro is defined using {\tt define()} rather than {\tt pushdef().} + \seesect{Macroarguments:}} +\macrodef{setkeys\_}{setkeys_}{({\sl string, key sequence})} + {gen} + {Multiple key-value definition using {\tt define()} rather than + {\tt pushdef().} See macro {\tt pushkeys\_}. + \seesect{Macroarguments:}} \macrodef{setview}{setview}{({\sl azimuth degrees},{\sl elevation degrees})} {3D} {set projection viewpoint} @@ -1850,8 +1886,8 @@ justification})} \macrodef{SIdefaults}{SIdefaults}{} {gen} {Sets {\tt scale = 25.4} for drawing units in mm, and sets - pic parameters {\tt lineht = 12, linewid = 12, moveht = 12, movewid - = 12, + pic parameters {\tt lineht = 12, linewid = 12, moveht = 12, + movewid = 12, arcrad = 6, circlerad = 6, boxht = 12, boxwid = 18, ellipseht = 12, ellipsewid = 18, dashwid = 2, arrowht = 3, arrowwid = arrowht/2,}} \macrodef{sign\_}{sign_}{({\sl number})} @@ -1867,14 +1903,339 @@ justification})} {gen} {sine of an expression in degrees} \macrodef{sinusoid}{sinusoid}{({\sl amplitude, frequency, phase, tmin, -tmax, - linetype})} + tmax, linetype})} {gen} {draws a sinusoid over the interval $(t_{\hbox{\scriptsize min}}, t_{\hbox{\scriptsize max}})$; e.g., to draw a dashed sine curve, amplitude {\sl a}, of {\sl n} cycles of length {\sl x} from {\sl A}, {\tt sinusoid(a,twopi\_*n/x,-pi\_/2,0,x,dashed) with .Start at A}} +\macrodef{sl\_box}{sl_box}{({\sl stem linespec, keys, stem object})} + {SLD} + {One-terminal SLD element: argument 1 is a \linespec\ to define the stem + or, in the case of a zero-length stem, one of {\tt U, D, L, R,} or an + angle in degrees, optionally followed by {\tt at {\sl position}}. + The position is {\sl Here} by default. + + Argument 2 contains semicolon (;)-separated key-value attributes + of the head: + {\tt name={\sl{}Name}} (default {\sl Head}); + {\tt lgth={\sl{}expr}}; + {\tt wdth={\sl{}expr}}; + {\tt text="{\sl{}text}"}, + {\tt box={\sl{}box pic attributes}}. + + If argument 3 is null then a plain stem is drawn; if it is of the + form {\tt S:}{\sl keys} or {\tt S$n$:}{\sl keys} an $n$-line slash + symbol is overlaid on the stem; otherwise the keys are for an overlaid + breaker, so that a {\tt C} specifies a default closed breaker, {\tt + O} an open breaker, {\tt X,} {\tt /,} or \bsl\ for these marks, or + \MR{sl_ttbox}{\tt sl\_ttbox} key-value pairs defining box attributes + for the breaker (default name {\sl Br}) + + \seesect{SingleLine:}} +\macrodef{sl\_breaker}{sl_breaker}{({\sl linespec,} {\tt type=[A|C][D];} + {\sl ttbox args})} + {SLD} + {Two-terminal SLD element: + type {\tt A} (the default) is for a box breaker; type + {\tt C} for a curved breaker; adding a {\tt D} puts drawout elements + in the input and output leads. + Otherwise, the arguments are as for + \MR{sl_ttbox}{\tt sl\_ttbox} + \seesect{SingleLine:}} +\macrodef{sl\_busbar}{sl_busbar}{({\sl linespec, np, keys})} + {SLD} + {Composite SLD element drawn in a {\tt [ ]} block. A busbar is + essentially a thick straight line + drawn along the {\sl linespec} with positions evenly distributed + along it. For example, + {\tt line right\_; sl\_busbar(, up\_ 4.5, 5) with .P3 at Here}. + + Argument 1 is a \linespec\ to define the direction and length of the + busbar (but not its position, since it is drawn in a {\tt [ ]} block). + + Argument 2 is the number $np$ of evenly spaced positions + $P1, P2, \ldots Pnp$ along the line with $P1$ and $Pnp$ indented + from the ends of the line. + + Argument 3 contains semicolon (;)-separated key-value attributes + of the line: + {\tt port=D} (for a dot at each port position); + {\tt line=}{\sl pic line attributes}. + {\tt indent=}{\sl indent distance}. + \seesect{SingleLine:}} +\macrodef{sl\_ct}{sl_ct}{% + ({\tt at}{\sl position},{\sl keys},{\tt R|L|U|D|}{\sl degrees})} + {SLD} + {Composite SLD element drawn in a {\tt [ ]} block: + + The keys are as follows: + {\tt type=L|N|S[n]} (default {\tt L;} {\tt S$n$} draws an $n$-line slash + symbol, default 2); {\tt N} means no stem); + {\tt scale={\sl expr} (default 1.0)}; + {\tt grnd={\sl expr} attached ground at given angle + (type {\tt S} or {\tt N}))}; + {\tt stemlgth={\sl{}expr}}; + {\tt wdth={\sl{}expr}}; + {\tt direct=U|D|L|R|{\sl degrees}} (drawing direction). + + Key {\tt stemlgth} is the length of the leads at the start, centre, and end, + with labeled ends {\sl Tstart, Tc,} and {\sl Tend}. + The {\tt L} (default) variant also defines internal labels + Internal labels {\sl L} and {\sl C} are included. + + Key {\tt scale} allows scaling (default scale 1.0) but, with \dpic, + the {\tt scaled} directive can also be used. + \seesect{SingleLine:}} +\macrodef{sl\_disk}{sl_disk}{({\sl stem linespec, keys, breaker})} + {SLD} + {One-terminal SLD element: argument 1 is a \linespec\ to define the stem + or, in the case of a zero-length stem, one of {\tt U, D, L, R,} or an + angle in degrees, optionally followed by {\tt at {\sl position}}. + The position is {\sl Here} by default. + + Argument 2 contains semicolon (;)-separated key-value attributes + of the head: + {\tt name={\sl{}Name}} (default {\sl Head}); + {\tt text="{\sl{}text}"}; + {\tt diam={\sl{}expr}}; + {\tt circle={\sl{}circle pic attributes}}. + + Argument 3 is null for no breaker in the stem, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + \MR{sl_ttbox}{\tt sl\_ttbox} + key-value pairs defining box attributes for the breaker + (default name {\sl Br}) + \label{sl_disk}% + \seesect{SingleLine:}} +\macrodef{sl\_drawout}{sl_drawout}{({\sl linespec, keys,} R)} + {SLD} + {Two-terminal SLD element: argument 1 is a \linespec\ as for ordinary + two-terminal elements. + + Argument 2 contains semicolon (;)-separated key-value body attributes: + {\tt type=T} (for truncated leads); + {\tt lgth={\sl{}expr},} + {\tt wdth={\sl{}expr}} (body size); + {\tt name={\sl{}Name}} (default {\sl Body}); + {\tt line={\sl{}pic line attributes}}; (e.g., {\tt thick 2}) + + Argument 3 is {\tt R} to reverse the direction of the drawn chevrons. + \seesect{SingleLine:}} +\macrodef{sl\_generator}{sl_generator}{({\sl stem linespec, keys, breaker})} + {SLD} + {One-terminal SLD element: argument 2 is + {\tt type=AC|WT|BS|StatG|PV|Y|Delta} and, + if {\tt type=PV,} the {\tt SL\_box} keys; + otherwise, the {\tt sl\_disk} body keys. + + Argument 3 is null for no breaker in the stem, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + \MR{sl_ttbox}{\tt sl\_ttbox} + key-value pairs defining box attributes for the breaker + (default name {\sl Br}) + \seesect{SingleLine:}} +\macrodef{sl\_grid}{sl_grid}{({\sl stem linespec, keys, breaker})} + {SLD} + {One-terminal SLD element: argument 1 is a \linespec\ to define the stem + or, in the case of a zero-length stem, one of {\tt U, D, L, R,} or an + angle in degrees, optionally followed by {\tt at {\sl position}}. + The position is {\sl Here} by default. + + Argument 2 contains semicolon (;)-separated key-value attributes + of the head: + {\tt name={\sl{}Name}} (default {\sl Head}); + {\tt lgth={\sl{}expr}}; + {\tt wdth={\sl{}expr}}. + + Argument 3 is null for no breaker in the stem, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + \MR{sl_ttbox}{\tt sl\_ttbox} + key-value pairs defining box attributes for the breaker + (default name {\sl Br}) + \seesect{SingleLine:}} +\macrodef{sl\_inverter}{sl_inverter}{({\sl ttbox args})} + {SLD} + {Two-terminal SLD element: the arguments are as for + \MR{sl_ttbox}{\tt sl\_ttbox} + \seesect{SingleLine:}} +\macrodef{sl\_lamp}{sl_lamp}{({\sl stem linespec, keys, breaker})} + {SLD} + {One-terminal SLD element: the arguments are as for + \MR{sl_disk}{\tt sl\_disk} + \seesect{SingleLine:}} +\macrodef{sl\_load}{sl_load}{({\sl stem linespec, keys, breaker})} + {SLD} + {One-terminal SLD element: argument 1 is a \linespec\ to define the stem + or, in the case of a zero-length stem, one of {\tt U, D, L, R,} or an + angle in degrees, optionally followed by {\tt at {\sl position}}. + The position is {\sl Here} by default. + + Argument 2 contains semicolon (;)-separated key-value attributes + of the head: + {\tt name={\sl{}Name}} (default {\sl Head}); + {\tt lgth={\sl{}expr}}; + {\tt wdth={\sl{}expr}}; + {\tt head={\sl{}arrowhead pic attributes}}. + + Argument 3 is null for no breaker in the stem, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + \MR{sl_ttbox}{\tt sl\_ttbox} + key-value pairs defining box attributes for the breaker + (default name {\sl Br}) + \seesect{SingleLine:}} +\macrodef{sl\_meterbox}{sl_meterbox}{({\sl stem linespec, keys, breaker})} + {SLD} + {One-terminal SLD element: argument 1 is a \linespec\ to define the stem + or, in the case of a zero-length stem, one of {\tt U, D, L, R,} or an + angle in degrees, optionally followed by {\tt at {\sl position}}. + The position is {\sl Here} by default. + + Argument 2 contains semicolon (;)-separated key-value attributes + of the head: + {\tt name={\sl{}Name}} (default {\sl Head}); + {\tt lgth={\sl{}expr}}; + {\tt wdth={\sl{}expr}}; + {\tt text="{\sl{}text}"}, + {\tt box={\sl{}box pic attributes}}. + + Argument 3 is null for no breaker in the stem, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + \MR{sl_ttbox}{\tt sl\_ttbox} + key-value pairs defining box attributes for the breaker + (default name {\sl Br}) + \seesect{SingleLine:}} +\macrodef{sl\_reactor}{sl_reactor}{({\sl stem linespec, keys, breaker keys, + breaker keys})} + {SLD} + {Two-terminal SLD element: argument 1 is a \linespec\ as for ordinary + two-terminal elements. + + Argument 2 contains semicolon (;)-separated key-value body attributes: + {\tt name={\sl{}Name}} (default {\sl Body}); + {\tt diam={\sl{}expr}}. + + Argument 3 is null for no breaker in the input lead, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + key-value pairs as above defining breaker attributes + except that the default breaker name is {\sl BrI}. + + Argument 4 defines the breaker in the output lead as for argument 3 + except that the default breaker name is {\sl BrO}. + \seesect{SingleLine:}} +\macrodef{sl\_rectifier}{sl_rectifier}{({\sl ttbox args})} + {SLD} + {Two-terminal SLD element: the arguments are as for + \MR{sl_ttbox}{\tt sl\_ttbox} + \seesect{SingleLine:}} +\macrodef{sl\_slash}{sl_slash}{(at {\sl position, keys,} + [$n$:]R|L|U|D|{\sl degrees})} + {SLD} + {Slash symbol for SLD elements: draws $n$ slashes in a {\tt [] } block. + The keys are + {\tt lines={\sl line attributes,} e.g., dotted thick {\sl expr}}; + {\tt size=}{\sl expr} (default {\tt ht dimen\_/3}). + \seesect{SingleLine:}} +% +\macrodef{sl\_transformer}{sl_transformer}{({\sl linespec, keys, + input breaker keys, output breaker keys, + input circle inner object, output circle inner object})} + {SLD} + {Two-terminal SLD element: argument 1 is a \linespec\ as for ordinary + two-terminal elements. + + Argument 2 contains semicolon (;)-separated key-value body attributes: + {\tt name={\sl{}Name}} (default {\sl Body}); + {\tt scale={\sl expr}} (body size factor, default 1.0); + {\tt type=I|S|A[R]} (default {\tt I}). + + Additional type {\tt I} keys are + {\tt cycles={\sl{}integer}} (default 4); + {\tt core=A|M[$n$]|P[$n$]|K[$n$]}, $n$={\sl integer} (default 2 lines). + + Additional type {\tt S} keys are + {\tt body={\sl circle pic attributes}} e.g., {\tt shaded "{\sl color}"}. + + Type {\tt A} keys are + {\tt body={\sl circle pic attributes}}. Type {\tt AR} means right + orientation. + + Argument 3 is null for no breaker in the input lead, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + key-value pairs as above defining breaker attributes + except that the default breaker name is {\sl BrI}. + + Argument 4 defines the breaker in the output lead as for argument 3 + except that the default breaker name is {\sl BrO}. + + Argumentss 5 and 6 for the input and output circles respectively are: + {\tt Y} for a Y-symbol; + {\tt YN} for a Y-symbol with ground; + {\tt Delta} for a $\Delta$ symbol; + otherwise, other customization commands expanded in a {\tt \lbr\rbr} pair. + \seesect{SingleLine:}} +% +\macrodef{sl\_transformer3}{sl_transformer3}{({\sl linespec, keys, + breaker keys, symbol keys})} + {SLD} + {Composite (block) SLD element: argument 1 is a \linespec\ that can be used + to set the direction and distance between primary terminals but not + position. + + Argument 2 contains semicolon (;)-separated key-value body attributes: + {\tt name={\sl{}Name}} (default {\sl Body}); + {\tt type=S|C} (default {\tt S}); + {\tt scale={\sl expr}} (body size factor, default 1.0); + {\tt direct=L|R} (default {\tt L}) direction of the tertiary + circle and terminal relative to the drawing direction; + {\tt body={\sl circle attributes}}. + + Argument 3 is colon (:)-separated sequence of up to three breaker + attribute specifications for the input, output, and teriary breaker + in order. A null or blank means no breaker, {\tt tt\_breaker} + specifications otherwise. Default breaker names are {\sl BrI} + and {\sl BrO} as for + {\tt sl\_transformer,} and {\sl Br} for the third breaker. + + Argument 4 is colon (:)-separated sequence of up to three symbol + specifications for the input, output, and teriary circle + in order. A null or blank means no symbol; + {\tt Y} for a Y-symbol; + {\tt Delta} for a $\Delta$ symbol; + otherwise, other customization commands expanded in a {\tt \lbr\rbr} pair. + \seesect{SingleLine:}} +\macrodef{sl\_ttbox}{sl_ttbox}{({\sl linespec, keys, input breaker keys, + output breaker keys})} + {SLD} + {Two-terminal SLD element: argument 1 is a \linespec\ as for ordinary + two-terminal elements. + + Argument 2 contains semicolon (;)-separated key-value body attributes: + {\tt name={\sl{}Name}} (default {\sl Body}); + {\tt lgth={\sl{}expr}}; + {\tt wdth={\sl{}expr}}; + {\tt text="{\sl{}text}"}; + {\tt box={\sl{}box pic attributes}}; + {\tt supp={\sl{}additional {\tt rotbox} commands}}. + + Argument 3 is null for no breaker in the input lead, {\tt C} for a default + closed breaker, {\tt O} for an open breaker, {\tt X,} {\tt /,} or \bsl\ for + these marks, or + key-value pairs as above defining breaker attributes + except that the default breaker name is {\sl BrI}. + + Argument 4 defines the breaker in the output lead as for argument 3 + except that the default breaker name is {\sl BrO}. + \label{sl_ttbox}% + \seesect{SingleLine:}} \macrodef{source}{source}{(\linespec, V|v|I|i|AC|B|F|G|H|J|Q|L|N|P|S[C[r]]|E[r]]|T|X|U|{\sl other}, {\sl diameter},R)} |