summaryrefslogtreecommitdiff
path: root/graphics/circuit_macros/libcct.m4
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-07-29 03:01:04 +0000
committerNorbert Preining <norbert@preining.info>2022-07-29 03:01:04 +0000
commitda2dc471ec5bb2620f0ef5a4a700b236d1a8af06 (patch)
treed928b5b5abe4df9287ffda090d15e777c78bd783 /graphics/circuit_macros/libcct.m4
parent5937dac9360bdf40d1b0baf9d7384b109fb5b7a7 (diff)
CTAN sync 202207290301
Diffstat (limited to 'graphics/circuit_macros/libcct.m4')
-rw-r--r--graphics/circuit_macros/libcct.m425
1 files changed, 17 insertions, 8 deletions
diff --git a/graphics/circuit_macros/libcct.m4 b/graphics/circuit_macros/libcct.m4
index 3c4128b6d3..16ae9ba91e 100644
--- a/graphics/circuit_macros/libcct.m4
+++ b/graphics/circuit_macros/libcct.m4
@@ -1,7 +1,7 @@
divert(-1)
libcct.m4
-* Circuit_macros Version 9.8, copyright (c) 2022 J. D. Aplevich under *
+* Circuit_macros Version 9.9, copyright (c) 2022 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 *
@@ -1727,7 +1727,7 @@ SW: rvec_(adc_ht/2,-adc_ht/2)
`$7']')
`diode(linespec,
- B|CR|D|F|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|chars,
+ B|b|CR|D|F|G|L|LE[R]|P[R]|S|Sh|T|U|V|v|w|Z|chars,
[R][E])
Adding K to arg2 draws open arrowheads
Adding M draws a mid-arrowhead crossbar
@@ -1742,6 +1742,7 @@ define(`diode',
define(`m4cts',`ifelse(
dma_,,LACR,
dma_,B,uLAZQuR,
+ dma_,b,uLAzQuR,
dma_,CR,LACRrb,
dma_,D,LuAHdQR,
dma_,F,LFR,
@@ -1806,6 +1807,7 @@ define(`diode',
[u|d]v varicap diode-capacitor curved plate
Y bilateral core
Z zener bar
+ z zener bar outlined
arg 2: f= fill the arrowhead
M=arrowhead crossbar
R=right orientation
@@ -1936,6 +1938,13 @@ define(`m4gen_d',`{dnl
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
+ `{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) }
+ {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) }')
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
@@ -1967,7 +1976,6 @@ define(`m4gen_d',`{dnl
`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,degrees,length)
type=[N|I|E][D] N=nonionizing, I=ionizing,
E=simple; D=dot on arrow stem
@@ -2790,8 +2798,8 @@ define(`reversed',`eleminit_(`$2')
`resized(factor,`macro name in quotes',args)
multiply element body size by factor'
-define(`resized',`define(`m4resiztmp',dimen_)define(`dimen_',(dimen_)*(`$1'))dnl
- $2(shift(shift($@))) define(`dimen_',m4resiztmp)')
+define(`resized',`pushdef(`dimen_',(dimen_)*(`$1'))dnl
+ $2(shift(shift($@))) popdef(`dimen_')')
`variable(`element', type, [+|-]angle,
length, at position)
@@ -3674,6 +3682,7 @@ define(`earphone',`[ setdir_($1,R)
In2: Here
In3: rvec_(0,-m4h/8)')
`$4'; resetdir_ ]')
+
`Signal-flow graph macros: labeled node,
directed labeled chopped straight line,
directed labeled chopped arc, and a self
@@ -3746,8 +3755,8 @@ define(`sfgarc',`eleminit_(`$1',sfg_wid)
`arc m4c_l patsubst(patsubst(`$1',.*<-,<-),->.*$,->) ifelse(`$4',ccw,ccw,cw)\
from Cintersect(Start,sfg_rad,C,arcrd,ifelse(`$4',ccw,R)) \
to Cintersect(C,arcrd,End,sfg_rad,ifelse(`$4',ccw,R)) with .c at C')
- ifelse(`$2',,,`{move to M; "iflatex(`$ `$2'$',` $2')" ifelse(`$3',,
- `sfgabove',`$3')}')
+ ifelse(`$2',,,`move to M; "iflatex(`$ `$2'$',` $2')" ifelse(`$3',,
+ `sfgabove',`$3')')
] with .Start at last line.start
move to last line.end
')
@@ -3767,7 +3776,7 @@ define(`sfgself',`[ Origin: Here
ifelse(`$7',,`{ arrow m4c_l from rvec_(0,ifelse(`$5',cw,,-)sfg_aht/2) \
to rvec_(0,ifelse(`$5',cw,-)sfg_aht/2) ht sfg_aht wid sfg_awid }')
ifelse(`$3',,,
- `"iflatex(`$ `$3'$',` $3')" ifelse(`$4',,`sfgabove',`$4')') }
+ `{"iflatex(`$ `$3'$',` $3')" ifelse(`$4',,`sfgabove',`$4')}') }
m4sfgselfcurve(,
ifelse(`$5',ccw,`ifinstr(`$7',->,<-)',`ifinstr(`$7',<-,<-)'))
resetdir_ ] with .Origin ifelse(`$1',,at Here,`$1')