summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/dvips
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-06-19 20:53:01 +0000
committerKarl Berry <karl@freefriends.org>2010-06-19 20:53:01 +0000
commit09e4efe52bc2ae36e52a5cc724348286b16292a4 (patch)
tree7c05fee9e1433ecabc1b2513ac7f6fb1fd723766 /Master/texmf-dist/dvips
parent74339c21832b19310af2bddb8bc14930e8e50547 (diff)
empty dir
git-svn-id: svn://tug.org/texlive/trunk@19062 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/dvips')
-rwxr-xr-xMaster/texmf-dist/dvips/pst-electricfield/pst-electricfield.pro243
1 files changed, 0 insertions, 243 deletions
diff --git a/Master/texmf-dist/dvips/pst-electricfield/pst-electricfield.pro b/Master/texmf-dist/dvips/pst-electricfield/pst-electricfield.pro
deleted file mode 100755
index 8a73b36e96e..00000000000
--- a/Master/texmf-dist/dvips/pst-electricfield/pst-electricfield.pro
+++ /dev/null
@@ -1,243 +0,0 @@
-%% $Id: pst-3dplot.pro 236 2009-12-31 08:59:43Z herbert $
-%%
-%% This is file `pst-electricfield.pro',
-%%
-%% IMPORTANT NOTICE:
-%%
-%% Package `pst-electricfield.tex'
-%% Jürgen Gilg
-%% Manuel Luque
-%% Patrice Megrét
-%% Herbert Voss
-%%
-%% This program can be redistributed and/or modified under the terms
-%% of the LaTeX Project Public License Distributed from CTAN archives
-%% in directory macros/latex/base/lppl.txt.
-%%
-%% DESCRIPTION:
-%% `pst-electricfield' is a PSTricks package to draw fields of charges
-%%
-%% version 0.04 / 2010-06-08 Herbert Voss <hvoss _at_ tug.org>
-%%
-%
-/tx@EFieldDict 60 dict def
-tx@EFieldDict begin
-%
-% helper functions
-/getX { xCoor exch get } def
-/getY { yCoor exch get } def
-/getQ { Qcharges exch get } def
-% /getR { Radius exch get } def
-%
-/setValues {
- /xCoor [
- 0 1 NoQ {
- /i exch def
- /qi QXYN i get def
- qi 1 get} for
- ] def
- /yCoor [
- 0 1 NoQ {
- /i exch def
- /qi QXYN i get def
- qi 2 get} for
- ] def
-} def
-/Radius {xP i getX sub yP i getY sub Pyth} def
-%
-/fleche {
- gsave
- x2 y2 moveto
- y2 y1 sub x2 x1 sub atan rotate % 1 1 scale
- -1 CLW mul 2 CLW mul rlineto
- 7 CLW mul -2 CLW mul rlineto
- -7 CLW mul -2 CLW mul rlineto
- closepath
- fill
- grestore
-} def
-%
-%% syntaxe : any isbool --> booleen
-/isbool { type (booleantype) cvn eq } def
-%% syntaxe : any isinteger --> booleen
-/isinteger { type (integertype) cvn eq } def
-%
-/drawChargeCircle { % qi x y r on the stack
- 0 360 arc
- gsave
- 0 ge {1}{0} ifelse setgray fill
- grestore
- 0 setgray stroke
-} def
-%
-/Electricfield {
- % extraction des donnees = qi, xi, yi, Ni, plotCharge
- /NoQ QXYN length 1 sub def % nombre de charges -1
- /NL [ % les lignes
- 0 1 NoQ {
- /i exch def
- /qi QXYN i get def
- qi length 3 eq
- { /nL N def }
- { qi 3 get dup isinteger
- { /nL ED }
- { pop /nL N def } ifelse } ifelse
- nL } for
- ] def
- /plotCharge [ % les lignes
- 0 1 NoQ {
- /i exch def
- /qi QXYN i get def
- qi length 3 eq
- { /pC true def }
- { qi length 4 eq
- { qi 3 get dup isbool
- { /pC ED }
- { pop /pC true def } ifelse }
- { qi 4 get /pC ED } ifelse } ifelse
- pC } for
- ] def
- /Qcharges [ % les charges
- 0 1 NoQ {
- /i exch def
- /qi QXYN i get def
- qi 0 get} for
- ] def
- setValues
- 0 0 moveto
- /Lignes [ % on stroke dans un tableau toutes lignes
- 0 1 NoQ {
- /iQ ED % on considere chacune des charges
- /dAngle 360 NL iQ get 1 sub div def
- /pasX iQ getQ 0 ge {Pas} {Pas neg} ifelse def
- /xStart iQ getX def
- /yStart iQ getY def
- [
- 0 dAngle 360 dAngle sub {
- /iA ED % on en fait le tour
- /xP xStart pasX iA cos mul add def
- /yP yStart pasX iA sin mul add def
- [ NbrePoints { % nombre de points
- 0 0
- 0 1 NoQ {
- /i ED
- i getQ xP i getX sub mul Radius 3 exp Div add exch
- i getQ yP i getY sub mul Radius 3 exp Div add exch
- } for
- /Ex ED
- /Ey ED
- /NormeE Ex Ey Pyth def
- /dX Ex NormeE div pasX mul def
- /dY Ey NormeE div pasX mul def
- /xP xP dX add def /yP yP dY add def
- [ xP xUnit mul yP yUnit mul ]
- } repeat
- ]
- } for
- ]
- } for
- ] def
-% on lit les tableaux et on dessine les lignes
- 0 1 Lignes length 1 sub {
- /iQ ED % chaque charge
- /qi iQ getQ def
- /Lignes_Champ Lignes iQ get def
- 0 1 Lignes_Champ length 1 sub {
- /iLi ED
- /Ligne_Champ Lignes_Champ iLi get def % une ligne
- Ligne_Champ 0 get aload pop moveto % xP yP
- 1 1 Ligne_Champ length 1 sub {
- /iCompteur exch def
- Ligne_Champ iCompteur get aload pop lineto
- } for
- stroke
- % les fleches
- Ligne_Champ dup length 1 sub posArrow mul cvi get aload pop
- /y1 ED
- /x1 ED
- Ligne_Champ dup length 1 sub posArrow mul cvi 1 add get aload pop
- /y2 ED
- /x2 ED
- /X1 x2 def
- /X2 x1 def
- /Y1 y2 def
- /Y2 y1 def
- qi 0 le { /x1 X1 def /x2 X2 def /y1 Y1 def /y2 Y2 def} if
- fleche
- } for
- } for
- 0 1 NoQ {
- /i exch def
- Qcharges i get dup /qi ED
- xCoor i get xUnit mul
- yCoor i get yUnit mul % now on stack: qi x y
- plotCharge i get % relative or absolute radii?
- { ChargeRadius qi abs mul drawChargeCircle }
- { ChargeRadius 0 gt
- { ChargeRadius drawChargeCircle }
- { pop pop pop } ifelse } ifelse
- } for
-} def % Electricfield
-%
-%
-/Equipotential {
-% extraction des donnees = qi, xi, yi,
- /NoQ QXYN length 1 sub def % nombre de charges -1
- /Qcharges [ % les charges
- 0 1 NoQ {
- /i exch def
- /qi QXYN i get def
- qi 0 get} for
- ] def
- setValues
- /Func {
- 0
- 0 1 NoQ {/i exch def
- /qi QXYN i get def
- qi 0 get
- Radius div add } for
- 9 mul % V en volts q en nC
- V sub
- } def
- % code extrait de pst-func
- /xPixel xMax xMin sub xUnit mul round cvi def
- /yPixel yMax yMin sub yUnit mul round cvi def
- /dx xMax xMin sub xPixel div def
- /dy yMax yMin sub yPixel div def
- /setpixel {
- dy div exch
- dx div exch
- LW 2 div 0 360 arc fill
- } bind def
-%
- Vmin StepV Vmax {
- /V ED
- /VZ true def % suppose that F(x,y)>=0
- /xP xMin def
- /yP yMin def
- Func 0.0 lt { /VZ false def } if % first value
- xMin dx StepFactor mul xMax {
- /xP exch def
- yMin dy StepFactor mul yMax {
- /yP exch def
- Func 0 lt
- { VZ { xP yP setpixel /VZ false def} if }
- { VZ {}{ xP yP setpixel /VZ true def } ifelse } ifelse
- } for
- } for
-%
- /xP xMin def /y yMin def Func 0.0 lt { /VZ false def } if % erster Wert
- yMin dy StepFactor mul yMax {
- /yP exch def
- xMin dx StepFactor mul xMax {
- /xP exch def
- Func 0 lt
- { VZ { xP yP setpixel /VZ false def} if }
- { VZ {}{ xP yP setpixel /VZ true def } ifelse } ifelse
- } for
- } for
- } for
-} def % Equipotential
-%
-end % tx@EFieldDict
-% \ No newline at end of file