Hello community,
here is the log from the commit of package texlive-specs-s for openSUSE:Factory checked in at 2015-04-25 09:49:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/texlive-specs-s (Old)
and /work/SRC/openSUSE:Factory/.texlive-specs-s.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "texlive-specs-s"
Changes:
--------
--- /work/SRC/openSUSE:Factory/texlive-specs-s/texlive-specs-s.changes 2015-02-24 13:05:07.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.texlive-specs-s.new/texlive-specs-s.changes 2015-04-25 09:50:47.000000000 +0200
@@ -1,0 +2,72 @@
+Wed Apr 15 13:43:57 UTC 2015 - werner@suse.de
+
+- Handle unkown scripts
+
+-------------------------------------------------------------------
+Tue Apr 14 13:53:08 UTC 2015 - werner@suse.de
+
+- Make sure that tabs are used within <<-EOF...EOF pair
+
+-------------------------------------------------------------------
+Thu Apr 2 12:25:21 UTC 2015 - werner@suse.de
+
+- Package pas-cours: move runfiles from doc to working directory
+
+-------------------------------------------------------------------
+Thu Apr 2 10:33:38 UTC 2015 - werner@suse.de
+
+- Handle rpmlintrc for each meta spec file its self
+
+-------------------------------------------------------------------
+Wed Apr 1 16:47:12 UTC 2015 - werner@suse.de
+
+- The new TeXLive package layout had suppressed the detection of many
+ Provides which is fixed now.
+- The null.tex is now in texlive-knuth-lib, therefore require
+ tex(null.tex) in luatex.requires and tex.requires instead of the
+ gone texlive-misc.
+
+-------------------------------------------------------------------
+Wed Apr 1 07:47:29 UTC 2015 - werner@suse.de
+
+- Add exceltex.requires which now Requires perl(Spreadsheet::ParseExcel)
+ (boo#891617)
+- Patch kpathsea_cnf.dif moved from texlive-specs-m to texlive-specs-l
+
+-------------------------------------------------------------------
+Mon Mar 30 08:39:12 UTC 2015 - werner@suse.de
+
+- Add patch dvips_config.dif (boo#897284)
+- Remove patch pgf_plain.dif as now upstream
+- Remove patch latexdiff_env.dif as the affected file is gone
+- Modified patches
+ luaotfload_varfonts.dif
+ tetex_scripts.dif
+ tex4ht_env.dif
+- Removed files pst-node.moves and pst-plot.moves as now the files
+ are at the correct location
+
+-------------------------------------------------------------------
+Thu Mar 26 14:05:48 UTC 2015 - werner@suse.de
+
+- Update to TeXLive 2014 (timestamp 20140525 revision 34252)
+ * Support DVIPDFMx
+ * [fix] avoid luatex crash under math_mode 'decimal'
+ * luaotfload: Fix incorrect handling of font file formats luaotfload)
+ * Sync with Context beta as of 2014-04-05
+ * pdfTeX: sync with Knuth TeX 3.14159265, e-TeX 2.6
+ * Many more ...
+
+-------------------------------------------------------------------
+Fri Feb 27 12:33:49 UTC 2015 - coolo@suse.com
+
+- patch -p1 from within texmf-dist to avoid patching through symlinks
+ to please new patch
+
+-------------------------------------------------------------------
+Thu Feb 26 13:30:39 UTC 2015 - coolo@suse.com
+
+- avoid bootstrap problems by ignoring built packages for packages
+ required by texlive
+
+-------------------------------------------------------------------
Old:
----
randbild.doc.tar.xz
randbild.tar.xz
randomwalk.doc.tar.xz
randomwalk.tar.xz
randtext.doc.tar.xz
randtext.tar.xz
New:
----
pst-diffraction.doc.tar.xz
pst-diffraction.tar.xz
pst-electricfield.doc.tar.xz
pst-electricfield.tar.xz
pst-eps.doc.tar.xz
pst-eps.tar.xz
pst-eucl.doc.tar.xz
pst-eucl.tar.xz
pst-intersect.doc.tar.xz
pst-intersect.tar.xz
pst-ovl.doc.tar.xz
pst-ovl.tar.xz
pst-perspective.doc.tar.xz
pst-perspective.tar.xz
pythontex.doc.tar.xz
pythontex.tar.xz
texlive-specs-s-rpmlintrc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ texlive-specs-s.spec ++++++
++++ 7435 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/texlive-specs-s/texlive-specs-s.spec
++++ and /work/SRC/openSUSE:Factory/.texlive-specs-s.new/texlive-specs-s.spec
++++++ pst-func.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-func/Changes new/doc/generic/pst-func/Changes
--- old/doc/generic/pst-func/Changes 2012-01-19 23:47:29.000000000 +0100
+++ new/doc/generic/pst-func/Changes 2014-05-21 00:00:54.000000000 +0200
@@ -1,4 +1,10 @@
..... pst-func.tex
+0.80 2014-05-19 - added \psZero for calculating and printing
+ the zeros of a function or the intermediate
+ point of two functions.
+0.79 2014-03-21 - allow option algebraic for \psVolume
+0.78 2014-02-03 - added \psWeierstrass as original defined
+0.77 2014-02-01 - added \psWeierstrass
0.76 2012-01-13 - modifications to \psImpPlot
0.75 2012-01-01 - moved \psPrintValue into pst-tools
0.74 2011-11-02 - make \psLorenz work in a correct way
@@ -86,9 +92,12 @@
..... pst-func.sty
2004-10-18 first version
2006-04-22 add pst-func.pro to the filelist
+ 2013-06-03 correct file version for pst-func.pro
..... pst-func.pro
+0.15 2013-06-10 - fix bug with wrong arrow in psBezier#
+0.14 2013-06-03 - fix bug with arrow in psBezier#
0.13 2010-06-21 - run FindZeros in a local dictionary
- return [zeros] on stack
0.12 2010-01-04 rename Points to BezierPoints to prevent clash with
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-func/README new/doc/generic/pst-func/README
--- old/doc/generic/pst-func/README 2010-02-14 01:10:12.000000000 +0100
+++ new/doc/generic/pst-func/README 2014-03-21 23:58:06.000000000 +0100
@@ -22,6 +22,7 @@
-- psWeibull for Weibull distribution
-- psLame (Lam\`e\ Curve -- a superellipse)
-- psThomae (popcorn function)
+-- psWeierstrass (original and modified)
-- psplotImp (plotting implicit defined functions)
-- psVolume (rotating f(x) around the x-axis)
-- psPrintValue
@@ -42,4 +43,4 @@
PSTricks is PostScript Tricks, the documentation cannot be run
with pdftex, use the sequence latex->dvips->ps2pdf.
-%% $Id: README 286 2010-02-11 09:40:41Z herbert $
+%% $Id: README 897 2014-03-21 08:06:41Z herbert $
Files old/doc/generic/pst-func/pst-func-doc.pdf and new/doc/generic/pst-func/pst-func-doc.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-func/pst-func-doc.tex new/doc/generic/pst-func/pst-func-doc.tex
--- old/doc/generic/pst-func/pst-func-doc.tex 2013-04-19 01:07:03.000000000 +0200
+++ new/doc/generic/pst-func/pst-func-doc.tex 2014-05-21 00:00:54.000000000 +0200
@@ -1,4 +1,4 @@
-%% $Id: pst-func-doc.tex 769 2013-04-18 08:53:32Z herbert $
+%% $Id: pst-func-doc.tex 918 2014-05-19 12:32:37Z herbert $
\documentclass[11pt,english,BCOR10mm,DIV12,bibliography=totoc,parskip=false,
smallheadings, headexclude,footexclude,oneside]{pst-doc}
\usepackage[utf8]{inputenc}
@@ -66,6 +66,7 @@
Patrice Mégret,
Svend Mortensen,
Matthias Rüss,
+ Thomas Söll,
Jose-Emilio Vila-Forcen,
Timothy Van Zandt,
Michael Zedler,
@@ -496,6 +497,7 @@
\end{pspicture*}
\end{LTXexample}
+
\clearpage
\subsection{\Lcs{psBernstein}}
The polynomials defined by
@@ -586,6 +588,112 @@
\end{pspicture*}
\end{LTXexample}
+
+\clearpage
+\subsection{Calculating the zeros of a function or the the intermediate point of two function}
+
+\begin{BDef}
+\Lcs{psZero}\OptArgs\Largr{$x_0,x_1$}\Largb{functionA}\OptArg{functionB}\Largb{node name}
+\end{BDef}
+
+If the second function is not given the macro calculates and displays the zeros of
+the first function. If the second function is defined too, then the macro calculates the
+intermediate point of the two functions. The intervall is defined as $[x_0,x_1]$.
+Possible optional arguments are
+
+
+\medskip
+\begin{tabularx}{\linewidth}{ @{} l >{\ttfamily}l X @{} }\toprule
+\emph{Name} & \emph{Default} & \emph{Meaning} \\\midrule
+\Lkeyword{markZeros} & false & Mark the zeros/intermediate points with a symbol.\\
+\Lkeyword{Newton} & false & Use Newton method instead of the bisector one.\\
+\Lkeyword{PrintCoord} & false & Print the pair of coordinate of the zero/intermediate point.\\
+\Lkeyword{onlyNode} & false & Calculate only the node, do not print anything.\\
+\Lkeyword{onlyYVal} & false & Print only the value.\\
+\Lkeyword{originV} & false & Put the values without an offset.\\
+\Lkeyword{PointName} & I & The printed prefix for the calculated Points.\\
+\Lkeyword{decimals} & 2 & The decimals for the $x$ value.\\
+\Lkeyword{ydecimals} & 2 & The decimals for the $y$ value.\\
+\Lkeyword{xShift} & 0 & $x$ move for the printed value.\\
+\Lkeyword{yShift} & 0 & $y$ move for the printed value.\\\bottomrule
+\end{tabularx}
+
+\medskip
+The following example was done by Thomas Söll.
+
+\bigskip
+\definecolor{BeigeTS}{rgb}{0.98,0.95,0.87}
+\definecolor{CornBlauTS}{rgb}{0.39,0.59,0.93}
+\definecolor{SandBraun}{rgb}{0.96,0.64,0.38}
+\psset{yunit=1.25cm,arrowinset=0.02,arrowlength=2,linewidth=0.5pt,saveNodeCoors,NodeCoorPrefix=n}
+\def\funkf{2*sqrt(x)*cos(ln(x))*sin(x)}
+\begin{pspicture}[plotpoints=500,algebraic,fontscale=5,markZeros,PrintCoord,
+ PointName=N,dotscale=0.7](-0.5,-3)(10,2.5)
+\psStep[fillstyle=solid,fillcolor=BeigeTS,opacity=0.7,linewidth=0.3pt,
+ linecolor=SandBraun!50](0.001,9.5){40}{\funkf}
+\psStep[StepType=Riemann,fillstyle=solid,opacity=0.3,fillcolor=CornBlauTS,
+ linecolor=CornBlauTS,linewidth=0.3pt](0.001,9.5){40}{\funkf}
+\psaxes[labelFontSize=\scriptstyle,ticksize=-0.1 0]{->}(0,0)(0,-2.75)(10,2.5)
+\psplot[linecolor=BeigeTS!60,linewidth=0.8pt]{0.001}{9.75}{\funkf}
+\psplotTangent[linecolor=blue,Derive={Derive(1,\funkf)}]{1.29}{1.5}{\funkf}
+\uput[90](6,1.2){$f(x)=2\cdot\sqrt{x}\cdot\cos{(\ln{x})}\cdot\sin{x}$}
+{\psset{dotscale=1.5,linecolor=blue!50!black!90,ydecimals=0}
+ \psZero[xShift=-0.2,yShift=0.15,postString=1,Newton](0.5,1){\funkf}{N1}
+ \psZero[xShift=-0.05,yShift=0.15,postString=2](2,4){\funkf}{N2}
+ \psZero[xShift=-0.45,yShift=0.15,postString=3](4,6){\funkf}{N3}
+ \psZero[xShift=-0.45,yShift=0.15,postString=4](6,7){\funkf}{N4}
+ \psZero[xShift=-0.45,yShift=0.15,postString=5](9,11){\funkf}{N5}
+ \psZero[xShift=-1.15,yShift=0,PointName=M,
+ postString={m=1}](0.5,2){Derive(1,\funkf)-1+\funkf}[\funkf]{M}%
+}
+\pcline{->}(0.5,-1)(M)
+\nbput[nrot=:U,labelsep=0.01]{%
+ \scriptsize Steigung ist hier
+ \psPrintValueNew[PSfont=Palatino-Roman,decimals=0,round,fontscale=7]{nMx,{Derive(1,\funkf)}}}
+\psdot[linecolor=green,strokeopacity=0.8](*{nMx} {\funkf})
+\uput[90](*{nMx} {\funkf}){$m=$
+ \psPrintValueNew[PSfont=Palatino-Roman,decimals=0,round,fontscale=8]{nMx,{Derive(1,\funkf)}}}
+\end{pspicture}
+
+
+%\begin{LTXexample}[pos=t]
+\begin{lstlisting}
+\definecolor{BeigeTS}{rgb}{0.98,0.95,0.87}
+\definecolor{CornBlauTS}{rgb}{0.39,0.59,0.93}
+\definecolor{SandBraun}{rgb}{0.96,0.64,0.38}
+\psset{yunit=1.25cm,arrowinset=0.02,arrowlength=2,linewidth=0.5pt,saveNodeCoors,NodeCoorPrefix=n}
+\def\funkf{2*sqrt(x)*cos(ln(x))*sin(x)}
+\begin{pspicture}[plotpoints=500,algebraic,fontscale=5,markZeros,PrintCoord,
+ PointName=N,dotscale=0.7](-0.5,-3)(10,2.5)
+\psStep[fillstyle=solid,fillcolor=BeigeTS,opacity=0.7,linewidth=0.3pt,
+ linecolor=SandBraun!50](0.001,9.5){40}{\funkf}
+\psStep[StepType=Riemann,fillstyle=solid,opacity=0.3,fillcolor=CornBlauTS,
+ linecolor=CornBlauTS,linewidth=0.3pt](0.001,9.5){40}{\funkf}
+\psaxes[labelFontSize=\scriptstyle,ticksize=-0.1 0]{->}(0,0)(0,-2.75)(10,2.5)
+\psplot[linecolor=BeigeTS!60,linewidth=0.8pt]{0.001}{9.75}{\funkf}
+\psplotTangent[linecolor=blue,Derive={Derive(1,\funkf)}]{1.29}{1.5}{\funkf}
+\uput[90](6,1.2){$f(x)=2\cdot\sqrt{x}\cdot\cos{(\ln{x})}\cdot\sin{x}$}
+{\psset{dotscale=1.5,linecolor=blue!50!black!90,ydecimals=0}
+ \psZero[xShift=-0.2,yShift=0.15,postString=1,Newton](0.5,1){\funkf}{N1}
+ \psZero[xShift=-0.05,yShift=0.15,postString=2](2,4){\funkf}{N2}
+ \psZero[xShift=-0.45,yShift=0.15,postString=3](4,6){\funkf}{N3}
+ \psZero[xShift=-0.45,yShift=0.15,postString=4](6,7){\funkf}{N4}
+ \psZero[xShift=-0.45,yShift=0.15,postString=5](9,11){\funkf}{N5}
+ \psZero[xShift=-1.15,yShift=0,PointName=M,
+ postString={m=1}](0.5,2){Derive(1,\funkf)-1+\funkf}[\funkf]{M}%
+}
+\pcline{->}(0.5,-1)(M)
+\nbput[nrot=:U,labelsep=0.01]{%
+ \scriptsize Steigung ist hier
+ \psPrintValueNew[PSfont=Palatino-Roman,decimals=0,round,fontscale=7]{nMx,{Derive(1,\funkf)}}}
+\psdot[linecolor=green,strokeopacity=0.8](*{nMx} {\funkf})
+\uput[90](*{nMx} {\funkf}){$m=$
+ \psPrintValueNew[PSfont=Palatino-Roman,decimals=0,round,fontscale=8]{nMx,{Derive(1,\funkf)}}}
+\end{pspicture}
+\end{lstlisting}
+%\end{LTXexample}
+
+
\psset{unit=1cm}
\clearpage
\section{\Lcs{psFourier}}
@@ -1612,6 +1720,59 @@
\end{pspicture}
\end{LTXexample}
+
+\clearpage
+\section{\nxLcs{psWeierstrass} -- a pathological function}
+
+The Weierstrass function is an example of a pathological real-valued function
+on the real line. The function has the property that it is continuous
+everywhere but differentiable nowhere.
+%
+\[
+ f_a(x)=\sum\limits_{k=1}^\infty\frac{\sin(\pi k^ax)}{\pi k^a}
+\]
+%f(p/q)=pi/(4q^2)sum_(k=1)^(q-1)(sin((k^2ppi)/q))/(sin^2((kpi)/(2q)))
+%
+
+\begin{BDef}
+\Lcs{psWeierstrass}\OptArgs\Largr{$x_0,x_1$}\OptArg*{\Largs{a}}\Largb{a/b}
+\end{BDef}
+
+Without the optional argument the mandatory one is $a$, otherwise it is $b$ and
+the optional one $a$. Without setting the optional argument \Lkeyword{epsilon} the value
+of 1.e-8 will be used.
+
+
+\begin{LTXexample}[width=6.5cm,wide=false]
+\psset{yunit=10,xunit=5}
+\begin{pspicture}(-0.1,-0.5)(2.1,0.5)
+\psaxes[Dx=0.2,Dy=0.1,ticksize=-2pt 0,
+ labelFontSize=\scriptstyle]{->}(0,0)(0,-0.5)(2.1,0.5)
+\psWeierstrass[linecolor=red](0,2){2}
+\psWeierstrass[linecolor=green,epsilon=1.e-15](0,2){3}
+\psWeierstrass[linecolor=blue,epsilon=1.e-5](0,2){4}
+\end{pspicture}
+\end{LTXexample}
+
+
+The original Weierstraß function can be used with the optional argument:
+\[ f(x)= \sum_{n=0}^\infty a^n \cos(b^n \pi x) \]
+
+
+
+\begin{LTXexample}[width=6.5cm,wide=false]
+\psset{unit=2cm,linewidth=0.5pt,plotpoints=5000}
+\begin{pspicture}(-2.1,-2.1)(2.1,2.1)
+\psaxes[Dx=0.5,Dy=0.5,ticksize=-2pt 0,
+ labelFontSize=\scriptstyle]{->}(0,0)(-2,-2)(2,2)
+\psWeierstrass[linecolor=red](-2,2)[0.5]{3}
+\psWeierstrass[linecolor=blue!70](-2,2)[0.5]{10}
+\end{pspicture}
+\end{LTXexample}
+
+
+
+
\clearpage
\section{\nxLcs{psplotImp} -- plotting implicit defined functions}
For a given area, the macro calculates in a first step row by row for every pixel (1pt)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-func.doc.tlpobj new/tlpkg/tlpobj/pst-func.doc.tlpobj
--- old/tlpkg/tlpobj/pst-func.doc.tlpobj 2013-04-19 03:47:27.000000000 +0200
+++ new/tlpkg/tlpobj/pst-func.doc.tlpobj 2014-05-21 00:37:24.000000000 +0200
@@ -1,9 +1,9 @@
name pst-func.doc
category Package
-revision 30023
+revision 34156
shortdesc doc files of pst-func
relocated 1
-docfiles size=852
+docfiles size=864
RELOC/doc/generic/pst-func/Changes
RELOC/doc/generic/pst-func/README
RELOC/doc/generic/pst-func/pst-func-doc.bib
++++++ pst-func.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pst-func/pst-func.pro new/dvips/pst-func/pst-func.pro
--- old/dvips/pst-func/pst-func.pro 2010-10-04 01:05:41.000000000 +0200
+++ new/dvips/pst-func/pst-func.pro 2014-05-21 00:00:54.000000000 +0200
@@ -1,4 +1,4 @@
-%% $Id: pst-func.pro 391 2010-10-02 16:43:32Z herbert $
+%% $Id: pst-func.pro 918 2014-05-19 12:32:37Z herbert $
%%
%% This is file `pst-func.pro',
%%
@@ -16,7 +16,7 @@
%% `pst-func' is a PSTricks package to plot special math functions
%%
%%
-%% version 0.13 / 2010-06-21 Herbert Voss
+%% version 0.16 / 2014-05-07 Herbert Voss
%
/tx@FuncDict 100 dict def
tx@FuncDict begin
@@ -24,7 +24,8 @@
/eps1 1.0e-05 def
/eps2 1.0e-04 def
/eps8 1.0e-08 def
-/Pi2 1.57079632679489661925640 def
+%
+/PiHalf 1.57079632679489661925640 def
/CEuler 0.5772156649 def % Euler-Mascheroni constant
%
/factorial { % n on stack, returns n!
@@ -74,23 +75,26 @@
} for % x y on stack
end
} def
-%
+
/BezierCurve { % on stack [ coors psk@plotpoints BezierType
% 10 dict begin
- /BezierType ED
- 1 exch div /epsilon ED
- ] /Points ED % yi xi ... y3 x3 y2 x2 y1 x1 y0 x0
+ /BezierType ED % 2,3,4,5,6,...
+ 1 exch div /epsilon ED % step for Bezier =1/plotpoints
+ ] % [ yi xi ... y3 x3 y2 x2 y1 x1 y0 x0]
+ ps@ReverseOrderOfPoints % [y0 x0 y1 x1 ... yi xi]
+ /Points ED % save Points array
epsilon GetBezierCoor % next Bezier point
Points 0 get Points 1 get % starting point
- ArrowA moveto
- epsilon epsilon 1 {
- /t ED
- t GetBezierCoor
- t 0.9999 lt { lineto }{ 1 epsilon sub GetBezierCoor 4 2 roll ArrowB pop pop pop pop } ifelse
+ ArrowA lineto
+ epsilon epsilon 1 epsilon sub { % on stack is the loop variable
+ GetBezierCoor lineto
} for
+ 1 epsilon sub GetBezierCoor
+ 1 GetBezierCoor
+ ArrowB lineto moveto
% end
} def
-%
+
/Bernstein { % on stack tStart tEnd plotpoints i n
12 dict begin % hold all local
/envelope ED % plot envelope?
@@ -110,8 +114,8 @@
dup dup /t ED % leave one on stack
neg 1 add /t1 ED % t1=1-t
envelope
- { t t1 mul 4 mul Pi2 mul n mul sqrt 1 exch Div } % envelope
- { noveri t i exp mul t1 ni exp mul } ifelse % t f(t)
+ { t t1 mul 4 mul PiHalf mul n mul sqrt 1 exch Div } % envelope
+ { noveri t i exp mul t1 ni exp mul } ifelse % t f(t)
ScreenCoor % convert to screen coor
} for
end
@@ -133,7 +137,7 @@
Sum
} def
/si { % integral sin from x to infty -> si(x)=Si(x)-pi/2
- Si Pi2 sub
+ Si PiHalf sub
} def
/Ci { % integral cosin from x to infty (arg on stack)
abs /arg exch def
@@ -184,8 +188,8 @@
/Steffensen {% the start value must be on top of the stack
/y0 exch def % the start value
- /Iter 0 def
- {
+ /Iter 0 def /MaxIter 200 def
+ { pstack
y0 func /F exch def
F abs eps2 lt { exit } if
y0 F sub /Phi exch def
@@ -198,7 +202,9 @@
/Iter Iter 1 add def
Iter MaxIter gt { exit } if
} loop
- y0 % the returned value ist the zero point
+ y0 28 mul % the returned value ist the zero point
+ 0
+ 3 0 360 arc gsave 0 0 1 setrgbcolor fill grestore 1 setlinewidth stroke
} def
%
/Horner {% x [coeff] must be on top of the stack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-func/pst-func.tex new/tex/generic/pst-func/pst-func.tex
--- old/tex/generic/pst-func/pst-func.tex 2012-01-19 23:47:29.000000000 +0100
+++ new/tex/generic/pst-func/pst-func.tex 2014-05-21 00:00:54.000000000 +0200
@@ -1,4 +1,4 @@
-%% $Id: pst-func.tex 625 2012-01-15 20:56:13Z herbert $
+%% $Id: pst-func.tex 918 2014-05-19 12:32:37Z herbert $
%%
%% This is file `pst-func.tex',
%%
@@ -23,6 +23,7 @@
\ifx\PSTricksLoaded\endinput\else \input pstricks.tex\fi
\ifx\PSTnodesLoaded\endinput\else \input pst-plot.tex\fi
\ifx\PSTmathLoaded\endinput \else \input pst-math.tex\fi
+\ifx\PSTtoolsLoaded\endinput \else \input pst-tools.tex\fi
\ifx\PSTricksAddLoaded\endinput\else\input pstricks-add.tex\fi
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey.tex \fi
%
@@ -30,8 +31,8 @@
% interface to the `xkeyval' package
\pst@addfams{pst-func}
%
-\def\fileversion{0.76}
-\def\filedate{2012/01/13}
+\def\fileversion{0.80}
+\def\filedate{2015/05/19}
\message{`PST-func' v\fileversion, \filedate\space (hv)}
%
\pstheader{pst-func.pro}
@@ -43,6 +44,8 @@
\def\ChebyshevU{ tx@FuncDict begin ChebyshevU end }
%
+\define@key[psset]{pst-func}{epsilon}[1.e-08]{\def\psk@epsilon{#1 }}
+\psset[pst-func]{epsilon=1.e-08}
\define@key[psset]{pst-func}{xShift}[0]{\def\psk@xShift{#1}}
\psset[pst-func]{xShift=0}
%
@@ -98,6 +101,47 @@
zeroLineWidth=0.5\pslinewidth,%
zeroLineColor=black}%
%
+\def\psGetZeros{\pst@object{psGetZeros}}
+\def\psGetZeros@i(#1,#2)#3{%
+ \pst@killglue
+ \begin@SpecialObj
+ \use@par
+ \typeout{>>> GetZeros}%
+ \addto@pscode{
+ tx@FuncDict begin
+ /xStart #1 def /xEnd #2 def
+ /x xStart def
+ /func { /x exch def \ifPst@algebraic (#3) AlgParser cvx exec \else #3 \fi } def
+ #1 Steffensen
+ \ifPst@markZeros \fi
+ end
+ }%
+ \end@SpecialObj
+\ignorespaces
+}
+\iffalse
+/Steffensen {% the start value and the function must be on top of the stack
+ /y0 exch def % the start value
+ /Iter 0 def /MaxIter 200 def
+ {
+ y0 Function /F exch def
+ F abs eps2 lt { exit } if
+ y0 F sub /Phi exch def
+ Phi Function /F2 exch def
+ F2 abs eps2 le { exit }{
+ Phi y0 sub dup mul Phi F2 sub 2 Phi mul sub y0 add Div /Diff exch def
+ y0 Diff sub /y0 exch def
+ Diff abs eps1 le { exit } if
+ } ifelse
+ /Iter Iter 1 add def
+ Iter MaxIter gt { exit } if
+ } loop
+ y0 % the returned value ist the zero point
+ 0 \tx@ScreenCoor pstack
+ 3 0 360 arc gsave 0 0 1 setrgbcolor fill grestore 1 setlinewidth stroke
+} def
+\fi
+%
\def\psPolynomial{\pst@object{psPolynomial}}
\def\psPolynomial@i#1#2{%
\pst@killglue%
@@ -944,6 +988,37 @@
t 180 gt { neg } if }
\endgroup\ignorespaces}
%
+\def\psWeierstrass{\pst@object{psWeierstrass}}
+\def\psWeierstrass@i(#1,#2){\@ifnextchar[{\psWeierstrass@ii(#1,#2)}{\psWeierstrass@iii(#1,#2)}}
+\def\psWeierstrass@ii(#1,#2)[#3]#4{% #1 xStart; #2 xEnd; #3 a; #4 b %% the original definition
+ \addbefore@par{plotpoints=500}%
+ \begin@SpecialObj
+ \psplot{#1}{#2}[/ps@a #3 def /ps@b #4 def]{
+ /ps@n 0 def
+ /ps@WS 0 def
+ {
+ ps@a ps@n exp ps@b ps@n exp Pi mul x mul RadtoDeg cos mul
+ dup abs \psk@epsilon gt { ps@WS add /ps@WS ED }{ ps@WS add exit } ifelse
+ ps@n 1 add /ps@n ED
+ } loop
+ }%
+ \end@SpecialObj
+}
+\def\psWeierstrass@iii(#1,#2)#3{% #1 xStart; #2 xEnd; #3 a
+ \addbefore@par{plotpoints=500}%
+ \begin@SpecialObj
+ \psplot{#1}{#2}[/ps@a #3 def]{
+ /ps@k 1 def
+ /ps@WS 0 def
+ {
+ ps@k ps@a exp Pi mul dup x mul RadtoDeg sin exch div
+ dup abs \psk@epsilon gt { ps@WS add /ps@WS ED }{ ps@WS add exit } ifelse
+ ps@k 1 add /ps@k ED
+ } loop
+ }%
+ \end@SpecialObj
+}
+%
% For polar plots
%\define@boolkey[psset]{pst-func}[PstAdd@]{polarplot}[true]{}
%\psset[pst-func]{polarplot=false}
@@ -1047,15 +1122,20 @@
\pst@killglue
\begingroup
\use@par
- \psplot[algebraic=false,fillstyle=none]{#1}{#2}{#4}% original function
- \psplot[algebraic=false,fillstyle=none]{#1}{#2}{#4 neg}% mirrored at the x-axis
+ \psplot[fillstyle=none]{#1}{#2}{#4}% original function
+ \ifPst@algebraic
+ \psplot[fillstyle=none]{#1}{#2}{-(#4)}
+ \else
+ \psplot[fillstyle=none]{#1}{#2}{#4 neg}% mirrored at the x-axis
+ \fi
\multido{\iA=1+1}{#3}{% run it #3 times with increment \A
\pscustom{% to get a closed filled ellipse
\code{ % the PS code
/dX #2 #1 sub #3 div def % delta x, the step
/Start dX \iA\space 1 sub mul #1 add def % xStart
/End Start dX add def % xEnd=xStart+dX
- /Height End Start add 2 div /x ED #4 def } % height=f(x)
+ /Height End Start add 2 div /x ED
+ \ifPst@algebraic (#4) AlgParser cvx exec \else #4 \fi def } % height=f(x)
% x is the mean between Start+End
\psellipticarc(!Start 0)(! Height 8 div Height){90}{270}
% draw the first falf of the ellipse
@@ -1064,11 +1144,19 @@
% draw the other half of the ellipse
\rlineto(!dX neg 0)}}% draw a line in negative x-direction
\psset{fillstyle=none}
- \psellipse(#2,0)(!#2 dup #1 sub #3 div 2 div sub /x ED #4 dup
- 8 div exch)% draw again the ellipse to get the borderline.
+% \psellipse(#2,0)(!#2 dup #1 sub #3 div 2 div sub /x ED #4 dup
+% 8 div exch)% draw again the ellipse to get the borderline.
+ \psellipse(#2,0)(!{ #2 dup #1 sub #3 div 2 div sub /x ED
+ \ifPst@algebraic (#4) AlgParser cvx exec \else #4 \fi dup
+ 8 div exch}) % draw again the ellipse to get the borderline.
\psset{plotstyle=line,linestyle=dashed,
plotpoints=40,dotstyle=*,dotsize=0.5pt}
- \psplot[algebraic=false]{#1}{#2}{#4}\psplot{#1}{#2}{#4 neg}
+ \psplot[fillstyle=none]{#1}{#2}{#4}
+ \ifPst@algebraic
+ \psplot[fillstyle=none]{#1}{#2}{-(#4)}
+ \else
+ \psplot[fillstyle=none]{#1}{#2}{#4 neg}% mirrored at the x-axis
+ \fi
% draw again the curves to get the borderline
\endgroup%
\ignorespaces%
@@ -1179,6 +1267,128 @@
\endgroup
\ignorespaces}
%
+\define@boolkey[psset]{pst-func}[Pst@]{Newton}[true]{}
+\define@boolkey[psset]{pst-func}[Pst@]{PrintCoord}[true]{}
+\define@boolkey[psset]{pst-func}[Pst@]{onlyNode}[true]{}
+\define@boolkey[psset]{pst-func}[Pst@]{onlyYVal}[true]{}
+\define@boolkey[psset]{pst-func}[Pst@]{originV}[true]{}
+\define@key[psset]{pst-func}{PointName}[]{\def\psk@PointName{#1}}
+\define@key[psset]{pst-func}{ydecimals}[2]{\pst@getint{#1}\psk@ydecimals }
+\psset[pst-func]{originV=false,onlyNode=false,ydecimals=2,
+ PrintCoord=false,onlyYVal=false,Newton=false,PointName=I,
+}
+%--------------------------------------------------------------------
+%------------- calculate the value of an intersectionpoint -----------
+%---------------------------------------------------------------------
+\def\psZero{\def\pst@par{}\pst@object{psZero}}
+\def\psZero@i(#1,#2)#3{\@ifnextchar[{\psZero@ii(#1,#2)#3}{\psZero@ii(#1,#2){#3}[0]}}
+\def\psZero@ii(#1,#2)#3[#4]#5{%
+% (#1,#2) Intervall für die Nullstelle, bzw #1 Startwert für Newton, #3 1. Funktion, #4 2. Funktion, #5 Knotenname
+ \begingroup
+ \pst@killglue
+% \addbefore@par{fontscale=40,PSfont=Times-Roman}%
+ \use@par
+ \pstVerb{
+ /FunctionA
+ \ifPst@algebraic (#3) tx@AlgToPs begin AlgToPs end cvx \else {#3} \fi def
+ /FunctionB
+ \ifPst@algebraic (#4) tx@AlgToPs begin AlgToPs end cvx \else {#4} \fi def
+ \ifPst@Newton % --------------------------- Newton-Verfahren --- TS 05.2014
+ /eps 1e-6 def % eps f\"{u}r (f(x+eps)-f(x))/eps
+ /x0 #1 def % Startwert wird vorgegeben
+ /Xend x0 def
+ {
+ /xe x0 eps add def % xe=x+eps
+ /x x0 def % x nun x0 setzen, damit f(x0) berechnet werden kann
+ /func0 FunctionA FunctionB sub def % func0=F(x0)-FB(x0)
+ func0 0 eq {exit} if % wenn func0 = 0 -> exit
+ /x xe def % x xe setzen
+ /func1 FunctionA FunctionB sub def % func1=F(xe)-FB(xe)
+ /Xend x0 func0 eps mul func1 func0 sub div sub def % Xend=x0-(func0*eps)/(func1-func0)
+ /x Xend def % x wird nun Xend
+ /funcend FunctionA FunctionB sub def % funcend=F(Xend)-FB(Xend)
+ funcend abs 1e-6 le {exit} if % Wenn funcend < 1e-6 -> exit
+ /x0 Xend def % sonst x0 = Xend und
+ } loop % die Schleife beginnt mit x0 = Xend
+ /xM Xend def
+ \else % -------------------- Intervallhalbierungsverfahren von Manuel L.
+ /Xinf #1 def % linker Wert des Intervalls, in dem die Nullstelle gesucht wird
+ /Xsup #2 def % linker Wert des Intervalls, in dem die Nullstelle gesucht wird
+ { /xM Xinf Xsup add 2 div def % Mittelwert -> Mitte des Intervalls ist xM2
+ /x Xinf def % Variable x wird als linker Wert festgelegt
+ /F_1 FunctionA FunctionB sub def % Definition der Differenzfunktion F_1 an der Stelle x=Xinf2
+ /x xM def % Variable x wird als Mittelwert festgelegt
+ /F_M FunctionA FunctionB sub def % Definition der Differenzfunktion F_M an der Stelle x=xM2
+ F_M 0 eq {exit} if % Ist F_M = 0 => fertig
+ F_1 F_M mul 0 ge {/Xinf xM def} {/Xsup xM def} ifelse % F_1 * F_M > 0 (F_1 und F_M haben gleiches VZ) => neuer linker x-Wert = xM2
+ Xinf Xsup sub abs 1e-6 le {exit} if } loop % Die Schleife endet, wenn die Differenz von linkem und rechtem Wert < 10^-6
+ \fi
+ /x xM def FunctionA /yM exch def % x wird Mittelwert und an dieser Stelle die Funktion berechnet und als yM2 definiert
+ }%
+ \pnode(! xM yM){#5}%
+ \addto@pscode{
+ \ifPst@onlyNode \else
+ /dec \psk@decimals\space def % Anzahl der Dezimahlen f\"{u}r x
+ /ydec \psk@ydecimals\space def % Anzahl der Dezimalen f\"{u}r y
+ /symb { /Symbol findfont \psk@fontscale\space scalefont setfont } bind def % Symbolschrift f\"{u}r Klammer und senkrechten Strich
+ /schrift { \psk@PSfont findfont \psk@fontscale scalefont setfont } bind def % Schrift f\"{u}r die Ergebnisse
+ /TiefSchrift { /Symbol findfont \psk@fontscale 1.6 div scalefont setfont } bind def % Schrift f\"{u}r tiefergestellte Buchstaben
+ /spdx \psk@fontscale 4 div def % Abstand, der mit der Schriftg\"{o}{\ss}e skaliert ist
+ /spdy \psk@fontscale 15 div def % Abstand, der mit der Schriftg\"{o}{\ss}e skaliert ist
+ /Wert { 10 dec exp mul round 10 dec exp div dec 0 eq {cvi 15 string cvs} {15 string cvs } ifelse % x-Wert runden und als string ablegen
+ \ifPst@comma dot2comma \fi show } def % gegebenenfalls Komma statt Punkt und Ergebnis anzeigen
+ /yWert { 10 ydec exp mul round 10 ydec exp div ydec 0 eq {cvi 15 string cvs} {15 string cvs } ifelse % y-Wert runden und als string ablegen
+ \ifPst@comma dot2comma \fi show } def % gegebenenfalls Komma statt Punkt und Ergebnis anzeigen
+ /FunctionA \ifPst@algebraic (#3) tx@AlgToPs begin AlgToPs end cvx \else {#3} \fi def
+ /FunctionB \ifPst@algebraic (#4) tx@AlgToPs begin AlgToPs end cvx \else {#4} \fi def
+ \ifPst@Newton
+ /eps 1e-6 def
+ /x0 #1 def
+ /Xend x0 def
+ { /xe x0 eps add def
+ /x x0 def
+ /func0 FunctionA FunctionB sub def
+ func0 0 eq {exit} if
+ /x xe def
+ /func1 FunctionA FunctionB sub def
+ /Xend x0 func0 eps mul func1 func0 sub div sub def
+ /x Xend def
+ /funcend FunctionA FunctionB sub def
+ funcend abs 1e-6 le {exit} if
+ /x0 Xend def
+ } loop
+ /xM Xend def
+ \else
+ /Xinf #1 def /Xsup #2 def
+ { /xM Xinf Xsup add 2 div def
+ /x Xinf def /F_1 FunctionA FunctionB sub def
+ /x Xsup def /F_2 FunctionA FunctionB sub def
+ /x xM def /F_M FunctionA FunctionB sub def
+ F_M 0 eq {exit} if
+ F_1 F_M mul 0 ge {/Xinf xM def} {/Xsup xM def} ifelse
+ Xinf Xsup sub abs 1e-6 le {exit} if } loop
+ \fi
+ /x xM def FunctionA /yM exch def
+ \ifPst@originV 0 0 \else
+ xM \psk@xShift\space add \pst@number\psxunit mul
+ yM \psk@yShift\space add \pst@number\psyunit mul
+ \fi
+ \ifPst@PrintCoord
+ moveto schrift (\psk@PointName) show
+ spdx neg spdy 2 mul neg rmoveto TiefSchrift (\psk@postString) show
+ 0 spdy 3 mul rmoveto symb (\string\050) show
+ 0 spdy neg rmoveto schrift xM Wert
+ spdx 3 div spdy rmoveto symb (\string\174) show
+ spdx 3 div spdy neg rmoveto yM yWert 0 spdy rmoveto symb (\string\051) show
+ \else
+ \ifPst@onlyYVal moveto schrift yM yWert \else moveto schrift xM Wert \fi
+ \fi\fi
+ }%
+ \ifPst@markZeros \psdot(#5)\fi
+\endgroup\use@pscode\ignorespaces
+}%
+%
+
\catcode`\@=\PstAtCode\relax
%
%% END: pst-func.tex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pst-func/pst-func.sty new/tex/latex/pst-func/pst-func.sty
--- old/tex/latex/pst-func/pst-func.sty 2010-06-22 00:28:00.000000000 +0200
+++ new/tex/latex/pst-func/pst-func.sty 2014-05-21 00:00:54.000000000 +0200
@@ -1,12 +1,12 @@
\RequirePackage{pstricks}
-\ProvidesPackage{pst-func}[2010/06/21 package wrapper for
+\ProvidesPackage{pst-func}[2013/06/03 package wrapper for
pst-func.tex (hv)]
\input{pst-func.tex}
\ProvidesFile{pst-func.tex}
[\filedate\space v\fileversion\space `PST-func' (hv)]
\IfFileExists{pst-func.pro}{%
\ProvidesFile{pst-func.pro}
- [2009/06/21 v. 0.13, PostScript prologue file (hv)]
+ [2014/05/07 v. 0.16, PostScript prologue file (hv)]
\@addtofilelist{pst-func.pro}}{}%
\endinput
-%% $Id: pst-func.sty 355 2010-06-21 10:02:44Z herbert $
+%% $Id: pst-func.sty 918 2014-05-19 12:32:37Z herbert $
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-func.tlpobj new/tlpkg/tlpobj/pst-func.tlpobj
--- old/tlpkg/tlpobj/pst-func.tlpobj 2013-04-19 03:47:29.000000000 +0200
+++ new/tlpkg/tlpobj/pst-func.tlpobj 2014-05-21 00:37:27.000000000 +0200
@@ -1,31 +1,32 @@
name pst-func
category Package
-revision 30023
+revision 34156
shortdesc PSTricks package for plotting mathematical functions.
relocated 1
-longdesc pst-func is a package built for use with PSTricks. It provides
-longdesc macros for plotting various mathematical functions: -
+longdesc The package is built for use with PSTricks. It provides macros
+longdesc for plotting and manipulating various mathematical functions:
longdesc polynomials and their derivatives f(x)=an*x^n+an-1*x^(n-
longdesc 1)+...+a0 defined by the coefficients a0 a1 a2 ... and the
-longdesc derivative order; - the Fourier sum f(x) = a0/2+a1cos(omega
+longdesc derivative order; the Fourier sum f(x) = a0/2+a1cos(omega
longdesc x)+...+b1sin(omega x)+... defined by the coefficients a0 a1 a2
-longdesc ... b1 b2 b3 ...; - the Bessel function defined by its order; -
-longdesc the Gauss function defined by sigma and mu; - Bezier curves
-longdesc from order 1 (two control points) to order 9 (10 control
-longdesc points); - the superellipse function (the Lame curve); -
-longdesc Chebyshev polynomials of the first and second kind; - the
-longdesc Thomae (or popcorn) function; - various integration-derived
-longdesc functions; - normal, binomial, poisson, gamma, chi-squared,
-longdesc student's t, F, beta, Cauchy and Weibull distribution functions
-longdesc and the Lorenz curve; - the Vasicek function for describing the
-longdesc evolution of interest rates; and - implicit functions. The
-longdesc plots may be generated as volumes of rotation about the X-axis,
-longdesc as well.
-runfiles size=15
+longdesc ... b1 b2 b3 ...; the Bessel function defined by its order; the
+longdesc Gauss function defined by sigma and mu; Bezier curves from
+longdesc order 1 (two control points) to order 9 (10 control points);
+longdesc the superellipse function (the Lame curve); Chebyshev
+longdesc polynomials of the first and second kind; the Thomae (or
+longdesc popcorn) function; the Weierstrass function; various
+longdesc integration-derived functions; normal, binomial, poisson,
+longdesc gamma, chi-squared, student's t, F, beta, Cauchy and Weibull
+longdesc distribution functions and the Lorenz curve; the zeroes of a
+longdesc function, or the intermediate point of two functions; the
+longdesc Vasicek function for describing the evolution of interest
+longdesc rates; and implicit functions. The plots may be generated as
+longdesc volumes of rotation about the X-axis, as well.
+runfiles size=17
RELOC/dvips/pst-func/pst-func.pro
RELOC/tex/generic/pst-func/pst-func.tex
RELOC/tex/latex/pst-func/pst-func.sty
catalogue-ctan /graphics/pstricks/contrib/pst-func
-catalogue-date 2012-04-10 17:31:04 +0200
+catalogue-date 2014-05-19 15:05:30 +0200
catalogue-license lppl
-catalogue-version 0.76
+catalogue-version 0.80
++++++ pst-gantt.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-gantt/Changes new/doc/generic/pst-gantt/Changes
--- old/doc/generic/pst-gantt/Changes 2010-02-26 01:39:42.000000000 +0100
+++ new/doc/generic/pst-gantt/Changes 2013-10-28 23:43:12.000000000 +0100
@@ -1,4 +1,5 @@
..... pst-gantt.tex
+0.22 2013-10-27 - fixed spurious space
0.21 2010-02-23 - add optional arguments
ChartModulo and ChartModuloValue
0.20 2009-05-12 - first CTAN version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-gantt/pst-gantt-doc.bib new/doc/generic/pst-gantt/pst-gantt-doc.bib
--- old/doc/generic/pst-gantt/pst-gantt-doc.bib 2009-05-18 20:22:48.000000000 +0200
+++ new/doc/generic/pst-gantt/pst-gantt-doc.bib 2013-10-28 23:43:12.000000000 +0100
@@ -14,49 +14,6 @@
@STRING{theaterkasse = {Von der Theaterkasse} }
@STRING{theatertage = {{\TeX}-Theatertage} }
-@Article{ dtk02.2:jackson.voss:plot-funktionen,
- author = {Laura E. Jackson and Herbert Vo{\ss}},
- title = {Die {P}lot-{F}unktionen von {\texttt{pst-plot}}},
- journal = dtk,
- year = 2002,
- volume = {2/02},
- altvolume = 2,
- altnumber = 14,
- month = jun,
- pages = {27--34},
- annote = bretter,
- keywords = {},
- abstract = { Im letzten Heft wurden die mathematischen Funktionen von
- \PS~im Zusammenhang mit dem {\LaTeX}-Paket
- \texttt{pst-plot} zum Zeichnen von Funktionen beschrieben
- und durch Beispiele erl{\"a}utert. In diesem Teil werden
- die bislang nur erw{\"a}hnten Plot-Funktionen f{\"u}r
- externe Daten behandelt. }
-}
-
-@Article{ dtk02.1:voss:mathematischen,
- author = {Herbert Vo{\ss}},
- title = {Die mathematischen {F}unktionen von {P}ost{S}cript},
- journal = dtk,
- year = 2002,
- volume = {1/02},
- altvolume = 1,
- altnumber = 14,
- month = mar,
- pages = {},
- annote = bretter,
- keywords = {},
- abstract = { \PS, faktisch genauso alt wie {\TeX}, ist im
- Verh{\"a}ltnis dazu allgemein noch weniger bekannt, wenn es
- darum geht zu beurteilen, was es denn nun im eigentlichen
- Sinne ist. Au{\ss}erdem wird h{\"a}ufig vergessen, dass
- sich mit den \PS-Funktionen viele Dinge erledigen lassen,
- bei denen sonst auf externe Programme zur{\"u}ckgegriffen
- wird. Dies wird im Folgenden f{\"u}r die mathematischen
- Funktionen im Zusammenhang mit dem Paket \texttt{pst-plot}
- gezeigt. }
-}
-
@Book{tlgc2,
author = {Michel Goosens and Frank Mittelbach and Sebastian Rahtz and Denis Roegel and Herbert Vo{\ss}},
title = {The {\LaTeX} {G}raphics {C}ompanion},
@@ -66,16 +23,6 @@
address = {Reading, Mass.}
}
-
-@Book{voss:chaos,
- author = {Herbert Vo{\ss}},
- title = {Chaos und {F}raktale selbst programmieren: von {M}andelbrotmengen
- {\"u}ber {F}arbmanipulationen zur perfekten Darstellung},
- publisher = {{Franzis Verlag}},
- year = {1994},
- address = {Poing}
-}
-
@Article{girou:01:,
author = {Denis Girou},
title = {Pr\'esentation de {PST}ricks},
@@ -133,22 +80,40 @@
}
@Book{PSTricks2,
- author = {Herbert Vo\ss},
+ author = {Herbert Vo\ss{}},
title = {\texttt{PSTricks} -- {G}rafik f\"ur \TeX{} und \LaTeX},
- edition = {5.},
+ edition = {6.},
publisher = {DANTE -- Lehmanns},
- year = {2008},
+ year = {2010},
address = {Heidelberg/Hamburg}
}
-@Book{voss:math,
- author = {Herbert Vo\ss},
- title = {\LaTeX\ in {M}athematik und {N}aturwissenschaften},
- publisher = {{Franzis-Verlag}},
- year = {2006},
- address = {Poing}
+@Book{PSTricksE,
+ author = {Herbert Vo\ss{}},
+ title = {\texttt{PSTricks} -- {G}raphics and {P}ost{S}cript for \LaTeX},
+ edition = {1.},
+ publisher = {UIT},
+ year = {2011},
+ address = {Cambridge -- UK}
+}
+
+@Book{LTXquick,
+ author = {Herbert Vo\ss{}},
+ title = {{\LaTeX} quick reference},
+ edition = {1.},
+ publisher = {UIT},
+ year = {2012},
+ address = {Cambridge -- UK}
}
+@Book{presentations,
+ author = {Herbert Vo\ss},
+ title = {Presentations with \LaTeX},
+ edition = {1.},
+ publisher = {DANTE -- Lehmanns Media},
+ year = {2012},
+ address = {Heidelberg/Berlin}
+}
@Manual{wolfram,
author = {Eric Weisstein},
title = {Wolfram MathWorld},
Files old/doc/generic/pst-gantt/pst-gantt-doc.pdf and new/doc/generic/pst-gantt/pst-gantt-doc.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-gantt.doc.tlpobj new/tlpkg/tlpobj/pst-gantt.doc.tlpobj
--- old/tlpkg/tlpobj/pst-gantt.doc.tlpobj 2010-06-10 18:42:30.000000000 +0200
+++ new/tlpkg/tlpobj/pst-gantt.doc.tlpobj 2013-10-29 03:22:32.000000000 +0100
@@ -1,6 +1,6 @@
name pst-gantt.doc
category Package
-revision 17206
+revision 32023
shortdesc doc files of pst-gantt
relocated 1
docfiles size=36
++++++ pst-gantt.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-gantt/pst-gantt.tex new/tex/generic/pst-gantt/pst-gantt.tex
--- old/tex/generic/pst-gantt/pst-gantt.tex 2010-02-26 01:39:42.000000000 +0100
+++ new/tex/generic/pst-gantt/pst-gantt.tex 2013-10-28 23:43:12.000000000 +0100
@@ -29,8 +29,8 @@
% interface to the `xkeyval' package
\pst@addfams{pst-gantt}
%
-\def\fileversion{0.21}
-\def\filedate{2010/02/23}
+\def\fileversion{0.22}
+\def\filedate{2013/10/27}
\message{`pst-gantt' v\fileversion, \filedate\space (Denis Girou and Herbert Voss)}
%
% "pspicture" environment or not?
@@ -166,7 +166,7 @@
\pst@GanttTaskCnt=\z@
% Syntax: \PstGanttTask[parameters]{Start}{Length}
\def\PstGanttTask{\@ifnextchar[\PstGanttTask@i{\PstGanttTask@i[]}}
-\def\PstGanttTask@i[#1]#2#3{
+\def\PstGanttTask@i[#1]#2#3{%
\advance\pst@GanttTaskCnt\m@ne
\begingroup
\psset{#1}% % Affectation of local parameters
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-gantt.tlpobj new/tlpkg/tlpobj/pst-gantt.tlpobj
--- old/tlpkg/tlpobj/pst-gantt.tlpobj 2010-06-10 18:42:30.000000000 +0200
+++ new/tlpkg/tlpobj/pst-gantt.tlpobj 2013-10-29 03:22:33.000000000 +0100
@@ -1,15 +1,15 @@
name pst-gantt
category Package
-revision 17206
+revision 32023
shortdesc Draw GANTT charts with pstricks.
relocated 1
-longdesc The package draws GANTT charts, which are a kind of bar chart
-longdesc that displays a project schedule. The package requires the
-longdesc pstricks apparatus, of course.
+longdesc The package uses PSTricks to draw GANTT charts, which are a
+longdesc kind of bar chart that displays a project schedule. The package
+longdesc requires the pstricks apparatus, of course.
runfiles size=3
RELOC/tex/generic/pst-gantt/pst-gantt.tex
RELOC/tex/latex/pst-gantt/pst-gantt.sty
catalogue-ctan /graphics/pstricks/contrib/pst-gantt
-catalogue-date 2010-02-24 21:46:55 +0100
+catalogue-date 2013-10-28 20:11:41 +0100
catalogue-license lppl
-catalogue-version 0.21
+catalogue-version 0.22
++++++ pst-mirror.doc.tar.xz ++++++
/work/SRC/openSUSE:Factory/texlive-specs-s/pst-mirror.doc.tar.xz /work/SRC/openSUSE:Factory/.texlive-specs-s.new/pst-mirror.doc.tar.xz differ: char 26, line 1
++++++ pst-mirror.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pst-mirror/pst-mirror.pro new/dvips/pst-mirror/pst-mirror.pro
--- old/dvips/pst-mirror/pst-mirror.pro 2009-12-12 02:03:00.000000000 +0100
+++ new/dvips/pst-mirror/pst-mirror.pro 2014-02-18 23:50:16.000000000 +0100
@@ -1,4 +1,4 @@
-%% $Id: pst-mirror.pro 169 2009-12-08 17:55:59Z herbert $
+%% $Id: pst-mirror.pro 894 2014-02-18 09:46:21Z herbert $
%%
%% This is file `pst-mirror.pro',
%%
@@ -16,7 +16,98 @@
%% DESCRIPTION:
%% `pst-mirror' is a PSTricks package to view objects ob a spherical sphere
%%
-%% version 1.0 2009-09-12
+%% version 1.1 2014-02-17
+%
+%% === ajouté le 28 octobre 2011 -----------------------------------------------
+%% === adapté de Jean-Michel Sarlat dans pst-anamorphosis ----------------------
+/tx@Sphere3DImageDict 100 dict def
+tx@Sphere3DImageDict begin
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% === Capture de commandes de systemdict --------------------------------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/LINETO { systemdict /lineto get exec } def
+/MOVETO { systemdict /moveto get exec } def
+/CURVETO { systemdict /curveto get exec } def
+/CLOSEPATH { systemdict /closepath get exec } def
+/RLINETO { systemdict /rlineto get exec } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% === Transformation des commandes de construction des path(s) ----------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% 12/10/2011 : version incompléte et un peu brute !
+/moveto {
+ /s@y ED /s@x ED /c@x s@x def /c@y s@y def
+/Xpoint s@x unit_image reduction mul def
+/Ypoint s@y unit_image reduction mul def
+ 2dto3d
+ /Zpoint exch def
+ /Ypoint exch def
+ /Xpoint exch def
+ CalculsPointsApresTransformations
+ 3dto2d
+ MOVETO
+} bind def
+/lineto {
+ /c@yt ED /c@xt ED /dx c@xt c@x sub 50 div def /dy c@yt c@y sub 50 div def
+ 1 1 50 {dup dx mul c@x add exch dy mul c@y add
+/Ypoint exch unit_image reduction mul def
+/Xpoint exch unit_image reduction mul def
+ 2dto3d
+ /Zpoint exch def
+ /Ypoint exch def
+ /Xpoint exch def
+ CalculsPointsApresTransformations
+ 3dto2d
+ LINETO} for
+ /c@x c@xt def /c@y c@yt def
+} bind def
+/closepath {
+ s@x s@y lineto CLOSEPATH
+} bind def
+/curveto {
+ /c@yt ED /c@xt ED
+ /c@yb ED /c@xb ED
+ /c@ya ED /c@xa ED
+ 1 1 20 {
+ 20 div /s ED 1 s sub /t ED
+ t c@x mul 3 s c@xa mul mul add t mul 3 s s c@xb mul mul mul add t mul s 3 exp c@xt mul add
+ t c@y mul 3 s c@ya mul mul add t mul 3 s s c@yb mul mul mul add t mul s 3 exp c@yt mul add
+/Ypoint exch unit_image reduction mul def
+/Xpoint exch unit_image reduction mul def
+ 2dto3d
+ /Zpoint exch def
+ /Ypoint exch def
+ /Xpoint exch def
+ CalculsPointsApresTransformations
+ 3dto2d
+ LINETO
+ } for
+ /c@x c@xt def /c@y c@yt def
+} bind def
+/curvetoinv {
+ /c@ya ED /c@xa ED
+ /c@yb ED /c@xb ED
+ /c@yt ED /c@xt ED
+ 1 1 20 {
+ 20 div /s ED 1 s sub /t ED
+ t c@x mul 3 s c@xa mul mul add t mul 3 s s c@xb mul mul mul add t mul s 3 exp c@xt mul add
+ t c@y mul 3 s c@ya mul mul add t mul 3 s s c@yb mul mul mul add t mul s 3 exp c@yt mul add
+/Ypoint exch unit_image reduction mul def
+/Xpoint exch unit_image reduction mul def
+ 2dto3d
+ /Zpoint exch def
+ /Ypoint exch def
+ /Xpoint exch def
+ CalculsPointsApresTransformations
+ 3dto2d
+ LINETO
+ } for
+ /c@x c@xt def /c@y c@yt def
+} bind def
+/rlineto {
+ c@y add exch c@x add exch lineto
+} bind def
+end
+%
%
/tx@Sphere3DDict 100 dict def
tx@Sphere3DDict begin
@@ -123,13 +214,13 @@
/XH M11 A mul M12 B mul sub M13 C mul sub CX add def
/YH M21 A mul M22 B mul sub M23 C mul sub CY add def
/ZH M31 A mul M32 B mul sub M33 C mul sub CZ add def
-% Centres des faces : condition de visibilit�
+% Centres des faces : condition de visibilité
% FACE 1
% OC1
/XC1 M13 C mul CX add def
/YC1 M23 C mul CY add def
/ZC1 M33 C mul CZ add def
-% Normale � la face 1
+% Normale à la face 1
/NX1 M13 C mul def
/NY1 M23 C mul def
/NZ1 M33 C mul def
@@ -141,7 +232,7 @@
/XC2 M11 A mul CX add def
/YC2 M21 A mul CY add def
/ZC2 M31 A mul CZ add def
-% normale � la face 2
+% normale à la face 2
/NX2 M11 A mul def
/NY2 M21 A mul def
/NZ2 M31 A mul def
@@ -153,7 +244,7 @@
/XC3 M13 C neg mul CX add def
/YC3 M23 C neg mul CY add def
/ZC3 M33 C neg mul CZ add def
-% normale � la face 3
+% normale a la face 3
/NX3 M13 C neg mul def
/NY3 M23 C neg mul def
/NZ3 M33 C neg mul def
@@ -165,7 +256,7 @@
/XC4 M11 A neg mul CX add def
/YC4 M21 A neg mul CY add def
/ZC4 M31 A neg mul CZ add def
-% normale � la face 4
+% normale a la face 4
/NX4 M11 A neg mul def
/NY4 M21 A neg mul def
/NZ4 M31 A neg mul def
@@ -177,7 +268,7 @@
/XC5 M12 B neg mul CX add def
/YC5 M22 B neg mul CY add def
/ZC5 M32 B neg mul CZ add def
-% normale � la face 5
+% normale a la face 5
/NX5 M12 B neg mul def
/NY5 M22 B neg mul def
/NZ5 M32 B neg mul def
@@ -189,7 +280,7 @@
/XC6 M12 B mul CX add def
/YC6 M22 B mul CY add def
/ZC6 M32 B mul CZ add def
-% normale � la face 6
+% normale a la face 6
/NX6 M12 B mul def
/NY6 M22 B mul def
/NZ6 M32 B mul def
@@ -689,7 +780,7 @@
/xD 0 def
/yD 0 def
/zD RayonBaseTetraedre 1.414 mul def
-% coordonn�es centre des faces
+% coordonnées centre des faces
/xFaceA xA xB xC add add 3 div def
/yFaceA yA yB yC add add 3 div def
/zFaceA zA zB zC add add 3 div def
@@ -702,7 +793,7 @@
/xFaceD xD xB xC add add 3 div def
/yFaceD yD yB yC add add 3 div def
/zFaceD zD zB zC add add 3 div def
-% sommets apr�s rotation et translation
+% sommets après rotation et translation
/XA M11 xA mul M12 yA mul add M13 zA mul add CX add def
/YA M21 xA mul M22 yA mul add M23 zA mul add CY add def
/ZA M31 xA mul M32 yA mul add M33 zA mul add CZ add def
@@ -741,7 +832,7 @@
/NxD XFaceD XA sub def
/NyD YFaceD YA sub def
/NzD ZFaceD ZA sub def
-% Conditions de visibilit�
+% Conditions de visibilité
/PSA XFaceA NxA mul YFaceA NyA mul add ZFaceA NzA mul add def
/PSB XFaceB NxB mul YFaceB NyB mul add ZFaceB NzB mul add def
/PSC XFaceC NxC mul YFaceC NyC mul add ZFaceC NzC mul add def
@@ -905,7 +996,7 @@
/xS 0 def
/yS 0 def
/zS Hpyramide def
-% coordonn�es centre des faces
+% coordonnées centre des faces
/Alpha A Hpyramide atan def
/xFaceSAB Hpyramide Alpha dup sin exch cos mul mul def
/yFaceSAB 0 def
@@ -919,7 +1010,7 @@
/xFaceSDA 0 def
/yFaceSDA xFaceSAB neg def
/zFaceSDA zFaceSAB def
-% sommets apr�s rotation et translation
+% sommets après rotation et translation
/XA M11 xA mul M12 yA mul add M13 zA mul add CX add def
/YA M21 xA mul M22 yA mul add M23 zA mul add CY add def
/ZA M31 xA mul M32 yA mul add M33 zA mul add CZ add def
@@ -935,7 +1026,7 @@
/XS M11 xS mul M12 yS mul add M13 zS mul add CX add def
/YS M21 xS mul M22 yS mul add M23 zS mul add CY add def
/ZS M31 xS mul M32 yS mul add M33 zS mul add CZ add def
-% centres de faces apr�s transformations
+% centres de faces après transformations
/XFaceSAB M11 xFaceSAB mul M12 yFaceSAB mul add M13 zFaceSAB mul add CX add def
/YFaceSAB M21 xFaceSAB mul M22 yFaceSAB mul add M23 zFaceSAB mul add CY add def
/ZFaceSAB M31 xFaceSAB mul M32 yFaceSAB mul add M33 zFaceSAB mul add CZ add def
@@ -964,7 +1055,7 @@
/NxABCD CX XS sub def
/NyABCD CY YS sub def
/NzABCD CZ ZS sub def
-% Conditions de visibilit�
+% Conditions de visibilité
/PSAB XFaceSAB NxSAB mul YFaceSAB NySAB mul add ZFaceSAB NzSAB mul add def
/PSBC XFaceSBC NxSBC mul YFaceSBC NySBC mul add ZFaceSBC NzSBC mul add def
/PSCD XFaceSCD NxSCD mul YFaceSCD NySCD mul add ZFaceSCD NzSCD mul add def
@@ -1007,9 +1098,9 @@
%
%
/tx@WARP{
-%% D'apr�s un fichier original de
+%% D'après un fichier original de
%%(c) P. Kleiweg 1997
-%% adapt� par :
+%% adapté par :
%% Manuel Luque
%% Arnaud Schmittbuhl
%% Jean-Paul Vignault
@@ -1055,9 +1146,9 @@
} def
/tx@TransformPlan{ % le calcul des coefficients
-%% pour passer des coordonn�es du plan aux coordonn�es
-%% (x,y,z) du rep�re absolu
-%% les coordonn�es sph�riques du vecteur normal
+%% pour passer des coordonnées du plan aux coordonnées
+%% (x,y,z) du repère absolu
+%% les coordonnées sphériques du vecteur normal
%% au plan
%% l'origine du plan
/zO' exch def
@@ -1070,7 +1161,7 @@
/C22 {K_phi sin K_theta sin mul neg } bind def
/C31 {K_phi cos} bind def
/2dto3d {
-%% coordonn�es dans le rep�re absolu
+%% coordonnées dans le repère absolu
3 dict begin
C11 Xpoint mul C12 Ypoint mul add xO' add % x
C21 Xpoint mul C22 Ypoint mul add yO' add % y
@@ -1078,4 +1169,4 @@
end } def
} def
%
-end
+end
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-mirror/pst-mirror.tex new/tex/generic/pst-mirror/pst-mirror.tex
--- old/tex/generic/pst-mirror/pst-mirror.tex 2009-12-12 02:03:00.000000000 +0100
+++ new/tex/generic/pst-mirror/pst-mirror.tex 2014-02-18 23:50:16.000000000 +0100
@@ -1,4 +1,4 @@
-%% $Id: pst-mirror.tex 168 2009-12-08 17:55:07Z herbert $
+%% $Id: pst-mirror.tex 894 2014-02-18 09:46:21Z herbert $
%%
%% This is file `pst-mirror.tex',
%%
@@ -6,7 +6,7 @@
%%
%% Package `pst-mirror.tex'
%%
-%% MAnuel Luque
+%% Manuel Luque
%% Herbert Voss
%%
%% This program can be redistributed and/or modified under the terms
@@ -17,7 +17,6 @@
%% `pst-mirror' is a PSTricks package to view objects ob a spherical sphere
%%
%%
-%
\csname PSTMirrorLoaded\endcsname
\let\PSTMirrorLoaded\endinput
% Requires PSTricks, pst-xkey and pst-node packages
@@ -26,8 +25,9 @@
\ifx\PSTnodesLoaded\endinput\else\input pst-node \fi
\ifx\MultidoLoaded\endinput \else\input multido.tex \fi
%
-\def\fileversion{1.00}
-\def\filedate{2009/12/08}%
+%\def\fileversion{1.00} CTAN
+\def\fileversion{1.01}
+\def\filedate{2014/02/17}%
\message{`pst-mirror v\fileversion, \filedate\space (ml,hv)}%
%
\edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax
@@ -104,6 +104,7 @@
0 0 translate
/cm { \pst@number\psunit mul } def
/cm_1 { \pst@number\psunit div } def
+ /unit_image {\pst@number\psunit div 10 mul} bind def
%% Caracteres accentues
/ReEncode { exch findfont
dup length dict begin { 1 index /FID eq {pop pop} {def} ifelse
@@ -177,9 +178,9 @@
end } def
}%
-\def\pstTextSphere{\pst@object{pstTextSphere}}
-\def\pstTextSphere@i{\@ifnextchar({\pstTextSphere@ii}{\pstTextSphere@ii(0,0,0)}}
-\def\pstTextSphere@ii(#1,#2,#3)#4{%
+\def\pstSphereText{\pst@object{pstSphereText}}
+\def\pstSphereText@i{\@ifnextchar({\pstSphereText@ii}{\pstSphereText@ii(0,0,0)}}
+\def\pstSphereText@ii(#1,#2,#3)#4{%
\begin@ClosedObj
\addto@pscode{%
\variables@Sphere
@@ -196,7 +197,7 @@
5 dict begin
/Ypoint exch cm_1 y0 add def
/Xpoint exch cm_1 x0 add def
- %% coordonn�es dans le rep�re absolu
+ %% coordonnees dans le repare absolu
2dto3d
/Zpoint exch def
/Ypoint exch def
@@ -205,8 +206,8 @@
3dto2d
end
} bind def
- #1 #2 #3 tx@TransformPlan
- tx@WARP
+ #1 #2 #3 \tx@TransformPlan
+ \tx@WARP
0 0 moveto
warptxt true charpath
10 currentpathsegmenteline
@@ -217,39 +218,37 @@
}%
\end@ClosedObj\ignorespaces}
%
-\def\pstCube{\pst@object{pstCube}}
-\def\pstCube@i{%
+\def\pstSphereCube{\pst@object{pstSphereCube}}
+\def\pstSphereCube@i{%
\pst@killglue
\begin@ClosedObj
\addto@pscode{%
\variables@Sphere
- tx@Sphere3DDict begin
- Cube
- end
+ tx@Sphere3DDict begin Cube end
}% fin du code ps
\end@ClosedObj\ignorespaces}
%
-\def\pstDie{%
- \pstCube
- \begin@ClosedObj
+\def\pstSphereDie{\pst@object{pstSphereDie}}
+\def\pstSphereDie@i{%
+ \pst@killglue
+ \begingroup%
+ \use@par
+ \pstSphereCube
+ \begin@SpecialObj
\addto@pscode{%
\variables@Sphere
- tx@Sphere3DDict begin
- Cube
- PointsDie
- end
+ tx@Sphere3DDict begin Cube PointsDie end
}% fin du code ps
- \end@ClosedObj}
+ \end@SpecialObj%
+ \endgroup\ignorespaces%
+}
%
-\def\pstTetraedre{\pst@object{pstTetraedre}}
-\def\Tetraedre@i{%
+\def\pstSphereTetraedre{\pst@object{pstSphereTetraedre}}
+\def\pstSphereTetraedre@i{%
\pst@killglue
\begin@ClosedObj
\addto@pscode{%
- \variables@Sphere
- tx@Sphere3DDict begin
- Tetraedre
- end
+ \variables@Sphere tx@Sphere3DDict begin Tetraedre end
}% fin du code ps
\end@ClosedObj\ignorespaces}
%
@@ -262,21 +261,13 @@
\begin@SpecialObj
\pnode(!
\variables@Sphere
- /Zcote #3 def
- /Xabscisse #1 def
- /Yordonnee #2 def
+ /Zcote #3 def /Xabscisse #1 def /Yordonnee #2 def
tx@Sphere3DDict begin
FormulesSphere
Xi reduction mul Yi reduction mul
end){#4}
\end@SpecialObj\ignorespaces}
%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% \psSphereLine est
-%% adapt� de la macro \pstThreeDLine du package pst-3dplot (H.Voss)
-%% http://tug.ctan.org/tex-archive/graphics/pstricks/contrib/pst-3dplot
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% 7 juillet 2008
\def\CartesianIIID@coor#1,#2,#3,#4\@nil{\edef\pst@coor{#1 #2 #3 }}
\def\NormalIIIDCoor{%
\def\pst@@getcoor##1{\pst@expandafter\CartesianIIID@coor{##1}, ,\@nil}%
@@ -292,51 +283,49 @@
}
\def\pstSphereLine@ii{%
\addto@pscode{%
- ] /LesPoints exch def
-\variables@Sphere
-tx@Sphere3DDict begin
-/n1 LesPoints length 3 div cvi def % nbre de points
-/i 0 def
-/TableauPoints [
-n1 {
- [ LesPoints i get
- LesPoints i 1 add get
- LesPoints i 2 add get
- ]
- /i i 3 add def
- }repeat
- ] def
+ ]
+ /LesPoints exch def
+ \variables@Sphere
+ tx@Sphere3DDict begin
+ /n1 LesPoints length 3 div cvi def % nbre de points
+ /i 0 def
+ /TableauPoints [
+ n1 {
+ [ LesPoints i get LesPoints i 1 add get LesPoints i 2 add get ]
+ /i i 3 add def
+ } repeat
+ ] def
% Tableau general des points
-/TAB [
-0 1 n1 2 sub {/i ED
- TableauPoints i get aload pop
- /Z1 ED /Y1 ED /X1 ED
- TableauPoints i 1 add get aload pop
- /Z2 ED /Y2 ED /X2 ED
-0 0.01 1.0 { % k
- /K exch def
- [
- /Zcote K Z2 mul 1 K sub Z1 mul add def
- /Xabscisse K X2 mul 1 K sub X1 mul add def
- /Yordonnee K Y2 mul 1 K sub Y1 mul add def
- CalcCoordinates
- ]
+ /TAB [
+ 0 1 n1 2 sub {/i ED
+ TableauPoints i get aload pop
+ /Z1 ED /Y1 ED /X1 ED
+ TableauPoints i 1 add get aload pop
+ /Z2 ED /Y2 ED /X2 ED
+ 0 0.01 1.0 { % k
+ /K exch def
+ [
+ /Zcote K Z2 mul 1 K sub Z1 mul add def
+ /Xabscisse K X2 mul 1 K sub X1 mul add def
+ /Yordonnee K Y2 mul 1 K sub Y1 mul add def
+ CalcCoordinates
+ ]
+ } for
} for
-} for
-] def
-/n2 TAB length def
- TAB 0 get aload pop moveto
-0 1 n2 1 sub {
+ ] def
+ /n2 TAB length def
+ TAB 0 get aload pop moveto
+ 0 1 n2 1 sub {
/compteur exch def
TAB compteur get aload pop
lineto } for
% fin du trac� de la ligne
-end
- }\end@OpenObj%
+ end }%
+ \end@OpenObj%
\ignorespaces%
\SpecialCoor%
}
-
+%
\def\pstSpherePolygon{\NormalIIIDCoor\pst@object{pstSpherePolygon}}
\def\pstSpherePolygon@i{%
\pst@killglue%
@@ -349,17 +338,12 @@
\addto@pscode{%
] /LesPoints exch def
\variables@Sphere
- tx@Sphere3DDict begin
/n1 LesPoints length 3 div cvi def % nbre de points
/i 0 def
/TableauPoints [
- n1 {
- [ LesPoints i get
- LesPoints i 1 add get
- LesPoints i 2 add get
- ]
+ n1 { [ LesPoints i get LesPoints i 1 add get LesPoints i 2 add get ]
/i i 3 add def
- }repeat
+ } repeat
] def
% Tableau general des points
/TAB [
@@ -373,7 +357,7 @@
[ /Zcote K Z2 mul 1 K sub Z1 mul add def
/Xabscisse K X2 mul 1 K sub X1 mul add def
/Yordonnee K Y2 mul 1 K sub Y1 mul add def
- CalcCoordinates ]
+ tx@Sphere3DDict begin CalcCoordinates end ]
} for
} for
] def
@@ -386,7 +370,6 @@
lineto
} for
closepath
- end
}%
\end@ClosedObj%
\ignorespaces%
@@ -1289,8 +1272,8 @@
}% fin du code ps
\end@ClosedObj}\ignorespaces}
%
-\def\pstPyramide{\pst@object{pstPyramide}}
-\def\pstPyramide@i{%
+\def\pstSpherePyramide{\pst@object{pstSpherePyramide}}
+\def\pstSpherePyramide@i{%
\begin@SpecialObj
\pstFaceSAB[fillcolor=\psk@Sphere@TetraedreColorFaceA]%
\pstFaceSBC[fillcolor=\psk@Sphere@TetraedreColorFaceB]%
@@ -1299,6 +1282,242 @@
\pstFaceABCD[fillcolor=\psk@Sphere@TetraedreColorFaceE]%
\end@SpecialObj}
%
+%% === Chemin pour les dessins ---------------------------------------------
+\define@key[psset]{pst-mirror}{path}{\edef\psk@mirror@Path{#1}} % chemin des dessins
+\psset{path=}
+%
+%%%% ajout le 28/10/2011 --------------------------------------
+\def\pstSphereImage{\def\pst@par{}\pst@object{pstSphereImage}}
+\def\pstSphereImage@i{\@ifnextchar({\pstSphereImage@ii}{\pstSphereImage@ii(0,0,0)}}
+\def\pstSphereImage@ii(#1,#2,#3)#4{{%
+ \begin@SpecialObj
+ \addto@pscode{%
+ \variables@Sphere
+ #1 %
+ #2 %
+ #3 %
+\tx@TransformPlan
+/fichier (\psk@mirror@Path#4) def
+\ifPst@visibility /Condition { gt } def \else /Condition { le } def \fi
+ gsave
+ /showpage {} def
+ tx@Sphere3DImageDict begin
+ fichier run
+ end
+ grestore
+ }%
+ \end@SpecialObj}%
+ \ignorespaces}
+%
+\def\psparametricplotSphere{\pst@object{parametricplotSphere}}%
+\def\parametricplotSphere{\pst@object{parametricplotSphere}}
+\def\parametricplotSphere@i#1#2{\@ifnextchar[{\parametricplotSphere@x{#1}{#2}}{\parametricplotSphere@x{#1}{#2}[]}}
+\def\parametricplotSphere@x#1#2[#3]{\@ifnextchar[{\parametricplotSphere@xi{#1}{#2}[#3]}{\parametricplotSphere@xi{#1}{#2}[#3][]}}
+\def\parametricplotSphere@xi#1#2[#3][#4]#5{%
+ \pst@killglue%
+ \begingroup%
+ \use@par%
+ \@nameuse{beginplot@\psplotstyle}%
+ \addto@pscode{%
+ \variables@Sphere
+ \psk@Sphere@Xorigine\space
+ \psk@Sphere@Yorigine\space
+ \psk@Sphere@Zorigine\space
+ \tx@TransformPlan
+ #3 %prefix PS code
+ \psplot@init
+ /t #1 def
+ /t1 #2 def
+ /dt t1 t sub \psk@plotpoints div def
+ /F@pstplot \ifPst@algebraic (#5)
+ \ifx\psk@PlotDerivative\@none\else
+ \psk@PlotDerivative\space { (t) tx@Derive begin Derive end } repeat
+ \fi\space
+ tx@AlgToPs begin AlgToPs end cvx
+ \else { #5 } \fi def
+ \ifPst@VarStep
+ /StillZero 0 def /LastNonZeroStep dt def
+ /F2@pstplot tx@Derive begin (#5) (t) Derive (t) Derive end
+ \ifx\psk@PlotDerivative\@none\else
+ \psk@PlotDerivative\space { (t) tx@Derive begin Derive end } repeat
+ \fi\space
+ tx@AlgToPs begin AlgToPs end cvx def
+ %% computation of the tolerance defined by plotpoints
+ /epsilon12 \ifx\psk@VarStepEpsilon\@default
+ tx@Derive begin F2@pstplot end Pyth
+ dt 3 exp abs mul
+ \else\psk@VarStepEpsilon\space 12 mul \fi def
+ /ComputeStep {
+ dup 1e-4 lt
+ { pop StillZero 2 ge { LastNonZeroStep 2 mul } { LastNonZeroStep } ifelse /StillZero StillZero 1 add def }
+ { epsilon12 exch div 1 3 div exp /StillZero 0 def }
+ ifelse } bind def
+ \fi
+ /xy {
+ \ifPst@algebraic F@pstplot \else #5 \fi
+% \pst@number\psyunit mul exch
+% \pst@number\psxunit mul exch
+ /Ypoint exch def /Xpoint exch def
+% tx@mirror3DDict begin
+ 2dto3d
+ /Zpoint exch def
+ /Ypoint exch def
+ /Xpoint exch def
+ CalculsPointsApresTransformations
+ 3dto2d
+% end
+ } def
+ }%
+ \gdef\psplot@init{}%
+ \@pstfalse
+ \@nameuse{testqp@\psplotstyle}%
+ \if@pst\parametricplotSphere@ii{#4}\else\parametricplotSphere@iii{#4}\fi
+ \endgroup%
+ \ignorespaces}
+%
+\def\parametricplotSphere@ii#1{% para is the post code
+ \ifPst@VarStep%
+ \addto@pscode{%
+ mark xy \@nameuse{beginqp@\psplotstyle}
+ { F2@pstplot Pyth ComputeStep
+ t 2 copy add dup t1 gt {pop t1} if /t exch def F2@pstplot Pyth ComputeStep
+ /t 3 -1 roll def 2 copy gt { exch } if pop
+ /t t 3 -1 roll add dup t1 gt {pop t1} if def
+ xy \@nameuse{doqp@\psplotstyle}
+ t t1 eq { exit } if } loop}%
+ \else\pst@killglue%
+ \addto@pscode{%
+ /ps@Exit false def
+ xy \@nameuse{beginqp@\psplotstyle}
+ \psk@plotpoints 1 sub {
+ /t t dt add def
+ xy \@nameuse{doqp@\psplotstyle}
+ ps@Exit { exit } if
+ } repeat
+ ps@Exit not {
+ /t t1 def
+ xy \@nameuse{doqp@\psplotstyle}
+ } if
+ }%
+ \fi%
+ \addto@pscode{ #1 }%
+ \@nameuse{endqp@\psplotstyle}}
+%
+\def\parametricplotSphere@iii#1{%
+ \ifPst@VarStep%
+ \addto@pscode{%
+ /n 2 def
+ mark
+ { xy n 2 roll F2@pstplot Pyth
+ ComputeStep t 2 copy add dup t1 gt {pop t1} if
+ /t exch def F2@pstplot Pyth ComputeStep
+ /t 3 -1 roll def 2 copy gt { exch } if pop
+ /t t 3 -1 roll dup /LastNonZeroStep exch def add dup t1 gt {pop t1} if def /n n 2 add def
+ t t1 eq { exit } if } loop
+ xy n 2 roll}%
+ \else\pst@killglue%
+ \addto@pscode{
+ mark
+ /n 2 def
+ \psk@plotpoints {
+ xy
+ n 2 roll
+ /n n 2 add def
+ /t t dt add def
+ } repeat
+ /t t1 def
+ xy
+ n 2 roll}%
+ \fi%
+ \addto@pscode{ #1 }%
+ \@nameuse{endplot@\psplotstyle}}
+%
+\pst@def{WARP}<%
+%% D'apr�s un fichier original de
+%%(c) P. Kleiweg 1997
+%% adapt� par :
+%% Manuel Luque
+%% Arnaud Schmittbuhl
+%% Jean-Paul Vignault
+%% les commentaires sont de Jean-Paul Vignault
+/warpmove{
+ %% on teste le booleen place 2 tokens plus en avant sur la pile
+ %% si c'est 'true', alors on en est au 1er appel => on initialise
+ %% le chemin
+ 2 index {
+ newpath
+ } if
+ %% puis on applique warp a notre point
+ warp moveto
+ %% on enleve le 'true' pour mettre un 'false' a la place
+ pop false
+} bind def
+%% pour remplacer 'lineto
+/warpline {
+ warp lineto
+} bind def
+%% pour remplacer 'curveto'
+/warpcurve {
+ 6 2 roll warp
+ 6 2 roll warp
+ 6 2 roll warp
+ curveto
+} bind def
+%% 'warpit' declenche la transformation du chemin courant
+/warpit {
+true
+{ warpmove } { warpline } { warpcurve } { closepath } pathforall
+pop
+} bind def
+>%
+
+\pst@def{PathForAll}<%
+/warp {
+4 dict begin
+ /Ypoint exch def %
+ /Xpoint exch def %
+%% coordonn�es dans le rep�re absolu
+ 2dto3d
+ /Zpoint exch def
+ /Ypoint exch def
+ /Xpoint exch def
+ CalculsPointsApresTransformations
+%% les coordonn�es sur l'�cran dans la repr�sentation en perspective
+ 3dto2d
+end
+} bind def
+\tx@WARP
+%% maintenant on y va
+% 0 0 moveto
+ warpit %% on applique le pathforall
+ >%
+
+\pst@def{TransformPlan}< % le calcul des coefficients
+%% pour passer des coordonn�es du plan aux coordonn�es
+%% (x,y,z) du rep�re absolu
+%% les coordonn�es sph�riques du vecteur normal
+%% au plan
+%% l'origine du plan
+/zO' exch def
+/yO' exch def
+/xO' exch def
+%% les coefficients de la matrice de transformation
+/C11 {K_theta sin neg} def
+/C12 {K_theta cos K_phi sin mul neg} bind def
+/C21 {K_theta cos} bind def
+/C22 {K_phi sin K_theta sin mul neg } bind def
+/C31 {K_phi cos} bind def
+/2dto3d{
+%% coordonn�es dans le rep�re absolu
+3 dict begin
+ C11 Xpoint mul C12 Ypoint mul add xO' add % x
+ C21 Xpoint mul C22 Ypoint mul add yO' add % y
+ C31 Ypoint mul zO' add
+end }
+ def
+ >%
+
+%
\catcode`\@=\PstAtCode\relax
%% END: pst-mirror.tex
\endinput
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pst-mirror/pst-mirror.sty new/tex/latex/pst-mirror/pst-mirror.sty
--- old/tex/latex/pst-mirror/pst-mirror.sty 2009-12-12 02:03:00.000000000 +0100
+++ new/tex/latex/pst-mirror/pst-mirror.sty 2014-02-18 23:50:16.000000000 +0100
@@ -1,12 +1,12 @@
-%% $Id: pst-mirror.sty 168 2009-12-08 17:55:07Z herbert $
+%% $Id: pst-mirror.sty 894 2014-02-18 09:46:21Z herbert $
\RequirePackage{pstricks}
-\ProvidesPackage{pst-mirror}[2009/12/08 package wrapper for
+\ProvidesPackage{pst-mirror}[2014/02/17 package wrapper for
pst-mirror.tex (hv)]
\input{pst-mirror.tex}
\ProvidesFile{pst-mirror.tex}
[\filedate\space v\fileversion\space `pst-mirror' (ml,hv)]
\IfFileExists{pst-mirror.pro}{%
- \ProvidesFile{pst-mirror.pro}[2009/12/08 v. 1.0, PostScript prologue file]
+ \ProvidesFile{pst-mirror.pro}[2014/02/17 v. 1.1, PostScript prologue file]
\@addtofilelist{pst-mirror.pro}}{}%
\endinput
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-mirror.tlpobj new/tlpkg/tlpobj/pst-mirror.tlpobj
--- old/tlpkg/tlpobj/pst-mirror.tlpobj 2010-06-10 18:43:08.000000000 +0200
+++ new/tlpkg/tlpobj/pst-mirror.tlpobj 2014-02-19 03:23:18.000000000 +0100
@@ -1,16 +1,16 @@
name pst-mirror
category Package
-revision 16370
+revision 32997
shortdesc Images on a spherical mirror.
relocated 1
longdesc The package provides commands and supporting PostScript
longdesc material for drawing images as if reflected by a spherical
longdesc mirror.
-runfiles size=19
+runfiles size=21
RELOC/dvips/pst-mirror/pst-mirror.pro
RELOC/tex/generic/pst-mirror/pst-mirror.tex
RELOC/tex/latex/pst-mirror/pst-mirror.sty
catalogue-ctan /graphics/pstricks/contrib/pst-mirror
-catalogue-date 2009-12-14 16:47:24 +0100
+catalogue-date 2014-02-18 11:43:45 +0100
catalogue-license lppl
-catalogue-version 1.00
+catalogue-version 1.01
++++++ pst-node.doc.tar.xz ++++++
++++ 3262 lines of diff (skipped)
++++++ pst-node.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pst-node/pst-node.pro new/dvips/pst-node/pst-node.pro
--- old/dvips/pst-node/pst-node.pro 2013-04-09 18:33:31.000000000 +0200
+++ new/dvips/pst-node/pst-node.pro 2014-02-07 00:24:08.000000000 +0100
@@ -1,17 +1,20 @@
-% $Id: pst-node.pro 765 2013-04-09 15:32:28Z herbert $
+% $Id: pst-node.pro 876 2014-01-28 15:03:13Z herbert $
%%
%% PostScript prologue for pst-node.tex.
-%% Version 1.14, 2012/09/18.
+%% Version 1.15, 2014/01/27.
%%
%% 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.
%
+%%%% EMPTY lines are not aload!!! Problem with pst-eps -> \par
+%
+%
tx@Dict begin % from main pstricks dict
/T /translate load def
/CP /currentpoint load def
- /startGlobal { true setglobal globaldict begin } bind def
- /endGlobal { end false setglobal } bind def
+% /startGlobal { true setglobal globaldict begin } bind def
+% /endGlobal { end false setglobal } bind def
end
/tx@NodeDict 400 dict def tx@NodeDict begin
/NewNode { % on stack: { x y } boolean N@name type InitXnode
@@ -207,15 +210,26 @@
%
/HPosBegin { yB yA ge { /t 1 t sub def } if /Y yB yA sub t mul yA add def
} def
+%
/HPosEnd { /X Y yyA sub yyB yyA sub Div xxB xxA sub mul xxA add def
-/NAngle yyB yyA sub xxB xxA sub Atan def } def
+ /NAngle yyB yyA sub xxB xxA sub Atan def
+} def
/HPutLine { HPosBegin /yyA ED /xxA ED /yyB ED /xxB ED HPosEnd } def
-/HPutLines { HPosBegin yB yA ge { /check { le } def } { /check { ge } def
-} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { dup Y check { exit
-} { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark HPosEnd
+%
+/HPutLines { HPosBegin yB yA ge
+ { /check { le } def } { /check { ge } def } ifelse
+ /xxA xA def
+ /yyA yA def
+ mark xB yB LPutVar
+ { dup Y check { exit } { /yyA ED /xxA ED } ifelse }
+ loop
+ /yyB ED /xxB ED cleartomark HPosEnd
} def
-/VPosBegin { xB xA lt { /t 1 t sub def } if /X xB xA sub t mul xA add def
+%
+/VPosBegin {
+ xB xA lt { /t 1 t sub def } if /X xB xA sub t mul xA add def
} def
+%
/VPosEnd { /Y X xxA sub xxB xxA sub Div yyB yyA sub mul yyA add def
/NAngle yyB yyA sub xxB xxA sub Atan def } def
/VPutLine { VPosBegin /yyA ED /xxA ED /yyB ED /xxB ED VPosEnd } def
@@ -225,8 +239,9 @@
VPosEnd } def
/HPutCurve { gsave newpath /SaveLPutVar /LPutVar load def LPutVar 8 -2
roll moveto curveto flattenpath /LPutVar [ {} {} {} {} pathforall ] cvx
-def grestore exec /LPutVar /SaveLPutVar load def } def
-
+def grestore exec /LPutVar /SaveLPutVar load def
+} def
+%
/NCCoor {
/AngleA yB yA sub xB xA sub Atan def
/AngleB AngleA 180 add def
@@ -592,4 +607,4 @@
%
end
%
-% END pst-node.pro
+% END pst-node.pro
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-node/pst-node.tex new/tex/generic/pst-node/pst-node.tex
--- old/tex/generic/pst-node/pst-node.tex 2013-04-14 00:58:53.000000000 +0200
+++ new/tex/generic/pst-node/pst-node.tex 2014-03-28 00:32:23.000000000 +0100
@@ -1,4 +1,4 @@
-% $Id: pst-node.tex 765 2013-04-09 15:32:28Z herbert $
+% $Id: pst-node.tex 898 2014-03-25 20:52:31Z herbert $
%% BEGIN pst-node.tex
%%
%% Nodes with PSTricks.
@@ -6,7 +6,7 @@
%% This uses the header file `pst-node.pro'.
%%
%% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu.
-%% COPYRIGHT 2009-2013 by Herbert Voss, hvoss tug.org.
+%% COPYRIGHT 2009-2014 by Herbert Voss, hvoss tug.org.
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
@@ -18,8 +18,8 @@
\ifx\PSTricksLoaded\endinput\else\input pstricks.tex \fi\relax
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi
%
-\def\fileversion{1.27}
-\def\filedate{2013/04/12}
+\def\fileversion{1.33}
+\def\filedate{2014/03/25}
\message{ v\fileversion, \filedate}
%
\edef\TheAtCode{\the\catcode`\@}
@@ -30,10 +30,12 @@
%
\SpecialCoor
%
-%%%%%%%%%% compytibility stuff
+%%%%%%%%%% compatibility stuff
\define@boolkey[psset]{pst-node}[Pst@]{trueAngle}[true]{}
\psset[pst-node]{trueAngle=false}
-%%%%%%%%%% compytibility stuff
+%%%%%%%%%% compatibility stuff
+\define@boolkey[psset]{pst-node}[Pst@]{storeNodeInfo}[true]{}
+\psset[pst-node]{storeNodeInfo=false}
%
\def\pst@nodedict{tx@NodeDict begin }
\def\pst@zapspace#1 #2{%
@@ -55,8 +57,16 @@
% bug fix for xelatex, dvipdfmx uses the wrong scaling
\def\tx@NewNode{/NodeScale {\ifx\pstnodescale\@undefined \else\pstnodescale \fi} def NewNode }
%
+\define@boolkey[psset]{pst-node}[Pst@]{showNode}[true]{}% write coors into the logfile
+\define@boolkey[psset]{pst-node}[Pst@]{markNode}[true]{}% makr the node with its name
\define@boolkey[psset]{pst-node}[Pst@]{saveNodeCoors}[true]{}
-\psset[pst-node]{saveNodeCoors=false}
+\define@key[psset]{pst-node}{NodeCoorPrefix}[]{\def\psk@NodeCoorPrefix{#1}}% if empty it is N-<Name>.x|y
+\psset[pst-node]{saveNodeCoors=false,showNode=false,markNode=false,NodeCoorPrefix=}%
+%
+\def\psopenNodeFile{\pstVerb{ tx@NodeDict begin %/NodeFile {
+ (\jobname.nodes)(w) file %} def
+ end }}
+\def\pscloseNodeFile{\pstVerb{ tx@NodeDict begin currentfile closefile end }}
%
\def\pst@newnode#1#2#3#4{%
\pst@killglue
@@ -64,11 +74,14 @@
\pst@getnode{#1}\pst@thenode
\pst@Verb{
\ifPst@saveNodeCoors
- \ifx\relax#3\relax 0 0 \else #3 \tx@UserCoor \fi
-% startGlobal
- /N-#1.y\space exch def
- /N-#1.x\space exch def
-% endGlobal
+ \ifx\relax#3\relax 0 0 \else gsave \pst@dict STV CP T end #3 \tx@UserCoor grestore \fi
+ \if$\psk@NodeCoorPrefix$
+ /N-#1.y exch def
+ /N-#1.x exch def
+ \else
+ /\psk@NodeCoorPrefix#1y exch def
+ /\psk@NodeCoorPrefix#1x exch def
+ \fi
\fi
\pst@nodedict
{#3}
@@ -76,8 +89,23 @@
\pst@thenode
#2
{#4}
+ \ifPst@showNode
+ 5 copy
+ cvlit aload pop
+ 20 string cvs (; ) 6 2 roll % InitPnode
+ 20 string cvs (; ) 7 2 roll % type
+ 20 string cvs (; ) 8 2 roll %/N@Name
+ 20 string cvs (; ) 9 2 roll % true/false
+ cvlit aload pop exch
+ 20 string cvs (; ) 11 2 roll
+ 20 string cvs (, ) 12 2 roll % x,y
+ 12 array astore concatstringarray
+ currentfile exch writestring
+% NodeFile exch writestring
+ \fi
\tx@NewNode
- end }%
+ end
+}%
%
\global\let\psk@name\relax%
\pstree@nodehook%
@@ -101,15 +129,25 @@
\pst@getcoor{#2}\pst@tempB%
\pst@newnode{#3}{10}{%
\pst@tempA \pst@tempB 3 -1 roll add 3 1 roll add exch }{\tx@InitPnode}%
+ \ifPst@showNode\psdot(#3)\uput[\ifx\psk@rot\@empty0\else\psk@rot\fi]{0}(#3){#3}\fi
\ignorespaces}
%
\def\pnode@iii{\@ifnextchar({\pnode@}{\pnode@(0,0)}}
\def\pnode@(#1)#2{%
\pst@@getcoor{#1}%
\pst@newnode{#2}{10}{\pst@coor}{\tx@InitPnode}%
+ \ifPst@showNode\psdot(#2)\uput[\ifx\psk@rot\@empty0\else\psk@rot\fi]{0}(#2){#2}\fi
\ignorespaces}
%
+\def\pnodes{\@ifnextchar[{\pnodes@i}{\pnodes@i[0,0]}}
+\def\pnodes@i[#1]{\@ifnextchar({\psnodes@ii[#1]}{\pnodes@ii}}
+\def\psnodes@ii[#1](#2)#3{%
+ \pnode[#1](#2){#3}%
+ \@ifnextchar({\psnodes@ii[#1]}{}%
+}
+%
\def\tx@InitCnode{InitCnode }
+%
\def\cnode{\pst@object{cnode}}
\def\cnode@i{\@ifnextchar({\cnode@ii}{\cnode@ii(0,0)}}
\def\cnode@ii(#1)#2#3{%
@@ -168,6 +206,7 @@
\pst@number\pst@dimb \pst@number\pslinewidth \psk@dimen .5 sub mul sub }% r
{\tx@InitCnode}%
\global\let\pst@nodehook\relax}
+%
\def\circlenode{\pst@object{circlenode}}
\def\circlenode@i#1{\pst@makebox{\circlenode@ii{#1}}}
\def\circlenode@ii#1{%
@@ -183,6 +222,7 @@
\ifPst@nodealign\pst@nodealign\fi
\box\pst@hbox
\endgroup}
+%
\def\Circlenode{\pst@object{Circlenode}}
\def\Circlenode@i#1{\pst@makebox{\Circlenode@ii{#1}}}
\def\Circlenode@ii#1{%
@@ -208,8 +248,7 @@
\def\psnode{\pst@object{psnode}}
\def\psnode@i{\@ifnextchar(\psnode@ii{\psnode@ii(0,0)}}
\def\psnode@ii(#1)#2#3{% #1: coordinates, #2: node name, #3 contents
- \rput(#1){\rnode{#2}{#3}}%
-}
+ \rput(#1){\rnode{#2}{#3}}}
%
\def\rnode{\@ifnextchar[{\rnode@i}{\def\pst@par{}\rnode@ii}}
\def\rnode@i[#1]{\def\pst@par{ref=#1}\rnode@ii}
@@ -286,6 +325,7 @@
\ifPst@nodealign\lower\pst@dimb\fi
\box\pst@hbox
\endgroup}
+%
\def\tx@TriNodePos{TriNodePos }
\def\tx@InitTriNode{InitTriNode }
%
@@ -349,17 +389,17 @@
\def\dotnode{\pst@object{dotnode}}
\def\dotnode@i{\@ifnextchar({\dotnode@ii}{\dotnode@ii(\z@,\z@)}}
\def\dotnode@ii(#1)#2{%
- \leavevmode%
+ \leavevmode
\hbox{%
- \use@par%
+ \use@par
\pst@@getcoor{#1}%
- \pst@getdotsize%
- \pstree@nodehook%
- \ifPst@nodealign%
- \pst@dima=\pst@dimg%
- \kern\pst@dima%
- \vrule width\z@ height \pst@dimh depth \pst@dimh%
- \fi%
+ \pst@getdotsize
+ \pstree@nodehook
+ \ifPst@nodealign
+ \pst@dima=\pst@dimg
+ \kern\pst@dima
+ \vrule width\z@ height \pst@dimh depth \pst@dimh
+ \fi
\pst@newnode{#2}{14}{}{
\pst@coor
/Y exch def /X exch def
@@ -368,8 +408,15 @@
/NodePos { \tx@OvalNodePos } def}%
\psdot@ii(#1)%
\ifPst@nodealign\kern\pst@dima\fi}%
+ \ifPst@markNode\uput[\ifx\psk@rot\@empty0\else\psk@rot\fi]{0}(#2){#2}\fi
\ignorespaces}
%
+\def\dotnodes{\pst@object{dotnodes}}
+\def\dotnodes@i{\use@par\dotnodes@ii}
+\def\dotnodes@ii(#1)#2{%
+ \dotnode(#1){#2}%
+ \@ifnextchar(\dotnodes@ii{\def\pst@par{}}}
+%
\define@key[psset]{pst-node}{framesize}{\pst@expandafter\psset@@framesize{#1} \@nil}
\def\psset@@framesize#1 #2\@nil{%
\pssetlength\pst@dimg{#1}%
@@ -492,7 +539,7 @@
\psset[pst-node]{offset=0pt}
\define@key[psset]{pst-node}{angleA}[0]{\pst@getangle{#1}\psk@angleA}
\define@key[psset]{pst-node}{angleB}[0]{\pst@getangle{#1}\psk@angleB}%
-\define@key[psset]{pst-node}{angle}[0pt]{%
+\define@key[psset]{pst-node}{angle}[0]{%
\pst@getangle{#1}\psk@angleA
\let\psk@angleB\psk@angleA}
\psset[pst-node]{angle=0}
@@ -1005,7 +1052,7 @@
\def\Bput{\def\pst@par{}\pst@ifstar{\@ifnextchar[{\Bput@i}{\nbput@i}}}
\def\Bput@i[#1]{\addto@par{labelsep=#1}\nbput@i}
%
-\def\node@coor#1;#2\@nil{%
+\def\node@coor#1;#2\@nil{% for normal nodes (name)
\pst@getnode{#1}\pst@tempg
\edef\pst@coor{%
\pst@nodedict
@@ -1014,10 +1061,11 @@
\pslbrace 0 0 \psrbrace ifelse
end }}
%
-\def\Node@coor[#1]#2;#3\@nil{%
+\def\Node@coor[#1]#2;#3\@nil{% for special nodes ([...]{node}node)
\begingroup
-\psset{#1}%
-\@ifnextchar\bgroup{\Node@@@coor}{\Node@@coor}#2\@nil
+\psset{angle=0,#1}% angle=0, to prevent problems if angle is set globally
+\@ifnextchar\bgroup{\Node@@@coor}% we have an additional node [...]{node}
+ {\Node@@coor}#2\@nil% we have [...]node
\endgroup
\let\pst@coor\pst@tempg}
%
@@ -1026,19 +1074,19 @@
\xdef\pst@tempg{%
\pst@nodedict
tx@NodeDict \pst@tempg known
-{ \psk@nodesepA \psk@angleA
-\pst@tempg load \psk@nodeseptypeA \tx@GetEdge
-\psk@offsetA \psk@angleA \tx@AddOffset
-\pst@tempg load \tx@GetCenter
-3 -1 roll add 3 1 roll add exch }
-{ CP }
-ifelse
-end }}%
-\def\Node@@@coor#1{%
+ { \psk@nodesepA \psk@angleA
+ \pst@tempg load \psk@nodeseptypeA \tx@GetEdge
+ \psk@offsetA \psk@angleA \tx@AddOffset
+ \pst@tempg load \tx@GetCenter
+ 3 -1 roll add 3 1 roll add exch }
+ { CP } ifelse end }}
+%
+\def\Node@@@coor#1{% [...]{#1}node
\pst@@getcoor{#1}%
\def\psk@angleA{%
-\pst@tempg load \tx@GetCenter \pst@coor
-3 -1 roll sub 3 1 roll sub neg \tx@Atan}%
+ \pst@tempg load \tx@GetCenter \pst@coor
+ 3 -1 roll sub 3 1 roll sub neg \tx@Atan \psk@angleB add
+ }%
\Node@@coor}
%
\def\nput{\pst@object{nput}}
@@ -1469,7 +1517,7 @@
%
\def\nodexn#1#2{%
%#1=node expression | #2=node name
-\hasparen#1(\@nil%
+\expandafter\hasparen#1(\@nil%%% hv 20130917 use \expandafter
\if@paren%it's an expression
\pnode(0,0){@TMP0}%
\pst@argcnt=0%
@@ -1539,7 +1587,7 @@
\pst@cntc=\pst@cnta %
\advance\pst@cntc by 1 \relax %=plotpoints
\ifPst@algebraic
- \multido{\i=0+1}{\pst@cntc}{\pnode(*\pst@number\pst@dima\space {#3}){#4\i}%
+ \multido{\i=0+1}{\pst@cntc}{\pnode(*{\pst@number\pst@dima} {#3}){#4\i}% hv 20130713
\advance\pst@dima \pst@dimb}%
\else
\multido{\i=0+1}{\pst@cntc}{\pnode(!/x \pst@number\pst@dima\space def x #3){#4\i}%
@@ -1607,7 +1655,7 @@
% Use to construct a sequence of nodes
% Eg, \pnodes{P}(0,1)(2;5)(3,4) defines nodes P0, P1, P2 with respective locations
% and a macro \Pnodecount containing the highest index created
-\def\pnodes#1{\getnodelist{#1}{}}
+\def\pnodes@ii#1{\getnodelist{#1}{}}
%
\def\getnodelist#1#2{%
\pst@args=0 \relax%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-node/pst-node97.tex new/tex/generic/pst-node/pst-node97.tex
--- old/tex/generic/pst-node/pst-node97.tex 1970-01-01 01:00:00.000000000 +0100
+++ new/tex/generic/pst-node/pst-node97.tex 2013-09-19 00:21:57.000000000 +0200
@@ -0,0 +1,390 @@
+%% BEGIN: pst-node.tex
+%% Generated on <1993/3/12> from `pst-node.doc'.
+%% For use with the PostScript header file `pst-node.pro'.
+%%
+\def\fileversion{0.93a}
+\def\filedate{93/03/12}
+%%
+%% pst-node.tex: Node macros for PSTricks.
+%% See the PSTricks read-me file and the User's Guide for documentation.
+%%
+%% COPYRIGHT 1993, by Timothy Van Zandt, tvz@Princeton.EDU
+%%
+%% Copying of part or all of any file in the pstricks.tex package
+%% is allowed under the following conditions only:
+%% (1) You may freely distribute unchanged copies of the files. Please
+%% include the documentation when you do so.
+%% (2) You may modify a renamed copy of any file, but only for personal
+%% use or use within an organization.
+%% (3) You may copy fragments from the files, for personal use or for use
+%% in a macro package for distribution, as long as credit is given
+%% where credit is due.
+%%
+%% You are NOT ALLOWED to take money for the distribution or use of
+%% these files or modified versions or fragments thereof, except for
+%% a nominal charge for copying etc.
+%%
+\csname PSTnodesLoaded\endcsname
+\let\PSTnodesLoaded\endinput
+\ifx\PSTricksLoaded\endinput\else
+\def\next{\input pstricks.tex}\expandafter\next
+\fi
+\edef\TheAtCode{\the\catcode`\@}
+\catcode`\@=11
+\pstheader{pst-node.pro}
+\def\pst@nodedict{tx@NodeDict begin }
+\def\pst@getnode#1#2{%
+\pst@expandafter\pst@@getnode{#1} * \@nil{#1}#2}
+\def\pst@@getnode#1#2 #3\@nil#4#5{%
+\ifcat#1a\relax
+\def#5{/TheNode#1#2 }%
+\else
+\def#5{/BadNode }%
+\@pstrickserr{Bad node name: `#4'}\@ehpa
+\fi}
+\def\tx@NewNode{NewNode }
+\def\pst@newnode#1#2#3#4{%
+\leavevmode
+\pst@getnode{#1}\pst@thenode
+\pst@Verb{%
+\pst@nodedict
+{ #3 } \pst@thenode #2 { #4 } \tx@NewNode
+end}}
+\def\tx@InitPnode{InitPnode }
+\def\pnode{\@ifnextchar({\pnode@}{\pnode@(0,0)}}
+\def\pnode@(#1)#2{%
+\pst@@getcoor{#1}%
+\pst@newnode{#2}{10}{\pst@coor}{\tx@InitPnode}%
+\ignorespaces}
+\def\tx@InitCnode{InitCnode }
+\def\cnode{\def\pst@par{}\pst@object{cnode}}
+\def\cnode@i{\@ifnextchar({\cnode@ii}{\cnode@ii(0,0)}}
+\def\cnode@ii(#1)#2#3{%
+\begingroup
+\use@par
+\pscircle@do(#1){#2}%
+\pst@@getcoor{#1}%
+\pssetlength\pst@dimc{#2}%
+\pst@newnode{#3}{11}{%
+\pst@coor
+\pst@number\pst@dimc
+\pst@number\pslinewidth
+\psk@dimen .5 sub mul sub}%
+{\tx@InitCnode}%
+\endgroup
+\ignorespaces}
+\def\cnodeput{\def\pst@par{}\pst@object{cnodeput}}
+\def\cnodeput@i{%
+\begingroup
+\pst@killglue
+\leavevmode
+\pst@getrputrot
+\cnodeput@ii}
+\def\cnodeput@ii(#1)#2{%
+\pst@makebox{\cput@iii{\cnodeput@iii{#2}}(#1)}}
+\def\cnodeput@iii#1{%
+\pst@newnode{#1}{11}{\pscirclebox@iv \pst@number\pslinewidth add}%
+{\tx@InitCnode}}
+\def\circlenode{\def\pst@par{}\pst@object{circlenode}}
+\def\circlenode@i#1{\pst@makebox{\pscirclebox@ii{\cnodeput@iii{#1}}}}
+\def\tx@GetRnodePos{GetRnodePos }
+\def\tx@InitRnode{InitRnode }
+\def\rnode{\begingroup\pst@getref\rnode@}
+\def\rnode@#1{\pst@makebox{\rnode@@{#1}}}
+\def\rnode@@#1{%
+\ifx\refpoint@x\relax
+\def\refpoint@y{.5}%
+\def\refpoint@x{.5}%
+\fi
+\pst@newnode{#1}{16}{}{%
+\ifx\refpoint@x\relax .5 \else \refpoint@y\space \fi
+\pst@number{\ht\pst@hbox}%
+\pst@number{\dp\pst@hbox}%
+\ifx\refpoint@y\@empty true \else false \fi
+\refpoint@x\space
+\pst@number{\wd\pst@hbox}%
+\tx@InitRnode}%
+\box\pst@hbox
+\endgroup}
+\def\tx@InitRNode{InitRNode }
+\def\Rnode{\@ifnextchar({\Rnode@}{\Rnode@(\RnodeRef)}}
+\def\Rnode@(#1)#2{\pst@makebox{\Rnode@@(#1){#2}}}
+\def\Rnode@@(#1)#2{%
+\begingroup
+\pst@@getcoor{#1}%
+\pst@newnode{#2}{16}{%
+\pst@number{\ht\pst@hbox}\pst@number{\dp\pst@hbox}%
+\pst@number{\wd\pst@hbox}\pst@coor}{\tx@InitRNode}%
+\box\pst@hbox
+\endgroup}
+\def\RnodeRef{0,.7ex}
+\def\tx@GetOnodePos{GetOnodePos }
+\def\ovalnode{\def\pst@par{}\pst@object{ovalnode}}
+\def\ovalnode@i#1{\pst@makebox{\psovalbox@ii{\ovalnode@ii{#1}}}}
+\def\ovalnode@ii#1{%
+\pst@newnode{#1}{14}{}{%
+/X \pst@number{\wd\pst@hbox}2 div def
+/Y \pst@number\pst@dimg 2 div \pst@number{\dp\pst@hbox}sub def
+/w \pst@number\pst@dima def
+/h \pst@number\pst@dimb def
+/NodePos { \tx@GetOnodePos } def}}
+\def\tx@GetCenter{GetCenter }
+\def\tx@GetAngle{GetAngle }
+\def\tx@GetEdge{GetEdge }
+\def\tx@GetPos{GetPos }
+\def\check@arrow#1#2{%
+\check@@arrow#2-\@nil
+\if@pst
+\addto@par{arrows=#2}%
+\def\next{#1}%
+\else
+\def\next{#1{#2}}%
+\fi
+\next}
+\def\check@@arrow#1-#2\@nil{%
+\ifx\@nil#2\@nil\@pstfalse\else\@psttrue\fi}
+\def\tx@InitNC{InitNC }
+\def\nc@object#1#2#3#4{%
+\begin@OpenObj
+\showpointsfalse
+\pst@getnode{#1}\pst@tempa
+\pst@getnode{#2}\pst@tempb
+\gdef\lputpos@default{#3}%
+\addto@pscode{%
+\pst@nodedict
+\psk@offsetA
+\psk@offsetB neg
+\psk@nodesepA
+\psk@nodesepB
+\pst@tempa
+\pst@tempb
+\tx@InitNC { #4 } if
+end}%
+\def\use@pscode{%
+\pst@Verb{gsave \tx@STV newpath \pst@code\space grestore}%
+\gdef\pst@code{}}%
+\end@OpenObj}
+\def\lputpos@default{.5}
+\def\pc@object#1{%
+\@ifnextchar({\pc@@object#1}{\pst@getarrows{\pc@@object#1}}}
+\def\pc@@object#1(#2)(#3){%
+\pnode(#2){@@A}\pnode(#3){@@B}%
+#1{@@A}{@@B}}
+\def\psset@nodesepA#1{\pst@getlength{#1}\psk@nodesepA}
+\def\psset@nodesepB#1{\pst@getlength{#1}\psk@nodesepB}
+\def\psset@nodesep#1{%
+\psset@nodesepA{#1}\let\psk@nodesepB\psk@nodesepA}
+\psset@nodesep{0}
+\def\psset@offsetA#1{\pst@getlength{#1}\psk@offsetA}
+\def\psset@offsetB#1{\pst@getlength{#1}\psk@offsetA}
+\def\psset@offset#1{%
+\psset@offsetA{#1}\let\psk@offsetB\psk@offsetA}
+\psset@offset{0}
+\def\psset@armA#1{\pst@getlength{#1}\psk@armA}
+\def\psset@armB#1{\pst@getlength{#1}\psk@armB}
+\def\psset@arm#1{\psset@armA{#1}\let\psk@armB\psk@armA}
+\psset@arm{10pt}
+\def\psset@angleA#1{\pst@getangle{#1}\psk@angleA}
+\def\psset@angleB#1{\pst@getangle{#1}\psk@angleB}%
+\def\psset@angle#1{\pst@getangle{#1}\psk@angleA
+\let\psk@angleB\psk@angleA}
+\psset@angle{0}
+\def\psset@arcangleA#1{\pst@getangle{#1}\psk@arcangleA}
+\def\psset@arcangleB#1{\pst@getangle{#1}\psk@arcangleB}%
+\def\psset@arcangle#1{\pst@getangle{#1}\psk@arcangleA
+\let\psk@arcangleB\psk@arcangleA}
+\psset@arcangle{8}
+\def\psset@ncurvA#1{\pst@checknum{#1}\psk@ncurvA}
+\def\psset@ncurvB#1{\pst@checknum{#1}\psk@ncurvB}%
+\def\psset@ncurv#1{\psset@ncurvA{#1}\let\psk@ncurvB\psk@ncurvA}
+\psset@ncurv{.67}
+\def\tx@LineMP{LineMP }
+\def\tx@NCCoor{NCCoor }
+\def\tx@NCLine{NCLine }
+\def\ncline{\def\pst@par{}\pst@object{ncline}}
+\def\ncline@i{\check@arrow{\ncline@ii}}
+\def\ncline@ii#1#2{\nc@object{#1}{#2}{.5}{\tx@NCLine}}
+\def\pcline{\def\pst@par{}\pst@object{pcline}}
+\def\pcline@i{\pc@object\ncline@ii}
+\def\ncLine{\def\pst@par{}\pst@object{ncLine}}
+\def\ncLine@i{\check@arrow{\ncLine@ii}}
+\def\ncLine@ii#1#2{\nc@object{#1}{#2}{.5}%
+{\tx@NCLine
+/LPutVar [
+nodeA \tx@GetCenter
+nodeB \tx@GetCenter
+3 1 roll 4 1 roll
+] cvx def }}
+\def\tx@BezierMidpoint{BezierMidpoint }
+\def\tx@GetArms{GetArms }
+\def\tx@NCCurve{NCCurve }
+\def\nccurve{\def\pst@par{}\pst@object{nccurve}}
+\def\nccurve@i{\check@arrow{\nccurve@ii}}
+\def\nccurve@ii#1#2{\nc@object{#1}{#2}{.5}{%
+/AngleA \psk@angleA\space def /AngleB \psk@angleB\space def
+\psk@ncurvB\space \psk@ncurvA\space
+\tx@NCCurve}}
+\def\pccurve{\def\pst@par{}\pst@object{pccurve}}
+\def\pccurve@i{\pc@object\nccurve@ii}
+\def\ncarc{\def\pst@par{}\pst@object{ncarc}}
+\def\ncarc@i{\check@arrow{\ncarc@ii}}
+\def\ncarc@ii#1#2{\nc@object{#1}{#2}{.5}{%
+\tx@GetAngle dup
+\psk@arcangleA\space add /AngleA ED
+\psk@arcangleB\space sub 180 add /AngleB ED
+\psk@ncurvB\space \psk@ncurvA\space
+\tx@NCCurve}}
+\def\pcarc{\def\pst@par{}\pst@object{pcarc}}
+\def\pcarc@i{\pc@object\ncarc@ii}
+\def\tx@AnglesMP{AnglesMP }
+\def\tx@NCAngles{NCAngles }
+\def\ncangles{\def\pst@par{}\pst@object{ncangles}}
+\def\ncangles@i{\check@arrow{\ncangles@ii}}
+\def\ncangles@ii#1#2{%
+\nc@object{#1}{#2}{1.5}{\ncangles@iii \tx@NCAngles}}
+\def\ncangles@iii{%
+tx@Dict begin
+\ifdim\pslinearc>\z@
+/r \pst@number\pslinearc def
+/Lineto { \tx@Arcto } def
+\else
+/Lineto { L } def
+\fi
+end
+/AngleA \psk@angleA\space def /AngleB \psk@angleB\space def
+/armA \psk@armA\space def /armB \psk@armB\space def }
+\def\pcangles{\def\pst@par{}\pst@object{pcangles}}
+\def\pcangles@i{\pc@object\ncangles@ii}
+\def\tx@NCAngle{NCAngle }
+\def\ncangle{\def\pst@par{}\pst@object{ncangle}}
+\def\ncangle@i{\check@arrow{\ncangle@ii}}
+\def\ncangle@ii#1#2{%
+\nc@object{#1}{#2}{1.5}{\ncangles@iii \tx@NCAngle}}
+\def\pcangle{\def\pst@par{}\pst@object{pcangle}}
+\def\pcangle@i{\pc@object\ncangle@ii}
+\def\tx@NCBar{NCBar }
+\def\ncbar{\def\pst@par{}\pst@object{ncbar}}
+\def\ncbar@i{\check@arrow{\ncbar@ii}}
+\def\ncbar@ii#1#2{\nc@object{#1}{#2}{1.5}{%
+\ncangles@iii /AngleB \psk@angleA def \tx@NCBar}}
+\def\pcbar{\def\pst@par{}\pst@object{pcbar}}
+\def\pcbar@i{\pc@object\ncbar@ii}
+\def\tx@NCDiag{NCDiag }
+\def\ncdiag{\def\pst@par{}\pst@object{ncdiag}}
+\def\ncdiag@i{\check@arrow{\ncdiag@ii}}
+\def\ncdiag@ii#1#2{%
+\nc@object{#1}{#2}{1.5}{\ncangles@iii \tx@NCDiag}}
+\def\pcdiag{\def\pst@par{}\pst@object{pcdiag}}
+\def\pcdiag@i{\pc@object\ncdiag@ii}
+\def\tx@NCDiagg{NCDiagg }
+\def\ncdiagg{\def\pst@par{}\pst@object{ncdiagg}}
+\def\ncdiagg@i{\check@arrow{\ncdiagg@ii}}
+\def\ncdiagg@ii#1#2{%
+\nc@object{#1}{#2}{.5}{\ncangles@iii \tx@NCDiagg}}
+\def\pcdiagg{\def\pst@par{}\pst@object{pcdiagg}}
+\def\pcdiagg@i{\pc@object\ncdiagg@ii}
+\def\tx@LoopMP{LoopMP }
+\def\tx@NCLoop{NCLoop }
+\def\psset@loopsize#1{\pst@getlength{#1}\psk@loopsize}
+\psset@loopsize{1cm}
+\def\ncloop{\def\pst@par{}\pst@object{ncloop}}
+\def\ncloop@i{\check@arrow{\ncloop@ii}}
+\def\ncloop@ii#1#2{%
+\nc@object{#1}{#2}{2.5}%
+{\ncangles@iii /loopsize \psk@loopsize\space def \tx@NCLoop}}
+\def\pcloop{\def\pst@par{}\pst@object{pcloop}}
+\def\pcloop@i{\pc@object\ncloop@ii}
+\def\tx@NCCircle{NCCircle }
+\def\nccircle{\def\pst@par{}\pst@object{nccircle}}
+\def\nccircle@i{\check@arrow{\nccircle@ii}}
+\def\nccircle@ii#1#2{%
+\pssetlength\pst@dima{#2}%
+\nc@object{#1}{#1}{.5}{%
+/AngleA \psk@angleA def
+/r \pst@number\pst@dima def
+\tx@NCCircle \psarc@v end}}
+\def\pst@getlputrot#1{%
+\@ifnextchar(%
+{\def\pst@rot{}#1}%
+{\pst@@getlputrot{\@ifnextchar({#1}{#1(\lputpos@default)}}}}
+\def\pst@@getlputrot#1#2{%
+\pst@expandafter{\@ifnextchar:{\pst@@@getlputrot}%
+{\@ifstar{\pst@@@getrot}{\pst@@getrot}}}{#2}\@nil
+\ifx\pst@rotlist\@empty\else
+\edef\pst@rotlist{\pst@rotlist \pst@rot add }%
+\fi
+#1}
+\def\pst@@@getlputrot#1#2\@nil{%
+\pst@@getrot#2\@nil
+\edef\pst@rot{langle \ifx\pst@rot\@empty\else\pst@rot add \fi}}%
+\def\tx@LPutCoor{LPutCoor }
+\def\psput@lput#1#2{%
+\pst@checknum{#1}\pst@tempa
+\hbox{%
+\pst@Verb{%
+\pst@nodedict
+/t \pst@tempa\space def
+\tx@LPutCoor
+end
+\tx@PutBegin}%
+\box#2%
+\pst@Verb{\tx@PutEnd}}}
+\def\lput{\begin@psput{\pst@getref{\pst@getlputrot{\end@psput\lput@i}}}}
+\def\lput@i(#1){%
+\pst@makesmall\pst@hbox
+\ifx\pst@rot\@empty\else\pst@rotate\pst@hbox\fi
+\psput@lput{#1}\pst@hbox}
+\def\mput{%
+\begin@psput{\def\pst@rot{}\pst@getref{\end@psput\lput@i(\lputpos@default)}}}
+\def\aput@#1{\begin@psput{%
+\def\pst@refangle{#1 }%
+\@ifnextchar[{\aput@i}{\pst@getlputrot{\end@psput\aput@ii}}}}
+\def\aput@i[#1]{%
+\pssetlength\pslabelsep{#1}\pst@getlputrot{\end@psput\aput@ii}}
+\def\aput@ii(#1){%
+\uput@iv\aput@iii
+\psput@lput{#1}\pst@hbox}
+\def\aput@iii{exch pop add a \tx@PtoC h1 add exch w1 add exch }
+\def\aput{\aput@{langle 90 add}}
+\def\bput{\aput@{langle 90 sub}}
+\def\Aput@#1{\begin@psput{%
+\def\pst@refangle{#1 }%
+\def\pst@rot{}%
+\@ifnextchar[{\Aput@i}{\end@psput\aput@ii(\lputpos@default)}}}
+\def\Aput@i[#1]{%
+\pssetlength\pslabelsep{#1}%
+\end@psput\aput@ii(\lputpos@default)}
+\def\Aput{\Aput@{langle 90 add}}
+\def\Bput{\Aput@{langle 90 sub}}
+\def\Lput{%
+\begin@psput{\pst@getlabelsep{\pst@getlputrot{\end@psput{\Rput@i\lput@i}}}}}
+\def\Mput{%
+\begin@psput{%
+\def\pst@rot{}%
+\pst@getlabelsep{\end@psput{\Rput@i\lput@i}(\lputpos@default)}}}
+\def\node@coor#1;#2\@nil{%
+\pst@getnode{#1}\pst@tempg
+\edef\pst@coor{%
+\pst@nodedict
+tx@NodeDict \pst@tempg known
+{ \pst@tempg load \tx@GetCenter }
+{ 0 0 }
+ifelse
+end }}
+\def\Node@coor[#1]#2;#3\@nil{%
+\begingroup
+\psset{#1}%
+\pst@getnode{#2}\pst@tempg
+\xdef\pst@tempg{%
+\pst@nodedict
+tx@NodeDict \pst@tempg known
+{ \psk@offsetA \psk@angleA \psk@nodesepA \pst@tempg load \tx@GetEdge }
+{ 0 0 }
+ifelse
+end }%
+\endgroup
+\let\pst@coor\pst@tempg}
+\catcode`\@=\TheAtCode\relax
+\endinput
+%%
+%% END: pst-node.tex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-node.tlpobj new/tlpkg/tlpobj/pst-node.tlpobj
--- old/tlpkg/tlpobj/pst-node.tlpobj 2013-04-15 16:56:42.000000000 +0200
+++ new/tlpkg/tlpobj/pst-node.tlpobj 2014-03-28 03:23:31.000000000 +0100
@@ -1,6 +1,6 @@
name pst-node
category Package
-revision 29899
+revision 33303
shortdesc Nodes and node connections in pstricks.
relocated 1
longdesc The package enables the user to connect information, and to
@@ -9,13 +9,15 @@
longdesc should go. The macros are useful for making graphs and trees,
longdesc mathematical diagrams, linguistic syntax diagrams, and so on.
longdesc The package contents were previously distributed as a part of
-longdesc the pstricks base distribution.
-runfiles size=24
+longdesc the pstricks base distribution; the package serves as an
+longdesc extension to PSTricks.
+runfiles size=28
RELOC/dvips/pst-node/pst-node.pro
RELOC/dvips/pst-node/pst-node97.pro
RELOC/tex/generic/pst-node/pst-node.tex
+ RELOC/tex/generic/pst-node/pst-node97.tex
RELOC/tex/latex/pst-node/pst-node.sty
catalogue-ctan /graphics/pstricks/contrib/pst-node
-catalogue-date 2013-04-14 10:19:50 +0200
+catalogue-date 2014-03-26 09:37:24 +0100
catalogue-license lppl
-catalogue-version 1.27
+catalogue-version 1.33
++++++ pst-ode.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-ode/ChangeLog new/doc/generic/pst-ode/ChangeLog
--- old/doc/generic/pst-ode/ChangeLog 2012-09-15 00:15:11.000000000 +0200
+++ new/doc/generic/pst-ode/ChangeLog 2014-03-28 00:31:15.000000000 +0100
@@ -1,3 +1,26 @@
+2014-03-27
+ * version 0.7
+ * change: internal variable defs put into dict for protection
+
+2013-11-26
+ * version 0.6
+ * fix: Postscript error with Distiller if errmax .eq. 0
+
+2013-11-11
+ * version 0.5
+ * fix: option prefixes
+
+2013-11-05
+ * version 0.4
+ * fix: some variables of the main PSTricks dictionary were not available in
+ \pstODEsolve arguments (such as Pi)
+ * new: options algebraicT and algebraicAll added
+
+2013-10-28
+ * version 0.3
+ * fix: internal PS variables were visible outside (wrong dictionary stack
+ order)
+
2012-09-14
* version 0.2
* new: command option `algebraicOutputFormat' added
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-ode/README new/doc/generic/pst-ode/README
--- old/doc/generic/pst-ode/README 2012-08-17 00:48:03.000000000 +0200
+++ new/doc/generic/pst-ode/README 2014-03-28 00:31:15.000000000 +0100
@@ -11,5 +11,5 @@
This material is subject to the LaTeX Project Public License. See
- http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html
+ http://mirror.ctan.org/help/Catalogue/licenses.lppl.html
for the details of that license.
Files old/doc/generic/pst-ode/pst-ode-doc.pdf and new/doc/generic/pst-ode/pst-ode-doc.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-ode/pst-ode-doc.tex new/doc/generic/pst-ode/pst-ode-doc.tex
--- old/doc/generic/pst-ode/pst-ode-doc.tex 2012-09-15 00:15:11.000000000 +0200
+++ new/doc/generic/pst-ode/pst-ode-doc.tex 2013-11-14 01:15:05.000000000 +0100
@@ -9,6 +9,7 @@
\usepackage{amsmath}
\usepackage{pst-3dplot}
\usepackage{pst-plot}
+\usepackage{pstricks-add}
\usepackage{pst-ode}
\let\pstFV\fileversion
\let\belowcaptionskip\abovecaptionskip
@@ -80,9 +81,9 @@
%\clearpage
\begin{abstract}
- \noindent The \LPack{pstricks-add} package already provides \Lcs{psplotDiffEqn} for solving ODEs. However, as its name suggests, the macro always produces a plot of the computed result. While any number of coupled differential equations can be integrated simultaneously, only two-dimensional plots are supported. The user has to select the two components of the computed state vectors to be used in the plot. Package \LPack{pst-ode} separates solving the equations from plotting the result. The result is stored as a \PS{} object and can be plotted later using macros from other PSTricks packages, such as \Lcs{listplot} (\LPack{pst-plot}) and \Lcs{listplotThreeD} (\LPack{pst-3dplot}), or be further processed by user-defined \PS{} procedures. Optionally, the computed state vectors can be written as a table to a textfile.
+ \noindent The \LPack{pstricks-add} package already provides \Lcs{psplotDiffEqn} for solving ODEs. However, as its name suggests, the macro always produces a plot of the computed result. While any number of coupled differential equations can be integrated simultaneously, only two-dimensional plots are supported. The user has to select the two components of the computed state vectors to be used in the plot. Package \LPack{pst-ode} separates solving the equations from plotting the result. The result is stored as a \PS{} object and can be plotted later using macros from other PSTricks packages, such as \Lcs{listplot} (\LPack{pst-plot}) and \Lcs{listplotThreeD} (\LPack{pst-3dplot}), or be further processed by user-defined \PS{} procedures. Optionally, the computed state vectors can be written as a table to a text file.
-Package \LPack{pst-ode} uses the Runge-Kutta-Fehlberg (RKF45) method with automatic step size control for integrating the differential equations. Thus, the precision of the result does not depend on the number of plotpoints specified, as it would be the case with the classical Runge-Kutta (RK4) method.
+Package \LPack{pst-ode} uses the Runge-Kutta-Fehlberg (RKF45) method with automatic step size control for integrating the differential equations. Thus, the precision of the result does not depend on the number of plot points specified, as it would be the case with the classical Runge-Kutta (RK4) method.
\end{abstract}
\section{Introduction}
@@ -116,26 +117,30 @@
The first mandatory argument \Larg{result} is a simple identifier composed of letters and possibly numbers. It is used to create a \PS{} object of the same name, which takes the computed state vectors $\mathbf{x}_i$, formatted according to the second argument \Larg{output format}, as a long list of values. \Larg{result} can be directly used as the \Larg{data} argument of \Lcs{listplot}\Largb{data} (package \LPack{pst-plot}) or \Lcs{listplotThreeD}\Largb{data} (package \LPack{pst-3dplot}). When put on the \PS{} operand stack, \Larg{result} is immediately executed, that is, the list of values contained in \Larg{result} is pushed onto the operand stack. The scope of \Larg{result} is global and thus its content survives page breaks.
The second argument \Larg{output format} determines which of the components of the state vectors $\mathbf{x}_i$ and possibly the independent variable $t$ are stored into \Larg{result}. \Larg{output format} can be specified in two different formats, depending on the setting of the command option \Lkeyword{algebraicOutputFormat}.
-If \Lkeyword{algebraicOutputFormat} is set, calculations can be made on the components of the computed state vectors before writing them to \Larg{result}. Without option \Lkeyword{algebraicOutputFormat} the following applies: The keyword \Lkeyword{(t)} (parentheses required) inserts the integration parameter value $t_i$ into the result list; numbers (\Lkeyword{0}, \Lkeyword{1}, \Lkeyword{2}, \dots, $n-1$) in arbitrary order specify the components of vector $\mathbf{x}_i$ to be inserted, as well as their order of insertion. The elements of \Larg{output format} are to be separated by spaces. If option \Lkeyword{algebraicOutputFormat} is set, \Larg{output format} is a \Lkeyword{|}-separated list of algebraic expressions according to which the components of the output vector are to be calculated. In these algebraic expressions, the $n$ current state vector components can be referred to as \Lkeyword{x[0]}, \Lkeyword{x[1]}, \dots, \Lkeyword{x[}$n-1$\Lkeyword{]} or \Lkeyword{y[0]}, \Lkeyword{y[1]}, \dots, \Lkeyword{y[}$n-1$\Lkeyword{]}, and the current independent variable value as `\Lkeyword{t}'. In either case, there is no upper limit of the output vector length. It must have at least one element though.
+If \Lkeyword{algebraicOutputFormat} is set, calculations can be made on the components of the computed state vectors before writing them to \Larg{result}. Without option \Lkeyword{algebraicOutputFormat} the following applies: The keyword \Lkeyword{(t)} (parentheses required) inserts the integration parameter value $t_i$ into the result list; numbers (\Lkeyword{0}, \Lkeyword{1}, \Lkeyword{2}, \dots, $n-1$) in arbitrary order specify the components of vector $\mathbf{x}_i$ to be inserted, as well as their order of insertion. The elements of \Larg{output format} are to be separated by spaces. If option \Lkeyword{algebraicOutputFormat} is set, \Larg{output format} is a \Lkeyword{|}-separated list of algebraic expressions (infix notation) according to which the components of the output vector are to be calculated. In these algebraic expressions, the $n$ current state vector components can be referred to as \Lkeyword{x[0]}, \Lkeyword{x[1]}, \dots, \Lkeyword{x[}$n-1$\Lkeyword{]} or \Lkeyword{y[0]}, \Lkeyword{y[1]}, \dots, \Lkeyword{y[}$n-1$\Lkeyword{]}, and the current independent variable value as `\Lkeyword{t}'. In either case, there is no upper limit of the output vector length. It must have at least one element though.
-Arguments $t_0$ and $t_\mathrm{e}$ define the interval of integration $I=[t_0, t_\mathrm{e}]$.
+Arguments $t_0$ and $t_\mathrm{e}$ define the interval of integration $I=[t_0, t_\mathrm{e}]$. Both arguments accept expressions in infix or \PS{} (postfix, reverse polish) notation. Infix notation requires option \Lkeyword{algebraicT}.
$N$ is the number of \emph{equally} spaced output points, including $t_0$ and $t_\mathrm{e}$; it must be $\ge 2$. In order to divide the interval of integration into $K$ output steps, $N$ must be set to $K+1$. Note that the precision of the solution does \emph{not} depend on $N$; internal integration steps are automatically inserted and resized according to the changes in the solution.
-$\mathbf{x}_0$ is a list of $n$ space separated initial values, one for each differential equation. Alternatively, $\mathbf{x}_0$ can be given as a \PS{} procedure pushing the initial values on the stack, or as an algebraic expression where the elements are separated by `\Lkeyword{|}'. Algebraic notation requires option \Lkeyword{algebraicIC}. This argument can be left empty. In that case, the last computed state vector of a preceding \Lcs{pstODEsolve} call or a state vector that was set using the \Lcs{pstODEsetOrRestoreState} macro is used as initial condition. Of course, the number of equations $n$ must be the same as in the preceding calculation.
+$\mathbf{x}_0$ is a list of $n$ space separated initial values, one for each differential equation. Alternatively, $\mathbf{x}_0$ can be given as a \PS{} procedure pushing the initial values on the stack, or as an algebraic expression in infix notation where the elements are separated by `\Lkeyword{|}'. Infix notation requires option \Lkeyword{algebraicIC}. This argument can be left empty. In that case, the last computed state vector of a preceding \Lcs{pstODEsolve} call or a state vector that was set using the \Lcs{pstODEsetOrRestoreState} macro is used as initial condition. Of course, the number of equations $n$ must be the same as in the preceding calculation.
-$\mathbf{f}(t,\mathbf{x})$ is the right-hand side of the differential equations. Equations can be entered in either algebraic or \PS{} notation. Algebraic notation requires option \Lkeyword{algebraic}, and equations have to be separated by `\Lkeyword{|}'. The $n$ current state vector components can be referred to as \Lkeyword{x[0]}, \Lkeyword{x[1]}, \dots, \Lkeyword{x[}$n-1$\Lkeyword{]} or \Lkeyword{y[0]}, \Lkeyword{y[1]}, \dots, \Lkeyword{y[}$n-1$\Lkeyword{]}, and the current independent variable value as `\Lkeyword{t}'. If given in \PS{} notation, the provided procedure must first pop the current state vector components in reverse order(!) from the operand stack and then push the first derivatives in regular order back to it. Again, the independent variable value can be accessed using `\Lkeyword{t}'.\\[1ex]
-\Lcs{pstODEsolve} accepts a few \OptArgs: \Lkeyword{append}, \Lkeyword{saveData}, \Lkeyword{algebraicOutputFormat}, \Lkeyword{algebraicIC}, \Lkeyword{algebraic}, \Lkeyword{silent} and \Lkeyword{varsteptol}.
+$\mathbf{f}(t,\mathbf{x})$ is the right-hand side of the differential equations. Equations can be entered in either infix or \PS{} (postfix, reverse polish) notation. Infix notation requires option \Lkeyword{algebraic}, and equations have to be separated by `\Lkeyword{|}'. The $n$ current state vector components can be referred to as \Lkeyword{x[0]}, \Lkeyword{x[1]}, \dots, \Lkeyword{x[}$n-1$\Lkeyword{]} or \Lkeyword{y[0]}, \Lkeyword{y[1]}, \dots, \Lkeyword{y[}$n-1$\Lkeyword{]}, and the current independent variable value as `\Lkeyword{t}'. If given in \PS{} notation, the provided procedure must first pop the current state vector components in reverse order(!) from the operand stack and then push the first derivatives in regular order back to it. Again, the independent variable value can be accessed using `\Lkeyword{t}'.\\[1ex]
+\Lcs{pstODEsolve} accepts a few \OptArgs: \Lkeyword{append}, \Lkeyword{saveData}, \Lkeyword{algebraicOutputFormat}, \Lkeyword{algebraicT}, \Lkeyword{algebraicIC}, \Lkeyword{algebraic}, \Lkeyword{algebraicAll}, \Lkeyword{silent} and \Lkeyword{varsteptol}.
With \Lkeyword{append}, the computed result is appended to \Larg{result} which must already exist, e.\, g. from a previous use of \Lcs{pstODEsolve}. Usually, the initial condition vector argument is left empty in order to continue integration from the last computed or from a restored state (see \Lcs{pstODEsetOrRestoreState}).
If option \Lkeyword{saveData} is set, the formatted state vectors are written as a table to a textfile named `\Larg{result}\Lkeyword{.dat}'. Note that \Lkeyword{ps2pdf} must be called with option \Lkeyword{-dNOSAFER} to enable writing of external files.
-With \Lkeyword{algebraicOutputFormat}, the command argument \Larg{output format} is a \Lkeyword{|}-separated list of algebraic expressions, according to which the output vector components are to be assembled before storing them into \Larg{result}. Default is not to use algebraic expressions. For details, see the description of \Larg{output format} above.
+With \Lkeyword{algebraicOutputFormat}, the command argument \Larg{output format} is a \Lkeyword{|}-separated list of algebraic expressions in infix notation, according to which the output vector components are to be assembled before storing them into \Larg{result}. Default is to not use algebraic infix expressions. For details, see the description of \Larg{output format} above.
-With \Lkeyword{algebraicIC}, the initial condition vector $\mathbf{x}_0$ can be given in algebraic notation. Vector components have to be separated by `\Lkeyword{|}'. Default is \PS{} notation.
+With \Lkeyword{algebraicT}, the integration interval limits $t_0$ and $t_\mathrm{e}$ can be entered as algebraic expressions in infix notation, otherwise \PS{} (postfix, reverse polish) notation must be used. Of course, single rational numbers for $t_0$ and $t_\mathrm{e}$ always work.
-With \Lkeyword{algebraic}, the right-hand side of differential equations $\mathbf{f}(t,\mathbf{x})$ can be given in algebraic notation. Algebraic expressions are to be separated by `\Lkeyword{|}'. Default is \PS{} notation.
+With \Lkeyword{algebraicIC}, the initial condition vector $\mathbf{x}_0$ can be given in algebraic infix notation. Vector components have to be separated by `\Lkeyword{|}'. Default is \PS{} notation, i.\,e. space separated postfix expressions or rational numbers.
+
+With \Lkeyword{algebraic}, the right-hand side of differential equations $\mathbf{f}(t,\mathbf{x})$ can be given in infix notation. Algebraic infix expressions are to be separated by `\Lkeyword{|}'. Default is \PS{} notation.
+
+Option \Lkeyword{algebraicAll} is equivalent to setting all of \Lkeyword{algebraicOutputFormat}, \Lkeyword{algebraicT}, \Lkeyword{algebraicIC}, \Lkeyword{algebraic}.
Option \Lkeyword{silent} suppresses the terminal output of stepping information.
@@ -261,13 +266,13 @@
\end{center}
\subsection[One more first order differential equation]{One more first order differential equation (\textattachfile{ode.tex}{ode.tex})}
-The aim of the last example is to demonstrate that precision does not depend on the number of output steps. Moreover, the integration parameter $t$ appears on the right-hand side and the solution is plotted against the integration parameter $t$.
+The aim of the last example is to demonstrate that precision does not depend on the number of output steps. We set only five output steps and plot the analytical solution against the numerical one for comparison. In this example, the integration parameter $t$ appears on the right-hand side of the ODE as well as in the output format description, since the solution $y$ shall be plotted against $t$.
The equation to be solved here reads
\begin{equation}
y'=-2xy.
\end{equation}
-For $y(-1)=1/e$ the analytical solution is
+With the initial condition $y(-1)=1/e$ the analytical solution is
\begin{equation}
y(x)=e^{-x^2}.
\end{equation}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-ode.doc.tlpobj new/tlpkg/tlpobj/pst-ode.doc.tlpobj
--- old/tlpkg/tlpobj/pst-ode.doc.tlpobj 2012-09-15 04:29:14.000000000 +0200
+++ new/tlpkg/tlpobj/pst-ode.doc.tlpobj 2014-03-28 03:23:31.000000000 +0100
@@ -1,6 +1,6 @@
name pst-ode.doc
category Package
-revision 27669
+revision 33301
shortdesc doc files of pst-ode
relocated 1
docfiles size=38
++++++ pst-ode.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pst-ode/pst-ode.pro new/dvips/pst-ode/pst-ode.pro
--- old/dvips/pst-ode/pst-ode.pro 2012-09-15 00:15:11.000000000 +0200
+++ new/dvips/pst-ode/pst-ode.pro 2014-03-28 00:31:15.000000000 +0100
@@ -1,9 +1,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% PostScript prologue for pst-ode.tex.
-% Version 0.2, 2012/09/14
+% Version 0.7, 2014/03/27
%
-% Alexander Grahn (C) 2012
+% Alexander Grahn (C) 2012, 2013
%
% This program can be redistributed and/or modified under the terms
% of the LaTeX Project Public License Distributed from CTAN archives
@@ -12,102 +12,145 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
/tx@odeDict 1 dict def
tx@odeDict begin
-%some constants for step size calculation
-/sfty 0.9 def /pgrow -0.2 def /pshrink -0.25 def
-%helper functions
-/addvect { % [1 2 3] [4 5 6] addvect => [5 7 9]
- aload pop xlength1 -1 roll {xlength1 -1 roll add} forall
- xlength array astore
-} bind def
-/subvect { % [1 2 3] [4 5 6] subvect => [-3 -3 -3]
- aload pop xlength1 -1 roll {xlength1 -1 roll sub} forall
- xlength array astore
-} bind def
-/mulvect { % [1 2 3] 4 mulvect => [4 8 12]
- /mul cvx 2 array astore cvx forall xlength array astore
-} bind def
-/edivvect { % [1 2 3] [4 5 6] edivvect => [0.25 0.4 0.5]
- aload pop xlength1 -1 roll {xlength1 -1 roll div} forall
- xlength array astore
-} bind def
-/eabsvect { % [-1 2 -3] eabsvect => [1 2 3]
- {abs} forall xlength array astore
-} bind def
-%/revstack { % (a) (b) (c) (d) 3 revstack => (a) (d) (c) (b)
-% -1 2 {dup 1 sub neg roll} for
-%} bind def
-/min { 2 copy gt { exch } if pop } bind def
-/max { 2 copy lt { exch } if pop } bind def
-%coefficient table (Butcher table) of RKF45
-/a41 25 216 div def /a43 1408 2565 div def
-/a44 2197 4104 div def /a45 1 5 div neg def
-/a51 16 135 div def /a53 6656 12825 div def
-/a54 28561 56430 div def /a55 9 50 div neg def
-/a56 2 55 div def
-/b21 1 4 div def /b31 3 32 div def /b32 9 32 div def
-/b41 1932 2197 div def /b42 7200 2197 div neg def /b43 7296 2197 div def
-/b51 439 216 div def /b52 8 neg def /b53 3680 513 div def
-/b54 845 4104 div neg def /b61 8 27 div neg def /b62 2 def
-/b63 3544 2565 div neg def /b64 1859 4104 div def /b65 11 40 div neg def
+/ode@@dict 1 dict def
+/ode@dict {ode@@dict begin} bind def
+ode@dict
+ %some constants for step size calculation
+ /sfty 0.9 def /pgrow -0.2 def /pshrink -0.25 def
+ %helper functions
+ /addvect { % [1 2 3] [4 5 6] addvect => [5 7 9]
+ ode@dict
+ aload pop xlength1 -1 roll {xlength1 -1 roll add} forall
+ xlength array astore
+ end
+ } bind def
+ /subvect { % [1 2 3] [4 5 6] subvect => [-3 -3 -3]
+ ode@dict
+ aload pop xlength1 -1 roll {xlength1 -1 roll sub} forall
+ xlength array astore
+ end
+ } bind def
+ /mulvect { % [1 2 3] 4 mulvect => [4 8 12]
+ ode@dict /mul cvx 2 array astore cvx forall xlength array astore end
+ } bind def
+ /edivvect { % [1 2 3] [4 5 6] edivvect => [0.25 0.4 0.5]
+ ode@dict
+ aload pop xlength1 -1 roll {xlength1 -1 roll div} forall
+ xlength array astore
+ end
+ } bind def
+ /eabsvect { % [-1 2 -3] eabsvect => [1 2 3]
+ ode@dict {abs} forall xlength array astore end
+ } bind def
+ %/revstack { % (a) (b) (c) (d) 3 revstack => (a) (d) (c) (b)
+ % -1 2 {dup 1 sub neg roll} for
+ %} bind def
+ /min { 2 copy gt { exch } if pop } bind def
+ /max { 2 copy lt { exch } if pop } bind def
+ %coefficient table (Butcher table) of RKF45
+ /a41 25 216 div def /a43 1408 2565 div def
+ /a44 2197 4104 div def /a45 1 5 div neg def
+ /a51 16 135 div def /a53 6656 12825 div def
+ /a54 28561 56430 div def /a55 9 50 div neg def
+ /a56 2 55 div def
+ /b21 1 4 div def /b31 3 32 div def /b32 9 32 div def
+ /b41 1932 2197 div def /b42 7200 2197 div neg def /b43 7296 2197 div def
+ /b51 439 216 div def /b52 8 neg def /b53 3680 513 div def
+ /b54 845 4104 div neg def /b61 8 27 div neg def /b62 2 def
+ /b63 3544 2565 div neg def /b64 1859 4104 div def /b65 11 40 div neg def
+end
%Runge-Kutta-Fehlberg (RKF45) method
%performs one integration step over tentative step size ddt
%[state vector x(t)] RKF45 => [x(t)] [x(t+ddt) by RKF4] errmax
/RKF45 {
- /t tcur def
- dup ODESET ddt mulvect /k1 exch def
- /t tcur ddt 4 div add def
- dup k1 b21 mulvect addvect ODESET ddt mulvect /k2 exch def
- /t tcur ddt 3 mul 8 div add def
- dup k1 b31 mulvect addvect k2 b32 mulvect addvect ODESET ddt mulvect
- /k3 exch def
- /t tcur ddt 12 mul 13 div add def
- dup k1 b41 mulvect addvect k2 b42 mulvect addvect k3 b43 mulvect addvect
- ODESET ddt mulvect /k4 exch def
- /t tcur ddt add def
- dup k1 b51 mulvect addvect k2 b52 mulvect addvect k3 b53 mulvect addvect
- k4 b54 mulvect addvect ODESET ddt mulvect /k5 exch def
- /t tcur ddt 2 div add def
- dup k1 b61 mulvect addvect k2 b62 mulvect addvect k3 b63 mulvect addvect
- k4 b64 mulvect addvect k5 b65 mulvect addvect ODESET ddt mulvect
- /k6 exch def % => [x(t)]
- %fourth order solution (increment dx)
- dup dup k1 a41 mulvect k3 a43 mulvect addvect k4 a44 mulvect addvect
- k5 a45 mulvect addvect dup
- % => [x(t)] [x(t)] [x(t)] [dx by RKF4] [dx by RKF4]
- %fifth order solution (abs. error)
- k1 a51 mulvect k3 a53 mulvect addvect k4 a54 mulvect addvect
- k5 a55 mulvect addvect k6 a56 mulvect addvect subvect
- % => [x(t)] [x(t)] [x(t)] [dx by RKF4] [err]
- 5 1 roll addvect 4 -2 roll % => [x(t)] [x(t+ddt) by RKF4] [err] [x(t)]
- %scaling vector for step size adjustment (Numerical Recipies)
- eabsvect k1 eabsvect addvect {1e-30 add} forall xlength array astore
- % => [x(t)] [x(t+ddt) by RKF4] [err] [xscale]
- %maximum rel. error
- /errmax 0 def
- edivvect {abs dup errmax gt {/errmax exch def}{pop} ifelse} forall errmax
- % => [x(t)] [x(t+ddt) by RKF4] errmax
+ dup
+ ode@dict tcur end /t exch def
+ ODESET
+ ode@dict
+ ddt mulvect /k1 exch def
+ dup k1 b21 mulvect addvect
+ tcur ddt 4 div add
+ end
+ /t exch def
+ ODESET
+ ode@dict
+ ddt mulvect /k2 exch def
+ dup k1 b31 mulvect addvect k2 b32 mulvect addvect
+ tcur ddt 3 mul 8 div add
+ end
+ /t exch def
+ ODESET
+ ode@dict
+ ddt mulvect /k3 exch def
+ dup k1 b41 mulvect addvect k2 b42 mulvect addvect k3 b43 mulvect addvect
+ tcur ddt 12 mul 13 div add
+ end
+ /t exch def
+ ODESET
+ ode@dict
+ ddt mulvect /k4 exch def
+ dup k1 b51 mulvect addvect k2 b52 mulvect addvect k3 b53 mulvect addvect
+ k4 b54 mulvect addvect
+ tcur ddt add
+ end
+ /t exch def
+ ODESET
+ ode@dict
+ ddt mulvect /k5 exch def
+ dup k1 b61 mulvect addvect k2 b62 mulvect addvect k3 b63 mulvect addvect
+ k4 b64 mulvect addvect k5 b65 mulvect addvect
+ tcur ddt 2 div add
+ end
+ /t exch def
+ ODESET
+ ode@dict
+ ddt mulvect /k6 exch def % => [x(t)]
+ %fourth order solution (increment dx)
+ dup dup k1 a41 mulvect k3 a43 mulvect addvect k4 a44 mulvect addvect
+ k5 a45 mulvect addvect dup
+ % => [x(t)] [x(t)] [x(t)] [dx by RKF4] [dx by RKF4]
+ %fifth order solution (abs. error)
+ k1 a51 mulvect k3 a53 mulvect addvect k4 a54 mulvect addvect
+ k5 a55 mulvect addvect k6 a56 mulvect addvect subvect
+ % => [x(t)] [x(t)] [x(t)] [dx by RKF4] [err]
+ 5 1 roll addvect 4 -2 roll % => [x(t)] [x(t+ddt) by RKF4] [err] [x(t)]
+ %scaling vector for step size adjustment (Numerical Recipies)
+ eabsvect k1 eabsvect addvect {1e-30 add} forall xlength array astore
+ % => [x(t)] [x(t+ddt) by RKF4] [err] [xscale]
+ %maximum rel. error
+ /errmax 0 def
+ edivvect {abs dup errmax gt {/errmax exch def}{pop} ifelse} forall errmax
+ % => [x(t)] [x(t+ddt) by RKF4] errmax
+ end
} bind def
/ODEINT { % performs integration over output step [t,t+dt]
% [ state vector x(t) ] ODEINT => [ state vector x(t+dt) ]
%decrease overshooting step size
- tcur ddt add tout sub tcur ddt add tout sub dt add mul 0 gt
- {/ddt tout tcur sub def} if
+ ode@dict
+ tcur ddt add tout sub tcur ddt add tout sub dt add mul 0 gt
+ {/ddt tout tcur sub def} if
+ end
RKF45
ode@tol div dup 1 gt {
%failed step -> reduce step size
- exch pop pshrink exp 0.1 max sfty mul ddt mul /ddt exch def
- (-) odeprint tcur ddt add tcur eq {
- (error: step size underflow in ODEINT) print quit
- } if
+ ode@dict
+ exch pop pshrink exp 0.1 max sfty mul ddt mul /ddt exch def
+ (-) odeprint ode@dict tcur ddt add tcur end eq {
+ (error: step size underflow in ODEINT) print quit
+ } if
+ end
ODEINT %repeat step with new ddt
}{
%success
3 -1 roll pop % remove previous state vector
- /tcur tcur ddt add def
- pgrow exp 5 min sfty mul ddt mul /ddt exch def
- %output step completed?
- tcur tout sub dt mul 0 ge {
- (o) odeprint /tcur tout def /tout tout dt add def
+ ode@dict
+ /tcur tcur ddt add def
+ dup 0 ne {pgrow exp 5 min sfty mul ddt mul /ddt exch def}{pop} ifelse
+ %output step completed?
+ tcur tout sub dt mul
+ end
+ 0 ge {
+ (o) odeprint ode@dict /tcur tout def /tout tout dt add def end
}{
(+) odeprint ODEINT %continue integration
} ifelse
@@ -115,7 +158,7 @@
} bind def
/writeresult { %write output vector to file
{
- 20 string cvs statefile exch writestring
+ 256 string cvs statefile exch writestring
statefile ( ) writestring
} forall
statefile (\n) writestring
@@ -123,7 +166,7 @@
/assembleresult { %assembles state vector for building table of results
{
dup (t) eq {
- pop tcur
+ pop ode@dict tcur end
}{
ode@laststate exch get
} ifelse
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-ode/pst-ode.tex new/tex/generic/pst-ode/pst-ode.tex
--- old/tex/generic/pst-ode/pst-ode.tex 2012-09-15 00:15:11.000000000 +0200
+++ new/tex/generic/pst-ode/pst-ode.tex 2014-03-28 00:31:15.000000000 +0100
@@ -1,7 +1,7 @@
%%
%% This is file `pst-ode.tex',
%%
-%% Alexander Grahn, (C) 2012
+%% Alexander Grahn, (C) 2012, 2013
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN archives
@@ -11,8 +11,8 @@
%% ODEs using the Runge-Kutta-Fehlberg (RKF45) method with automatic
%% step size adjustment
%%
-\def\fileversion{0.2}
-\def\filedate{2012/09/14}
+\def\fileversion{0.7}
+\def\filedate{2014/03/27}
\csname PSTODELoaded\endcsname
\let\PSTODELoaded\endinput
@@ -54,6 +54,10 @@
% * saveData result is written to file <result>.dat
% * algebraic (system of) ODE given in infix notation
% * algebraicIC initial condition vector given in infix notation
+% * algebraicT integration interval limits ta, tb given in infix notation
+% * algebraicOutputFormat output vector format given in infix notation
+% * algebraicAll output vector format, ta, tb, initial cond., function given
+% in infix notation
% * silent suppress output of stepping information
% * varsteptol relative tolerance for step size adjustment
%
@@ -70,19 +74,20 @@
% #5: number of output points, including ta and tb; must be >= 2
% #6: initial condition vector; if empty, continue integration from the last
% state vector of the previous \pstODEsolve usage or from state vector set
-% by \pstODEsetRestorestate macro
+% by \pstODEsetOrRestoreState macro
% #7: right hand side of ODE system; if given in Postscript notation (algebraic=
% false), the function provided should pop (in reverse order!) the elements
% of the current state vector from the operand stack and push the first
% derivatives (right hand side of ODE system) back to it; inside the
% function, the integration parameter can be accessed using `t'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\define@boolkey[psset]{pst-ode}[Pst@]{append}[true]{}%
-\define@boolkey[psset]{pst-ode}[Pst@]{saveData}[true]{}%
-\define@boolkey[psset]{pst-ode}[Pst@]{algebraicIC}[true]{}%
-\define@boolkey[psset]{pst-ode}[Pst@]{algebraic}[true]{}%
-\define@boolkey[psset]{pst-ode}[Pst@]{silent}[true]{}%
-\define@boolkey[psset]{pst-ode}[Pst@]{algebraicOutputFormat}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{append}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{saveData}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{algebraicT}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{algebraicIC}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{algebraicOutputFormat}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{algebraicAll}[true]{}%
+\define@boolkey[psset]{pst-ode}[PstODE@]{silent}[true]{}%
\define@key[psset]{pst-ode}{varsteptol}{\def\ode@varsteptol{#1}}%
\def\pstODEsolve{\def\pst@par{}\pst@object{pstODEsolve}}%
\def\pstODEsolve@i#1#2#3#4#5#6#7{%
@@ -90,26 +95,41 @@
\begingroup%
\use@par%
\def\filemode{w}%
- \ifPst@append\def\filemode{a}\fi%
+ \ifPstODE@append\def\filemode{a}\fi%
+ \edef\ode@ta{#3{}}%
+ \edef\ode@tb{#4{}}%
\edef\ode@init{#6{}}%
\edef\ode@init{\expandafter\ode@zapspace\ode@init\@nil}%
\edef\ode@arg{#7{}}%
- \ifPst@algebraicOutputFormat\edef\ode@fmt{#2{}}\fi%
+ \ifPstODE@algebraicAll%
+ \PstODE@algebraicTtrue%
+ \PstODE@algebraicICtrue%
+ \PstODE@algebraicOutputFormattrue%
+ \Pst@algebraictrue%
+ \fi%
+ \ifPstODE@algebraicOutputFormat\edef\ode@fmt{#2{}}\fi%
\pstVerb{
tx@odeDict begin
- \ifPst@silent
+ \ifPstODE@silent
userdict /odeprint systemdict /pop get put
\else
userdict /odeprint {print flush} put
\fi
/ode@tol \ode@varsteptol\space def % rel. tolerance for step size adjustment
%process arguments
- \ifPst@saveData /statefile (#1.dat) (\filemode) file def \fi
- /tStart #3 def
- /tEnd #4 def
- /dt tEnd tStart sub #5\space 1 sub div def % output step size
+ \ifPstODE@saveData /statefile (#1.dat) (\filemode) file def \fi
+ \ifPstODE@algebraicT
+ tx@Dict begin (\expandafter\ode@zapspace\ode@ta\@nil)
+ AlgParser cvx exec end ode@dict /tStart exch def end
+ tx@Dict begin (\expandafter\ode@zapspace\ode@tb\@nil)
+ AlgParser cvx exec end ode@dict /tEnd exch def end
+ \else
+ tx@Dict begin 1 dict begin #3 end end ode@dict /tStart exch def end
+ tx@Dict begin 1 dict begin #4 end end ode@dict /tEnd exch def end
+ \fi
+ ode@dict /dt tEnd tStart sub #5\space 1 sub div def end % output step size
\ifx\@empty#6\@empty\else
- \ifPst@algebraicIC
+ \ifPstODE@algebraicIC
true setglobal globaldict /ode@laststate [
tx@Dict begin (\ode@init) AlgParser cvx
exec end
@@ -120,38 +140,39 @@
false setglobal
\fi
\fi%
- /xlength ode@laststate length def % number of equations
- /xlength1 xlength 1 add def % number of equations plus 1
+ ode@dict /xlength ode@laststate length def end % number of equations
+ ode@dict /xlength1 xlength 1 add def end % number of equations plus 1
\ifPst@algebraic
- /ode@rpn (\expandafter\ode@zapspace\ode@arg\@nil) AlgParser cvx bind def
+ /ode@rpn tx@Dict begin (\expandafter\ode@zapspace\ode@arg\@nil) AlgParser end cvx bind def
/ODESET {%system of ODEs
- tx@Dict begin /x exch def /y x def ode@rpn end xlength array astore
+ /x exch def /y x def tx@Dict begin ode@rpn end ode@dict xlength end array astore
} bind def
\else
/ODESET {
- aload pop tx@Dict begin 0 begin #7 end end xlength array astore
+ aload pop tx@Dict begin ode@foo begin #7 end end ode@dict xlength end array astore
} bind def
- %ensure local scope of user defined variables in #7
+ %ensure local scope of user defined variables in #7, from BlueBook, p. 133
/ODESET load 4 1 dict put
\fi
- \ifPst@algebraicOutputFormat
- /ode@fmtrpn (\expandafter\ode@zapspace\ode@fmt\@nil) AlgParser cvx bind def
+ \ifPstODE@algebraicOutputFormat
+ /ode@fmtrpn tx@Dict begin (\expandafter\ode@zapspace\ode@fmt\@nil) AlgParser end cvx bind def
/formatoutput {%
- tx@Dict begin
- ode@laststate /x exch def /y x def /t tcur def ode@fmtrpn
- end
+ ode@laststate /x exch def /y x def /t ode@dict tcur end def
+ tx@Dict begin ode@fmtrpn end
} bind def
\else /formatoutput {[#2] assembleresult} def \fi%
%perform ode integration
(\string\n pstODEsolve RKF45 method; '-' failed step, '+' successful step, %
'o' output step : \string\n) odeprint
- /tcur tStart def % current parameter t value
- /tout tStart dt add def % next output t
- /ddt dt def % initial integration step size
- \ifPst@append\else
+ ode@dict
+ /tcur tStart def % current parameter t value
+ /tout tStart dt add def % next output t
+ /ddt dt def % initial integration step size
+ end
+ \ifPstODE@append\else
[
[formatoutput]
- \ifPst@saveData dup writeresult \fi
+ \ifPstODE@saveData dup writeresult \fi
aload pop
true setglobal
]
@@ -164,14 +185,14 @@
globaldict exch /ode@laststate exch put false setglobal
[
#1 [formatoutput]
- \ifPst@saveData dup writeresult \fi
+ \ifPstODE@saveData dup writeresult \fi
aload pop
true setglobal
]
globaldict exch /#1 exch cvx put
false setglobal
} repeat
- \ifPst@saveData statefile closefile \fi
+ \ifPstODE@saveData statefile closefile \fi
end % tx@odeDict
}%
\endgroup%
@@ -202,9 +223,10 @@
}%
}
-\psset[pst-ode]{append=false,saveData=false,algebraicIC=false,
- algebraic=false,silent=false,varsteptol=1e-6,algebraicOutputFormat=false,
+\psset[pst-ode]{append=false,saveData=false,algebraicIC=false,algebraicT=false,
+ silent=false,varsteptol=1e-6,algebraicOutputFormat=false,algebraicAll=false
}
+\psset{algebraic=false}
\catcode`\@=\PstAtCode\relax
%% END: pst-ode.tex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-ode.tlpobj new/tlpkg/tlpobj/pst-ode.tlpobj
--- old/tlpkg/tlpobj/pst-ode.tlpobj 2012-09-15 04:29:14.000000000 +0200
+++ new/tlpkg/tlpobj/pst-ode.tlpobj 2014-03-28 03:23:31.000000000 +0100
@@ -1,6 +1,6 @@
name pst-ode
category Package
-revision 27669
+revision 33301
shortdesc Solving initial value problems for sets of Ordinary Differential Equations.
relocated 1
longdesc The package defines \pstODEsolve for solving initial value
@@ -12,11 +12,11 @@
longdesc \listplotThreeD (pst-3dplot), or may be further processed by
longdesc user-defined PostScript procedures. Optionally, the computed
longdesc state vectors can be written as a table to a text file.
-runfiles size=5
+runfiles size=6
RELOC/dvips/pst-ode/pst-ode.pro
RELOC/tex/generic/pst-ode/pst-ode.tex
RELOC/tex/latex/pst-ode/pst-ode.sty
catalogue-ctan /graphics/pstricks/contrib/pst-ode
-catalogue-date 2012-09-14 20:13:55 +0200
+catalogue-date 2014-03-27 19:23:13 +0100
catalogue-license lppl
-catalogue-version 0.2
+catalogue-version 0.7
++++++ pst-optexp.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/pst-optexp/Changes new/doc/latex/pst-optexp/Changes
--- old/doc/latex/pst-optexp/Changes 2013-05-22 01:04:53.000000000 +0200
+++ new/doc/latex/pst-optexp/Changes 2014-03-03 02:31:32.000000000 +0100
@@ -1,3 +1,49 @@
+4.8 2014-02-28
+ * Added component \optaom.
+ * Added option beammode.
+ * Added option showinterfaces.
+
+4.7 2014-01-12
+ * Added syntax <\prm{num} for accessing relative component IDs.
+
+4.6 2013-11-27
+ * Added option extnodes.
+ * Added option optdipolecomp.
+ * Added option opttripolecomp.
+
+4.5 2013-07-21
+ * Added option usewirestyle.
+ * Added line style fade, with options fadeto, fadepoints,
+ fadefunc, and fadefuncname.
+
+4.4 2013-07-14
+ * Added component \transmissiongrating.
+ * Modified innerlabel to explicitly set labelalign=c
+ * Fixed trailing spaces in savebeampoints (and savebeam).
+ * Allow Postscript code in angle.
+
+4.3a 2013-07-02
+ * Fixed tripole alignment bugs introduced in version 4.3.
+ * Again fixed the alignment of reflective \optprism.
+ * Fixed improper alignment of \optprism label.
+
+4.3 2013-06-28
+ * Added option raprismalign.
+ * Fixed alignment of \rightangleprism and rotation of its label.
+
+4.2 2013-06-07
+ * Added option startinsidecount.
+ * Added option stopinsidecount.
+ * Added option beampathcount.
+ * Added option beamnodealign.
+ * Added \oeBeamVecMedian.
+ * Added \oeBeamCenter.
+ * Modified the orientation of a reflective \optprism.
+ * Fixed bug of \optprism and \rightangleprism inside an
+ \env{optexp} environment.
+ * Fixed bug of wrong \rightangleprism rotation in special cases.
+ * Fixed buggy handling of multiple saved beams.
+
4.1 2013-05-21
* Added option prismtype.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/pst-optexp/README new/doc/latex/pst-optexp/README
--- old/doc/latex/pst-optexp/README 2012-07-11 02:23:38.000000000 +0200
+++ new/doc/latex/pst-optexp/README 2013-12-02 00:02:12.000000000 +0100
@@ -1,5 +1,5 @@
------------------------------------------------------------------------
-The pst-optexp package --- Sketching optical experimental setups
+The pst-optexp package --- Drawing optical experimental setups
Maintained by Christoph Bersch
E-mail: usenet@bersch.net
Released under the LaTeX Project Public License v1.3c or later
Files old/doc/latex/pst-optexp/pst-optexp-DE.pdf and new/doc/latex/pst-optexp/pst-optexp-DE.pdf differ
Files old/doc/latex/pst-optexp/pst-optexp-quickref.pdf and new/doc/latex/pst-optexp/pst-optexp-quickref.pdf differ
Files old/doc/latex/pst-optexp/pst-optexp.pdf and new/doc/latex/pst-optexp/pst-optexp.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-optexp.doc.tlpobj new/tlpkg/tlpobj/pst-optexp.doc.tlpobj
--- old/tlpkg/tlpobj/pst-optexp.doc.tlpobj 2013-05-22 03:52:44.000000000 +0200
+++ new/tlpkg/tlpobj/pst-optexp.doc.tlpobj 2014-03-03 03:24:20.000000000 +0100
@@ -1,9 +1,9 @@
name pst-optexp.doc
category Package
-revision 30617
+revision 33077
shortdesc doc files of pst-optexp
relocated 1
-docfiles size=1115
+docfiles size=1435
RELOC/doc/latex/pst-optexp/Changes
RELOC/doc/latex/pst-optexp/README
RELOC/doc/latex/pst-optexp/pst-optexp-DE.pdf
++++++ pst-optexp.tar.xz ++++++
++++ 1968 lines of diff (skipped)
++++++ pst-pdf.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/pst-pdf/CHANGES new/doc/latex/pst-pdf/CHANGES
--- old/doc/latex/pst-pdf/CHANGES 2008-10-11 01:11:47.000000000 +0200
+++ new/doc/latex/pst-pdf/CHANGES 1970-01-01 01:00:00.000000000 +0100
@@ -1,131 +0,0 @@
-Changes to pst-pdf:
-
-v1.0a
- General: Initial version.
-v1.0b
- General: Some code and documentation cleaning. (RN)
-v1.0c
- General: New options "pstricks", "nopstricks", "draft" and
- "final". (RN)
-v1.0d
- General: Redefinition of \includegraphics in modes 0 und 1. Now
- using of eps graphics directly in pdfLaTeX is possible.
- (RN)
-v1.0e
- postscript: "trim" option added. (RN)
-v1.0f
- General: Config file loading added. (RN)
- \savepicture: New macro \savepspicture. (RN)
- \usepicture: New macro \usepspicture. Useful for putting a
- PSTricks graphic in a box or something else. (RN)
-v1.0g
- General: Definition of \PDFcontainer now with \edef. (RN)
- \usepicture: Now \usepspicture does accept a numerical
- parameter. (RN)
-v1.0h
- psmatrix: Based no more on the comment environment from the
- verbatim package. (RN)
-v1.0i
- \ppf@is@pdfTeX@graphic: No more errors for given files without
- extensions. (RN)
-v1.0j
- General: Check AtBeginDocument for package `pstricks' even if
- "nopstricks" is given. (RN)
-v1.0k
- \Gin@setfile: Show also the pagenumber if exists. (RN)
- \Ginclude@graphics: Prevent division by zero. (RN)
-v1.0l
- General: Options "framesep", "framerule", "linewidth" removed,
- "fname" and "innerframe" added. (RN)
-v1.0m
- General: New package option "notightpage" added. (RN)
-v1.0n
- General: Changed marcro names (\savepicture and \usepicture).
- (RN)
- Some code cleaning. (RN)
-v1.0o
- General: New code for "notightpage". (RN)
- Option "fname" renamed to "showname". (RN)
-v1.0p
- General: Some code and documentation cleaning. (RN)
-v1.0q
- \usepicture: Now \usepspicture works for all kind of graphics.
- (RN)
-v1.0r
- \ppf@is@pdfTeX@graphic: Changed \ppf@is@known@graphic to
- \ppf@is@pdfTeX@graphic. Now pdfTEX graphics are
- prefered. (RN)
-v1.0s
- General: Scaling e.g. of PostScript pictures now only in
- extraction mode. Some code cleaning. (RN)
- \Gin@ii: Rewritten. (RN)
-v1.1a
- General: Support for the internal PSTricks macro \pst@object.
- (HjG/RN)
-v1.1b
- General: Ignore the call of \nofiles inside of preview. (RN)
- Some code and documentation cleaning. (RN)
-v1.1c
- General: New package option "tightpage" added. (RN)
- Special support for "tabularx". (RN)
- Supress handling of pdfLaTeX graphic formats in DVI mode.
- (RN)
-v1.1d
- postscript: Support for PSTricks environment "psmatrix". (RN)
-v1.1e
- General: New option "displaymath" (see preview package).
- (HjG/RN)
-v1.1f
- General: Package option "ignore" reimplemented. Now the
- compilation of the dtx file in LaTeX mode is possible.
- (RN)
-v1.1g
- postscript: "psmatrix" environment (preserve math mode).
- (RN/HjG)
- pspicture: pspicture environment must still parse its arguments.
- (RN/HjG)
-v1.1h
- \Ginclude@graphics: Check if inside of a PS-related environment
- (correct graphic inclusion). (RN)
-v1.1i
- General: \ifpr@outer must be predefined. (HjG/RN)
- Package option "final" also for "graphicx". (RN)
- \Ginclude@graphics: Correction of the inside check. (RN/HjG)
-v1.1k
- General: New environment pst-pdf-defs: Support for PSTricks
- environment "psmatrix" inside user definitions.
- (RN,HjG)
-v1.1l
- General: Support for the package "psfragx". (RN)
-v1.1m
- General: Merge english and german version of the documentation.
- (RN)
-v1.1n
- General: \nofiles added (suggestion of Torsten Bronger).
-v1.1o
- \Gscale@@box: Disable scaling. (RN)
-v1.1p
- General: \nofiles makes \makeindex and \makeglossary to \relax.
- \@empty is better because of later \renewcommand's.
-v1.1p1
- General: \let\output\@gobble before loading of "preview" added.
- (RN)
-v1.1q
- General: Problem with "tabularx" and "threeparttabel" solved.
- (RN)
-v1.1r
- General: Fixed values for \PreviewBbAdjust because \paperwidth
- is not allways defined (suggested by Will Robertson).
-v1.1s
- General: Dummy definition of the page key in DVI mode.
-v1.1t
- General: Remove the line "\let\output\@gobble" because of bad
- side effects. (RN)
- postscript: Using environ the environment postscript is now
- simple and more robust. (RN)
-v1.1u
- General: \pdfoutput must be set when loading "pdftex.def" in DVI
- mode. (RN)
-v1.1v
- General: Local redefinition of \pdfoutput to be a counter. (RN)
- \Gin@ii: Key settings only for pdf graphics. (RN)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/pst-pdf/README new/doc/latex/pst-pdf/README
--- old/doc/latex/pst-pdf/README 2008-05-04 02:21:05.000000000 +0200
+++ new/doc/latex/pst-pdf/README 1970-01-01 01:00:00.000000000 +0100
@@ -1,26 +0,0 @@
-
-pst-pdf.sty
-
-A LaTeX package to integrate PostScript code into a PDF output.
-Load the testfile pst-pdf-example.tex and run it with the shell script
-
-ps4pdf pst-pdf-example.tex
-
-it produces the output file pst-pdf-example.pdf. Be sure that the script is
-executable.
-
-pst-pdf.sty -> $TEXMF-LOCAL
-ps4pdf -> /usr/local/bin
- the shell script for running latex->dvips->ps2pdf->pdflatex
-
-
-without a shell script, run
-
-latex <file>
-dvips -Ppdf -o <file>-pics.ps <file>.dvi
-ps2pdf -dAutoRotatePages=/None <file>-pics.ps <file>-pics.pdf
-pdflatex <file>
-
- Rolf Niepraschk, 2006-07-23
-
-
Files old/doc/latex/pst-pdf/pst-pdf-DE.pdf and new/doc/latex/pst-pdf/pst-pdf-DE.pdf differ
Files old/doc/latex/pst-pdf/pst-pdf-example1.pdf and new/doc/latex/pst-pdf/pst-pdf-example1.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/pst-pdf/pst-pdf-example1.tex new/doc/latex/pst-pdf/pst-pdf-example1.tex
--- old/doc/latex/pst-pdf/pst-pdf-example1.tex 2008-09-10 22:15:16.000000000 +0200
+++ new/doc/latex/pst-pdf/pst-pdf-example1.tex 1970-01-01 01:00:00.000000000 +0100
@@ -1,129 +0,0 @@
-%%
-%% This is file `pst-pdf-example1.tex',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% pst-pdf.dtx (with options: `example1')
-%%
-%% This is a generated file.
-%%
-%% Copyright (C) 2004-2008 by Rolf Niepraschk
-%% and Hubert Gaesslein
-%%
-%% This file may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License, either version 1.2 of this license
-%% or (at your option) any later version. The latest version of this
-%% license is in:
-%%
-%% http://www.latex-project.org/lppl.txt
-%%
-%% and version 1.2 or later is part of all distributions of LaTeX version
-%% 1999/12/01 or later.
-%%
-%% Process this file with the scripts `ps4pdf' or `ps4pdf.bat' or call
-%%
-%% latex pst-pdf-example1.tex
-%% dvips -Ppdf -o pst-pdf-example1-pics.ps pst-pdf-example1.dvi
-%% ps2pdf -dAutoRotatePages=/None pst-pdf-example1-pics.ps pst-pdf-example1-pics.pdf
-%% pdflatex pst-pdf-example1.tex
-%%
-\listfiles
-\documentclass[12pt,a4paper]{article}
-\usepackage[margin={25mm,30mm}]{geometry}
-
-\usepackage[dvipsnames]{pstricks}
-\usepackage{pst-node,pst-tree,psfrag}
-\usepackage{pst-pdf}
-
-\pagestyle{empty}
-
-\begin{document}
-
-\section*{\textsf{pst-pdf:} A short example document}
-
-\subsection*{png graphic and postscript graphic together}
-
-\noindent\includegraphics[width=.35\textwidth]{knuth}% A none-ps graphic
-\hfill
-\includegraphics[width=.60\textwidth]{elephant}% A ps graphic
-
-\subsection*{PSTricks code inside a pspicture environment}
-
-\newpsobject{showgrid}{psgrid}{subgriddiv=1,griddots=10,gridlabels=8pt}
-
-\begin{center}
-\begin{pspicture}(-5.25,-5.25)(5.25,5.25)%
- \pscircle*[linecolor=Apricot]{5}
- \rput(0,0.5){\includegraphics[width=8\psxunit]{elephant}}
- \Huge\sffamily\bfseries
- \rput(-4.5,4.5){A} \rput(4.5,4.5){B}
- \rput(-4.5,-4.5){C}\rput(4.5,-4.5){D}
- \rmfamily
- \rput(0,-3.8){PSTricks}
- \rput(0,3.8){\LaTeX}
- \showgrid
-\end{pspicture}
-\end{center}
-
-\subsection*{PSTricks code without a pspicture environment}
-
-%%----------------------------------------------------------------------
-%% From: The \LaTeX\ Graphics Companion; first release.
-\definecolor{pink}{rgb}{1, .75, .8}
-\renewcommand\psedge{\nccurve}
-\newcommand{\Female}[2][]{{\psset{linecolor=pink}\TR[#1]{\emph{#2}}}}
-\newcommand{\Male}[2][]{{\psset{linecolor=blue}\TR[#1]{#2}}}
-\psset{nodesep=2pt,angleA=90,angleB=-90}
-\footnotesize
-
-\pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
- \pstree{\Male{Sebastian}}{%
- \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
- \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
- \pstree{\Female{Leonor}}{%
- \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
- \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
-}
-
-%%----------------------------------------------------------------------
-
-\subsection*{psfrag demo}
-
-\normalsize
-
-\noindent
-\includegraphics[width=.475\textwidth]{psf-demo.eps}
-\hfill
-\begin{psfrags}
- \psfragscanon
- \psfrag{x1}[br][ ]{\LaTeX} \psfrag{x2}[br][br]{\LaTeX}
- \psfrag{x3}[br][tl]{\LaTeX} \psfrag{x4}[br][Br]{\LaTeX}
- \psfrag{x5}[Br][ r][1.15][45]{\Huge\LaTeX}
- \psfrag{x6}[tl][ l][1.15][45]{\Huge\LaTeX}
- \includegraphics[width=.475\textwidth]{psf-demo}
-\end{psfrags}
-
-\subsection*{The postscript environment}
-
-\begin{center}
-\begin{postscript}
-\Large
-\noindent
-$
- \bordermatrix{%
- & A & B & C\cr
- & \rnode{D}{D} & E & \rnode{F}{F}\cr
- & G & H & I\cr
- & \rnode{J}{J} & K & M
- }
-$
-\ncline[nodesep=-1em,linecolor=red]{D}{F}
-\ncline[nodesep=-1em,linecolor=red]{D}{J}
-\end{postscript}
-\end{center}
-
-\end{document}
-\endinput
-%%
-%% End of file `pst-pdf-example1.tex'.
Files old/doc/latex/pst-pdf/pst-pdf-example2.pdf and new/doc/latex/pst-pdf/pst-pdf-example2.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/pst-pdf/pst-pdf-example2.tex new/doc/latex/pst-pdf/pst-pdf-example2.tex
--- old/doc/latex/pst-pdf/pst-pdf-example2.tex 2008-09-10 22:15:16.000000000 +0200
+++ new/doc/latex/pst-pdf/pst-pdf-example2.tex 1970-01-01 01:00:00.000000000 +0100
@@ -1,279 +0,0 @@
-%%
-%% This is file `pst-pdf-example2.tex',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% pst-pdf.dtx (with options: `example2')
-%%
-%% This is a generated file.
-%%
-%% Copyright (C) 2004-2008 by Rolf Niepraschk
-%% and Hubert Gaesslein
-%%
-%% This file may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License, either version 1.2 of this license
-%% or (at your option) any later version. The latest version of this
-%% license is in:
-%%
-%% http://www.latex-project.org/lppl.txt
-%%
-%% and version 1.2 or later is part of all distributions of LaTeX version
-%% 1999/12/01 or later.
-%%
-%% Process this file with the scripts `ps4pdf' or `ps4pdf.bat' or call
-%%
-%% latex pst-pdf-example2.tex
-%% dvips -Ppdf -o pst-pdf-example2-pics.ps pst-pdf-example2.dvi
-%% ps2pdf -dAutoRotatePages=/None pst-pdf-example2-pics.ps pst-pdf-example2-pics.pdf
-%% pdflatex pst-pdf-example2.tex
-%%
-\listfiles\errorcontextlines=100\relax
-\documentclass[12pt]{article}
-
-%% before `psfrag'!
-\usepackage[displaymath,dvipsnames]{pst-pdf}
-%%\usepackage[displaymath,dvipsnames,notightpage]{pst-pdf}
-
-\usepackage{pst-node,pst-tree}
-
-\usepackage{psfrag,tabularx}
-
-\pagestyle{empty}
-
-\begin{postscript}[trim=0 0 0 0,ignore]
- \includegraphics[width=.475\textwidth]{penguin.eps}
-\end{postscript}
-\savepicture{ps:A}
-
-\begin{pst-pdf-defs}%
-
-%% This definition must be within the pst-pdf-defs environment!
-\newcommand*\mytree{%
- \begin{psmatrix}[rowsep=.2cm,colsep=2cm]
- & & E \\
- & A & \\
- & & F \\
- $\bullet$ & & \\
- & & G \\
- & B & \\
- & & H \\
- \scriptsize
- \psset{shortput=nab,arrows=->,labelsep=2pt,nodesep=2pt,nrot=:U}
-
- \ncline{4,1}{2,2}\ncput*{$0,2$}
- \ncline{4,1}{6,2}\ncput*{$x$}
-
- \ncline{2,2}{1,3}\ncput*{$0,3$}
- \ncline{2,2}{3,3}\ncput*{$y$}
-
- \ncline{6,2}{5,3}\ncput*{$z$}
- \ncline{6,2}{7,3}\ncput*{$0,8$}
- \end{psmatrix}%
-}
-
-\end{pst-pdf-defs}%
-
-%% This works without the pst-pdf-defs environment!
-\newcommand*\mymatrix{%
- \begin{postscript}
- \[
- \begin{array}{rcl}
- a & b & c \\
- 1 & 2 & 3 \\
- \end{array}
- \]
- \end{postscript}%
-}
-
-\begin{document}
-
-\setkeys{Gin}{showname,frame}%
-
-\psset{unit=0.0714\textwidth}% 1/14 * \textwidth
-\newpsobject{showgrid}{psgrid}{subgriddiv=1,griddots=10,gridlabels=6pt}
-
-\newcommand*\BASEMARKER{\rule{.5em}{.4pt}}
-
-\setlength\parindent{0pt}
-
-\centering
-
-\section*{\textsf{pst-pdf:}
- PSTricks and other PostScript code in pdf\LaTeX\ documents}
-
-\vfill
-
-\begin{pspicture}(-5.5,-5.25)(5.25,5.25)%
-%%\begin{pspicture}[trim=-.5 -.25 .25 .25,frame](-5,-5)(5,5)% PSTricks2
- \pscircle*[linecolor=Apricot]{5}
- \rput(0,0.5){\includegraphics[width=8\psxunit]{elephant}}
- \Huge\sffamily\bfseries
- \rput(-4.5,4.5){A} \rput(4.5,4.5){B}
- \rput(-4.5,-4.5){C}\rput(4.5,-4.5){D}
- \rmfamily
- \rput(0,-3.8){PSTricks}
- \rput(0,3.8){\LaTeX}
- \showgrid
-\end{pspicture}\savepicture{ps:B}
-
-\vfill\null\newpage
-
-\usepicture{ps:A}
-\hfill
-\includegraphics[width=.475\textwidth]{insect1}
-
-\vfill
-
-\usepicture[angle=180,origin=c]{ps:A}
-\hfill
-\usepicture[width=.47\textwidth]{ps:B}
-
-\includegraphics[width=.475\textwidth,frame=false,
- namefont={\Huge\itshape}]{knuth}
-\hfill
-\usepicture[angle=45,origin=bl,width=.475\textwidth,innerframe]{1}%
-
-\vfill
-
-\includegraphics[width=.47\textwidth]{psf-demo}
-\hfill
-\begin{psfrags}
- \psfragscanon
- \psfrag{x1}[br][ ]{\LaTeX} \psfrag{x2}[br][br]{\LaTeX}
- \psfrag{x3}[br][tl]{\LaTeX} \psfrag{x4}[br][Br]{\LaTeX}
- \psfrag{x5}[Br][ r][1.15][45]{\Huge\LaTeX}
- \psfrag{x6}[tl][ l][1.15][45]{\Huge\LaTeX}
- \includegraphics[width=.47\textwidth]{psf-demo}
-\end{psfrags}
-
-\includegraphics[width=\textwidth,showname=false,frame=false]{insect15}
-
-\bigskip
-
-\Large
-
-\begin{equation}
- \sigma(t)=\frac{1}{\sqrt{2\pi}}
- \int^t_0 e^{-x^2/2} dx
-\end{equation}
-
-\clearpage
-
-\setkeys{Gin}{showname=false,frame=false}%
-
-{ \Huge \renewcommand*\arraystretch{1.5}
-
- \noindent
- \begin{tabularx}{\textwidth}{|@{}>{\centering}X@{}|} \hline
-
- \psframebox*[fillcolor=green,framearc=.6]{HUGO}\BASEMARKER
- \fbox{\BASEMARKER GUSTAV} \tabularnewline
-
- \begin{postscript}
- \psframebox*[fillcolor=green,framearc=.6]{HUGO}\BASEMARKER
- \fbox{\BASEMARKER GUSTAV}
- \end{postscript} \tabularnewline \hline
-
- \end{tabularx}
-
-}
-
-\bigskip
-
-\definecolor{pink}{rgb}{1, .75, .8}
-\renewcommand\psedge{\nccurve}
-\newcommand{\Female}[2][]{{\psset{linecolor=pink}\TR[#1]{\emph{#2}}}}
-\newcommand{\Male}[2][]{{\psset{linecolor=blue}\TR[#1]{#2}}}
-
-\psset{nodesep=2pt,angleA=90,angleB=-90}
-
-{ \footnotesize
-
- %% From: The \LaTeX\ Graphics Companion; first release.
- \pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
- \pstree{\Male{Sebastian}}{%
- \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
- \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
- \pstree{\Female{Leonor}}{%
- \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
- \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
- }
-
- \iffalse % --> Cannot work outside of a special environment!
- \psset{linecolor=green,doubleline=true,linestyle=dotted}
- \ncline{P}{W}\nbput{1940}
- \ncline{R}{A}\nbput{1954}
- \fi
-}
-
-\bigskip
-
-\psset{arrows=->,fillcolor=white,fillstyle=solid}
-
-\footnotesize
-
-\newcommand{\Show}[1]{\psshadowbox{#1}}
-
-\begin{psmatrix}[mnode=r,ref=t,unit=.3]
- \psframebox[linestyle=none,framesep=.75]{%
- \begin{psmatrix}[name=A,ref=c]
- \Show{Stakeholder}
- \end{psmatrix}} &
- \psframebox[fillstyle=solid,fillcolor=pink,framesep=.95]{%
- \rule{1cm}{0pt}
- \begin{psmatrix}[ref=c]
- [name=B]\Show{Goal} & \Show{Criteria}\\
- \Show{Sub-goal} & \Show{Justification}
- \ncline{1,1}{1,2}
- \ncline{1,1}{2,2}
- \ncline{1,1}{2,1}\tlput{Strategy}
- \ncline{2,1}{2,2}
- \end{psmatrix}}
- \ncline[angleB=180]{A}{B}\naput[npos=.7]{Model}
-\end{psmatrix}
-
-\begin{postscript}[angle=90,height=\textheight,frame=false]
-
-\pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
- \pstree{\Male{Sebastian}}{%
- \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
- \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
- \pstree{\Female{Leonor}}{
- \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
- \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
-}
-
-\psset{linecolor=green,doubleline=true,linestyle=dotted}
-\ncline{P}{W}\nbput{1940}
-\ncline{R}{A}\nbput{1954}
-
-\end{postscript}
-
-\bigskip
-
-\psset{arrows=-}
-
-\begin{displaymath}
- \bordermatrix{%
- & A & B & C\cr
- & \rnode{D}{D} & E & \rnode{F}{F}\cr
- & G & H & I\cr
- & \rnode{J}{J} & K & M
- }
- \ncline[nodesep=-1em,linecolor=red]{D}{F}
- \ncline[nodesep=-1em,linecolor=red]{D}{J}
-\end{displaymath}
-
-\bigskip
-
-\mytree
-
-\bigskip
-
-\mymatrix
-
-\end{document}
-\endinput
-%%
-%% End of file `pst-pdf-example2.tex'.
Files old/doc/latex/pst-pdf/pst-pdf.pdf and new/doc/latex/pst-pdf/pst-pdf.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst-pdf/CHANGES new/texmf-dist/doc/latex/pst-pdf/CHANGES
--- old/texmf-dist/doc/latex/pst-pdf/CHANGES 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/doc/latex/pst-pdf/CHANGES 2008-10-11 01:11:47.000000000 +0200
@@ -0,0 +1,131 @@
+Changes to pst-pdf:
+
+v1.0a
+ General: Initial version.
+v1.0b
+ General: Some code and documentation cleaning. (RN)
+v1.0c
+ General: New options "pstricks", "nopstricks", "draft" and
+ "final". (RN)
+v1.0d
+ General: Redefinition of \includegraphics in modes 0 und 1. Now
+ using of eps graphics directly in pdfLaTeX is possible.
+ (RN)
+v1.0e
+ postscript: "trim" option added. (RN)
+v1.0f
+ General: Config file loading added. (RN)
+ \savepicture: New macro \savepspicture. (RN)
+ \usepicture: New macro \usepspicture. Useful for putting a
+ PSTricks graphic in a box or something else. (RN)
+v1.0g
+ General: Definition of \PDFcontainer now with \edef. (RN)
+ \usepicture: Now \usepspicture does accept a numerical
+ parameter. (RN)
+v1.0h
+ psmatrix: Based no more on the comment environment from the
+ verbatim package. (RN)
+v1.0i
+ \ppf@is@pdfTeX@graphic: No more errors for given files without
+ extensions. (RN)
+v1.0j
+ General: Check AtBeginDocument for package `pstricks' even if
+ "nopstricks" is given. (RN)
+v1.0k
+ \Gin@setfile: Show also the pagenumber if exists. (RN)
+ \Ginclude@graphics: Prevent division by zero. (RN)
+v1.0l
+ General: Options "framesep", "framerule", "linewidth" removed,
+ "fname" and "innerframe" added. (RN)
+v1.0m
+ General: New package option "notightpage" added. (RN)
+v1.0n
+ General: Changed marcro names (\savepicture and \usepicture).
+ (RN)
+ Some code cleaning. (RN)
+v1.0o
+ General: New code for "notightpage". (RN)
+ Option "fname" renamed to "showname". (RN)
+v1.0p
+ General: Some code and documentation cleaning. (RN)
+v1.0q
+ \usepicture: Now \usepspicture works for all kind of graphics.
+ (RN)
+v1.0r
+ \ppf@is@pdfTeX@graphic: Changed \ppf@is@known@graphic to
+ \ppf@is@pdfTeX@graphic. Now pdfTEX graphics are
+ prefered. (RN)
+v1.0s
+ General: Scaling e.g. of PostScript pictures now only in
+ extraction mode. Some code cleaning. (RN)
+ \Gin@ii: Rewritten. (RN)
+v1.1a
+ General: Support for the internal PSTricks macro \pst@object.
+ (HjG/RN)
+v1.1b
+ General: Ignore the call of \nofiles inside of preview. (RN)
+ Some code and documentation cleaning. (RN)
+v1.1c
+ General: New package option "tightpage" added. (RN)
+ Special support for "tabularx". (RN)
+ Supress handling of pdfLaTeX graphic formats in DVI mode.
+ (RN)
+v1.1d
+ postscript: Support for PSTricks environment "psmatrix". (RN)
+v1.1e
+ General: New option "displaymath" (see preview package).
+ (HjG/RN)
+v1.1f
+ General: Package option "ignore" reimplemented. Now the
+ compilation of the dtx file in LaTeX mode is possible.
+ (RN)
+v1.1g
+ postscript: "psmatrix" environment (preserve math mode).
+ (RN/HjG)
+ pspicture: pspicture environment must still parse its arguments.
+ (RN/HjG)
+v1.1h
+ \Ginclude@graphics: Check if inside of a PS-related environment
+ (correct graphic inclusion). (RN)
+v1.1i
+ General: \ifpr@outer must be predefined. (HjG/RN)
+ Package option "final" also for "graphicx". (RN)
+ \Ginclude@graphics: Correction of the inside check. (RN/HjG)
+v1.1k
+ General: New environment pst-pdf-defs: Support for PSTricks
+ environment "psmatrix" inside user definitions.
+ (RN,HjG)
+v1.1l
+ General: Support for the package "psfragx". (RN)
+v1.1m
+ General: Merge english and german version of the documentation.
+ (RN)
+v1.1n
+ General: \nofiles added (suggestion of Torsten Bronger).
+v1.1o
+ \Gscale@@box: Disable scaling. (RN)
+v1.1p
+ General: \nofiles makes \makeindex and \makeglossary to \relax.
+ \@empty is better because of later \renewcommand's.
+v1.1p1
+ General: \let\output\@gobble before loading of "preview" added.
+ (RN)
+v1.1q
+ General: Problem with "tabularx" and "threeparttabel" solved.
+ (RN)
+v1.1r
+ General: Fixed values for \PreviewBbAdjust because \paperwidth
+ is not allways defined (suggested by Will Robertson).
+v1.1s
+ General: Dummy definition of the page key in DVI mode.
+v1.1t
+ General: Remove the line "\let\output\@gobble" because of bad
+ side effects. (RN)
+ postscript: Using environ the environment postscript is now
+ simple and more robust. (RN)
+v1.1u
+ General: \pdfoutput must be set when loading "pdftex.def" in DVI
+ mode. (RN)
+v1.1v
+ General: Local redefinition of \pdfoutput to be a counter. (RN)
+ \Gin@ii: Key settings only for pdf graphics. (RN)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst-pdf/README new/texmf-dist/doc/latex/pst-pdf/README
--- old/texmf-dist/doc/latex/pst-pdf/README 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/doc/latex/pst-pdf/README 2008-05-04 02:21:05.000000000 +0200
@@ -0,0 +1,26 @@
+
+pst-pdf.sty
+
+A LaTeX package to integrate PostScript code into a PDF output.
+Load the testfile pst-pdf-example.tex and run it with the shell script
+
+ps4pdf pst-pdf-example.tex
+
+it produces the output file pst-pdf-example.pdf. Be sure that the script is
+executable.
+
+pst-pdf.sty -> $TEXMF-LOCAL
+ps4pdf -> /usr/local/bin
+ the shell script for running latex->dvips->ps2pdf->pdflatex
+
+
+without a shell script, run
+
+latex <file>
+dvips -Ppdf -o <file>-pics.ps <file>.dvi
+ps2pdf -dAutoRotatePages=/None <file>-pics.ps <file>-pics.pdf
+pdflatex <file>
+
+ Rolf Niepraschk, 2006-07-23
+
+
Files old/texmf-dist/doc/latex/pst-pdf/pst-pdf-DE.pdf and new/texmf-dist/doc/latex/pst-pdf/pst-pdf-DE.pdf differ
Files old/texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.pdf and new/texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.tex new/texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.tex
--- old/texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.tex 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.tex 2008-09-10 22:15:16.000000000 +0200
@@ -0,0 +1,129 @@
+%%
+%% This is file `pst-pdf-example1.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% pst-pdf.dtx (with options: `example1')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2004-2008 by Rolf Niepraschk
+%% and Hubert Gaesslein
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.2 of this license
+%% or (at your option) any later version. The latest version of this
+%% license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.2 or later is part of all distributions of LaTeX version
+%% 1999/12/01 or later.
+%%
+%% Process this file with the scripts `ps4pdf' or `ps4pdf.bat' or call
+%%
+%% latex pst-pdf-example1.tex
+%% dvips -Ppdf -o pst-pdf-example1-pics.ps pst-pdf-example1.dvi
+%% ps2pdf -dAutoRotatePages=/None pst-pdf-example1-pics.ps pst-pdf-example1-pics.pdf
+%% pdflatex pst-pdf-example1.tex
+%%
+\listfiles
+\documentclass[12pt,a4paper]{article}
+\usepackage[margin={25mm,30mm}]{geometry}
+
+\usepackage[dvipsnames]{pstricks}
+\usepackage{pst-node,pst-tree,psfrag}
+\usepackage{pst-pdf}
+
+\pagestyle{empty}
+
+\begin{document}
+
+\section*{\textsf{pst-pdf:} A short example document}
+
+\subsection*{png graphic and postscript graphic together}
+
+\noindent\includegraphics[width=.35\textwidth]{knuth}% A none-ps graphic
+\hfill
+\includegraphics[width=.60\textwidth]{elephant}% A ps graphic
+
+\subsection*{PSTricks code inside a pspicture environment}
+
+\newpsobject{showgrid}{psgrid}{subgriddiv=1,griddots=10,gridlabels=8pt}
+
+\begin{center}
+\begin{pspicture}(-5.25,-5.25)(5.25,5.25)%
+ \pscircle*[linecolor=Apricot]{5}
+ \rput(0,0.5){\includegraphics[width=8\psxunit]{elephant}}
+ \Huge\sffamily\bfseries
+ \rput(-4.5,4.5){A} \rput(4.5,4.5){B}
+ \rput(-4.5,-4.5){C}\rput(4.5,-4.5){D}
+ \rmfamily
+ \rput(0,-3.8){PSTricks}
+ \rput(0,3.8){\LaTeX}
+ \showgrid
+\end{pspicture}
+\end{center}
+
+\subsection*{PSTricks code without a pspicture environment}
+
+%%----------------------------------------------------------------------
+%% From: The \LaTeX\ Graphics Companion; first release.
+\definecolor{pink}{rgb}{1, .75, .8}
+\renewcommand\psedge{\nccurve}
+\newcommand{\Female}[2][]{{\psset{linecolor=pink}\TR[#1]{\emph{#2}}}}
+\newcommand{\Male}[2][]{{\psset{linecolor=blue}\TR[#1]{#2}}}
+\psset{nodesep=2pt,angleA=90,angleB=-90}
+\footnotesize
+
+\pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
+ \pstree{\Male{Sebastian}}{%
+ \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
+ \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
+ \pstree{\Female{Leonor}}{%
+ \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
+ \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
+}
+
+%%----------------------------------------------------------------------
+
+\subsection*{psfrag demo}
+
+\normalsize
+
+\noindent
+\includegraphics[width=.475\textwidth]{psf-demo.eps}
+\hfill
+\begin{psfrags}
+ \psfragscanon
+ \psfrag{x1}[br][ ]{\LaTeX} \psfrag{x2}[br][br]{\LaTeX}
+ \psfrag{x3}[br][tl]{\LaTeX} \psfrag{x4}[br][Br]{\LaTeX}
+ \psfrag{x5}[Br][ r][1.15][45]{\Huge\LaTeX}
+ \psfrag{x6}[tl][ l][1.15][45]{\Huge\LaTeX}
+ \includegraphics[width=.475\textwidth]{psf-demo}
+\end{psfrags}
+
+\subsection*{The postscript environment}
+
+\begin{center}
+\begin{postscript}
+\Large
+\noindent
+$
+ \bordermatrix{%
+ & A & B & C\cr
+ & \rnode{D}{D} & E & \rnode{F}{F}\cr
+ & G & H & I\cr
+ & \rnode{J}{J} & K & M
+ }
+$
+\ncline[nodesep=-1em,linecolor=red]{D}{F}
+\ncline[nodesep=-1em,linecolor=red]{D}{J}
+\end{postscript}
+\end{center}
+
+\end{document}
+\endinput
+%%
+%% End of file `pst-pdf-example1.tex'.
Files old/texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.pdf and new/texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.tex new/texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.tex
--- old/texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.tex 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.tex 2008-09-10 22:15:16.000000000 +0200
@@ -0,0 +1,279 @@
+%%
+%% This is file `pst-pdf-example2.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% pst-pdf.dtx (with options: `example2')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2004-2008 by Rolf Niepraschk
+%% and Hubert Gaesslein
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.2 of this license
+%% or (at your option) any later version. The latest version of this
+%% license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.2 or later is part of all distributions of LaTeX version
+%% 1999/12/01 or later.
+%%
+%% Process this file with the scripts `ps4pdf' or `ps4pdf.bat' or call
+%%
+%% latex pst-pdf-example2.tex
+%% dvips -Ppdf -o pst-pdf-example2-pics.ps pst-pdf-example2.dvi
+%% ps2pdf -dAutoRotatePages=/None pst-pdf-example2-pics.ps pst-pdf-example2-pics.pdf
+%% pdflatex pst-pdf-example2.tex
+%%
+\listfiles\errorcontextlines=100\relax
+\documentclass[12pt]{article}
+
+%% before `psfrag'!
+\usepackage[displaymath,dvipsnames]{pst-pdf}
+%%\usepackage[displaymath,dvipsnames,notightpage]{pst-pdf}
+
+\usepackage{pst-node,pst-tree}
+
+\usepackage{psfrag,tabularx}
+
+\pagestyle{empty}
+
+\begin{postscript}[trim=0 0 0 0,ignore]
+ \includegraphics[width=.475\textwidth]{penguin.eps}
+\end{postscript}
+\savepicture{ps:A}
+
+\begin{pst-pdf-defs}%
+
+%% This definition must be within the pst-pdf-defs environment!
+\newcommand*\mytree{%
+ \begin{psmatrix}[rowsep=.2cm,colsep=2cm]
+ & & E \\
+ & A & \\
+ & & F \\
+ $\bullet$ & & \\
+ & & G \\
+ & B & \\
+ & & H \\
+ \scriptsize
+ \psset{shortput=nab,arrows=->,labelsep=2pt,nodesep=2pt,nrot=:U}
+
+ \ncline{4,1}{2,2}\ncput*{$0,2$}
+ \ncline{4,1}{6,2}\ncput*{$x$}
+
+ \ncline{2,2}{1,3}\ncput*{$0,3$}
+ \ncline{2,2}{3,3}\ncput*{$y$}
+
+ \ncline{6,2}{5,3}\ncput*{$z$}
+ \ncline{6,2}{7,3}\ncput*{$0,8$}
+ \end{psmatrix}%
+}
+
+\end{pst-pdf-defs}%
+
+%% This works without the pst-pdf-defs environment!
+\newcommand*\mymatrix{%
+ \begin{postscript}
+ \[
+ \begin{array}{rcl}
+ a & b & c \\
+ 1 & 2 & 3 \\
+ \end{array}
+ \]
+ \end{postscript}%
+}
+
+\begin{document}
+
+\setkeys{Gin}{showname,frame}%
+
+\psset{unit=0.0714\textwidth}% 1/14 * \textwidth
+\newpsobject{showgrid}{psgrid}{subgriddiv=1,griddots=10,gridlabels=6pt}
+
+\newcommand*\BASEMARKER{\rule{.5em}{.4pt}}
+
+\setlength\parindent{0pt}
+
+\centering
+
+\section*{\textsf{pst-pdf:}
+ PSTricks and other PostScript code in pdf\LaTeX\ documents}
+
+\vfill
+
+\begin{pspicture}(-5.5,-5.25)(5.25,5.25)%
+%%\begin{pspicture}[trim=-.5 -.25 .25 .25,frame](-5,-5)(5,5)% PSTricks2
+ \pscircle*[linecolor=Apricot]{5}
+ \rput(0,0.5){\includegraphics[width=8\psxunit]{elephant}}
+ \Huge\sffamily\bfseries
+ \rput(-4.5,4.5){A} \rput(4.5,4.5){B}
+ \rput(-4.5,-4.5){C}\rput(4.5,-4.5){D}
+ \rmfamily
+ \rput(0,-3.8){PSTricks}
+ \rput(0,3.8){\LaTeX}
+ \showgrid
+\end{pspicture}\savepicture{ps:B}
+
+\vfill\null\newpage
+
+\usepicture{ps:A}
+\hfill
+\includegraphics[width=.475\textwidth]{insect1}
+
+\vfill
+
+\usepicture[angle=180,origin=c]{ps:A}
+\hfill
+\usepicture[width=.47\textwidth]{ps:B}
+
+\includegraphics[width=.475\textwidth,frame=false,
+ namefont={\Huge\itshape}]{knuth}
+\hfill
+\usepicture[angle=45,origin=bl,width=.475\textwidth,innerframe]{1}%
+
+\vfill
+
+\includegraphics[width=.47\textwidth]{psf-demo}
+\hfill
+\begin{psfrags}
+ \psfragscanon
+ \psfrag{x1}[br][ ]{\LaTeX} \psfrag{x2}[br][br]{\LaTeX}
+ \psfrag{x3}[br][tl]{\LaTeX} \psfrag{x4}[br][Br]{\LaTeX}
+ \psfrag{x5}[Br][ r][1.15][45]{\Huge\LaTeX}
+ \psfrag{x6}[tl][ l][1.15][45]{\Huge\LaTeX}
+ \includegraphics[width=.47\textwidth]{psf-demo}
+\end{psfrags}
+
+\includegraphics[width=\textwidth,showname=false,frame=false]{insect15}
+
+\bigskip
+
+\Large
+
+\begin{equation}
+ \sigma(t)=\frac{1}{\sqrt{2\pi}}
+ \int^t_0 e^{-x^2/2} dx
+\end{equation}
+
+\clearpage
+
+\setkeys{Gin}{showname=false,frame=false}%
+
+{ \Huge \renewcommand*\arraystretch{1.5}
+
+ \noindent
+ \begin{tabularx}{\textwidth}{|@{}>{\centering}X@{}|} \hline
+
+ \psframebox*[fillcolor=green,framearc=.6]{HUGO}\BASEMARKER
+ \fbox{\BASEMARKER GUSTAV} \tabularnewline
+
+ \begin{postscript}
+ \psframebox*[fillcolor=green,framearc=.6]{HUGO}\BASEMARKER
+ \fbox{\BASEMARKER GUSTAV}
+ \end{postscript} \tabularnewline \hline
+
+ \end{tabularx}
+
+}
+
+\bigskip
+
+\definecolor{pink}{rgb}{1, .75, .8}
+\renewcommand\psedge{\nccurve}
+\newcommand{\Female}[2][]{{\psset{linecolor=pink}\TR[#1]{\emph{#2}}}}
+\newcommand{\Male}[2][]{{\psset{linecolor=blue}\TR[#1]{#2}}}
+
+\psset{nodesep=2pt,angleA=90,angleB=-90}
+
+{ \footnotesize
+
+ %% From: The \LaTeX\ Graphics Companion; first release.
+ \pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
+ \pstree{\Male{Sebastian}}{%
+ \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
+ \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
+ \pstree{\Female{Leonor}}{%
+ \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
+ \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
+ }
+
+ \iffalse % --> Cannot work outside of a special environment!
+ \psset{linecolor=green,doubleline=true,linestyle=dotted}
+ \ncline{P}{W}\nbput{1940}
+ \ncline{R}{A}\nbput{1954}
+ \fi
+}
+
+\bigskip
+
+\psset{arrows=->,fillcolor=white,fillstyle=solid}
+
+\footnotesize
+
+\newcommand{\Show}[1]{\psshadowbox{#1}}
+
+\begin{psmatrix}[mnode=r,ref=t,unit=.3]
+ \psframebox[linestyle=none,framesep=.75]{%
+ \begin{psmatrix}[name=A,ref=c]
+ \Show{Stakeholder}
+ \end{psmatrix}} &
+ \psframebox[fillstyle=solid,fillcolor=pink,framesep=.95]{%
+ \rule{1cm}{0pt}
+ \begin{psmatrix}[ref=c]
+ [name=B]\Show{Goal} & \Show{Criteria}\\
+ \Show{Sub-goal} & \Show{Justification}
+ \ncline{1,1}{1,2}
+ \ncline{1,1}{2,2}
+ \ncline{1,1}{2,1}\tlput{Strategy}
+ \ncline{2,1}{2,2}
+ \end{psmatrix}}
+ \ncline[angleB=180]{A}{B}\naput[npos=.7]{Model}
+\end{psmatrix}
+
+\begin{postscript}[angle=90,height=\textheight,frame=false]
+
+\pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
+ \pstree{\Male{Sebastian}}{%
+ \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
+ \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
+ \pstree{\Female{Leonor}}{
+ \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
+ \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
+}
+
+\psset{linecolor=green,doubleline=true,linestyle=dotted}
+\ncline{P}{W}\nbput{1940}
+\ncline{R}{A}\nbput{1954}
+
+\end{postscript}
+
+\bigskip
+
+\psset{arrows=-}
+
+\begin{displaymath}
+ \bordermatrix{%
+ & A & B & C\cr
+ & \rnode{D}{D} & E & \rnode{F}{F}\cr
+ & G & H & I\cr
+ & \rnode{J}{J} & K & M
+ }
+ \ncline[nodesep=-1em,linecolor=red]{D}{F}
+ \ncline[nodesep=-1em,linecolor=red]{D}{J}
+\end{displaymath}
+
+\bigskip
+
+\mytree
+
+\bigskip
+
+\mymatrix
+
+\end{document}
+\endinput
+%%
+%% End of file `pst-pdf-example2.tex'.
Files old/texmf-dist/doc/latex/pst-pdf/pst-pdf.pdf and new/texmf-dist/doc/latex/pst-pdf/pst-pdf.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-pdf.doc.tlpobj new/tlpkg/tlpobj/pst-pdf.doc.tlpobj
--- old/tlpkg/tlpobj/pst-pdf.doc.tlpobj 2013-03-12 04:38:52.000000000 +0100
+++ new/tlpkg/tlpobj/pst-pdf.doc.tlpobj 2013-09-16 03:21:55.000000000 +0200
@@ -1,14 +1,13 @@
name pst-pdf.doc
category Package
-revision 29349
+revision 31660
shortdesc doc files of pst-pdf
-relocated 1
docfiles size=379
- RELOC/doc/latex/pst-pdf/CHANGES
- RELOC/doc/latex/pst-pdf/README
- RELOC/doc/latex/pst-pdf/pst-pdf-DE.pdf
- RELOC/doc/latex/pst-pdf/pst-pdf-example1.pdf
- RELOC/doc/latex/pst-pdf/pst-pdf-example1.tex
- RELOC/doc/latex/pst-pdf/pst-pdf-example2.pdf
- RELOC/doc/latex/pst-pdf/pst-pdf-example2.tex
- RELOC/doc/latex/pst-pdf/pst-pdf.pdf
+ texmf-dist/doc/latex/pst-pdf/CHANGES
+ texmf-dist/doc/latex/pst-pdf/README
+ texmf-dist/doc/latex/pst-pdf/pst-pdf-DE.pdf
+ texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.pdf
+ texmf-dist/doc/latex/pst-pdf/pst-pdf-example1.tex
+ texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.pdf
+ texmf-dist/doc/latex/pst-pdf/pst-pdf-example2.tex
+ texmf-dist/doc/latex/pst-pdf/pst-pdf.pdf
++++++ pst-pdf.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/scripts/pst-pdf/ps4pdf new/scripts/pst-pdf/ps4pdf
--- old/scripts/pst-pdf/ps4pdf 2013-03-12 01:01:41.000000000 +0100
+++ new/scripts/pst-pdf/ps4pdf 1970-01-01 01:00:00.000000000 +0100
@@ -1,134 +0,0 @@
-#!/bin/sh
-
-# Copyright (C) 2004, Thomas Esser. Public domain.
-# 2005-03-08: New option "--crop", Rolf Niepraschk.
-# dvips call only if the dvi file exist (RN).
-# 2005-06-27: ps2pdf call only if the ps file exist (RN).
-# 2006-04-05: "\RequirePackage{pst-pdf}" added to the (pdf)LaTeX calls
-# as suggested by Niall Murphy.
-# 2006-07-14: Better temp dir handling (suggested by Karl Berry) (RN).
-# 2006-07-23: New option --Xps2pdf and code cleanup (thanks to Karl Berry) (RN).
-# 2008-08-04: Remove the parameter "-Ppdf" from the dvips call (RN).
-
-# First, work around bugs/limitations in some shells on some systems:
-test -f /bin/sh5 && test -z "$RUNNING_SH5" \
- && { UNAMES=`uname -s`; test "x$UNAMES" = xULTRIX; } 2>/dev/null \
- && { RUNNING_SH5=true; export RUNNING_SH5; exec /bin/sh5 $0 ${1+"$@"}; }
-unset RUNNING_SH5
-
-test -f /bin/bsh && test -z "$RUNNING_BSH" \
- && { UNAMES=`uname -s`; test "x$UNAMES" = xAIX; } 2>/dev/null \
- && { RUNNING_BSH=true; export RUNNING_BSH; exec /bin/bsh $0 ${1+"$@"}; }
-unset RUNNING_BSH
-
-# hack around a bug in zsh:
-test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"'
-
-###############################################################################
-# cleanup()
-# clean up the temp area and exit with proper exit status
-###############################################################################
-cleanup()
-{
- rc=$?
- $needsCleanup && test -n "$tmpdir" && test -d "$tmpdir" \
- && { rm -f "$tmpdir"/*; cd /; rmdir "$tmpdir"; }
-
- # set exit code in a portable way; see the autoconf manual for details:
- (exit $rc); exit $rc
-}
-
-###############################################################################
-# setupTmpDir()
-# set up a temp directory and a trap to remove it
-###############################################################################
-setupTmpDir()
-{
- $needsCleanup && return
-
- trap 'cleanup' 1 2 3 7 13 15
- needsCleanup=true
- (umask 077; mkdir "$tmpdir") \
- || abort "could not create directory \`$tmpdir'"
-}
-###############################################################################
-# myexec(args)
-# execute the command given as "args"; abort on error; redirect messages to
-# log in "silent" mode; redirect stdin ($log 2>&1 &2
- exit 1
-fi
-
-# jobname von TeX: Verzeichnisse entfernen, evtl. vorhandene Extension
-# entfernen.
-job=`echo "x$1" | sed 's@x@@; s@.*/@@; s@\.[^.]*$@@'`
-
-setupTmpDir
-myexec latex \
- "\AtBeginDocument{\RequirePackage{pst-pdf}} \input{$file}"
-test -f "$job.dvi" && myexec dvips -o "$job-pics.ps" "$job.dvi"
-test -f "$job-pics.ps" && myexec ps2pdf \
- "$ps2pdf_opts" "$job-pics.ps" "$job-pics.pdf"
-if $crop; then
- myexec pdfcrop "$job-pics.pdf" "$job-pics-crop.pdf"
- mv "$job-pics-crop.pdf" "$job-pics.pdf"
-fi
-myexec pdflatex \
- "\AtBeginDocument{\RequirePackage{pst-pdf}} \input{$file}"
-true
-cleanup
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/scripts/pst-pdf/ps4pdf.bat new/scripts/pst-pdf/ps4pdf.bat
--- old/scripts/pst-pdf/ps4pdf.bat 2008-08-08 23:55:48.000000000 +0200
+++ new/scripts/pst-pdf/ps4pdf.bat 1970-01-01 01:00:00.000000000 +0100
@@ -1,70 +0,0 @@
-:: **********************************************
-:: ps4pdf.bat
-:: author Lutz Ihlenburg, 09-may-2005
-::
-:: Batch file for using Rolf Niepraschk's package
-:: pst-pdf under MiKTeX
-::
-:: More info: ps4pdf-bat.txt
-:: **********************************************
-
-@echo off
-:: Command extensions must be enabled (Default in Windows XP)
-:: Localize temporary variables
-setlocal
-
-:: Called with no argument?
-if {%1} == {} goto USAGE
-if {%1} == {/?} goto USAGE
-if {%1} == {-h} goto USAGE
-if {%1} == {--help} goto USAGE
-
-:: Look for existence of main tex file.
-:: This procedure will not work, if You transfer a filename without extension,
-:: having dots in the name :-)
-:: Command shell for-statement allows only one command.
-:: For more, a multiple command must be created with &
-for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa
-:: XP command shell doesn't know "if not defined..."
-if defined _ext (
-rem
-) else (
-set _ext=.tex
-set _fullname=%_fullname%.tex
-)
-if not exist "%_fullname%" goto :MISSINGFILE
-
-:OPERATION
-%_drive%
-cd %_path%
-@echo on
-latex --src -interaction=nonstopmode "%_name%%_ext%" >"%_name%-ps4pdf.log"
-@if errorlevel 1 goto :ERROR
-dvips -o "%_name%-pics.ps" "%_name%.dvi" >>"%_name%-ps4pdf.log"
-@if errorlevel 1 goto :ERROR
-ps2pdf -dAutoRotatePages#/None "%_name%-pics.ps" >>"%_name%-ps4pdf.log"
-@if errorlevel 1 goto :ERROR
-texify -b -l latex -p "%_name%%_ext%" >>"%_name%-ps4pdf.log"
-@if errorlevel 1 goto :ERROR
-@goto :EOF
-
-:MISSINGFILE
-echo *** File not found: %_fullname%
-echo *** Batch job aborted
-pause
-goto :EOF
-
-:ERROR
-@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log ***
-@pause
-@goto :EOF
-
-:USAGE
-for %%a in (%0) do set _progname=%%~na
-echo Usage: %_progname% SourceFile[.tex]
-pause
-goto :EOF
-%~na
-echo Usage: %_progname% SourceFile[.tex]
-pause
-goto :EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/scripts/pst-pdf/ps4pdf.bat.noMiKTeX new/scripts/pst-pdf/ps4pdf.bat.noMiKTeX
--- old/scripts/pst-pdf/ps4pdf.bat.noMiKTeX 2008-05-04 02:21:05.000000000 +0200
+++ new/scripts/pst-pdf/ps4pdf.bat.noMiKTeX 1970-01-01 01:00:00.000000000 +0100
@@ -1,66 +0,0 @@
-:: **********************************************
-:: ps4pdf.bat
-:: author Lutz Ihlenburg, 09-may-2005
-::
-:: modified by patrice M�gret, 31-may-2005
-::
-:: Batch file for using Rolf Niepraschk's package
-:: pst-pdf under MiKTeX
-::
-:: More info: ps4pdf-bat.txt
-:: **********************************************
-
-@echo off
-:: Command extensions must be enabled (Default in Windows XP)
-:: Localize temporary variables
-setlocal
-
-:: Called with no argument?
-if {%1} == {} goto USAGE
-if {%1} == {/?} goto USAGE
-if {%1} == {-h} goto USAGE
-if {%1} == {--help} goto USAGE
-
-:: Look for existence of main tex file.
-:: This procedure will not work, if You transfer a filename without extension,
-:: having dots in the name :-)
-:: Command shell for-statement allows only one command.
-:: For more, a multiple command must be created with &
-for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa
-:: XP command shell doesn't know "if not defined..."
-if defined _ext (
-rem
-) else (
-set _ext=.tex
-set _fullname=%_fullname%.tex
-)
-if not exist "%_fullname%" goto :MISSINGFILE
-
-:OPERATION
-%_drive%
-cd %_path%
-@echo on
-latex --src -interaction=nonstopmode "%_name%%_ext%" > "%_name%-ps4pdfa.log"
-@if errorlevel 1 goto :ERROR
-dvips -o "%_name%-pics.ps" "%_name%.dvi" >> "%_name%-ps4pdfb.log"
-@if errorlevel 1 goto :ERROR
-ps2pdf "%_name%-pics.ps" >> "%_name%-ps4pdfc.log"
-@if errorlevel 1 goto :ERROR
-@goto :EOF
-
-:MISSINGFILE
-echo *** File not found: %_fullname%
-echo *** Batch job aborted
-pause
-goto :EOF
-
-:ERROR
-@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log ***
-@pause
-@goto :EOF
-
-:USAGE
-for %%a in (%0) do set _progname=%%~na
-echo Usage: %_progname% SourceFile[.tex]
-pause
-goto :EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/scripts/pst-pdf/ps4pdf.bat.w95 new/scripts/pst-pdf/ps4pdf.bat.w95
--- old/scripts/pst-pdf/ps4pdf.bat.w95 2008-08-08 23:55:48.000000000 +0200
+++ new/scripts/pst-pdf/ps4pdf.bat.w95 1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-rem call with ps4pdf.bat FILE without suffix
-@echo off
-set FILE=%1
-latex %FILE%.tex
-dvips -Ppdf -o %FILE%-pics.ps %FILE%.dvi
-ps2pdf -dAutoRotatePages#/None %File%-pics.ps %File%-pics.pdf
-texify -b -l latex -p %File%.tex
-%.tex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pst-pdf/pst-pdf.sty new/tex/latex/pst-pdf/pst-pdf.sty
--- old/tex/latex/pst-pdf/pst-pdf.sty 2008-10-11 01:11:47.000000000 +0200
+++ new/tex/latex/pst-pdf/pst-pdf.sty 1970-01-01 01:00:00.000000000 +0100
@@ -1,466 +0,0 @@
-%%
-%% This is file `pst-pdf.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% pst-pdf.dtx (with options: `package')
-%%
-%% This is a generated file.
-%%
-%% Copyright (C) 2004-2008 by Rolf Niepraschk
-%% and Hubert Gaesslein
-%%
-%% This file may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License, either version 1.2 of this license
-%% or (at your option) any later version. The latest version of this
-%% license is in:
-%%
-%% http://www.latex-project.org/lppl.txt
-%%
-%% and version 1.2 or later is part of all distributions of LaTeX version
-%% 1999/12/01 or later.
-%%
-\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{pst-pdf}
- [2008/10/09 v1.1v PS graphics for pdfLaTeX (RN,HjG)]
-\newcommand*\ppf@TeX@mode{-1}
-\newcommand*\ppf@draft{false}
-\newif\if@ppf@PST@used\@ppf@PST@usedtrue
-\newif\if@ppf@tightpage \@ppf@tightpagetrue
-\DeclareOption{active}{\OptionNotUsed}
-\DeclareOption{inactive}{\def\ppf@TeX@mode{9}}
-\DeclareOption{ignore}{\def\ppf@TeX@mode{999}}
-\DeclareOption{pstricks}{\@ppf@PST@usedtrue}
-\DeclareOption{nopstricks}{\@ppf@PST@usedfalse}
-\DeclareOption{displaymath}{%
- \PassOptionsToPackage\CurrentOption{preview}}
-\DeclareOption{draft}{\def\ppf@draft{true}}
-\DeclareOption{final}{\def\ppf@draft{false}%
- \PassOptionsToPackage\CurrentOption{graphicx}}
-\DeclareOption{notightpage}{\@ppf@tightpagefalse}%
-\DeclareOption{tightpage}{\@ppf@tightpagetrue}%
-\DeclareOption*{%
- \PassOptionsToPackage\CurrentOption{pstricks}}
-\ProcessOptions\relax
-\ifnum\ppf@TeX@mode=999\relax\expandafter\endinput\fi
-\ifnum\ppf@TeX@mode=-1\relax
- \begingroup
- \chardef\x=0 %
- \@ifundefined{pdfoutput}{}{%
- \ifcase\pdfoutput\else
- \chardef\x=1 %
- \fi
- }%
- \@ifundefined{OpMode}{}{\chardef\x=2 }%
- \expandafter\endgroup
- \ifcase\x
- \def\ppf@TeX@mode{0}%
- \or
- \def\ppf@TeX@mode{1}%
- \else
- \def\ppf@TeX@mode{9}%
- \fi
-\fi
-\newcommand*\PDFcontainer{}
-\edef\PDFcontainer{\jobname-pics.pdf}
-\newcounter{pspicture}
-\newcommand*\ppf@other@extensions[1]{}
-\newcommand*\usepicture[2][]{}
-\newcommand*\savepicture[1]{}
-\newenvironment*{pst-pdf-defs}{%
- \endgroup
-}{%
- \begingroup
- \def\@currenvir{pst-pdf-defs}%
-}
-\RequirePackage{graphicx}%
-\let\ppf@Ginclude@graphics\Ginclude@graphics
-\let\ppf@Gin@extensions\Gin@extensions
-\let\ppf@Gin@ii\Gin@ii
-\newif\if@ppf@pdftex@graphic
-\newif\ifGin@frame\Gin@framefalse
-\newif\ifGin@innerframe\Gin@innerframefalse
-\newif\ifGin@showname\Gin@shownamefalse
-\newif\ifGin@ignore\Gin@ignorefalse
-\newif\ifpr@outer
-\newcommand*\ppf@is@pdfTeX@graphic[5]{%
- \@ppf@pdftex@graphicfalse%
- \begingroup
- \edef\pdfTeXext{#2}%
- \def\Gin@setfile##1##2##3{%
- \edef\@tempb{##2}%
- \@for\@tempa:=\pdfTeXext\do{%
- \ifx\@tempa\@tempb\global\@ppf@pdftex@graphictrue\fi}}%
- \edef\Gin@extensions{#2,#3}%
- \pr@outerfalse\ppf@Ginclude@graphics{#1}%
- \endgroup
- \if@ppf@pdftex@graphic#4\else#5\fi
-}
-\ifcase\ppf@TeX@mode\relax
- \PackageInfo{pst-pdf}{%
- MODE: \ppf@TeX@mode\space (dvi -- extraction mode)}
- \nofiles
- \let\makeindex\@empty \let\makeglossary\@empty
- \AtBeginDocument{\overfullrule=\z@}%
- \if@ppf@PST@used\RequirePackage{pstricks}\fi
- \RequirePackage[active,dvips,tightpage]{preview}[2005/01/29]%
- \newcommand*\ppf@PreviewBbAdjust{}
- \newcommand*\ppf@RestoreBbAdjust{%
- \let\PreviewBbAdjust\ppf@PreviewBbAdjust}%
- \begingroup
- \let\AtBeginDocument\@gobble \let\PackageWarningNoLine\@gobbletwo
- \chardef\pdftexversion=121 %
- \newcount\pdfoutput
- \pdfoutput=1 %
- \input{pdftex.def}%
- \edef\x{\endgroup\def\noexpand\ppf@other@extensions{\Gin@extensions}
- }%
- \x
- \AtBeginDocument{%
- \@ifpackageloaded{keyval}{%
- \def\KV@errx#1{\PackageInfo{keyval}{#1}}%
- }{}%
- \@ifpackageloaded{xkeyval}{%
- \def\XKV@err#1{\PackageInfo{xkeyval}{#1}}%
- }{}%
- \@for\@tempa:=\ppf@other@extensions\do{%
- \expandafter\let\csname Gin@rule@\@tempa\endcsname\relax}%
- \DeclareGraphicsRule{*}{eps}{*}{}}%
- \define@key{Gin}{innerframe}[true]{}%
- \define@key{Gin}{frame}[true]{}%
- \define@key{Gin}{ignore}[true]{}%
- \define@key{Gin}{showname}[true]{}%
- \define@key{Gin}{namefont}{}%
- \@ifundefined{GPT@page}{\define@key{Gin}{page}{}}{}
- \if@ppf@tightpage\else
- \def\PreviewBbAdjust{%
- -600pt -600pt 600pt 600pt}%
- \AtEndDocument{%
- \PackageWarningNoLine{pst-pdf}{Picture container needs cropping.}}%
- \fi
- \newenvironment{postscript}[1][]%
- {%
- \global\let\ppf@PreviewBbAdjust\PreviewBbAdjust
- \if@ppf@tightpage
- \begingroup
- \setkeys{Gin}{#1}%
- \xdef\PreviewBbAdjust{%
- -\Gin@vllx bp -\Gin@vlly bp \Gin@vurx bp \Gin@vury bp}%
- \endgroup
- \fi
- \ignorespaces
- }%
- {\aftergroup\ppf@RestoreBbAdjust}%
- \PreviewEnvironment{postscript}%
- \AtBeginDocument{%
- \@ifundefined{PSTricksLoaded}{}%
- {%
- \PreviewEnvironment{pspicture}%
- \@ifundefined{psmatrix}{}%
- {%
- \PreviewEnvironment{psmatrix}%
- \newcommand*\ppf@set@mode{}%
- \newcommand*\ppf@test@mmode{%
- \ifmmode
- \ifinner
- \let\ppf@set@mode=$%
- \else
- \def\ppf@set@mode{$$}%
- \fi
- \else
- \let\ppf@set@mode=\@empty
- \fi
- }%
- \let\ppf@psmatrix=\psmatrix
- \expandafter\let\expandafter\ppf@pr@psmatrix%
- \expandafter=\csname pr@\string\psmatrix\endcsname
- \let\ppf@endpsmatrix=\endpsmatrix
- \def\psmatrix{\ppf@test@mmode\ppf@psmatrix}
- \expandafter\def\csname pr@\string\psmatrix\endcsname{%
- \ppf@set@mode\ppf@pr@psmatrix}%
- \def\endpsmatrix{\ppf@endpsmatrix\ppf@set@mode}%
- }%
- \PreviewMacro[{{}*[]%
- ?\bgroup{#{#1}{{#1}}}{}%
- ?\bgroup{#{#1}{{#1}}}{}%
- ?({#{(#1)}{({#1})}}{}%
- ?({#{(#1)}{({#1})}}{}%
- ?({#{(#1)}{({#1})}}{}%
- }]{\pst@object}}
- \@ifundefined{tabularx}{}{%
- \newcolumntype{X}{c}%
- \expandafter\let\expandafter\tabularx\csname tabular*\endcsname
- \expandafter\let\expandafter\endtabularx\csname endtabular*\endcsname
- }%
- \@ifundefined{pfx@includegraphicx}{}{%
- \PreviewMacro[{{}{}}]{\pfx@includegraphicx}}%
- }%
- \def\Gscale@@box#1#2#3{%
- \toks@{\mbox}%
- }
- \def\Ginclude@graphics#1{%
- \ifpr@outer
- \ppf@is@pdfTeX@graphic{#1}{\ppf@other@extensions}{\Gin@extensions}%
- {\rule{10pt}{10pt}}%
- {\ppf@Ginclude@graphics{#1}}%
- \else
- \ppf@Ginclude@graphics{#1}%
- \fi
- }%
- \PreviewMacro[{{}}]{\ppf@Ginclude@graphics}%
- \let\pdfliteral\@gobble%
-\or
- \PackageInfo{pst-pdf}{MODE: \ppf@TeX@mode\space (pdfTeX mode)}%
- \if@ppf@PST@used
- \let\ppf@temp\AtBeginDvi\let\AtBeginDvi\@gobble
- \RequirePackage{pstricks}\let\AtBeginDvi\ppf@temp
- \fi
- \@temptokena{%
- \let\Gin@PS@file@header\@gobble\let\Gin@PS@literal@header\@gobble
- \let\Gin@PS@raw\@gobble\let\Gin@PS@restored\@gobble
- \@ifundefined{PSTricksLoaded}{}{%
- \PSTricksOff
- \@ifundefined{c@lor@to@ps}{\def\c@lor@to@ps#1 #2\@@{}}{}}}%
- \the\@temptokena
- \expandafter\AtBeginDocument\expandafter
- {\the\@temptokena\@temptokena{}}%
- \@ifundefined{PSTricksLoaded}{}{%
- \newtoks\ppf@output
- \ppf@output\expandafter{\the\output}%
- \let\ppf@nofiles=\nofiles \let\nofiles=\relax
- \let\ppf@shipout=\shipout
- \RequirePackage[active]{preview}[2005/01/29]%
- \let\shipout=\ppf@shipout \let\ppf@shipout=\relax
- \let\nofiles=\ppf@nofiles \let\ppf@nofiles=\relax
- \output\expandafter{\the\ppf@output} \ppf@output{}%
- \long\def\pr@startbox#1#2{%
- \ifpr@outer
- \toks@{#2}%
- \edef\pr@cleanup{\the\toks@}%
- \setbox\@tempboxa\vbox\bgroup
- \everydisplay{}%
- \pr@outerfalse%
- \expandafter\@firstofone
- \else
- \expandafter\@gobble
- \fi{#1}}%
- \def\pr@endbox{%
- \egroup
- \setbox\@tempboxa\box\voidb@x
- \ppf@@getpicture
- \pr@cleanup}%
- \AtBeginDocument{%
- \@ifundefined{pst@object}{}%
- {%
- \PreviewMacro[{{}*[]%
- ?\bgroup{#{#1}{{#1}}}{}%
- ?\bgroup{#{#1}{{#1}}}{}%
- ?({#{(#1)}{({#1})}}{}%
- ?({#{(#1)}{({#1})}}{}%
- ?({#{(#1)}{({#1})}}{}%
- }]{\pst@object}}%
- }%
- }%
- \begingroup
- \input{dvips.def}%
- \edef\x{\endgroup\def\noexpand\ppf@other@extensions{\Gin@extensions}}%
- \x
- \DeclareGraphicsRule{*}{eps}{*}{}%
- \define@key{Gin}{innerframe}[true]{%
- \lowercase{\Gin@boolkey{#1}}{innerframe}}%
- \define@key{Gin}{frame}[true]{%
- \lowercase{\Gin@boolkey{#1}}{frame}}%
- \define@key{Gin}{ignore}[true]{%
- \lowercase{\Gin@boolkey{#1}}{ignore}}%
- \define@key{Gin}{frame@@}{%
- \edef\@tempa{\toks@{\noexpand\frame{\the\toks@}}}%
- \ifcase#1\relax
- \ifGin@innerframe\else\let\@tempa\relax\fi
- \or
- \ifGin@frame\else\let\@tempa\relax\fi
- \fi
- \@tempa
- }%
- \define@key{Gin}{showname}[true]{%
- \lowercase{\Gin@boolkey{#1}}{showname}}%
- \define@key{Gin}{namefont}{%
- \begingroup
- \@temptokena\expandafter{\ppf@namefont#1}%
- \edef\x{\endgroup\def\noexpand\ppf@namefont{\the\@temptokena}}%
- \x
- }%
- \newcommand*\ppf@filename{}%
- \newcommand*\ppf@namefont{\tiny\ttfamily}%
- \newcommand*\ppf@Gin@keys{}%
- \let\ppf@Gin@setfile\Gin@setfile
- \def\Gin@setfile#1#2#3{\ppf@Gin@setfile{#1}{#2}{#3}%
- \xdef\ppf@filename{%
- #3\ifx\GPT@page\@empty\else(\GPT@page)\fi}}%
- \def\Gin@ii[#1]#2{%
- \begingroup
- \@temptokena{#1}\def\ppf@tempb{#2}%
- \ifx\ppf@tempb\@empty\else
- \ppf@is@pdfTeX@graphic{#2}{\Gin@extensions}{\ppf@other@extensions}%
- {%
- \setkeys{Gin}{#1}%
- \ifx\ppf@tempb\PDFcontainer
- \@temptokena{page=\GPT@page}%
- \fi
- }%
- {%
- \refstepcounter{pspicture}%
- \@temptokena{page=\the\c@pspicture}\def\ppf@tempb{\PDFcontainer}%
- }%
- \fi
- \ifGin@ignore\else
- \edef\@tempa{\noexpand\ppf@Gin@ii[frame@@=0,\the\@temptokena,
- frame@@=1]{\ppf@tempb}}%
- \@tempa
- \ifGin@showname
- \ppf@namefont
- \raisebox{-\ht\strutbox}[0pt][0pt]{\llap{\ppf@filename}}%
- \gdef\ppf@filename{}%
- \fi
- \fi
- \endgroup
- }%
- \IfFileExists{\PDFcontainer}%
- {%
- \pdfximage{\PDFcontainer}%
- \edef\ppf@container@max{\the\pdflastximagepages}%
- \AtEndDocument{%
- \ifnum\c@pspicture>\z@
- \ifnum\c@pspicture=\ppf@container@max\else
- \PackageWarningNoLine{pst-pdf}{%
- `\PDFcontainer' contains \ppf@container@max\space pages
- \MessageBreak but \the\c@pspicture\space pages are requested:
- \MessageBreak File `\PDFcontainer' is no more valid!
- \MessageBreak Recreate it
- }%
- \fi
- \fi
- }%
- }%
- {%
- \def\ppf@container@max{0}%
- \AtEndDocument{%
- \ifnum\c@pspicture>\z@
- \filename@parse{\PDFcontainer}%
- \PackageWarningNoLine{pst-pdf}{%
- File `\PDFcontainer' not found.\MessageBreak
- Use the following commands to create it:\MessageBreak
- ----------------------------------------------------
- \MessageBreak
- latex \jobname.tex\MessageBreak
- dvips -o \filename@base.ps \jobname.dvi\MessageBreak
- ps2pdf \filename@base.ps\MessageBreak
- ----------------------------------------------------
- }%
- \fi
- }%
- }%
- \newcommand\ppf@isnum[1]{%
- \if!\ifnum9<1#1!\else_\fi\expandafter\@firstoftwo
- \else\expandafter\@secondoftwo\fi}%
- \newcommand*\ppf@set@mode{}%
- \newcommand*\ppf@test@mmode{%
- \ifmmode
- \ifinner
- \let\ppf@set@mode=$%
- \else
- \def\ppf@set@mode{$$}%
- \fi
- \else
- \let\ppf@set@mode=\@empty
- \fi
- }
- \RequirePackage{environ}%
- \newenvironment{postscript}[1][]{%
- \def\@tempa{postscript}%
- \ifx\@tempa\@currenvir
- \def\ppf@Gin@keys{#1}%
- \else
- \def\ppf@Gin@keys{}%
- \fi
- \ppf@@getpicture
- \Collect@Body\@gobble}{}%
- \AtBeginDocument{%
- \@ifundefined{PSTricksLoaded}{}{%
- \def\pst@@@picture[#1](#2,#3)(#4,#5){\postscript}%
- \def\endpspicture{\endpostscript\endgroup}%
- \@ifundefined{psmatrix}{}{%
- \let\psmatrix=\postscript
- \let\endpsmatrix=\endpostscript}%
- }%
- \@ifundefined{pfx@includegraphicx}{}{%
- \let\includegraphics=\pfx@includegraphics
- \def\pfx@includegraphicx#1#2{\ppf@@getpicture}%
- }%
- }%
- \def\savepicture#1{%
- \expandafter\xdef\csname ppf@@@#1\endcsname{\the\pdflastximage}}%
- \renewcommand*\usepicture[2][]{%
- \@ifundefined{ppf@@@#2}%
- {%
- \ppf@isnum{#2}%
- {\ppf@getpicture{#1}{#2}}%
- {\@latex@error{picture `#2' undefined}\@ehc}%
- }%
- {%
- \begingroup
- \def\Ginclude@graphics##1{%
- \xdef\ppf@filename{#2}%
- \setbox\z@\hbox{\pdfrefximage\@nameuse{ppf@@@#2}}%
- \Gin@nat@height\ht\z@ \Gin@nat@width\wd\z@
- \def\Gin@llx{0} \let\Gin@lly\Gin@llx
- \Gin@defaultbp\Gin@urx{\Gin@nat@width}%
- \Gin@defaultbp\Gin@ury{\Gin@nat@height}%
- \Gin@bboxtrue\Gin@viewport@code
- \Gin@nat@height\Gin@ury bp%
- \advance\Gin@nat@height-\Gin@lly bp%
- \Gin@nat@width\Gin@urx bp%
- \advance\Gin@nat@width-\Gin@llx bp%
- \Gin@req@sizes
- \ht\z@\Gin@req@height \wd\z@\Gin@req@width
- \leavevmode\box\z@}%
- \define@key{Gin}{type}{}%
- \includegraphics[scale=1,#1]{}%
- \endgroup
- }}%
- \newcommand*\ppf@getpicture[2]{%
- \@tempcnta=#2\relax%
- \ifnum\@tempcnta>\ppf@container@max
- \PackageWarningNoLine{pst-pdf}{%
- pspicture No. \the\@tempcnta\space undefined}%
- \else
- \includegraphics[draft=\ppf@draft,#1,page=\the\@tempcnta]%
- {\PDFcontainer}%
- \fi
- \gdef\ppf@Gin@keys{}}%
- \newcommand*\ppf@@getpicture{%
- \ifpr@outer
- \refstepcounter{pspicture}%
- \expandafter\ppf@getpicture\expandafter{\ppf@Gin@keys}%
- {\the\c@pspicture}%
- \fi}%
- \renewenvironment*{pst-pdf-defs}%
- {%
- \endgroup
- \chardef\ppf@temp=\catcode`\&%
- \@makeother\&%
- }{%
- \catcode`\&=\ppf@temp
- \begingroup
- \def\@currenvir{pst-pdf-defs}%
- }
-\else
- \PackageInfo{pst-pdf}{MODE: \ppf@TeX@mode\space (inactive mode)}%
- \newenvironment{postscript}[1][]{\ignorespaces}{}
- \let\ppf@is@pdfTeX@graphic\relax
-\fi
-\InputIfFileExists{pst-pdf.cfg}{%
- \PackageInfo{pst-pdf}{Local config file pst-pdf.cfg used}}{}
-\endinput
-%%
-%% End of file `pst-pdf.sty'.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/scripts/pst-pdf/ps4pdf new/texmf-dist/scripts/pst-pdf/ps4pdf
--- old/texmf-dist/scripts/pst-pdf/ps4pdf 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/scripts/pst-pdf/ps4pdf 2013-03-12 01:01:41.000000000 +0100
@@ -0,0 +1,134 @@
+#!/bin/sh
+
+# Copyright (C) 2004, Thomas Esser. Public domain.
+# 2005-03-08: New option "--crop", Rolf Niepraschk.
+# dvips call only if the dvi file exist (RN).
+# 2005-06-27: ps2pdf call only if the ps file exist (RN).
+# 2006-04-05: "\RequirePackage{pst-pdf}" added to the (pdf)LaTeX calls
+# as suggested by Niall Murphy.
+# 2006-07-14: Better temp dir handling (suggested by Karl Berry) (RN).
+# 2006-07-23: New option --Xps2pdf and code cleanup (thanks to Karl Berry) (RN).
+# 2008-08-04: Remove the parameter "-Ppdf" from the dvips call (RN).
+
+# First, work around bugs/limitations in some shells on some systems:
+test -f /bin/sh5 && test -z "$RUNNING_SH5" \
+ && { UNAMES=`uname -s`; test "x$UNAMES" = xULTRIX; } 2>/dev/null \
+ && { RUNNING_SH5=true; export RUNNING_SH5; exec /bin/sh5 $0 ${1+"$@"}; }
+unset RUNNING_SH5
+
+test -f /bin/bsh && test -z "$RUNNING_BSH" \
+ && { UNAMES=`uname -s`; test "x$UNAMES" = xAIX; } 2>/dev/null \
+ && { RUNNING_BSH=true; export RUNNING_BSH; exec /bin/bsh $0 ${1+"$@"}; }
+unset RUNNING_BSH
+
+# hack around a bug in zsh:
+test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"'
+
+###############################################################################
+# cleanup()
+# clean up the temp area and exit with proper exit status
+###############################################################################
+cleanup()
+{
+ rc=$?
+ $needsCleanup && test -n "$tmpdir" && test -d "$tmpdir" \
+ && { rm -f "$tmpdir"/*; cd /; rmdir "$tmpdir"; }
+
+ # set exit code in a portable way; see the autoconf manual for details:
+ (exit $rc); exit $rc
+}
+
+###############################################################################
+# setupTmpDir()
+# set up a temp directory and a trap to remove it
+###############################################################################
+setupTmpDir()
+{
+ $needsCleanup && return
+
+ trap 'cleanup' 1 2 3 7 13 15
+ needsCleanup=true
+ (umask 077; mkdir "$tmpdir") \
+ || abort "could not create directory \`$tmpdir'"
+}
+###############################################################################
+# myexec(args)
+# execute the command given as "args"; abort on error; redirect messages to
+# log in "silent" mode; redirect stdin ($log 2>&1 &2
+ exit 1
+fi
+
+# jobname von TeX: Verzeichnisse entfernen, evtl. vorhandene Extension
+# entfernen.
+job=`echo "x$1" | sed 's@x@@; s@.*/@@; s@\.[^.]*$@@'`
+
+setupTmpDir
+myexec latex \
+ "\AtBeginDocument{\RequirePackage{pst-pdf}} \input{$file}"
+test -f "$job.dvi" && myexec dvips -o "$job-pics.ps" "$job.dvi"
+test -f "$job-pics.ps" && myexec ps2pdf \
+ "$ps2pdf_opts" "$job-pics.ps" "$job-pics.pdf"
+if $crop; then
+ myexec pdfcrop "$job-pics.pdf" "$job-pics-crop.pdf"
+ mv "$job-pics-crop.pdf" "$job-pics.pdf"
+fi
+myexec pdflatex \
+ "\AtBeginDocument{\RequirePackage{pst-pdf}} \input{$file}"
+true
+cleanup
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/scripts/pst-pdf/ps4pdf.bat new/texmf-dist/scripts/pst-pdf/ps4pdf.bat
--- old/texmf-dist/scripts/pst-pdf/ps4pdf.bat 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/scripts/pst-pdf/ps4pdf.bat 2008-08-08 23:55:48.000000000 +0200
@@ -0,0 +1,70 @@
+:: **********************************************
+:: ps4pdf.bat
+:: author Lutz Ihlenburg, 09-may-2005
+::
+:: Batch file for using Rolf Niepraschk's package
+:: pst-pdf under MiKTeX
+::
+:: More info: ps4pdf-bat.txt
+:: **********************************************
+
+@echo off
+:: Command extensions must be enabled (Default in Windows XP)
+:: Localize temporary variables
+setlocal
+
+:: Called with no argument?
+if {%1} == {} goto USAGE
+if {%1} == {/?} goto USAGE
+if {%1} == {-h} goto USAGE
+if {%1} == {--help} goto USAGE
+
+:: Look for existence of main tex file.
+:: This procedure will not work, if You transfer a filename without extension,
+:: having dots in the name :-)
+:: Command shell for-statement allows only one command.
+:: For more, a multiple command must be created with &
+for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa
+:: XP command shell doesn't know "if not defined..."
+if defined _ext (
+rem
+) else (
+set _ext=.tex
+set _fullname=%_fullname%.tex
+)
+if not exist "%_fullname%" goto :MISSINGFILE
+
+:OPERATION
+%_drive%
+cd %_path%
+@echo on
+latex --src -interaction=nonstopmode "%_name%%_ext%" >"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+dvips -o "%_name%-pics.ps" "%_name%.dvi" >>"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+ps2pdf -dAutoRotatePages#/None "%_name%-pics.ps" >>"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+texify -b -l latex -p "%_name%%_ext%" >>"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+@goto :EOF
+
+:MISSINGFILE
+echo *** File not found: %_fullname%
+echo *** Batch job aborted
+pause
+goto :EOF
+
+:ERROR
+@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log ***
+@pause
+@goto :EOF
+
+:USAGE
+for %%a in (%0) do set _progname=%%~na
+echo Usage: %_progname% SourceFile[.tex]
+pause
+goto :EOF
+%~na
+echo Usage: %_progname% SourceFile[.tex]
+pause
+goto :EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX new/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX
--- old/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX 2008-05-04 02:21:05.000000000 +0200
@@ -0,0 +1,66 @@
+:: **********************************************
+:: ps4pdf.bat
+:: author Lutz Ihlenburg, 09-may-2005
+::
+:: modified by patrice M�gret, 31-may-2005
+::
+:: Batch file for using Rolf Niepraschk's package
+:: pst-pdf under MiKTeX
+::
+:: More info: ps4pdf-bat.txt
+:: **********************************************
+
+@echo off
+:: Command extensions must be enabled (Default in Windows XP)
+:: Localize temporary variables
+setlocal
+
+:: Called with no argument?
+if {%1} == {} goto USAGE
+if {%1} == {/?} goto USAGE
+if {%1} == {-h} goto USAGE
+if {%1} == {--help} goto USAGE
+
+:: Look for existence of main tex file.
+:: This procedure will not work, if You transfer a filename without extension,
+:: having dots in the name :-)
+:: Command shell for-statement allows only one command.
+:: For more, a multiple command must be created with &
+for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa
+:: XP command shell doesn't know "if not defined..."
+if defined _ext (
+rem
+) else (
+set _ext=.tex
+set _fullname=%_fullname%.tex
+)
+if not exist "%_fullname%" goto :MISSINGFILE
+
+:OPERATION
+%_drive%
+cd %_path%
+@echo on
+latex --src -interaction=nonstopmode "%_name%%_ext%" > "%_name%-ps4pdfa.log"
+@if errorlevel 1 goto :ERROR
+dvips -o "%_name%-pics.ps" "%_name%.dvi" >> "%_name%-ps4pdfb.log"
+@if errorlevel 1 goto :ERROR
+ps2pdf "%_name%-pics.ps" >> "%_name%-ps4pdfc.log"
+@if errorlevel 1 goto :ERROR
+@goto :EOF
+
+:MISSINGFILE
+echo *** File not found: %_fullname%
+echo *** Batch job aborted
+pause
+goto :EOF
+
+:ERROR
+@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log ***
+@pause
+@goto :EOF
+
+:USAGE
+for %%a in (%0) do set _progname=%%~na
+echo Usage: %_progname% SourceFile[.tex]
+pause
+goto :EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 new/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95
--- old/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95 2008-08-08 23:55:48.000000000 +0200
@@ -0,0 +1,8 @@
+rem call with ps4pdf.bat FILE without suffix
+@echo off
+set FILE=%1
+latex %FILE%.tex
+dvips -Ppdf -o %FILE%-pics.ps %FILE%.dvi
+ps2pdf -dAutoRotatePages#/None %File%-pics.ps %File%-pics.pdf
+texify -b -l latex -p %File%.tex
+%.tex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/tex/latex/pst-pdf/pst-pdf.sty new/texmf-dist/tex/latex/pst-pdf/pst-pdf.sty
--- old/texmf-dist/tex/latex/pst-pdf/pst-pdf.sty 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/tex/latex/pst-pdf/pst-pdf.sty 2008-10-11 01:11:47.000000000 +0200
@@ -0,0 +1,466 @@
+%%
+%% This is file `pst-pdf.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% pst-pdf.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2004-2008 by Rolf Niepraschk
+%% and Hubert Gaesslein
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.2 of this license
+%% or (at your option) any later version. The latest version of this
+%% license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.2 or later is part of all distributions of LaTeX version
+%% 1999/12/01 or later.
+%%
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesPackage{pst-pdf}
+ [2008/10/09 v1.1v PS graphics for pdfLaTeX (RN,HjG)]
+\newcommand*\ppf@TeX@mode{-1}
+\newcommand*\ppf@draft{false}
+\newif\if@ppf@PST@used\@ppf@PST@usedtrue
+\newif\if@ppf@tightpage \@ppf@tightpagetrue
+\DeclareOption{active}{\OptionNotUsed}
+\DeclareOption{inactive}{\def\ppf@TeX@mode{9}}
+\DeclareOption{ignore}{\def\ppf@TeX@mode{999}}
+\DeclareOption{pstricks}{\@ppf@PST@usedtrue}
+\DeclareOption{nopstricks}{\@ppf@PST@usedfalse}
+\DeclareOption{displaymath}{%
+ \PassOptionsToPackage\CurrentOption{preview}}
+\DeclareOption{draft}{\def\ppf@draft{true}}
+\DeclareOption{final}{\def\ppf@draft{false}%
+ \PassOptionsToPackage\CurrentOption{graphicx}}
+\DeclareOption{notightpage}{\@ppf@tightpagefalse}%
+\DeclareOption{tightpage}{\@ppf@tightpagetrue}%
+\DeclareOption*{%
+ \PassOptionsToPackage\CurrentOption{pstricks}}
+\ProcessOptions\relax
+\ifnum\ppf@TeX@mode=999\relax\expandafter\endinput\fi
+\ifnum\ppf@TeX@mode=-1\relax
+ \begingroup
+ \chardef\x=0 %
+ \@ifundefined{pdfoutput}{}{%
+ \ifcase\pdfoutput\else
+ \chardef\x=1 %
+ \fi
+ }%
+ \@ifundefined{OpMode}{}{\chardef\x=2 }%
+ \expandafter\endgroup
+ \ifcase\x
+ \def\ppf@TeX@mode{0}%
+ \or
+ \def\ppf@TeX@mode{1}%
+ \else
+ \def\ppf@TeX@mode{9}%
+ \fi
+\fi
+\newcommand*\PDFcontainer{}
+\edef\PDFcontainer{\jobname-pics.pdf}
+\newcounter{pspicture}
+\newcommand*\ppf@other@extensions[1]{}
+\newcommand*\usepicture[2][]{}
+\newcommand*\savepicture[1]{}
+\newenvironment*{pst-pdf-defs}{%
+ \endgroup
+}{%
+ \begingroup
+ \def\@currenvir{pst-pdf-defs}%
+}
+\RequirePackage{graphicx}%
+\let\ppf@Ginclude@graphics\Ginclude@graphics
+\let\ppf@Gin@extensions\Gin@extensions
+\let\ppf@Gin@ii\Gin@ii
+\newif\if@ppf@pdftex@graphic
+\newif\ifGin@frame\Gin@framefalse
+\newif\ifGin@innerframe\Gin@innerframefalse
+\newif\ifGin@showname\Gin@shownamefalse
+\newif\ifGin@ignore\Gin@ignorefalse
+\newif\ifpr@outer
+\newcommand*\ppf@is@pdfTeX@graphic[5]{%
+ \@ppf@pdftex@graphicfalse%
+ \begingroup
+ \edef\pdfTeXext{#2}%
+ \def\Gin@setfile##1##2##3{%
+ \edef\@tempb{##2}%
+ \@for\@tempa:=\pdfTeXext\do{%
+ \ifx\@tempa\@tempb\global\@ppf@pdftex@graphictrue\fi}}%
+ \edef\Gin@extensions{#2,#3}%
+ \pr@outerfalse\ppf@Ginclude@graphics{#1}%
+ \endgroup
+ \if@ppf@pdftex@graphic#4\else#5\fi
+}
+\ifcase\ppf@TeX@mode\relax
+ \PackageInfo{pst-pdf}{%
+ MODE: \ppf@TeX@mode\space (dvi -- extraction mode)}
+ \nofiles
+ \let\makeindex\@empty \let\makeglossary\@empty
+ \AtBeginDocument{\overfullrule=\z@}%
+ \if@ppf@PST@used\RequirePackage{pstricks}\fi
+ \RequirePackage[active,dvips,tightpage]{preview}[2005/01/29]%
+ \newcommand*\ppf@PreviewBbAdjust{}
+ \newcommand*\ppf@RestoreBbAdjust{%
+ \let\PreviewBbAdjust\ppf@PreviewBbAdjust}%
+ \begingroup
+ \let\AtBeginDocument\@gobble \let\PackageWarningNoLine\@gobbletwo
+ \chardef\pdftexversion=121 %
+ \newcount\pdfoutput
+ \pdfoutput=1 %
+ \input{pdftex.def}%
+ \edef\x{\endgroup\def\noexpand\ppf@other@extensions{\Gin@extensions}
+ }%
+ \x
+ \AtBeginDocument{%
+ \@ifpackageloaded{keyval}{%
+ \def\KV@errx#1{\PackageInfo{keyval}{#1}}%
+ }{}%
+ \@ifpackageloaded{xkeyval}{%
+ \def\XKV@err#1{\PackageInfo{xkeyval}{#1}}%
+ }{}%
+ \@for\@tempa:=\ppf@other@extensions\do{%
+ \expandafter\let\csname Gin@rule@\@tempa\endcsname\relax}%
+ \DeclareGraphicsRule{*}{eps}{*}{}}%
+ \define@key{Gin}{innerframe}[true]{}%
+ \define@key{Gin}{frame}[true]{}%
+ \define@key{Gin}{ignore}[true]{}%
+ \define@key{Gin}{showname}[true]{}%
+ \define@key{Gin}{namefont}{}%
+ \@ifundefined{GPT@page}{\define@key{Gin}{page}{}}{}
+ \if@ppf@tightpage\else
+ \def\PreviewBbAdjust{%
+ -600pt -600pt 600pt 600pt}%
+ \AtEndDocument{%
+ \PackageWarningNoLine{pst-pdf}{Picture container needs cropping.}}%
+ \fi
+ \newenvironment{postscript}[1][]%
+ {%
+ \global\let\ppf@PreviewBbAdjust\PreviewBbAdjust
+ \if@ppf@tightpage
+ \begingroup
+ \setkeys{Gin}{#1}%
+ \xdef\PreviewBbAdjust{%
+ -\Gin@vllx bp -\Gin@vlly bp \Gin@vurx bp \Gin@vury bp}%
+ \endgroup
+ \fi
+ \ignorespaces
+ }%
+ {\aftergroup\ppf@RestoreBbAdjust}%
+ \PreviewEnvironment{postscript}%
+ \AtBeginDocument{%
+ \@ifundefined{PSTricksLoaded}{}%
+ {%
+ \PreviewEnvironment{pspicture}%
+ \@ifundefined{psmatrix}{}%
+ {%
+ \PreviewEnvironment{psmatrix}%
+ \newcommand*\ppf@set@mode{}%
+ \newcommand*\ppf@test@mmode{%
+ \ifmmode
+ \ifinner
+ \let\ppf@set@mode=$%
+ \else
+ \def\ppf@set@mode{$$}%
+ \fi
+ \else
+ \let\ppf@set@mode=\@empty
+ \fi
+ }%
+ \let\ppf@psmatrix=\psmatrix
+ \expandafter\let\expandafter\ppf@pr@psmatrix%
+ \expandafter=\csname pr@\string\psmatrix\endcsname
+ \let\ppf@endpsmatrix=\endpsmatrix
+ \def\psmatrix{\ppf@test@mmode\ppf@psmatrix}
+ \expandafter\def\csname pr@\string\psmatrix\endcsname{%
+ \ppf@set@mode\ppf@pr@psmatrix}%
+ \def\endpsmatrix{\ppf@endpsmatrix\ppf@set@mode}%
+ }%
+ \PreviewMacro[{{}*[]%
+ ?\bgroup{#{#1}{{#1}}}{}%
+ ?\bgroup{#{#1}{{#1}}}{}%
+ ?({#{(#1)}{({#1})}}{}%
+ ?({#{(#1)}{({#1})}}{}%
+ ?({#{(#1)}{({#1})}}{}%
+ }]{\pst@object}}
+ \@ifundefined{tabularx}{}{%
+ \newcolumntype{X}{c}%
+ \expandafter\let\expandafter\tabularx\csname tabular*\endcsname
+ \expandafter\let\expandafter\endtabularx\csname endtabular*\endcsname
+ }%
+ \@ifundefined{pfx@includegraphicx}{}{%
+ \PreviewMacro[{{}{}}]{\pfx@includegraphicx}}%
+ }%
+ \def\Gscale@@box#1#2#3{%
+ \toks@{\mbox}%
+ }
+ \def\Ginclude@graphics#1{%
+ \ifpr@outer
+ \ppf@is@pdfTeX@graphic{#1}{\ppf@other@extensions}{\Gin@extensions}%
+ {\rule{10pt}{10pt}}%
+ {\ppf@Ginclude@graphics{#1}}%
+ \else
+ \ppf@Ginclude@graphics{#1}%
+ \fi
+ }%
+ \PreviewMacro[{{}}]{\ppf@Ginclude@graphics}%
+ \let\pdfliteral\@gobble%
+\or
+ \PackageInfo{pst-pdf}{MODE: \ppf@TeX@mode\space (pdfTeX mode)}%
+ \if@ppf@PST@used
+ \let\ppf@temp\AtBeginDvi\let\AtBeginDvi\@gobble
+ \RequirePackage{pstricks}\let\AtBeginDvi\ppf@temp
+ \fi
+ \@temptokena{%
+ \let\Gin@PS@file@header\@gobble\let\Gin@PS@literal@header\@gobble
+ \let\Gin@PS@raw\@gobble\let\Gin@PS@restored\@gobble
+ \@ifundefined{PSTricksLoaded}{}{%
+ \PSTricksOff
+ \@ifundefined{c@lor@to@ps}{\def\c@lor@to@ps#1 #2\@@{}}{}}}%
+ \the\@temptokena
+ \expandafter\AtBeginDocument\expandafter
+ {\the\@temptokena\@temptokena{}}%
+ \@ifundefined{PSTricksLoaded}{}{%
+ \newtoks\ppf@output
+ \ppf@output\expandafter{\the\output}%
+ \let\ppf@nofiles=\nofiles \let\nofiles=\relax
+ \let\ppf@shipout=\shipout
+ \RequirePackage[active]{preview}[2005/01/29]%
+ \let\shipout=\ppf@shipout \let\ppf@shipout=\relax
+ \let\nofiles=\ppf@nofiles \let\ppf@nofiles=\relax
+ \output\expandafter{\the\ppf@output} \ppf@output{}%
+ \long\def\pr@startbox#1#2{%
+ \ifpr@outer
+ \toks@{#2}%
+ \edef\pr@cleanup{\the\toks@}%
+ \setbox\@tempboxa\vbox\bgroup
+ \everydisplay{}%
+ \pr@outerfalse%
+ \expandafter\@firstofone
+ \else
+ \expandafter\@gobble
+ \fi{#1}}%
+ \def\pr@endbox{%
+ \egroup
+ \setbox\@tempboxa\box\voidb@x
+ \ppf@@getpicture
+ \pr@cleanup}%
+ \AtBeginDocument{%
+ \@ifundefined{pst@object}{}%
+ {%
+ \PreviewMacro[{{}*[]%
+ ?\bgroup{#{#1}{{#1}}}{}%
+ ?\bgroup{#{#1}{{#1}}}{}%
+ ?({#{(#1)}{({#1})}}{}%
+ ?({#{(#1)}{({#1})}}{}%
+ ?({#{(#1)}{({#1})}}{}%
+ }]{\pst@object}}%
+ }%
+ }%
+ \begingroup
+ \input{dvips.def}%
+ \edef\x{\endgroup\def\noexpand\ppf@other@extensions{\Gin@extensions}}%
+ \x
+ \DeclareGraphicsRule{*}{eps}{*}{}%
+ \define@key{Gin}{innerframe}[true]{%
+ \lowercase{\Gin@boolkey{#1}}{innerframe}}%
+ \define@key{Gin}{frame}[true]{%
+ \lowercase{\Gin@boolkey{#1}}{frame}}%
+ \define@key{Gin}{ignore}[true]{%
+ \lowercase{\Gin@boolkey{#1}}{ignore}}%
+ \define@key{Gin}{frame@@}{%
+ \edef\@tempa{\toks@{\noexpand\frame{\the\toks@}}}%
+ \ifcase#1\relax
+ \ifGin@innerframe\else\let\@tempa\relax\fi
+ \or
+ \ifGin@frame\else\let\@tempa\relax\fi
+ \fi
+ \@tempa
+ }%
+ \define@key{Gin}{showname}[true]{%
+ \lowercase{\Gin@boolkey{#1}}{showname}}%
+ \define@key{Gin}{namefont}{%
+ \begingroup
+ \@temptokena\expandafter{\ppf@namefont#1}%
+ \edef\x{\endgroup\def\noexpand\ppf@namefont{\the\@temptokena}}%
+ \x
+ }%
+ \newcommand*\ppf@filename{}%
+ \newcommand*\ppf@namefont{\tiny\ttfamily}%
+ \newcommand*\ppf@Gin@keys{}%
+ \let\ppf@Gin@setfile\Gin@setfile
+ \def\Gin@setfile#1#2#3{\ppf@Gin@setfile{#1}{#2}{#3}%
+ \xdef\ppf@filename{%
+ #3\ifx\GPT@page\@empty\else(\GPT@page)\fi}}%
+ \def\Gin@ii[#1]#2{%
+ \begingroup
+ \@temptokena{#1}\def\ppf@tempb{#2}%
+ \ifx\ppf@tempb\@empty\else
+ \ppf@is@pdfTeX@graphic{#2}{\Gin@extensions}{\ppf@other@extensions}%
+ {%
+ \setkeys{Gin}{#1}%
+ \ifx\ppf@tempb\PDFcontainer
+ \@temptokena{page=\GPT@page}%
+ \fi
+ }%
+ {%
+ \refstepcounter{pspicture}%
+ \@temptokena{page=\the\c@pspicture}\def\ppf@tempb{\PDFcontainer}%
+ }%
+ \fi
+ \ifGin@ignore\else
+ \edef\@tempa{\noexpand\ppf@Gin@ii[frame@@=0,\the\@temptokena,
+ frame@@=1]{\ppf@tempb}}%
+ \@tempa
+ \ifGin@showname
+ \ppf@namefont
+ \raisebox{-\ht\strutbox}[0pt][0pt]{\llap{\ppf@filename}}%
+ \gdef\ppf@filename{}%
+ \fi
+ \fi
+ \endgroup
+ }%
+ \IfFileExists{\PDFcontainer}%
+ {%
+ \pdfximage{\PDFcontainer}%
+ \edef\ppf@container@max{\the\pdflastximagepages}%
+ \AtEndDocument{%
+ \ifnum\c@pspicture>\z@
+ \ifnum\c@pspicture=\ppf@container@max\else
+ \PackageWarningNoLine{pst-pdf}{%
+ `\PDFcontainer' contains \ppf@container@max\space pages
+ \MessageBreak but \the\c@pspicture\space pages are requested:
+ \MessageBreak File `\PDFcontainer' is no more valid!
+ \MessageBreak Recreate it
+ }%
+ \fi
+ \fi
+ }%
+ }%
+ {%
+ \def\ppf@container@max{0}%
+ \AtEndDocument{%
+ \ifnum\c@pspicture>\z@
+ \filename@parse{\PDFcontainer}%
+ \PackageWarningNoLine{pst-pdf}{%
+ File `\PDFcontainer' not found.\MessageBreak
+ Use the following commands to create it:\MessageBreak
+ ----------------------------------------------------
+ \MessageBreak
+ latex \jobname.tex\MessageBreak
+ dvips -o \filename@base.ps \jobname.dvi\MessageBreak
+ ps2pdf \filename@base.ps\MessageBreak
+ ----------------------------------------------------
+ }%
+ \fi
+ }%
+ }%
+ \newcommand\ppf@isnum[1]{%
+ \if!\ifnum9<1#1!\else_\fi\expandafter\@firstoftwo
+ \else\expandafter\@secondoftwo\fi}%
+ \newcommand*\ppf@set@mode{}%
+ \newcommand*\ppf@test@mmode{%
+ \ifmmode
+ \ifinner
+ \let\ppf@set@mode=$%
+ \else
+ \def\ppf@set@mode{$$}%
+ \fi
+ \else
+ \let\ppf@set@mode=\@empty
+ \fi
+ }
+ \RequirePackage{environ}%
+ \newenvironment{postscript}[1][]{%
+ \def\@tempa{postscript}%
+ \ifx\@tempa\@currenvir
+ \def\ppf@Gin@keys{#1}%
+ \else
+ \def\ppf@Gin@keys{}%
+ \fi
+ \ppf@@getpicture
+ \Collect@Body\@gobble}{}%
+ \AtBeginDocument{%
+ \@ifundefined{PSTricksLoaded}{}{%
+ \def\pst@@@picture[#1](#2,#3)(#4,#5){\postscript}%
+ \def\endpspicture{\endpostscript\endgroup}%
+ \@ifundefined{psmatrix}{}{%
+ \let\psmatrix=\postscript
+ \let\endpsmatrix=\endpostscript}%
+ }%
+ \@ifundefined{pfx@includegraphicx}{}{%
+ \let\includegraphics=\pfx@includegraphics
+ \def\pfx@includegraphicx#1#2{\ppf@@getpicture}%
+ }%
+ }%
+ \def\savepicture#1{%
+ \expandafter\xdef\csname ppf@@@#1\endcsname{\the\pdflastximage}}%
+ \renewcommand*\usepicture[2][]{%
+ \@ifundefined{ppf@@@#2}%
+ {%
+ \ppf@isnum{#2}%
+ {\ppf@getpicture{#1}{#2}}%
+ {\@latex@error{picture `#2' undefined}\@ehc}%
+ }%
+ {%
+ \begingroup
+ \def\Ginclude@graphics##1{%
+ \xdef\ppf@filename{#2}%
+ \setbox\z@\hbox{\pdfrefximage\@nameuse{ppf@@@#2}}%
+ \Gin@nat@height\ht\z@ \Gin@nat@width\wd\z@
+ \def\Gin@llx{0} \let\Gin@lly\Gin@llx
+ \Gin@defaultbp\Gin@urx{\Gin@nat@width}%
+ \Gin@defaultbp\Gin@ury{\Gin@nat@height}%
+ \Gin@bboxtrue\Gin@viewport@code
+ \Gin@nat@height\Gin@ury bp%
+ \advance\Gin@nat@height-\Gin@lly bp%
+ \Gin@nat@width\Gin@urx bp%
+ \advance\Gin@nat@width-\Gin@llx bp%
+ \Gin@req@sizes
+ \ht\z@\Gin@req@height \wd\z@\Gin@req@width
+ \leavevmode\box\z@}%
+ \define@key{Gin}{type}{}%
+ \includegraphics[scale=1,#1]{}%
+ \endgroup
+ }}%
+ \newcommand*\ppf@getpicture[2]{%
+ \@tempcnta=#2\relax%
+ \ifnum\@tempcnta>\ppf@container@max
+ \PackageWarningNoLine{pst-pdf}{%
+ pspicture No. \the\@tempcnta\space undefined}%
+ \else
+ \includegraphics[draft=\ppf@draft,#1,page=\the\@tempcnta]%
+ {\PDFcontainer}%
+ \fi
+ \gdef\ppf@Gin@keys{}}%
+ \newcommand*\ppf@@getpicture{%
+ \ifpr@outer
+ \refstepcounter{pspicture}%
+ \expandafter\ppf@getpicture\expandafter{\ppf@Gin@keys}%
+ {\the\c@pspicture}%
+ \fi}%
+ \renewenvironment*{pst-pdf-defs}%
+ {%
+ \endgroup
+ \chardef\ppf@temp=\catcode`\&%
+ \@makeother\&%
+ }{%
+ \catcode`\&=\ppf@temp
+ \begingroup
+ \def\@currenvir{pst-pdf-defs}%
+ }
+\else
+ \PackageInfo{pst-pdf}{MODE: \ppf@TeX@mode\space (inactive mode)}%
+ \newenvironment{postscript}[1][]{\ignorespaces}{}
+ \let\ppf@is@pdfTeX@graphic\relax
+\fi
+\InputIfFileExists{pst-pdf.cfg}{%
+ \PackageInfo{pst-pdf}{Local config file pst-pdf.cfg used}}{}
+\endinput
+%%
+%% End of file `pst-pdf.sty'.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-pdf.tlpobj new/tlpkg/tlpobj/pst-pdf.tlpobj
--- old/tlpkg/tlpobj/pst-pdf.tlpobj 2013-03-12 04:38:52.000000000 +0100
+++ new/tlpkg/tlpobj/pst-pdf.tlpobj 2013-09-16 03:21:56.000000000 +0200
@@ -1,8 +1,7 @@
name pst-pdf
category Package
-revision 29349
+revision 31660
shortdesc Make PDF versions of graphics by processing between runs.
-relocated 1
longdesc The package pst-pdf simplifies the use of graphics from
longdesc PSTricks and other PostScript code in PDF documents. As in
longdesc building a bibliography with BibTEX, additional external
@@ -11,12 +10,13 @@
longdesc material. In the final document these contents will be inserted
longdesc instead of the original PostScript code. The package works with
longdesc pstricks and requires a recent version of the preview package.
+depend pst-pdf.ARCH
runfiles size=9
- RELOC/scripts/pst-pdf/ps4pdf
- RELOC/scripts/pst-pdf/ps4pdf.bat
- RELOC/scripts/pst-pdf/ps4pdf.bat.noMiKTeX
- RELOC/scripts/pst-pdf/ps4pdf.bat.w95
- RELOC/tex/latex/pst-pdf/pst-pdf.sty
+ texmf-dist/scripts/pst-pdf/ps4pdf
+ texmf-dist/scripts/pst-pdf/ps4pdf.bat
+ texmf-dist/scripts/pst-pdf/ps4pdf.bat.noMiKTeX
+ texmf-dist/scripts/pst-pdf/ps4pdf.bat.w95
+ texmf-dist/tex/latex/pst-pdf/pst-pdf.sty
catalogue-ctan /macros/latex/contrib/pst-pdf
catalogue-date 2012-06-18 13:20:48 +0200
catalogue-license lppl
++++++ pst-plot.doc.tar.xz ++++++
++++ 7681 lines of diff (skipped)
++++++ pst-plot.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-plot/pst-plot.tex new/tex/generic/pst-plot/pst-plot.tex
--- old/tex/generic/pst-plot/pst-plot.tex 2013-04-30 01:26:35.000000000 +0200
+++ new/tex/generic/pst-plot/pst-plot.tex 2014-05-16 23:10:31.000000000 +0200
@@ -1,11 +1,10 @@
-% $Id: pst-plot.tex 776 2013-04-29 10:10:22Z herbert $
%% BEGIN pst-plot.tex
%%
%% plotting functions and data with PSTricks.
%% See the betadoc documentation for usage.
%%
%% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu.
-%% COPYRIGHT 2009-2013 by Herbert Voss, hvoss@tug.org.
+%% COPYRIGHT 2009-2014 by Herbert Voss, hvoss@tug.org.
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
@@ -17,11 +16,12 @@
%
\ifx\PSTricksLoaded\endinput\else\input pstricks.tex\fi
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey.tex\fi
+\ifx\PSTtoolsloaded\endinput\else\input pst-tools.tex\fi
\ifx\PSTFPloaded\endinput\else \input pst-fp.tex \fi
\ifx\MultidoLoaded\endinput\else \input multido.tex \fi
%
-\def\fileversion{1.45}
-\def\filedate{2013/04/29}
+\def\fileversion{1.62}
+\def\filedate{2014/05/12}
\message{ v\fileversion, \filedate\space (tvz,hv)}
%
\edef\TheAtCode{\the\catcode`\@}
@@ -152,6 +152,36 @@
%
\def\savedata#1{\begingroup\pst@datadelimiters\savedata@{#1}}
%
+\newread\RCD@file
+\def\psreadDataColumn#1#2#3#4{% #1:column #2:delimiter #3:\result #4:data file
+ \immediate\openin\RCD@file=#4\relax
+ \global\let#3=\@empty
+ \loop
+ \read\RCD@file to \@tempa
+ \ifeof\RCD@file\else
+ %%%\typeout{*** \@tempa ***}%
+ \edef\@tempa{\@tempa#2}%
+ \def\reserved@b{}%
+ \@tempswafalse
+ \@tempcnta=#1\relax
+ \expandafter\@tfor\expandafter\reserved@a
+ \expandafter:\expandafter=\@tempa\do{% loop over every token
+ \if\reserved@a#2\relax% delimiter?
+ \advance\@tempcnta \m@ne
+ \ifnum \@tempcnta=\z@
+ \expandafter\g@addto@macro\expandafter#3\expandafter{\reserved@b\space}%
+ \@tempswatrue
+ \fi
+ \def\reserved@b{}% ???
+ \else
+ \edef\reserved@b{\reserved@b\reserved@a}
+ \fi
+ \if@tempswa\@break@tfor\fi
+ }%
+ \repeat
+ \immediate\closein\RCD@file
+}
+
%%%%%%%%%%%%%% the plot-styles %%%%%%%%%%%%%%%%%%
%
\def\beginplot@line{\begin@OpenObj}
@@ -194,14 +224,29 @@
\end@SpecialObj%
}
%
+\def\beginplot@bubble{\begin@SpecialObj}
+\def\endplot@bubble{%
+ \addto@pscode{%
+ newpath
+ n { dup % x y y
+ \pst@number\psyunit div abs % to orig y value
+ transform floor .5 add exch floor
+ .5 add exch itransform
+ 0 360 arc \psk@fill
+ stroke } repeat }%
+ \end@SpecialObj%
+}
+%
\def\beginplot@bezier{\begin@OpenObj}
\def\endplot@bezier{\psbezier@ii}
%
\def\beginplot@cbezier{\begin@ClosedObj}
\def\endplot@cbezier{\pscbezier@ii}
-
-% added 2007-06-26 (hv)
-\let\beginplot@LineToYAxis\beginplot@line % all from pst-plot
+%
+\def\beginplot@cspline{\begin@OpenObj}%% Christoph Bersch
+\def\endplot@cspline{\pscspline@ii}
+%
+\let\beginplot@LineToYAxis\beginplot@line % all from pst-plot added 2007-06-26 (hv)
\def\endplot@LineToYAxis{\psLineToYAxis@ii}
\let\beginqp@LineToYAxis\beginqp@line
\let\doqp@LineToYAxis\doqp@line
@@ -347,6 +392,9 @@
%
\define@key[psset]{pst-plot}{IQLfactor}{\pst@checknum{#1}\pst@IQLfactor}
\psset[pst-plot]{IQLfactor=1.5}
+\define@key[psset]{pst-plot}{postAction}[]{\def\psk@postAction{%
+ \ifx\relax#1\relax\else\pst@number\psyunit div #1 \pst@number\psyunit mul \fi }}
+\psset[pst-plot]{postAction=}
%
\def\psBoxplot@ii{%
\addto@pscode{
@@ -392,11 +440,11 @@
NArray exch get LowerQuartil sub abs IQL sub 0 gt {
\psk@dotsize
\@nameuse{psds@\psk@dotstyle}
- 0 NArray Index get
+ 0 NArray Index get \psk@postAction
Dot
NArray Index LowerQuartil UpperQuartil LowerQuartil sub \pst@IQLfactor\space mul sub
dup /MinVal ED put % replace with 1.5 IQL
-% NArray Index 1 add get /MinVal ED
+ NArray Index 1 add get /MinVal ED
} { exit } ifelse
} for
m 1 sub -1 0 { % Index on stack
@@ -405,21 +453,25 @@
% newpath
\psk@dotsize
\@nameuse{psds@\psk@dotstyle}
- 0 NArray Index get
+ 0 NArray Index get \psk@postAction\space
Dot
NArray Index UpperQuartil LowerQuartil sub \pst@IQLfactor\space mul UpperQuartil add
dup /MaxVal ED put % replace with 1.5 IQL
+ NArray Index 1 sub get /MaxVal ED
}{ exit } ifelse
} for
%
- Endwidth neg MaxVal moveto % we are on top
- Endwidth dup add 0 rlineto
- 0 MaxVal moveto
- 0 UpperQuartil lineto % upper quartil
- 0 LowerQuartil moveto
- 0 MinVal lineto
- Endwidth neg MinVal moveto
+ Endwidth neg MaxVal \psk@postAction moveto % we are on top / lower whisker
Endwidth dup add 0 rlineto
+ 0 MaxVal \psk@postAction moveto
+ 0 UpperQuartil \psk@postAction lineto % upper quartil
+%%
+ MinVal \psk@postAction MaxVal \psk@postAction lt {
+ 0 LowerQuartil \psk@postAction moveto % line to lower whisker
+ 0 MinVal \psk@postAction lineto
+ Endwidth neg MinVal \psk@postAction moveto
+ Endwidth dup add 0 rlineto
+ } if
gsave
\pst@number\pslinewidth SLW
\pst@usecolor\pslinecolor
@@ -429,13 +481,13 @@
stroke
grestore
newpath
- Barwidth neg LowerQuartil moveto % lower quartil
- Barwidth neg UpperQuartil lineto
+ Barwidth neg LowerQuartil \psk@postAction moveto % lower quartil
+ Barwidth neg UpperQuartil \psk@postAction lineto
Barwidth dup add 0 rlineto
- Barwidth LowerQuartil lineto
+ Barwidth LowerQuartil \psk@postAction lineto
closepath
gsave \pst@usecolor\psfillcolor \tx@setTransparency fill grestore
- Barwidth neg Median moveto % median
+ Barwidth neg Median \psk@postAction moveto % median
Barwidth dup add 0 rlineto
\pst@number\pslinewidth SLW
\pst@usecolor\pslinecolor
@@ -979,7 +1031,7 @@
} \ifx\psk@method\@varrkiv loop\else repeat \fi \space
/x x1 def
xy
- 2 copy \tx@UserCoor 2 array astore /SaveFinalState ED
+ 2 copy \tx@UserCoor 2 array astore /FinalState ED
n 2 roll}%
\fi%
\@nameuse{endplot@\psplotstyle}}
@@ -1075,7 +1127,9 @@
/t 3 -1 roll def 2 copy gt { exch } if pop
/t t 3 -1 roll dup /LastNonZeroStep exch def add dup t1 gt {pop t1} if def /n n 2 add def
t t1 eq { exit } if } loop
- xy n 2 roll}%
+ xy
+ 2 copy \tx@UserCoor 2 array astore /FinalState ED
+ n 2 roll}%
\else\pst@killglue%
\addto@pscode{
mark
@@ -1147,14 +1201,11 @@
\fi}
\psset[pst-plot]{labelFontSize={},mathLabel}
%
-\define@key[psset]{pst-plot}{decimalSeparator}[.]{\def\psk@decimalSeparator{#1}}%
-\define@boolkey[psset]{pst-plot}[Pst@]{comma}[true]{%
- \ifPst@comma\def\psk@decimalSeparator{,}\else\def\psk@decimalSeparator{.}\fi}
\define@boolkey[psset]{pst-plot}[Pst@]{xAxis}[true]{}
\define@boolkey[psset]{pst-plot}[Pst@]{yAxis}[true]{}
\define@boolkey[psset]{pst-plot}[Pst@]{xyAxes}[true]{%
\@nameuse{Pst@xAxis#1}\@nameuse{Pst@yAxis#1}}%
-\psset[pst-plot]{decimalSeparator=.,xAxis,yAxis,comma=false,}%
+\psset[pst-plot]{xAxis,yAxis}%
%
\define@key[psset]{pst-plot}{xlabelPos}[b]{\pst@expandafter\psset@@xlabelPos{#1}\@nil}
\define@key[psset]{pst-plot}{ylabelPos}[l]{\pst@expandafter\psset@@ylabelPos{#1}\@nil}
@@ -1582,6 +1633,8 @@
\define@key[psset]{pst-plot}{xlabelOffset}[0pt]{\pst@getlength{#1}\psk@xlabelOffset}
\define@key[psset]{pst-plot}{ylabelOffset}[0pt]{\pst@getlength{#1}\psk@ylabelOffset}
%
+\define@key[psset]{pst-plot}{frameOffset}[0pt]{\pst@getlength{#1}\psk@frameOffset}
+%
\define@key[psset]{pst-plot}{tickcolor}[black]{%
\pst@getcolor{#1}\psk@xtickcolor%
\pst@getcolor{#1}\psk@ytickcolor}
@@ -1620,7 +1673,7 @@
%
\psset[pst-plot]{subticksize=0.75,subticks=1,tickcolor=black,ticklinestyle=solid,
subticklinestyle=solid,subtickcolor=gray,tickwidth=0.5\pslinewidth,
- subtickwidth=0.25\pslinewidth,labelOffset=0pt}
+ subtickwidth=0.25\pslinewidth,labelOffset=0pt,frameOffset=0pt}
%
\define@key[psset]{pst-plot}{nStep}[1]{\def\psk@nStep{#1}}
\define@key[psset]{pst-plot}{nStart}[0]{\def\psk@nStart{#1}}
@@ -1638,7 +1691,7 @@
\define@key[psset]{pst-plot}{plotNoMax}[1]{\def\psk@plotNoMax{#1}}
%
\psset[pst-plot]{nStep=1, nStart=0, nEnd={},%
- xStep=0, yStep=0, xStart={}, xEnd={}, yStart={}, yEnd={}, comma=false,%
+ xStep=0, yStep=0, xStart={}, xEnd={}, yStart={}, yEnd={},
plotNo=1,plotNoMax=1,plotNoX=1}%
%
\def\pstScalePoints(#1,#2)#3#4{%
@@ -1649,13 +1702,14 @@
\def\pstXPSScale{#3 }%
\def\pstYPSScale{#4 }%
\pst@def{ScalePoints}<%
- /y ED /x ED
- /yPSOp { #4 y mul #2 mul } def
- /xPSOp { #3 x mul #1 mul } def
+ /yVal ED /xVal ED
+ /yPSOp { #4 yVal mul #2 mul } def
+ /xPSOp { #3 xVal mul #1 mul } def
counttomark dup dup cvi eq not { exch pop } if
/m exch def /n m 2 div cvi def
n {
- yPSOp m 1 roll xPSOp m 1 roll
+ \ifPst@polarplot exch cvi 360 mod PtoC \fi % x cvi 360 mod PtoC
+ yPSOp m 1 roll xPSOp m 1 roll
/m m 2 sub
def } repeat>%
}
@@ -1677,7 +1731,8 @@
\def\psaxes@vi(#1)(#2)(#3)[#4,#5][#6,#7]{%
\psaxes@vii(#1)(#2)(#3)%
\begingroup%
- \use@par%
+ \SpecialCoor
+ \use@par
\uput{\psxlabelsep}[#5](#3|#1){#4}\uput{\psylabelsep}[#7](#1|#3){#6}%
\endgroup%
\ignorespaces}
@@ -1779,9 +1834,11 @@
\ifx\psk@axesstyle\@none
pop pop % axesstyle = none (only ticks) or frame (already drawn)
\else
- L % the line with arrows
- \@nameuse{psls@\pslinestyle} % linestyle for the axes
- stroke % draw the main line
+ gsave % save current state
+ L % the line with arrows
+ \@nameuse{psls@\pslinestyle} % linestyle for the axes
+ stroke % draw the main line
+ grestore
\fi
/yStart exch def
/xStart exch def
@@ -1832,11 +1889,13 @@
\fi
} def
/LSstroke { % set linestyle and stroke
- \ifis@yAxis\@nameuse{psls@\psyticklinestyle}
- \else\@nameuse{psls@\psxticklinestyle}\fi stroke} def
+ \ifis@yAxis \@nameuse{psls@\psyticklinestyle}
+ \else \@nameuse{psls@\psxticklinestyle}\fi
+ stroke} def
/subLSstroke { % set sublinestyle and stroke
- \ifis@yAxis\@nameuse{psls@\psysubticklinestyle}
- \else\@nameuse{psls@\psxsubticklinestyle}\fi stroke} def
+ \ifis@yAxis \@nameuse{psls@\psysubticklinestyle}
+ \else \@nameuse{psls@\psxsubticklinestyle}\fi
+ stroke} def
%\iffalse
% start ticks ---------------------------------------------------------
% showOrigin { 0 }{ dT } ifelse
@@ -1974,7 +2033,7 @@
} for
% end ticks ----------------------------------------------------------
%\fi
- } if%
+ } if
}% end of \pscode
\end@SpecialObj%
% now draw the axes again with the correct linecolor
@@ -1985,16 +2044,14 @@
\ignorespaces%
}%
%
-%
-%
-%
\def\psxs@frame{%
+ \psset{axesstyle=none}%
\begin@SpecialObj%
\addto@pscode{ % the frame
- \pst@number\pst@dima \pst@number\pst@dimb moveto % lower left
- \pst@number\pst@dimc \pst@number\pst@dimb L % upper left
- \pst@number\pst@dimc \pst@number\pst@dimd L % upper right
- \pst@number\pst@dima \pst@number\pst@dimd L % lower right
+ \pst@number\pst@dima \psk@frameOffset sub \pst@number\pst@dimb \psk@frameOffset sub moveto % lower left
+ \pst@number\pst@dimc \psk@frameOffset add \pst@number\pst@dimb \psk@frameOffset sub L % upper left
+ \pst@number\pst@dimc \psk@frameOffset add \pst@number\pst@dimd \psk@frameOffset add L % upper right
+ \pst@number\pst@dima \psk@frameOffset sub \pst@number\pst@dimd \psk@frameOffset add L % lower right
closepath
}%
\pst@stroke%
@@ -2002,36 +2059,49 @@
\end@SpecialObj%
\let\psk@arrowA\@empty%
\let\psk@arrowB\@empty%
- \pst@xticksizeC=\z@\pst@yticksizeC=\z@%
- \psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{}{x}% x axis
- \psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{ exch }{y}% y axis
+ \pst@xticksizeC=\z@\pst@yticksizeC=\z@
+ \ifPst@xAxis\psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{}{x}\fi% x axis
+ \ifPst@yAxis\psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{ exch }{y}\fi% y axis
\ifnum\psk@tickstyle=\tw@ % llx,lly,urx,ury,exch,x|y,arrowA,arrowB
\psDEBUG[psxs@frame]{psk@tickstyle=2 (inner)}%
\psDEBUG[psxs@frame]{pst@dima=\pst@number\pst@dima}%
\psDEBUG[psxs@frame]{pst@dimb=\pst@number\pst@dimb}%
\psDEBUG[psxs@frame]{pst@dimc=\pst@number\pst@dimc}%
\psDEBUG[psxs@frame]{pst@dimd=\pst@number\pst@dimd}%
- \psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{ neg \pst@number\pst@dimd add }{x}% % upper x axis
- \psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{ neg \pst@number\pst@dimc add exch }{y}% right y axis
+ \ifPst@xAxis\psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{ neg \pst@number\pst@dimd add }{x}\fi% % upper x axis
+ \ifPst@yAxis\psxs@@axes\pst@dima\pst@dimb\pst@dimc\pst@dimd{ neg \pst@number\pst@dimc add exch }{y}\fi% right y axis
\fi%
}
%
+%\def\psk@EndAngle{360}% be sure that it isn't undefined
+%\define@key[psset]{pst-plot}{quadrant}[4]{%
+% \ifcase#1 \or
+% \def\psk@EndAngle{90}\or
+% \def\psk@EndAngle{180}\or
+% \def\psk@EndAngle{270}\else
+% \def\psk@EndAngle{360}%
+% \fi}
+%\psset[pst-plot]{quadrant=4}
+
\def\psxs@polar{% (rx,ry) % all other values are ignored
\pst@killglue
\begingroup
\edef\pst@dimC{\strip@pt\pst@dimc}% RadiusX
\pstFPDiv\pstR@dius{\pst@dimC}{\strip@pt\psxunit}% in cm and as integer
- \addbefore@par{Dy=30}% for the angle step
+ \edef\pst@dimD{\strip@pt\pst@dimd}% RadiusX
+ \pstFPDiv\psk@EndAngle{\pst@dimD}{\strip@pt\psyunit}% in cm and as integer
+ \ifnum\psk@EndAngle=0 \def\psk@EndAngle{360}\fi
\use@keep@par
- \pstFPDiv\pstN@lpha{360}{\psk@Dy}% No of (int) main lines
+ \pstFPDiv\pstN@lpha{\psk@EndAngle}{\psk@Dy}% No. of (int) main lines
\pstFPdiv\pstd@lpha{\psk@Dy}{\psk@ysubticks}% sub dAlpha
\pstFPdiv\pstdR@dius{1}{\psk@xsubticks}% sub dRadius
\pst@cntm=\psk@xsubticks\advance\pst@cntm by \m@ne
\multido{\iA=\psk@Dx+\psk@Dx,\rB=\pstdR@dius+\psk@Dx,\iB=0+1}{\pstR@dius}{%
- \multido{\rA=\rB+\pstdR@dius}{\the\pst@cntm}{\pscircle[linestyle=\psxsubticklinestyle,
- linecolor=\psk@xsubtickcolor,linewidth=\psk@xsubtickwidth pt]{\rA}}
- \pscircle[linestyle=\psxticklinestyle,linecolor=\psk@xtickcolor,
- linewidth=\psk@xtickwidth pt]{\iA}%
+ \multido{\rA=\rB+\pstdR@dius}{\the\pst@cntm}{%
+ \psarc[linestyle=\psxsubticklinestyle,
+ linecolor=\psk@xsubtickcolor,linewidth=\psk@xsubtickwidth pt](0,0){\rA}{0}{\psk@EndAngle}}
+ \psarc[linestyle=\psxticklinestyle,linecolor=\psk@xtickcolor,
+ linewidth=\psk@xtickwidth pt](0,0){\iA}{0}{\psk@EndAngle}%
\ifnum\psk@labels<2\relax% is all or x (0,1)
\uput[-45](\iB,0){\pshlabel{\iB}}\uput[45](0,\iB){\pshlabel{\iB}}%
\fi%
@@ -2046,15 +2116,19 @@
\ifodd\psk@labels\else% is all or y (0,3)
\uput[\iA](\pstR@dius;\iA){\psvlabel{\iA}}%
\fi%
- }
+ }%
+ \ifnum\psk@EndAngle<360 \psline[linestyle=\psyticklinestyle,
+ linecolor=\psk@ytickcolor,linewidth=\psk@ytickwidth pt](\pstR@dius;0)\fi
\endgroup\ignorespaces%
\Pst@xAxisfalse\Pst@yAxisfalse%
}
%
+\def\@polar{polar}
\define@key[psset]{pst-plot}{axesstyle}[axes]{%
\@ifundefined{psxs@#1}%
{\@pstrickserr{Axes style `#1' not defined}\@eha}%
- {\def\psk@axesstyle{#1}}}
+ {\def\psk@axesstyle{#1}%
+ \ifx\psk@axesstyle\@polar\psset{Dy=30}\fi}}
\psset[pst-plot]{axesstyle=axes}
\define@key[psset]{pst-plot}{xLabels}[]{\def\psk@xLabels{#1}}
\define@key[psset]{pst-plot}{xLabelsRot}[0]{\pst@getangle{#1}\pst@xLabelsRot}
@@ -2065,8 +2139,8 @@
%
% #1:Max/Min in pt from origin; #2:arrow; #3:min; #4:max
\def\pst@hlabels#1#2#3#4{%
+ \kern\psk@xlabelOffset pt% % set the x offset?
\ifx\empty\psk@xLabels
- \kern\psk@xlabelOffset pt % set the x offset?
\ifdim#1=\z@\else% % start from 0 ?
\ifx#2\empty\else\advance#1\ifdim#1>\z@-\fi7\pslinewidth\fi%
\pst@cnta=#1\relax% % Distance (in sp) to end.
@@ -2084,8 +2158,10 @@
\pstFPadd\pst@tempA{1.55}{\pst@tempA} % to prevent rounding errors
\edef\pst@tempB{\pst@int{\pst@tempA}}
% \divide\pst@cnta\psk@dx\relax% % Number of ticks/labels
- \multido{\nA=#3+1}{\pst@tempB}{\uput{\psxlabelsep}[-90]{\pst@xLabelsRot}(\nA,0)%\psxlabelsep)
- {\strut\pshlabel{\psPutXLabel{\nA}}}}%
+ \edef\pst@tempA{\psk@Dx}
+ \multido{\iB=#3+1,\rB=#3+\pst@tempA}{\pst@tempB}%
+ {\uput{\psxlabelsep}[-90]{\pst@xLabelsRot}(\rB,0)%\psxlabelsep)
+ {\strut\pshlabel{\psPutXLabel{\iB}}}}%
\fi%
}
% Knows \pst@dimb and \pst@cnta
@@ -2130,7 +2206,8 @@
\pstFPadd\pst@tempA{1.55}{\pst@tempA} % to prevent rounding errors
\edef\pst@tempB{\pst@int{\pst@tempA}}
% \divide\pst@cnta\psk@dy\relax% % Number of ticks/labels
- \multido{\nA=#3+1}{\pst@tempB}{\uput{\psylabelsep}[180]{\pst@yLabelsRot}(0,\nA){%
+ \edef\pst@tempA{\psk@Dy}
+ \multido{\nA=#3+1,\rA=#3+\pst@tempA}{\pst@tempB}{\uput{\psylabelsep}[180]{\pst@yLabelsRot}(0,\rA){%
\strut\expandafter\psvlabel\expandafter{\psPutYLabel{\nA}}}}%
\fi%
}
@@ -2350,21 +2427,48 @@
\def\psPutXLabel#1{%
\global\pst@cnto=0\relax
\global\pst@cntp=#1\relax
- \expandafter\get@Label\psk@xLabels,\@nil
+ \expandafter\get@Label\psk@xLabels,,\@nil%
}
\def\psPutYLabel#1{%
\global\pst@cnto=0\relax
\global\pst@cntp=#1\relax
- \expandafter\get@Label\psk@yLabels,\@nil
+ \expandafter\get@Label\psk@yLabels,,\@nil%
}
-\def\get@Label#1,#2\@nil{%
- \ifnum\the\pst@cnto=\the\pst@cntp
- #1
- \else\global\advance\pst@cnto by \@ne
- \expandafter\get@Label#2,\@nil
- \fi%
+\def\get@Label#1,#2,#3\@nil{%
+ \ifnum\the\pst@cnto<\the\pst@cntp
+ \global\advance\pst@cnto by \@ne
+ \ifx\relax#3\relax\else\expandafter\get@Label#2,#3\@nil\fi%
+ \else #1\fi%
}
%
+\def\psVectorfield{\pst@object{psVectorfield}}
+\def\psVectorfield@i(#1,#2)(#3,#4)#5{{%
+ \addbefore@par{Dx=0.1,Dy=0.1,Ox=3,arrows=->,linewidth=0.2pt}%
+ \begin@SpecialObj
+ \SpecialCoor
+ \pstFPsub\pst@tempA{#3}{#1}%
+ \pstFPsub\pst@tempB{#4}{#2}%
+ \pstFPDiv{\pst@tempC}{\pst@tempA}{\psk@Dx}%
+ \pstFPDiv{\pst@tempD}{\pst@tempB}{\psk@Dy}%
+ \pstVerb{ /yStrich \ifPst@algebraic (#5) tx@AlgToPs begin AlgToPs end cvx
+ \else { #5 } \fi def }%
+ \multido{\rX=#1+\psk@Dx}{\numexpr\pst@tempC+1}{%
+ \multido{\rY=#2+\psk@Dy}{\numexpr\pst@tempD+1}{%
+ \psline%
+ (! /x \rX\space def
+% /ocount 0 def %%%%%%%%%%%%%%%%%%%% WARUM???? %%%%%%%%
+ /y \rY\space def
+ /yTemp yStrich \psk@Dx\space \psk@Ox\space div mul def
+ \rX\space \psk@Dx\space \psk@Ox\space div sub \rY\space yTemp sub)%
+ (! /x \rX\space def
+% /ocount 0 def %%%%%%%%%%%%%%%%%%%% WARUM???? %%%%%%%%
+ /y \rY\space def
+ /yTemp yStrich \psk@Dx\space \psk@Ox\space div mul def
+ \rX\space \psk@Dx\space \psk@Ox\space div add \rY\space yTemp add)%
+ }}%
+ \end@SpecialObj
+}\ignorespaces}
+%
\def\psFixpoint{\pst@object{psFixpoint}}
\def\psFixpoint@i#1#2#3{% #1: xStart #2: f(x) #3: number of iterations
\pst@killglue%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-plot/pst-plot97.tex new/tex/generic/pst-plot/pst-plot97.tex
--- old/tex/generic/pst-plot/pst-plot97.tex 1970-01-01 01:00:00.000000000 +0100
+++ new/tex/generic/pst-plot/pst-plot97.tex 2013-08-15 00:33:07.000000000 +0200
@@ -0,0 +1,642 @@
+%% BEGIN pst-plot.tex
+\def\fileversion{0.93a-patch2}
+\def\filedate{94/09/19}
+%%
+%% This is for use with PSTricks v0.93a, but contains several
+%% patches for bugs in the pst-plot.tex that was distributed
+%% with v0.93a until March 30, 1994.
+%%
+%% For plots and axes with PSTricks.
+%%
+%% COPYRIGHT 1993, by Timothy Van Zandt, tvz@Princeton.EDU
+%% See pstricks.doc or pstricks.tex for copying restrictions.
+%%
+%% See the PSTricks read-me file and the User's Guide for documentation.
+
+
+\message{ v\fileversion, \filedate}
+
+\csname PSTplotLoaded\endcsname
+\let\PSTplotLoaded\endinput
+
+\ifx\PSTricksLoaded\endinput\else
+ \def\next{\input pstricks97.tex }
+ \expandafter\next
+\fi
+
+\ifx\MultidoLoaded\endinput\else
+ \def\next{\input multido.tex }
+ \expandafter\next
+\fi
+
+\edef\TheAtCode{\the\catcode`\@}
+\catcode`\@=11
+
+% Using lists of data is optimized for \dataplot and \fileplot
+% Here is the tricky part. As each line is read from file,
+% we want to ignore trailing delimiters, and convert arbitrary
+% strings of non-trailing delimiters to _D_.
+% We end up with
+% D x1 D y1 D x2 D y2 ... D xn D yn
+%
+\begingroup
+\catcode`\{=13
+\catcode`\}=13
+\catcode`\(=13
+\catcode`\)=13
+\catcode`\,=13
+\catcode`\!=1
+\catcode`\*=2
+\catcode`\ =13
+\catcode`\_=13
+\catcode`\^^M=13
+\gdef\pst@datadelimiters!% Begin def
+\catcode`\{=13%
+\catcode`\}=13%
+\catcode`\(=13%
+\catcode`\)=13%
+\catcode`\,=13%
+\catcode`\ =13%
+\catcode`\^^M=13%
+\def,##1!%
+\ifcat\noexpand,\noexpand##1%
+\expandafter##1%
+\else\space%
+D\space##1%
+\fi*%
+\let(,\let),\let{,\let},\let ,\let^^M,\let_\@empty*% End def
+\endgroup
+\begingroup
+\catcode`\,=13
+\catcode`\_=13
+\gdef\savedata@#1[#2]{%
+ \xdef\pst@tempg{#2_}%
+ \endgroup
+ \let#1\pst@tempg
+ \global\let\pst@tempg\relax
+ \ignorespaces}
+\gdef\readdata@{%
+ \read1 to \pst@tempa
+ \expandafter\readdata@@\pst@tempa_\@nil
+ \ifeof1\else\expandafter\readdata@\fi}
+\gdef\pst@@readfile#1#2\@nil{\addto@pscode{,#1#2}}%
+\gdef\readdata@@#1#2\@nil{\xdef\pst@tempg{\pst@tempg,#1#2}}%
+\endgroup
+
+\def\readdata#1#2{%
+ \openin1=#2
+ \begingroup
+ \def\pst@tempg{}%
+ \ifeof1
+ \@pstrickserr{Data file `#2' not found.}\@ehpa
+ \else
+ \pst@datadelimiters
+ \catcode`\[=1
+ \catcode`\]=2
+ \readdata@%
+ \fi
+ \endgroup
+ \let#1\pst@tempg
+ \global\let\pst@tempg\relax
+ \ignorespaces}
+
+\def\pst@readfile#1{{\let\readdata@@\pst@@readfile\readdata\pst@tempg{#1}}}
+\def\pst@altreadfile#1{%
+ \openin1=#1
+ \ifeof1
+ \@pstrickserr{Data file `#1' not found.}\@ehpa
+ \else
+ \catcode`\{=10
+ \catcode`\}=10
+ \catcode`\(=10
+ \catcode`\)=10
+ \catcode`\,=10
+ \catcode`\^^M=10
+ \catcode`\[=1
+ \catcode`\]=2
+ \pst@@altreadfile
+ \fi}
+\def\pst@@altreadfile{%
+ \read1 to \pst@tempg
+ \expandafter\pst@@@altreadfile\pst@tempg\@empty\@nil
+ \ifeof1\else\expandafter\pst@@@altreadfile\fi}
+\def\pst@@@altreadfile#1#2\@nil{\addto@pscode{#1#2}}%
+
+\def\savedata#1{\begingroup\pst@datadelimiters\savedata@{#1}}
+
+\def\beginplot@line{\begin@OpenObj}
+\def\endplot@line{\psline@ii}
+\def\beginplot@polygon{\begin@ClosedObj}
+\def\endplot@polygon{\pspolygon@ii}
+\def\beginplot@curve{\begin@OpenObj}
+\def\endplot@curve{\pscurve@ii}
+\def\beginplot@ecurve{\begin@OpenObj}
+\def\endplot@ecurve{\psecurve@ii}
+\def\beginplot@ccurve{\begin@ClosedObj}
+\def\endplot@ccurve{\psccurve@ii}
+\def\beginplot@dots{\begin@SpecialObj}
+\def\endplot@dots{\psdots@ii}
+\def\beginplot@bezier{\begin@OpenObj}
+\def\endplot@line{\psbezier@ii}
+\def\beginplot@cbezier{\begin@ClosedObj}
+\def\endplot@cbezier{\pscbezier@ii}
+
+\def\psset@plotstyle#1{%
+ \@ifundefined{beginplot@#1}%
+ {\@pstrickserr{Plot style `#1' not defined}\@eha}%
+ {\edef\psplotstyle{#1}}}
+\psset@plotstyle{line}
+
+\def\psset@plotpoints#1{%
+ \pst@cntg=#1\relax
+ \ifnum\pst@cntg<2
+ \@pstrickserr{plotpoints parameter must be at least 2}\@ehpa
+ \else
+ \advance\pst@cntg-1
+ \edef\psk@plotpoints{\the\pst@cntg\space}%
+ \fi}
+\psset@plotpoints{50}
+
+% For quick plots, define:
+% \beginqp@<foo> : What to do to first point (PS code only).
+% \doqp@<foo> : What to do to subsequent points (PS code only).
+% \endqp@<foo> : How to end plot.
+% \testqp@<foo> : Set \@psttrue if OK to use quick plot.
+
+\def\beginqp@line{\pst@oplineto}
+\def\doqp@line{L }
+\def\endqp@line{\end@OpenObj}%
+\def\testqp@line{%
+ \ifdim\pslinearc>\z@\else
+ \ifshowpoints\else
+ \ifx\psk@arrowA\@empty
+ \ifx\psk@arrowB\@empty
+ \@psttrue
+ \fi
+ \fi
+ \fi
+ \fi}
+
+\def\beginqp@polygon{moveto }
+\def\doqp@polygon{L }
+\def\endqp@polygon{%
+ \addto@pscode{closepath}%
+ \end@ClosedObj}
+\def\testqp@polygon{%
+ \ifdim\pslinearc>\z@\else
+ \ifshowpoints\else
+ \@psttrue
+ \fi
+ \fi}
+
+\def\beginqp@dots{%
+ \psk@dotsize
+ \@nameuse{psds@\psk@dotstyle}
+ Dot }
+\def\doqp@dots{Dot }
+\def\endqp@dots{\end@SpecialObj}
+\def\testqp@dots{\@psttrue}
+
+\def\beginqp@bezier{/n 0 def \pst@oplineto}
+\def\doqp@bezier{/n n 1 add def n 3 mod 0 eq { curveto } if }
+\def\endqp@bezier{%
+ \addto@pscode{n 3 mod { pop pop } repeat}
+ \end@OpenObj}%
+\def\testqp@bezier{%
+ \ifshowpoints\else
+ \ifx\psk@arrowA\@empty
+ \ifx\psk@arrowB\@empty
+ \@psttrue
+ \fi
+ \fi
+ \fi}
+
+\def\beginqp@cbezier{/n 0 def moveto }
+\def\doqp@cbezier{\doqp@bezier}
+\def\endqp@cbezier{%
+ \addto@pscode{n 3 mod { pop pop } repeat closepath}
+ \end@ClosedObj}%
+\def\testqp@cbezier{\ifshowpoints\else\@psttrue\fi}
+
+\def\dataplot{\def\pst@par{}\pst@object{dataplot}}
+\def\dataplot@i#1{%
+ \pst@killglue
+ \begingroup
+ \use@par
+ \@pstfalse
+ \@nameuse{testqp@\psplotstyle}%
+ \if@pst
+ \dataplot@ii{\addto@pscode{#1}}%
+ \else
+ \listplot@ii{\addto@pscode{#1}}%
+ \fi
+ \endgroup
+ \ignorespaces}
+\def\dataplot@ii#1{%
+ \@nameuse{beginplot@\psplotstyle}%
+ \addto@pscode{%
+ /Dx { \pst@number\psxunit mul /D { Dy } def } def
+ /Dy { \pst@number\psyunit mul Do /D { Dx } def } def
+ /D { /D { Dx } def } def
+ /Do {
+ \@nameuse{beginqp@\psplotstyle}%
+ /Do { \@nameuse{doqp@\psplotstyle}} def
+ } def}%
+ #1%
+ \addto@pscode{D}%
+ \@nameuse{endqp@\psplotstyle}}
+
+\def\fileplot{\def\pst@par{}\pst@object{fileplot}}
+\def\fileplot@i#1{%
+ \pst@killglue
+ \begingroup
+ \use@par
+ \@pstfalse
+ \@nameuse{testqp@\psplotstyle}%
+ \if@pst
+ \dataplot@ii{\pst@readfile{#1}}%
+ \else
+ \listplot@ii{\pst@altreadfile{#1}}%
+ \fi
+ \endgroup
+ \ignorespaces}
+
+\pst@def{ScalePoints}<%
+ /y ED /x ED
+ counttomark dup dup cvi eq not { exch pop } if
+ /m exch def /n m 2 div cvi def
+ n { y mul m 1 roll x mul m 1 roll /m m 2 sub def } repeat>
+
+\def\listplot{\def\pst@par{}\pst@object{listplot}}
+\def\listplot@i#1{\listplot@ii{\addto@pscode{#1}}}
+\def\listplot@ii#1{%
+ \@nameuse{beginplot@\psplotstyle}%
+ \addto@pscode{/D {} def mark}%
+ #1%
+ \addto@pscode{\pst@number\psxunit \pst@number\psyunit \tx@ScalePoints}%
+ \@nameuse{endplot@\psplotstyle}}
+
+% \psplot
+
+\def\psplotinit#1{\xdef\psplot@init{#1 }}
+\def\psplot@init{}
+
+\def\psplot{\def\pst@par{}\pst@object{psplot}}
+\def\psplot@i#1#2#3{%
+ \pst@killglue
+ \begingroup
+ \use@par
+ \@nameuse{beginplot@\psplotstyle}%
+ \addto@pscode{%
+ \psplot@init
+ /x #1 def
+ /x1 #2 def
+ /dx x1 x sub \psk@plotpoints div def
+ /xy {
+ x \pst@number\psxunit mul
+ #3 \pst@number\psyunit mul
+ } def}%
+ \gdef\psplot@init{}%
+ \@pstfalse
+ \@nameuse{testqp@\psplotstyle}%
+ \if@pst
+ \psplot@ii
+ \else
+ \psplot@iii
+ \fi
+ \endgroup
+ \ignorespaces}
+\def\psplot@ii{%
+ \addto@pscode{%
+ xy \@nameuse{beginqp@\psplotstyle}
+ \psk@plotpoints 1 sub {
+ /x x dx add def
+ xy \@nameuse{doqp@\psplotstyle}
+ } repeat
+ /x x1 def
+ xy \@nameuse{doqp@\psplotstyle}}%
+ \@nameuse{endqp@\psplotstyle}}
+\def\psplot@iii{%
+ \addto@pscode{%
+ mark
+ /n 2 def
+ \psk@plotpoints {
+ xy
+ n 2 roll
+ /n n 2 add def
+ /x x dx add def
+ } repeat
+ /x x1 def
+ xy
+ n 2 roll}%
+ \@nameuse{endplot@\psplotstyle}}
+
+\def\parametricplot{\def\pst@par{}\pst@object{parametricplot}}
+\def\parametricplot@i#1#2#3{%
+ \pst@killglue
+ \begingroup
+ \use@par
+ \@nameuse{beginplot@\psplotstyle}%
+ \addto@pscode{%
+ \psplot@init
+ /t #1 def
+ /t1 #2 def
+ /dt t1 t sub \psk@plotpoints div def
+ /xy {
+ #3
+ \pst@number\psyunit mul exch
+ \pst@number\psxunit mul exch
+ } def}%
+ \gdef\psplot@init{}%
+ \@pstfalse
+ \@nameuse{testqp@\psplotstyle}%
+ \if@pst
+ \parametricplot@ii
+ \else
+ \parametricplot@iii
+ \fi
+ \endgroup
+ \ignorespaces}
+\def\parametricplot@ii{%
+ \addto@pscode{%
+ xy \@nameuse{beginqp@\psplotstyle}
+ \psk@plotpoints 1 sub {
+ /t t dt add def
+ xy \@nameuse{doqp@\psplotstyle}
+ } repeat
+ /t t1 def
+ xy \@nameuse{doqp@\psplotstyle}}%
+ \@nameuse{endqp@\psplotstyle}}
+\def\parametricplot@iii{%
+ \addto@pscode{%
+ mark
+ /n 2 def
+ \psk@plotpoints {
+ xy
+ n 2 roll
+ /n n 2 add def
+ /t t dt add def
+ } repeat
+ /t t1 def
+ xy
+ n 2 roll}%
+ \@nameuse{endplot@\psplotstyle}}
+
+% These axes macros are complicated. Be careful.
+
+% \pst@ticks{angle}{dx}{n}{int}
+% int=1 if ticks appear on top of axes, 0 otherwise.
+\def\pst@ticks#1#2#3#4{%
+ \begin@SpecialObj
+ \addto@pscode{%
+ #1 rotate
+ /n #3 def
+ /dx #2 def
+ n 0 lt { /dx dx neg def /n n neg def } if
+ /y2 \psk@ticksize CLW 2 div add def
+ /y1 y2 neg def
+ \ifnum\psk@tickstyle=1
+ \ifdim#4<\z@ /y2 \else /y1 \fi 0 def
+ \else
+ \ifnum\psk@tickstyle=-1
+ \ifdim#4<\z@ /y1 \else /y2 \fi 0 def
+ \fi
+ \fi
+ /x dx def
+ n { x y1 moveto x y2 lineto stroke /x x dx add def } repeat}%
+ \end@SpecialObj}
+
+
+\def\psset@ticksize#1{\pst@getlength{#1}\psk@ticksize}
+\psset@ticksize{3pt}
+
+\def\psset@tickstyle#1{\pst@expandafter\psset@@tickstyle{#1}\@nil}
+\def\psset@@tickstyle#1#2\@nil{%
+ \ifx#1f\let\psk@tickstyle\z@\else
+ \ifx#1t\let\psk@tickstyle\@ne\else
+ \ifx#1b\let\psk@tickstyle\m@ne\else
+ \@pstrickserr{Bad tick style: `#1#2'}\@ehpa
+ \fi\fi\fi}
+\psset@tickstyle{full}
+
+\def\psset@ticks#1{\pst@expandafter\psset@@ticks{#1}\@nil\psk@ticks}
+\def\psset@@ticks#1#2\@nil#3{%
+ \ifx#1a\let#3\z@\else
+ \ifx#1x\let#3\@ne\else
+ \ifx#1y\let#3\tw@\else
+ \ifx#1n\let#3\thr@@\else
+ \@pstrickserr{Bad argument: `#1#2'}\@ehpa
+ \fi\fi\fi\fi}
+\psset@ticks{all}
+
+\def\psset@labels#1{\pst@expandafter\psset@@ticks{#1}\@nil\psk@labels}
+\psset@labels{all}
+
+\def\psset@Ox#1{\edef\psk@Ox{#1}}
+\psset@Ox{0}
+\def\psset@Dx#1{\edef\psk@Dx{#1}}
+\psset@Dx{1}
+\def\psset@dx#1{%
+ \pssetxlength\pst@dimg{#1}%
+ \edef\psk@dx{\number\pst@dimg}}
+\psset@dx{0}
+
+\def\psset@Oy#1{\edef\psk@Oy{#1}}
+\psset@Oy{0}
+\def\psset@Dy#1{\edef\psk@Dy{#1}}
+\psset@Dy{1}
+\def\psset@dy#1{%
+ \pssetylength\pst@dimg{#1}%
+ \edef\psk@dy{\number\pst@dimg}}
+\psset@dy{0}
+
+\newif\ifshoworigin
+\def\psset@showorigin#1{\@nameuse{showorigin#1}}
+\psset@showorigin{true}
+
+
+\def\psaxes{\def\pst@par{}\pst@object{psaxes}}
+\def\psaxes@i{\pst@getarrows\psaxes@ii}
+\def\psaxes@ii(#1){\@ifnextchar({\psaxes@iii(#1)}{\psaxes@iv(0,0)(0,0)(#1)}}
+\def\psaxes@iii(#1)(#2){%
+ \@ifnextchar(%
+ {\psaxes@iv(#1)(#2)}%
+ {\psaxes@iv(#1)(#1)(#2)}}
+\def\psaxes@iv(#1,#2)(#3,#4)(#5,#6){%
+ \setbox\pst@hbox=\hbox\bgroup
+ \use@par
+ \pssetxlength\pst@dimg{#1}% o-x
+ \pssetylength\pst@dimh{#2}% o-y
+ \pssetxlength\pst@dima{#3}% bl-x
+ \pssetylength\pst@dimb{#4}% bl-y
+ \pssetxlength\pst@dimc{#5}% ur-x
+ \pssetylength\pst@dimd{#6}% ur-y
+% Whole thing will be translated to origin:
+ \advance\pst@dima-\pst@dimg % Dist. from bl-x to o-x
+ \advance\pst@dimb-\pst@dimh % Dist. from bl-y to o-y
+ \advance\pst@dimc-\pst@dimg % Dist. from ur-x to o-x
+ \advance\pst@dimd-\pst@dimh % Dist. from ur-y to o-y
+% Make lines/arrows or frame:
+ \@nameuse{psxs@\psk@axesstyle}%
+% "\pslabelsep" should be from the edge of the axis.
+ \advance\pslabelsep.5\pslinewidth
+% Now the ticks and labels. Start by checking for "\multido".
+% !!Need to fix this so that does nothing when there are 0 ticks.!!
+ \begingroup
+ \ifdim\pst@dimb=\z@\else\showoriginfalse\fi
+ \ifnum\psk@dx=\z@
+ \pst@dimg=\psk@Dx\psxunit
+ \edef\psk@dx{\number\pst@dimg}%
+ \fi
+ \ifnum\psk@ticks<\tw@
+ \ifnum\psk@tickstyle>\z@\else
+ \advance\pslabelsep\psk@ticksize\p@
+ \fi
+ \fi
+ \pst@hlabels\pst@dimc\psk@arrowB
+ \pst@hlabels\pst@dima\psk@arrowA
+ \endgroup
+ \begingroup
+ \ifdim\pst@dima=\z@\else\showoriginfalse\fi
+ \ifnum\psk@dy=\z@
+ \pst@dimg=\psk@Dy\psyunit
+ \edef\psk@dy{\number\pst@dimg}%
+ \fi
+ \ifodd\psk@ticks\else
+ \ifnum\psk@tickstyle>\z@\else
+ \advance\pslabelsep\psk@ticksize\p@
+ \fi
+ \fi
+ \pst@vlabels\pst@dimd\psk@arrowB
+ \pst@vlabels\pst@dimb\psk@arrowA
+ \endgroup
+% Now close "\pst@hbox" (which is 0-dimensional), and put it at the origin.
+ \egroup
+ \pssetxlength\pst@dimg{#1}%
+ \pssetylength\pst@dimh{#2}%
+ \leavevmode\psput@cartesian\pst@hbox
+ \ignorespaces}
+
+\def\psxs@axes{%
+ \psxs@@axes\pst@dima\pst@dimc{}%
+ \psxs@@axes\pst@dimb\pst@dimd{exch}}
+\def\psxs@@axes#1#2#3{%
+ \begin@SpecialObj
+ \ifdim#1=\z@
+ \def\psk@arrowA{C}%
+ \else
+ \ifdim#2=\z@
+ \def\psk@arrowB{C}%
+ \fi
+ \fi
+ \let\pst@linetype\pst@arrowtype
+ \pst@addarrowdef
+ \addto@pscode{%
+ \pst@number#2 0 #3
+ \pst@number#1 0 #3
+ ArrowA
+ CP 4 2 roll
+ ArrowB
+ L
+ pop pop}%
+ \pst@stroke
+ \end@SpecialObj}
+
+\def\psxs@frame{%
+ \begin@SpecialObj
+ \addto@pscode{%
+ 0 0 moveto \pst@number\pst@dimc 0 L
+ 0 \pst@number\pst@dimd 2 copy rlineto L closepath}%
+ \pst@stroke
+ \pst@fill
+ \end@SpecialObj
+ \let\psk@arrowA\@empty
+ \let\psk@arrowB\@empty}
+
+\def\psset@axesstyle#1{%
+ \@ifundefined{psxs@#1}%
+ {\@pstrickserr{Axes style `#1' not defined}\@eha}%
+ {\edef\psk@axesstyle{#1}}}
+\psset@axesstyle{axes}
+\def\psxs@none{\let\psk@arrowA\@empty\let\psk@arrowB\@empty}
+
+% The origin is never the only label.
+\def\pst@hlabels#1#2{%
+ \ifdim#1=\z@\else
+ \ifx#2\empty\else
+ \advance#1\ifdim#1>\z@-\fi7\pslinewidth
+ \fi
+ \pst@cnta=#1\relax % Distance (in sp) to end.
+ \divide\pst@cnta\psk@dx\relax % Number of ticks/labels
+ \ifnum\pst@cnta=\z@\else
+ \pst@dimb=\psk@dx sp % Space between ticks.
+ \ifnum\psk@ticks<\tw@
+ \pst@ticks{0}{\pst@number\pst@dimb}{\the\pst@cnta}{\pst@dimd}%
+ \fi
+ \ifnum\psk@labels<\tw@ \pst@@hlabels\fi
+ \showoriginfalse
+ \fi
+ \fi}
+
+% Knows \pst@dimb and \pst@cnta
+\def\pst@@hlabels{%
+ \vbox to\z@{%
+ \ifdim\pst@dimd>\z@\vskip\pslabelsep\else\vss\fi
+ \ifnum\pst@cnta<\z@
+ \pst@dimb=-\pst@dimb
+ \fi
+ \hbox to\z@{%
+ \ifshoworigin\hbox to \z@{\hss\pshlabel{\psk@Ox}\hss}\fi
+ \mmultido
+ {\n=\psk@Ox+\psk@Dx}%
+ {\pst@cnta}%
+ {\hskip\pst@dimb\hbox to \z@{\hss\pshlabel{\n}\hss}}%
+ \hss}%
+ \ifdim\pst@dimd>\z@\vss\else\vskip\pslabelsep\fi}}%
+
+\def\pshlabel#1{$#1$}
+
+\def\pst@vlabels#1#2{%
+ \ifdim#1=\z@\else
+ \ifx#2\empty\else
+ \advance#1\ifdim#1>\z@-\fi7\pslinewidth
+ \fi
+ \pst@cnta=#1\relax % Distance (in sp) to end.
+ \divide\pst@cnta\psk@dy\relax % Number of ticks/labels
+ \ifnum\pst@cnta=\z@\else
+ \pst@dima=\psk@dy sp % Space between ticks.
+ \ifodd\psk@ticks\else
+ \pst@ticks{90}{\pst@number\pst@dima}{\the\pst@cnta}{-\pst@dimc}%
+ \fi
+ \ifodd\psk@labels\else\pst@@vlabels\fi
+ \showoriginfalse
+ \fi
+ \fi}
+
+% Knows \pst@dima and \pst@cnta
+\def\pst@@vlabels{%
+ \vbox to\z@{%
+ \ifnum\pst@cnta>\z@
+ \pst@dima=-\pst@dima
+ \fi
+ \offinterlineskip
+ \ifshoworigin
+ \vbox to \z@{\vss\hbox to\z@{%
+ \ifdim\pst@dimc>\z@\hss\else\hskip\pslabelsep\fi
+ \psvlabel{\psk@Oy}%
+ \ifdim\pst@dimc>\z@\hskip\pslabelsep\else\hss\fi}\vss}%
+ \fi
+ \mmultido
+ {\n=\psk@Oy+\psk@Dy}%
+ {\pst@cnta}%
+ {\vbox to\pst@dima{\vss}\vbox to \z@{\vss\hbox to\z@{%
+ \ifdim\pst@dimc>\z@\hss\else\hskip\pslabelsep\fi
+ \psvlabel{\n}%
+ \ifdim\pst@dimc>\z@\hskip\pslabelsep\else\hss\fi}\vss}}%
+ \vss}}
+
+\def\psvlabel#1{$#1$}
+
+\catcode`\@=\TheAtCode\relax
+\endinput
+%% pst-plot.tex
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-plot.tlpobj new/tlpkg/tlpobj/pst-plot.tlpobj
--- old/tlpkg/tlpobj/pst-plot.tlpobj 2013-04-30 03:49:52.000000000 +0200
+++ new/tlpkg/tlpobj/pst-plot.tlpobj 2014-05-17 03:26:04.000000000 +0200
@@ -1,15 +1,16 @@
name pst-plot
category Package
-revision 30162
+revision 34063
shortdesc Plot data using PSTricks.
relocated 1
longdesc The package provides plotting of data (typically from external
-longdesc files), using PSTricks. Plots my be configured using a wide
+longdesc files), using PSTricks. Plots may be configured using a wide
longdesc variety of parameters.
-runfiles size=23
+runfiles size=29
RELOC/tex/generic/pst-plot/pst-plot.tex
+ RELOC/tex/generic/pst-plot/pst-plot97.tex
RELOC/tex/latex/pst-plot/pst-plot.sty
catalogue-ctan /graphics/pstricks/contrib/pst-plot
-catalogue-date 2013-01-04 14:21:22 +0100
+catalogue-date 2014-05-16 13:47:09 +0200
catalogue-license lppl
-catalogue-version 1.44
+catalogue-version 1.62
++++++ pst-solides3d.doc.tar.xz ++++++
/work/SRC/openSUSE:Factory/texlive-specs-s/pst-solides3d.doc.tar.xz /work/SRC/openSUSE:Factory/.texlive-specs-s.new/pst-solides3d.doc.tar.xz differ: char 25, line 1
++++++ pst-solides3d.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pst-solides3d/pst-solides3d.pro new/dvips/pst-solides3d/pst-solides3d.pro
--- old/dvips/pst-solides3d/pst-solides3d.pro 2012-12-20 01:31:48.000000000 +0100
+++ new/dvips/pst-solides3d/pst-solides3d.pro 2014-03-24 21:40:33.000000000 +0100
@@ -11039,10 +11039,10 @@
/pst-point {
gsave
- linecolor
+ linecolor
1 gere_pstfont
action (none) eqstring not {
- args definition cvx exec point3d
+ args definition cvx exec point3d
} if
texte args definition cvx exec pos (text3d) append cvx exec
tx@Dict /solidname known {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-solides3d/pst-solides3d.tex new/tex/generic/pst-solides3d/pst-solides3d.tex
--- old/tex/generic/pst-solides3d/pst-solides3d.tex 2012-12-20 01:31:48.000000000 +0100
+++ new/tex/generic/pst-solides3d/pst-solides3d.tex 2014-03-24 21:40:33.000000000 +0100
@@ -1,5 +1,5 @@
%%
-%% COPYRIGHT 2008-2010 by Manuel Luque, Arnaud Schmittbuhl,
+%% COPYRIGHT 2008-2014 by Manuel Luque, Arnaud Schmittbuhl,
%% Jean-Paul Vignault, Herbert Voss.
%%
%% This work may be distributed and/or modified under the
@@ -33,8 +33,8 @@
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi
\ifx\MultidoLoaded\endinput\else \input multido.tex \fi
% JPV & ML & AS & HV
-\def\fileversion{4.24}
-\def\filedate{2011/07/13}
+\def\fileversion{4.25}
+\def\filedate{2014/03/22}
\message{`PSTSOLIDESIIID' v\fileversion, \filedate}
%
\pstheader{pst-solides3d.pro}
@@ -816,10 +816,10 @@
%% creation des variables pour PSTricks
\define@boolkey[psset]{pst-solides3d}[Pst@]{visibility}[false]{}
\psset{visibility=true}
-\define@key[psset]{pst-solides3d}{normal}{\def\pst@solides@normal{#1}}
+\define@key[psset]{pst-solides3d}{normal}{\def\pst@solides@normal{#1 }}
\psset[pst-solides3d]{normal=0 0 1}
% origine du plan
-\define@key[psset]{pst-solides3d}{origine}{\def\pst@solides@origin{#1}} % origine du plan
+\define@key[psset]{pst-solides3d}{origine}{\def\pst@solides@origin{#1 }} % origine du plan
\psset[pst-solides3d]{origine=0 0 0 }%
%% le range pour les fonctions numeriques
\define@key[psset]{pst-solides3d}{range}{\def\pst@solides@range{#1}}
@@ -969,6 +969,144 @@
\SpecialCoor%
}
%
+%% === Chemin pour les dessins ---------------------------------------------
+%\define@key[psset]{pst-solides3d}{fichier}{\edef\psk@solides@fichier{#1}} % chemin des dessins
+%\psset{fichier=}
+%% === Echelle pour l'image -----------------------------------------------
+\define@key[psset]{pst-solides3d}{unitPicture}{\edef\psk@solides@unitPicture{#1 }}
+\psset{unitPicture=28.45}
+%% === nombre de divisions des segments -----------------------------------------------
+\define@key[psset]{pst-solides3d}{divisions}{\edef\psk@solides@divisions{#1 }}
+\psset{divisions=5}
+%
+\def\psImage{\pst@object{psImage}}
+\def\psImage@i{\@ifnextchar({\psImage@ii}{\psImage@ii(0,0)}}
+\def\psImage@ii(#1,#2){{%
+ \ifPst@solidmemory\use@par\else\begin@ClosedObj\fi%
+\addto@pscode{
+%% === adapt� de Jean-Michel Sarlat dans pst-anamorphosis ----------------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% === Capture de commandes de systemdict --------------------------------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/LINETO { systemdict /lineto get exec } def
+/MOVETO { systemdict /moveto get exec } def
+/CURVETO { systemdict /curveto get exec } def
+/CLOSEPATH { systemdict /closepath get exec } def
+/RLINETO { systemdict /rlineto get exec } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% === Transformation des commandes de construction des path(s) ----------------
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/tx@projectionDict 20 dict def
+tx@projectionDict begin
+/moveto {
+ /s@y ED /s@x ED /c@x s@x def /c@y s@y def
+ s@x unit_image div
+ s@y unit_image div
+ 2 copy
+ sinPhi mul neg exch cosPhi mul add % x'
+ 3 1 roll
+ cosPhi mul exch sinPhi mul add % y'
+ /Ypoint exch def
+ /Xpoint exch def
+ projectionimage
+ MOVETO
+} bind def
+/lineto {
+ /c@yt ED /c@xt ED /dx c@xt c@x sub ND div def /dy c@yt c@y sub ND div def
+ 1 1 ND {dup dx mul c@x add exch dy mul c@y add
+%/Ypoint exch unit_image div def
+%/Xpoint exch unit_image div def
+ unit_image div exch
+ unit_image div exch
+ 2 copy
+ sinPhi mul neg exch cosPhi mul add % x'
+ 3 1 roll
+ cosPhi mul exch sinPhi mul add % y'
+ /Ypoint exch def
+ /Xpoint exch def
+ projectionimage
+ LINETO} for
+ /c@x c@xt def /c@y c@yt def
+} bind def
+/closepath {
+ s@x s@y lineto CLOSEPATH
+} bind def
+/curveto {
+ /c@yt ED /c@xt ED
+ /c@yb ED /c@xb ED
+ /c@ya ED /c@xa ED
+ 1 1 NDC {
+ NDC div /s ED 1 s sub /t ED
+ t c@x mul 3 s c@xa mul mul add t mul 3 s s c@xb mul mul mul add t mul s 3 exp c@xt mul add
+ t c@y mul 3 s c@ya mul mul add t mul 3 s s c@yb mul mul mul add t mul s 3 exp c@yt mul add
+ unit_image div exch
+ unit_image div exch
+ 2 copy
+ sinPhi mul neg exch cosPhi mul add % x'
+ 3 1 roll
+ cosPhi mul exch sinPhi mul add % y'
+ /Ypoint exch def
+ /Xpoint exch def
+ projectionimage
+ LINETO
+ } for
+ /c@x c@xt def /c@y c@yt def
+} bind def
+end
+/Atan { /atan load stopped { pop pop 0 } if } def
+save
+\tx@optionssolides
+ SolidesDict begin
+/cm {\pst@number\psunit mul } bind def
+/cm_1 {\pst@number\psunit div } bind def
+/unit_image \psk@solides@unitPicture def
+/fichier (\pst@solides@file) def
+/Normale {\pst@solides@normal\space unitaire3d } bind def
+/ND \psk@solides@divisions def
+/NDC {\psk@solides@divisions 3 mul} bind def
+/origin {\pst@solides@origin\space } def
+/cosPhi {phi cos} bind def
+/sinPhi {phi sin} bind def
+Normale
+/nz exch def
+/ny exch def
+/nx exch def
+/Phi {90 nz arccos sub} bind def
+/Theta {ny nx Atan} bind def
+/sinT {Theta sin} bind def
+/cosT {Theta cos} bind def
+/sinP {Phi sin} bind def
+/cosP {Phi cos} bind def
+origin
+ /zO' exch def
+ /yO' exch def
+ /xO' exch def
+/projectionimage {
+% projection sur le plan
+Xpoint sinT mul neg Ypoint sinP cosT mul mul sub xO' add % x'
+Xpoint cosT mul Ypoint sinP mul sinT mul sub yO' add % y'
+Ypoint cosP mul zO' add % z'
+3dto2d %
+ } def
+ projectionsifacevisible not origin Normale planvisible? or {
+ /showpage {} def
+gsave
+tx@projectionDict begin
+#1 sinT mul neg #2 sinP cosT mul mul sub
+#1 cosT mul #2 sinP mul sinT mul sub
+#2 cosP mul
+3dto2d
+translate
+fichier run
+end
+grestore
+ } if
+end
+restore
+}%
+ \ifPst@solidmemory\else\end@ClosedObj\fi}\ignorespaces%
+}
+%
\def\psResetSolidKeys{%
\psset[pst-solides3d]{%
action=draw**,%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-solides3d.tlpobj new/tlpkg/tlpobj/pst-solides3d.tlpobj
--- old/tlpkg/tlpobj/pst-solides3d.tlpobj 2012-12-20 04:33:08.000000000 +0100
+++ new/tlpkg/tlpobj/pst-solides3d.tlpobj 2014-04-05 03:25:09.000000000 +0200
@@ -1,22 +1,22 @@
name pst-solides3d
category Package
-revision 28581
+revision 33375
shortdesc Draw perspective views of 3D solids.
relocated 1
longdesc The package is designed to draw solids in 3d perspective.
-longdesc Features include: - create primitive solids; - create solids by
-longdesc including a list of its vertices and faces; - faces of solids
-longdesc and surfaces can be colored by choosing from a very large
-longdesc palette of colors; - draw parametric surfaces in algebraic and
-longdesc reverse polish notation; - create explicit and parameterized
-longdesc algebraic functions drawn in 2 or 3 dimensions; - project text
-longdesc onto a plane and onto the faces of a solid; - support for
-longdesc including external database files
-runfiles size=75
+longdesc Features include: create primitive solids; create solids by
+longdesc including a list of its vertices and faces; faces of solids and
+longdesc surfaces can be colored by choosing from a very large palette
+longdesc of colors; draw parametric surfaces in algebraic and reverse
+longdesc polish notation; create explicit and parameterized algebraic
+longdesc functions drawn in 2 or 3 dimensions; project text onto a plane
+longdesc and onto the faces of a solid; support for including external
+longdesc database files.
+runfiles size=76
RELOC/dvips/pst-solides3d/pst-solides3d.pro
RELOC/tex/generic/pst-solides3d/pst-solides3d.tex
RELOC/tex/latex/pst-solides3d/pst-solides3d.sty
catalogue-ctan /graphics/pstricks/contrib/pst-solides3d
-catalogue-date 2012-11-16 20:45:05 +0100
+catalogue-date 2014-03-28 18:05:25 +0100
catalogue-license lppl1.3
-catalogue-version 4.24
+catalogue-version 4.245
++++++ pst-tools.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-tools/Changes new/doc/generic/pst-tools/Changes
--- old/doc/generic/pst-tools/Changes 2012-10-17 02:54:25.000000000 +0200
+++ new/doc/generic/pst-tools/Changes 2014-05-16 23:12:50.000000000 +0200
@@ -1,4 +1,9 @@
..... pst-tools.tex
+0.05 2014-05-12 - new optional arguments for printing values
+ on PS level
+0.04 2013-07-08 - ???
+0.03 2012-12-04 - added option for \psPrintValue to save
+ the value
0.02 2012-10-16 - added option postString and stripSpaces
to macro \psPrintValue
0.01 2012-01-01 - first CTAN version
@@ -9,6 +14,8 @@
---- pst-tools.pro
+0.04 2013-10-26 - added function /ps@reverseOrderOfPoints
+ - modified /rightTrim
0.03 2012-10-16 - added function /rightTrim
- moved file from pstricks base to pst-tools
0.02 2012-01-01 moved some stuff from pst-func.pro
Files old/doc/generic/pst-tools/pst-tools-doc.pdf and new/doc/generic/pst-tools/pst-tools-doc.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/generic/pst-tools/pst-tools-doc.tex new/doc/generic/pst-tools/pst-tools-doc.tex
--- old/doc/generic/pst-tools/pst-tools-doc.tex 2012-10-17 02:54:25.000000000 +0200
+++ new/doc/generic/pst-tools/pst-tools-doc.tex 2014-05-16 23:12:50.000000000 +0200
@@ -50,6 +50,8 @@
prints all possible digits.\\
\Lkeyword{xShift} & <number> & 0 & the x shift in pt for the output, relative to the current point.\\
\Lkeyword{algebraic} & <boolean> & false & function in algebraic notation.\\
+\Lkeyword{VarName} & <string> & \{\} & saves the value in /<VarName> for further use\\
+\Lkeyword{comma} & <boolean> & false & comma instead of the dor for decimals\\
\end{tabularx}
\begin{center}
@@ -60,8 +62,8 @@
\makebox[1em]{\iA}
\makebox[5em]{\psPrintValue[PSfont=Helvetica,xShift=-10]{\iA\space sin}}
\makebox[4em][r]{\psPrintValue[PSfont=Courier,fontscale=10,decimals=3,xShift=-20]{\iA\space cos}}\hspace{1em}
- \makebox[5em]{\psPrintValue[dot,valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\iA\space sqrt}}
- \makebox[7em]{\psPrintValue[PSfont=Times-Italic]{\iA\space dup sin exch cos add}}
+ \makebox[5em]{\psPrintValue[valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\iA\space sqrt}}
+ \makebox[7em]{\psPrintValue[comma,PSfont=Times-Italic]{\iA\space dup sin exch cos add}}
\makebox[6em]{\psPrintValue[PSfont=Palatino-Roman]{\iA\space dup sin dup mul exch cos dup mul add}}\\}
\end{center}
@@ -75,8 +77,8 @@
\makebox[1em]{\iA}
\makebox[5em]{\psPrintValue[PSfont=Helvetica,xShift=-10]{\iA\space sin}}
\makebox[4em][r]{\psPrintValue[PSfont=Courier,fontscale=10,decimals=3,xShift=-20]{\iA\space cos}}\hspace{1em}
- \makebox[5em]{\psPrintValue[dot,valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\iA\space sqrt}}
- \makebox[7em]{\psPrintValue[PSfont=Times-Italic]{\iA\space dup sin exch cos add}}
+ \makebox[5em]{\psPrintValue[valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\iA\space sqrt}}
+ \makebox[7em]{\psPrintValue[comma,PSfont=Times-Italic]{\iA\space dup sin exch cos add}}
\makebox[6em]{\psPrintValue[PSfont=Palatino-Roman]{\iA\space dup sin dup mul exch cos dup mul add}}\\}
\end{lstlisting}
@@ -92,8 +94,8 @@
\multido{\rA=0+0.1}{18}{\makebox[1em]{\rA}
\makebox[5em]{\psPrintValue[PSfont=Helvetica,xShift=-10]{\rA, sin(x)}}
\makebox[4em][r]{\psPrintValue[PSfont=Courier,fontscale=10,decimals=3,xShift=-20]{\rA,cos(x)}}\hspace{1em}
- \makebox[5em]{\psPrintValue[dot,valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\rA,sqrt(x)}}
- \makebox[7em]{\psPrintValue[PSfont=Times-Italic]{\rA,sin(x)+cos(x)}}
+ \makebox[5em]{\psPrintValue[valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\rA,sqrt(x)}}
+ \makebox[7em]{\psPrintValue[comma,PSfont=Times-Italic]{\rA,sin(x)+cos(x)}}
\makebox[6em]{\psPrintValue[PSfont=Palatino-Roman]{\rA,sin(x)^2+cos(x)^2}}\\}
\end{center}
@@ -106,28 +108,28 @@
\multido{\rA=0+0.1}{18}{\makebox[1em]{\rA}
\makebox[5em]{\psPrintValue[PSfont=Helvetica,xShift=-10]{\rA, sin(x)}}
\makebox[4em][r]{\psPrintValue[PSfont=Courier,fontscale=10,decimals=3,xShift=-20]{\rA,cos(x)}}\hspace{1em}
- \makebox[5em]{\psPrintValue[dot,valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\rA,sqrt(x)}}
- \makebox[7em]{\psPrintValue[PSfont=Times-Italic]{\rA,sin(x)+cos(x)}}
+ \makebox[5em]{\psPrintValue[valuewidth=15,linecolor=blue,PSfont=AvantGarde]{\rA,sqrt(x)}}
+ \makebox[7em]{\psPrintValue[comma,PSfont=Times-Italic]{\rA,sin(x)+cos(x)}}
\makebox[6em]{\psPrintValue[PSfont=Palatino-Roman]{\rA,sin(x)^2+cos(x)^2}}\\}
\end{lstlisting}
\begin{center}
-foo \makebox[2em][l]{\psPrintValue[dot]{3.14 10 mul round 10 div}}bar\\3pt
-foo \makebox[2em][l]{\psPrintValue[dot,PSfont=Symbol,
+foo \makebox[2em][l]{\psPrintValue[comma]{3.14 10 mul round 10 div}}bar\\3pt
+foo \makebox[2em][l]{\psPrintValue[comma,PSfont=Symbol,
postString=\string\260]{3.14 10 mul round 10 div}}bar\\3pt
-foo \makebox[3.5em][l]{\psPrintValue[dot,PSfont=Symbol,decimals=6,
+foo \makebox[3.5em][l]{\psPrintValue[PSfont=Symbol,decimals=6,
postString=\string\260]{3.14 dup mul}}bar
\end{center}
\bigskip
\begin{lstlisting}
-foo \makebox[2em][l]{\psPrintValue[dot]{3.14 10 mul round 10 div}}bar\\3pt
-foo \makebox[2em][l]{\psPrintValue[dot,PSfont=Symbol,
+foo \makebox[2em][l]{\psPrintValue[comma]{3.14 10 mul round 10 div}}bar\\3pt
+foo \makebox[2em][l]{\psPrintValue[comma,PSfont=Symbol,
postString=\string\260]{3.14 10 mul round 10 div}}bar\\3pt
-foo \makebox[3.5em][l]{\psPrintValue[dot,PSfont=Symbol,decimals=6,
+foo \makebox[3.5em][l]{\psPrintValue[PSfont=Symbol,decimals=6,
postString=\string\260]{3.14 dup mul}}bar
\end{lstlisting}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-tools.doc.tlpobj new/tlpkg/tlpobj/pst-tools.doc.tlpobj
--- old/tlpkg/tlpobj/pst-tools.doc.tlpobj 2012-10-17 04:37:14.000000000 +0200
+++ new/tlpkg/tlpobj/pst-tools.doc.tlpobj 2014-05-17 03:26:04.000000000 +0200
@@ -1,6 +1,6 @@
name pst-tools.doc
category Package
-revision 27986
+revision 34067
shortdesc doc files of pst-tools
relocated 1
docfiles size=23
++++++ pst-tools.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pst-tools/pst-tools.pro new/dvips/pst-tools/pst-tools.pro
--- old/dvips/pst-tools/pst-tools.pro 2012-10-17 02:54:25.000000000 +0200
+++ new/dvips/pst-tools/pst-tools.pro 2013-10-26 23:42:03.000000000 +0200
@@ -1,7 +1,7 @@
-% $Id: pst-tools.pro 713 2012-10-16 14:25:00Z herbert $
+% $Id: pst-tools.pro 842 2013-10-26 10:25:41Z herbert $
%
%% PostScript tools prologue for pstricks.tex.
-%% Version 0.03, 2012/10/16
+%% Version 0.04, 2013/10/26
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN archives
@@ -23,6 +23,15 @@
end
} def
%
+/ps@ReverseOrderOfPoints { % on stack [P1 P2 P3 ...Pn]=>[Pn,Pn-1,...,P2,P1]
+ 5 dict begin % all local
+ aload length /n ED % number of coors
+ n 2 div cvi /m ED % number of Points
+ /n1 n def
+ m { n1 2 roll /n1 n1 2 sub def } repeat
+ n array astore
+ end
+} def
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% subroutines for complex numbers, given as an array [a b]
% which is a+bi = Real+i Imag
@@ -212,20 +221,49 @@
end
} def
%
-/rightTrim {
+/rightTrim { % on stack the string and the character number to be stripped
+ /charNo exch def
dup
length 1 sub -1 0 {
- /i exch def dup i get 32 ne { exit } if
+ /i exch def dup i get charNo ne { exit } if
} for
0 i 1 add getinterval
dup length string copy
-} bind def
+} bind def % leaves the stripped string on the stack
/psStringwidth /stringwidth load def
/psShow /show load def
-%/stringwidth{ rightTrim psStringwidth } bind def
+%/stringwidth{ 32 rightTrim psStringwidth } bind def
-%/show { rightTrim psShow } bind def
+%/show { 32 rightTrim psShow } bind def
+%-----------------------------------------------------------------------------%
+
+/pgffunctions {
+ /pgfsc{}bind def% stroke color is empty by default
+ /pgffc{}bind def% fill color is empty by default
+ /pgfstr{stroke}bind def%
+ /pgffill{fill}bind def%
+ /pgfeofill{eofill}bind def%
+ /pgfe{a dup 0 rlineto exch 0 exch rlineto neg 0 rlineto closepath}bind def% rectangle
+ /pgfw{setlinewidth}bind def% setlinewidth
+ /pgfs{save pgfpd 72 Resolution div 72 VResolution div neg scale
+ magscale{1 DVImag div dup scale}if
+ pgfx neg pgfy neg translate pgffoa .setopacityalpha}bind def% save
+ /pgfr{pgfsd restore}bind def %restore
+ userdict begin%
+ /pgfo{pgfsd /pgfx currentpoint /pgfy exch def def @beginspecial}bind def %open
+ /pgfc{newpath @endspecial pgfpd}bind def %close
+ /pgfsd{globaldict /pgfdelta /delta where {pop delta} {0} ifelse put}bind def% save delta
+ /pgfpd{/delta globaldict /pgfdelta get def}bind def % put delta
+ /.setopacityalpha where {pop} {/.setopacityalpha{pop}def} ifelse % install .setopacityalpha
+ /.pgfsetfillopacityalpha{/pgffoa exch def
+ /pgffill{gsave pgffoa .setopacityalpha fill 1 .setopacityalpha newpath fill grestore newpath}bind def
+ /pgfeofill{gsave pgffoa .setopacityalpha eofill 1 .setopacityalpha newpath eofill grestore newpath}bind def}bind def
+ /.pgfsetstrokeopacityalpha{/pgfsoa exch def /pgfstr{gsave pgfsoa .setopacityalpha stroke grestore newpath}bind def}bind def
+ /pgffoa 1 def
+ /pgfsoa 1 def
+ end
+} def
%-----------------------------------------------------------------------------%
% END pst-tools.pro
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pst-tools/pst-tools.tex new/tex/generic/pst-tools/pst-tools.tex
--- old/tex/generic/pst-tools/pst-tools.tex 2012-10-17 02:54:25.000000000 +0200
+++ new/tex/generic/pst-tools/pst-tools.tex 2014-05-16 23:12:50.000000000 +0200
@@ -26,20 +26,28 @@
% interface to the `xkeyval' package
\pst@addfams{pst-tools}
%
-\def\fileversion{0.02}
-\def\filedate{2012/10/16}
+\def\fileversion{0.05}
+\def\filedate{2014/05/12}
\message{`PST-tools' v\fileversion, \filedate\space (hv)}
%
-\define@boolkey[psset]{pst-tools}[Pst@]{dot}[true]{}
+\define@key[psset]{pst-tools}{decimalSeparator}[.]{\def\psk@decimalSeparator{#1}}%
+\define@boolkey[psset]{pst-tools}[Pst@]{comma}[true]{%
+ \ifPst@comma\def\psk@decimalSeparator{,}\else\def\psk@decimalSeparator{.}\fi}
\define@boolkey[psset]{pst-tools}[Pst@]{trimSpaces}[true]{}
\define@key[psset]{pst-tools}{xShift}[0]{\def\psk@xShift{#1}}
+\define@key[psset]{pst-tools}{yShift}[0]{\def\psk@yShift{#1}}
\define@key[psset]{pst-tools}{postString}[]{\def\psk@postString{#1}}
+\define@key[psset]{pst-tools}{VarName}[]{\def\psk@VarName{#1 }}
\define@key[psset]{pst-tools}{PSfont}[Times-Roman]{\def\psk@PSfont{/#1 }}
\define@key[psset]{pst-tools}{valuewidth}[10]{\pst@getint{#1}\psk@valuewidth }
\define@key[psset]{pst-tools}{fontscale}[10]{\pst@checknum{#1}\psk@fontscale }
\define@key[psset]{pst-tools}{decimals}[-1]{\pst@getint{#1}\psk@decimals }
\psset[pst-tools]{PSfont=Times-Roman,fontscale=10,valuewidth=10,decimals=-1,
- xShift=0,dot,trimSpaces=false,postString={}}
+ xShift=0,yShift=0,trimSpaces=false,postString={},VarName={},
+ comma=false,decimalSeparator=.}
+%
+\def\txG{ true setglobal globaldict begin }
+\def\etxG{ end false setglobal }
%
\def\psPrintValue{\pst@object{psPrintValue}}
\def\psPrintValue@i#1{\expandafter\psPrintValue@ii#1,,\@nil}
@@ -52,13 +60,14 @@
/Func (#2) tx@AlgToPs begin AlgToPs end cvx def
Func
\else #1 \fi
+ \ifx\relax\psk@VarName\relax\else dup \txG 10 string cvs /\psk@VarName\space exch def \etxG \fi
\psk@decimals -1 gt { 10 \psk@decimals exp dup 3 1 roll mul cvi exch div } if
\psk@valuewidth string cvs %/Output exch def % save output
%/concatstringarray{ % [(a) (b) ... (z)] --> (ab...z) 20100422
\ifx\relax\psk@postString\relax\else [ exch (\psk@postString) ] concatstringarray \fi
\ifPst@trimSpaces rightTrim \fi
- \ifPst@dot dot2comma \fi % do we have to change dot to comma
- \psk@xShift\space 0 moveto %Output
+ \ifPst@comma dot2comma \fi % do we have to change dot to comma
+ \psk@xShift\space \psk@yShift\space moveto %Output
show grestore
}%
\end@SpecialObj%
@@ -90,7 +99,7 @@
\psk@decimals 0 eq { cvi } if /numb ED
expon \psk@valuewidth string cvs /expon exch def
numb \psk@valuewidth string cvs
- \ifPst@dot dot2comma \fi % do we have to change dot to comma
+ \ifPst@comma dot2comma \fi % do we have to change dot to comma
/Output exch def
/txspc \psk@fontscale 4 div def
\psk@xShift\space 0 moveto mfont Output show
@@ -102,7 +111,7 @@
\ifPst@round round \else cvi \fi exch div } if
\psk@decimals 0 eq { cvi } if %inserted to handle decimals=0
\psk@valuewidth string cvs
- \ifPst@dot dot2comma \fi % do we have to change dot to comma
+ \ifPst@comma dot2comma \fi % do we have to change dot to comma
\psk@xShift\space 0 moveto mfont %Output
show
} ifelse
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst-tools.tlpobj new/tlpkg/tlpobj/pst-tools.tlpobj
--- old/tlpkg/tlpobj/pst-tools.tlpobj 2012-10-17 04:37:15.000000000 +0200
+++ new/tlpkg/tlpobj/pst-tools.tlpobj 2014-05-17 03:26:04.000000000 +0200
@@ -1,6 +1,6 @@
name pst-tools
category Package
-revision 27986
+revision 34067
shortdesc PStricks support functions.
relocated 1
longdesc The package provides helper functions for other PSTricks
@@ -10,6 +10,6 @@
RELOC/tex/generic/pst-tools/pst-tools.tex
RELOC/tex/latex/pst-tools/pst-tools.sty
catalogue-ctan /graphics/pstricks/contrib/pst-tools
-catalogue-date 2012-10-16 22:55:53 +0200
+catalogue-date 2014-05-16 12:23:05 +0200
catalogue-license lppl
-catalogue-version 0.02
+catalogue-version 0.05
++++++ pst2pdf.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/Changes new/texmf-dist/doc/latex/pst2pdf/Changes
--- old/texmf-dist/doc/latex/pst2pdf/Changes 2013-03-10 23:38:10.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/Changes 2013-07-06 23:46:50.000000000 +0200
@@ -1,4 +1,7 @@
pst2pdf.pl --------
+0.15 2013-06-16 - adding short options for command line
+ - create png and jpg files in Linux and Windows
+ - pass options to ps2pdf
0.14 2013-02-27 - suport xelatex and -help from command line
0.13 2011-12-12 - some more improvements to the code
0.12 2011-01-19 - new optional arguments for running
@@ -16,9 +19,9 @@
0.06 2007-08-28 - fix bug with \begin{pspicture} and \pspicture
0.05 2007-07-05 - allow different extensions for the source file
e.g. tex, ltx
- - ignore verbatim environment
- - better log file support
+ - ignore verbatim environment
+ - better log file support
0.04 2007-07-04 - allow all \begin ..\end sequences anywhere
in a line, see testcase
0.03 2007-06-21 - fix nested environments
-0.02 2007-06-20 - first (public) version
+0.02 2007-06-20 - first (public) version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/README new/texmf-dist/doc/latex/pst2pdf/README
--- old/texmf-dist/doc/latex/pst2pdf/README 2013-03-10 23:38:10.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/README 2013-07-06 23:46:50.000000000 +0200
@@ -6,9 +6,9 @@
for the pdf output of the main document. The eps and
pdf files are saved in a subdirectory images.
-Syntax: pst2pdf.pl file[.tex] [-options]
+Syntax: pst2pdf.pl file[.tex] [options]
-alternative: perl pst2pdf.pl file[.tex] [-options]
+alternative: perl pst2pdf.pl file[.tex] [options]
Some restrictions:
@@ -30,10 +30,28 @@
pst2pdf creates a document file-pdf.tex for use with
pdflatex, which then creates file-pdf.pdf. The created
-images are named file-pst-<No>.pdf
+images are named file-fig-<No>.pdf
-for more documentation => pst2pdf --help or read the documentation
+Options:
+ -h,-help - display this help and exit
+ -l,-license - display license information and exit
+ -imageDir - the dir for the created images (default images)
+ -d,-DPI=<int> - the dots per inch for a cretaed ppm files (default 75)
+ -j,-jpg - create .jpg files (need pdftoppm and ImageMagick)
+ -p,-png - create .png files (need pdftoppm and ImageMagick)
+ -e,-eps - create .eps files (need pdftops)
+ -Iscale=<real> - the value for [scale=] in \\includegraphics
+ -noImages - generate file-pdf.tex, but not images
+ -v,-verbose - creates log file (.plog)
+ -c,-clear - delete all tmp files
+ -runBibTeX - run bibtex on the aux file, if exists
+ -runBiber - run biber on the bcf file, if exists
+ -s,-single - create images whitout pdftk
+ -a,-all - create all image type and images.tex
+ -x,-xetex - using (Xe)LaTeX for compilation
+ -PS2=<opt> - pass options to ps2pdf (default empty)
+for more documentation => pst2pdf --help or read the documentation
--
Herbert Voss 2010-01-04
</pre>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.bib new/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.bib
--- old/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.bib 2013-03-10 23:38:10.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.bib 2013-07-06 23:46:50.000000000 +0200
@@ -125,10 +125,25 @@
@Book{PSTricks2,
author = {Herbert Vo\ss},
- title = {\texttt{PSTricks} -- {G}rafics for \TeX{} and \LaTeX},
- edition = {1.},
- publisher = {UIT},
+ title = {\texttt{PSTricks} -- {G}rafik f\"ur \TeX{} und \LaTeX},
+ edition = {6.},
+ publisher = {DANTE -- Lehmanns},
year = {2011},
+ address = {Heidelberg/Hamburg}
+}
+
+@Book{voss:math,
+ author = {Herbert Vo\ss},
+ title = {Typesetting mathematics with \LaTeX},
+ publisher = {UIT},
+ year = {2010},
address = {Cambridge}
}
+@Book{PSTricks2-UIT,
+ author = {Herbert Vo\ss},
+ title = {PSTricks -- Graphics for \TeX\ and \LaTeX},
+ publisher = {UIT},
+ year = {2011},
+ address = {Cambridge}
+}
Files old/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.pdf and new/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.tex new/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.tex
--- old/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.tex 2013-03-10 23:38:10.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.tex 2013-07-06 23:46:50.000000000 +0200
@@ -16,7 +16,7 @@
\begin{document}
\title{\texttt{pst2pdf}}
-\subtitle{Running a PSTricks document with pdflatex;\\ \small v. 0.14}
+\subtitle{Running a PSTricks document with pdflatex;\\ \small v. 0.15}
\author{Herbert Vo\ss \\ Pablo Gonz\'{a}lez Luengo}
\docauthor{}
\date{\today}
@@ -26,20 +26,6 @@
\clearpage
-%\begin{abstract}
-%\noindent
-%\Lprog{pst2pdf} is a \Lprog{perl} \emph{script} for running a PSTricks document in a last run
-%with pdflatex.
-
-%\vfill\noindent
-%Thanks to:
-%Rolf Niepraschk
-
-%\end{abstract}
-
-%\clearpage
-
-
\section{Introduction}
\PST\ as \PS\ related package uses the programming language \PS\ for internal
calculations. This is an important advantage, because floating point arithmetic is no
@@ -58,7 +44,8 @@
\section{Requirements}
\subsection{Programs needed}
-\nxLprog{pst2pdf} needs \Lprog{pdftk}, \Lprog{ImageMagick} and \Lprog{poppler-utils} (or \Lprog{xpdf-utils}) for the process file in usual way. If you need a create .pdf image files (whitout related software) use single mode (see \ref{single}).
+\nxLprog{pst2pdf} needs \Lprog{pdftk}, \Lprog{ImageMagick}, \Lprog{pdftoppm} and \Lprog{pdftops}
+(from \Lprog{poppler-utils} or \Lprog{xpdf-utils}) for the process file. If you need a create .pdf image files (whitout \Lprog{pdftk}) use single mode (see \ref{single}).
\subsection{Preparating file}
The script scan the file for \Lenv{pspicture} and \Lenv{postscript} environments,
@@ -120,16 +107,17 @@
\nxLprog{pst2pdf} \Larg{file.tex} \OptArg*{--options}
\end{BDef}
+In this way \nxLprog{pst2pdf} creates a new file called \Larg{file-pst.tex} and copy all \Lenv{pspicture}
+and \Lenv{postscript} environments, then processed and create file-pdf.pdf and file-fig-1.pdf, file-fig-2.pdf, file-fig-\dots.pdf and file-fig-1.tex, file-fig-2.tex, file-fig-\dots.tex for all \Lenv{pspicture} and \Lenv{postscript} using \nxLprog{pdftk}.
\subsection{Single mode}
\label{single}
-If \nxLprog{pst2pdf} can not process a file, used the option \Loption{--single} this process will create the file, whiout pdftk
-(take a more time to create images files) by default create PDF files. For exampple:
+If you do not have \nxLprog{pdftk} use the option \Loption{--single} in this mode the files are processed separately (take a more time to create images files) by default create PDF files. For example:
\begin{BDef}
-\nxLprog{pst2pdf} \Larg{file.tex} \OptArg*{--pdf} \OptArg*{--single}
+\nxLprog{pst2pdf} \Larg{file.tex} \OptArg*{--single}
\end{BDef}
-create file-pdf.pdf and file-pst-1.pdf, file-pst-2.pdf, file-pst-\dots.pdf for all \Lenv{pspicture} and \Lenv{postscript} environments in the directory for the created images (see \ref{options}).
+create file-pdf.pdf and file-fig-1.pdf, file-fig-2.pdf, file-fig-\dots.pdf and file-fig-1.tex, file-fig-2.tex, file-fig-\dots.tex for all \Lenv{pspicture} and \Lenv{postscript} environments (see \ref{options}).
\section{Options}
\label{options}
@@ -143,19 +131,18 @@
\Loption{--Iext} & literal & .pdf & the extension for \Loption{PrependGraphicsExtensions}.\\
\Loption{--DPI} & integer & 75 & the dots per inch for a created \Lext{ppm} file.\\
\Loption{--Iscale} & real & 1 & the value for the option \Loption{scale} in \Lcs{includegraphics}.\\
-\Loption{--eps} & boolean & 0 & creates \Lext{eps} images files (need pdftops).\\
-\Loption{--ppm} & boolean & 0 & creates \Lext{ppm} images files (need pdftoppm).\\
-\Loption{--files} & boolean & 0 & creates \Lext{tex} for all images.\\
+\Loption{--eps} & boolean & 0 & creates \Lext{eps} images (need \Lprog{pdftops}).\\
+\Loption{--jpg} & boolean & 0 & creates \Lext{jpg} images (need \Lprog{pdftoppm} and \Lprog{ImageMagick}).\\
+\Loption{--png} & boolean & 0 & creates \Lext{png} images (need \Lprog{pdftoppm} and \Lprog{ImageMagick}).\\
\Loption{--verbose} & boolean & 1 & for a long \nxLprog{pst2pdf} log.\\
-\Loption{--norun} & boolean & 0 & create files, but no compile.\\
+\Loption{--PS2} & literal & empty & pass options to \nxLprog{ps2pdf}.\\
\Loption{--clear} & boolean & 0 & delete all temporary files.\\
\Loption{--help} & boolean & 1 & print help and exit.\\
\Loption{--single} & boolean & 0 & create images type (whitout pdftk).\\
-\Loption{--all} & boolean & 0 & generte all image type (.pdf, .eps, .tex).\\
-\Loption{--version} & boolean & 0 & print version and exit.\\
+\Loption{--all} & boolean & 0 & generte all image (.pdf, .eps, .jpg, .png, .tex) and clear.\\
\Loption{--license} & boolean & 0 & print license and exit.\\
\Loption{--xetex} & boolean & 0 & using \Lprog{xelatex} instead of \Lprog{latex} for the process.\\
-\Loption{--noImages} & boolean & 0 & generate files but no images (need \Loption{--norun}).\\
+\Loption{--noImages} & boolean & 0 & generate file-pdf.tex, but no images.\\
\Loption{--runBibTeX}& boolean & 0 & runs \Lprog{bibtex} \\
\Loption{--runBiber} & boolean & 0 & runs \Lprog{biber} if a file with extension \Lext{bcf} exists \\\bottomrule
\end{tabularx}
@@ -167,17 +154,19 @@
\nxLprog{pst2pdf} \OptArg*{--help}
\end{BDef}
-\section{Other image format}
-If your need \Lext{png}, \Lext{jpg} or other image type use \nxLprog{pst2pdf} \Larg{file.tex} \OptArg*{--ppm} , than move to images dir and use \nxLprog{mogrify} command (from \Lprog{ImageMagick}), for examples:\\
+\section{Image format}
+\nxLprog{pst2pdf} can create image files in the formats: \Lext{pdf}, \Lext{eps}, \Lext{jpg} and \Lext{png}. If you need to create other image formats use \nxLprog{pst2pdf} \Larg{file.tex} \OptArg*{-png} without the option
+\OptArg*{-clear} , than move to images dir and use \nxLprog{mogrify} command (from \Lprog{ImageMagick}), for examples:\\
\begin{BDef}
-\nxLprog{mogrify} -format \OptArg*{png *.ppm}
+\nxLprog{mogrify} -format gif \OptArg*{*.ppm}
\end{BDef}
-generate PNG images files and \\
+generate \Lext{gif} images files and \\
\begin{BDef}
-\nxLprog{mogrify} -format \OptArg*{jpg *.ppm}
+\nxLprog{mogrify} -format tiff \OptArg*{*.ppm}
\end{BDef}
-generate JPG images files.
+generate \Lext{tiff} images files.
+\enlargethispage{1cm}
\bgroup
\raggedright
\nocite{*}
Files old/texmf-dist/doc/latex/pst2pdf/test.pdf and new/texmf-dist/doc/latex/pst2pdf/test.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/test.tex new/texmf-dist/doc/latex/pst2pdf/test.tex
--- old/texmf-dist/doc/latex/pst2pdf/test.tex 1970-01-01 01:00:00.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/test.tex 2013-07-06 23:46:50.000000000 +0200
@@ -0,0 +1,408 @@
+\documentclass{article}
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{textcomp}
+\usepackage{lmodern}
+\usepackage[dvipsnames]{xcolor}
+\usepackage{pst-solides3d}
+\usepackage{psgo}
+\usepackage{pst-text}
+\usepackage{pst-blur}
+\usepackage[tiling]{pst-fill}
+\usepackage{pst-calendar}
+\usepackage{pst-eucl}
+\usepackage{pst-labo}
+\usepackage{pst-3d}
+\usepackage{psfrag}
+\usepackage{pst-bar}
+\usepackage{pst-barcode}
+\usepackage{pst-gr3d}
+\usepackage{pst-ob3d}
+\usepackage{pst-3dplot}
+\usepackage{pst-tree}
+\usepackage{pst-coil}
+\usepackage{pst-bezier}
+\usepackage{pst-coxeterp}
+\usepackage{pst-circ}
+\usepackage{pst-func}
+\usepackage{pstricks-add}
+\usepackage{pst-plot,pst-math}
+\usepackage{pst-slpe}
+\usepackage{pst-fr3d}
+\usepackage{vaucanson-g}
+\usepackage{blindtext}
+\usepackage{multido}
+\usepackage{pst-grad}
+\usepackage{pstricks-add}
+%\usepackage[pspdf={-dPDFSETTINGS=/prepress}]{auto-pst-pdf}
+\begin{document}
+A test for pst2pdf ...
+\texttt{blindtext,pst-node}
+\begin{postscript}
+\SpecialCoor
+\rnode{A}{The beginning of it all:}
+\blindtext
+\rnode{E}{And this is the end my friend.}
+\nccurve[linewidth=5pt,strokeopacity=0 .4,ncurvB=0.9,arrowscale=1.5,arrows=->]{A}{E}
+\end{postscript}
+
+\texttt{pstricks-add}
+\begin{pspicture}(-0.04,-0.04)(1,1)
+\psset{unit=5}
+\psgrid[subgriddiv=5,subgridcolor=lightgray]
+\psplotDiffEqn[whichabs=0,whichord=1,linecolor=red,
+method=rk4,algebraic,plotpoints=400,
+showpoints=true]{0}{10}{0 0}%
+{cos(Pi*x^2/2)|sin(Pi*x^2/2)}
+\end{pspicture}
+
+\texttt{pst-solides3d}
+\begin{pspicture}[solidmemory](-4,-5)(7,4)
+\psset{viewpoint=50 -40 10 rtp2xyz,Decran=50,
+linecolor=darkgray,lightsrc=viewpoint}
+\psSolid[object=grille,action=draw,base=-3 5 -3 5,
+linecolor=Salmon!40](0,0,-3)
+\psSolid[object=cylindre,r=2,h=6,ngrid=6 24,
+plansepare={[0.707 0 0.707 0]},name=Zylinder,
+action=none](0,0,-3)
+\psSolid[object=load,load=Zylinder1,
+fillcolor=black!5,fcol=0 (Goldenrod)]
+\psSolid[object=load,load=Zylinder0,RotZ=90,
+fillcolor=black!5,rm=0,hollow,incolor=Goldenrod](0,4,0)
+\psSolid[object=plan,action=draw,definition=equation,
+args={[0.707 0 0.707 0] 90},base=-2 2 -3 3,planmarks]
+\psSolid[object=line,args=0 0 0 0 5.5 0,
+linecolor=blue]% first half of y axis
+\color{white}\axesIIID[showOrigin=false,
+linecolor=blue](0,6.8,0)(3.5,8,3.5)
+\end{pspicture}
+
+\texttt{pstricks}
+\begin{postscript}
+\psset{unit=0.05mm}% 1:20,or=0.1mm for 1:10
+\begin{pspicture}(-100,-100)(1000,650)
+\pspolygon[linewidth=2pt,fillcolor=gray!10,
+fillstyle=solid](0,0)(0,470)(860,625)(860,0)
+\psset{linewidth=0.2pt,arrowscale=2,tbarsize=10pt}
+\psline{|<->|}(0,-100)(860,-100)
+\rput*(430,-100){430mm}
+\psline{|<->|}(960,0)(960,625)
+\rput*{90}(960,312.5){625mm}
+\psline{|<->|}(-100,0)(-100,470)
+\rput*{90}(-100,235){470mm}
+\end{pspicture}
+\end{postscript}
+
+\texttt{pstricks, pst-node, and pst-plot}
+\begin{pspicture}(-1,-3)(4.75,3)
+\psscalebox{0.75}{
+\psaxes{->}(0,0)(-1,-3)(5,3)
+\psplot[polarplot,linewidth=2pt,algebraic,
+plotpoints=500]{0}{6.289}{2*(1+cos(x))}
+\multido{\r=0.000+0.314}{21}{ %
+\psplotTangent[polarplot,Derive=-2*sin(x),
+algebraic,arrows=<->]{\r}{1.5}{2*(1+cos(x))}}
+}
+\end{pspicture}
+
+\texttt{pst-plot}
+\begin{pspicture}[showgrid=true](-1.1,-1.1)(1.1,1.1)
+\psset{xunit=1.5cm,yunit=1.5cm}
+\psparametricplot[plotstyle=curve,linewidth=1.5pt,
+plotpoints=200]{-360}{360}%
+{t 1.5 mul sin t 2 mul 60 add sin}
+\end{pspicture}
+
+\texttt{pst-tree}
+\begin{postscript}
+\pstree[levelsep=1cm,radius=3pt]{\Toval{Wurzel}}{%
+\pstree{\TC}{%
+\TC
+\pstree{\TC*}{\TC\TC\TC\TC}%
+\TC\TC}}
+\end{postscript}
+
+\texttt{pst-bezier}
+\begin{pspicture}[showgrid=true](5,3)
+\psset{showpoints=true}
+\psbcurve[linecolor=blue,linewidth=0.01](1,1)%
+(2,2)(3,1)(4,2)
+\psbcurve(1,1)(2,2)l(2,1)(3,1)(4,2)
+\uput[-90](2,1){$\vec{l}_{2}$}
+\end{pspicture}
+
+\texttt{pst-text}
+\begin{pspicture}(0,0)(.25\linewidth,8)
+\DeclareFixedFont{\ps}{U}{psy}{m}{n}{8cm}
+\psboxfill{\footnotesize$\pi$}
+\pscharpath[fillstyle=solid,
+fillcolor=cyan!20,
+addfillstyle=boxfill,fillangle=30,
+fillsep=0.6mm]{%
+\rput[b](-0.5,0){\ps\char112}}
+\end{pspicture}
+
+\texttt{pst-fill}
+\begin{postscript}
+\psset{unit=1.5,dimen=middle}
+\begin{pspicture*}(3,3)
+\psboxfill{\begin{pspicture}(1,1)
+\psframe(1,1)\end{pspicture}}
+\psframe[fillstyle=boxfill](3,3)
+\psboxfill{\begin{pspicture}(1,1)
+\rput{-37}{\psframe[linecolor=red](0.8,0.8)}
+\end{pspicture}}
+\psframe[fillstyle=boxfill](3,4)
+\pspolygon[fillstyle=hlines,hatchangle=90](1,2)(1.64,1.53)(2,2)
+\end{pspicture*}
+\end{postscript}
+
+
+\texttt{pst-coils}
+\begin{pspicture}(4,3)
+\cnode*(0.5,0.5){0.5}{A}
+\cnode*(3.5,2.5){0.5}{B}
+\pccoil[coilwidth=0.4,coilaspect=35,coilheight=0.5,linecolor=white]{<->}(A)(B)
+\nccoil[coilwidth=0.4,coilaspect=35,coilheight=0.5]{A}{B}
+\end{pspicture}
+
+
+\texttt{pst-grad}
+\begin{pspicture}(5,3.5)
+\psframe[fillstyle=gradient,gradbegin=white](5,1.5)
+\newrgbcolor{gradbegin}{0 1 1}
+\psframe[fillstyle=gradient](0,2)(5,3.5)
+\end{pspicture}
+
+\texttt{pst-slpe}
+\begin{pspicture}(2.5,2.5)
+\def\st#1{\makebox[2.75cm]{$\vcenter to 55pt{}#1$}}
+\psset{fading,endfading=0.75,linecolor=black!40}
+\psframe*(-0.3,-0.25)(3.5,20pt)
+\psframebox[fillstyle=slope]{\LARGE\st{slope}}
+\end{pspicture}
+
+\texttt{pst-blur}
+\begin{postscript}
+\DeclareFixedFont{\RM}{T1}{ptm}{b}{n}{1.75cm}
+\psset{shadow=true,blur=true,shadowsize=10pt,blurradius=5pt}
+\pscharpath{\RM PSTricks}
+\end{postscript}
+
+\texttt{pst-3d}
+
+\begin{pspicture}(-4.5,-3)(3,4.75)
+\psset{viewpoint=1 1.5 0.8}
+{\psset{gridlabels=0pt,subgriddiv=0,gridcolor=black!50}
+\ThreeDput[normal=0 0 1]{\psgrid(5,5)}
+\ThreeDput[normal=0 -1 0] {\ psgrid(5,5)}
+\ThreeDput[normal=1 0 0]{\psgrid(5,5)}}
+\ThreeDput[normal=0 0 1] {%
+\psline[linewidth=3pt,linecolor=blue]{->}(4,4)(4,5.5)
+\uput[90](4,5.5){%
+\psrotateleft{\textcolor{blue}{$\vec{n}_A$}}}}%$%xy
+\ThreeDput[normal=0 -1 0]{%
+\psline[linewidth=3pt,linecolor=green]{->}(4,0)(5.5,0)
+\uput[90](5.5,0){ \ psscalebox{-1 1}{%
+\textcolor{green}{$\vec{n}_B$}}}}%$%xz
+\ThreeDput[normal=1 0 0]{%
+\psline[linewidth=3pt,linecolor=red]{->}(0,4)(0,5.5)
+\uput[0](0,5.5){$\vec{n}_{top}$}} %yz
+\ThreeDput[normal=0 0 1] (0,0,4){%
+\psframe*[linecolor=gray!25] (4,4)
+\rput(2,2){\Huge\textbf{TOP}}}
+\ThreeDput[normal=0 1 0](4,4,0){%
+\psframe*[linecolor=gray!5](4,4)
+\rput(2,2){\Huge\textbf{side A}}}
+\ThreeDput[normal=1 0 0] (4,0,0){%
+\psframe*[linecolor=gray!15](4,4)
+\rput(2,2){\Huge\textbf{side B}}}
+% Die kleinen Achsen
+\ThreeDput[normal=0 0 1](0,0,4){%
+\psline(4,0)\uput[90](3,0){X$_{top}$}
+\psline(0,4)\uput[0] (0,3){Y$_{top}$}}
+\ThreeDput[normal=0 1 0](4,4,0){%
+\psline(4,0)\uput[90](3,0){X$_{A}$}
+\psline(0,4)\uput[0] (0,3){Y$_{A}$}}
+\ThreeDput[normal=1 0 0] (4,0,0){%
+\psline(4,0)\uput[90](3,0){X$_{B}$}
+\psline(0,4)\uput[0](0,3){Y$_{B}$}}
+\end{pspicture}
+
+\texttt{pst-ob3d}
+\begin{pspicture}(-1,-0.5)(3,1.7)
+\psset{fillstyle=solid,fillcolor=yellow,RandomFaces=true}
+\PstDie[viewpoint=1 -3 1]
+\rput(1.5,0){\PstCube[Corners=true,CornersColor=blue,
+fillstyle=solid,fillcolor=cyan,viewpoint=1 2 1]
+{1}{1}{1}}
+\end{pspicture}
+
+\texttt{pst-gr3d}
+\begin{postscript}
+\psscalebox{0.5}{\footnotesize
+\PstGridThreeD[GridThreeDNodes,unit=2.5](2,3,2)
+\multido{\ix=0+1}{3}{%
+\multido{\iy=0+1}{4}{%
+\multido{\iz=0+1}{3}{%
+\rput*(Gr3dNode\ix\iy\iz){$\ix\iy\iz$}}}}
+\psset{linecolor=blue,linestyle=dashed,
+linewidth=0.3pt,arrowscale=2,nodesep=8pt}
+\pcline{->}(Gr3dNode000)(Gr3dNode202)
+\pccurve{->}(Gr3dNode000)(Gr3dNode232)}
+\end{postscript}
+
+\texttt{pst-fr3d}
+\begin{postscript}
+\PstFrameBoxThreeD[FrameBoxThreeDOn=false]
+{\Large Off}
+\quad
+\PstFrameBoxThreeD{\Large On}% default
+\end{postscript}
+
+\texttt{pst-3dplot}
+\begin{pspicture}(-4.8,-1.75)(4.8,3.75)
+\psset{unit=4cm,drawCoor,beginAngle=90,endAngle=180,linestyle=dotted}
+\def\oA{\pstThreeDLine[linecolor=blue,linewidth=3pt,
+arrows=c-> ](0,0,0)(1,60,70)}
+\def\oB{\pstThreeDLine[linecolor=red,linewidth=3pt,
+arrows=c->](0,0,0)(1,10,50)}
+\def\oAB{\pstThreeDEllipse[beginAngle=58,
+endAngle=90](0,0,0)(1,140,40)(1,10,50)}
+
+\pstThreeDCoor[drawing,linewidth=1pt,linecolor=black,
+linestyle=solid,xMin=0,xMax=1.1,yMin=0,yMax=1.1,
+zMin=0,zMax=1.1]
+\pstThreeDEllipse(0,0,0)(-1,0,0)(0,1,0)
+\pstThreeDEllipse(0,0,0)(-1,0,0)(0,0,1)
+\pstThreeDEllipse[beginAngle=0,
+endAngle=90](0,0,0)(0,0,1)(0,1,0)
+\psset{SphericalCoor,linestyle=solid}
+\pstThreeDDot[dotstyle=none](1,10,50)
+\pstThreeDDot[dotstyle=none](1,60,70)
+\pscustom[fillstyle=solid,fillcolor=black!20,
+linestyle=none]{\oB\oAB\oA} \oA\oB\oAB
+\pstThreeDPut[origin=lb](1.1,60,70){$\vec\Omega_1$}
+\pstThreeDPut[origin=rb](1.2,10,50){$\vec\Omega_2$}
+\pstThreeDPut[origin=lb](1,10,65){$\gamma_{12}$}
+\end{pspicture}
+
+\texttt{pst-solides3d}
+\begin{pspicture}(-2,-2)(2,2)
+\psset{viewpoint=100 50 20 rtp2xyz,
+Decran=60,lightsrc=10 15 10}
+\defFunction[algebraic]{corne}(u,v)%
+{(2 + u*cos(v))*sin(2*pi*u)}%
+{(2 + u*cos(v))*cos(2*pi*u)+2*u}%
+{u *sin(v)}
+\psSolid[object=surfaceparametree,base=0 1 0 2 pi mul,function=corne,ngrid=20]
+\end{pspicture}
+
+\texttt{pst-circ}
+\begin{pspicture}(4,3.5)
+\pnode(0,3){A}\pnode(0,0){B}
+\pnode(4,1.5){C}
+\OA[OAperfect=false,OAiplus,
+OAiminus,OAiout,
+OAipluslabel=$i_P$,
+OAiminuslabel=$i_M$,
+OAioutlabel=$i_A$,
+intensitycolor=red,
+intensitylabelcolor=red](A)(B)(C)
+\end{pspicture}
+
+
+
+\texttt{pst-barcode}
+\begin{postscript}
+\psframebox{\begin{pspicture}(2.5,1in)
+\psbarcode{12345678}{includetext}{ean8}
+\end{pspicture}}
+\end{postscript}
+
+\texttt{pst-bar}
+\begin{postscript}
+\psset{unit=0.5in}%
+\begin{pspicture}(0,-0.5)(3,4.5)%
+\psgrid[xunit=1.5in,gridlabels=0,%
+subgriddiv=0,griddots=30](0,0)(1,4)%
+\psaxes[axesstyle=frame,Ox=0,Dx=1,labels=y,%
+ticks=y](0,0)(3,4)%
+\readpsbardata{\data}{example2.csv}%
+\psbarchart[barstyle={red,blue}]{\data}%
+\end{pspicture}
+\end{postscript}
+
+\texttt{pst-math}
+\begin{pspicture*}(-0.75,-.75)(6,5)
+\psaxes{->}(6,5)
+\psset{linewidth=1.5pt,plotpoints=200}
+\psplot{.1}{6}{x GAMMA}
+\psplot{.1}{6}{x GAMMALN}
+\end{pspicture*}
+
+\texttt{pst-func}
+\begin{pspicture*}(-3,-2.2)(3.6,2.5)
+\psaxes{->}(0,0)(-3,-2)(3.2,2)[$x$,0][$y$,90]
+\psplotImp[linewidth=2pt,algebraic](-5,-2.2)(5,2.4){%
+(x^2+y^2)^2-8*(x^2-y^2)}
+\rput*(2,1.5){$\left(x^2+y^2\right)^2-8(x^2-y^2)=0$}
+\psplotImp[linewidth=1pt,linecolor=red,
+algebraic](-5,-2.2)(5,2.4){(x^2+y^2)^2-4*(x^2-y^2)}
+\end{pspicture*}
+
+\texttt{pst-eucl}
+\begin{postscript}
+\pstGeonode[PosAngle={0,90}](2,2){A_0}(-2,2){B_0}%
+\psset{RotAngle=90}
+\pstRotation[PosAngle=270]{A_0}{B_0}[D_0]
+\pstRotation[PosAngle=180]{D_0}{A_0}[C_0]
+\pspolygon(A_0)(B_0)(C_0)(D_0)%
+\psset{PointSymbol=none, PointName=none, HomCoef=.2}
+\multido{\n=1+1,\i=0+1}{20}{%
+\pstHomO[PosAngle=0]{B_\i}{A_\i}[A_\n]
+\pstHomO[PosAngle=90]{C_\i}{B_\i}[B_\n]
+\pstHomO[PosAngle=180]{D_\i}{C_\i}[C_\n]
+\pstHomO[PosAngle=270]{A_\i}{D_\i}[D_\n]
+\pspolygon(A_\n)(B_\n)(C_\n)(D_\n)}% fin multido
+\end{postscript}
+
+\texttt{pst-labo}
+\begin{postscript}
+\psset{unit=0.5cm,
+glassType=becher,
+burette=false}
+\pstDosage[phmetre]
+\end{postscript}
+
+\texttt{psgo}
+\begin{postscript}
+\psscalebox{0.7}{%
+\begin{psgopartialboard}[9]{(4,1)(9,6)}
+\stone{white}{c}{3} \stone{white}{e}{3}
+\stone{white}{d}{2} \stone{white}{d}{4}
+\stone{black}{f}{3} \stone{black}{e}{2}
+\stone{black}{e}{4}
+\end{psgopartialboard}}
+\end{postscript}
+
+\texttt{vaucanson-g}
+\begin{postscript}
+\begin{VCPicture}{(0,-2)(5.5,2)}
+\State[p]{(0,0)}{A} \State{(2.5,0)}{B}
+\State[r]{(5.5,0)}{C}\Initial{A} \Final{C}
+\EdgeL{A}{B}{a} \ArcL{B}{C}{b}
+\ArcL{C}{B}{b} \LoopN{A}{a} \LoopS{C}{d}
+\end{VCPicture}
+\end{postscript}
+
+Example for PSFRAG (from auto-pst-pdf)
+psfrag example with replacements defined in example-psfrag.tex:\par
+\begin{postscript}
+\psfragfig{example}
+\end{postscript}
+The same example with a psfrag override (bottom left):
+\begin{postscript}
+\psfragfig{example}[\psfrag{[Mp]}{$N_Q*$}]
+\end{postscript}
+\end{document}
Files old/texmf-dist/doc/latex/pst2pdf/test2.pdf and new/texmf-dist/doc/latex/pst2pdf/test2.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/test2.tex new/texmf-dist/doc/latex/pst2pdf/test2.tex
--- old/texmf-dist/doc/latex/pst2pdf/test2.tex 2010-01-06 02:24:51.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/test2.tex 2013-07-06 23:46:50.000000000 +0200
@@ -12,11 +12,9 @@
foo\begin{pspicture}[showgrid=true](4,2)\psscaleboxto(8,2){foo}\end{pspicture}bar
-\begin{PSTexample}[width=4cm,pos=r]
\begin{pspicture}[showgrid=true](4,2)
\psscaleboxto(4,2){foo bar}
\end{pspicture}
-\end{PSTexample}
foo\begin{pspicture}[showgrid=true](4,2)
@@ -25,12 +23,10 @@
-\begin{PSTexample}[pos=t]
\begin{postscript}
\psscalebox{0.5}{%
\psCalDodecaeder[style=january,unit=0.75,Year=2010]}
\end{postscript}
-\end{PSTexample}
\includegraphics{tux.jpg}% a jpg image
@@ -44,7 +40,6 @@
foo bar baz
-\begin{PSTexample}[pos=b]
\begin{postscript}
\psframebox{%
\begin{pspicture}(-3,-2)(3,6.5)
@@ -56,10 +51,8 @@
\end{pspicture}
}
\end{postscript}
-\end{PSTexample}
-\begin{PSTexample}[width=7.5cm]
\begin{postscript}
\begin{pspicture*}(-4,-2)(3,6.5)
\pstThreeDCoor[zMax=7]
@@ -69,9 +62,6 @@
\pstThreeDLine[linecolor=red]{->}(0,-1,0)(0,4,0)
\end{pspicture*}
\end{postscript}
-\end{PSTexample}
-
-
\end{document}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/latex/pst2pdf/test3.tex new/texmf-dist/doc/latex/pst2pdf/test3.tex
--- old/texmf-dist/doc/latex/pst2pdf/test3.tex 2010-01-06 02:24:51.000000000 +0100
+++ new/texmf-dist/doc/latex/pst2pdf/test3.tex 2013-07-06 23:46:50.000000000 +0200
@@ -1,9 +1,11 @@
\documentclass{article}
\usepackage{graphicx,pst-calendar,pst-3dplot}% Pakete
\pagestyle{empty}
-\parindent=0pt\begin{document}
+\parindent=0pt
+\begin{document}
-foo\begin{postscript}
+foo
+\begin{postscript}
\psframebox{% begin box
\pspicture(-3,-2)(3,6.5)
\pstThreeDCoor[zMax=7]
@@ -13,10 +15,12 @@
\pstThreeDLine[linecolor=red]{->}(0,-1,0)(0,4,0)
\endpspicture}% end box
\end{postscript}
+
bar
\pspicture(3,3)
-\psframe[fillstyle=solid,fillcolor=red!30](3,3)\endpspicture
+\psframe[fillstyle=solid,fillcolor=red!30](3,3)
+\endpspicture
\includegraphics{tux.jpg}
% Ende
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst2pdf.doc.tlpobj new/tlpkg/tlpobj/pst2pdf.doc.tlpobj
--- old/tlpkg/tlpobj/pst2pdf.doc.tlpobj 2013-03-11 04:37:24.000000000 +0100
+++ new/tlpkg/tlpobj/pst2pdf.doc.tlpobj 2013-07-07 03:20:02.000000000 +0200
@@ -1,17 +1,20 @@
name pst2pdf.doc
category Package
-revision 29333
+revision 31118
shortdesc doc files of pst2pdf
-docfiles size=129
+docfiles size=156
texmf-dist/doc/latex/pst2pdf/Changes
texmf-dist/doc/latex/pst2pdf/Makefile.doc
texmf-dist/doc/latex/pst2pdf/README
texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.bib
texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.pdf
texmf-dist/doc/latex/pst2pdf/pst2pdf-doc.tex
+ texmf-dist/doc/latex/pst2pdf/test.pdf
+ texmf-dist/doc/latex/pst2pdf/test.tex
texmf-dist/doc/latex/pst2pdf/test1-pdf.pdf
texmf-dist/doc/latex/pst2pdf/test1.tex
texmf-dist/doc/latex/pst2pdf/test2-pdf.pdf
+ texmf-dist/doc/latex/pst2pdf/test2.pdf
texmf-dist/doc/latex/pst2pdf/test2.tex
texmf-dist/doc/latex/pst2pdf/test3-pdf.pdf
texmf-dist/doc/latex/pst2pdf/test3.tex
++++++ pst2pdf.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/scripts/pst2pdf/pst2pdf.pl new/texmf-dist/scripts/pst2pdf/pst2pdf.pl
--- old/texmf-dist/scripts/pst2pdf/pst2pdf.pl 2013-03-10 23:38:10.000000000 +0100
+++ new/texmf-dist/scripts/pst2pdf/pst2pdf.pl 2013-07-06 23:46:50.000000000 +0200
@@ -4,9 +4,9 @@
use strict; # to be sure, that all is safe ... :-)
# $Id: pst2pdf.pl 611 2011-12-14 08:41:35Z herbert $
-# v. 0.14 simplify the use of PSTricks with pdf
+# v. 0.15 simplify the use of PSTricks with pdf
# 2011-12-12 (c) Herbert Voss
-# Pablo González Luengo
+# Pablo González Luengo
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -28,116 +28,104 @@
use File::Basename; # scan argument
use IO::File; # simple IO operation
use Getopt::Long; # read parameter
-use autodie;
+use autodie; # more safe
#----------------------- User part begin ------------------------
-my $imageDir = "images";# where to save the images
+my $imageDir = "images"; # where to save the images
my $Iext = ".pdf"; # leave empty, if not a special one
my $tempDir = "."; # temporary directory
-my $verbose = 0; # 0 or 1, logfile
-my $clear = 0; # 0 or 1, clears all temporary files
-my $DPI = 75; # very low value for the png's
-my $Iscale = 1; # for \includegraphics
-my $noImages = 0; # 1->create no images
-my $single = 0; # 1->single create images
+my $verbose = 0; # 0 or 1, logfile
+my $clear = 0; # 0 or 1, clears all temporary files
+my $DPI = 75; # very low value for the png's
+my $Iscale = 1; # for \includegraphics
+my $noImages = 0; # 1->no create images
+my $single = 0; # 1->create images in single mode
my $runBibTeX = 0; # 1->runs bibtex
-my $runBiber = 0; # 1->runs biber and sets $runBibTeX=0
-my $ppm = 0; # 1->create .ppm files
-my $norun = 0; # 1->runs pdflatex
-my $eps = 0; # 1->create .eps files
-my $files = 0; # 1->create image files .tex
-my $all = 0; # 1->create all images and files for type
-my $nopdftk = 0; # 1->create all images and files for type in single mode
-my $xetex = 0; # 1->Using XeLaTeX for compilation.
+my $runBiber = 0; # 1->runs biber and sets $runBibTeX=0
+my $jpg = 0; # 1->create .jpg files
+my $png = 0; # 1->create .png files
+my $ppm = 0; # 1->create .ppm files
+my $eps = 0; # 1->create .eps files
+my $files = 1; # 1->create image files .tex
+my $all = 0; # 1->create all images and files for type
+my $xetex = 0; # 1->Using (Xe)LaTeX for compilation.
+my $PS2 = " "; # Options for ps2pdf
#----------------------- User part end ---------------------------
#-------------- program identification, options and help ---------
my $program = "pst2pdf";
+my $nv="0.15";
my $ident = '$Id: pst2pdf.pl 611 2011-12-14 08:41:35Z herbert $';
my $copyright = <
+Copyright 2011-2013 (c) Herbert Voss and Pablo González.
END_COPYRIGHT
my $licensetxt= < [Options]
-pst2pdf run a TeX source, and convert all PS-related part as
- single images (pdf or eps or ppm, default pdf)
- and then runs pdflatex. See pst2pdf documentation for more info
+pst2pdf run a TeX source, read all PS-related part and convert in
+ single images in pdf,eps,jpg or png format (default pdf) and
+ create new file whitout pst-enviroment and runs (pdf/Xe)latex.
+ See pst2pdf documentation for more info.
Options:
- --help - display this help and exit
- --version - display version information and exit
- --license - display license information and exit
- --imageDir - the dir for the created images (default images)
- --DPI=<int> - the dots per inch for a cretaed ppm files (default 75)
- --ppm - create .ppm files
- --eps - create .eps files
- --Iscale=<real> - the value for [scale=] in \\includegraphics
- --noImages - generate files without compile (need -norun)
- --verbose - creates long log
- --clear - delete all temp files
- --norun - create file-pdf.tex, but, no run pdflatex
- --runBibTeX - run bibtex on the aux file, if exists
- --runBiber - run biber on the bcf file, if exists
- --files - create images files (.tex) for all pst enviroment
- --single - create images whitout pdftk and auto-pst-pdf
- --all - create all image type and images.tex
- --nopdftk - create all image type and images.tex in single mode
- --xetex - using XeLaTeX for compilation.
+ -h,-help - display this help and exit
+ -l,-license - display license information and exit
+ -imageDir= - the dir for the created images (default images)
+ -d,-DPI=<int> - the dots per inch for a cretaed ppm files (default 75)
+ -j,-jpg - create .jpg files (need pdftoppm and ImageMagick)
+ -p,-png - create .png files (need pdftoppm and ImageMagick)
+ -e,-eps - create .eps files (need pdftops)
+ -Iscale=<real> - the value for [scale=] in \\includegraphics
+ -noImages - generate file-pdf.tex, but not images
+ -v,-verbose - creates log file (.plog)
+ -c,-clear - delete all tmp files
+ -runBibTeX - run bibtex on the aux file, if exists
+ -runBiber - run biber on the bcf file, if exists
+ -s,-single - create images whitout pdftk
+ -a,-all - create all image type and images.tex
+ -x,-xetex - using (Xe)LaTeX for compilation
+ -PS2=<opt> - pass options to ps2pdf (default empty)
Examples:
-* $program test.tex --all
-* produce test-pdf.tex and ppm,eps,tex and pdf for pst-enviroment in image dir
+* $program test.tex -all
+* produce test-pdf.tex whitout pst-enviroment and create image dir
+* whit all images (pdf,eps,jpg,png) and source(.tex) for all pst-enviroment
END_OF_USAGE
#
my $result=GetOptions (
- "help",
- "version",
- "license",
- "DPI=i" => \$DPI, # numeric
- "Iscale=f" => \$Iscale, # real
- "imageDir=s" => \$imageDir, # string
- "tempDir=s" => \$tempDir, # string
- "Iext=s" => \$Iext, # string
- "clear" => \$clear, # flag
- "noImages" => \$noImages, # flag
- "single" => \$single, # flag
- "runBibTeX" => \$runBibTeX, # flag
- "ppm" => \$ppm, # flag
- "norun" => \$norun, # flag
- "eps" => \$eps, # flag
- "files" => \$files, # flag
- "all" => \$all, # flag
- "nopdftk" => \$nopdftk, # flag
- "xetex" => \$xetex, # flag
- "runBiber" => \$runBiber, # flag
- "verbose" => \$verbose,
+ 'h|help' => \$::opt_help,
+ 'l|license' => \$::opt_license,
+ 'd|DPI=i' => \$DPI, # numeric
+ "Iscale=f" => \$Iscale, # real
+ "imageDir=s" => \$imageDir, # string
+ "PS2=s" => \$PS2, # string
+ "tempDir=s" => \$tempDir, # string
+ "Iext=s" => \$Iext, # string
+ 'c|clear' => \$clear, # flag
+ "noImages" => \$noImages, # flag
+ 's|single' => \$single, # flag
+ "runBibTeX" => \$runBibTeX, # flag
+ 'e|eps' => \$eps, # flag
+ 'j|jpg' => \$jpg, # flag
+ 'p|png' => \$png, # flag
+ 'a|all' => \$all, # flag
+ 'x|xetex' => \$xetex, # flag
+ "runBiber" => \$runBiber, # flag
+ 'v|verbose' => \$verbose,
) or die $usage;
-#---------------- help functions --------------------------------
+#------------------------ Help functions --------------------------
sub errorUsage { die "Error: @_ (try --help for more information)\n"; }
# options for command line
if ($::opt_help) {
print $usage;
- exit (0);
-}
-if ($::opt_version) {
- print $title;
- print $copyright;
- exit (0);
+ exit (0);
}
if ($::opt_license) {
+ print $title;
+ print "$copyright\n";
print $licensetxt;
exit (0);
}
@@ -156,6 +144,7 @@
LOG ("==> imageDir = $imageDir");
LOG ("==> Iext = $Iext");
LOG ("==> DPI = $DPI");
+ LOG ("==> PS2 = $PS2");
LOG ("==> Iscale = $Iscale");
LOG ("==> tempDir = $tempDir");
LOG ("==> verbose = $verbose");
@@ -165,8 +154,9 @@
LOG ("==> runBibTeX= $runBibTeX");
LOG ("==> runBiber = $runBiber");
LOG ("==> ppm = $ppm");
- LOG ("==> norun = $norun");
LOG ("==> eps = $eps");
+ LOG ("==> jpg = $jpg");
+ LOG ("==> png = $png");
LOG ("==> files = $files");
LOG ("==> xetex = $xetex");
@@ -179,33 +169,43 @@
LOG ("Generate .ppm files ...");
$ppm = 1;
}
-if ($norun) {
- LOG ("no compile $name-pdf.tex");
- $norun = 1;
-}
if ($eps) {
LOG ("Generate .eps files ...");
$eps = 1;
}
+if ($jpg) {
+ LOG ("Generate .jpg files ...");
+ $ppm = 1;
+ $jpg = 1;
+}
+if ($png) {
+ LOG ("Generate .png files ...");
+ $ppm = 1;
+ $png = 1;
+}
if ($files) {
LOG ("Generate .tex images files ...");
$files=1;
}
if ($all) {
- LOG ("Generate all images files ...");
- $files=$eps = $ppm = $clear = 1;
+ LOG ("Generate all images eps/pdf/files and clear...");
+ $eps =$ppm=$jpg=$png=$clear = 1;
}
-if ($nopdftk) {
- LOG ("single mode generate all images files ...");
- $single=$files=$eps = $ppm = $clear = 1;
+if ($single) {
+ LOG ("single mode generate images files ...");
+ $single= 1;
}
if ($xetex) {
LOG ("Compiling using XeLaTeX ...");
$xetex=1;
}
+if ($noImages ) {
+ LOG ("no create images");
+ $single= 0;
+ }
my $imgNo = 1; # internal image counter
-#----------- single mode no need pdftk and auto-pst-pdf ----------------------
+#----------- single mode, no need pdftk ----------------------
if ($single) {
LOG ("Running on [$path][$name][$ext]");
open my $FILE,'<', "$TeXfile" ; # the source
@@ -213,11 +213,11 @@
if (-d $imageDir) { LOG ("$imageDir exists") }
else { mkdir("$imageDir", 0744) ;}
savePreamble($name);
+runXPD($name);
runFile($name);
close $FILE; # close source file
close $LOGfile;
-}
-#---------------- end single --------------
+}#---------------- Default way, using pdftk --------------
else{
LOG ("Running on [$path][$name][$ext]");
open my $FILE,'<', "$TeXfile" ; # the source
@@ -226,8 +226,8 @@
else { mkdir("$imageDir", 0744) ;
LOG ("Imagedir created"); }
LOG ("go to savePreamble ... ");
-runBurst($tempDir);
savePreamble($name);
+runXPD($name);
runFile($name);
LOG ("done!\n go to runFile ...");
LOG ("done!");
@@ -235,49 +235,24 @@
close $LOGfile;
}# !noImages
}
-#------------ Create filename-pics.pdf, split and generate .ppm
-sub runBurst{
-if ($single){ print "single mode";}
-else{
-my $entrada = "$TeXfile";
-my $salida = "$name-pics.tex";
- open my $ENTRADA,'<', "$entrada";
- open my $SALIDA,'>',"$salida";
- print $SALIDA "\\AtBeginDocument\{\n";
-if ($xetex){
- print $SALIDA "\\RequirePackage\[xetex,active,tightpage\]\{preview\}\n";}
-else{
- print $SALIDA "\\RequirePackage\[active,dvips,tightpage\]\{preview\}\n";}
- print $SALIDA "\\renewcommand\\PreviewBbAdjust\{-600pt -600pt 600pt 600pt\}\n";
- print $SALIDA "\\newenvironment{postscript}{}{}\n";
- print $SALIDA "\\PreviewEnvironment\{postscript\}\n";
- print $SALIDA "\\PreviewEnvironment\{pspicture\}\}\n";
- while ( my $linea = <$ENTRADA> ) {
- print $SALIDA $linea;}
- close $ENTRADA;
- close $SALIDA;
-# --------------------Compiling File --------------------------
-if ($xetex){
- system("xelatex -interaction=batchmode $tempDir/$name-pics.tex");
- system("pdfcrop -xetex $tempDir/$name-pics.pdf $tempDir/$name-pics.pdf");}
-else{
- system("latex -interaction=batchmode $tempDir/$name-pics.tex");
- system("dvips $tempDir/$name-pics.dvi");
- system("ps2pdf -dProcessColorModel=/DeviceCMYK -dPDFSETTINGS=/prepress $tempDir/$name-pics.ps");
- system("pdfcrop $tempDir/$name-pics.pdf $tempDir/$name-pics.pdf");}
- system("pdftk $tempDir/$name-pics.pdf burst output $imageDir/$name-fig-\%1d.pdf");
-if ($ppm){
- system("pdftoppm -r $DPI $tempDir/$name-pics.pdf $imageDir/$name-fig");}
- }
+# Create xpdfrc conf for silent output pdftops/pdftoppm mesagge in windows
+
+sub runXPD{
+if ($^O eq 'MSWin32'){
+open my $ppmconf, '>', "$tempDir/xpd";
+print $ppmconf <<'EOH';
+errQuiet yes
+EOH
+close $ppmconf;
+ }
}
-#------------ end pdftk burst
-LOG ("runpdfTeX ... ");
-runpdfTeX("$path$name",$name);
-LOG ("all finished ... :-)");
+# end fix
+
# create a preamble file
# if we have a \input command inside the preamble, it doesn't hurt, we need
# it anyway for the postscript files and the pdf one.
-# ----------------- Save Preamble ----------------------------------------
+
+# ----------------- Save Preamble ---------------------
sub savePreamble {
my $filename = pop; # get the file name
LOG ("----- Start Preamble -----");
@@ -395,46 +370,61 @@
LOG ("<----PStotal<----");
}
close $FILE;
- return @PStotal; # return all PS sequences
+ return @PStotal; # return all PS sequences
}
-# Creating ifile.tex and eps, pdf and ppm for images
-if ($single){
+# Creating file.tex and .pdf(eps,ppm) for images in single mode
+
sub runsingle{
my $filename = pop;
- if ($xetex){
- system("xelatex -interaction=batchmode $tempDir/$filename-fig");
- system("pdfcrop -xetex $tempDir/$filename-fig.pdf $imageDir/$filename-fig-$imgNo.pdf");}
- else{
- system("latex -interaction=batchmode $tempDir/$filename-fig");
- system("dvips $tempDir/$filename-fig");
- system("ps2pdf -dProcessColorModel=/DeviceCMYK -dPDFSETTINGS=/prepress $tempDir/$filename-fig.ps");
- system("pdfcrop $tempDir/$filename-fig.pdf $imageDir/$filename-fig-$imgNo.pdf");}
- if ($files){
- copy("$filename-fig.tex", "$imageDir/$filename-fig-$imgNo.tex");}
- system("pdfcrop $tempDir/$filename-fig.pdf $imageDir/$filename-fig-$imgNo.pdf");
- if ($eps) {
- system("pdftops -level3 -eps $imageDir/$filename-fig-$imgNo.pdf $imageDir/$filename-fig-$imgNo.eps");}
- if ($ppm) {
- system("pdftoppm -r $DPI $imageDir/$filename-fig-$imgNo.pdf $imageDir/$filename-fig-$imgNo");}
- $imgNo=$imgNo+1;
+
+if ($xetex){
+ system("xelatex -interaction=batchmode $filename");
+ system("pdfcrop -margins 1 -xetex $filename.pdf $imageDir/$filename-$imgNo.pdf");
+ }
+else{
+ system("latex -interaction=batchmode $filename");
+ system("dvips -q -Ppdf $filename");
+ system("ps2pdf $PS2 $filename.ps");
+ system("pdfcrop -margins 1 $filename.pdf $imageDir/$filename-$imgNo.pdf");
+ }
+if ($files){
+ copy("$filename.tex", "$imageDir/$filename-$imgNo.tex");
}
-}
+
+if ($eps) {
+ if ($^O eq 'MSWin32'){
+ system("pdftops -cfg $tempDir/xpd -q -level3 -eps $imageDir/$filename-$imgNo.pdf $imageDir/$filename-$imgNo.eps");
+ }
+ else{
+ system("pdftops -q -level3 -eps $imageDir/$filename-$imgNo.pdf $imageDir/$filename-$imgNo.eps");
+ }
+ }
+if ($ppm) {
+ if ($^O eq 'MSWin32'){
+ system("pdftoppm -cfg xpd -q -r $DPI $imageDir/$filename-$imgNo.pdf $imageDir/$filename-$imgNo");
+ }
else{
-#----------------- Creating files.tex and .eps for images --------------
+ system("pdftoppm -q -r $DPI $imageDir/$filename-$imgNo.pdf $imageDir/$filename-$imgNo");
+ }
+ }
+
+ $imgNo=$imgNo+1;
+}
+#------------------- Copy files.tex for images in default mode ---------
sub runTeX{
my $filename = pop;
- if ($eps){
- system("pdftops -level3 -eps $imageDir/$filename-$imgNo.pdf $imageDir/$filename-$imgNo.eps");
- }
if ($files){
- copy("$filename.tex", "$imageDir/$filename-$imgNo.tex");
-}
- $imgNo=$imgNo+1;
+ copy("$filename.tex", "$imageDir/$filename-$imgNo.tex");
}
+ $imgNo=$imgNo+1;
}
+
+#------------------ Create files.tex for images --------------
sub runFile {
+
my $filename = pop;
my @PSarray = searchPS();
+
if ( $verbose ) {
LOG("---->PSarray---->");
for my $aref ( @PSarray ) {
@@ -458,33 +448,47 @@
close $FILEsub;
close $FILEp;
if ($single) {
- runsingle("$name");
- }
- else{
- runTeX("$tempDir/$name-fig");
- }
-}
+ runsingle("$tempDir/$filename-fig");
+ }
+ else{runTeX("$tempDir/$filename-fig");}
+ }
}
+LOG ("runpdfTeX ... ");
+runpdfTeX("$path$name",$name);
+LOG ("all finished ... :-)");
+
# ----------------Renaming ppm need for correct name
if(!$noImages){
my $dren = "$tempDir/$imageDir";
- my $fichero = '';
+ my $fich = '';
my $ppmren = '';
+ my $PPMno = 1;
my $renNo = 1;
- if(opendir(DIR,$dren)){
+ if(opendir(DIR,$dren)){
foreach (readdir DIR){
- $fichero = $_;
- if ( $fichero =~ /($name-fig-)(\d+|\d+[-]\d+).ppm/) {
+ $fich = $_;
+ if ( $fich =~ /($name-fig-)(\d+|\d+[-]\d+).ppm/) {
my $renNo = int($2);
my $newname="$1$renNo.ppm";
- $ppmren = rename("$dren/$fichero","$dren/$newname");
- }
+ $ppmren = rename("$dren/$fich","$dren/$newname");
+ if($jpg){
+ system("convert $imageDir/$name-fig-$renNo.ppm $imageDir/$name-fig-$renNo.jpg");
+ }
+ if($png){
+ system("convert $imageDir/$name-fig-$renNo.ppm $imageDir/$name-fig-$renNo.png");
+ }
+ }
+ }
}
-}
closedir DIR;
-}# end renaming
-#--------------------------- Replace files----------------------
+ if($clear){
+ unlink <$imageDir/*.ppm>;
+ }
+}# end renaming ppm
+
+#------------------ Replace pst enviroment for images---------
sub runpdfTeX() {
+
my ($name,$pdfname) = @_;
open my $PDF,'>',"$tempDir/$pdfname-pdf.tex";
open my $FILE,'<',"$name.tex";
@@ -492,7 +496,7 @@
my $IMGno = 1;
my $depth = -1;
my $type = -1;
- my $EndDocument = 0; # ignore all after \end{document}
+ my $EndDocument = 0; # ignore all after \end{document}
my $iVerb = 0;
while (<$FILE>) { # scan the input file
if ( !$iVerb ) {
@@ -564,7 +568,77 @@
} # while (<$FILE>)
close $FILE;
close $PDF;
-#------------------- Coment pst-package for pdfLaTeX --------------------
+# ------------- Create one file contain all pst (default mode) ----------------
+if (!$single==!$noImages){
+my ($name,$pdfname) = @_;
+my @PSTarray = searchPS();
+my @pstfiles = glob("$imageDir/*.tex");
+@pstfiles =
+ map { $_->[1] }
+ sort { $a->[0] <=> $b->[0] }
+ map { [ ($_ =~ /(\d+)\.tex$/), $_ ] }
+ @pstfiles;
+my @container;
+for my $archivo (@pstfiles) {
+
+ open my $FH, '<:crlf', $archivo; # EOL
+ my $tex = join q{}, <$FH>; #
+ close $FH;
+ my($pstimg) = $tex =~ m/\\begin\{document\}\n(.+?)\n\\end\{document\}/sm;
+ push @container, $pstimg if $pstimg;
+}
+open my $FILE,'<',"$tempDir/$name.preamble";
+open my $OUTPST,'>',"$tempDir/$name-pst.tex";
+ while (<$FILE>) {print $OUTPST $_; }
+ print $OUTPST "\\newenvironment{postscript}{}{}\n";
+ print $OUTPST "\\pagestyle{empty}\n";
+ print $OUTPST "\\begin{document}\n";
+my $fig = 1;
+for my $item (@container) {
+ print $OUTPST $item;
+ print $OUTPST "\n%fig" . "$fig\n";
+ print $OUTPST "\\newpage\n";
+ $fig++;
+}
+ print $OUTPST "\\end{document}";
+ close $OUTPST;
+ close $FILE;
+# close all
+# -------------------- Compiling File using pdftk ----------------------
+my ($name,$pdfname) = @_;
+if ($xetex){
+ system("xelatex -interaction=batchmode $tempDir/$pdfname-pst.tex");
+ system("pdfcrop -xetex $tempDir/$name-pst.pdf $tempDir/$pdfname-pst.pdf");
+ }
+else{
+ system("latex -interaction=batchmode $tempDir/$pdfname-pst");
+ system("dvips -q -Ppdf $tempDir/$pdfname-pst");
+ system("ps2pdf $PS2 $tempDir/$pdfname-pst.ps $tempDir/$pdfname-pst.pdf");
+ system("pdfcrop -margins 1 $tempDir/$pdfname-pst.pdf $tempDir/$pdfname-pst.pdf");
+ }
+ system("pdftk $tempDir/$pdfname-pst.pdf burst output $imageDir/$pdfname-fig-\%1d.pdf");
+if ($eps){
+for my $fichero_pdf (<$imageDir/*.pdf>) {
+ (my $fichero_eps = $fichero_pdf) = s/ppm$/png/i;
+ if ($^O eq 'MSWin32'){
+ system("pdftops -cfg xpd -q -level3 -eps $fichero_pdf $fichero_eps"); # conversión
+ }
+ else{
+ system("pdftops -q -level3 -eps $fichero_pdf $fichero_eps"); # conversión
+ }
+ }
+}
+if ($ppm){
+ if ($^O eq 'MSWin32'){
+ system("pdftoppm -cfg xpd -q -r $DPI $tempDir/$pdfname-pst.pdf $imageDir/$pdfname-fig");
+ }
+ else{
+ system("pdftoppm -q -r $DPI $tempDir/$pdfname-pst.pdf $imageDir/$pdfname-fig");
+ }
+ }
+ }
+
+#---------------- Coment pst-package in file-pdf.tex for (pdf/Xe)LaTeX ----------------
open my $IPDF,'<', "$tempDir/$pdfname-pdf.tex";
undef $/; # read all file
my ($uno,$dos) = split(/\\begin\{document\}/,<$IPDF>,2);
@@ -591,15 +665,22 @@
open my $OPDF,'>',"$tempDir/$pdfname-pdf.tex"; # write changes
print $OPDF $clean;
close $OPDF;
-# ------------------------- close coment pst-package ------------------------------
+
my $runAgain = 0;
- if ($norun){print "Done\n";}
- else {
- if($xetex){
- system("xelatex -interaction=batchmode $tempDir/$pdfname-pdf"); print "Done\n";}
- else{
- system("pdflatex -interaction=batchmode $tempDir/$pdfname-pdf"); print "Done\n";}
- }
+
+ if($xetex){ # xelatex mode
+ if ($noImages){print "The file $pdfname-pdf.tex are created (Xe)LaTeX\n";}
+ else{
+ system("xelatex -interaction=batchmode $tempDir/$pdfname-pdf");
+ print "Done, compiled $pdfname-pdf.tex using (Xe)LaTeX\n";}}
+ else{ #pdflatex mode
+ if ($noImages){
+ print "The file $pdfname-pdf.tex are created (pdf)LaTeX\n";}
+ else{
+ system("pdflatex -interaction=batchmode $tempDir/$pdfname-pdf.tex");
+ print "Done, compiled $pdfname-pdf.tex using (pdf)LaTeX\n";}
+ }
+
if (-e "$tempDir/$pdfname-pdf.idx") {
system("makeindex $tempDir/$pdfname-pdf.idx"); $runAgain++;}
if ($runBibTeX && -e "$tempDir/$pdfname-pdf.aux") {
@@ -612,47 +693,37 @@
else{
system("pdflatex -interaction=batchmode $tempDir/$pdfname-pdf");}
}
- if ($ppm){
- print "If you need to create jpg/png/svg type cd $imageDir and run\n";
- print "mogrify -format [ext] *.ppm\n";
- }
+
if ($clear) {
- if ($norun){}
- if ($single) {
- unlink "$tempDir/$name-fig.pdf";
- if(!$xetex){
- unlink "$tempDir/$name-fig.dvi";
- unlink "$tempDir/$name-fig.ps";
- }
- unlink "$tempDir/$name-fig.aux";
- unlink "$tempDir/$name-fig.log";
- unlink "$tempDir/$name-fig.tex";
- if(!$verbose) {
- unlink "$tempDir/$name.plog";
- }
- unlink "$tempDir/$name.preamble";
- unlink "$tempDir/$name-pdf.aux";
- unlink "$tempDir/$name-pdf.log";
- }
- else{
- if(!$verbose) {
- unlink "$tempDir/$name.plog";
- }
unlink "$tempDir/$name.preamble";
unlink "$tempDir/$name-pdf.aux";
unlink "$tempDir/$name-pdf.log";
- unlink "$tempDir/$name-pics.pdf";
- unlink "$tempDir/$name-pics.tex";
- unlink "$tempDir/$name-pics.aux";
- if(!$xetex){
- unlink "$tempDir/$name-pics.dvi";
- unlink "$tempDir/$name-pics.ps";}
- unlink "$tempDir/$name-pics.log";
unlink "$tempDir/$name-fig.tex";
- }
+ if ($eps or $ppm){
+ if ($^O eq 'MSWin32'){unlink "$tempDir/xpd";}
+ }
+ if(!$verbose) {unlink "$tempDir/$name.plog";}
+ if ($single) {#comon
+ unlink "$tempDir/$name-fig.pdf";
+ unlink "$tempDir/$name-fig.aux";
+ unlink "$tempDir/$name-fig.log";
+ if($xetex){ }
+ else{
+ unlink "$tempDir/$name-fig.dvi";
+ unlink "$tempDir/$name-fig.ps";}
+ }
+ else{ #clean for pdftk mode
+ unlink "$tempDir/$name-pst.log";
+ unlink "$tempDir/$name-pst.pdf";
+ unlink "$tempDir/$name-pst.aux";
+ if($xetex){ }
+ else{
+ unlink "$tempDir/$name-pst.dvi";
+ unlink "$tempDir/$name-pst.ps";
}
}
-
+}
+}
sub LOG() {
if ( $verbose ) { print $LOGfile "@_\n"; }
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pst2pdf.tlpobj new/tlpkg/tlpobj/pst2pdf.tlpobj
--- old/tlpkg/tlpobj/pst2pdf.tlpobj 2013-03-11 04:37:24.000000000 +0100
+++ new/tlpkg/tlpobj/pst2pdf.tlpobj 2013-07-07 03:20:03.000000000 +0200
@@ -1,6 +1,6 @@
name pst2pdf
category Package
-revision 29333
+revision 31118
shortdesc A script to compile pstricks documents via pdftex.
longdesc The script extracts the preamble of the document and runs all
longdesc \begin{postscript}...\end{postscript}
@@ -12,9 +12,9 @@
longdesc include the processed snippets. Detail documentation is
longdesc acquired from the document itself via Perldoc.
depend pst2pdf.ARCH
-runfiles size=6
+runfiles size=7
texmf-dist/scripts/pst2pdf/pst2pdf.pl
catalogue-ctan /graphics/pstricks/scripts/pst2pdf
-catalogue-date 2013-03-10 15:10:17 +0100
+catalogue-date 2013-07-06 19:43:54 +0200
catalogue-license gpl
-catalogue-version 0.14
+catalogue-version 0.15
++++++ pstool.doc.tar.xz ++++++
++++ 20597 lines of diff (skipped)
++++++ pstool.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pstool/pstool.sty new/tex/latex/pstool/pstool.sty
--- old/tex/latex/pstool/pstool.sty 2013-03-12 00:21:52.000000000 +0100
+++ new/tex/latex/pstool/pstool.sty 2014-05-14 00:11:05.000000000 +0200
@@ -1,6 +1,6 @@
% TODO: convert this package into expl3 syntax (will save many lines of code).
-\ProvidesPackage{pstool}[2013/03/11 v1.5a
+\ProvidesPackage{pstool}[2014/05/11 v1.5c
Wrapper for processing PostScript/psfrag figures]
% External packages:
@@ -58,7 +58,19 @@
}
\ExecuteOptionsX{mode=batch}
-\DeclareOptionX{cleanup}{\def\pstool@rm@files{#1}}
+\DeclareOptionX{cleanup}{%
+ \edef\pstool@rm@files{\zap@space #1 \@empty}%
+ \@for\@ii:=\pstool@rm@files\do{%
+ \edef\@tempa{\@ii}%
+ \def\@tempb{.aux}%
+ \ifx\@tempa\@tempb
+ \PackageWarning{pstool}{^^J\space\space%
+ You have requested that ".aux" files be deleted.^^J\space\space
+ Cross-referencing within pstool graphics therefore disabled.^^J%
+ This warning occurred}
+ \fi
+ }
+}
\ExecuteOptionsX{cleanup={.tex,.dvi,.ps,.pdf,.log}}
\DeclareOptionX{suffix}{\def\pstool@suffix{#1}}
@@ -165,6 +177,18 @@
}{}%
}
+% Copy a file if it exists:
+% #1: path
+% #2: filename
+% #3: new filename
+\newcommand\pstool@cp[3]{%
+ \IfFileExists{#1#2}{%
+ \immediate\write18{%
+ cd "#1"\pstool@cmdsep\pstool@cp@cmd "#2" "#3"
+ }%
+ }{}%
+}
+
% Generic function to execute a command on the shell and pass its exit status back into \LaTeX. Any number of \cmd\pstool@exe\ statements can be made consecutively followed by \cmd\pstool@endprocess, which also takes an argument. If \emph{any} of the shell calls failed, then the execution immediately skips to the end and expands \cmd\pstool@error\ instead of the argument to \cmd\pstool@endprocess.
% #1: `name' of process
% #2: relative path where to execute the command
@@ -390,10 +414,10 @@
\fi
% Finish up: (implies success!)
\pstool@endprocess{%
- \pstool@cleanup
\pstool@includegraphics{\pstool@path\pstool@filestub}%
% Emulate \cs{include} (sort of) and have the main document load the auxiliary aux file, in a manner of speaking:
\pstool@write@aux
+ \pstool@cleanup
}%
\pstool@echo@verbose{^^J=== pstool: end processing ===^^J}%
\endgroup
@@ -443,9 +467,11 @@
% We need to cache the aux file, so here goes.
% This is because the aux file is cleared for writing after \cs{begin{document}}.
-\IfFileExists{\jobname.oldaux}{\immediate\write18{\pstool@rm@cmd \jobname.oldaux}}{}
-\immediate\write18{\pstool@cp@cmd \jobname.aux \jobname.oldaux}
-\AtEndDocument{\immediate\write18{\pstool@rm@cmd \jobname.oldaux}}
+\ifpdf
+ \pstool@rm{}{\jobname.oldaux}
+ \pstool@cp{}{\jobname.aux}{\jobname.oldaux}
+ \AtEndDocument{\pstool@rm{}{\jobname.oldaux}}
+\fi
\edef\pstool@auxmarker#1{\string\@percentchar\space <#1PSTOOLLABELS>}
\edef\pstool@auxmarker@text#1{\@percentchar <#1PSTOOLLABELS>}
@@ -457,13 +483,9 @@
\edef\pstool@label{pstool-\pstool@path\pstool@filestub}%
\protected@write\@auxout{}%
{\string\newlabel{\pstool@label}{{\@currentlabel}{\the\c@page}}}%
-% And copy the main file's bbl file too: (necessary only for biblatex)
- \IfFileExists{\jobname.bbl}{%
- \IfFileExists{\pstool@path\pstool@jobname.bbl}{%
- \immediate\write18{\pstool@rm@cmd \pstool@path\pstool@jobname.bbl}%
- }{}%
- \immediate\write18{\pstool@cp@cmd \jobname.bbl \pstool@path\pstool@jobname.bbl}%
- }{}%
+% And copy the main file's bbl file too: (necessary only for biblatex but do it always)
+ \pstool@rm{\pstool@path}{\pstool@jobname.bbl}%
+ \pstool@cp{}{\jobname.bbl}{\pstool@path\pstool@jobname.bbl}%
% Scan the main document line by line; print preamble into auxiliary file until the document begins or \cs{EndPreamble} is found:
\endlinechar=-1
\def\@tempa{\pdfoutput=0\relax}%
@@ -507,10 +529,12 @@
}^^J%
\fi
% And the document body to place the graphic on a page of its own:
- \noexpand\@input{\jobname.oldaux}^^J^^J%
+ \noexpand\@input{\jobname.oldaux}^^J%
+ \noexpand\makeatother^^J^^J%
\noexpand\begin{document}^^J%
+ \noexpand\makeatletter^^J%
\unexpanded{\immediate\write\@mainaux}{\pstool@auxmarker*}^^J%
- \noexpand\makeatother^^J%
+ \noexpand\makeatother^^J^^J%
\unexpanded{%
\centering\null\vfill^^J%
}%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pstool.tlpobj new/tlpkg/tlpobj/pstool.tlpobj
--- old/tlpkg/tlpobj/pstool.tlpobj 2013-03-12 04:38:53.000000000 +0100
+++ new/tlpkg/tlpobj/pstool.tlpobj 2014-05-14 03:24:38.000000000 +0200
@@ -1,6 +1,6 @@
name pstool
category Package
-revision 29343
+revision 34015
shortdesc Support for psfrag within pdfLaTeX.
relocated 1
longdesc The package works in the same sort of way as pst-pdf, but it
@@ -17,6 +17,6 @@
runfiles size=5
RELOC/tex/latex/pstool/pstool.sty
catalogue-ctan /macros/latex/contrib/pstool
-catalogue-date 2013-03-11 10:36:18 +0100
+catalogue-date 2014-05-11 12:42:16 +0200
catalogue-license lppl
-catalogue-version 1.5a
+catalogue-version 1.5c
++++++ pstools.doc.tar.xz ++++++
Files old/texmf-dist/doc/man/man1/bbox.man1.pdf and new/texmf-dist/doc/man/man1/bbox.man1.pdf differ
Files old/texmf-dist/doc/man/man1/ps2eps.man1.pdf and new/texmf-dist/doc/man/man1/ps2eps.man1.pdf differ
Files old/texmf-dist/doc/man/man1/ps2frag.man1.pdf and new/texmf-dist/doc/man/man1/ps2frag.man1.pdf differ
Files old/texmf-dist/doc/man/man1/pslatex.man1.pdf and new/texmf-dist/doc/man/man1/pslatex.man1.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pstools.doc.tlpobj new/tlpkg/tlpobj/pstools.doc.tlpobj
--- old/tlpkg/tlpobj/pstools.doc.tlpobj 2013-04-09 03:40:40.000000000 +0200
+++ new/tlpkg/tlpobj/pstools.doc.tlpobj 2014-04-29 03:34:37.000000000 +0200
@@ -1,6 +1,6 @@
name pstools.doc
category TLCore
-revision 29764
+revision 33736
shortdesc doc files of pstools
docfiles size=20
texmf-dist/doc/man/man1/bbox.1
++++++ pstools.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pstools.tlpobj new/tlpkg/tlpobj/pstools.tlpobj
--- old/tlpkg/tlpobj/pstools.tlpobj 2013-04-09 03:40:40.000000000 +0200
+++ new/tlpkg/tlpobj/pstools.tlpobj 2014-04-29 03:34:37.000000000 +0200
@@ -1,6 +1,6 @@
name pstools
category TLCore
-revision 29764
+revision 33736
catalogue ps2eps
shortdesc Produce Encapsulated PostScript from PostScript.
longdesc Produce Encapsulated PostScript Files (EPS/EPSF) from a one-
++++++ pstricks-add.doc.tar.xz ++++++
++++ 66975 lines of diff (skipped)
++++++ pstricks-add.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks-add/pstricks-add.tex new/tex/generic/pstricks-add/pstricks-add.tex
--- old/tex/generic/pstricks-add/pstricks-add.tex 2013-01-07 00:51:31.000000000 +0100
+++ new/tex/generic/pstricks-add/pstricks-add.tex 2014-05-18 23:48:45.000000000 +0200
@@ -1,5 +1,4 @@
-%% $Id: pstricks-add.tex 741 2013-01-01 16:08:58Z herbert $
-%%
+%% $Id: pstricks-add.tex 914 2014-05-17 20:02:53Z herbert $
%%
%% This is file `pstricks-add.tex',
%%
@@ -31,8 +30,8 @@
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi
\ifx\PSTmathLoaded\endinput\else \input pst-math \fi
%
-\def\fileversion{3.60}
-\def\filedate{2013/01/01}
+\def\fileversion{3.68}
+\def\filedate{2014/05/17}
\message{`pstricks-add' v\fileversion, \filedate\space (dr,hv)}
%
\edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax
@@ -340,6 +339,40 @@
%
%
% -------------- the arrow part -------------
+%
+\def\psBigArrow{\pst@object{psBigArrow}}
+\def\psBigArrow@i(#1)(#2){%
+ \addbefore@par{doublesep=1cm}
+ \begin@ClosedObj
+ \pssetlength\pst@dimm{\psdoublesep}
+ \pst@getcoor{#1}\pst@tempA
+ \pst@getcoor{#2}\pst@tempB
+ \addto@pscode{
+ /Width \pst@number\pst@dimm def
+ \pst@tempA % x y
+ \pst@tempB % x y
+ exch % x y y x
+ 4 -1 roll % y y x x
+ sub % y y dx
+ 3 1 roll % dx y y
+ sub % dx dy
+ exch % dy dx
+ atan neg % alpha
+ \pst@tempA
+ translate
+ rotate
+ 0 0 moveto
+ 0 Width 2 div rlineto % |
+ \pst@tempB \pst@tempA Pyth2 Width 1.5 mul sub 0 rlineto
+ 0 Width 1.5 div rlineto
+ Width 1.5 mul dup neg rlineto
+ Width 1.5 mul neg dup rlineto
+ 0 Width 1.5 div rlineto
+ \pst@tempB \pst@tempA Pyth2 neg Width 1.5 mul add 0 rlineto
+ closepath
+ }%
+ \end@ClosedObj
+}
% the original table
% \def\pst@arrowtable{,<->,<<->>,>-<,>>-<<,(-),[-],)-(,]-[,|>-<|}
%
@@ -1126,6 +1159,7 @@
\def\psRelNode{\pst@object{psRelNode}}
\def\psRelNode@i(#1)(#2)#3#4{{% A - B - factor - node name
\use@par
+% \pst@killglue
\pst@getcoor{#1}\pst@tempA%
\pst@getcoor{#2}\pst@tempB%
\pnode(!
@@ -1143,7 +1177,7 @@
/beta Alpha AlphaStrich add def
laenge beta cos mul XA add
laenge beta sin mul \ifPst@trueAngle\space unit div \fi\space YA add ){#4}%
-}}
+}\ignorespaces}
%
\def\psRelLine{\def\pst@par{}\pst@object{psRelLine}}
\def\psRelLine@i{\@ifnextchar({\psRelLine@iii}{\psRelLine@ii}}
@@ -1277,6 +1311,8 @@
\else\ifx#1s\let\psk@StepType\f@ur
\else\let\psk@StepType\tw@\fi\fi\fi\fi}
\psset{StepType=lower} % alternative StepType=upper/inf/sup/Riemann
+\define@boolkey[psset]{pstricks-add}[Pst@]{noVerticalLines}[true]{}%
+\psset{noVerticalLines=false}
%
\def\psStep{\def\pst@par{}\pst@object{psStep}}
\def\psStep@i(#1,#2)#3#4{%
@@ -1290,19 +1326,23 @@
\ifcase\psk@StepType % 0->lower, height is always f(x)
x scx 0 moveto
#3 {
- \ifPst@algebraic Func \else #4 \fi scy dup x scx exch lineto
+ \ifPst@algebraic Func \else #4 \fi
+ scy dup x scx exch \ifPst@noVerticalLines moveto \else lineto \fi
/x x dx add def
- x scx exch lineto x scx 0 lineto
+ x scx exch lineto
+ x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
} repeat
\or % 1-> upper, height is always f(x+dx)
x scx 0 moveto
#3 {
/x x dx add def
- \ifPst@algebraic Func \else #4 \fi scy dup x dx sub scx exch lineto
- x scx exch lineto x scx 0 lineto
+ \ifPst@algebraic Func \else #4 \fi scy dup x dx sub scx exch
+ \ifPst@noVerticalLines moveto \else lineto \fi
+ x scx exch lineto
+ x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
} repeat
\or % 2-> Riemann
- /eps3 100 def
+ /eps3 500 def %% increased from 100 to 500 20140507
/xMinMax [] def
/AMax [] def
/AMin [] def
@@ -1320,32 +1360,42 @@
/x t def % restore
x scx Min scy Max scy xMinMax aload length 3 add array astore /xMinMax exch def
/x x dx add def
+ closepath
} repeat
/dx dx scx def
xMinMax aload length 3 div cvi {
/yMax ED /yMin ED /x ED
- x yMin moveto dx 0 rlineto x dx add yMax lineto
- dx neg 0 rlineto x yMin lineto } repeat
+ x yMin moveto
+ dx 0 \ifPst@noVerticalLines rmoveto \else rlineto \fi
+ x dx add yMax lineto
+ dx neg 0 \ifPst@noVerticalLines rmoveto \else rlineto \fi
+ x yMin \ifPst@noVerticalLines moveto \else lineto \fi
+ closepath
+ } repeat
\or % 3->inf(imum)
- x scx 0 moveto
#3 {
+ x scx 0 moveto
\ifPst@algebraic Func \else #4 \fi /y0 ED % left value f(x)
/xOld x def
/x x dx add def
\ifPst@algebraic Func \else #4 \fi /y1 ED % right value f(x+dx)
y0 y1 lt { y0 }{ y1 } ifelse % use infimum
- scy dup xOld scx exch lineto
- x scx exch lineto x scx 0 lineto
+ scy dup xOld scx exch \ifPst@noVerticalLines moveto \else lineto \fi
+ x scx exch lineto
+ x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
+ closepath
} repeat
\or % 4-> sup(remum)
- x scx 0 moveto
#3 {
+ x scx 0 moveto
\ifPst@algebraic Func \else #4 \fi /y0 ED % left value f(x)
/x x dx add def
\ifPst@algebraic Func \else #4 \fi /y1 ED % right value f(x+dx)
y0 y1 gt { y0 }{ y1 } ifelse % use supremum
- scy dup x dx sub scx exch lineto
- x scx exch lineto x scx 0 lineto
+ scy dup x dx sub scx exch \ifPst@noVerticalLines moveto \else lineto \fi
+ x scx exch lineto
+ x scx 0 \ifPst@noVerticalLines moveto \else lineto \fi
+ closepath
} repeat
\fi
}%
@@ -1443,42 +1493,41 @@
\def\psplotTangent{\@ifnextchar*{\@startrue\psplotTangent@i}{\@starfalse\psplotTangent@i*}}
\def\psplotTangent@i*{\@ifnextchar[{\psplotTangent@ii}{\psplotTangent@ii[]}}
\def\psplotTangent@ii[#1]#2#3#4{%
- \pst@killglue%
- \expandafter\psplotTangent@x#3,,\@nil\relax%
- \begingroup%
+ \pst@killglue
+ \expandafter\psplotTangent@x#3,,\@nil\relax
+ \begingroup
\ifx\relax#1\relax\else\psset{linestyle=solid,#1}\fi%
- \ifx\psk@Derive\@empty\ifPst@algebraic\def\psk@Derive{NOT@EMPTY}\fi\fi%%dr 0606 hv 1003
- \pst@addarrowdef%
- \addto@pscode{%
+ \ifx\psk@Derive\@empty\ifPst@algebraic\def\psk@Derive{NOT@EMPTY}\fi\fi %%dr 0606 hv 1003
+ \pst@addarrowdef
+ \addto@pscode{
/F@pstplot \ifPst@algebraic (#4) tx@addDict begin AlgParser end cvx \else { #4 } \fi def % define function
\ifx\psk@Derive\@empty\else
- \ifx\psk@Derive\@NOTEMPTY\else%%dr 0606
- /FDer@pstplot % do we have a derivation defined?
+ \ifx\psk@Derive\@NOTEMPTY\else %%dr 0606
+ /FDer@pstplot % do we have a derivation defined?
\ifPst@algebraic (\psk@Derive) tx@addDict begin AlgParser end cvx \else { \psk@Derive } \fi def % define derivation
- \fi%%dr 0606
+ \fi %%dr 0606
\fi%
- /@parametric false def %%dr 0606
+ /@parametric false def %%dr 0606
% first we calculate the origin
- #2 dup /x ED /t ED tx@addDict begin mark F@pstplot end counttomark 1 gt % test, if we have parametricplot
- %%{ /y ED /x ED } % if yes, then we have 2 values
- { /y ED /x ED /@parametric true def } % if yes, then we have 2 values%%dr 0606
+ #2 dup /x ED /t ED tx@addDict begin mark F@pstplot end counttomark 1 gt % test, if we have parametricplot
+ { /y ED /x ED /@parametric true def } % if yes, then we have 2 values %%dr 0606
{ \ifPst@polarplot x \ifPst@algebraic RadtoDeg \fi PtoC /y ED /x ED \else /y ED \fi } ifelse
cleartomark
- \ifx\psk@Derive\@NOTEMPTY %%begin dr 0606
- %% algebraic we can use the derivative machine
+ \ifx\psk@Derive\@NOTEMPTY %%begin dr 0606
+ %% algebraic we can use the derivative machine
/FDer@pstplot (#4) @parametric { (t) } { (x) } ifelse
tx@Derive begin Derive end tx@addDict begin AlgParser end cvx def
- \fi %%end dr 0606
+ \fi %%end dr 0606
x \pst@number\psxunit mul y \pst@number\psyunit mul
translate % define the temporary origin
% now we calculate the slope of the tangent
- \ifx\psk@Derive\@empty% de we have a derivation defined?
- #2 abs 1.0e-6 lt % no, we choose secant for the tangent
+ \ifx\psk@Derive\@empty % de we have a derivation defined?
+ #2 abs 1.0e-6 lt % no, we choose secant for the tangent
{ #2 0.0005 add dup /x ED /t ED tx@addDict begin mark F@pstplot end counttomark 1 gt % test, if we have parametricplot
- { /y2 ED /x2 ED } % we have 2 values
+ { /y2 ED /x2 ED } % we have 2 values
{ \ifPst@polarplot dup x \ifPst@algebraic RadtoDeg \fi
cos mul /x2 ED x \ifPst@algebraic RadtoDeg \fi sin mul \else /x2 x def \fi /y2 ED } ifelse
- cleartomark % delete the mark
+ cleartomark % delete the mark
#2 0.0005 sub dup /x ED /t ED tx@addDict begin mark F@pstplot end counttomark 1 gt % test, if we have parametricplot
{ /y1 ED /x1 ED }
{ \ifPst@polarplot dup x \ifPst@algebraic RadtoDeg \fi
@@ -1587,7 +1636,7 @@
\ifPst@saveData /Pst@data (\psk@filename) (w) file def \fi
/x #1 def % first value
/x1 #2 def % last value
- \ifPst@GetFinalState \Begin@SaveFinalState /y SaveFinalState def
+ \ifPst@GetFinalState \Begin@SaveFinalState /y FinalState def
\else /y [ #3 ] def \fi % values for t=0
/ylength y length def % number of elements in #3
/addvect {
@@ -2256,12 +2305,13 @@
\pstVerb{tx@Dict begin
\pst@tempA
\pst@number\psyunit div /cp.Y exch def
- \pst@number\psxunit div /cp.X exch def end }}
+ \pst@number\psxunit div /cp.X exch def end }\ignorespaces}
%
\def\psVector{\pst@object{psVector}}
\def\psVector@i(#1){%
\pst@killglue%
\addbefore@par{arrows=->,arrowsize=6pt}%
+% \addto@par{showpoints=false}%
\pst@getcoor{#1}\pst@tempCoor%
\begingroup
\use@par%
@@ -2337,10 +2387,9 @@
\@cmd}\ignorespaces}%
%
\def\psEllipseTangentsN(#1)(#2)(#3)#4{% (xe,ye)(a,b)(xP,yP){basename} % no optional arguments
- \pst@killglue%
- \pnode(#1){E@Cntr}% center of ellipse
- \pnode(#2){@@TMP}% semimajor, semiminor
- \pnode(#3){@@@TMP}% viewpt
+ \pst@killglue
+% \pst@getcoor{#1}\pst@tempA
+ \pnodes(#1){E@Cntr}(#2){@@TMP}(#3){@@@TMP}% (center)(semimajor, semiminor)(viewpt)
\pst@getcoor{#3}\my@tempC% external viewpoint
\AtoB(E@Cntr)(@@@TMP){@TMP}% center to viewpoint
\ifnum\Pst@Debug>0
@@ -2349,16 +2398,17 @@
\shownode(@@@TMP)%
\fi%
\pnode(!
+ \psGetNodeCenter{E@Cntr}\space
+ /Xc E@Cntr.x def /Yc E@Cntr.y def
\psGetNodeCenter{@@TMP}\space
- /B @@TMP.y def% semiminor
- /A @@TMP.x def% semimajor
- /A2 A dup mul def /B2 B dup mul def
- /C2 B A div dup mul def
+ /B @@TMP.y def % semiminor
+ /A @@TMP.x def % semimajor
\psGetNodeCenter{@TMP}\space
/Xp @TMP.x def /Yp @TMP.y def % center to viewpoint
+%
+ /A2 A dup mul def /B2 B dup mul def
+ /C2 B A div dup mul def
/Xp2 Xp dup mul def /Yp2 Yp dup mul def
- \psGetNodeCenter{E@Cntr}\space
- /Xc E@Cntr.x def /Yc E@Cntr.y def
/R Xp2 A2 sub C2 mul Yp2 add Sqrt def % R=Sqrt{(Xp2-A2) C2 + Yp2}
/Q C2 Xp2 mul Yp2 add def % C2 Xp2 + Yp2
/Xta B2 Xp mul A Yp R mul mul sub Q div def
@@ -2367,7 +2417,12 @@
/Ytb Yp Xp R mul A div sub B2 mul Q div def
0 Xta Yp mul Yta Xp mul sub gt % swap a, b
{ /A Xta def /B Yta def /Xta Xtb def /Yta Ytb def /Xtb A def /Ytb B def } if
- Xta Xc add Yta Yc add ) {#42}%
+ Xta Xc add %/xTemp ED
+ Yta Yc add %/yTemp ED
+% xTemp Xc yTemp Yc Pyth2 /Length ED
+% xTemp Xc sub yTemp Yc sub exch atan 0 add Length exch PtoC
+% Yc add exch Xc add exch
+ ) {#42}%
\pnode(! Xtb Xc add Ytb Yc add ) {#41}%
\ignorespaces}%
%
@@ -2433,6 +2488,48 @@
\multido{\iA=0+1}{#1}{\rput{\psk@@rotate}(0,0){\psline(0,0)(#2;\iA)}}%
}\ignorespaces}%
%
+\define@key[psset]{pstricks-add}{colSteps}{\def\psk@colSteps{#1 }}
+\define@boolkey[psset]{pstricks-add}[Pst@]{colored}[true]{}
+\psset[pstricks-add]{colSteps=0,colored=false}% continuing colors and grayscale
+%
+\def\pstContour{\pst@object{pstContour}}
+\def\pstContour@i#1{%
+\begin@SpecialObj%
+ \addto@pscode{
+ (#1) run
+ /zMax 0 def /zMin 0 def % lowest and highest value
+ contourdata aload length /N ED % get the no of arrays
+ N{ % inside contourdata
+ /data ED % save first inner array
+ data aload length 3 div round cvi { % get the records
+ dup zMin lt % z
/TrigoFunc {
dup (cos) eq 1 index (sin) eq or exch (tan) eq or
- { /ExpressionVector ExpressionVector aload length Pi /div cvx 180 /mul cvx 5 -1 roll 4 add
+ { /ExpressionVector ExpressionVector aload length 3.1415926 /div cvx 180 /mul cvx 5 -1 roll 4 add
array astore def
} if
} def
@@ -568,6 +570,10 @@
PreCommonFunc
{ (1/\(1+\() StrConcat 5 index StrConcat (\)^2\)\)) StrConcat } if
PostCommonFunc } def
+/EvalFunc_floor {%
+ PreCommonFunc
+ { dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/\() StrConcat 5 index StrConcat AddClPar } if
+ PostCommonFunc } def
/EvalFunc_ln {%
PreCommonFunc
{ dup 0 eq { (1) StrConcat } { 1 sub } ifelse (/\() StrConcat 5 index StrConcat AddClPar } if
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pstricks/pst-dots.pro new/dvips/pstricks/pst-dots.pro
--- old/dvips/pstricks/pst-dots.pro 2010-02-12 00:48:39.000000000 +0100
+++ new/dvips/pstricks/pst-dots.pro 2013-07-12 01:28:41.000000000 +0200
@@ -1,4 +1,4 @@
-% $Id: pst-dots.pro 130 2009-08-27 08:55:03Z herbert $
+% $Id: pst-dots.pro 801 2013-07-09 18:10:41Z herbert $
%
%% PostScript prologue for pstricks.tex.
%% Version 2.02, 2009/06/16
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dvips/pstricks/pstricks.pro new/dvips/pstricks/pstricks.pro
--- old/dvips/pstricks/pstricks.pro 2013-05-22 01:04:38.000000000 +0200
+++ new/dvips/pstricks/pstricks.pro 2014-05-21 00:00:42.000000000 +0200
@@ -1,7 +1,7 @@
-% $Id: pstricks.pro 781 2013-05-21 08:25:07Z herbert $
+% $Id: pstricks.pro 919 2014-05-19 18:42:47Z herbert $
%
%% PostScript prologue for pstricks.tex.
-%% Version 1.15, 2012/10/18
+%% Version 1.23, 2014/05/15
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN archives
@@ -30,6 +30,7 @@
/Atan { /atan load stopped { pop pop 0 } if } def % return 0 if atan not known
/ATAN1 {neg -1 atan 180 sub } def % atan(x) (only one parameter)
/Div { dup 0 eq { pop } { div } ifelse } def % control the division
+/Log { dup 1e-20 lt { pop -1e30 }{ log } ifelse } def % control the log
/tan { dup cos abs 1.e-10 lt
{ pop 1.e10 } % return 1.e10 as infinit
{ dup sin exch cos div } ifelse % default sin/cos
@@ -37,6 +38,14 @@
/Tan { dup sin exch cos Div } def % sin(x)/cos(x) x in degrees
/Acos {dup dup mul neg 1 add dup 0 lt { % arc cos, returns 0 when negative root
pop pop 0 }{ sqrt exch atan} ifelse } def
+/Acos2 { 2 dict begin
+ /x ED /y ED
+ y abs 1.0e-20 lt { 1.0e30 } if
+ x y div
+ dup dup mul neg 1 add dup 0 lt { % arc cos needs two values x,y
+ pop pop 0 }{ sqrt exch atan} ifelse
+ y 0 lt { 180 add } if
+} def
/NET { neg exch neg exch T } def % change coordinate system to the negative one
/Pyth { dup mul exch dup mul add sqrt } def % Pythagoras, expects 2 parameter
/Pyth2 { % Pythagoras, xA yA xB yB
@@ -45,8 +54,10 @@
3 1 roll % yB-yA xA xB
sub % yB-yA xA-xB
Pyth } def
-/PtoC { 2 copy cos mul 3 1 roll sin mul } def % Polar to Cartesian
-/Rand { rand 4294967295 div } def % a real random number
+/PtoC { 2 copy cos mul 3 1 roll sin mul } def % Polar to Cartesian
+/PtoCab { dup cos 4 -1 roll mul 3 1 roll sin mul } def % Polar to Cartesian (Ellipse) a b phi-> x y
+%/Rand { rand 4294967295 div } def % a real random number
+/Rand { rand 2147483447 div } def % a real random number between 0 and 1
%----------------- hv added 20050516 ---------------
/PiDiv2 1.57079632680 def
/Pi 3.14159265359 def
@@ -56,10 +67,13 @@
%
/RadtoDeg { 180 mul Pi div } bind def % convert from radian to degrees
/DegtoRad { Pi mul 180 div } bind def % viceversa
-
+%
/startGlobal { true setglobal globaldict begin } bind def
/endGlobal { end false setglobal } bind def
-
+/pssetRGBcolor /setrgbcolor load def
+/pssetCMYKcolor /setcmykcolor load def
+/pssetGraycolor /setgray load def
+%
%----------------- hv end---------------------------
/PathLength@ { /z z y y1 sub x x1 sub Pyth add def /y1 y def /x1 x def } def
%
@@ -127,7 +141,6 @@
/YLength YB YA sub def
/PAngle YLength XLength Atan def
/XYLength XLength YLength Pyth def
-
%% for negative SymStep we calculate the distance
SymStep 0 lt
{ %XYLength SymStep div abs cvi
@@ -274,7 +287,6 @@
/kite_colour ED
/dart_colour ED
clip
-
newpath
gsave
100 100 translate
@@ -721,6 +733,100 @@
CurvePath
} def
%
+/CalcBezierSpline {% Christoph Bersch
+ 10 dict begin
+ /getX { Points exch 2 mul get } def
+ /getY { Points exch 2 mul 1 add get } def
+ /n Points length 1 sub 2 idiv def
+ /GetFirstControlPoints {
+ /x n array def
+ /tmp n array def
+ /b 2 def
+ x 0 rhs 0 get b div put
+ 1 1 n 1 sub {
+ /i exch def
+ tmp i 1 b div dup 4 1 roll put
+ i n 1 sub lt { 4 }{ 3.5 } ifelse exch sub /b exch def
+ x i rhs i get x i 1 sub get sub b div put
+ } for
+ 1 1 n 1 sub {
+ n exch sub
+ dup dup x exch 1 sub 2 copy 6 2 roll
+ get 3 1 roll tmp exch get
+ exch x exch get mul sub
+ put
+ } for
+ x
+ } def
+ %
+ n 1 eq {
+ 0 getX 2 mul 1 getX add 3 div
+ 0 getY 2 mul 1 getY add 3 div
+ exch dup 3 1 roll 2 mul 0 getX sub
+ exch dup 3 1 roll 2 mul 0 getY sub
+ [ 0 getX 0 getY 7 3 roll 1 getX 1 getY ] /outPoints exch def
+ } {
+ /outPoints 6 n mul 2 add array def
+ 0 1 n {
+ dup dup 6 mul dup 1 add
+ outPoints exch 5 -1 roll getY put
+ outPoints exch 3 -1 roll getX put
+ } for
+ /rhs n array def
+ 1 1 n 2 sub {
+ rhs exch dup dup getX 4 mul exch 1 add getX 2 mul add put
+ } for
+ rhs 0 0 getX 1 getX 2 mul add put
+ rhs n 1 sub dup getX 8 mul n getX add 2 div put
+ GetFirstControlPoints
+ 1 1 n 2 sub {
+ rhs exch dup dup getY 4 mul exch 1 add getY 2 mul add put
+ } for
+ rhs 0 0 getY 1 getY 2 mul add put
+ rhs n 1 sub dup getY 8 mul n getY add 2 div put
+ GetFirstControlPoints
+ 0 1 n 1 sub {
+ /i exch def
+ 2 copy
+ i get outPoints 6 i mul 3 add 3 -1 roll put
+ i get outPoints 6 i mul 2 add 3 -1 roll put
+ 2 copy
+ i n 1 sub lt {
+ i 1 add get i 1 add getY 2 mul exch sub outPoints 6 i mul 5 add 3 -1 roll put
+ i 1 add get i 1 add getX 2 mul exch sub outPoints 6 i mul 4 add 3 -1 roll put
+ }{
+ n 1 sub get n getY add 2 div outPoints 6 n 1 sub mul 5 add 3 -1 roll put
+ n 1 sub get n getX add 2 div outPoints 6 n 1 sub mul 4 add 3 -1 roll put
+ } ifelse
+ } for
+ pop pop
+ } ifelse
+ outPoints
+ end
+} def
+/Spline {
+ /showpoints ED
+ counttomark 2 div dup cvi /n ED
+ n eq not { exch pop } if
+ ] /Points ED
+ n 1 gt {
+ CalcBezierSpline
+ mark exch aload pop
+ ArrowA
+ n 2 sub {
+ 6 2 roll 4 2 roll curveto
+ } repeat
+ 6 2 roll 4 2 roll ArrowB curveto
+ } if
+} def
+/OpenSymbolSpline {
+ Spline
+ 0.1 setflat
+ /Shift Symbol stringwidth pop 2 div def
+ CurvePath
+} def
+
+%
/SQ { /r ED r r moveto r r neg L r neg r neg L r neg r L fill } def
/ST { /y ED /x ED x y moveto x neg y L 0 x L fill } def
/SP { /r ED gsave 0 r moveto 4 { 72 rotate 0 r L } repeat fill grestore } def
@@ -936,7 +1042,9 @@
/mtrx CM def
T
rotAngle rotate
- scale 0 0 1 5 3 roll arc
+ scale
+ 0 0 moveto 1 0 rmoveto % move to the start position
+ 0 0 1 5 3 roll arc
mtrx setmatrix
} def
%
@@ -1058,7 +1166,7 @@
/PutBegin { /TMatrix [ TMatrix CM ] cvx def CP 4 2 roll T moveto } def
/PutEnd { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
%
-/Uput {
+/Uput {
/a ED
add 2 div /h ED 2
div /w ED
@@ -1073,6 +1181,7 @@
} def
%
/UUput {
+ 5 dict begin
/z ED
abs /y ED
/x ED
@@ -1083,20 +1192,7 @@
a PtoC
h1 add exch
w1 add exch
-} def
-%
-/BeginOL {
- dup (all) eq exch TheOL eq or
- { IfVisible not { Visible /IfVisible true def } if }
- { IfVisible { Invisible /IfVisible false def } if } ifelse
-} def
-%
-/InitOL {
- /OLUnit [ 3000 3000 matrix defaultmatrix dtransform ] cvx def
- /Visible { CP OLUnit idtransform T moveto } def
- /Invisible { CP OLUnit neg exch neg exch idtransform T moveto } def
- /BOL { BeginOL } def
- /IfVisible true def
+ end
} def
%
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/config/README new/tex/generic/pstricks/config/README
--- old/tex/generic/pstricks/config/README 2010-02-16 02:42:59.000000000 +0100
+++ new/tex/generic/pstricks/config/README 1970-01-01 01:00:00.000000000 +0100
@@ -1,45 +0,0 @@
-This directory contains the special PSTricks config files for
-the different platforms. By default the dvips config file is
-already in your current TeX distribution as pstricks.con.
-If you use another platform then you have to replace the current
-pstricks.con by one of the following cfg files:
-
-- PostScript header files
-
--- If you use the Y&Y's "dvipsone" DVI to PostScript converter,
-you have to rename config.cfg to generic/pstricks.con and to move
-all the files of the "dvips" subdirectory to the TeX input folder.
-
--- If you use the MicroPress "VTeX" DVI to PostScript converter,
-you have to rename config/vtex.cfg to generic/pstricks.con and to move
-all the files of the "dvips" subdirectory to the TeX input folder.
-
--- If you use XeTeX, you have to rename config/xdvipdfmx.cfg to
- generic/pstricks.con
-
--- If you use the "textures" (version 1.7/1.8 or 2.0) DVI to PostScript
- converter (for Macintosh), you should proceed as follows:
- * create a new folder PSTricks (for instance) as a subfolder in
- Textures' TeX inputs folder,
- * copy the "generic", "dvips", "latex" and "contrib" subfolders
- from the "pstricks" folder to the newly created "PSTricks" folder,
- * open the "generic" folder and remove the file pstricks.con,
- then rename the file textures.cfg to pstricks.con,
- * open the "dvips" folder and change the following line in the file
- pstricks.pro (courtesy Michael J. Sharpe ):
- /STV { SDict begin normalscale end STP } def
- by
- /STV { Mag 72.27 72 div mul dup neg scale STP } def
- It was also reported that the `pst-text' package (to put text
- along paths) doesn't work with the "textures" driver.
- Textures's users must also look at the page kindly maintained
- by Michael Sharpe: http://math.ucsd.edu/~msharpe/pst-textures.html
-
--- If you use another driver than these four ones, you have to adapt
-a pstricks.con file for it, if the one for "dvips" doesn't work for it.
-You can also look at the instructions of the old obsolete/src/pstricks.con
-file. And if nothing work, ask for help on the PSTricks mailing list,
-hopping that somebody on the list has the same configuration than you ...
-
---
-2010-01-22 hv
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/config/README.cfg new/tex/generic/pstricks/config/README.cfg
--- old/tex/generic/pstricks/config/README.cfg 1970-01-01 01:00:00.000000000 +0100
+++ new/tex/generic/pstricks/config/README.cfg 2013-10-21 00:00:10.000000000 +0200
@@ -0,0 +1,45 @@
+This directory contains the special PSTricks config files for
+the different platforms. By default the dvips config file is
+already in your current TeX distribution as pstricks.con.
+If you use another platform then you have to replace the current
+pstricks.con by one of the following cfg files:
+
+- PostScript header files
+
+-- If you use the Y&Y's "dvipsone" DVI to PostScript converter,
+you have to rename config.cfg to generic/pstricks.con and to move
+all the files of the "dvips" subdirectory to the TeX input folder.
+
+-- If you use the MicroPress "VTeX" DVI to PostScript converter,
+you have to rename config/vtex.cfg to generic/pstricks.con and to move
+all the files of the "dvips" subdirectory to the TeX input folder.
+
+-- If you use XeTeX, you have to rename config/xdvipdfmx.cfg to
+ generic/pstricks.con
+
+-- If you use the "textures" (version 1.7/1.8 or 2.0) DVI to PostScript
+ converter (for Macintosh), you should proceed as follows:
+ * create a new folder PSTricks (for instance) as a subfolder in
+ Textures' TeX inputs folder,
+ * copy the "generic", "dvips", "latex" and "contrib" subfolders
+ from the "pstricks" folder to the newly created "PSTricks" folder,
+ * open the "generic" folder and remove the file pstricks.con,
+ then rename the file textures.cfg to pstricks.con,
+ * open the "dvips" folder and change the following line in the file
+ pstricks.pro (courtesy Michael J. Sharpe ):
+ /STV { SDict begin normalscale end STP } def
+ by
+ /STV { Mag 72.27 72 div mul dup neg scale STP } def
+ It was also reported that the `pst-text' package (to put text
+ along paths) doesn't work with the "textures" driver.
+ Textures's users must also look at the page kindly maintained
+ by Michael Sharpe: http://math.ucsd.edu/~msharpe/pst-textures.html
+
+-- If you use another driver than these four ones, you have to adapt
+a pstricks.con file for it, if the one for "dvips" doesn't work for it.
+You can also look at the instructions of the old obsolete/src/pstricks.con
+file. And if nothing work, ask for help on the PSTricks mailing list,
+hopping that somebody on the list has the same configuration than you ...
+
+--
+2010-01-22 hv
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/config/dvips.cfg new/tex/generic/pstricks/config/dvips.cfg
--- old/tex/generic/pstricks/config/dvips.cfg 2010-02-16 02:42:59.000000000 +0100
+++ new/tex/generic/pstricks/config/dvips.cfg 2013-08-22 00:20:10.000000000 +0200
@@ -37,6 +37,7 @@
%% If you want to include your own customizations to pstricks.tex, then
%% uncomment the \pstcustomize command, and include your modifications
%% after \pstcustomize. These will be read in after pstricks.tex.
+
%\pstcustomize
\endinput
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/pst-fp.tex new/tex/generic/pstricks/pst-fp.tex
--- old/tex/generic/pstricks/pst-fp.tex 2010-09-11 00:52:00.000000000 +0200
+++ new/tex/generic/pstricks/pst-fp.tex 2013-10-23 01:54:17.000000000 +0200
@@ -1,4 +1,4 @@
-%% $Id: pst-fp.tex 259 2010-01-17 09:51:50Z herbert $
+%% $Id: pst-fp.tex 837 2013-10-22 07:53:07Z herbert $
%%
%%
%% This is file `pst-fp.tex',
@@ -47,7 +47,7 @@
\def\pst@@Int#1.#2\@nil{#1}
%
-\def\pstFPMul#1#2#3{\pstFP@callc\pstFP@mul#1{#2}{#3}% % #1 := int(#2/#3)
+\def\pstFPMul#1#2#3{\pstFP@callc\pstFP@mul#1{#2}{#3}% % #1 := int(#2*#3)
\edef#1{\pst@int{#1}}}%
\def\pstFPDiv#1#2#3{\pstFP@callc\pstFP@div#1{#2}{#3}% % #1 := int(#2/#3)
\edef#1{\pst@int{#1}}}%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/pst-key.tex new/tex/generic/pstricks/pst-key.tex
--- old/tex/generic/pstricks/pst-key.tex 2006-01-13 00:46:03.000000000 +0100
+++ new/tex/generic/pstricks/pst-key.tex 2013-07-12 01:28:41.000000000 +0200
@@ -1,3 +1,4 @@
+%% $Id: pst-key.tex 800 2013-07-09 18:01:00Z herbert $
%%
%% This is file `pst-key.tex',
%% generated with the docstrip utility.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/pstPlain.tex new/tex/generic/pstricks/pstPlain.tex
--- old/tex/generic/pstricks/pstPlain.tex 2010-11-04 23:54:05.000000000 +0100
+++ new/tex/generic/pstricks/pstPlain.tex 1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-%\input pst-xkey
-\input pstricks
-This is a test
-\bye
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/pstricks.tex new/tex/generic/pstricks/pstricks.tex
--- old/tex/generic/pstricks/pstricks.tex 2013-05-22 01:04:38.000000000 +0200
+++ new/tex/generic/pstricks/pstricks.tex 2014-05-21 00:00:42.000000000 +0200
@@ -1,7 +1,7 @@
%% pstricks.tex
%% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu.
%% COPYRIGHT 2000-2003 by Denis Girou.
-%% Copyright 2004-2013 Herbert Voss
+%% Copyright 2004-2014 Herbert Voss
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -18,18 +18,18 @@
\csname PSTricksLoaded\endcsname
\let\PSTricksLoaded\endinput
%
-%% !! loading additional TeX packages see line 95 !!
-%% !! loading config file pstricks.con line 463 !!
-%% !! loading pro files line 476 !!
-%% !! fileversion and date see line 105 !!
+%% !! loading additional TeX packages see line 108 !!
+%% !! loading config file pstricks.con line 473 !!
+%% !! loading pro files line 486 !!
+%% !! fileversion and date see line 113 !!
%
\edef\PstAtCode{\the\catcode`\@}
\catcode`\@=11\relax
%
\expandafter\ifx\csname @latexerr\endcsname\relax% do we have LaTeX?
- \def\typeout#1{\immediate\write\@unused{#1}}
+ \def\typeout#1{\immediate\write\@unused{#1}}%
\alloc@7\write\chardef\sixt@@n\@unused
- \typeout{we are running tex and have to define some LaTeX commands ...}
+ \typeout{we are running tex and have to define some LaTeX commands ...}%
\long\def\@ifundefined#1#2#3{\expandafter\ifx\csname
#1\endcsname\relax#2\else#3\fi}
\def\@namedef#1{\expandafter\def\csname #1\endcsname}
@@ -59,14 +59,21 @@
\endgroup
\def\endtabular{\crcr\egroup\egroup $\egroup}
\def\@width{width}% needed by pst-node
-\fi
+ \def\@tfor#1:={\@tf@r#1 }
+ \long\def\@tf@r#1#2\do#3{\def\@fortmp{#2}\ifx\@fortmp\space\else
+ \@tforloop#2\@nil\@nil\@@#1{#3}\fi}%
+ \long\def\@tforloop#1#2\@@#3#4{\def#3{#1}\ifx #3\@nnil
+ \expandafter\@fornoop \else
+ #4\relax\expandafter\@tforloop\fi#2\@@#3{#4}}
+ \long\def\@break@tfor#1\@@#2#3{\csname fi\endcsname\csname fi\endcsname}
+\fi%
\catcode`\@=\PstAtCode\relax
%
% now we have all commands defined, for TeX and LaTeX
%
\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey.tex \fi
\catcode`\@=11\relax
-\def\XKV@ch@ckch@ice#1#2#3{%
+\def\XKV@ch@ckch@ice#1#2#3{% bugfix for xkeyval
\def\XKV@tempa{#1}%
\ifx\XKV@tempa\@nnil\let\XKV@tempa\@empty\else
\def\XKV@tempa{\def#1{#2}}%
@@ -74,7 +81,6 @@
% \in@{,#2,}{,#3,}%
\begingroup\edef\x{\endgroup\noexpand\in@{,#2,}}\x{,#3,}%
%\expandafter\in@\expandafter{\expandafter,#2,}{,#3,}% --- hv 2012-04-27
-%\typeout{=====>foo<=====}%
\ifin@
\ifXKV@pl
\XKV@addtomacro@n\XKV@tempa\@firstoftwo
@@ -103,8 +109,8 @@
\input pgffor.code.tex
\let\pgfforeach\foreach
%
-\def\fileversion{2.43}
-\def\filedate{2013/05/12}
+\def\fileversion{2.54a}
+\def\filedate{2014/05/19}
\catcode`\@=11\relax
\pst@addfams{pstricks}
%
@@ -515,24 +521,32 @@
\ifx\ps@next\@empty\let\pst@num\z@%
\else\expandafter\pst@@checknum\ps@next..\@nil%
\fi%
- \ifnum\pst@num=\z@
+ \ifcase\pst@num% 0
\@pstrickserr{Bad number: `#1'. 0 substituted.}\@ehpa%
\def#2{0 }%
- \else%
+ \or% 1
\edef#2{\ifnum\pst@num=\tw@-\fi\the\pst@cntg.%
\expandafter\@gobble\the\pst@cnth\space}%
+ \or% 2
+ \edef#2{\ifnum\pst@num=\tw@-\fi\the\pst@cntg.%
+ \expandafter\@gobble\the\pst@cnth\space}%
+ \or% 3
+ \edef#2{\pst@tempA\space}%
\fi}
\def\pst@@checknum{%
\@ifnextchar-%
{\let\pst@num\tw@\expandafter\pst@@@checknum\@gobble}%
- {\let\pst@num\@ne\pst@@@checknum}%
+ {\@ifnextchar !%
+ {\def\pst@num{3}\pst@@@@@checknum}
+ {\let\pst@num\@ne\pst@@@checknum}}%
}
-%
\def\pst@@@checknum#1.#2.#3\@nil{%
\afterassignment\pst@@@@checknum\pst@cntg=0#1\relax\@nil%
\afterassignment\pst@@@@checknum\pst@cnth=1#2\relax\@nil}
\def\pst@@@@checknum#1\relax\@nil{\ifx\@nil#1\@nil\else\let\pst@num\z@\fi}
%
+\def\pst@@@@@checknum#1#2.#3\@nil{\def\pst@tempA{#2}}% PostScript Notation with !<code>
+%
\def\pst@getnumii#1 #2 #3\@nil{%
\pst@checknum{#1}\pst@tempg%
\ifx\relax#2\relax\let\pst@temph\pst@tempg\else\pst@checknum{#2}\pst@temph\fi}
@@ -581,20 +595,48 @@
\gdef\pslbrace[{ ]
\gdef\psrbrace[} ]
\endgroup
+
+\pstVerb{
+ /pssetRGBcolor /setrgbcolor load def
+ /pssetCMYKcolor /setcmykcolor load def
+ /pssetGraycolor /setgray load def
+}
\def\@newcolor#1#2{%
-\expandafter\edef\csname #1\endcsname{\noexpand\pst@color{#2}}%
-%\expandafter\edef\csname color@#1\endcsname{#2}%
-\expandafter\edef\csname\string\color@#1\endcsname{#2}% hv 1.14 2005-12-17
-\ignorespaces}
+ \expandafter\edef\csname #1\endcsname{\noexpand\pst@color{#2}}%
+ %\expandafter\edef\csname color@#1\endcsname{#2}%
+ \expandafter\edef\csname\string\color@#1\endcsname{#2}% hv 1.14 2005-12-17
+ \ignorespaces}
\def\pst@color#1{%
-\def\pst@currentcolor{#1}\pstVerb{#1}\aftergroup\pst@endcolor}
+ \def\pst@currentcolor{#1}\pstVerb{#1}\aftergroup\pst@endcolor}%
\def\pst@endcolor{\pstVerb{\pst@currentcolor}}
\def\pst@currentcolor{0 setgray}
\def\altcolormode{%
\def\pst@color##1{%
-\pstVerb{gsave ##1}\aftergroup\pst@endcolor}%
+ \pstVerb{gsave ##1}\aftergroup\pst@endcolor}%
\def\pst@endcolor{\pstVerb{\pst@grestore}}}
-\def\pst@grestore{%
+\def\pssetMonochrome{%
+ \pstVerb{
+ /setrgbcolor { add add 0 gt {0}{1} ifelse setgray } def
+ /setcmykcolor{ 4 dict begin
+ /k ED /y ED /m ED /c ED
+ 1 1 k sub c mul k add sub 0.29 mul
+ 1 1 k sub m mul k add sub 0.587 mul add
+ 1 1 k sub y mul k add sub 0.114 mul add
+ end 0 gt {0}{1} ifelse setgray } def }}
+\def\pssetGrayscale{%
+ \pstVerb{
+ /setrgbcolor { 0.07 mul exch 0.71 mul add exch 0.21 mul add setgray } def
+ /setcmykcolor{ 4 dict begin
+ /k ED /y ED /m ED /c ED
+ 1 1 k sub c mul k add sub 0.29 mul
+ 1 1 k sub m mul k add sub 0.587 mul add
+ 1 1 k sub y mul k add sub 0.114 mul add
+ end setgray } def }}
+\def\psresetColor{\pstVerb{
+ /setrgbcolor tx@Dict begin /pssetRGBcolor load end def
+ /setcmykcolor tx@Dict begin /pssetCMYKcolor load end def }}
+
+\def\pst@grestore{
currentpoint
matrix currentmatrix
currentfont
@@ -746,7 +788,7 @@
}%
\def\psput@##1{\pst@@getcoor{##1}\leavevmode\psput@cartesian}%
}
-\NormalCoor% set to normal read of coors, angles and lengths
+%\NormalCoor% set to normal read of coors, angles and lengths
%
\def\degrees{\@ifnextchar[{\@degrees}{\def\pst@angleunit{}}}
\def\@degrees[#1]{%
@@ -789,6 +831,8 @@
}%
\def\psput@##1{\pst@@getcoor{##1}\leavevmode\psput@special}%
}
+\SpecialCoor% set to special read of coors, angles and lengths
+%
\begingroup
\catcode`\|=13
\catcode`\;=13
@@ -841,7 +885,7 @@
\ifx#1*\relax% algebraic PostScript code: x f(x)
\global\pst@C@@rType=4\relax%
\else
- \ifx#1+\relax% algebraic PostScript code: x, (f(x)
+ \ifx#1+\relax% algebraic algebraic: x, f(x)
\global\pst@C@@rType=8\relax%
\else
\ifx#4;\relax% polar coordinates
@@ -931,25 +975,38 @@
\edef\pst@coor{\pst@number\pst@dimb \pst@angle \tx@PtoC }%
}
%
-\def\raw@coor#1;#2\@nil{% PostScript code
+\def\raw@coor{\@ifnextchar !\raw@@coor\raw@@@coor}
+\def\raw@@coor!#1;#2\@nil{% PostScript code without using \tx@ScreenCoor
+ \edef\pst@coor{#1 }}
+\def\raw@@@coor#1;#2\@nil{% PostScript code
+ \edef\pst@coor{ #1 \tx@ScreenCoor }}
+%
+\def\alg@coor{\@ifnextchar*{\alg@@coor}{\alg@@@@coor}}
+\def\alg@@coor*#1;#2\@nil{\expandafter\alg@@@coor#1\@nil}
+\def\alg@@@coor#1 #2\@nil{% algebraic PostScript code
+%\typeout{Nummer1: #1}%
+%\typeout{Nummer2: #2}%
\edef\pst@coor{%
- #1 \pst@number\psyunit mul exch \pst@number\psxunit mul exch }}
+ /Func (#1) AlgParser cvx def
+ /y #2 def
+ y Func exch \tx@ScreenCoor }}
%
-\def\alg@coor#1;#2\@nil{\expandafter\alg@@@coor#1}
-\def\alg@@@coor#1 #2{% algebraic PostScript code
+\def\alg@@@@coor#1;#2\@nil{\expandafter\alg@@@@@coor#1\@nil}
+\def\alg@@@@@coor#1 #2\@nil{% algebraic PostScript code
\edef\pst@coor{%
/x #1 def
- /Func (#2) AlgParser cvx def
- x Func
- \pst@number\psyunit mul exch \pst@number\psxunit mul exch }}
+ /Func (#2) AlgParser cvx def
+ x Func \tx@ScreenCoor }}
+%
+\define@boolkey[psset]{}[Pst@]{exchange}[true]{}
+\psset{exchange=false}
%
-\def\algalg@coor#1;#2\@nil{\expandafter\algalg@@@coor#1}
-\def\algalg@@@coor#1,#2{% algebraic algebraic code
+\def\algalg@coor#1;#2\@nil{\expandafter\algalg@@@coor#1\@nil}
+\def\algalg@@@coor#1,#2\@nil{% algebraic algebraic code
\edef\pst@coor{%
/x (#1) AlgParser cvx def
/Func (#2) AlgParser cvx def
- x Func
- \pst@number\psyunit mul exch \pst@number\psxunit mul exch }}
+ x Func \tx@ScreenCoor }}
%
\def\node@coor#1\@nil{%
\@pstrickserr{You must load `pst-node.tex' to use node coordinates.}\@ehps
@@ -958,7 +1015,7 @@
\def\Node@coor{\node@coor}
%
\def\special@angle#1#2)#3\@nil{%
- \ifx!#1\relax
+ \ifx !#1\relax
\edef\pst@angle{#2\space \pst@angleunit}%
\else\ifx(#1\relax
\pst@@getcoor{#2}%
@@ -970,7 +1027,7 @@
%
\def\special@length#1#2\@nil#3{%
\psDEBUG[special@length]{ #1|#2|#3 }%
- \ifx!#1\relax
+ \ifx !#1\relax
\edef\pst@SpecialLength{ #2 \pst@number\psunit mul }%
\Pst@SpecialLengthtrue%
\psDEBUG[special@length]{ Special length: \pst@SpecialLength}%
@@ -1005,7 +1062,8 @@
\def\psk@origin{}
%
\define@boolkey[psset]{pstricks}[Pst@]{algebraic}[true]{}
-\psset[pstricks]{algebraic=false}
+\psset%[pstricks]
+{algebraic=false}
%
\define@boolkey[psset]{pstricks}[]{swapaxes}[true]{% \if@pst
\@nameuse{@pst#1}%
@@ -1165,7 +1223,15 @@
%--------------------------------- hv 2007-09-09 begin ---------------------
% transparency needs a run through latex -> dvips -> ps2pdf14(!)
%
-\define@key[psset]{pstricks}{fillcolor}[white]{\pst@getcolor{#1}\psfillcolor}
+\def\e@fill@inverse{oefill}
+\define@key[psset]{pstricks}{fillcolor}[white]{%
+ \ifx\psk@fillstylename\e@fill@inverse
+ \pst@getcolor{#1}\psk@oefillcolor
+ \pst@getcolor{white}\psfillcolor
+ \else \pst@getcolor{white}\psk@oefillcolor
+ \pst@getcolor{#1}\psfillcolor
+ \fi}
+
\psset[pstricks]{fillcolor=white}
\define@key[psset]{pstricks}{strokeopacity}[1]{\pst@checknum{#1}\psk@strokeopacityalpha }% for lines
\psset[pstricks]{strokeopacity=1}
@@ -1194,6 +1260,7 @@
\def\psfs@none{}
\def\psfs@solid{\pst@fill{\pst@usecolor\psfillcolor \tx@setTransparency fill }}
\def\psfs@eofill{\pst@fill{\pst@usecolor\psfillcolor \tx@setTransparency eofill}}
+\def\psfs@oefill{\pst@fill{\pst@usecolor\psk@oefillcolor \tx@setTransparency fill } \psfs@eofill }
\def\psfs@shape{\pst@fill{\pst@usecolor\psfillcolor \tx@setBlendmode fill }}
\def\psfs@spiral{\pst@fill{\pst@fsOrigin \pst@usecolor\psfillcolor clip newpath
0 .1 500 { dup dup sqrt 4 div 0 360 arc fill \pst@fsAngle rotate } for }}
@@ -1288,6 +1355,7 @@
\@namedef{psfs@truchet*}{\psfs@solid \psfs@truchet}
%
\define@key[psset]{pstricks}{fillstyle}[none]{%
+ \def\psk@fillstylename{#1}% needed for inverse eofill
\edef\pst@tempg{#1}\def\pst@temph{none}%
\ifx\pst@tempg\pst@temph
\let\psk@fillstyle\relax
@@ -1958,6 +2026,7 @@
\newtoks\pst@customdefs
\pst@customdefs{%
\def\newpath{\addto@pscode{newpath}}%
+ \def\reversepath{\addto@pscode{ reversepath }}% 20131209 hv
\def\moveto(#1){\pst@@getcoor{#1}\addto@pscode{\pst@coor moveto}}%
\def\rmoveto(#1){\pst@@getcoor{#1}\addto@pscode{\pst@coor rmoveto}}%
\def\closepath{\addto@pscode{closepath}}%
@@ -2142,6 +2211,28 @@
\ifx\pslinestyle\psls@@symbol\def\pslinestyle{none}\fi%
\end@ClosedObj}
%
+\def\pscspline{\pst@object{pscspline}}% Christoph Bersch
+\def\pscspline@i{%
+ \pst@getarrows{%
+ \begin@OpenObj
+ \pst@getcoors[\pscspline@ii
+ }%
+}
+\def\tx@Spline{Spline }
+\def\pscspline@ii{%
+ \addto@pscode{
+ \ifPst@noCurrentPoint\else\pst@cp\fi
+ \tx@setlinejoin
+ \ifshowpoints true \else false \fi
+ \ifx\pslinestyle\psls@@symbol
+ \psls@symbol OpenSymbolSpline
+ \else
+ \tx@Spline
+ \fi
+ }%
+ \end@OpenObj
+}
+%
\define@key[psset]{pstricks}{dotsize}[2pt 2]{%
\pst@expandafter\pst@getdimnum{#1} 0 {} {}\@nil%
\edef\psk@@dotsize{\pst@number\pst@dimg}%
@@ -2194,6 +2285,7 @@
\addto@pscode{
\psk@dotsize
\@nameuse{psds@\psk@dotstyle}
+ \tx@setStrokeTransparency
\pst@coor Dot}%
\end@SpecialObj}
%
@@ -2207,8 +2299,9 @@
\def\psdots@iii{%
\psk@dotsize
\@nameuse{psds@\psk@dotstyle}
+ \tx@setStrokeTransparency
newpath
- n { transform floor .5 add exch floor .5 add exch itransform Dot } repeat }
+ n { transform floor .5 add exch floor .5 add exch itransform Dot } repeat }
%
% DG: dead code (to suppress until \psset[pstricks]{dotstyle) ? - Aug. 4, 1997
\def\tx@SQ{SQ }
@@ -3113,7 +3206,12 @@
\ifx D\pst@tempg 2 % Down
\else
\ifx L\pst@tempg 3 % Left
- \else 0 % Up
+ \else
+ \ifx l\pst@tempg 4 % |_
+ \else
+ \ifx r\pst@tempg 5 % _|
+ \else 0 \fi % Up
+ \fi
\fi
\fi
\fi}%
@@ -3139,10 +3237,19 @@
\psline@iii
pop
0.5
- \pst@number\pst@dimc \pst@number\pst@dimd
- \ifodd\psk@trimode exch \fi
+ \pst@number\pst@dimc % Width
+ \pst@number\pst@dimd % Height
+ \ifcase\psk@trimode
+ \or %% 0
+ exch \or %% 1
+ \or %% 2
+ exch \or %% 3
+ \or %% 4
+ \or %% 5
+ \fi
\psk@trimode -90 mul
- \pst@number\pst@dima \pst@number\pst@dimb
+ \pst@number\pst@dima % x coor for text
+ \pst@number\pst@dimb % y coor for text
\tx@Triangle}%
\def\pst@linetype{2}%
\end@ClosedObj
@@ -3153,10 +3260,10 @@
\pst@dimh=\pslinewidth
\advance\pst@dimh\psframesep
\pst@dimg=\ht\pst@hbox
- \advance\pst@dimg-\dp\pst@hbox
- \divide\pst@dimg 2
- \edef\pst@tempa{\number\pst@dimg sp}% For use by nodes.
- \ifodd\psk@trimode
+ \advance\pst@dimg-\dp\pst@hbox % totalheight
+ \divide\pst@dimg 2 % 0.5 totalheight
+ \edef\pst@tempa{\number\pst@dimg sp}% % For use by nodes.
+ \ifodd\psk@trimode %
\pst@dimb\pst@dimg
\else
\pst@dima=\wd\pst@hbox
@@ -3362,6 +3469,7 @@
\pst@@getcoor{#2}%
\def\pst@linetype{1}%
\addto@pscode{%
+ \ifx\psk@rot\@empty \else \psk@rot\space rotate \fi
\pst@tempa \pst@tempb
\pst@coor
\pst@tempc moveto
@@ -3399,42 +3507,45 @@
\pst@getcoor{#2}\pst@tempb% a b
\pst@getangle{#3}\pst@tempc% start angle
\pst@getangle{#4}\pst@tempd% end angle
- \addto@pscode{ \psellipticarc@definearg \psellipticarc@draw
+ \addto@pscode{
+ \psellipticarc@definearg \psellipticarc@draw
\ifPst@variableLW \pst@flattenpath \fi
}%
\ifshowpoints
- \addto@pscode{
- gsave
- xOrig yOrig T % set origin to ellipse origin
- rx ry scale % now we draw a circle :-)
- 1 \pst@tempc % start angle
- \ifPst@correctAngle
- cvi 90 mod 0 eq { \pst@tempc }
- { rx abs ry abs sub cvi 0 eq { \pst@tempc }{ rx ry
- \tx@UserCoor exch \pst@tempc tan mul exch atan
- \pst@tempc 180 div 0.5 add floor
- 180 mul sub } ifelse } ifelse
- \fi
- PtoC moveto
- 0 0 lineto
- 1 \pst@tempd % end angle
- \ifPst@correctAngle
- cvi 90 mod 0 eq { \pst@tempd }
- { rx ry \tx@UserCoor exch \pst@tempd tan mul exch atan
- \pst@tempd 180 div .5 add floor 180 mul sub } ifelse
- \fi
- PtoC lineto
-% \ifcase\psarc@type arc \or arcn \fi
- CLW 2 div SLW
- [ 1 1 \tx@UserCoor ] 0 setdash
- stroke
- grestore
+ \addto@pscode{
+ gsave
+ xOrig yOrig T % set origin to ellipse origin
+ \ifx\psk@rot\@empty \else \psk@rot\space rotate \fi
+ rx ry scale % now we draw a circle :-)
+ 1 \pst@tempc % start angle
+ \ifPst@correctAngle
+ cvi 90 mod 0 eq { \pst@tempc }
+ { rx abs ry abs sub cvi 0 eq { \pst@tempc }{ rx ry
+ \tx@UserCoor exch \pst@tempc tan mul exch atan
+ \pst@tempc 180 div 0.5 add floor
+ 180 mul sub } ifelse } ifelse
+ \fi
+ PtoC moveto
+ 0 0 lineto
+ 1 \pst@tempd % end angle
+ \ifPst@correctAngle
+ cvi 90 mod 0 eq { \pst@tempd }
+ { rx ry \tx@UserCoor exch \pst@tempd tan mul exch atan
+ \pst@tempd 180 div .5 add floor 180 mul sub } ifelse
+ \fi
+ PtoC lineto
+ % \ifcase\psarc@type arc \or arcn \fi
+ CLW 2 div SLW
+ [ 1 1 \tx@UserCoor ] 0 setdash
+ stroke
+ grestore
}
- \showpointsfalse%
+ \showpointsfalse%
\fi
\end@OpenObj%
}
\def\psellipticarc@definearg{%
+% \ifx\psk@rot\@empty \else \psk@rot\space rotate \fi
\pst@tempa /yOrig ED /xOrig ED % Origin
\pst@tempb % radii. Now adjust:
\ifdim\psk@dimen\p@=\z@\else
@@ -3491,7 +3602,12 @@
\fi
/mtrx CM def
xOrig yOrig T
+ \ifx\psk@rot\@empty \else \psk@rot\space rotate \fi
rx ry scale
+ 0 0 moveto
+ exch dup dup % end start start start
+ cos exch sin moveto % end start
+ exch % start end
% \if@star 0 0 moveto \fi % for filling
\if@psarcn arcn \else arc \fi
% \if@star 0 0 moveto \fi
@@ -3538,9 +3654,10 @@
\pssetlength\pst@dimc{#2}%
\def\pst@linetype{4}%
\addto@pscode{
- \pst@coor
- \ifPst@SpecialLength \pst@SpecialLength \else \pst@number\pst@dimc \fi
+ \pst@coor 2 copy moveto
+ \ifPst@SpecialLength \pst@SpecialLength \else \pst@number\pst@dimc \fi
\psk@dimen CLW mul sub
+ dup 0 rmoveto
0 360 arc
\ifPst@variableLW \pst@flattenpath \fi
closepath
@@ -3591,25 +3708,32 @@
%
\def\psRing{\def\pst@par{}\pst@object{psRing}}%% hv 20130405
\def\psRing@i{\@ifnextchar({\psRing@ii}{\psRing@ii(0,0)}}
-\def\psRing@ii(#1)#2#3{% origin, inner radius, outer radius
- \begin@ClosedObj
+\def\psRing@ii(#1){%
\pst@@getcoor{#1}%
- \pssetlength\pst@dimc{#2}%
- \pssetlength\pst@dimd{#3}%
+ \@ifnextchar[{\psRing@iii}{\psRing@iii[0,360]}}
+\def\psRing@iii[#1,#2]#3#4{% origin, inner radius, outer radius
+ \begin@ClosedObj
+ \pssetlength\pst@dimc{#3}%
+ \pssetlength\pst@dimd{#4}%
+ \pst@getangle{#1}\pst@tempa
+ \pst@getangle{#2}\pst@tempb
\def\pst@linetype{4}%
\addto@pscode{
- \pst@coor translate newpath
+ \pst@coor translate
\pst@number\pst@dimc \psk@dimen CLW mul sub /InnerRadius ED
\pst@number\pst@dimd \psk@dimen CLW mul sub /OuterRadius ED
- 0 0 InnerRadius 0 360 arc OuterRadius 0 moveto
- 0 0 OuterRadius 0 0.0001 arcn
+ InnerRadius 0 moveto newpath
+ 0 0 InnerRadius \pst@tempa\space \pst@tempb\space arc
+ OuterRadius \pst@tempb\space PtoC
+ \pst@tempb\space \pst@tempa\space sub abs 360 eq { moveto }{ lineto } ifelse % whole circle or not??
+ 0 0 OuterRadius \pst@tempb\space \pst@tempa\space arcn
closepath
}%
\showpointsfalse
\end@ClosedObj
\ignorespaces}
%
-\def\pswedge{\pst@object{pswedge}}
+\def\pswedge{\def\pst@par{}\pst@object{pswedge}}
\def\pswedge@i{\@ifnextchar({\pswedge@ii}{\pswedge@ii(0,0)}}
\def\pswedge@ii(#1)#2#3#4{%
\begin@ClosedObj%
@@ -3619,6 +3743,7 @@
\pst@@getcoor{#1}%
\def\pst@linetype{1}%
\addto@pscode{
+ \ifx\psk@rot\@empty 0 \else \psk@rot \fi rotate
\pst@coor
2 copy
moveto
@@ -3631,9 +3756,8 @@
\showpointsfalse%
\end@ClosedObj%
}
-\def\tx@Ellipse{
- \ifx\psk@rot\@empty 0 \else \psk@rot \fi
- Ellipse }
+\def\tx@Ellipse{ \ifx\psk@rot\@empty 0 \else \psk@rot \fi Ellipse }
+%
\def\psellipse{\def\pst@par{}\pst@object{psellipse}}
\def\psellipse@i(#1){\@ifnextchar({\psellipse@ii(#1)}{\psellipse@ii(0,0)(#1)}}
\def\psellipse@ii(#1)(#2){%
@@ -4208,53 +4332,7 @@
\@namedef{pspicture*}{\pspicture*}
\@namedef{endpspicture*}{\endpspicture}
%
-%------------------------------- Overlays ------------------------------
-%
-\def\tx@BeginOL{BeginOL }
-\def\tx@InitOL{InitOL }
-%
-\def\pst@initoverlay#1{\pst@Verb{\tx@InitOL /TheOL (#1) def}}
-\def\AltOverlayMode{%
- \def\pst@initoverlay##1{%
- \pst@Verb{%
- \tx@InitOL
- /Visible { initclip } def
- /Invisible {
- CP newpath OLUnit itransform moveto clip newpath moveto
- } def
- /TheOL (##1) def}}}
-%
-\def\pst@overlay#1{%
- \edef\curr@overlay{#1}%
- \pst@Verb{(#1) BOL}%
- \aftergroup\pst@endoverlay}
-%
-\def\pst@endoverlay{\pst@Verb{(\curr@overlay) BOL}}
-\def\curr@overlay{all}
-%
-\newbox\theoverlaybox
-%
-\def\overlaybox{%
- \global\setbox\theoverlaybox=\hbox\bgroup
- \begingroup
- \let\psoverlay\pst@overlay
- \def\overlaybox{%
- \@pstrickserr{Overlays cannot be nested}\@eha}%
- \def\putoverlaybox{%
- \@pstrickserr{You must end the overlay box
- before using \string\putoverlaybox}}%
- \psoverlay{main}%
- \ignorespaces}
-%
-\def\endoverlaybox{\endgroup\egroup}
-\def\putoverlaybox#1{%
- \hbox{\pst@initoverlay{#1}\copy\theoverlaybox}}
-%
-\def\psoverlay{\@pstrickserr{\string\psoverlay\space
- can only be used after \string\overlaybox}}
-%
\ifx\pstcustomize\relax \input pstricks.con \fi
-%
\catcode`\@=\PstAtCode\relax
%
\endinput
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/generic/pstricks/pstricks97.tex new/tex/generic/pstricks/pstricks97.tex
--- old/tex/generic/pstricks/pstricks97.tex 2010-11-16 00:48:11.000000000 +0100
+++ new/tex/generic/pstricks/pstricks97.tex 2013-07-12 01:28:41.000000000 +0200
@@ -1,3 +1,4 @@
+%% $Id: pst-fp.tex 259 2010-01-17 09:51:50Z herbert $
%% BEGIN: pstricks.tex
%%
%% PostScript macros for Generic TeX: main input file for PSTricks 97.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pstricks/pst-all.sty new/tex/latex/pstricks/pst-all.sty
--- old/tex/latex/pstricks/pst-all.sty 2010-02-12 00:48:39.000000000 +0100
+++ new/tex/latex/pstricks/pst-all.sty 2013-11-27 23:21:23.000000000 +0100
@@ -4,8 +4,9 @@
%% IMPORTANT NOTICE:
%%
%% Copyright (C) 1997 Timothy Van Zandt
-%% Copyright (C) 2004-2008 Herbert Voss
+%% Copyright (C) 2004-2008 Herbert Voss
%% Rolf Niepraschk
+%% 2008-- Herbert Voss
%%
%% This package may be distributed under the terms of the LaTeX Project
%% Public License, as described in lppl.txt in the base LaTeX distribution.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pstricks/pstcol.sty new/tex/latex/pstricks/pstcol.sty
--- old/tex/latex/pstricks/pstcol.sty 2008-09-12 00:19:07.000000000 +0200
+++ new/tex/latex/pstricks/pstcol.sty 2013-11-27 23:21:23.000000000 +0100
@@ -2,6 +2,7 @@
%% pstcol.sty Copyright (C) 1994--1996 1999 David Carlisle
%% 2004--2007 Herbert Voss
%% Rolf Niepraschk
+%% 2007-- Herbert Voss
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pstcol}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/pstricks/pstricks.sty new/tex/latex/pstricks/pstricks.sty
--- old/tex/latex/pstricks/pstricks.sty 2013-05-22 01:04:38.000000000 +0200
+++ new/tex/latex/pstricks/pstricks.sty 2014-03-12 23:32:50.000000000 +0100
@@ -5,7 +5,7 @@
%%
%% pstricks.sty Copyright (C) 1997 Timothy Van Zandt
%% pstcol.sty Copyright (C) 1994-1996 1999 David Carlisle
-%% pstricks.sty Copyright (C) 2004-2013 Rolf Niepraschk
+%% pstricks.sty Copyright (C) 2004-2014 Rolf Niepraschk
%% Herbert Voss
%%
%% This package may be distributed under the terms of the LaTeX Project
@@ -15,7 +15,7 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{pstricks}[2013/05/21 v0.56 LaTeX wrapper for `PSTricks' (RN,HV)]
+\ProvidesPackage{pstricks}[2013/12/12 v0.60 LaTeX wrapper for `PSTricks' (RN,HV)]
%
\def\documentclass{%
\edef\@tempa{\jobname.tex }%
@@ -34,9 +34,14 @@
%
\newif\ifpst@OldVersion\pst@OldVersionfalse
\DeclareOption{97}{\pst@OldVersiontrue}
-\newif\ifpst@PDF\pst@PDFfalse
-\DeclareOption{pdf}{\global\pst@PDFtrue}
+%
+\newif\ifpst@ovl \pst@ovlfalse
+\DeclareOption{overlays}{\global\pst@ovltrue}
+%
+\newif\ifpst@loadPDF \pst@loadPDFfalse
+\DeclareOption{pdf}{\global\pst@loadPDFtrue}
%------------------------------------ PLAIN --------------------------------
+
\DeclareOption{plain}{%
\ifpst@OldVersion
\def\psDEBUG[#1]#2{}%
@@ -48,17 +53,14 @@
\ProvidesFile{\pst@tempa}[\filedate\space v\fileversion\space `PSTricks' (tvz)]%
\endinput
}
-
+%
\DeclareOption*{\OptionNotUsed}
-
+%
\ProcessOptions\relax
-
-\ifpst@PDF
- \typeout{>>> Loading package auto-pst-pdf <<<}%
- \@ifclassloaded{beamer}%
- {\usepackage{auto-pst-pdf}}%
- {\AtBeginDocument{\usepackage{auto-pst-pdf}}}%
- \def\app@pdfcrop@opts{--hres}%%% hv 20130405
+%
+\RequirePackage{ifpdf}
+%
+\ifpst@loadPDF
\ifnum\pdfshellescape=\@ne\else
\PackageWarningNoLine{pstricks}{%
************************************ \MessageBreak
@@ -67,8 +69,20 @@
(if you are using MikTeX) \MessageBreak
************************************}
\fi
+ \def\app@pdfcrop@opts{--hres}%%% hv 20130405
+ \@ifclassloaded{beamer}{%
+ \ifpdf \else\setbeamertemplate{navigation symbols}{} \fi
+ \AtEndOfPackage{\RequirePackage{auto-pst-pdf}}}
+ {\AtBeginDocument{%
+ \@ifundefined{shorthandoff} % we have no babel until now
+ { \usepackage{auto-pst-pdf}}
+ { \shorthandoff{"}
+ \usepackage{auto-pst-pdf}
+ \shorthandon{"}}}}
\fi
-
+%
+\ifpst@ovl \RequirePackage{pst-ovl}\fi
+%
\@ifundefined{PSTricksLoaded}
{%
\let\saved@scalebox\scalebox
@@ -137,7 +151,9 @@
\PassOptionsToPackage{vtex}{\pst@ColorPackage}%
}
%---------------------------------DISTILLER --------------------------------
+\newif\ifpst@distiller\pst@distillerfalse
\DeclareOption{distiller}{%
+ \pst@distillertrue%
\pst@def{setTransparency}<
[ /ca \psk@opacityalpha
/CA \psk@opacityalpha /SetTransparency pdfmark >
@@ -168,6 +184,16 @@
%---------------------------------COLOR --------------------------------
\DeclareOption{monochrome}{%
\AtBeginDocument{\special{ps:
+ /setrgbcolor { add add 0 gt {1}{0} ifelse setgray } def
+ /setcmykcolor{ 4 dict begin
+ /k ED /y ED /m ED /c ED
+ 1 1 k sub c mul k add sub 0.29 mul
+ 1 1 k sub m mul k add sub 0.587 mul add
+ 1 1 k sub y mul k add sub 0.114 mul add
+ end 0 gt {1}{0} ifelse setgray } def }}}
+
+\DeclareOption{grayscale}{%
+ \AtBeginDocument{\special{ps:
/setrgbcolor { 0.07 mul exch 0.71 mul add exch 0.21 mul add setgray } def
/setcmykcolor{ 4 dict begin
/k ED /y ED /m ED /c ED
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pstricks.tlpobj new/tlpkg/tlpobj/pstricks.tlpobj
--- old/tlpkg/tlpobj/pstricks.tlpobj 2013-05-22 03:52:53.000000000 +0200
+++ new/tlpkg/tlpobj/pstricks.tlpobj 2014-05-21 00:37:35.000000000 +0200
@@ -1,29 +1,34 @@
name pstricks
category Package
-revision 30616
+revision 34155
+catalogue pstricks-base
shortdesc PostScript macros for TeX.
relocated 1
-longdesc An extensive collection of macros for generating PostScript
-longdesc that is usable with most TeX macro formats, including Plain
-longdesc TeX, LaTeX, AMS-TeX, and AMS-LaTeX. Included are macros for
-longdesc colour, graphics, pie charts, rotation, trees and overlays. It
-longdesc has many special features, including a wide variety of graphics
-longdesc (picture drawing) macros, with a flexible interface and with
-longdesc colour support. There are macros for colouring or shading the
-longdesc cells of tables. The package pstricks-add contains bug-fixes
-longdesc and additions for pstricks (among other things). PSTricks uses
-longdesc PostScript \special commands, which are not supported by
-longdesc PDF(La)TeX. This limitation may be overcome by using either the
-longdesc pst-pdf or the pdftricks package, to generate a PDF inclusion
-longdesc from a PSTricks diagram.
-runfiles size=115
+longdesc PStricks offers an extensive collection of macros for
+longdesc generating PostScript that is usable with most TeX macro
+longdesc formats, including Plain TeX, LaTeX, AMS-TeX, and AMS-LaTeX.
+longdesc Included are macros for colour, graphics, pie charts, rotation,
+longdesc trees and overlays. It has many special features, including a
+longdesc wide variety of graphics (picture drawing) macros, with a
+longdesc flexible interface and with colour support. There are macros
+longdesc for colouring or shading the cells of tables. The package
+longdesc pstricks-add contains bug-fixes and additions for pstricks
+longdesc (among other things). PSTricks uses PostScript \special
+longdesc commands, which are not supported by PDF(La)TeX. This
+longdesc limitation may be overcome by using either the pst-pdf or the
+longdesc pdftricks package, to generate a PDF inclusion from a PSTricks
+longdesc diagram. Note that this is one of a pair of catalogue entries
+longdesc for PSTricks; the other one (PSTricks) is acting as a "stub",
+longdesc while editorial work on catalogue entries for PSTricks
+longdesc contributed is completed.
+runfiles size=116
RELOC/dvips/pstricks/pst-algparser.pro
RELOC/dvips/pstricks/pst-dots.pro
RELOC/dvips/pstricks/pst-dots97.pro
RELOC/dvips/pstricks/pstricks.pro
RELOC/dvips/pstricks/pstricks97.pro
RELOC/tex/generic/pstricks/config/Changes
- RELOC/tex/generic/pstricks/config/README
+ RELOC/tex/generic/pstricks/config/README.cfg
RELOC/tex/generic/pstricks/config/distiller.cfg
RELOC/tex/generic/pstricks/config/dvips.cfg
RELOC/tex/generic/pstricks/config/dvipsone.cfg
@@ -33,7 +38,6 @@
RELOC/tex/generic/pstricks/config/xdvipdfmx.cfg
RELOC/tex/generic/pstricks/pst-fp.tex
RELOC/tex/generic/pstricks/pst-key.tex
- RELOC/tex/generic/pstricks/pstPlain.tex
RELOC/tex/generic/pstricks/pstricks.con
RELOC/tex/generic/pstricks/pstricks.tex
RELOC/tex/generic/pstricks/pstricks97.tex
@@ -43,6 +47,6 @@
RELOC/tex/latex/pstricks/pstcol.sty
RELOC/tex/latex/pstricks/pstricks.sty
catalogue-ctan /graphics/pstricks/base
-catalogue-date 2013-05-21 21:04:45 +0200
-catalogue-license lppl1.3
-catalogue-version 2.43
+catalogue-date 2014-05-20 11:23:08 +0200
+catalogue-license lppl
+catalogue-version 2.54a
++++++ pstricks_calcnotes.doc.tar.xz ++++++
++++ 183431 lines of diff (skipped)
++++++ ptex.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/doc/man/man1/mendex.1 new/texmf-dist/doc/man/man1/mendex.1
--- old/texmf-dist/doc/man/man1/mendex.1 2011-06-22 17:33:05.000000000 +0200
+++ new/texmf-dist/doc/man/man1/mendex.1 2014-05-10 23:02:08.000000000 +0200
@@ -4,7 +4,7 @@
.SH ̾��
mendex \- ���������ġ���
.SH ����ˡ
-\fBmendex\fR [-ilqrcg] [\fB-s\fI sty\fR] [\fB-d\fI dic\fR] [\fB-o\fI ind\fR] [\fB-d\fI dic\fR] [\fB-t\fI log\fR] [\fB-p\fI no\fR] [\fI idx0 idx1 idx2 ...\fR]
+\fBmendex\fR [-ilqrcgEJS] [\fB-s\fI sty\fR] [\fB-d\fI dic\fR] [\fB-o\fI ind\fR] [\fB-d\fI dic\fR] [\fB-t\fI log\fR] [\fB-p\fI no\fR] [\fB-I\fI enc\fR] [\fI idx0 idx1 idx2 ...\fR]
.SH ����
.PP
\fImendex\fR ��ʸ��κ������������ġ���Ǥ��� LaTeX �ˤ����Ф��줿�����ꥹ�ȥե�����(\fI.idx\fR)���¤��ؤ����ºݤκ����Υ������ե�����η����������ޤ��� \fImakeindex\fR �ȸߴ��������ꡢ����ˡ��ɤߡפΰ����μ�֤餹�褦���ü첽����Ƥ��ޤ���
@@ -62,6 +62,9 @@
.TP 10
\fB-U\fR
���������ɤ�UTF-8�˻��ꤷ�ޤ������ϥե����롢���ϥե�����Ȥ�UTF-8�Ȥ��ư����ޤ���
+.TP 10
+\fB-I\fI enc\fR
+�����Хåե��Υ����ɤ�\fIenc\fR �˻��ꤷ�ޤ���\fIenc\fR �ˤ� \fIeuc\fR(EUC-JP) �ޤ��� \fIutf8\fR(UTF-8)�������ǽ�Ǥ���
.SH ��������ե�����
Files old/texmf-dist/doc/man/man1/mendex.man1.pdf and new/texmf-dist/doc/man/man1/mendex.man1.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/ptex.doc.tlpobj new/tlpkg/tlpobj/ptex.doc.tlpobj
--- old/tlpkg/tlpobj/ptex.doc.tlpobj 2013-05-18 03:42:42.000000000 +0200
+++ new/tlpkg/tlpobj/ptex.doc.tlpobj 2014-05-11 03:26:03.000000000 +0200
@@ -1,8 +1,8 @@
name ptex.doc
category Package
-revision 30518
+revision 33966
shortdesc doc files of ptex
-docfiles size=534
+docfiles size=566
texmf-dist/doc/man/man1/mendex.1
texmf-dist/doc/man/man1/mendex.man1.pdf
texmf-dist/doc/ptex/base/COPYRIGHT
++++++ ptex.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/tex/platex/base/pl209.def new/texmf-dist/tex/platex/base/pl209.def
--- old/texmf-dist/tex/platex/base/pl209.def 2011-11-10 06:42:16.000000000 +0100
+++ new/texmf-dist/tex/platex/base/pl209.def 2013-06-21 10:42:27.000000000 +0200
@@ -1,4 +1,4 @@
-%%
+%%
%% This is file `pl209.def',
%% generated with the docstrip utility.
%%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/tex/platex/config/hyphen.cfg new/texmf-dist/tex/platex/config/hyphen.cfg
--- old/texmf-dist/tex/platex/config/hyphen.cfg 2013-05-17 05:46:02.000000000 +0200
+++ new/texmf-dist/tex/platex/config/hyphen.cfg 2014-03-26 04:25:02.000000000 +0100
@@ -7,7 +7,7 @@
%% babel.dtx (with options: `patterns')
%% This is a generated file.
%%
-%% Copyright 2012-2013 Javier Bezos and Johannes L. Braams.
+%% Copyright 2012-2014 Javier Bezos and Johannes L. Braams.
%% Copyright 1989-2008 Johannes L. Braams and any individual authors
%% listed elsewhere in this file. All rights reserved.
%%
@@ -38,28 +38,33 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%% File 'babel.dtx'
-%%\ProvidesFile{babel.dtx}[2013/05/16 v3.9f The Babel package]
+%%\ProvidesFile{babel.dtx}[2014/03/24 v3.9k The Babel package]
%% Babel package for LaTeX2e.
-%% Copyright (C) 1989 -- 2008 by Johannes Braams,
+%% Copyright (C) 1989-2008 by Johannes Braams,
%% TeXniek
%% all rights reserved.
-%% Copyright (C) 2013 by Johannes Braams
+%% Copyright (C) 2013-2014 by Johannes Braams
%% TeXniek
%% by Javier Bezos
%% all rights reserved.
-\xdef\bbl@format{\jobname}
\ifx\ProvidesFile\@undefined
\def\ProvidesFile#1[#2 #3 #4]{%
\wlog{File: #1 #4 #3 <#2>}%
- \let\ProvidesFile\@undefined
- }
+ \let\ProvidesFile\@undefined}
\fi
-\ProvidesFile{hyphen.cfg}
- [2013/05/16 v3.9f %
- Babel language switching mechanism]
+\ProvidesFile{hyphen.cfg}[2014/03/24 3.9k Babel hyphens]
+\xdef\bbl@format{\jobname}
\ifx\AtBeginDocument\@undefined
+ \def\@empty{}
\let\orig@dump\dump
- \input plain.def\relax
+ \def\dump{%
+ \ifx\@ztryfc\@undefined
+ \else
+ \toks0=\expandafter{\@preamblecmds}%
+ \edef\@preamblecmds{\noexpand\@begindocumenthook\the\toks0}%
+ \def\@begindocumenthook{}%
+ \fi
+ \let\dump\orig@dump\let\orig@dump\@undefined\dump}
\fi
\ifx\language\@undefined
\csname newcount\endcsname\language
@@ -78,7 +83,7 @@
\countdef\last@language=19
\def\addlanguage{\alloc@9\language\chardef\@cclvi}
\fi
-\toks8{Babel <3.9f> and hyphenation patterns for }%
+\toks8{Babel <3.9k> and hyphenation patterns for }%
\def\process@line#1#2 #3 #4 {%
\ifx=#1%
\process@synonym{#2}%
@@ -191,13 +196,16 @@
\errhelp{language.dat loads no language, only synonyms}
\errmessage{Orphan language synonym}
\fi
-\ifx\addto@hook\@undefined
-\else
- \edef\bbl@tempa{%
- \noexpand\typeout{\the\toks8 \the\last@language\space languages
- loaded.}}%
- \expandafter\addto@hook\expandafter\everyjob\expandafter{\bbl@tempa}
-\fi
+\edef\bbl@tempa{%
+ \everyjob{%
+ \the\everyjob
+ \ifx\typeout\@undefined
+ \immediate\write16%
+ \else
+ \noexpand\typeout
+ \fi
+ {\the\toks8 \the\last@language\space languages loaded.}}}
+\bbl@tempa
\let\bbl@line\@undefined
\let\process@line\@undefined
\let\process@synonym\@undefined
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/texmf-dist/tex/ptex/base/kinsoku.tex new/texmf-dist/tex/ptex/base/kinsoku.tex
--- old/texmf-dist/tex/ptex/base/kinsoku.tex 2010-05-18 20:19:00.000000000 +0200
+++ new/texmf-dist/tex/ptex/base/kinsoku.tex 2013-06-21 10:42:55.000000000 +0200
@@ -1,5 +1,5 @@
-%
-% 行頭、行末禁則パラメータ
+%
+% $B9TF,!"9TKv6XB'%Q%i%a!<%?(B
%
% 1byte characters
\prebreakpenalty`!=10000
@@ -23,16 +23,16 @@
\prebreakpenalty`:=10000
\prebreakpenalty`]=10000
\postbreakpenalty`[=10000
-%全角文字
-\prebreakpenalty`、=10000
-\prebreakpenalty`。=10000
-\prebreakpenalty`,=10000
-\prebreakpenalty`.=10000
-\prebreakpenalty`・=10000
-\prebreakpenalty`:=10000
-\prebreakpenalty`;=10000
-\prebreakpenalty`?=10000
-\prebreakpenalty`!=10000
+%$BA43QJ8;z(B
+\prebreakpenalty`$B!"(B=10000
+\prebreakpenalty`$B!#(B=10000
+\prebreakpenalty`$B!$(B=10000
+\prebreakpenalty`$B!%(B=10000
+\prebreakpenalty`$B!&(B=10000
+\prebreakpenalty`$B!'(B=10000
+\prebreakpenalty`$B!((B=10000
+\prebreakpenalty`$B!)(B=10000
+\prebreakpenalty`$B!*(B=10000
\prebreakpenalty\jis"212B=10000
\prebreakpenalty\jis"212C=10000
\prebreakpenalty\jis"212D=10000
@@ -44,14 +44,14 @@
\prebreakpenalty\jis"2147=5000
\postbreakpenalty\jis"2148=5000
\prebreakpenalty\jis"2149=5000
-\prebreakpenalty`)=10000
-\postbreakpenalty`(=10000
-\prebreakpenalty`}=10000
-\postbreakpenalty`{=10000
-\prebreakpenalty`]=10000
-\postbreakpenalty`[=10000
-\postbreakpenalty`‘=10000
-\prebreakpenalty`’=10000
+\prebreakpenalty`$B!K(B=10000
+\postbreakpenalty`$B!J(B=10000
+\prebreakpenalty`$B!Q(B=10000
+\postbreakpenalty`$B!P(B=10000
+\prebreakpenalty`$B!O(B=10000
+\postbreakpenalty`$B!N(B=10000
+\postbreakpenalty`$B!F(B=10000
+\prebreakpenalty`$B!G(B=10000
\postbreakpenalty\jis"214C=10000
\prebreakpenalty\jis"214D=10000
\postbreakpenalty\jis"2152=10000
@@ -64,33 +64,33 @@
\prebreakpenalty\jis"2159=10000
\postbreakpenalty\jis"215A=10000
\prebreakpenalty\jis"215B=10000
-\prebreakpenalty`ー=10000
-\prebreakpenalty`+=200
-\prebreakpenalty`−=200
-\prebreakpenalty`==200
-\postbreakpenalty`#=200
-\postbreakpenalty`$=200
-\postbreakpenalty`%=200
-\postbreakpenalty`&=200
-\prebreakpenalty`ぁ=150
-\prebreakpenalty`ぃ=150
-\prebreakpenalty`ぅ=150
-\prebreakpenalty`ぇ=150
-\prebreakpenalty`ぉ=150
-\prebreakpenalty`っ=150
-\prebreakpenalty`ゃ=150
-\prebreakpenalty`ゅ=150
-\prebreakpenalty`ょ=150
+\prebreakpenalty`$B!<(B=10000
+\prebreakpenalty`$B!\(B=200
+\prebreakpenalty`$B!](B=200
+\prebreakpenalty`$B!a(B=200
+\postbreakpenalty`$B!t(B=200
+\postbreakpenalty`$B!p(B=200
+\postbreakpenalty`$B!s(B=200
+\postbreakpenalty`$B!u(B=200
+\prebreakpenalty`$B$!(B=150
+\prebreakpenalty`$B$#(B=150
+\prebreakpenalty`$B$%(B=150
+\prebreakpenalty`$B$'(B=150
+\prebreakpenalty`$B$)(B=150
+\prebreakpenalty`$B$C(B=150
+\prebreakpenalty`$B$c(B=150
+\prebreakpenalty`$B$e(B=150
+\prebreakpenalty`$B$g(B=150
\prebreakpenalty\jis"246E=150
-\prebreakpenalty`ァ=150
-\prebreakpenalty`ィ=150
-\prebreakpenalty`ゥ=150
-\prebreakpenalty`ェ=150
-\prebreakpenalty`ォ=150
-\prebreakpenalty`ッ=150
-\prebreakpenalty`ャ=150
-\prebreakpenalty`ュ=150
-\prebreakpenalty`ョ=150
+\prebreakpenalty`$B%!(B=150
+\prebreakpenalty`$B%#(B=150
+\prebreakpenalty`$B%%(B=150
+\prebreakpenalty`$B%'(B=150
+\prebreakpenalty`$B%)(B=150
+\prebreakpenalty`$B%C(B=150
+\prebreakpenalty`$B%c(B=150
+\prebreakpenalty`$B%e(B=150
+\prebreakpenalty`$B%g(B=150
\prebreakpenalty\jis"256E=150
\prebreakpenalty\jis"2575=150
\prebreakpenalty\jis"2576=150
@@ -107,38 +107,38 @@
\xspcode`.=2
%
% inhibitxspcode
-\inhibitxspcode`、=1
-\inhibitxspcode`。=1
-\inhibitxspcode`,=1
-\inhibitxspcode`.=1
-\inhibitxspcode`;=1
-\inhibitxspcode`?=1
-\inhibitxspcode`)=1
-\inhibitxspcode`(=2
-\inhibitxspcode`]=1
-\inhibitxspcode`[=2
-\inhibitxspcode`}=1
-\inhibitxspcode`{=2
-\inhibitxspcode`‘=2
-\inhibitxspcode`’=1
-\inhibitxspcode`“=2
-\inhibitxspcode`”=1
-\inhibitxspcode`〔=2
-\inhibitxspcode`〕=1
-\inhibitxspcode`〈=2
-\inhibitxspcode`〉=1
-\inhibitxspcode`《=2
-\inhibitxspcode`》=1
-\inhibitxspcode`「=2
-\inhibitxspcode`」=1
-\inhibitxspcode`『=2
-\inhibitxspcode`』=1
-\inhibitxspcode`【=2
-\inhibitxspcode`】=1
-\inhibitxspcode`—=0
-\inhibitxspcode`〜=0
-\inhibitxspcode`…=0
-\inhibitxspcode`¥=0
-\inhibitxspcode`°=1
-\inhibitxspcode`′=1
-\inhibitxspcode`″=1
+\inhibitxspcode`$B!"(B=1
+\inhibitxspcode`$B!#(B=1
+\inhibitxspcode`$B!$(B=1
+\inhibitxspcode`$B!%(B=1
+\inhibitxspcode`$B!((B=1
+\inhibitxspcode`$B!)(B=1
+\inhibitxspcode`$B!K(B=1
+\inhibitxspcode`$B!J(B=2
+\inhibitxspcode`$B!O(B=1
+\inhibitxspcode`$B!N(B=2
+\inhibitxspcode`$B!Q(B=1
+\inhibitxspcode`$B!P(B=2
+\inhibitxspcode`$B!F(B=2
+\inhibitxspcode`$B!G(B=1
+\inhibitxspcode`$B!H(B=2
+\inhibitxspcode`$B!I(B=1
+\inhibitxspcode`$B!L(B=2
+\inhibitxspcode`$B!M(B=1
+\inhibitxspcode`$B!R(B=2
+\inhibitxspcode`$B!S(B=1
+\inhibitxspcode`$B!T(B=2
+\inhibitxspcode`$B!U(B=1
+\inhibitxspcode`$B!V(B=2
+\inhibitxspcode`$B!W(B=1
+\inhibitxspcode`$B!X(B=2
+\inhibitxspcode`$B!Y(B=1
+\inhibitxspcode`$B!Z(B=2
+\inhibitxspcode`$B![(B=1
+\inhibitxspcode`$B!=(B=0
+\inhibitxspcode`$B!A(B=0
+\inhibitxspcode`$B!D(B=0
+\inhibitxspcode`$B!o(B=0
+\inhibitxspcode`$B!k(B=1
+\inhibitxspcode`$B!l(B=1
+\inhibitxspcode`$B!m(B=1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/ptex.tlpobj new/tlpkg/tlpobj/ptex.tlpobj
--- old/tlpkg/tlpobj/ptex.tlpobj 2013-05-18 03:42:43.000000000 +0200
+++ new/tlpkg/tlpobj/ptex.tlpobj 2014-05-11 03:26:05.000000000 +0200
@@ -1,6 +1,6 @@
name ptex
category Package
-revision 30518
+revision 33966
shortdesc A TeX system for publishing in Japanese.
longdesc PTeX adds features related to vertical writing, and deals with
longdesc other problems in typesetting Japanese. A set of additions to a
@@ -262,5 +262,5 @@
texmf-dist/tex/ptex/config/eptex.ini
texmf-dist/tex/ptex/config/ptex.ini
catalogue-ctan /language/japanese/ptex
-catalogue-date 2011-11-09 15:33:34 +0100
+catalogue-date 2014-02-26 23:03:13 +0100
catalogue-license other-free
++++++ pxjahyper.doc.tar.xz ++++++
++++++ pxjahyper.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/pxjahyper.tlpobj new/tlpkg/tlpobj/pxjahyper.tlpobj
--- old/tlpkg/tlpobj/pxjahyper.tlpobj 2012-12-12 04:35:00.000000000 +0100
+++ new/tlpkg/tlpobj/pxjahyper.tlpobj 2014-04-18 03:40:32.000000000 +0200
@@ -6,6 +6,6 @@
runfiles size=5
RELOC/tex/platex/pxjahyper/pxjahyper.sty
catalogue-ctan /language/japanese/pxjahyper
-catalogue-date 2012-12-11 14:08:29 +0100
-catalogue-license noinfo
+catalogue-date 2014-02-26 23:03:13 +0100
+catalogue-license other-free
catalogue-version 0.3
++++++ quattrocento.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/fonts/quattrocento/README new/doc/fonts/quattrocento/README
--- old/doc/fonts/quattrocento/README 2013-01-27 23:52:15.000000000 +0100
+++ new/doc/fonts/quattrocento/README 2013-09-25 23:33:10.000000000 +0200
@@ -1,4 +1,4 @@
-This is the README for the quattrocento package, version 2013-01-25.
+This is the README for the quattrocento package, version 2013-09-20.
This package provides LaTeX, pdfLaTeX, XeLaTeX and LuaLaTeX support for
the Quattrocento and Quattrocento Sans families of fonts, designed by
@@ -44,8 +44,8 @@
Options scaled=<number> or scale=<number> may be used to scale the
Quattrocento Sans fonts; the serifed variants are not affected.
-The only figure style supported is tabular-lining. Font encodings
-supported are OT1, T1, LY1 and TS1.
+The only figure style supported is proportional-lining. Font
+encodings supported are OT1, T1, LY1 and TS1.
Macros \quattrocento and \quattrocentosans select the Quattrocento
and Quattrocento Sans families, respectively.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/quattrocento.doc.tlpobj new/tlpkg/tlpobj/quattrocento.doc.tlpobj
--- old/tlpkg/tlpobj/quattrocento.doc.tlpobj 2013-01-28 04:32:39.000000000 +0100
+++ new/tlpkg/tlpobj/quattrocento.doc.tlpobj 2013-09-26 03:22:11.000000000 +0200
@@ -1,6 +1,6 @@
name quattrocento.doc
category Package
-revision 28957
+revision 31763
shortdesc doc files of quattrocento
relocated 1
docfiles size=71
++++++ quattrocento.tar.xz ++++++
Files old/fonts/opentype/impallari/quattrocento/Quattrocento-Italic.otf and new/fonts/opentype/impallari/quattrocento/Quattrocento-Italic.otf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/quattrocento.tlpobj new/tlpkg/tlpobj/quattrocento.tlpobj
--- old/tlpkg/tlpobj/quattrocento.tlpobj 2013-01-28 04:32:39.000000000 +0100
+++ new/tlpkg/tlpobj/quattrocento.tlpobj 2013-09-26 03:22:11.000000000 +0200
@@ -1,6 +1,6 @@
name quattrocento
category Package
-revision 28957
+revision 31763
shortdesc LaTeX support for Quattrocento and Quattrocento Sans fonts.
relocated 1
longdesc The package provides LaTeX, pdfLaTeX, XeLaTeX and LuaLaTeX
@@ -247,5 +247,5 @@
RELOC/tex/latex/quattrocento/TS1QuattrocentoSans-TLF.fd
RELOC/tex/latex/quattrocento/quattrocento.sty
catalogue-ctan /fonts/quattrocento
-catalogue-date 2012-11-26 01:49:31 +0100
+catalogue-date 2013-09-23 22:17:51 +0200
catalogue-license lppl
++++++ quoting.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/quoting/README new/doc/latex/quoting/README
--- old/doc/latex/quoting/README 2012-02-23 00:31:50.000000000 +0100
+++ new/doc/latex/quoting/README 2014-01-29 23:39:23.000000000 +0100
@@ -1,6 +1,6 @@
The quoting package
Thomas Titz
-2012/02/21
+2014/01/28
__________________
Overview
@@ -15,6 +15,12 @@
__________________
Change history
+Version 0.1c (2014/01/28)
+- "quoting" is now permitted to close with a list environment plus a
+ blank line
+- Options "font" and "font+" now work if a class (e.g. "scrbook",
+ "scrreprt") or another package uses \let\do\relax
+
Version 0.1b (2012/02/21)
- Improved syntax of options "font" and "font+"
- New options "begintext" and "endtext"
@@ -28,7 +34,7 @@
__________________
License
-Copyright (C) 2011--2012 by Thomas Titz
+Copyright (C) 2011--2014 by Thomas Titz
Permission is granted to distribute and/or modify this work under the
terms of the LaTeX Project Public License (LPPL), version 1.3c or
Files old/doc/latex/quoting/quoting.pdf and new/doc/latex/quoting/quoting.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/quoting.doc.tlpobj new/tlpkg/tlpobj/quoting.doc.tlpobj
--- old/tlpkg/tlpobj/quoting.doc.tlpobj 2012-02-23 04:30:36.000000000 +0100
+++ new/tlpkg/tlpobj/quoting.doc.tlpobj 2014-01-30 03:24:42.000000000 +0100
@@ -1,8 +1,8 @@
name quoting.doc
category Package
-revision 25474
+revision 32818
shortdesc doc files of quoting
relocated 1
-docfiles size=74
+docfiles size=76
RELOC/doc/latex/quoting/README
RELOC/doc/latex/quoting/quoting.pdf
++++++ quoting.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tex/latex/quoting/quoting.sty new/tex/latex/quoting/quoting.sty
--- old/tex/latex/quoting/quoting.sty 2012-02-23 00:31:50.000000000 +0100
+++ new/tex/latex/quoting/quoting.sty 2014-01-29 23:39:23.000000000 +0100
@@ -19,7 +19,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{quoting}
- [2012/02/21 v0.1b Consolidated environment for displayed text]
+ [2014/01/28 v0.1c Consolidated environment for displayed text]
\RequirePackage{etoolbox,kvoptions}
\SetupKeyvalOptions{family=quo,prefix=quo@}
\def\quo@in@false{\def\quo@indentfirsttype{0}}
@@ -36,11 +36,11 @@
\newcommand*{\quotingfont}{}
\define@key{quo}{font}{%
\def\quotingfont{}%
- \renewcommand*{\do}[1]{\appto{\quotingfont}{\csname ##1\endcsname}}%
+ \def\do##1{\appto{\quotingfont}{\csname ##1\endcsname}}%
\docsvlist{#1}%
}
\define@key{quo}{font+}{%
- \renewcommand*{\do}[1]{\appto{\quotingfont}{\csname ##1\endcsname}}%
+ \def\do##1{\appto{\quotingfont}{\csname ##1\endcsname}}%
\docsvlist{#1}%
}
\DeclareStringOption{begintext}
@@ -132,7 +132,11 @@
\quotingfont
\quo@begintext\ignorespaces
}{%
- \unskip\quo@endtext
+ \ifbool{hmode}{%
+ \unskip
+ }{%
+ }%
+ \quo@endtext
\endlist
\boolfalse{@endpe}%
\ifbool{quo@noorphanafter}{%
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/quoting.tlpobj new/tlpkg/tlpobj/quoting.tlpobj
--- old/tlpkg/tlpobj/quoting.tlpobj 2012-02-23 04:30:37.000000000 +0100
+++ new/tlpkg/tlpobj/quoting.tlpobj 2014-01-30 03:24:42.000000000 +0100
@@ -1,6 +1,6 @@
name quoting
category Package
-revision 25474
+revision 32818
shortdesc Consolidated environment for displayed text.
relocated 1
longdesc As an alternative to the LaTeX standard environments quotation
@@ -13,6 +13,6 @@
runfiles size=1
RELOC/tex/latex/quoting/quoting.sty
catalogue-ctan /macros/latex/contrib/quoting
-catalogue-date 2012-02-22 10:43:42 +0100
+catalogue-date 2014-01-29 17:50:59 +0100
catalogue-license lppl1.3
-catalogue-version v0.1b
+catalogue-version v0.1c
++++++ raleway.doc.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/raleway/README new/doc/latex/raleway/README
--- old/doc/latex/raleway/README 2013-05-02 23:52:06.000000000 +0200
+++ new/doc/latex/raleway/README 2013-10-23 02:18:50.000000000 +0200
@@ -1,4 +1,4 @@
-Raleway 1.0
+Raleway 1.1
===========
This package provides the Raleway font family as a LaTeX package.
Full documentation and revision history in `raleway.pdf`.
Files old/doc/latex/raleway/raleway-otf-specimen.pdf and new/doc/latex/raleway/raleway-otf-specimen.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/raleway/raleway-otf-specimen.tex new/doc/latex/raleway/raleway-otf-specimen.tex
--- old/doc/latex/raleway/raleway-otf-specimen.tex 2013-05-02 23:52:06.000000000 +0200
+++ new/doc/latex/raleway/raleway-otf-specimen.tex 2013-10-23 02:18:50.000000000 +0200
@@ -1,7 +1,7 @@
\documentclass[11pt,a4paper]{article}
\usepackage{array}
\usepackage[default,opentype]{raleway}
-\usepackage[margin=0mm,paperheight=30mm,paperwidth=200mm]{geometry}
+\usepackage[margin=0mm,paperheight=55mm,paperwidth=205mm]{geometry}
\newcommand*\spA{abcde}
\newcommand*\spB{01469}
@@ -21,16 +21,16 @@
>{\ralewaythin\bfseries}c }
& Thin & ExtraLight & Light & Regular & Medium & Semibold & Bold & Extrabold & Black \\
normal \spr
-% italic \spr[\itshape\spA]
+ italic \spr[\itshape\spA]
small-caps \spr[\scshape\spA]
-% italic small-caps \spr[\scshape\itshape\spA]
+ italic small-caps \spr[\scshape\itshape\spA]
capitals \spr[\MakeUppercase\spA]
-% italic capitals \spr[\itshape\MakeUppercase\spA]
+ italic capitals \spr[\itshape\MakeUppercase\spA]
lining \spr[\liningnums{\spB}]
-% lining italic \spr[\liningnums{\itshape\spB}]
+ lining italic \spr[\liningnums{\itshape\spB}]
% lining small-caps \spr[\liningnums{\scshape\spB}]
old-style \spr[\oldstylenums{\spB}]
-% old-style italic \spr[\oldstylenums{\itshape\spB}]
+ old-style italic \spr[\oldstylenums{\itshape\spB}]
% old-style small-caps \spr[\oldstylenums{\scshape\spB}]
\end{tabular}
\end{document}
\ No newline at end of file
Files old/doc/latex/raleway/raleway-type1-specimen.pdf and new/doc/latex/raleway/raleway-type1-specimen.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/raleway/raleway-type1-specimen.tex new/doc/latex/raleway/raleway-type1-specimen.tex
--- old/doc/latex/raleway/raleway-type1-specimen.tex 2013-05-02 23:52:06.000000000 +0200
+++ new/doc/latex/raleway/raleway-type1-specimen.tex 2013-10-23 02:18:50.000000000 +0200
@@ -1,8 +1,8 @@
\documentclass[11pt,a4paper]{article}
-\usepackage{array}
+\usepackage{array,slantsc}
\usepackage[default,type1]{raleway}
\usepackage[T1]{fontenc}
-\usepackage[margin=0mm,paperheight=30mm,paperwidth=200mm]{geometry}
+\usepackage[margin=0mm,paperheight=55mm,paperwidth=205mm]{geometry}
\newcommand*\spA{abcde}
\newcommand*\spB{01469}
@@ -22,16 +22,16 @@
>{\fontseries{k}\fontshape{n}\selectfont}c }
& Thin & ExtraLight & Light & Regular & Medium & Semibold & Bold & Extrabold & Black \\
normal \spr
-% italic \spr[\itshape\spA]
+ italic \spr[\itshape\spA]
small-caps \spr[\scshape\spA]
-% italic small-caps \spr[\scshape\itshape\spA]
+ italic small-caps \spr[\scshape\itshape\spA]
capitals \spr[\MakeUppercase\spA]
-% italic capitals \spr[\itshape\MakeUppercase\spA]
+ italic capitals \spr[\itshape\MakeUppercase\spA]
lining \spr[\spB]
-% lining italic \spr[\itshape\spB]
+ lining italic \spr[\itshape\spB]
% lining small-caps \spr[\scshape\spB]
old-style \spr[\oldstylenums{\spB}]
-% old-style italic \spr[\oldstylenums{\itshape\spB}]
+ old-style italic \spr[\oldstylenums{\itshape\spB}]
% old-style small-caps \spr[\oldstylenums{\scshape\spB}]
\end{tabular}
\end{document}
\ No newline at end of file
Files old/doc/latex/raleway/raleway.pdf and new/doc/latex/raleway/raleway.pdf differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/latex/raleway/raleway.tex new/doc/latex/raleway/raleway.tex
--- old/doc/latex/raleway/raleway.tex 2013-05-02 23:52:06.000000000 +0200
+++ new/doc/latex/raleway/raleway.tex 2013-10-23 02:18:50.000000000 +0200
@@ -18,8 +18,8 @@
}
\author{Silke Hofstra, \href{mailto:tex@slxh.nl}{tex@slxh.nl}}
-\date{Documentation for raleway v1.0.\\ \today}
-
+\date{Documentation for raleway v1.1.\\ \today}
+\listfiles
\begin{document}
\maketitle
\begin{multicols}{2}
@@ -83,23 +83,23 @@
\subsection{Files}
\begin{itemize*}
\item Raleway-Thin.otf
-% \item Raleway-ThinIt.otf
+ \item Raleway-Thin-Italic.otf
\item Raleway-ExtraLight.otf
-% \item Raleway-ExtraLightIt.otf
+ \item Raleway-ExtraLight-Italic.otf
\item Raleway-Light.otf
-% \item Raleway-LightIt.otf
+ \item Raleway-Light-Italic.otf
\item Raleway-Regular.otf
-% \item Raleway-RegularIt.otf
+ \item Raleway-Regular-Italic.otf
\item Raleway-Medium.otf
-% \item Raleway-MediumIt.otf
+ \item Raleway-Medium-Italic.otf
\item Raleway-Semibold.otf
-% \item Raleway-SemiboldIt.otf
+ \item Raleway-Semibold-Italic.otf
\item Raleway-Bold.otf
-% \item Raleway-BoldIt.otf
+ \item Raleway-Bold-Italic.otf
\item Raleway-ExtraBold.otf
-% \item Raleway-BlackIt.otf
+ \item Raleway-Black-Italic.otf
\item Raleway-Black.otf
-% \item Raleway-BlackIt.otf
+ \item Raleway-Black-Italic.otf
\end{itemize*}
\section{Type1}
@@ -107,12 +107,21 @@
\begin{itemize*}
% \item Raleway-LF
\item Raleway-TLF
- \item Raleway-OsF
+% \item Raleway-OsF
\item Raleway-TOsF
\end{itemize*}
-With series ‘t’, ‘el’, ‘l’, ‘m’, ‘mb’, ‘sb’, ‘b’, ‘eb’ and shapes ‘n’ and ‘sc’.
+With series ‘t’, ‘el’, ‘l’, ‘m’, ‘mb’, ‘sb’, ‘b’, ‘eb’, ‘k’ and shapes ‘n’ and ‘sc’, ‘it’ and ‘scit’.
+
+\textbf{Please note:} to use italic smallcaps the \texttt{slantsc} package is required.
\section{Version history}
+
+\subsection*{1.1}
+\begin{itemize*}
+ \item Weights are now handled with the \href{http://www.ctan.org/pkg/mweights}{mweights} package.
+ \item Fonts updated to v2.5, which includes italics.
+\end{itemize*}
+
\subsection*{1.0}
\begin{itemize*}
\item Initial release with v2.2 of the fonts.
@@ -150,6 +159,7 @@
dlig & Discretionary Ligatures \\
kern & Kerning \\
liga & Standard Ligatures \\
+ lnum & Lining Figures \\
onum & Oldstyle Figures \\
salt & Stylistic Alternates \\
smcp & Small Capitals \\
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tlpkg/tlpobj/raleway.doc.tlpobj new/tlpkg/tlpobj/raleway.doc.tlpobj
--- old/tlpkg/tlpobj/raleway.doc.tlpobj 2013-05-03 03:42:15.000000000 +0200
+++ new/tlpkg/tlpobj/raleway.doc.tlpobj 2013-10-23 03:21:27.000000000 +0200
@@ -1,9 +1,9 @@
name raleway.doc
category Package
-revision 30211
+revision 31969
shortdesc doc files of raleway
relocated 1
-docfiles size=53
+docfiles size=88
RELOC/doc/latex/raleway/OFL.txt
RELOC/doc/latex/raleway/README
RELOC/doc/latex/raleway/raleway-otf-specimen.pdf
++++++ raleway.tar.xz ++++++
++++ 5850 lines of diff (skipped)
++++++ texlive-specs-s-rpmlintrc ++++++
addFilter(".*dangling-symlink.*/fonts/.*")
addFilter(".*dangling-symlink.*/zypper\.py.*")
addFilter(".*description-shorter-than-summary.*")
addFilter(".*devel-file-in-non-devel-package.*/doc/.*")
addFilter(".*files-duplicate.*")
addFilter(".*E:.*files-duplicated-waste.*")
addFilter(".*spelling-error.*")
addFilter(".*zero-length.*")
addFilter(".*E:.*summary-too-long.*")
addFilter(".*incorrect-fsf-address.*")
addFilter(".*hidden-file-or-dir.*/\.tex.*")
addFilter(".*wrong-script-end-of-line-encoding.*")
addFilter(".*script-without-shebang.*/doc/.*")
addFilter(".*wrong-script-interpreter.*/doc/.*")
addFilter(".*non-executable-script.*/doc/.*")