[pstricks] multido

Michael Sharpe msharpe at ucsd.edu
Fri Nov 21 20:08:59 CET 2008


In Herbert's code, xVal is incremented in PostScript code in the line
pstVerb{ /xVal \function\space def}

You might find it easier for your particular problem to use clipping,  
as in:

\begin{pspicture}[showgrid=true](-1.5,-1.5)(1.5,1.5)
\begin{psclip}{\pscircle{1}}
\multido{\n=-1+.25}{9}{\psline(-1,\n)(1,\n)\psline(\n,-1)(\n,1)}
\end{psclip}
\end{pspicture}

Michael

On Nov 21, 2008, at 10:26 AM, Zbigniew Nitecki wrote:

> The following is copied from one of Herbert's responses to someone  
> else:
> ********************************************************************************
> \documentclass{article}
> \usepackage{amsmath}
> \usepackage{pstricks-add}
>
> \begin{document}
>
> \begin{center}
> \psset{xunit=2cm,yunit=2cm,algebraic=true}
> \begin{pspicture}[showgrid=true](-5,-5)(1,1)
>  \psaxes{->}(0,0)(-5,-5)(1,1)[$x$,-90][$y$,180]%
>  \rput(-2,-3){{$y=\dfrac{-2x+8}{~~2x-2}$}}%
>  \psplot {-5}{0.10}{x }%
>  \psplot[linecolor=red,linewidth=1.5pt]{-5}{0.10}{(-2*x+8)/(2*x-2)}%
>  \def\function{ -2 xVal mul 8 add 2 xVal mul -2 add div }%
>  \pstVerb{ /xVal 0 def }% start value
>  \multido{\nA=0+1}{4}{%
>    \psline[linecolor=blue,linewidth=1.5pt]{->}(! xVal xVal )(! xVal
> \function )
>    \psline[linecolor=blue,linewidth=1.5pt]{->}(! xVal \function )(!
> \function\space dup)
>    \pstVerb{ /xVal \function\space def}
>    \psline[linestyle=dashed,linecolor=blue]{->}(! xVal xVal)(! xVal  
> 0 )
>    \uput{1ex}[90](! xVal 0 ){$v_{\nA}$}
>  }
> \end{pspicture}
> \end{center}
>
> \end{document}
> ********************************************************************************************
> I am trying to use this as a model for plotting a function using a  
> rectangular grid, but over
> a non-rectangular region.  My basic question can be formulated even  
> letting the function be
> the zero constant:  so filling say the circle of radius 1 in the xy- 
> plane with lines parallel to the
> coordinate axes, spaced 0.25 apart.  My model is as follows, but my  
> question is what goes in the places marked with ??: I can't  
> understand where in the example above the value of xVal is
> incremented, or equivalently, the role of \nA.  Of course, if I am  
> making other sytactic errors,
> I'll be grateful for advice about them as well.
> ***********************************************************************************************
> \def\function{1 tVal dup mul sub exp 0.5}
> \pstVerb{tVal -0.75 def}
> \multido{??=??}{6}{%
> 	\psline(!\function \neg tVal)(!\function tVal)
> 	\psline{!tVal \function \neg){!tVal \function)
> }
> ***************************************************************************************************
>


More information about the PSTricks mailing list