%% %% This is file `csyrest.mf', %% generated with the docstrip utility. %% %% The original source files were: %% %% circ.dtx (with options: `csyrest') %% Copyright 1997 Andreas Tille / Sebastian Tannert %% %% This file is part of the CIRC package %% ------------------------------------- %% This package is distributed in the hope that it will be useful, %% but WITHOUT ANY WARRANTY; without even the implied warranty of %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. %% %% For error reports concerning UNCHANGED versions of this file no %% more than one year old, see CIRC.DVI. %% %% IMPORTANT COPYRIGHT NOTICE: %% %% You are NOT ALLOWED to distribute this file alone. %% %% You are allowed to distribute this file under the condition that it %% is distributed together with all the files listed in circ.txt. %% %% If you receive only some of these files from someone, complain! %% %% You are NOT ALLOWED to change this file. input csym; designsize:=.5lLE#; def switch = %"uberarbeiten numeric pl; pl:=swt_lt*swt_dis; sl:=(1-2swt_dis)*swt_lt; z0=(0,0); z1=z0+(pl,0); z2=z1+((sl,0) rotated swt_phi); z3=z1+(swt_ind*sl,0); z4=z0+(swt_lt,0); z5=z3+(0,swt_slt); pickup pensquare scaled normalline; draw z0--z1--z2; draw z3--z4; draw z3--z5; enddef; def dswitch = z0=(0,0); z1=dsw_t[z0,z0+(dsw_wd,0)]; x2=x3=x4=x5=x0+((1-dsw_c)*dsw_wd); y0=.5[y2,y3]=.5[y4,y5]; y2-y3=dsw_ht; y2-y4=dsw_cc*dsw_ht; y2=y6; y3=y7; x6-x3=x7-x3=dsw_c*dsw_wd; x8=x1+dsw_ov+((1-dsw_c-dsw_t)*dsw_wd); y8=sind(dsw_phi)*x8/cosd(dsw_phi); pickup pensquare scaled normalline; draw z0--z1--z8; draw z4--z2--z6; draw z5--z3--z7; enddef; def circle = % "uberarbeiten numeric pl; pl:=.5cir_lt-cir_ht; z0=(0,0); z1=z0+(pl,0); z2=z0+(.5cir_lt,0); z3=z1+(2cir_ht,0); z4=z3+(pl,0); pickup pensquare scaled normalline; draw z0--z1; draw z3--z4; pickup pencircle scaled thickline; draw fullcircle scaled 2cir_ht shifted z2; enddef; def lamp = circle z10-z11=(2cir_ht,0) rotated 45; z12-z13=(2cir_ht,0) rotated -45; .5[z10,z11]=z2=.5[z12,z13]; pickup pencircle scaled normalline; draw z10--z11; draw z12--z13; enddef; def circle_var = circle; pickup pencircle scaled thinline; noarrowTF; arrow(z2,cir_ara,cir_arb,cir_phi,arr_lt,arr_phi)(); enddef; def usource = %"uberarbeiten numeric pl; pl:=.5(uso_lt-uso_spc); z0=(0,0); z1=z0+(pl,0); z2=z1+(uso_spc,0); z3=z2+(pl,0); pickup pensquare scaled normalline; draw z0--z1; draw z2--z3; z1=.5[z4,z5]; x4-x5=0; y5-y4=uso_pls; z2=.5[z6,z7]; x6-x7=0; y7-y6=uso_min; pickup pensquare scaled thickline; draw z4--z5; draw z6--z7; enddef; def usource_var = usource; noarrowTF; pickup pencircle scaled thinline; arrow(.5[z1,z2],uso_ara,cir_arb,uso_phi,arr_lt,arr_phi)(); enddef; def isource = %"uberarbeiten numeric pl; pl:=.5(iso_lt-(4-iso_dis)*iso_rad); z0=(0,0); z1=z0+(pl,0); z2=z1+(iso_rad,0); z3=z2+((2-iso_dis)*iso_rad,0); z4=z3+(iso_rad,0); z5=z4+(pl,0); pickup pensquare scaled normalline; draw z0--z1; draw z4--z5; pickup pencircle scaled thickline; draw fullcircle scaled (2*iso_rad) shifted z2; draw fullcircle scaled (2*iso_rad) shifted z3; enddef; def isource_var = isource; noarrowTF; pickup pencircle scaled thinline; arrow(.5[z2,z3],iso_ara,iso_arb,iso_phi,arr_lt,arr_phi)(); enddef; def value = % "uberarbeiten z0=(0,0); z1=z0+(val_lt,0); pickup pensquare scaled normalline; draw z0--z1; z2=val_lft[z0,z1]; z3=val_rht[z0,z1]; triangle(z2,abs(z3-z2),val_phi,0); enddef; def coil = %"uberarbeiten numeric pl; pl:=.5(coi_lt-2coi_num*coi_rad); z0=(0,0); z1=z0+(pl,0); z2=z1+(coi_rad,0); for m=1 upto coi_num-1: z[m+2]=z[m+1]+(2coi_rad,0); endfor; z[2+coi_num]=z[1+coi_num]+(coi_rad,0); z[3+coi_num]=z[2+coi_num]+(pl,0); pickup pensquare scaled normalline; draw z0--z1; draw z[2+coi_num]--z[3+coi_num]; pickup pencircle scaled normalline; for m=1 upto coi_num: draw halfcircle scaled 2coi_rad shifted z[m+1]; endfor; enddef; def crystal = %"uberarbeiten pickup pensquare scaled normalline; numeric pl; pl:=.5(cry_lt-2cry_spc-cry_wd); z0=(0,0); z1=z0+(pl,0); z2=z1+(cry_spc,0); z3=z2+(cry_wd,0); z4=z3+(cry_spc,0); z5=z4+(pl,0); z6-z7=z8-z9=z10-z11=z12-z13=(0,cry_ht); z2=.5[z6,z7]; z3=.5[z8,z9]; z1=.5[z10,z11]; z4=.5[z12,z13]; draw z0--z1; draw z4--z5; draw z10--z11; draw z12--z13; draw z7--z9--z8--z6--cycle; enddef; def inout = % "uberarbeiten z0=(0,0); pickup pensquare scaled normalline; z2=z0+(ioc_lt,0); lft(z1)=z0+(.5ioc_dia,0); draw z1--z2; enddef; def minout = z0=(0,0); z1=z0+(ioc_lt,0); pickup pensquare scaled normalline; arrow(z0,0,ioc_lt,180,ioc_arr,ioc_phi)(pickup pencircle scaled normalline); enddef; def ground = % Masse z0 z11 z0=(0,0); x1=x0=x2=x3; y0-y1=gnd_ht; y1-y2=y2-y3=gnd_spc; y4=y1=y10; y2=y6; y3=y8; z1=.5[z4,z5]; x5-x4=gnd_wd; z1=.5[z10,z11]; x11-x10=GND_wd; z2=.5[z6,z7]; x7-x6=gnd_wd*gnd_q; z3=.5[z8,z9]; x9-x8=gnd_wd*gnd_q*gnd_q*gnd_q; enddef; "Spule"; fourchars(0)(coil)(z[3+coi_num])(coi_ht#,coi_lt#,0); "Quarz"; twochars(4)(crystal)(.5cry_ht#,cry_lt#,.5cry_ht#); "Lampe"; twochars(6)(lamp)(cir_ht#,cir_lt#,cir_ht#); "Kreise mit Anschl"&ditto&"ussen"; twochars(8)(circle)(cir_ht#,cir_lt#,cir_ht#); "Kreise mit Anschl"&ditto&"ussen variabel"; twochars(10)(circle_var)(cir_ht#,cir_lt#,cir_ht#); "Stromquelle"; twochars(12)(isource)(iso_ht#,iso_lt#,iso_ht#); "Stromquelle variabel"; twochars(14)(isource_var)(iso_ht#,iso_lt#,iso_ht#); "Spannungsquelle"; fourchars(16)(usource)(z3)(uso_ht#,uso_lt#,uso_ht#); "Spannungsquelle variabel"; fourchars(20)(usource_var)(z3)(uso_ht#,uso_lt#,uso_ht#); "Schalter"; twochars(24)(switch)(swt_ht#,swt_lt#,0); "Umschalter"; eightchars(32)(dswitch)(dsw_wd#,.5dsw_ht#,.5dsw_ht#,0); "Anschl"&ditto&"usse Pfeil"; fourchars(232) (minout;)(z1)(.5ioc_ht#,ioc_lt#,.5ioc_ht#); "Anschl"&ditto&"usse leer"; fourchars(240) (inout; pickup pencircle scaled thinline; draw fullcircle scaled ioc_dia shifted z0; )(z2)(.5ioc_ht#,ioc_lt#,.5ioc_ht#); "Anschl"&ditto&"usse voll"; fourchars(244) (inout; pickup pencircle scaled ioc_dia; draw z0; )(z2)(.5ioc_ht#,ioc_lt#,.5ioc_ht#); "Str"&ditto&"ome"; fourchars(248)(value;)(z1)(val_ht#,val_lt#,val_ht#); "wwire half R"; beginchar(112,.5lLE#,0pt,0pt); z0=(0,0); y4-y3=y2-y1=ww_spc; x3-x1=.5lLE; x0=x1=x2; x3=x4; y0=.5[y1,y2]=.5[y3,y4]; pickup pensquare scaled normalline; draw z1--z3; draw z2--z4; endchar; "wwire R"; beginchar(113,1lLE#,0pt,0pt); z0=(0,0); y4-y3=y2-y1=ww_spc; x3-x1=1lLE; x0=x1=x2; x3=x4; y0=.5[y1,y2]=.5[y3,y4]; pickup pensquare scaled normalline; draw z1--z3; draw z2--z4; endchar; "wwire half L"; beginchar(114,.5lLE#,0pt,0pt); z0=(0,0); y4-y3=y2-y1=ww_spc; x3-x1=.5lLE; x0=x3=x4; x1=x2; y0=.5[y1,y2]=.5[y3,y4]; pickup pensquare scaled normalline; draw z1--z3; draw z2--z4; endchar; "wwire half U"; beginchar(115,0pt,.5lLE#,0pt); z0=(0,0); x4-x3=x2-x1=ww_spc; y3-y1=.5lLE; y0=y1=y2; y3=y4; x0=.5[x1,x2]=.5[x3,x4]; pickup pensquare scaled normalline; draw z1--z3; draw z2--z4; endchar; "wwire U"; beginchar(116,0pt,1lLE#,0pt); z0=(0,0); x4-x3=x2-x1=ww_spc; y3-y1=1lLE; y0=y1=y2; y3=y4; x0=.5[x1,x2]=.5[x3,x4]; pickup pensquare scaled normalline; draw z1--z3; draw z2--z4; endchar; "wwire half D"; beginchar(117,0pt,0pt,.5lLE#); z0=(0,0); x4-x3=x2-x1=ww_spc; y3-y1=.5lLE; y0=y3=y4; y1=y2; x0=.5[x1,x2]=.5[x3,x4]; pickup pensquare scaled normalline; draw z1--z3; draw z2--z4; endchar; "dashed halfline R"; beginchar(120,.5lLE#,0pt,0pt); z0=(0,0); z1=z0+(.25lLE,0); pickup pensquare scaled normalline; draw z0--z1; endchar; "dashed line R"; beginchar(121,1lLE#,0pt,0pt); z0=(0,0); z1=z0+(1lLE,0); z2=.25[z0,z1]; z3=.75[z0,z1]; pickup pensquare scaled normalline; draw z2--z3; endchar; "dashed halfline L"; beginchar(122,.5lLE#,0pt,0pt); z0=(0,0); z1=z0-(.25lLE,0); pickup pensquare scaled normalline; draw z0--z1; endchar; "dashed halfline U"; beginchar(123,0pt,.5lLE#,0pt); z0=(0,0); z1=z0+(0,.25lLE); pickup pensquare scaled normalline; draw z0--z1; endchar; "dashed line U"; beginchar(124,0pt,1lLE#,0pt); z0=(0,0); z1=z0+(0,1lLE); z2=.25[z0,z1]; z3=.75[z0,z1]; pickup pensquare scaled normalline; draw z2--z3; endchar; "dashed halfline D"; beginchar(125,0pt,0pt,.5lLE#); z0=(0,0); z1=z0-(0,.25lLE); pickup pensquare scaled normalline; draw z0--z1; endchar; "Linie horizontal halb R"; beginchar(128,.5lLE#,0pt,0pt); z0=(0,0); z1=z0+(.5lLE,0); pickup pensquare scaled normalline; draw z0--z1; endchar; "Linie horizontal R"; beginchar(129,1lLE#,0pt,0pt); z0=(0,0); z1=z0+(1lLE,0); pickup pensquare scaled normalline; draw z0--z1; endchar; "Linie horizontal halb L"; beginchar(130,.5lLE#,0pt,0pt); z0=(0,0); z1=z0-(.5lLE,0); pickup pensquare scaled normalline; draw z0--z1; endchar; "Linie vertikal halb U"; beginchar(131,0pt,.5lLE#,0pt); z0=(0,0); z1=z0+(0,.5lLE); pickup pensquare scaled normalline; draw z0--z1; endchar; "Linie vertikal U"; beginchar(132,0pt,1lLE#,0pt); z0=(0,0); z1=z0+(0,1lLE); pickup pensquare scaled normalline; draw z0--z1; endchar; "Linie vertikal halb D"; beginchar(133,0pt,0pt,.5lLE#); z0=(0,0); z1=z0-(0,.5lLE); pickup pensquare scaled normalline; draw z0--z1; endchar; "B"&ditto&"undel horizontal"; beginchar(134,0,.8bnd_lt#,0pt); z0=(0,0); z0=.5[z2,z3]; z3-z2=(bnd_lt,0) rotated bnd_phi; pickup pencircle scaled thinline; draw z2--z3; endchar; "B"&ditto&"undel vertikal"; beginchar(135,.8bnd_lt#,0pt,0pt); z0=(0,0); z0=.5[z2,z3]; z3-z2=(bnd_lt,0) rotated (90-bnd_phi); pickup pencircle scaled thinline; draw z2--z3; endchar; "Linie fett horizontal R"; beginchar(136,.5lLE#,0pt,0pt); z0=(0,0); z1=z0+(.5lLE,0); pickup pensquare scaled 2normalline; draw z0--z1; endchar; "Linie fett horizontal R"; beginchar(137,1lLE#,0pt,0pt); z0=(0,0); z1=z0+(1lLE,0); pickup pensquare scaled 2normalline; draw z0--z1; endchar; "Linie fett horizontal halb L"; beginchar(138,.5lLE#,0pt,0pt); z0=(0,0); z1=z0-(.5lLE,0); pickup pensquare scaled 2normalline; draw z0--z1; endchar; "Linie fett vertikal halb U"; beginchar(139,0pt,.5lLE#,0pt); z0=(0,0); z1=z0+(0,.5lLE); pickup pensquare scaled 2normalline; draw z0--z1; endchar; "Linie fett vertikal U"; beginchar(140,0pt,1lLE#,0pt); z0=(0,0); z1=z0+(0,1lLE); pickup pensquare scaled 2normalline; draw z0--z1; endchar; "Linie fett vertikal halb D"; beginchar(141,0pt,0pt,.5lLE#); z0=(0,0); z1=z0-(0,.5lLE); pickup pensquare scaled 2normalline; draw z0--z1; endchar; "Oscillograph"; beginchar(142,osc_dia#,.5osc_dia#,.5osc_dia#); z0=(0,0); z1=z0; z5=.5[z1,z3]=.5[z2,z4]; x2=x4; y1=y3; x3-x1=y4-y2=osc_dia; .5osc_gt+osc_spc+osc_stm=.5osc_dia; osc_stm=osc_t*osc_gt; z6=z1+(osc_stm,0); z7=z2+(0,osc_stm); z8=z3+(-osc_stm,0); z9=z4+(0,-osc_stm); z6=.5[z10,z11]; x10=x11; x16-x17=y14-y15=x12-x13=y11-y10=osc_gt; z7=.5[z12,z13]; y12=y13; z8=.5[z14,z15]; x14=x15; z9=.5[z16,z17]; y16=y17; pickup pensquare scaled normalline; %drawing style by Andreas Tille draw z1--z6; %code rewritten by SeTa draw z2--z7; draw z3--z8; draw z4--z9; pickup pencircle scaled normalline; draw fullcircle scaled osc_dia shifted z5; pickup pensquare scaled thickline; draw z10--z11; draw z12--z13; draw z14--z15; draw z16--z17; endchar; "a small grey elephant: Thanks to Andreas Tille."; LE#:=.03mm#; define_pixels(LE); numeric nPnt; def p(expr px,py) = x[nPnt]:=px*LE; y[nPnt]:=py*LE; nPnt:=nPnt+1 enddef; beginchar(252,540LE#,265LE#,274LE#); pickup pencircle scaled 0.4pt; path a, b; picture cutpic; nPnt:=0; p( 0, 0); % copyright by Sebastian Tannert p( 0, 18); % Please think of the hard work! p( -2, 46);p( -3, 92);p( 8,117);p( 28,152); p( 38,171);p( 71,195);p(107,218);p(138,240);p(159,255);p(181,261); p(193,264);p(211,268);p(231,263);p(249,264);p(273,259);p(292,255); p(311,249);p(336,240);p(380,222);p(414,208);p(437,198);p(449,193); p(461,190);p(473,185);p(490,173);p(506,157);p(519,125);p(526, 91); p(530, 56);p(530, 35);p(523, 17);p(518, 1);p(509,-22);p(511,-46); p(515,-71);p(514,-96);p(512,-112);p(511,-135);p(507,-150);p(498,-171); p(485,-184);p(465,-197);p(448,-200);p(429,-194);p(418,-177);p(414,-168); p(420,-159);p(427,-157);p(435,-163);p(439,-171);p(449,-164);p(461,-165); p(470,-152);p(476,-139);p(476,-118);p(475,-97);p(465,-76);p(450,-62); p(442,-50);p(427,-36);p(417,-29);p(409,-27);p(392,-12);p(383,-10); p(374,-18);p(370,-34);p(363,-58);p(347,-92);p(343,-106);p(341,-126); p(330,-162);p(323,-196);p(322,-210);p(317,-237);p(327,-257);p(325,-268); p(310,-270);p(301,-272);p(284,-266);p(269,-258);p(268,-236);p(270,-210); p(282,-185);p(300,-151);p(315,-119);p(322,-93);p(325,-79);p(326,-63); p(315,-75);p(303,-101);p(292,-134);p(281,-164);p(269,-189);p(258,-220); p(259,-250);p(260,-266);p(252,-269);p(235,-260);p(221,-266);p(203,-261); p(194,-242);p(201,-227);p(206,-213);p(207,-190);p(215,-162);p(222,-147); p(225,-123);p(229,-96);p(234,-77);p(234,-65);p(236,-47);p(236,-30); p(236,-12);p(240,6);p(248,19);p(264,37);p(146,41);p(158,24); p(176,-3);p(188,-29);p(193,-53);p(185,-80);p(175,-106);p(165,-137); p(152,-173);p(143,-202);p(142,-222);p(136,-232);p(141,-253);p(132,-255); p(125,-255);p(105,-240);p(91,-239);p(75,-228);p(68,-205);p(70,-178); p(85,-156);p(96,-127);p(100,-112);p(95,-88);p(79,-62);p(60,-38); p(48,-16);p(36,18);p(28,63);p(24,41);p(28,17);p(29,-6);p(31,-32); p(26,-43);p(17,-65);p(15,-83);p(12,-106);p(7,-126);p(0,-141); p(-9,-147);p(-16,-131);p(-24,-110);p(-22,-94);p(-17,-75);p(-6,-55); p(-2,-34);p(2,-19);p(190,-63);p(209,-75);p(234,-69);p(31,-32); p(31,-44);p(26,-67);p(37,-95);p(45,-117);p(43,-158);p(38,-193); p(25,-224);p(29,-249);p(52,-266);p(71,-264);p(88,-266);p(113,-273); p(133,-273);p(138,-268);p(132,-255);p(457,48);p(462,30);p(481,21); p(477,40);p(449,32);p(456,11);p(478,5);p(464,60);p(486,61); p(499,37);p(363,93);p(352,110);p(348,129);p(358,149);p(386,162); p(414,173);p(427,178);p(443,167);p(456,157);p(461,142);p(450,126); p(436,110);p(419,74);p(409,53);p(396,40);p(372,51);p(365,67); p(358,148);p(375,139);p(387,124);p(401,128);p(411,146);p(418,163); p(427,168);p(443,167);p(444,161);p(434,152);p(432,135);p(440,124); p(451,128);p(460,141);p(455,157);p(350,138);p(459,138);p(-30,276); p(539,-283);p(539,276);p(-30,-283);p(427,-41);p(436,-54); draw for i:=0 upto 109: z[i]..endfor z110{up}..z167{curl.7}..z166..z165{curl.7}..z123{down}.. for i:=124 upto 144: z[i]..endfor z145---z146..z147{down}.. for i:=148 upto 164: z[i]..endfor z0; draw for i:=110 upto 116: z[i].. endfor z117; draw for i:=118 upto 122: z[i].. endfor z123{down}; draw for i:=168 upto 182: z[i].. endfor z183; draw for i:=194 upto 210: z[i].. endfor cycle; draw for i:=211 upto 217: z[i].. endfor z218; a:= z226..z197..z198..z199..z200..z201..z202..z203..z227; b:= z226--z227; vshade(b,a,4,unitsquare scaled 1.8); a:= z227..z206..z207..z208..z209..z210..z194.. z195..z196..z226; b:= z227--z226; vshade(b,a,4,unitsquare scaled 1.8); a:= z228--z230; b:= z231--z229; vshade(a,b,4,unitsquare); cutpic=nullpicture; addto cutpic contour(z228+(0,10)--z230+(10,10)--z229--z231--cycle); pickup pencircle scaled 0.7pt addto cutpic contour (for i:=0 upto 109: z[i].. endfor z110{up}..z167{curl.7}..z166..z165{curl.7}..z123{down}.. for i:=124 upto 144: z[i].. endfor z145---z146..z147{down}.. for i:=148 upto 164: z[i].. endfor cycle) withweight -1; addto cutpic doublepath (for i:=0 upto 109: z[i].. endfor z110{up}..z167{curl.7}..z166..z165{curl.7}..z123{down}.. for i:=124 upto 144: z[i].. endfor z145---z146..z147{down}.. for i:=148 upto 164: z[i].. endfor z0) withpen currentpen withweight -1; addto cutpic doublepath z232..z233 withpen currentpen withweight -1; addto cutpic contour (for i:=168 upto 182: z[i].. endfor z183..z146..cycle) withpen currentpen withweight -1; cull cutpic keeping (1,infinity) withweight -3; addto currentpicture also cutpic; pickup pencircle scaled .7pt; draw z184..z185{z186-z184}..z186; draw z186..z187{z184-z186}..z184; draw z188..z189..z190; draw z191..z192..z193; draw z232..z233; endchar; "Masse"; beginchar(253,.5gnd_wd#,0,gnd_ht#+gnd_spc#+gnd_spc#); ground pickup pensquare scaled normalline; draw z0--z1; draw z4--z5; draw z6--z7; draw z8--z9; endchar; "MASSE"; beginchar(254,.5GND_wd#,0,gnd_ht#); ground pickup pensquare scaled normalline; draw z0--z1; pickup pensquare scaled verythickline; draw z10--z11; endchar; "Verbindungspunkt"; beginchar(255,cdt_lt#,.5cdt_ht#,.5cdt_ht#); pickup pencircle scaled cdt_dia; z0=(0,0); drawdot z0; endchar; end;