Présentation de equ2_012b.jps

/syracuse/texpng/jpv/database/btsmai/analyse/equadiff/equ2_012b.jpg
%% code jps desormais obsolete (23/09/2003) -1.5 6 setxrange -3 5 setyrange %% le systeme /L1 .7 def /l1 4 def /L2 8 def /l2 .5 def /L3 1 def /l3 .7 def /L4 3 def /l4 .7 def /dt .1 def %% ======== /A2 {0 2} def /A1 {l2 2 div l1 2 div add 0} def /A3 {A1 1.2 mulvecteur 0 L1 2 div L3 2 div add dt add addvecteur} def /A4 {l1 l4 2 div add l2 2 div add 0} def /A5 {l1 l2 2 div add L4 2 div .8 mul} def /P {A3 l3 2 div 0 addvecteur projx} def %% bidiouille pour la cote L0 /C {A3 projx .7 mulvecteur l3 2 div neg 0 addvecteur} def %% les indications /M2 {A3 l3 -2 div 0 addvecteur projx 0 L3 L1 2 div add neg addvecteur} def /M1 {M2 -.7 -.7 addvecteur} def /N2 {M2 A4'' A4'' projx orthoproj} def /N1 {N2 -.7 -.7 addvecteur} def %% le ressort /A {l2 2 div 0} def /B {A3 projx l3 -2 div 0 addvecteur} def %% les cotes /B'' {C 0 2 addvecteur} def /B' {B'' projy} def /P'' {P 0 3 addvecteur} def /P' {P'' projy} def /A4'' {A4 0 4 addvecteur} def /A4' {A4'' projy} def %% syntaxe : A bar --> dessine une barre verticale en A /bar { gsave stranslate verythin setlinewidth newpath 0 0 smoveto 0 5 rmoveto 0 -10 rlineto stroke grestore } def %% syntaxe : A Lx Ly rect@ngle /rect@ngle { 2 dict begin /Ly exch 2 div def /Lx exch 2 div def stranslate newpath Lx Ly smoveto 0 Ly -2 mul srlineto Lx -2 mul 0 srlineto 0 Ly 2 mul srlineto closepath end } def %% syntaxe : A Lx Ly rectangle /rectangle { 2 dict begin gsave rect@ngle stroke grestore end } def %% syntaxe : A Lx Ly rectangle* /rectangle* { 4 copy rectangle 2 dict begin gsave rect@ngle clip fillstyle grestore end } def %% ============== /fillstyle {verythin setlinewidth hachure} def %% .2 .2 setquadrillagestep %% quadrillage %% %% gsave %% 1 dict begin %% 1 1 setquadrillagestep %% /quadrillagegray 0 def %% currentlinewidth 2 mul setlinewidth %% quadrillage %% end %% grestore %% %% marks %% [A1 A2 A3 A'3 A4 A5 A B] points gsave mixte traceaxes [0 .7 B projx pop .7] ligne [0 -.7 B projx pop -.7] ligne grestore thin setlinewidth A3 projx l3 L3 2 mul L1 add rectangle* A B .7 5 (O) ressort .7 ytick P times3 B' B'' (<->) line P' P'' (<->) line A4' A4'' (<->) line M1 M2 (->) line N1 N2 (->) line setTimesItalic (O) O dltext (P) P urtext (A) A4 urtext setTimes (Butée) N1 dltext (Masse ) M1 dltext setTimesItalic (M) show %% %% pour la mise au point %% gsave %% bleu %% (A1) A1 drtext %% (A2) A2 drtext %% (A3) A3 drtext %% (A5) A5 drtext %% (A4) A4 drtext %% (A4') A4' drtext %% (A4'') A4'' drtext %% (P) P urtext %% (P') P' urtext %% (P'') P'' urtext %% (B) B urtext %% (B') B' urtext %% (B'') B'' urtext %% (N1) N1 urtext %% (N2) N2 urtext %% (M1) M1 urtext %% (M2) M2 urtext %% [A1 A2 A3 A5 A4 A4' A4'' P P' P'' B B' B'' N1 N2 M1 M2] points %% grestore B'' bar P'' bar gsave verythin setcourbelinewidth [A4'' 0 .2 addvecteur A4'' projx pop -2] ligne grestore /ell { A2 0 2.5 translatepoint l2 .25 } def -225 45 ell Ellipse gsave 50 [ell 0] epoint stranslate .4 .4 scale [ell 0] ellb 2 sqrt mul [ell 0] ella neg 2 sqrt mul atan 10 sub rotate arrow grestore