# splitting a pstricks-picture into several, stepwise

When explaining diagrams (in Economics), making them more complex in a step-by-step manner is often useful for students. What I usually do is to draw a pstricks image (that may contain a lot of details) and when done, I repeatedly copy&paste the code and comment out the parts that I want to be displayed later on.

A simple example for this procedure is

\documentclass[13pt]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{pstricks}
\usepackage{auto-pst-pdf}

\begin{document}

\begin{pspicture}(-1,-1)(10,10)
% always show this
\rput(0,0){\psaxes[labels=none,ticks=none]{->}(0,0)(8,8)}
%\psgrid(0,0)(8,8)
%step1
\psline(1,1)(5,6)
%step2 - final
%\psline(1,6)(6,1)
\end{pspicture}

\begin{pspicture}(-1,-1)(10,10)
% always show this
\rput(0,0){\psaxes[labels=none,ticks=none]{->}(0,0)(8,8)}
%\psgrid(0,0)(8,8)
%step1
\psline(1,1)(5,6)
%step2 - final
\psline(1,6)(6,1)
\end{pspicture}

\end{document}

The result is a pdf with extension ...-pics.pdf with two images on separate pages that I can include elsewhere with \includegraphics[page=1]{...-pics.pdf} and \includegraphics[page=2]{...-pics.pdf}

My question: Is there a more elegant way to do this where it is enough to draw the image just once and then tell pstricks that the image should be produced in different versions/steps? Something like

\begin{pspicture}(-1,-1)(10,10)
\stepwise[0]
\rput(0,0){\psaxes[labels=none,ticks=none]{->}(0,0)(8,8)}
\stepwise[1]
\psline(1,1)(5,6)
\stepwise[2]
\psline(1,6)(6,1)
\end{pspicture}

Using several \newcommands and then reusing code is an option, but I am looking for an easier way to this.

Use the beamer documentclass with a plain canvas:

\documentclass{beamer}
\usepackage{auto-pst-pdf}
\begin{document}
\frame[plain]{%
\psset{unit=0.75}
\begin{pspicture}[showgrid](-1,-1)(10,10)
\rput(0,0){\psaxes[labels=none,ticks=none]{->}(0,0)(8,8)}
\psline(1,1)(5,6)          \pause
\psline(1,6)(6,1)
\end{pspicture}%
}
\end{document}

You can run pdfcrop on that document if you want to delete the whitespace.

• thanks a lot, sounds like a straightforward workflow. However, if the main file is called stepwise.tex, I get stepwise.pdf with only one page and also only one of the two \pslines. However, stepwise-pics.pdf contains two pages with two properly cropped images. Hm - how to make sure that one can see the entire image in the main pdf, too? Because this is what is shown by my LaTeX-Editor.... – Daniel Jul 9 '16 at 21:48
• Adding for every pause command another frame containing a pspicture like this \frame[plain]{% \begin{pspicture}[showgrid](-1,-1)(1,1) \end{pspicture} } somehow "solves" the problem. – Daniel Jul 9 '16 at 22:37
• Found it: it is a problem with auto-pst-pdf. But using XeLaTeX for typesetting really solves the problem. (Hopefully with not too many side-effects.) THANKS! – Daniel Jul 9 '16 at 23:13
• Without using package auto-pst-pdf and running xelatex you'll get a pdf with two pages. – user2478 Jul 10 '16 at 5:57
• yes, thank you. (I then miss my multi-page pdf, though.) – Daniel Jul 10 '16 at 21:31