# [pstricks] surfaceparametree in pst-solides3D

Zbigniew Nitecki zbigniew.nitecki at tufts.edu
Tue Aug 25 17:13:34 CEST 2009

I'm trying to draw a piece of the surface $xy=1$ using pst-solides3D.
Using the example on p. 108 of the (English-language) pst-solides3D
manual
as a template, I managed to create a picture, but am confused by two
things.
Here is my code, questions follow:
> 			\begin{pspicture}(-2,-2)(2,4.5)
> 				\psset{viewpoint=5 5 5,
> 					Decran=15,
> 					lightsrc=viewpoint
> 				}
>
> 				\defFunction{front}(u,v)
> 					{u}
> 					{1 u div}
> 					{v}
>
> 				\psSolid[%
> 					object=surfaceparametree,
> 					base= 0.5 2 -1 1,
> 					fillcolor=lightgray,
> 					incolor=gray,
> 					function=front,
> 					ngrid=15 15,
> 					opacity=0.5
> 				](0,0,0)
>
> 				\psSolid[%
> 					object=surfaceparametree,
> 					base= -2 -0.5 -1 1,
> 					fillcolor=lightgray,
> 					incolor=gray,
> 					function=front,
> 					ngrid=15 15,
> 					opacity=0.5
> 				](0,0,0)
>
> 				\axesIIID[linecolor=red](1,1,0)(2,2,2)
>
> %				\psSolid[%
> %					object=surfaceparametree,
> %					base= 0.5 2 -1 1,
> %					fillcolor=lightgray,
> %					incolor=gray,
> %					function=front,
> %					ngrid=15 15,
> %					opacity=0.5
> %				](0,0,0)
> 			\end{pspicture}

Question 1:  When I comment out the first \psSolid and uncomment the
commented one,
I get an error message:
> Error: /undefined in front
> Operand stack:
>    S   --nostringval--   0.5   -1.0
> Execution stack:
>    %interp_exit   .runexec2   --nostringval--   --nostringval--   --
> nostringval--   2   %stopped_push   --nostringval--   --
> nostringval--   --nostringval--   false   1   %stopped_push   1905
> 1   3   %oparray_pop   1904   1   3   %oparray_pop   1888   1   3
> %oparray_pop   1771   1   3   %oparray_pop   --nostringval--
> %errorexec_pop   .runexec2   --nostringval--   --nostringval--   --
> nostringval--   2   %stopped_push   --nostringval--   --
> nostringval--   --nostringval--   1   1   15   --nostringval--
> %for_pos_int_continue   1   1   15   --nostringval--
> %for_pos_int_continue   --nostringval--
> Dictionary stack:
>    --dict:1148/1684(ro)(G)--   --dict:0/20(G)--   --dict:
> 117/200(L)--   --dict:736/1012(L)--   --dict:178/300(L)--   --dict:38/200(L)--
>    --dict:184/200(L)--   --dict:736/1012(L)--   --dict:14/20(L)--
> Current allocation mode is local
> Last OS error: 2
> Current file position is 465710
> GPL Ghostscript 8.63: Unrecoverable error, exit code 1
> ### FAILED to generate /tmp/altpdflatex.40083-1251212757/pst-
> solides3dTest2.pdf ()

Am I not allowed to have \axesIIID precede other objects (so that the
latter cover part of the axes)?

Question 2: I copied the "base" parameter from the example, but the
text seems to say that the appropriate parameter
for surfaceparametree should be "range", which I think gives the range
of values for u and v but in a different order.
In any case, when I use "range" I get unexpected behavior: the figure
drawn has no apparent relation to the one I want.

Any comment?

Zbigniew Nitecki
Department of Mathematics
Tufts University
Medford, MA 02155

telephones:
Office    (617)627-3843
Dept.    (617)627-3234
Dept. fax    (617)627-3966
http://www.tufts.edu/~znitecki/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tug.org/pipermail/pstricks/attachments/20090825/a36a255f/attachment.html>