2

This is a simple question

  • when I set Alpha and Beta in \pstThreeDCoor, why doesn't it affect all the following macros?

I have to set it in psset and also add a \pstThreeDCoor{Alpha=#1,Beta=#2,drawing=false} so that everything is affected

My usual grudge comes when I have plots and dots. When I set it \pstThreeDCoor, the plots are good but the dots behave with default Alpha and Beta.

I used the following workaraound but it is quite a mistery to me why this is even necessary:

\newcommand{\setAB}[2]{%
  \psset{Alpha=#1,Beta=#2}%
  \pstThreeDCoor{Alpha=#1,Beta=#2,drawing=false}}

Update: An example

A paraboloid with tangent plane and vectors

\documentclass[11pt]{book}
\usepackage{pst-3dplot}
\begin{document}
\begin{pspicture}(-2,-1)(3,3)
%if this line is commented, the plots are ok but the dots are not
%\psset{Beta=15}
\pstThreeDCoor[
    Beta=15,
    nameX=$X$,xMin=-1.7,xMax=1.7,
    nameY=$Y$,yMin=-1.7,yMax=1.7,
    nameZ=$Z$,zMin=-0.5,zMax=2.4,
    linecolor=lightgray,linewidth=1.3pt,arrowscale=2.0
]
%--------------BACKGROUND--------------
\psset{linecolor=lightgray,linewidth=0.7pt,yPlotpoints=1}
%horizontals
\parametricplotThreeD[yPlotpoints=2](0,360){t cos 1.5 mul t sin 1.5 mul 2.25}
%verticals
\parametricplotThreeD(0,1.55){-39 cos t mul -39 sin t mul t t mul}
\parametricplotThreeD(0,1.55){129 cos t mul 129 sin t mul t t mul}
%--------------FOREGROUND--------------
\psset{linecolor=black,linewidth=1.0pt}
%curvas coordenadas
\parametricplotThreeD(-45,135){t cos 1.2 mul t sin 1.2 mul 1.44}
\parametricplotThreeD( 0,1.60){80 cos t mul 80 sin t mul t t mul}
%punto P
\pstThreeDDot(0.208,1.182,1.44)
\pstThreeDPut[pOrigin=br](0.208,1.182,1.55){$P$ }
%VECTORS
\psset{arrowscale=1.3}
%vector Circu < -0.99 , 0.16 , 0 >
\pstThreeDLine{->}(0.208,1.182,1.44)(-0.782,1.342,1.44)
%vector Parab < 0.06 , 0.36 , 0.72 >
\pstThreeDLine{->}(0.208,1.182,1.44)(0.268,1.542,2.16)
%vector Norm < 0.115 , 0.713 , -0.366 >
\pstThreeDLine{->}(0.208,1.182,1.44)(0.323,1.895,1.074)
\pstThreeDPut[pOrigin=l](0.305,1.863,1.014){$\textbf{N}$}
%Plano Pi
\pstThreeDLine[linestyle=dashed,linewidth=0.8pt](-1.205,1.93,2.46)%
(-1.385,0.85,0.30)%
( 1.585,0.37,0.30)%
( 1.765,1.45,2.46)%
(-1.205,1.93,2.46)
\pstThreeDPut[pOrigin=l](-1.205,1.97,2.5){$\Pi$}
\end{pspicture}
\end{document}

I will include a set of two compilations that demonstrate the difference

A correct picture with everything in its place

A picture that does not have its elements in place

The example code is not a verbatim copy of my file but it is enough to produce an adequate result (it corresponds to the left sides of the example images)

hanzo2001
  • 509

1 Answers1

2

Alpha and Beta must be set global! For example:

\psset{Beta=90}
\pstThreeDCoor[
    nameX=$X$,xMin=-1.7,xMax=1.7,
    nameY=$Y$,yMin=-1.7,yMax=1.7,
    nameZ=$Z$,zMin=-0.5,zMax=2.4,
    linecolor=lightgray,linewidth=1.3pt,arrowscale=2.0
]

gives:

enter image description here

  • Ok, if that is so, why does it have an effect on the plot commands? I have had many issues with some things being set changing between compilations. Either way, I will begin to use your advice as common practice. Thank you – hanzo2001 Aug 25 '14 at 14:00