Minor file tree structure cleanup
This commit is contained in:
@@ -133,7 +133,7 @@ class LoncapaModule(XModule):
|
||||
self.attempts=state['attempts']
|
||||
|
||||
self.filename=node.getAttribute("filename")
|
||||
filename=settings.DATA_DIR+self.filename+".xml"
|
||||
filename=settings.DATA_DIR+"problems/"+self.filename+".xml"
|
||||
self.name=node.getAttribute("name")
|
||||
self.lcp=LoncapaProblem(filename, self.item_id, state)
|
||||
|
||||
@@ -262,6 +262,6 @@ class LoncapaModule(XModule):
|
||||
self.lcp.questions=dict() # Detailed info about questions in problem instance. TODO: Should be by id and not lid.
|
||||
self.lcp.seed=None
|
||||
|
||||
filename=settings.DATA_DIR+self.filename+".xml"
|
||||
filename=settings.DATA_DIR+"problems/"+self.filename+".xml"
|
||||
self.lcp=LoncapaProblem(filename, self.item_id, self.lcp.get_state())
|
||||
return json.dumps(self.get_problem_html(encapsulate=False))
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.9 KiB |
@@ -1,221 +0,0 @@
|
||||
%!PS-Adobe-3.0 EPSF-3.0
|
||||
%%Title: divider
|
||||
%%Creator: XCircuit v3.6 rev135
|
||||
%%CreationDate: Thu Dec 1 09:49:39 2011
|
||||
%%Pages: 1
|
||||
%%BoundingBox: 68 68 202 174
|
||||
%%DocumentNeededResources: font Helvetica Times-Roman
|
||||
%%EndComments
|
||||
%%BeginProlog
|
||||
%
|
||||
% PostScript prolog for output from xcircuit
|
||||
% Version: 3.3
|
||||
%
|
||||
% Electrical circuit (and otherwise general) drawing program
|
||||
%
|
||||
% Written by Tim Edwards 8/5/93--7/13/05 (tim.edwards@multigig.com)
|
||||
% The Johns Hopkins University (1993-2004)
|
||||
% MultiGiG, Inc. (2004-present)
|
||||
%
|
||||
%%BeginResource: procset XCIRCproc 3.3 0
|
||||
%
|
||||
% supporting definitions --- these are the primary xcircuit types.
|
||||
|
||||
/XCIRCsave save def
|
||||
/topmat matrix currentmatrix def
|
||||
|
||||
/fontslant { /slant exch def [1 0 slant 1 0 0]
|
||||
exch findfont exch makefont dup length dict /ndict exch def
|
||||
{ 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall
|
||||
ndict definefont pop} def
|
||||
/ul { dup type /stringtype eq showflag 1 eq and { gsave
|
||||
currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_)
|
||||
false charpath flattenpath pathbbox grestore exch pop 1 index
|
||||
sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0
|
||||
rlineto stroke moveto } if } def
|
||||
/ol { dup type /stringtype eq showflag 1 eq and { gsave gsave
|
||||
currentpoint topmat setmatrix 2 index stringwidth pop 3 index
|
||||
true charpath flattenpath pathbbox grestore exch pop
|
||||
exch pop topmat setmatrix (_) true charpath pathbbox grestore
|
||||
exch pop 1 index sub setlinewidth exch pop currentpoint
|
||||
exch 4 1 roll exch sub add moveto pop 0 rlineto stroke
|
||||
moveto } if } def
|
||||
/stW { gsave currentpoint newpath moveto true charpath flattenpath
|
||||
pathbbox pop exch pop sub grestore } def
|
||||
/Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs
|
||||
0 currentpoint pop put} def
|
||||
/Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def
|
||||
/Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt
|
||||
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
|
||||
/Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt
|
||||
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
|
||||
/qS { (aa) stW (a a) stW sub 4 div 0 Kn } def
|
||||
/hS { qS qS } def
|
||||
/pspc 0 def
|
||||
/cf0 { scalefont setfont } bind def
|
||||
/Kn { dup kY add /kY exch def rmoveto } bind def
|
||||
/ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
|
||||
0.33 mul neg Kn} def
|
||||
/Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
|
||||
0.67 mul Kn } def
|
||||
/ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def
|
||||
/CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto } def
|
||||
/cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq
|
||||
{ 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def}
|
||||
{fscale0 mul fscale mul cf0} ifelse } def
|
||||
/ctmk { counttomark dup 2 add -1 roll pop } bind def
|
||||
/label { gsave translate 0 0 moveto dup scale neg /rotval exch def
|
||||
/just exch def just 384 and 0 gt {/mshow {pop} def} {/mshow {show}
|
||||
def} ifelse just 16 and 0 gt {gsave rotval rotate 0 1 dtransform
|
||||
gsave pagemat setmatrix idtransform exch grestore 1 0 dtransform
|
||||
gsave pagemat setmatrix idtransform exch grestore dup abs 1e-9 lt
|
||||
{pop mul 0 gt} {3 1 roll pop pop 0 lt} ifelse grestore {-1 /rotval
|
||||
rotval neg def /just just dup 3 and 1 ne {3 xor} if def} {1} ifelse
|
||||
exch -1e-9 lt {-1 /rotval rotval neg def /just just dup 12 and
|
||||
4 ne {12 xor} if def} {1} ifelse scale } if /showflag 0 def
|
||||
/fspc pspc def /Bline 0 def /Tabs 0 array def /fscale 1.0 def
|
||||
/kY 0 def gsave dup 1 add copy 0 exch 1 0 dtransform exch atan rotate
|
||||
{exch dup type /stringtype eq {true charpath flattenpath} {dup type
|
||||
/arraytype eq {exec} {12 string cvs true charpath flattenpath} ifelse}
|
||||
ifelse} repeat pop pathbbox grestore 3 -1 roll pop 3 1 roll just
|
||||
1 and 0 gt {just 2 and 0 gt {exch pop neg fspc sub} {exch sub 0.5
|
||||
mul neg} ifelse} {pop neg fspc add} ifelse exch Bline exch just 4
|
||||
and 0 gt {just 8 and 0 gt {exch pop neg fspc sub} {add 0.5 mul neg}
|
||||
ifelse} {pop neg fspc add} ifelse rotval rotate Kn currentpoint
|
||||
translate /showflag 1 def /Bline 0 def /Tabs 0 array def /fscale
|
||||
1.0 def /kY 0 def {dup type /stringtype eq {mshow} {dup type
|
||||
/arraytype eq {exec} {12 string cvs mshow} ifelse} ifelse} repeat
|
||||
grestore } def
|
||||
/pinlabel { 4 index 32 and 0 ne hlevel 0 eq or { /pspc 10 def label
|
||||
/pspc 0 def } { pop pop pop pop pop {pop} repeat } ifelse } def
|
||||
/pinglobal { pinlabel } def
|
||||
/infolabel { pinlabel } def
|
||||
/graphic { gsave 4 index cvx exec /DataSource get resetfile translate
|
||||
0 0 moveto neg rotate dup scale cvx exec image grestore } def
|
||||
|
||||
/scb { setrgbcolor } bind def /sce { defColor aload pop scb } bind def
|
||||
/cRedef {/defColor currentcolor 3 array astore def} def
|
||||
/begingate {dup type /dicttype ne {1 dict} if begin % default params
|
||||
dup type /dicttype ne {1 dict} if begin % instanced params
|
||||
/hlevel hlevel 1 add def /defColor currentcolor sce 3 array
|
||||
astore def gsave sce translate 0 0 moveto neg rotate dup abs scale
|
||||
} bind def
|
||||
/endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef
|
||||
scb end end} bind def
|
||||
|
||||
/hlevel 0 def
|
||||
/tmpa [1 0 0 1 0 0] def
|
||||
/gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind
|
||||
{8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind
|
||||
{8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind
|
||||
{8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind
|
||||
{8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind
|
||||
{8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind
|
||||
{8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def
|
||||
/ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll
|
||||
neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy
|
||||
gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll
|
||||
{ 3 index exch 5 exch put dup -8 3 index { 3 index
|
||||
exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def
|
||||
/setstyles {
|
||||
currentlinewidth mul setlinewidth /style exch def
|
||||
style 1 and 0 gt not {closepath} if
|
||||
style 1024 and 0 gt {2 setlinecap} if
|
||||
style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if
|
||||
style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if
|
||||
gsave style 16 and 0 gt { style 224 and -5 bitshift style 256 and 0 gt {
|
||||
7 exch sub 8 div dup 1 exch sub currentrgbcolor 3 array astore
|
||||
{3 copy mul add 4 1 roll pop} forall pop pop setrgbcolor eofill}
|
||||
{dup 7 lt {gar exch get ppaint} {pop eofill} ifelse} ifelse}
|
||||
{style 256 and 0 gt {1 setgray eofill} if} ifelse grestore style 8 and 0 gt
|
||||
style 512 eq or {newpath} {stroke} ifelse grestore} def
|
||||
|
||||
/polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def
|
||||
/xcarc { gsave newpath arc setstyles } def
|
||||
/elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll
|
||||
3 index div 1 scale } def
|
||||
/ele { 0 4 1 roll 0 4 1 roll } bind def
|
||||
/ellipse { gsave elb newpath ele arc setmatrix setstyles } def
|
||||
/pellip { elb ele arc setmatrix } def
|
||||
/nellip { elb ele arcn setmatrix } def
|
||||
/spline { gsave moveto curveto setstyles } def
|
||||
/polyc { {lineto} repeat } bind def
|
||||
/beginpath { gsave moveto } bind def
|
||||
/endpath { setstyles } bind def
|
||||
/bop { 1 setlinecap 0 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef } def
|
||||
/psinsertion {/PSobj save def /showpage {} def /setpagedevice {pop} def bop
|
||||
rotate translate dup scale} def
|
||||
/end_insert {PSobj restore} def
|
||||
/setpagemat {/pagemat matrix currentmatrix def} def
|
||||
/inchscale {setpagemat 0.375 mul dup scale} def
|
||||
/cmscale {setpagemat 0.35433071 mul dup scale} def
|
||||
|
||||
%%EndResource
|
||||
%%EndProlog
|
||||
|
||||
% XCircuit output starts here.
|
||||
|
||||
%%BeginSetup
|
||||
|
||||
/analog::resistor {
|
||||
begingate
|
||||
1 1.000 0 64 0 36 2 polygon
|
||||
1 1.000 0 -64 0 -36 2 polygon
|
||||
1 1.000 0 -36 14 -30 -14 -18 14 -6 -14 6 14 18 -14 30 0 36 8 polygon
|
||||
1.000 0.000 0.000 scb
|
||||
(r.1) {/Times-Roman cf} 2 9 0 1.000 0 64 pinlabel
|
||||
(r.2) {/Times-Roman cf} 2 13 0 1.000 0 -64 pinlabel
|
||||
0.180 0.545 0.341 scb
|
||||
(spice:R%i %pr.1 %pr.2 1.0K) {/Times-Roman cf} 2 0 0 1.000 -208 -160 infolabel
|
||||
(sim:r %pr.1 %pr.2) {/Times-Roman cf} 2 0 0 1.000 -208 -208 infolabel
|
||||
endgate
|
||||
} def
|
||||
|
||||
/analog::gnd {
|
||||
% trivial
|
||||
begingate
|
||||
1 1.000 0 0 0 -32 2 polygon
|
||||
1 1.000 -32 -32 32 -32 2 polygon
|
||||
1 1.000 -18 -46 18 -46 2 polygon
|
||||
1 1.000 -4 -60 4 -60 2 polygon
|
||||
0.933 0.604 0.000 scb
|
||||
(GND) {/Times-Roman cf} 2 1 0 1.000 0 0 pinglobal
|
||||
endgate
|
||||
} def
|
||||
|
||||
/generic::circle {
|
||||
% trivial
|
||||
begingate
|
||||
1 1.000 16 0 6 0.000 360.000 xcarc
|
||||
1 1.000 0 0 10 0 2 polygon
|
||||
1.000 0.000 0.000 scb
|
||||
(out) {/Times-Roman cf} 2 4 0 1.000 16 0 pinlabel
|
||||
(out) {/Times-Roman cf} 2 7 0 1.000 0 0 pinlabel
|
||||
endgate
|
||||
} def
|
||||
|
||||
|
||||
%%EndSetup
|
||||
|
||||
%%Page: 1 1
|
||||
%%PageOrientation: Portrait
|
||||
/pgsave save def bop
|
||||
1.0000 inchscale
|
||||
2.6000 setlinewidth 864 -132 translate
|
||||
|
||||
1.000 90 -528 528 analog::resistor
|
||||
1.000 0 -448 448 analog::resistor
|
||||
1.000 0 -448 384 analog::gnd
|
||||
1.000 0 -432 528 generic::circle
|
||||
1 1.000 -480 528 -448 528 -448 512 3 polygon
|
||||
1 1.000 -432 528 -448 528 2 polygon
|
||||
-1.000 0 -592 528 generic::circle
|
||||
(in) {ss} (V) {/Helvetica cf} 4 16 0 1.000 -672 512 label
|
||||
(out) {ss} (V) {/Helvetica cf} 4 16 0 1.000 -400 512 label
|
||||
(1) {ss} (R) {/Helvetica cf} 4 16 0 1.000 -560 560 label
|
||||
(2) {ss} (R) {/Helvetica cf} 4 16 0 1.000 -432 432 label
|
||||
pgsave restore showpage
|
||||
|
||||
%%Trailer
|
||||
XCIRCsave restore
|
||||
%%EOF
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 3.2 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.4 KiB |
@@ -1,251 +0,0 @@
|
||||
%!PS-Adobe-3.0 EPSF-3.0
|
||||
%%Title: thevenin
|
||||
%%Creator: XCircuit v3.6 rev135
|
||||
%%CreationDate: Thu Dec 1 09:57:24 2011
|
||||
%%Pages: 1
|
||||
%%BoundingBox: 68 68 241 172
|
||||
%%DocumentNeededResources: font Helvetica Times-Roman
|
||||
%%EndComments
|
||||
%%BeginProlog
|
||||
%
|
||||
% PostScript prolog for output from xcircuit
|
||||
% Version: 3.3
|
||||
%
|
||||
% Electrical circuit (and otherwise general) drawing program
|
||||
%
|
||||
% Written by Tim Edwards 8/5/93--7/13/05 (tim.edwards@multigig.com)
|
||||
% The Johns Hopkins University (1993-2004)
|
||||
% MultiGiG, Inc. (2004-present)
|
||||
%
|
||||
%%BeginResource: procset XCIRCproc 3.3 0
|
||||
%
|
||||
% supporting definitions --- these are the primary xcircuit types.
|
||||
|
||||
/XCIRCsave save def
|
||||
/topmat matrix currentmatrix def
|
||||
|
||||
/fontslant { /slant exch def [1 0 slant 1 0 0]
|
||||
exch findfont exch makefont dup length dict /ndict exch def
|
||||
{ 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall
|
||||
ndict definefont pop} def
|
||||
/ul { dup type /stringtype eq showflag 1 eq and { gsave
|
||||
currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_)
|
||||
false charpath flattenpath pathbbox grestore exch pop 1 index
|
||||
sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0
|
||||
rlineto stroke moveto } if } def
|
||||
/ol { dup type /stringtype eq showflag 1 eq and { gsave gsave
|
||||
currentpoint topmat setmatrix 2 index stringwidth pop 3 index
|
||||
true charpath flattenpath pathbbox grestore exch pop
|
||||
exch pop topmat setmatrix (_) true charpath pathbbox grestore
|
||||
exch pop 1 index sub setlinewidth exch pop currentpoint
|
||||
exch 4 1 roll exch sub add moveto pop 0 rlineto stroke
|
||||
moveto } if } def
|
||||
/stW { gsave currentpoint newpath moveto true charpath flattenpath
|
||||
pathbbox pop exch pop sub grestore } def
|
||||
/Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs
|
||||
0 currentpoint pop put} def
|
||||
/Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def
|
||||
/Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt
|
||||
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
|
||||
/Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt
|
||||
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
|
||||
/qS { (aa) stW (a a) stW sub 4 div 0 Kn } def
|
||||
/hS { qS qS } def
|
||||
/pspc 0 def
|
||||
/cf0 { scalefont setfont } bind def
|
||||
/Kn { dup kY add /kY exch def rmoveto } bind def
|
||||
/ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
|
||||
0.33 mul neg Kn} def
|
||||
/Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
|
||||
0.67 mul Kn } def
|
||||
/ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def
|
||||
/CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto } def
|
||||
/cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq
|
||||
{ 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def}
|
||||
{fscale0 mul fscale mul cf0} ifelse } def
|
||||
/ctmk { counttomark dup 2 add -1 roll pop } bind def
|
||||
/label { gsave translate 0 0 moveto dup scale neg /rotval exch def
|
||||
/just exch def just 384 and 0 gt {/mshow {pop} def} {/mshow {show}
|
||||
def} ifelse just 16 and 0 gt {gsave rotval rotate 0 1 dtransform
|
||||
gsave pagemat setmatrix idtransform exch grestore 1 0 dtransform
|
||||
gsave pagemat setmatrix idtransform exch grestore dup abs 1e-9 lt
|
||||
{pop mul 0 gt} {3 1 roll pop pop 0 lt} ifelse grestore {-1 /rotval
|
||||
rotval neg def /just just dup 3 and 1 ne {3 xor} if def} {1} ifelse
|
||||
exch -1e-9 lt {-1 /rotval rotval neg def /just just dup 12 and
|
||||
4 ne {12 xor} if def} {1} ifelse scale } if /showflag 0 def
|
||||
/fspc pspc def /Bline 0 def /Tabs 0 array def /fscale 1.0 def
|
||||
/kY 0 def gsave dup 1 add copy 0 exch 1 0 dtransform exch atan rotate
|
||||
{exch dup type /stringtype eq {true charpath flattenpath} {dup type
|
||||
/arraytype eq {exec} {12 string cvs true charpath flattenpath} ifelse}
|
||||
ifelse} repeat pop pathbbox grestore 3 -1 roll pop 3 1 roll just
|
||||
1 and 0 gt {just 2 and 0 gt {exch pop neg fspc sub} {exch sub 0.5
|
||||
mul neg} ifelse} {pop neg fspc add} ifelse exch Bline exch just 4
|
||||
and 0 gt {just 8 and 0 gt {exch pop neg fspc sub} {add 0.5 mul neg}
|
||||
ifelse} {pop neg fspc add} ifelse rotval rotate Kn currentpoint
|
||||
translate /showflag 1 def /Bline 0 def /Tabs 0 array def /fscale
|
||||
1.0 def /kY 0 def {dup type /stringtype eq {mshow} {dup type
|
||||
/arraytype eq {exec} {12 string cvs mshow} ifelse} ifelse} repeat
|
||||
grestore } def
|
||||
/pinlabel { 4 index 32 and 0 ne hlevel 0 eq or { /pspc 10 def label
|
||||
/pspc 0 def } { pop pop pop pop pop {pop} repeat } ifelse } def
|
||||
/pinglobal { pinlabel } def
|
||||
/infolabel { pinlabel } def
|
||||
/graphic { gsave 4 index cvx exec /DataSource get resetfile translate
|
||||
0 0 moveto neg rotate dup scale cvx exec image grestore } def
|
||||
|
||||
/scb { setrgbcolor } bind def /sce { defColor aload pop scb } bind def
|
||||
/cRedef {/defColor currentcolor 3 array astore def} def
|
||||
/begingate {dup type /dicttype ne {1 dict} if begin % default params
|
||||
dup type /dicttype ne {1 dict} if begin % instanced params
|
||||
/hlevel hlevel 1 add def /defColor currentcolor sce 3 array
|
||||
astore def gsave sce translate 0 0 moveto neg rotate dup abs scale
|
||||
} bind def
|
||||
/endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef
|
||||
scb end end} bind def
|
||||
|
||||
/hlevel 0 def
|
||||
/tmpa [1 0 0 1 0 0] def
|
||||
/gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind
|
||||
{8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind
|
||||
{8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind
|
||||
{8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind
|
||||
{8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind
|
||||
{8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind
|
||||
{8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def
|
||||
/ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll
|
||||
neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy
|
||||
gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll
|
||||
{ 3 index exch 5 exch put dup -8 3 index { 3 index
|
||||
exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def
|
||||
/setstyles {
|
||||
currentlinewidth mul setlinewidth /style exch def
|
||||
style 1 and 0 gt not {closepath} if
|
||||
style 1024 and 0 gt {2 setlinecap} if
|
||||
style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if
|
||||
style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if
|
||||
gsave style 16 and 0 gt { style 224 and -5 bitshift style 256 and 0 gt {
|
||||
7 exch sub 8 div dup 1 exch sub currentrgbcolor 3 array astore
|
||||
{3 copy mul add 4 1 roll pop} forall pop pop setrgbcolor eofill}
|
||||
{dup 7 lt {gar exch get ppaint} {pop eofill} ifelse} ifelse}
|
||||
{style 256 and 0 gt {1 setgray eofill} if} ifelse grestore style 8 and 0 gt
|
||||
style 512 eq or {newpath} {stroke} ifelse grestore} def
|
||||
|
||||
/polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def
|
||||
/xcarc { gsave newpath arc setstyles } def
|
||||
/elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll
|
||||
3 index div 1 scale } def
|
||||
/ele { 0 4 1 roll 0 4 1 roll } bind def
|
||||
/ellipse { gsave elb newpath ele arc setmatrix setstyles } def
|
||||
/pellip { elb ele arc setmatrix } def
|
||||
/nellip { elb ele arcn setmatrix } def
|
||||
/spline { gsave moveto curveto setstyles } def
|
||||
/polyc { {lineto} repeat } bind def
|
||||
/beginpath { gsave moveto } bind def
|
||||
/endpath { setstyles } bind def
|
||||
/bop { 1 setlinecap 0 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef } def
|
||||
/psinsertion {/PSobj save def /showpage {} def /setpagedevice {pop} def bop
|
||||
rotate translate dup scale} def
|
||||
/end_insert {PSobj restore} def
|
||||
/setpagemat {/pagemat matrix currentmatrix def} def
|
||||
/inchscale {setpagemat 0.375 mul dup scale} def
|
||||
/cmscale {setpagemat 0.35433071 mul dup scale} def
|
||||
|
||||
%%EndResource
|
||||
%%EndProlog
|
||||
|
||||
% XCircuit output starts here.
|
||||
|
||||
%%BeginSetup
|
||||
|
||||
/analog::resistor {
|
||||
begingate
|
||||
1 1.000 0 64 0 36 2 polygon
|
||||
1 1.000 0 -64 0 -36 2 polygon
|
||||
1 1.000 0 -36 14 -30 -14 -18 14 -6 -14 6 14 18 -14 30 0 36 8 polygon
|
||||
1.000 0.000 0.000 scb
|
||||
(r.1) {/Times-Roman cf} 2 9 0 1.000 0 64 pinlabel
|
||||
(r.2) {/Times-Roman cf} 2 13 0 1.000 0 -64 pinlabel
|
||||
0.180 0.545 0.341 scb
|
||||
(spice:R%i %pr.1 %pr.2 1.0K) {/Times-Roman cf} 2 0 0 1.000 -208 -160 infolabel
|
||||
(sim:r %pr.1 %pr.2) {/Times-Roman cf} 2 0 0 1.000 -208 -208 infolabel
|
||||
endgate
|
||||
} def
|
||||
|
||||
/analog::source {
|
||||
% hidden
|
||||
begingate
|
||||
1 1.000 0 0 32 0.000 360.000 xcarc
|
||||
1 1.000 0 32 0 64 2 polygon
|
||||
1 1.000 0 -32 0 -64 2 polygon
|
||||
endgate
|
||||
} def
|
||||
|
||||
/generic::arrowhead {
|
||||
% nonetwork
|
||||
begingate
|
||||
8 -28 beginpath
|
||||
3 -18 3 -15 0 0 curveto
|
||||
-3 -15 -3 -18 -8 -28 curveto
|
||||
-2 -26 2 -26 8 -28 curveto
|
||||
249
|
||||
1.000 endpath
|
||||
endgate
|
||||
} def
|
||||
|
||||
/analog::isource {
|
||||
begingate
|
||||
1.000 0 0 0 analog::source
|
||||
1 0.750 0 20 0 -8 2 polygon
|
||||
0.800 180 0 -20 generic::arrowhead
|
||||
1.000 0.000 0.000 scb
|
||||
(i.p) {/Times-Roman cf} 2 9 0 1.000 0 64 pinlabel
|
||||
(i.m) {/Times-Roman cf} 2 13 0 1.000 0 -64 pinlabel
|
||||
endgate
|
||||
} def
|
||||
|
||||
/generic::circle {
|
||||
% trivial
|
||||
begingate
|
||||
1 1.000 16 0 6 0.000 360.000 xcarc
|
||||
1 1.000 0 0 10 0 2 polygon
|
||||
1.000 0.000 0.000 scb
|
||||
(out) {/Times-Roman cf} 2 4 0 1.000 16 0 pinlabel
|
||||
(out) {/Times-Roman cf} 2 7 0 1.000 0 0 pinlabel
|
||||
endgate
|
||||
} def
|
||||
|
||||
|
||||
%%EndSetup
|
||||
|
||||
%%Page: 1 1
|
||||
%%PageOrientation: Portrait
|
||||
/pgsave save def bop
|
||||
1.0000 inchscale
|
||||
2.6000 setlinewidth 896 -218 translate
|
||||
|
||||
1.000 90 -416 608 analog::resistor
|
||||
1.000 0 -640 512 analog::isource
|
||||
1.000 180 -512 512 analog::resistor
|
||||
1.000 180 -320 512 analog::resistor
|
||||
1 1.000 -640 448 -640 416 2 polygon
|
||||
1 1.000 -512 448 -512 416 2 polygon
|
||||
1 1.000 -320 448 -320 416 2 polygon
|
||||
1 1.000 -320 416 -640 416 2 polygon
|
||||
1 1.000 -640 576 -640 608 2 polygon
|
||||
1 1.000 -512 576 -512 608 2 polygon
|
||||
1 1.000 -320 576 -320 608 2 polygon
|
||||
1 1.000 -320 608 -352 608 2 polygon
|
||||
1 1.000 -480 608 -640 608 2 polygon
|
||||
1.000 0 -288 608 generic::circle
|
||||
1 1.000 -288 608 -320 608 2 polygon
|
||||
1.000 0 -288 416 generic::circle
|
||||
1 1.000 -288 416 -320 416 2 polygon
|
||||
(1) {ss} (R) {/Helvetica cf} 4 16 0 1.000 -432 640 label
|
||||
(2) {ss} (R) {/Helvetica cf} 4 16 0 1.000 -496 512 label
|
||||
(3) {ss} (R) {/Helvetica cf} 4 16 0 1.000 -304 512 label
|
||||
(I) {/Helvetica cf} 2 16 0 1.000 -704 512 label
|
||||
pgsave restore showpage
|
||||
|
||||
%%Trailer
|
||||
XCIRCsave restore
|
||||
%%EOF
|
||||
Reference in New Issue
Block a user