From 8743163ad93a019b9118cc380cfc656d4d136a6c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 21 Feb 2010 23:09:27 +0000 Subject: pst-3dplot 1.90 (18feb10) git-svn-id: svn://tug.org/texlive/trunk@17113 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/generic/pst-3dplot/Changes | 2 + .../doc/generic/pst-3dplot/pst-3dplot-doc.pdf | Bin 2934096 -> 2937408 bytes .../doc/generic/pst-3dplot/pst-3dplot-doc.tex | 195 +++++++++------------ 3 files changed, 88 insertions(+), 109 deletions(-) (limited to 'Master/texmf-dist/doc') diff --git a/Master/texmf-dist/doc/generic/pst-3dplot/Changes b/Master/texmf-dist/doc/generic/pst-3dplot/Changes index 410fc2c3fce..5d1f93b0fa2 100644 --- a/Master/texmf-dist/doc/generic/pst-3dplot/Changes +++ b/Master/texmf-dist/doc/generic/pst-3dplot/Changes @@ -17,6 +17,8 @@ pst-3dplot.pro -------- pst-3dplot.tex -------- +1.90 2010-02-18 - enable the comma option + - fix bug with tx@addDict for AlgParser 1.89 2010-01-28 - enable coordinates for calculations 1.88 2009-11-24 - new optional argument CoorOffset 1.87 2009-11-12 - fix problem with \def\pst@par{} for objects diff --git a/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.pdf b/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.pdf index a93be92febb..185c74e3262 100644 Binary files a/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.pdf and b/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.pdf differ diff --git a/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.tex b/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.tex index 5a9c7819eeb..3e728963c74 100644 --- a/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.tex +++ b/Master/texmf-dist/doc/generic/pst-3dplot/pst-3dplot-doc.tex @@ -6,8 +6,7 @@ \listfiles \usepackage[utf8]{inputenc} -\usepackage{pst-3dplot,pst-3d,pst-grad} -\SpecialCoor +\usepackage{pst-grad,pst-3dplot} \let\pstFV\fileversion \let\belowcaptionskip\abovecaptionskip @@ -269,56 +268,56 @@ Without any options we get the default view with the in table~\ref{tab:coor} listed options with the predefined values. { -\ttfamily -\begin{longtable}{lll} +\begin{longtable}{@{}l>{\ttfamily}lll@{}} \caption{All new parameters for \texttt{pst-3dplot}\label{tab:coor}}\\ -\textrm{Name} & \textrm{Type} & \textrm{Default}\\\hline +\textrm{name} & \textrm{type} & \textrm{Default} & \emph{page}\\\hline \endfirsthead -\textrm{Name} & \textrm{Type} & \textrm{Default}\\\hline +\textrm{name} & \textrm{type} & \textrm{Default} & \emph{page}\\\hline \endhead -\Lkeyword{Alpha} & & 45\\ -\Lkeyword{Beta} & & 30\\ -\Lkeyword{xMin} & & -1\\ %ok -\Lkeyword{xMax} & & 4\\ %ok -\Lkeyword{yMin} & & -1\\ %ok -\Lkeyword{yMax} & & 4\\ %ok -\Lkeyword{zMin} & & -1\\ %ok -\Lkeyword{zMax} & & 4\\ %ok -\Lkeyword{nameX} & & \$x\$\\ -\Lkeyword{spotX} & & 180\\ -\Lkeyword{nameY} & & \$y\$\\ -\Lkeyword{spotY} & & 0\\ -\Lkeyword{nameZ} & & \$z\$\\ -\Lkeyword{spotZ} & & 90\\ -\Lkeyword{IIIDticks} & false|true & false\\ -\Lkeyword{IIIDlabels} & false|true & false\\ -\Lkeyword{Dx} & & 1\\ -\Lkeyword{Dy} & & 1\\ -\Lkeyword{Dz} & & 1\\ -\Lkeyword{IIIDxTicksPlane} & xy|xz|yz & xy\\ -\Lkeyword{IIIDyTicksPlane} & xy|xz|yz & yz\\ -\Lkeyword{IIIDzTicksPlane} & xy|xz|yz & yz\\ -\Lkeyword{IIIDticksize} & & 0.1\\ -\Lkeyword{IIIDxticksep} & & -0.4\\ -\Lkeyword{IIIDyticksep} & & -0.2\\ -\Lkeyword{IIIDzticksep} & & 0.2\\ -\Lkeyword{RotX} & & 0\\ -\Lkeyword{RotY} & & 0\\ -\Lkeyword{RotZ} & & 0\\ -\Lkeyword{RotAngle} & & 0\\ -\Lkeyword{xRotVec} & & 0\\ -\Lkeyword{yRotVec} & & 0\\ -\Lkeyword{zRotVec} & & 0\\ -\Lkeyword{RotSequence} & xyz|xzy|yxz|yzx|zxy|zyx|quaternion & xyz\\ -\Lkeyword{RotSet} & set|concat|keep & set\\ -\Lkeyword{eulerRotation} & true|false & false\\ -\Lkeyword{IIIDOffset} & \{\} & \{0,0,0\}\\ -\Lkeyword{zlabelFactor} & & \verb=\relax= \\ +\Lkeyword{Alpha} & & 45 & \pageref{exa:Alpha}\\ +\Lkeyword{Beta} & & 30 & \pageref{exa:Beta}\\ +\Lkeyword{xMin} & & -1 & \pageref{exa:xMin}\\ %ok +\Lkeyword{xMax} & & 4 & \pageref{exa:xMax}\\ %ok +\Lkeyword{yMin} & & -1 & \pageref{exa:yMin}\\ %ok +\Lkeyword{yMax} & & 4 & \pageref{exa:yMax}\\ %ok +\Lkeyword{zMin} & & -1 & \pageref{exa:zMin}\\ %ok +\Lkeyword{zMax} & & 4 & \pageref{exa:zMax}\\ %ok +\Lkeyword{nameX} & & \$x\$ & \pageref{exa:nameX}\\ +\Lkeyword{spotX} & & 180 & \pageref{exa:spotX}\\ +\Lkeyword{nameY} & & \$y\$ & \pageref{exa:nameY}\\ +\Lkeyword{spotY} & & 0 & \pageref{exa:spotY}\\ +\Lkeyword{nameZ} & & \$z\$ & \pageref{exa:nameZ}\\ +\Lkeyword{spotZ} & & 90 & \pageref{exa:spotZ}\\ +\Lkeyword{IIIDticks} & false|true & false & \pageref{exa:IIIDticks}\\ +\Lkeyword{IIIDlabels} & false|true & false& \pageref{exa:IIIDlabels}\\ +\Lkeyword{Dx} & & 1 & \pageref{exa:Dx}\\ +\Lkeyword{Dy} & & 1 & \pageref{exa:Dy}\\ +\Lkeyword{Dz} & & 1 & \pageref{exa:Dz}\\ +\Lkeyword{IIIDxTicksPlane} & xy|xz|yz & xy & \pageref{exa:IIIDxTicksPlane}\\ +\Lkeyword{IIIDyTicksPlane} & xy|xz|yz & yz & \pageref{exa:IIIDyTicksPlane}\\ +\Lkeyword{IIIDzTicksPlane} & xy|xz|yz & yz & \pageref{exa:IIIDzTicksPlane}\\ +\Lkeyword{IIIDticksize} & & 0.1 & \pageref{exa:IIIDticksize}\\ +\Lkeyword{IIIDxticksep} & & -0.4 & \pageref{exa:IIIDxticksep}\\ +\Lkeyword{IIIDyticksep} & & -0.2 & \pageref{exa:IIIDyticksep}\\ +\Lkeyword{IIIDzticksep} & & 0.2 & \pageref{exa:IIIDzticksep}\\ +\Lkeyword{RotX} & & 0 & \pageref{exa:RotX}\\ +\Lkeyword{RotY} & & 0 & \pageref{exa:RotY}\\ +\Lkeyword{RotZ} & & 0 & \pageref{exa:RotZ}\\ +\Lkeyword{RotAngle} & & 0 & \pageref{exa:RotAngle}\\ +\Lkeyword{xRotVec} & & 0 & \pageref{exa:xRotVec}\\ +\Lkeyword{yRotVec} & & 0 & \pageref{exa:yRotVec}\\ +\Lkeyword{zRotVec} & & 0 & \pageref{exa:zRotVec}\\ +\Lkeyword{RotSequence} & xyz|xzy|yxz|yzx|zxy|zyx|quaternion & xyz & \pageref{exa:RotSequence}\\ +\Lkeyword{RotSet} & set|concat|keep & set & \pageref{exa:RotSet}\\ +\Lkeyword{eulerRotation} & true|false & false & \pageref{eulerRotation}\\ +\Lkeyword{IIIDOffset} & \{\} & \{0,0,0\} & \pageref{exa:IIIDOffset}\\ +\Lkeyword{zlabelFactor} & & \verb=\relax= & \pageref{exa:zlabelFactor}\\ +\Lkeyword{comma} & false|true & false & \pageref{exa:comma}\\ \end{longtable} } - +\xLcs{pstThreeDCoor} \lstset{wide=false} \begin{LTXexample}[width=4.25cm] \begin{pspicture}(-3,-2.5)(3,4.25) @@ -340,7 +339,7 @@ Cartesian coordinate system. - +\label{exa:xMax}\label{exa:yMax}\label{exa:zMax}\label{exa:Alpha}\label{exa:Beta} \begin{LTXexample}[width=4.25cm] \begin{pspicture}(-2,-1.25)(1,2.25) \pstThreeDCoor[linewidth=1.5pt,linecolor=blue, @@ -397,9 +396,10 @@ Cartesian coordinate system. \lstset{wide=true} -\subsection{Ticks and labels} +\subsection{Ticks, comma and labels} With the option \Lkeyword{IIIDticks} the axes get ticks and with \Lkeyword{IIIDlabels} labels. -Without ticks also labels are not possible. +Without ticks also labels are not possible. The optional argument \Lkeyword{comma}, which is +defined in the package \LPack{pst-plot} allows to use a comma instead of a dot for real values. There are several options to place the labels in right plane to get an optimal view. The view of the ticklabels can be changed by redefining the macro @@ -408,30 +408,36 @@ ticklabels can be changed by redefining the macro \def\psxyzlabel#1{\bgroup\footnotesize\textsf{#1}\egroup} \end{verbatim} - +\label{exa:IIIDticksize} +\xLcs{pstThreeDPut} \psset{unit=1.25,gridlabels=0pt} \begin{LTXexample}[width=7.25cm] \begin{pspicture}(-3,-2.5)(3,4) - \pstThreeDCoor[IIIDticks]% + \pstThreeDCoor[IIIDticks,IIIDticksize=0.05]% \pstThreeDPut(3,0,3){\Huge default} \end{pspicture} \end{LTXexample} +\label{exa:IIIDticks}\label{exa:IIIDlabels}\label{exa:xMin}\label{exa:yMin}\label{exa:zMin} \begin{LTXexample}[width=7.25cm] \begin{pspicture}(-3,-2.5)(3,4) - \pstThreeDCoor[linecolor=black,% + \pstThreeDCoor[linecolor=black, IIIDticks,IIIDlabels, - xMin=-2,yMin=-2,zMin=-2]% + xMin=-2,yMin=-2,zMin=-2] \end{pspicture} \end{LTXexample} +\label{exa:comma}\label{exa:IIIDzTicksPlane}\label{exa:IIIDyTicksPlane}\label{exa:IIIDxTicksPlane} +\label{exa:IIIDxticksep}\label{exa:IIIDyticksep}\label{exa:IIIDzticksep} +\label{exa:Dx}\label{exa:Dy}\label{exa:Dz} \begin{LTXexample}[width=7.25cm] \begin{pspicture}(-3,-2.5)(3,4) - \pstThreeDCoor[linecolor=black,% - IIIDticks,IIIDzTicksPlane=yz,IIIDzticksep=-0.2,% - IIIDxTicksPlane=yz,,IIIDxticksep=-0.2,% - IIIDyTicksPlane=xy,,IIIDyticksep=0.2,% - Dx=2,Dy=1,Dz=0.25,Alpha=-135,Beta=-30]% + \pstThreeDCoor[linecolor=black, + IIIDticks,IIIDzTicksPlane=yz, + IIIDzticksep=-0.2,IIIDlabels, + IIIDxTicksPlane=yz,,IIIDxticksep=-0.2, + IIIDyTicksPlane=xy,,IIIDyticksep=0.2, + comma,Dx=1.25,Dy=1.5,Dz=0.25] \end{pspicture} \end{LTXexample} @@ -445,6 +451,7 @@ The following example shows a wrong placing of the labels, the planes should be \end{pspicture} \end{LTXexample} +\label{exa:planecorr} \begin{LTXexample}[width=7.25cm] \psset{Alpha=-60,Beta=60} \begin{pspicture}(-4,-2.25)(1,3) @@ -455,6 +462,7 @@ The following example shows a wrong placing of the labels, the planes should be \end{pspicture} \end{LTXexample} +\xLkeyval{xyrot} \begin{LTXexample}[width=7.25cm] \psset{Alpha=-60,Beta=60} \begin{pspicture}(-4,-2.25)(1,3) @@ -467,7 +475,7 @@ The following example shows a wrong placing of the labels, the planes should be For the z axis it is possible to define a factor for the values, e.g. -\setIIIDplotDefaults +\setIIIDplotDefaults\label{exa:zlabelFactor}\xLkeyword{zlabelFactor} \xLkeyword{zlabelFactor} %\define@key[psset]{pst-3dplot}{zlabelFactor}[\relax]{\def\psk@zlabelFactor{#1}} \begin{LTXexample}[width=7.25cm] @@ -483,6 +491,7 @@ The optional argument \Lkeyword{IIIDOffset} allows to set the intermediate point axes to another point as the default of \verb+(0,0,0)+. The values have to be put into braces: %\define@key[psset]{pst-3dplot}{zlabelFactor}[\relax]{\def\psk@zlabelFactor{#1}} +\label{exa:IIIDOffset}\xLkeyword{IIIDOffset} \begin{LTXexample}[width=7.25cm] \begin{pspicture}(-4,-1.25)(1,4) \pstThreeDCoor[IIIDticks,IIIDlabels, @@ -498,6 +507,7 @@ and all other three dimensional objects. With \Lkeyword{coorType}=1 the y--z-axes are orthogonal and the angle between x- and y-axis is \Lkeyword{Alpha}. The angle \Lkeyword{Beta} is not valid. +\label{exa:coorType}\xLkeyword{coorType} \begin{LTXexample}[width=9.75cm] \psset{coorType=1,Alpha=135} \begin{pspicture}(-2,-3)(3,3) @@ -509,6 +519,7 @@ With \Lkeyword{coorType}=2 the y--z-axes are orthogonal and the angle between x- is always 135 degrees and the x-axis is shortened by a factor of $1/\sqrt{2}$. The angle \Lkeyword{Alpha} is only valid for placing the ticks, if any. The angle \Lkeyword{Beta} is not valid. +\xLkeyval{yz} \begin{LTXexample}[width=9.75cm] \psset{coorType=2,Alpha=90, IIIDxTicksPlane=yz} @@ -543,10 +554,14 @@ The angles \Lkeyword{Alpha} and \Lkeyword{Beta} are not valid. \clearpage \section{Rotation} -The coordinate system can be rotated independent from the given Alpha and Beta values. This makes it possible to place -the axes in any direction and any order. There are the three options \Lkeyword{RotX}, \Lkeyword{RotY}, \Lkeyword{RotZ} and an -additional one for the rotating sequence (Lkeyword{rotSequence}), which can be any combination of the three letters \verb+xyz+. +The coordinate system can be rotated independent from the given Alpha +and Beta values. This makes it possible to place +the axes in any direction and any order. There are the three options +\Lkeyword{RotX}, \Lkeyword{RotY}, \Lkeyword{RotZ} and an +additional one for the rotating sequence (\Lkeyword{rotSequence}), which can +be any combination of the three letters \verb+xyz+. +\label{exa:RotZ} \begin{LTXexample}[pos=t] \begin{pspicture}(-6,-3)(6,3) \multido{\iA=0+10}{18}{% @@ -556,6 +571,7 @@ additional one for the rotating sequence (Lkeyword{rotSequence}), which can be a \end{LTXexample} +\label{exa:RotX}\label{exa:RotY}\label{exa:RotSequence} \begin{LTXexample}[pos=t] \psset{unit=2,linewidth=1.5pt,drawCoor=false} \begin{pspicture}(-2,-1.5)(2,2.5)% @@ -594,6 +610,7 @@ specifying a \emph{single} angle of rotation \Lkeyword{RotAngle} (in degrees) about a vector whose coordinates are \Lkeyword{xRotVec}, \Lkeyword{yRotVec}, and \Lkeyword{zRotVec} using the \Lkeyval{quaternion} option for \Lkeyword{RotSequence}. +\label{exa:RotAngle}\label{exa:xRotVec}\label{exa:yRotVec}\label{exa:zRotVec} \begin{LTXexample}[pos=t] \begin{pspicture}(-3,-1.8)(3,3) \multido{\iA=0+10}{18}{% @@ -630,6 +647,7 @@ rotation parameters. Mostly used internally to eliminate redundant calculations. \end{itemize} +\label{exa:RotSet} \begin{LTXexample}[pos=t] \begin{pspicture}(-3,-3)(3.6,3) \pstThreeDCoor[linecolor=blue, RotSequence=quaternion, RotAngle=0, RotSet=set, xRotVec=0,yRotVec=0,zRotVec=1, @@ -643,6 +661,7 @@ calculations. \end{pspicture} \end{LTXexample} +\label{eulerRotation} By default, the rotations defined by \verb+RotX+, \verb+RotY+, and \verb+RotZ+ are rotations about the \emph{original} coordinate system's, $x$, $y$, or $z$ @@ -650,7 +669,7 @@ axes, respectively. More traditionally, however, these rotation angles are defined as rotations about the rotated coordinate system's \emph{current}, $x$, $y$, or $z$ axis. The \verb+pst-3dplot+ variable option \verb+eulerRotation+ can be set to \verb+true+ to activate Euler angle -definitions; i.e., \verb+eulerRotation=true+. The default is +definitions; i.e., \Lkeyword{eulerRotation}=\true. The default is \verb+eulerRotation=false+. \begin{LTXexample}[pos=t] @@ -2320,8 +2339,10 @@ The rotation angles are all predefined to $0$ degrees. } \end{pspicture} +\label{exa:nameX}\label{exa:nameY}\label{exa:nameZ}\label{exa:spotX}\label{exa:spotY}\label{exa:spotZ} \begin{pspicture}(-6,-4)(6,5) - \pstThreeDCoor[xMin=-1,xMax=5,yMin=-1,yMax=5,zMin=-1,zMax=5] + \pstThreeDCoor[xMin=-1,xMax=5,yMin=-1,yMax=5,zMin=-1,zMax=5, + nameX=u,nameY=v,nameZ=w,spotX=90,spotY=0,spotZ=90] \multido{\iA=0+10}{36}{\pstRotPointIIID[RotY=\iA](2,0,3){\xVal}{\yVal}{\zVal} \pstThreeDDot[drawCoor=true](\xVal,\yVal,\zVal) } @@ -2345,7 +2366,8 @@ The rotation angles are all predefined to $0$ degrees. \end{pspicture} \begin{pspicture}(-6,-4)(6,5) - \pstThreeDCoor[xMin=-1,xMax=5,yMin=-1,yMax=5,zMin=-1,zMax=5] + \pstThreeDCoor[xMin=-1,xMax=5,yMin=-1,yMax=5,zMin=-1,zMax=5, + nameX=u,nameY=v,nameZ=w,spotX=90,spotY=0,spotZ=90] \multido{\iA=0+10}{36}{\pstRotPointIIID[RotY=\iA](2,0,3){\xVal}{\yVal}{\zVal} \pstThreeDDot[drawCoor=true](\xVal,\yVal,\zVal) } @@ -2391,51 +2413,6 @@ The syntax is \verb|\tempa\tempb\tempc| must be user or system defined macros, which holds the three coordinates of the vector $\vec{C}=\vec{A}-\vec{B}$. - - -\section{PDF output} - -\LPack{pst-3dplot} is based on the popular \verb|pstricks| package and writes pure -\PS code\cite{PostScript}, so it is not possible to run \TeX{} files with -pdf\LaTeX{} when there are pstricks macros in the document. If you still need a -PDF output use one of the following possibilities: -\begin{itemize} -\item package \LPack{pdftricks}\cite{pdftricks} -\item the for Linux free available program VTeX/Lnx\footnote{\url{http://www.micropress-inc.com/linux/}} -\item build the PDF with \verb|ps2pdf| (\verb|dvi|$\rightarrow$\verb|ps|$\rightarrow$\verb|pdf|) -\item use the \LPack{pst-pdf} package.\footnote{\url{http://www.perce.de/LaTeX/ps4pdf/}} -\end{itemize} - -If you need package \LPack{graphicx} load it before any \verb|pstricks| package. -You do not need to load -\verb|pstricks.sty|, it will be done by \LPack{pst-3dplot} by default. - -\section{FAQ} -\begin{itemize} -\item The labels for the axis are not right placed in the preview. - -Be sure that you view your output with a dvi viewer which can show PostScript code, like -kdvi but not xdvi. It is better to run \verb|dvips| and then view the ps-file with \verb|gv|. -\item The three axes have a wrong intersection point. - -Be sure that you have the ''newest`` \LPack{pst-node} package -\begin{verbatim} -\def\fileversion{97 patch 11} -\def\filedate{2000/11/09} -\end{verbatim} -and the ''newest`` \LPack{pst-plot} -\begin{verbatim} -\def\fileversion{97 patch 2} -\def\filedate{1999/12/12} -\end{verbatim} - -\item Using \LPack{amsmath} and \Lcs{hat} or other accents as label for the axes gives an -error. In this case save prevent expanding with e.g.: \verb+\psset{nameX=$\noexpand\hat{x}$}+. %$ -\end{itemize} - - - -\clearpage \section{List of all optional arguments for \texttt{pst-3dplot}} \xkvview{family=pst-3dplot,columns={key,type,default}} -- cgit v1.2.3