summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-08-12 22:17:14 +0000
committerKarl Berry <karl@freefriends.org>2013-08-12 22:17:14 +0000
commit8dda786294d3a2eb9a110ff813d0a6d3d4870c51 (patch)
treece9dbab8c81a39f816188f5679c4590b0d36e562
parent368c76584a33996d358ac5341b92dc7135cad490 (diff)
pst-plot (12aug13)
git-svn-id: svn://tug.org/texlive/trunk@31420 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/Changes1
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/Contents4
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-1.pdfbin0 -> 439324 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-2.pdfbin0 -> 141286 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.bib (renamed from Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.dat (renamed from Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.dat)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.pdfbin0 -> 1194030 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.tex (renamed from Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex)57
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/doc/tugboat01-4.pdfbin0 -> 114016 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/latex/pst-plot.sty (renamed from Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.pdfbin1188325 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot.tex (renamed from Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex)28
-rw-r--r--Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot97.tex642
-rw-r--r--Master/texmf-dist/source/generic/pst-plot/Makefile86
14 files changed, 699 insertions, 119 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-plot/Changes b/Master/texmf-dist/doc/generic/pst-plot/Changes
index c33bc30f666..245c85c7d4f 100644
--- a/Master/texmf-dist/doc/generic/pst-plot/Changes
+++ b/Master/texmf-dist/doc/generic/pst-plot/Changes
@@ -1,4 +1,5 @@
----- pst-plot.tex
+1.48 2013-08-10 - allow x|ylabelOffset also for special Labels
1.47 2013-07-08 - added \psreadColumnData
1.46 2013-06-10 - fix bug with missing \relax in \get@label
1.45 2013-04-29 - fix for loglines with subticks>10 (pm)
diff --git a/Master/texmf-dist/doc/generic/pst-plot/doc/Contents b/Master/texmf-dist/doc/generic/pst-plot/doc/Contents
new file mode 100644
index 00000000000..fd84649dc46
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/Contents
@@ -0,0 +1,4 @@
+pst-plot-doc.pdf: the main documentation
+dtk02-1.pdf : Die mathematischen Funktionen von PostScript
+dtk02-2.pdf : Die Plotfunktionen von pst-plot
+tugboat01-4.pdf : The plot functions of pst-plot
diff --git a/Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-1.pdf b/Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-1.pdf
new file mode 100644
index 00000000000..0fc4ce30313
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-1.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-2.pdf b/Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-2.pdf
new file mode 100644
index 00000000000..014508059ef
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/dtk02-2.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.bib
index 95b2a67e6af..95b2a67e6af 100644
--- a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.bib
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.bib
diff --git a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.dat b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.dat
index 0a7bbbe462e..0a7bbbe462e 100644
--- a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.dat
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.dat
diff --git a/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.pdf b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.pdf
new file mode 100644
index 00000000000..fbcac7deaec
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.tex
index 07a6e04cb21..fd36215a17d 100644
--- a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.tex
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/pst-plot-doc.tex
@@ -804,18 +804,6 @@ can be outside of the visible \Lenv{pspicture} environment.
}
\end{lstlisting}
-
-\begin{LTXexample}[width=7cm]
-\psset{xAxisLabel=,yAxisLabel=,
- llx=-5mm,urx=1cm,lly=-5mm,
- mathLabel=false,
- xLabels={A,b,C,d,E,f,},
- xlabelsep=-5pt}
-\begin{psgraph}{->}(5,5){6cm}{6cm}
-\end{psgraph}
-\end{LTXexample}
-
-
\subsection{The new macro \Lcs{pslegend} for \nxLenv{psgraph}}\label{pslegend}
\begin{BDef}
@@ -1068,6 +1056,7 @@ redefinition, then do it for \Lcs{pst@@@hlabel} and
\Lkeyword{xEnd} & integer or empty & \{\} & \pageref{nxend}\\
\Lkeyword{xLabels} & list & \{\Lcs{empty}\} & \pageref{xLabels}\\
\Lkeyword{xlabelFactor} & anything & \{\Lcs{@empty}\} & \pageref{labelfactor}\\
+\Lkeyword{xlabelOffset} & length & 0 & \pageref{labelOffset}\\
\Lkeyword{xlabelPos} & \Lkeyval{bottom},\Lkeyval{axis},\Lkeyval{top}
& \Lkeyval{bottom} & \pageref{labelpos}\\
\Lkeyword{xlogBase} & integer or empty & \{\} & \pageref{xlogbase}\\
@@ -1093,6 +1082,7 @@ redefinition, then do it for \Lcs{pst@@@hlabel} and
\Lkeyword{yEnd} & integer or empty & \{\} & \pageref{ystartend}\\
\Lkeyword{yLabels} & list & \{\Lcs{empty}\} & \pageref{xLabels}\\
\Lkeyword{ylabelFactor} & literal & \{\Lcs{empty}\} & \pageref{labelfactor}\\
+\Lkeyword{ylabelOffset} & length & 0 & \pageref{labelOffset}\\
\Lkeyword{ylabelPos} & \Lkeyval{left}|\Lkeyval{axis}|\Lkeyval{right}
& \Lkeyval{left} & \pageref{labelpos}\\
\Lkeyword{ylogBase} & integer or empty & \{\} & \pageref{ylogbase}\\
@@ -1129,6 +1119,35 @@ redefinition, then do it for \Lcs{pst@@@hlabel} and
\end{LTXexample}
The values for \Lkeyword{xlabelsep} and \Lkeyword{ylabelsep} are taken into account.
+
+\subsection{Option \nxLkeyword{xLabelOffset} and \nxLkeyword{ylabelOffset}}\label{labelOffset}
+
+
+\begin{LTXexample}[width=7cm]
+\psset{xAxisLabel=,yAxisLabel=,
+ llx=-5mm,urx=1cm,lly=-5mm,
+ mathLabel=false,xlabelsep=-5pt,
+ xLabels={A,b,C,d,E,f}}
+\begin{psgraph}{->}(5,2){6cm}{2cm}
+\end{psgraph}
+\end{LTXexample}
+
+\xLkeyword{xlabelOffset}\xLkeyword{xLabels}\xLkeyword{xlabelsep}\xLkeyword{mathLabel}
+\begin{LTXexample}[width=7cm]
+\psset{xAxisLabel=,yAxisLabel=,
+ llx=-5mm,urx=1cm,lly=-5mm,
+ mathLabel=false,xlabelsep=-5pt,
+ xLabels={,A,b,C,d,E},
+ xlabelOffset=-0.5,
+ ylabelOffset=0.5}
+\begin{psgraph}{->}(5,2){6cm}{2cm}
+\end{psgraph}
+\end{LTXexample}
+
+
+
+
+
%------------------------------------------------------------------------------------
\subsection{Option \nxLkeyword{yMaxValue} and \nxLkeyword{yMinValue}}\label{yMaxValue}
%------------------------------------------------------------------------------------
@@ -1142,8 +1161,7 @@ two arguments \Lkeyword{yMaxValue} and \Lkeyword{yMinValue} can
be set.
-
-\begingroup
+\begin{lstlisting}
\begin{pspicture}(-6.5,-6)(6.5,7.5)
\multido{\rA=-4.71239+\psPiH}{7}{%
\psline[linecolor=black!20,linestyle=dashed](\rA,-5.5)(\rA,6.5)}
@@ -1151,15 +1169,16 @@ be set.
\psaxes[trigLabelBase=2,dx=\psPiH,xunit=\psPi,trigLabels]
{->}(0,0)(-1.7,-5.5)(1.77,6.5)[$x$,0][$y$,-90]
\psclip{\psframe[linestyle=none](-4.55,-5.5)(5.55,6.5)}
- \psplot[yMaxValue=6,yMinValue=-5,linewidth=2pt,linecolor=red]{-4.55}{4.55}{(x)/(sin(2*x))}
+ \psplot[?\ON?yMaxValue=6,yMinValue=-5?\OFF?,linewidth=2pt,linecolor=red]{-4.55}{4.55}{(x)/(sin(2*x))}
\endpsclip
\psplot[linestyle=dashed,linecolor=blue!30]{-4.8}{4.8}{x}
\psplot[linestyle=dashed,linecolor=blue!30]{-4.8}{4.8}{-x}
\rput(0,0.5){$\times$}
\end{pspicture}
-\endgroup
+\end{lstlisting}
-\begin{lstlisting}
+
+\begingroup
\begin{pspicture}(-6.5,-6)(6.5,7.5)
\multido{\rA=-4.71239+\psPiH}{7}{%
\psline[linecolor=black!20,linestyle=dashed](\rA,-5.5)(\rA,6.5)}
@@ -1167,13 +1186,13 @@ be set.
\psaxes[trigLabelBase=2,dx=\psPiH,xunit=\psPi,trigLabels]
{->}(0,0)(-1.7,-5.5)(1.77,6.5)[$x$,0][$y$,-90]
\psclip{\psframe[linestyle=none](-4.55,-5.5)(5.55,6.5)}
- \psplot[?\ON?yMaxValue=6,yMinValue=-5?\OFF?,linewidth=2pt,linecolor=red]{-4.55}{4.55}{(x)/(sin(2*x))}
+ \psplot[yMaxValue=6,yMinValue=-5,linewidth=2pt,linecolor=red]{-4.55}{4.55}{(x)/(sin(2*x))}
\endpsclip
\psplot[linestyle=dashed,linecolor=blue!30]{-4.8}{4.8}{x}
\psplot[linestyle=dashed,linecolor=blue!30]{-4.8}{4.8}{-x}
\rput(0,0.5){$\times$}
\end{pspicture}
-\end{lstlisting}
+\endgroup
\begingroup
diff --git a/Master/texmf-dist/doc/generic/pst-plot/doc/tugboat01-4.pdf b/Master/texmf-dist/doc/generic/pst-plot/doc/tugboat01-4.pdf
new file mode 100644
index 00000000000..eae65d2599b
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-plot/doc/tugboat01-4.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty b/Master/texmf-dist/doc/generic/pst-plot/latex/pst-plot.sty
index e515363d30d..e515363d30d 100644
--- a/Master/texmf-dist/tex/latex/pst-plot/pst-plot.sty
+++ b/Master/texmf-dist/doc/generic/pst-plot/latex/pst-plot.sty
diff --git a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.pdf b/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.pdf
deleted file mode 100644
index 49008f441e8..00000000000
--- a/Master/texmf-dist/doc/generic/pst-plot/pst-plot-doc.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex b/Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot.tex
index 5389d51c181..111a92abcaa 100644
--- a/Master/texmf-dist/tex/generic/pst-plot/pst-plot.tex
+++ b/Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot.tex
@@ -1,4 +1,4 @@
-% $Id: pst-plot.tex 802 2013-07-09 20:24:11Z herbert $
+% $Id: pst-plot.tex 817 2013-08-10 14:18:43Z herbert $
%% BEGIN pst-plot.tex
%%
%% plotting functions and data with PSTricks.
@@ -20,8 +20,8 @@
\ifx\PSTFPloaded\endinput\else \input pst-fp.tex \fi
\ifx\MultidoLoaded\endinput\else \input multido.tex \fi
%
-\def\fileversion{1.47}
-\def\filedate{2013/07/08}
+\def\fileversion{1.48}
+\def\filedate{2013/08/10}
\message{ v\fileversion, \filedate\space (tvz,hv)}
%
\edef\TheAtCode{\the\catcode`\@}
@@ -2092,8 +2092,8 @@ D\space##1%
%
% #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.
@@ -2111,8 +2111,9 @@ D\space##1%
\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}}}}%
+ \multido{\iB=#3+1}{\pst@tempB}%
+ {\uput{\psxlabelsep}[-90]{\pst@xLabelsRot}(\iB,0)%\psxlabelsep)
+ {\strut\pshlabel{\psPutXLabel{\iB}}}}%
\fi%
}
% Knows \pst@dimb and \pst@cnta
@@ -2377,19 +2378,18 @@ D\space##1%
\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\relax
- #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#2\relax\else\expandafter\get@Label#2,#3\@nil\fi%
+ \else #1\fi%
}
%
\def\psFixpoint{\pst@object{psFixpoint}}
diff --git a/Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot97.tex b/Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot97.tex
new file mode 100644
index 00000000000..c72ea79624a
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-plot/tex/pst-plot97.tex
@@ -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 --git a/Master/texmf-dist/source/generic/pst-plot/Makefile b/Master/texmf-dist/source/generic/pst-plot/Makefile
deleted file mode 100644
index 3fcfc3fedf8..00000000000
--- a/Master/texmf-dist/source/generic/pst-plot/Makefile
+++ /dev/null
@@ -1,86 +0,0 @@
-
-# `Makefile' for `pst-plot-doc.pdf', hv, 2010/01/22
-
-.SUFFIXES : .tex .ltx .dvi .ps .pdf .eps
-
-PACKAGE = pst-plot
-
-MAIN = $(PACKAGE)-doc
-
-LATEX = latex
-
-ARCHNAME = $(MAIN)-$(shell date +%y%m%d)
-
-ARCHFILES = $(PACKAGE).sty $(PACKAGE).tex $(PACKAGE).pro $(MAIN).tex README Changes Makefile
-
-TDS = ~/PSTricks/PSTricks-TDS
-
-all : doc clean
-#tds
-
-doc: $(MAIN).pdf
-
-$(MAIN).pdf : $(MAIN).ps
- GS_OPTIONS="-dAutoRotatePages=/None -dNoSafer" ps2pdf $<
-# echo "\documentclass[a4paper]{article}" > temp.tex
-# echo "\usepackage{pdfpages}" >> temp.tex
-# echo "\begin{document}" >> temp.tex
-# echo "\includepdf[pages=1-5]{pst-plot-doc}" >> temp.tex
-# echo "\includepdf[pages=25-29]{../pstricks/doc/pstricks-doc}" >> temp.tex
-# echo "\includepdf[pages=6-]{pst-plot-doc}" >> temp.tex
-# echo "\end{document}" >> temp.tex
-# pdflatex temp
-# mv temp.pdf pst-plot-doc.pdf
-
-$(MAIN).ps : $(MAIN).dvi
- dvips $<
-
-$(MAIN).dvi : $(MAIN).tex
- $(LATEX) $<
- $(LATEX) $<
- if ! test -f $(basename $<).glo ; then touch $(basename $<).glo; fi
- if ! test -f $(basename $<).idx ; then touch $(basename $<).idx; fi
- makeindex -s gglo.ist -t $(basename $<).glg -o $(basename $<).gls \
- $(basename $<).glo
- makeindex -s pst-doc.ist -t $(basename $<).ilg -o $(basename $<).ind \
- $(basename $<).idx
- bibtex $(basename $<)
- $(LATEX) $<
- $(LATEX) $<
-
-clean :
- $(RM) $(addprefix $(MAIN), .log .aux .glg .glo .gls .ilg .idx .ind .tmp .toc .out )
- $(RM) $(addprefix $(MAIN), .dvi .ps .blg .bbl )
- rm *.data
-# rm temp*
-
-veryclean : clean
- $(RM) $(addprefix $(MAIN), .pdf .bbl .blg)
-
-arch :
- zip $(ARCHNAME).zip $(ARCHFILES)
-
-tds:
- cp -u *.sty ~/Links/texmf-local-latex/$(PACKAGE)/
-#
- cp -u Changes $(TDS)/doc/generic/$(PACKAGE)/
- cp -u README $(TDS)/doc/generic/$(PACKAGE)/
- cp -u $(MAIN).pdf $(TDS)/doc/generic/$(PACKAGE)/
-#
- cp -u Changes $(TDS)/tex/latex/$(PACKAGE)/
- cp -u $(PACKAGE).sty $(TDS)/tex/latex/$(PACKAGE)/
-#
- cp -u Changes $(TDS)/tex/generic/$(PACKAGE)/
- cp -u $(PACKAGE).tex $(TDS)/tex/generic/$(PACKAGE)/
- cp -u $(PACKAGE)97.tex $(TDS)/tex/generic/$(PACKAGE)/
-#
-# cp -u Changes $(TDS)/dvips/$(PACKAGE)/
-# cp -u $(PACKAGE).pro $(TDS)/dvips/$(PACKAGE)/
-#
- cp -u Changes $(TDS)/source/$(PACKAGE)/
- cp -u $(MAIN).tex $(TDS)/source/$(PACKAGE)/
- cp -u $(MAIN).bib $(TDS)/source/$(PACKAGE)/
- cp -u Makefile $(TDS)/source/$(PACKAGE)/
-
-
-# EOF