Changeset 110 for trunk/doc

Show
Ignore:
Timestamp:
08/12/08 11:18:32 (5 months ago)
Author:
herbert
Message:

M doc/par-solidespredefinis.tex
M doc/par-eclairageponctuel.tex
M doc/pst-solides3d-doc.pdf
M doc/pst-solides3d-doc.bib
M doc/par-anneaux.tex
M doc/pst-solides3d-doc.tex
M doc/par-cylindres-cones.tex
A doc/par-anneaux2.tex
M doc/par-ruban.tex

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/doc/par-anneaux.tex

    r94 r110  
    1  
    21\section {Solide anneau} 
    32 
    43Cette partie traite des anneaux cylindriques. Dans la commande 
    54\verb+\psSolid+, cet objet est tracé avec l'option : 
    6 \verb+[object=anneau]+, dont il faut fixer 
    7 3 paramètres : 
     5\verb+[object=anneau]+, dont il faut fixer 3 paramètres : 
    86\begin{itemize} 
    97  \item le rayon intérieur \verb+[r=1.5]+ (valeur par défaut) ; 
     
    2018Nous allons détailler différents exemples de section. 
    2119 
    22 \subsection {Commande pré-définie~: l'anneau à section rectangulaire.} 
     20\subsection{Commande pré-définie~: l'anneau à section rectangulaire.} 
    2321 
    2422Cette section est définie dans le plan $Oyz$, elle est paramétrée par le 
     
    3028options de \verb+\psSolid+. 
    3129 
    32 Si l'utilisateur redéfinit la macro \TeX {} \verb+\Section+ avec des 
     30Si l'utilisateur redéfinit la macro \TeX{} \verb+\Section+ avec des 
    3331valeurs numériques plutôt que les paramètres $r$, $R$ et $h$, alors 
    3432l'anneau n'est plus variable et il n'est plus besoin de transmettre 
    3533des valeurs pour $r$, $R$, et $h$ dans les options de \verb+\psSolid+. 
    3634 
    37 \begin{minipage}{0.45\linewidth} 
    38 \begin{verbatim} 
    39 \newcommand\Section{% 
    40 % y z 
    41   R h 2 div neg % sommet 1 
    42   % S1 (R,-h/2) 
    43   R h 2 div     % sommet 2 
    44   % S2 (r,h/2) 
    45   r h 2 div     % sommet 3 
    46   % S3 (r,h/2) 
    47   r h 2 div neg % sommet 4 
    48   % S4 (r,-h/2) 
    49             } 
    50 \end{verbatim} 
    51 \end{minipage} 
    52 \hfill 
    53 \begin{minipage}{0.45\linewidth} 
    54 \psset{unit=0.5} 
    55 \begin{pspicture}(-5,-3)(5,3) 
    56 \pstVerb{/R 4 def /r 2 def /h 2 def}% 
    57 \newcommand\RectangularSection{% 
     35%\begin{minipage}{0.45\linewidth} 
     36\begin{lstlisting}[basicstyle=\footnotesize\ttfamily] 
     37\def\Section{% y z 
     38  Rad1 height 2 div neg  % S1 (R,-h/2) sommet 1 
     39  Rad1 height 2 div      % S2 (r,h/2)  sommet 2 
     40  rad2 height 2 div      % S3 (r,h/2)  sommet 3 
     41  rad2 height 2 div neg }% S4 (r,-h/2) sommet 4 
     42\end{lstlisting} 
     43 
     44\begin{LTXexample}[width=5cm] 
     45\psset{unit=0.5}\begin{pspicture}(-5,-3)(5,3) 
     46\pstVerb{/Rad1 4 def /rad2 2 def /height 2 def}% 
     47\def\RectangularSection{% 
    5848   \pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
    59    (!R h 2 div neg)(!R h 2 div)(!r h 2 div)(!r h 2 div neg)} 
     49   (!Rad1 height 2 div neg)(!Rad1 height 2 div)% 
     50   (!rad2 height 2 div)(!rad2 height 2 div neg)} 
    6051\rput(0,0){\RectangularSection}\rput(-6,0){\RectangularSection} 
    6152\psline(-2,1)(2,1)\psline(-2,-1)(2,-1) 
     
    6657\psline{->}(0,2.5)(4,2.5)\uput[u](2,2.5){$R$} 
    6758\psline{<->}(5,-1)(5,1)\uput[r](5,0){$h$} 
    68 \uput[dr](!R h 2 div neg){1} 
    69 \uput[ur](!R h 2 div ){2} 
    70 \uput[ul](!r h 2 div ){3} 
    71 \uput[dl](!r h 2 div neg){4} 
    72 \end{pspicture} 
    73 \end{minipage} 
    74 
    75 \bgroup\centering 
    76 %% 
    77 \psset{unit=0.5} 
     59\uput[dr](!Rad1 height 2 div neg){1}\uput[ur](!Rad1 height 2 div ){2} 
     60\uput[ul](!rad2 height 2 div ){3}   \uput[dl](!rad2 height 2 div neg){4} 
     61\end{pspicture} 
     62\end{LTXexample} 
     63 
     64 
     65\begin{center} 
     66\begingroup 
     67\psset{unit=0.5cm} 
    7868\begin{pspicture}(-5,-4)(5,4) 
    7969\psframe(-5,-4)(5,4) 
    80 \psset[pst-solides3d]{viewpoint=50 20 40 rtp2xyz,Decran=25,lightsrc=10 20 20} 
     70\psset{viewpoint=50 20 40 rtp2xyz,Decran=25,lightsrc=10 20 20} 
    8171\psSolid[object=anneau,fillcolor=cyan,h=3,R=8,r=6,ngrid=4,RotX=10](0,0,0) 
    8272\end{pspicture} 
    83 %% 
     73\qquad 
    8474\begin{pspicture}(-5,-4)(5,4) 
    8575\psframe(-5,-4)(5,4) 
    86 \psset[pst-solides3d]{viewpoint=50 -20 -40 rtp2xyz,Decran=25,lightsrc=-10 -20 -20} 
     76\psset{viewpoint=50 -20 -40 rtp2xyz,Decran=25,lightsrc=-10 -20 -20} 
    8777\psSolid[object=anneau,fillcolor=yellow,h=3,R=8,r=6,RotX=90,RotZ=10](0,0,0) 
    8878\end{pspicture} 
    89 \par\egroup 
    90 %% \begin{verbatim} 
    91 %% \begin{pspicture}(-5,-6)(5,6) 
    92 %% \psframe(-5,-4)(5,4) 
    93 %% \psset[pst-solides3d]{viewpoint=50 20 40 rtp2xyz,% 
    94 %%                       Decran=25,lightsrc=10 20 20} 
    95 %% \psSolid[object=anneau,fillcolor=cyan,h=3,R=8,r=6,ngrid=4,RotX=10](0,0,0) 
    96 %% \end{pspicture} 
    97 %% %% 
    98 %% \begin{pspicture}(-5,-6)(5,5) 
    99 %% \psframe(-5,-4)(5,4) 
    100 %% \psset[pst-solides3d]{viewpoint=50 -20 -40 rtp2xyz,% 
    101 %%        Decran=25,lightsrc=-10 -20 -20} 
    102 %% \psSolid[object=anneau,fillcolor=yellow,h=3,R=8,r=6,RotX=90,RotZ=10](0,0,0) 
    103 %% \end{pspicture} 
    104 %% \end{verbatim} 
    105 \begin{verbatim} 
     79\endgroup 
     80\end{center} 
     81 
     82\begin{lstlisting}[basicstyle=\footnotesize\ttfamily] 
    10683\psSolid[object=anneau,fillcolor=cyan,h=3,R=8,r=6,ngrid=4,RotX=10](0,0,0) 
    10784\psSolid[object=anneau,fillcolor=yellow,h=3,R=8,r=6,RotX=90,RotZ=10](0,0,0) 
    108 \end{verbatim
    109  
    110 \subsection {Un simple anneau à section triangulaire} 
     85\end{lstlisting
     86 
     87\subsection{Un simple anneau à section triangulaire} 
    11188 
    11289Ci-dessous un anneau très simple, à section triangulaire fixe. La 
     
    11491et $(6, 2)$ dans l'option \texttt{section} de \verb+\psSolid+. 
    11592 
    116 \begin{center} 
    117 \begin{minipage}{0.45\linewidth} 
    118 \psset{unit=0.5} 
    119 \begin{pspicture}(-5,-6)(5,6) 
    120 \psframe(-5,-4)(5,4) 
    121 \psset[pst-solides3d]{ 
    122    viewpoint=50 20 40 rtp2xyz,Decran=25, 
     93\begin{LTXexample}[width=5cm] 
     94\psset{unit=0.5cm} 
     95\begin{pspicture}(-5,-4)(5,4) 
     96\psframe(-5,-4)(5,4) 
     97\psset{viewpoint=50 20 40 rtp2xyz,Decran=25, 
    12398   lightsrc=10 20 20} 
    124 \psSolid[object=anneau, 
    125    section=6 -2 10 0 6 2, 
    126    fillcolor=cyan,RotX=10]% 
    127 \end{pspicture} 
    128 \end{minipage} 
    129 %% 
    130 \begin{minipage}{0.45\linewidth} 
    131 \begin{verbatim} 
    132 \psset{unit=0.5} 
    133 \begin{pspicture}(-5,-6)(5,6) 
    134 \psframe(-5,-4)(5,4) 
    135 \psset[pst-solides3d]{ 
    136    viewpoint=50 20 40 rtp2xyz,Decran=25, 
    137    lightsrc=10 20 20} 
    138 \psSolid[object=anneau, 
    139    section=6 -2 10 0 6 2, 
    140    fillcolor=cyan,RotX=10]% 
    141 \end{pspicture} 
    142 \end{verbatim} 
    143 \end{minipage} 
    144 \end{center} 
    145  
    146 %\newpage 
    147  
    148 \subsection {Un anneau variable à section triangulaire} 
    149  
    150 \newcommand\SectionTriangulaire{ 
    151          R h 2 div neg % sommet 1 
    152          R r add 2 div h 2 div % sommet 2 
    153          r h 2 div neg % sommet 3 
    154 
    155  
    156 \begin{minipage}{0.45\linewidth} 
    157 \begin{verbatim} 
    158 \newcommand\SectionTriangulaire{ 
    159 % y <----z----> 
    160   R h 2 div neg 
    161   % S1 (R,-h/2) 
    162   R r add 2 div h 2 div 
    163   % S2 ((R+r)/2,h/2) 
    164   r h 2 div neg 
    165   % S3 (r,-h/2) 
    166 
    167 \end{verbatim} 
    168 \end{minipage} 
    169 \hfill 
    170 \begin{minipage}{0.45\linewidth} 
    171 \psset{unit=0.5} 
     99\psSolid[object=anneau,section=6 -2 10 0 6 2, 
     100   fillcolor=cyan,RotX=10] 
     101\end{pspicture} 
     102\end{LTXexample} 
     103 
     104 
     105\subsection{Un anneau variable à section triangulaire} 
     106 
     107\begin{lstlisting}[basicstyle=\footnotesize\ttfamily] 
     108\newcommand\SectionTriangulaire{% y <----z----> 
     109  Rad1 height 2 div neg            % S1 (R,-h/2) 
     110  Rad1 rad2 add 2 div height 2 div % S2 ((R+r)/2,h/2) 
     111  rad2 height 2 div neg }          % S3 (r,-h/2) 
     112\end{lstlisting} 
     113 
     114\def\TriangularSection{% 
     115  \pspolygon[fillstyle=vlines,linewidth=1.5pt](!Rad1 height 2 div neg)% 
     116    (!Rad1 rad2 add 2 div height 2 div)(!rad2 height 2 div neg)} 
     117\begin{LTXexample}[width=5cm] 
     118\psset{unit=0.5cm}\pstVerb{/Rad1 4 def /rad2 2 def /height 2 def }% 
    172119\begin{pspicture}(-5,-3)(5,3) 
    173 %\psgrid 
    174 \pstVerb{/R 4 def /r 2 def /h 2 def}% 
    175 \newcommand\TriangularSection{% 
    176    \pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
    177    (!R h 2 div neg)(!R r add 2 div h 2 div)(!r h 2 div neg)} 
    178120\rput(0,0){\TriangularSection}\rput(-6,0){\TriangularSection} 
    179121\psline(-3,1)(3,1)\psline(-4,-1)(4,-1) 
    180122\psline[linestyle=dashed,dash=1 0.2 0.05 0.2]{->}(0,-3)(0,3) 
    181123\uput[u](0,3){$z$}\uput[r](4.1,0){$y$}\uput[dl](0,0){$O$} 
    182 \psline[linestyle=dashed](2,-1)(2,1.5) 
    183 \psline[linestyle=dashed](4,-1)(4,2.5) 
    184 \psline[linestyle=dashed]{->}(-4,0)(4.2,0) 
    185124\psline{->}(0,1.5)(2,1.5)\uput[u](1,1.5){$r$} 
    186125\psline{->}(0,2.5)(4,2.5)\uput[u](2,2.5){$R$} 
    187126\psline{<->}(5,-1)(5,1)\uput[r](5,0){$h$} 
    188 \uput[dr](!R h 2 div neg){1} 
    189 \uput[u](!R r add 2 div h 2 div){2} 
    190 \uput[dl](!r h 2 div neg){3} 
    191 \end{pspicture} 
     127\uput[dr](! Rad1 height 2 div neg){1} 
     128\uput[u](! Rad1 rad2 add 2 div height 2 div){2} 
     129\uput[dl](! rad2 height 2 div neg){3}\psset{linestyle=dashed} 
     130\psline(2,-1)(2,1.5)\psline(4,-1)(4,2.5)\psline{->}(-4,0)(4.2,0) 
     131\end{pspicture} 
     132\end{LTXexample} 
     133 
     134 
     135\begin{center} 
     136\psset{unit=0.5cm} 
     137\def\SectionTriangulaire{ 
     138 R h 2 div neg         % sommet 1 
     139 R r add 2 div h 2 div % sommet 2 
     140 r h 2 div neg }       % sommet 3 
     141\begin{pspicture}(-5,-6)(5,6) 
     142\psframe(-5,-4)(5,4) 
     143\psset{viewpoint=50 20 40 rtp2xyz,Decran=25,lightsrc=10 20 20} 
     144\psSolid[object=anneau,section=\SectionTriangulaire,fillcolor=cyan,h=3,R=8,r=4,RotX=10]% 
     145\end{pspicture} 
     146\qquad 
     147\begin{pspicture}(-5,-6)(5,5) 
     148\psframe(-5,-4)(5,4) 
     149\psset{viewpoint=50 -20 -40 rtp2xyz,Decran=25,lightsrc=-10 -20 -20} 
     150\psSolid[object=anneau,section=\SectionTriangulaire,fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10]% 
     151\end{pspicture} 
     152\end{center} 
     153 
     154 
     155\begin{lstlisting}[basicstyle=\footnotesize\ttfamily] 
     156\psSolid[object=anneau,section=\SectionTriangulaire, 
     157    fillcolor=cyan,h=3,R=8,r=4,RotX=10](0,0,0) 
     158\psSolid[object=anneau,section=\SectionTriangulaire, 
     159    fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10](0,0,0) 
     160\end{lstlisting} 
     161 
     162\clearpage 
     163\subsection[L'anneau à section ``pneu'']% 
     164  {L'anneau à section ``pneu'' : anneau cylindrique à arêtes chanfreinées.} 
     165 
     166 
     167\begin{minipage}{0.45\linewidth} 
     168\begin{lstlisting}[basicstyle=\footnotesize\ttfamily] 
     169\def\SectionPneu{ 
     170  /MM { 90 4 div} bind def 
     171  /Scos {MM cos 2 MM mul cos add 3 MM mul cos add} bind def 
     172  /Z0 {h 4 div} bind def 
     173  /c {Z0 Scos div} bind def 
     174  /Z1 {Z0 c MM cos mul add} bind def 
     175  /Z2 {Z1 c MM 2 mul cos mul add} bind def 
     176  /R1 {R c MM sin mul sub} bind def 
     177  /R2 {R1 c MM 2 mul sin mul sub} bind def 
     178  /R3 {R2 c MM 3 mul sin mul sub} bind def 
     179  R h 4 div neg % 1 
     180  R h 4 div % 2 
     181  R1 Z1 % 3 
     182  R2 Z2 % 4 
     183  R3 h 2 div % 5 
     184  r h 2 div  % 6 
     185  r h 2 div neg  % 7 
     186  R3 h 2 div neg % 8 
     187  R2 Z2 neg % 9 
     188  R1 Z1 neg % 10 
     189
     190\end{lstlisting} 
    192191\end{minipage} 
     192\hfill 
     193\begin{minipage}{0.45\linewidth} 
     194\psset{unit=0.7cm} 
     195\begin{pspicture}(-2,-3)(5,6) 
     196\pstVerb{/Rad1 4 def /rad2 2 def /height 2 def 
     197  /MM {90 4 div} bind def 
     198  /Scos {MM cos 2 MM mul cos add 3 MM mul cos add} bind def 
     199  /Z0 {height 4 div} bind def 
     200  /c {Z0 Scos div} bind def 
     201  /Z1 {Z0 c MM cos mul add} bind def 
     202  /Z2 {Z1 c MM 2 mul cos mul add} bind def 
     203  /R1 {Rad1 c MM sin mul sub} bind def 
     204  /R2 {R1 c MM 2 mul sin mul sub} bind def 
     205  /R3 {R2 c MM 3 mul sin mul sub} bind def}% 
     206\pnode(!Rad1 height 4 div neg){S1}\pnode(!Rad1 height 4 div){S2} 
     207\pnode(!R1 Z1){S3}                \pnode(!R2 Z2){S4} 
     208\pnode(!R3 height 2 div){S5}      \pnode(!rad2 height 2 div){S6} 
     209\pnode(!rad2 height 2 div neg){S7}\pnode(!R3 height 2 div neg){S8} 
     210\pnode(!R2 Z2 neg){S9}            \pnode(!R1 Z1 neg){S10} 
     211\newcommand\pneuSection{\pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
     212 (S1)(S2)(S3)(S4)(S5)(S6)(S7)(S8)(S9)(S10)} 
     213\rput(0,0){\pneuSection}\rput{180}{\pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
     214  (!Rad1 height 4 div neg)(!Rad1 height 4 div)(!R1 Z1)(!R2 Z2)% 
     215  (!R3 height 2 div)(!rad2 height 2 div)(!rad2 height 2 div neg)(!R3 height 2 div neg)(!R2 Z2 neg)(!R1 Z1 neg)} 
     216\psline(-3,1)(3,1)\psline(-3,-1)(3,-1) 
     217\psline[linestyle=dashed,dash=1 0.2 0.05 0.2]{->}(0,-3)(0,3) 
     218\uput[u](0,3){$z$}\uput[r](4.1,0){$y$}\uput[dl](0,0){$O$} 
     219\psline[linestyle=dashed](2,-1)(2,1.5)\psline[linestyle=dashed](4,-1)(4,2.5) 
     220\psline[linestyle=dashed]{->}(-4,0)(4.2,0)\psline{->}(0,1.5)(2,1.5)\uput[u](1,1.5){$r$} 
     221\psline{->}(0,2.5)(4,2.5)\uput[u](2,2.5){$R$}\psline{<->}(5,-1)(5,1)\uput[r](5,0){$h$} 
     222\uput[r](S1){1}\uput[r](S2){2}\uput[u](S3){3}\uput[u](S4){4} 
     223\uput[u](S5){5}\uput[ul](S6){6}\uput[dl](S7){7}\uput[dl](S8){8} 
     224\uput[dr](S9){9}\uput[r](S10){10} 
     225\psdots[linecolor=red](S1)(S2)(S3)(S4)(S5)(S6)(S7)(S8)(S9)(S10) 
     226\end{pspicture} 
     227\end{minipage} 
     228 
    193229\begin{center} 
    194 %% 
    195 \psset{unit=0.5} 
    196 \begin{pspicture}(-5,-6)(5,6) 
    197 \psframe(-5,-4)(5,4) 
    198 \psset[pst-solides3d]{viewpoint=50 20 40 rtp2xyz,Decran=25,lightsrc=10 20 20} 
    199 \psSolid[object=anneau,section=\SectionTriangulaire,fillcolor=cyan,h=3,R=8,r=4,RotX=10]% 
    200 \end{pspicture} 
    201 %% 
    202 \begin{pspicture}(-5,-6)(5,5) 
    203 \psframe(-5,-4)(5,4) 
    204 \psset[pst-solides3d]{viewpoint=50 -20 -40 rtp2xyz,Decran=25,lightsrc=-10 -20 -20} 
    205 \psSolid[object=anneau,section=\SectionTriangulaire,fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10]% 
    206 \end{pspicture} 
    207 \end{center} 
    208 %% \begin{verbatim} 
    209 %% \begin{pspicture}(-5,-6)(5,6) 
    210 %% \psframe(-5,-4)(5,4) 
    211 %% \psset[pst-solides3d]{viewpoint=50 20 40 rtp2xyz,% 
    212 %%                       Decran=25,lightsrc=10 20 20} 
    213 %% \psSolid[object=anneau,section=\SectionTriangulaire,% 
    214 %%          fillcolor=cyan,h=3,R=8,r=4,RotX=10](0,0,0) 
    215 %% \end{pspicture} 
    216 %% %% 
    217 %% \begin{pspicture}(-5,-6)(5,5) 
    218 %% \psframe(-5,-4)(5,4) 
    219 %% \psset[pst-solides3d]{viewpoint=50 -20 -40 rtp2xyz,% 
    220 %%                       Decran=25,lightsrc=-10 -20 -20} 
    221 %% \psSolid[object=anneau,section=\SectionTriangulaire,% 
    222 %%          fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10](0,0,0) 
    223 %% \end{pspicture} 
    224 %% \end{verbatim} 
    225 \begin{verbatim} 
    226 \psSolid[object=anneau,section=\SectionTriangulaire,% 
    227          fillcolor=cyan,h=3,R=8,r=4,RotX=10](0,0,0) 
    228 %% 
    229 \psSolid[object=anneau,section=\SectionTriangulaire,% 
    230          fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10](0,0,0) 
    231 \end{verbatim} 
    232  
    233 %%\newpage 
    234  
    235 \newcommand\SectionPneu{ 
    236    /m {90 4 div} bind def 
    237    /Scos {m cos 2 m mul cos add 3 m mul cos add} bind def 
    238    /Z0 {h 4 div} bind def 
    239    /c {Z0 Scos div} bind def 
    240    /Z1 {Z0 c m cos mul add} bind def 
    241    /Z2 {Z1 c m 2 mul cos mul add} bind def 
    242    /R1 {R c m sin mul sub} bind def 
    243    /R2 {R1 c m 2 mul sin mul sub} bind def 
    244    /R3 {R2 c m 3 mul sin mul sub} bind def 
     230\def\SectionPneu{ 
     231   /MM { 90 4 div } def 
     232   /Scos { MM cos 2 MM mul cos add 3 MM mul cos add } def 
     233   /Z0 { h 4 div } def 
     234   /c {Z0 Scos div} def 
     235   /Z1 { Z0 c MM cos mul add } def 
     236   /Z2 { Z1 c MM 2 mul cos mul add } def 
     237   /R1 { R c MM sin mul sub } def 
     238   /R2 { R1 c MM 2 mul sin mul sub } def 
     239   /R3 { R2 c MM 3 mul sin mul sub } def 
    245240   R h 4 div neg % 1 
    246241   R h 4 div % 2 
     
    253248   R2 Z2 neg % 9 
    254249   R1 Z1 neg % 10 
    255    } 
    256  
    257 \subsection {L'anneau à section ``pneu'' : anneau cylindrique à arêtes chanfreinées.} 
    258  
    259 \begin{minipage}{0.45\linewidth} 
    260 {\small 
     250
     251\psset{unit=0.7cm} 
     252\begin{pspicture}(-5,-5)(5,4) 
     253\psframe(-5,-4)(5,4) 
     254\psset{viewpoint=50 20 40 rtp2xyz,Decran=25,lightsrc=10 20 20} 
     255\psSolid[object=anneau,section=\SectionPneu,fillcolor=cyan,h=3,R=8,r=4,RotX=10]% 
     256\end{pspicture} 
     257\qquad 
     258\begin{pspicture}(-5,-5)(5,4) 
     259\psframe(-5,-4)(5,4) 
     260\psset{viewpoint=50 -20 -40 rtp2xyz,Decran=25,lightsrc=-10 -20 -20} 
     261\psSolid[object=anneau,section=\SectionPneu,fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10]% 
     262\end{pspicture} 
     263\end{center} 
     264 
     265 
    261266\begin{verbatim} 
    262 \renewcommand\SectionPneu{ 
    263    /m {90 4 div} bind def 
    264    /Scos {m cos 2 m mul cos add 3 m mul cos add} bind def 
    265    /Z0 {h 4 div} bind def 
    266    /c {Z0 Scos div} bind def 
    267    /Z1 {Z0 c m cos mul add} bind def 
    268    /Z2 {Z1 c m 2 mul cos mul add} bind def 
    269    /R1 {R c m sin mul sub} bind def 
    270    /R2 {R1 c m 2 mul sin mul sub} bind def 
    271    /R3 {R2 c m 3 mul sin mul sub} bind def 
    272    R h 4 div neg % 1 
    273    R h 4 div % 2 
    274    R1 Z1 % 3 
    275    R2 Z2 % 4 
    276    R3 h 2 div % 5 
    277    r h 2 div  % 6 
    278    r h 2 div neg  % 7 
    279    R3 h 2 div neg % 8 
    280    R2 Z2 neg % 9 
    281    R1 Z1 neg % 10 
    282    } 
    283 \end{verbatim}} 
    284 \end{minipage} 
    285 \hfill 
    286 \begin{minipage}{0.45\linewidth} 
    287 %\psset{unit=0.65} 
    288 \begin{pspicture}(-2,-3)(5,6) 
    289 %\psgrid 
    290 \pstVerb{/R 4 def /r 2 def /h 2 def}% 
    291 \pstVerb{/m {90 4 div} bind def 
    292    /Scos {m cos 2 m mul cos add 3 m mul cos add} bind def 
    293    /Z0 {h 4 div} bind def 
    294    /c {Z0 Scos div} bind def 
    295    /Z1 {Z0 c m cos mul add} bind def 
    296    /Z2 {Z1 c m 2 mul cos mul add} bind def 
    297    /R1 {R c m sin mul sub} bind def 
    298    /R2 {R1 c m 2 mul sin mul sub} bind def 
    299    /R3 {R2 c m 3 mul sin mul sub} bind def}% 
    300 \pnode(!R h 4 div neg){S1} 
    301 \pnode(!R h 4 div){S2} 
    302 \pnode(!R1 Z1){S3} 
    303 \pnode(!R2 Z2){S4} 
    304 \pnode(!R3 h 2 div){S5} 
    305 \pnode(!r h 2 div){S6} 
    306 \pnode(!r h 2 div neg){S7} 
    307 \pnode(!R3 h 2 div neg){S8} 
    308 \pnode(!R2 Z2 neg){S9} 
    309 \pnode(!R1 Z1 neg){S10} 
    310 \newcommand\pneuSection{\pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
    311  (S1)(S2)(S3)(S4)(S5)(S6)(S7)(S8)(S9)(S10)} 
    312 \rput(0,0){\pneuSection}\rput{180}{\pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
    313  (!R h 4 div neg)(!R h 4 div)(!R1 Z1)(!R2 Z2)(!R3 h 2 div)(!r h 2 div)(!r h 2 div neg)(!R3 h 2 div neg)(!R2 Z2 neg)(!R1 Z1 neg)} 
    314 \psline(-3,1)(3,1)\psline(-3,-1)(3,-1) 
    315 \psline[linestyle=dashed,dash=1 0.2 0.05 0.2]{->}(0,-3)(0,3) 
    316 \uput[u](0,3){$z$}\uput[r](4.1,0){$y$}\uput[dl](0,0){$O$} 
    317 \psline[linestyle=dashed](2,-1)(2,1.5) 
    318 \psline[linestyle=dashed](4,-1)(4,2.5) 
    319 \psline[linestyle=dashed]{->}(-4,0)(4.2,0) 
    320 \psline{->}(0,1.5)(2,1.5)\uput[u](1,1.5){$r$} 
    321 \psline{->}(0,2.5)(4,2.5)\uput[u](2,2.5){$R$} 
    322 \psline{<->}(5,-1)(5,1)\uput[r](5,0){$h$} 
    323 \uput[r](S1){1} 
    324 \uput[r](S2){2} 
    325 \uput[u](S3){3} 
    326 \uput[u](S4){4} 
    327 \uput[u](S5){5} 
    328 \uput[ul](S6){6} 
    329 \uput[dl](S7){7} 
    330 \uput[dl](S8){8} 
    331 \uput[dr](S9){9} 
    332 \uput[r](S10){10} 
    333 \psdots[linecolor=red](S1)(S2)(S3)(S4)(S5)(S6)(S7)(S8)(S9)(S10) 
    334 \end{pspicture} 
    335 \end{minipage} 
    336  
    337 %\iffalse 
    338 \begin{center} 
    339 \psset{unit=0.7} 
    340 \begin{pspicture}(-5,-5)(5,4) 
    341 \psframe(-5,-4)(5,4) 
    342 \psset[pst-solides3d]{viewpoint=50 20 40 rtp2xyz,Decran=25,lightsrc=10 20 20} 
    343 \psSolid[object=anneau,section=\SectionPneu,fillcolor=cyan,h=3,R=8,r=4,RotX=10]% 
    344 \end{pspicture} 
    345 %% 
    346 \begin{pspicture}(-5,-5)(5,4) 
    347 \psframe(-5,-4)(5,4) 
    348 \psset[pst-solides3d]{viewpoint=50 -20 -40 rtp2xyz,Decran=25,lightsrc=-10 -20 -20} 
    349 \psSolid[object=anneau,section=\SectionPneu,fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10]% 
    350 \end{pspicture} 
    351 \end{center} 
    352 %% 
    353 \begin{gbar} 
    354 \begin{verbatim} 
    355 \psSolid[object=anneau,section=\SectionPneu,% 
    356          fillcolor=cyan,h=3,R=8,r=4,RotX=10](0,0,0) 
    357 \psSolid[object=anneau,section=\SectionPneu,% 
    358          fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10]% 
     267\psSolid[object=anneau,section=\SectionPneu,fillcolor=cyan,h=3,R=8,r=4,RotX=10](0,0,0) 
     268\psSolid[object=anneau,section=\SectionPneu,fillcolor=yellow,h=3,R=8,r=4,RotX=-90,RotZ=10] 
    359269\end{verbatim} 
    360 \end{gbar} 
    361 %\fi 
    362 \newpage 
    363  
    364 \subsection{Bobine vide} 
    365  
    366 \newcommand\SectionBobine{ 
    367    r h 2 div % 1 
    368    r h 2 div neg % 2 
    369    R h 2 div neg % 3 
    370    R h 3 div neg % 4 
    371    R h 4 div sub h 3 div neg % 5 
    372    R h 4 div sub h 3 div % 6 
    373    R h 3 div % 7 
    374    R h 2 div % 8 
    375    } 
    376  
    377 \begin{minipage}{0.45\linewidth} 
    378 \begin{verbatim} 
    379 \newcommand\SectionBobine{ 
    380    r h 2 div % 1 
    381    r h 2 div neg % 2 
    382    R h 2 div neg % 3 
    383    R h 3 div neg % 4 
    384    R h 4 div sub h 3 div neg % 5 
    385    R h 4 div sub h 3 div % 6 
    386    R h 3 div % 7 
    387    R h 2 div % 8 
    388    } 
    389 \end{verbatim} 
    390 \end{minipage} 
    391 \hfill 
    392 \begin{minipage}{0.45\linewidth} 
    393 \begin{pspicture}(-2,-2)(5,2) 
    394 \pstVerb{/RB 4 def /rB 2 def /hB 3 def}% 
    395 \pnode(!rB hB 2 div){S1} 
    396 \pnode(!rB hB 2 div neg){S2} 
    397 \pnode(!RB hB 2 div neg){S3} 
    398 \pnode(!RB hB 3 div neg){S4} 
    399 \pnode(!RB hB 4 div sub hB 3 div neg){S5} 
    400 \pnode(!RB hB 4 div sub hB 3 div){S6} 
    401 \pnode(!RB hB 3 div){S7} 
    402 \pnode(!RB hB 2 div){S8} 
    403 \newcommand\pneuSection{\pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
    404  (S1)(S2)(S3)(S4)(S5)(S6)(S7)(S8)} 
    405 \rput(0,0){\pneuSection}\rput{180}{\pspolygon[fillstyle=vlines,linewidth=2\pslinewidth]% 
    406  (!rB hB 2 div)(!rB hB 2 div neg)(!RB hB 2 div neg)(!RB hB 3 div neg)(!RB hB 4 div sub hB 3 div neg)(!RB hB 4 div sub hB 3 div)(!RB hB 3 div)(!RB hB 2 div)} 
    407 \psline(-3,1.5)(3,1.5)\psline(-3,-1.5)(3,-1.5) 
    408 \psline[linestyle=dashed,dash=1 0.2 0.05 0.2]{->}(0,-3)(0,3) 
    409 \uput[u](0,3){$z$}\uput[r](4.1,0){$y$}\uput[dl](0,0){$O$} 
    410 \psline[linestyle=dashed](2,-1)(2,1.5) 
    411 \psline[linestyle=dashed](4,-1)(4,2.5) 
    412 \psline[linestyle=dashed](-4,-1)(4,-1) 
    413 \psline[linestyle=dashed](-4,1)(4,1) 
    414 \psline[linestyle=dashed]{->}(-4,0)(4.2,0) 
    415 \psline{->}(0,1.8)(2,1.8)\uput[u](1,1.8){$r$} 
    416 \psline{->}(0,2.5)(4,2.5)\uput[u](2,2.5){$R$} 
    417 \psline{<->}(5,-1.5)(5,1.5)\uput[r](5,0){$h$} 
    418 \uput[u](S1){1} 
    419 \uput[d](S2){2} 
    420 \uput[d](S3){3} 
    421 \uput[r](S4){4} 
    422 \uput[ur](S5){5} 
    423 \uput[dr](S6){6} 
    424 \uput[r](S7){7} 
    425 \uput[r](S8){8} 
    426 \psdots[linecolor=red](S1)(S2)(S3)(S4)(S5)(S6)(S7)(S8) 
    427 \end{pspicture} 
    428 \end{minipage} 
    429 \begin{center} 
    430 \begin{pspicture}(-5,-6)(5,5) 
    431 \psframe*[linecolor=blue!50](-5,-5)(5,4) 
    432 \psset[pst-solides3d]{viewpoint=70 40 10 rtp2xyz,Decran=25,lightsrc=0 30 100} 
    433 \psSolid[object=grille,base=-15 15 -15 15,fillcolor=yellow!30!black!10](0,0,-8) 
    434 %\psSolid[object=prisme,h=2,base=-15 1 -15 -1 15 -1 15 1](0,0,-8) 
    435 \psSolid[object=anneau,section=\SectionBobine,fillcolor=gray!50,h=6,R=8,r=4,RotX=90,linecolor=gray]% 
    436 \end{pspicture} 
    437 \end{center} 
    438 \begin{gbar} 
    439 \begin{verbatim} 
    440 \psSolid[object=grille,base=-15 15 -15 15,fillcolor=yellow!30](0,0,-8) 
    441 \psSolid[object=anneau,section=\SectionBobine,% 
    442          fillcolor=gray!50,h=6,R=8,r=4,RotX=90,linecolor=gray]% 
    443 \end{verbatim} 
    444 \end{gbar} 
    445  
    446  
    447 \subsection{D'autres anneaux} 
    448 Trois autres exemples sont disponibles sur la page : 
    449  
    450 \centerline{\url{http://syracuse.eu.org/lab/bpst/pst-solides3d/anneaux}} 
    451  
    452  
     270 
     271 
     272 
     273\endinput 
     274 
  • trunk/doc/par-cylindres-cones.tex

    r94 r110  
    325325\newline 
    326326\centerline{\url{http://melusine.eu.org/lab/bpst/pst-solides3d/cone/cone-dir_02.pst}}}  
     327 
     328\endinput 
  • trunk/doc/par-eclairageponctuel.tex

    r97 r110  
    1 \section {\' Eclairage par une source lumineuse ponctuelle} 
     1\section[Source lumineuse ponctuelle]{\' Eclairage par une source lumineuse ponctuelle} 
    22 
    33Deux paramètres, l'un positionne la source, l'autre fixe l'intensité 
  • trunk/doc/par-ruban.tex

    r89 r110  
    5252\begin{pspicture}(-10,-6)(12,8) 
    5353\psframe(-10,-6)(12,7) 
    54 \defFunction{F}(t){2 t 4 mul cos mul}{t 20 div}{} 
     54\defFunction{funcF}(t){2 t 4 mul cos mul}{t 20 div}{} 
     55\psSolid[object=grille,base=-6 6 -10 10,action=draw,linecolor=gray](0,0,0) 
     56\psSolid[object=ruban,h=2,fillcolor=red!50, 
     57  resolution=72, 
     58  base=-200 200 {funcF} CourbeR2+,  %% -200 5 200 {/Angle ED 2 Angle 4 mul cos mul Angle 20 div } for, 
     59  ngrid=4](0,0,0) 
     60\axesIIID(5,10,0)(7,11,6) 
     61\end{pspicture} 
     62\end{center} 
     63 
     64\begin{verbatim} 
     65\psset{unit=0.6} 
     66\psset{lightsrc=10 30 10,viewpoint=50 50 20 rtp2xyz,Decran=50} 
     67\begin{pspicture}(-10,-5)(12,7) 
     68\psframe(-10,-5)(12,7) 
     69\defFunction{funcF}(t){2 t 4 mul cos mul}{t 20 div}{} 
    5570\psSolid[object=grille,base=-6 6 -10 10,action=draw,linecolor=gray](0,0,0) 
    5671\psSolid[object=ruban,h=2,fillcolor=red!50, 
    5772      resolution=72, 
    58       base=-200 200 {F} CourbeR2+,  %% -200 5 200 {/Angle ED 2 Angle 4 mul cos mul Angle 20 div } for, 
    59       ngrid=4](0,0,0) 
    60 \axesIIID(5,10,0)(7,11,6) 
    61 \end{pspicture} 
    62 \end{center} 
    63  
    64 \begin{verbatim} 
    65 \psset{unit=0.6} 
    66 \psset{lightsrc=10 30 10,viewpoint=50 50 20 rtp2xyz,Decran=50} 
    67 \begin{pspicture}(-10,-5)(12,7) 
    68 \psframe(-10,-5)(12,7) 
    69 \defFunction{F}(t){2 t 4 mul cos mul}{t 20 div}{} 
    70 \psSolid[object=grille,base=-6 6 -10 10,action=draw,linecolor=gray](0,0,0) 
    71 \psSolid[object=ruban,h=2,fillcolor=red!50, 
    72       resolution=72, 
    73       base=-200 200 {F} CourbeR2+,  
     73      base=-200 200 {funcF} CourbeR2+,  
    7474      ngrid=4](0,0,0) 
    7575\axesIIID(5,10,0)(7,11,6) 
     
    8888\begin{pspicture}(-14,-7)(8,5) 
    8989\psframe(-14,-7)(8,5) 
    90 \defFunction{F}(t){t 4 mul cos}{t 20 div}{} 
     90\defFunction{funcF}(t){t 4 mul cos}{t 20 div}{} 
    9191\psSolid[object=grille,base=0 16 -10 10,action=draw,linecolor=gray](0,0,0) 
    9292\psSolid[object=ruban,h=16,fillcolor=red!50,RotY=90,incolor=green!20, 
    9393      resolution=72, 
    94       base=-200 200 {F} CourbeR2+,  
     94      base=-200 200 {funcF} CourbeR2+,  
    9595      ngrid=16](0,0,1) 
    9696\axesIIID(16,10,0)(20,12,6) 
     
    101101\psset{lightsrc=10 30 10,viewpoint=50 50 20 rtp2xyz,Decran=30} 
    102102\begin{pspicture}(-14,-7)(8,7) 
    103 \defFunction{F}(t){t 4 mul cos}{t 20 div}{} 
     103\defFunction{funcF}(t){t 4 mul cos}{t 20 div}{} 
    104104\psSolid[object=grille,base=0 16 -10 10,action=draw,linecolor=gray](0,0,0) 
    105105\psSolid[object=ruban,h=16,fillcolor=red!50,RotY=90,incolor=green!20, 
    106106      resolution=72, 
    107       base=-200 200 {F} CourbeR2+,  
     107      base=-200 200 {funcF} CourbeR2+,  
    108108      ngrid=16](0,0,1) 
    109109\psframe(-14,-7)(8,7) 
     
    140140    }% 
    141141\pspolygon[fillstyle=solid,fillcolor=blue!50](P0)(p0)(P1)(p1)(P2)(p2)(P3)(p3)(P4)(p4)(P5)(p5) 
    142 \defFunction{F}(t){t cos 5 mul}{t sin 5 mul}{} 
    143 \defFunction{G}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
    144 \psSolid[object=grille,base=-6 6 -6 6,action=draw,linecolor=gray](0,0,0) 
    145 \psSolid[object=ruban,h=1,fillcolor=red!50, 
    146       base=0 72 360 {/Angle exch def Angle F Angle G} for, 
     142\defFunction{funcF}(t){t cos 5 mul}{t sin 5 mul}{} 
     143\defFunction{funcG}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
     144\psSolid[object=grille,base=-6 6 -6 6,action=draw,linecolor=gray](0,0,0) 
     145\psSolid[object=ruban,h=1,fillcolor=red!50, 
     146      base=0 72 360 {/Angle exch def Angle funcF Angle funcG} for, 
    147147      num=0 1 2 3, 
    148148      show=0 1 2 3, 
     
    160160\pspolygon[fillstyle=solid,fillcolor=blue!50] 
    161161          (P0)(p0)(P1)(p1)(P2)(p2)(P3)(p3)(P4)(p4)(P5)(p5) 
    162 \defFunction{F}(t){t cos 5 mul}{t sin 5 mul}{} 
    163 \defFunction{G}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
    164 \psSolid[object=grille,base=-6 6 -6 6,action=draw,linecolor=gray](0,0,0) 
    165 \psSolid[object=ruban,h=1,fillcolor=red!50, 
    166       base=0 72 360 {/Angle exch def Angle F Angle G} for, 
     162\defFunction{funcF}(t){t cos 5 mul}{t sin 5 mul}{} 
     163\defFunction{funcG}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
     164\psSolid[object=grille,base=-6 6 -6 6,action=draw,linecolor=gray](0,0,0) 
     165\psSolid[object=ruban,h=1,fillcolor=red!50, 
     166      base=0 72 360 {/Angle exch def Angle funcF Angle funcG} for, 
    167167      num=0 1 2 3, show=0 1 2 3, ngrid=2](0,0,0) 
    168168\axesIIID(5,5,0)(6,6,6) 
     
    180180\begin{pspicture}(-9,-4)(9,7) 
    181181\psframe(-9,-4)(9,7) 
    182 \defFunction{F}(t){t cos 5 mul}{t sin 5 mul}{} 
    183 \defFunction{G}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
     182\defFunction{funcF}(t){t cos 5 mul}{t sin 5 mul}{} 
     183\defFunction{funcG}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
    184184\psSolid[object=face,fillcolor=blue!50, 
    185185      biface, 
    186       base=0 72 360 {/Angle exch def Angle F Angle G} for, 
     186      base=0 72 360 {/Angle exch def Angle funcF Angle funcG} for, 
    187187      ](0,0,0) 
    188188\psSolid[object=grille,base=-6 6 -6 6,action=draw,linecolor=gray](0,0,0) 
    189189\psSolid[object=ruban,h=1,fillcolor=red!50, 
    190       base=0 72 360 {/Angle exch def Angle F Angle G} for, 
     190      base=0 72 360 {/Angle exch def Angle funcF Angle funcG} for, 
    191191      ngrid=2](0,0,0) 
    192192\axesIIID(5,5,0)(6,6,6) 
    193193\end{pspicture} 
    194194\end{center} 
     195 
    195196\begin{verbatim} 
    196197\psset{lightsrc=10 0 10,viewpoint=50 -20 20 rtp2xyz,Decran=50} 
    197198\begin{pspicture}(-9,-4)(9,7) 
    198199\psframe(-9,-4)(9,7) 
    199 \defFunction{F}(t){t cos 5 mul}{t sin 5 mul}{} 
    200 \defFunction{G}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
     200\defFunction{funcF}(t){t cos 5 mul}{t sin 5 mul}{} 
     201\defFunction{funcG}(t){t 36 add cos 3 mul}{t 36 add sin 3 mul}{} 
    201202\psSolid[object=face,fillcolor=blue!50, 
    202203      biface, 
    203       base=0 72 360 {/Angle exch def Angle F Angle G} for, 
     204      base=0 72 360 {/Angle exch def Angle funcF Angle funcG} for, 
    204205      ](0,0,0) 
    205206\psSolid[object=grille,base=-6 6 -6 6,action=draw,linecolor=gray](0,0,0) 
    206207\psSolid[object=ruban,h=1,fillcolor=red!50, 
    207       base=0 72 360 {/Angle exch def Angle F Angle G} for, 
     208      base=0 72 360 {/Angle exch def Angle funcF Angle funcG} for, 
    208209      ngrid=2](0,0,0) 
    209210\axesIIID(5,5,0)(6,6,6) 
     
    211212\end{verbatim} 
    212213 
     214 
     215\endinput 
  • trunk/doc/par-solidespredefinis.tex

    r94 r110  
    1 \section {Les principaux solides prédéfinis et leurs paramètres} 
     1\section[Paramètres]{Les principaux solides prédéfinis et leurs paramètres} 
    22 
    33La commande de base est~:~ 
  • trunk/doc/pst-solides3d-doc.bib

    r108 r110  
    4343  title         = {The {\LaTeX} {G}raphics {C}ompanion}, 
    4444  publisher     = {{Addison-Wesley Publishing Company}}, 
    45   edition       = second
     45  edition       = {second}
    4646  year          = {2007}, 
    4747  address       = {Reading, Mass.} 
  • trunk/doc/pst-solides3d-doc.tex

    r108 r110  
    1 \documentclass{book} 
     1\documentclass[twoside]{book} 
    22\usepackage[dvipsnames,svgnames]{pstricks} 
    33\usepackage{pst-plot,pst-eucl} 
     
    88\usepackage[T1]{fontenc} 
    99\usepackage{manfnt} 
     10\usepackage{lmodern} 
    1011\usepackage[garamond]{mathdesign} 
    11 \renewcommand{\ttdefault}{lmtt} 
     12%\renewcommand{\ttdefault}{lmtt} 
    1213\usepackage{colortbl} 
    1314\usepackage{multicol} 
     
    2627\DeclareFixedFont{\timesnormal}{T1}{ptm}{m}{n}{2cm} 
    2728\raggedbottom 
    28 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    29 % de nouvelles flèches de Christophe FOUREY 
    30 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    31 \makeatletter 
    32 % http://tug.org/mailman/htdig/pstricks/2007/004294.html 
    33 % v : Vee arrow (inside) 
    34 % V : Vee arrow (outside) 
    35 % f : Filled vee arrow (inside) 
    36 % F : Filled vee arrow (outside) 
    37 \edef\pst@arrowtable{\pst@arrowtable,v-v,V-V,f-f,F-F} 
    38  
    39 % Vee arrow 
    40 \def\psset@veearrowlength#1{\pst@getlength{#1}\psk@veearrowlength} 
    41 \psset@veearrowlength{3mm} % default projected length 
    42 \def\psset@veearrowangle#1{\pst@getangle{#1}\psk@veearrowangle} 
    43 \psset@veearrowangle{30} % default angle 
    44 \def\psset@veearrowlinewidth#1{\pst@getlength{#1}\psk@veearrowlinewidth} 
    45 \psset@veearrowlinewidth{.35mm} % default vee arrow line width 
    46  
    47 % Filled vee arrow 
    48 \def\psset@filledveearrowlength#1{\pst@getlength{#1} 
    49 \psk@filledveearrowlength} 
    50 \psset@filledveearrowlength{3mm} % default projected length 
    51 \def\psset@filledveearrowangle#1{\pst@getangle{#1} 
    52 \psk@filledveearrowangle} 
    53 \psset@filledveearrowangle{15} % default angle 
    54 \def\psset@filledveearrowlinewidth#1{\pst@getlength{#1} 
    55 \psk@filledveearrowlinewidth} 
    56 \psset@filledveearrowlinewidth{.35mm} % default vee arrow line width 
    57  
    58 \pst@def{VeeArrow}<% 
    59      1 setlinecap           % round caps 
    60      1 setlinejoin          % round join 
    61      setlinewidth           % vee arrow line width 
    62      /y ED              % projected length 
    63      2 div /a ED                % angle (divide by 2) 
    64      /t ED              % false = inside, true = outside 
    65      a sin a cos div y mul /x ED        % perpendicular length : x=tan(a).y 
    66      t { 1 -1 scale } if            % if outside : symmetry 
    67      x neg y moveto         % point #1 
    68      0 0 L              % point #2 
    69      x y L              % point #3 
    70      {closepath gsave fill grestore} if % if filled : close and fill 
    71      stroke             % draw line 
    72      0 t {y 2 mul} {0} ifelse moveto>   % if outside : twice longer line 
    73  
    74 % VeeArrow : filled?   outside?   (total) angle   (projected) length   (arrow) line width 
    75  
    76 \@namedef{psas@v}{% 
    77    false false \psk@veearrowangle \psk@veearrowlength 
    78 \psk@veearrowlinewidth \tx@VeeArrow} 
    79  
    80 \@namedef{psas@V}{% 
    81    false true \psk@veearrowangle \psk@veearrowlength 
    82 \psk@veearrowlinewidth \tx@VeeArrow} 
    83  
    84 \@namedef{psas@f}{% 
    85    true false \psk@filledveearrowangle \psk@filledveearrowlength 
    86 \psk@filledveearrowlinewidth \tx@VeeArrow} 
    87  
    88 \@namedef{psas@F}{% 
    89    true true \psk@filledveearrowangle \psk@filledveearrowlength 
    90 \psk@filledveearrowlinewidth \tx@VeeArrow} 
    91  
    92 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
    9329%% adapté de \psRandom du package pstricks-add 
    9430%% pour rendre aléatoire la taille des étoiles 
    9531%% Manuel Luque 
    9632\newdimen\pssizeStar 
     33\makeatletter 
    9734\def\psset@sizeStar#1{\pssetlength\pssizeStar{#1}} 
    9835\psset@sizeStar{1pt} 
     
    199136 
    200137 
    201 \def \datapath {% 
    202 %   ../doc/} 
    203 } 
    204  
    205138\title{\texttt{pst-solides3d} :\\ 
    206139       guide de l'utilisateur 
     
    219152 Jean-Michel \textsc{Sarlat}\url{<jm.sarlat@gmail.com>}, 
    220153 Herbert \textsc{Voss}\url{<Herbert.Voss@FU-Berlin.DE>}.}} 
    221 \date{15 juillet 2\,008} 
     154\date{\today} 
     155 
     156\def\datapath{}%../doc/} 
     157 
     158%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Herbert %%%%%%%%%%%%%%%%%%%%%%%%%% 
     159\usepackage{fancyhdr} 
     160\pagestyle{fancy} 
     161\fancyfoot{}% delete all 
     162\fancyfoot[LE,RO]{\thepage} 
     163\newcommand\Input[2][\datapath]{\fancyfoot[RE,LO]{{\footnotesize#2}}% 
     164  \begingroup\input{#1#2}\endgroup\par} 
     165% doesnt work with underscores in filename 
     166 
    222167\begin{document} 
    223168\maketitle 
    224169 
    225  
    226 %\input[tore-damier} 
    227 %\input{methane} 
    228 %\input{anneaux} 
    229 %\vfill 
    230 %\input{S2O3} 
    231 %\input \datapath init3d 
    232 %\vfill 
     170\tableofcontents 
     171 
     172\newpage 
     173 
     174%\end {document} 
     175 
     176\Input{par-constitution} 
     177\Input{par-preambule} 
     178\Input{par-presentation} 
     179\Input{par-changements} 
     180 
     181\chapter{Commandes de bases} 
     182\Input{par-choixpointdevue} 
     183\Input{par-axes3D} 
     184\newpage 
     185\Input{par-solidespredefinis} 
     186\Input{par-positionnersolide} 
     187 
     188 
     189\chapter{Les options de \textbackslash{}psSolid} 
     190\Input{par-commandestrace} 
     191\Input{par-solidescreux} 
     192\Input{par-numeroterfacettes} 
     193\Input{par-enleverfacettes} 
     194\Input{par-pointagesommets} 
     195 
     196\Input{par-couleurs} 
     197\Input{par-colorierfacettes} 
     198\Input{par-opacity} 
     199\Input{par-definitionmaillage} 
     200\Input{par-modes} 
     201 
     202\Input{par-eclairageponctuel} 
     203\Input{par-tronque} 
     204\Input{par-affinage} 
     205\Input{par-chanfrein} 
     206\Input{par-transform} 
     207\Input{par-lignedeniveau} 
     208 
     209 
     210\chapter{Utilisation de fichiers externes} 
     211\Input{par-datfile} 
     212%\Input{par-offfile 
     213%\Input{par-objfile 
     214 
     215\chapter{Quelques objets spécifiques} 
     216%\Input{par-grille 
     217\Input{par-plan} 
     218\Input{par-vecteur} 
     219\Input{par-point} 
     220\Input{par-geode} 
     221 
     222 
     223\chapter{Fabriquer de nouveaux solides} 
     224\Input{par-codejps} 
     225\Input{par-definirfonction} 
     226 
     227\Input{par-courbeR3} 
     228\Input{par-tube} 
     229\Input{par-prisme} 
     230\Input{par-new} 
     231\Input{par-face} 
     232\Input{par-ruban} 
    233233%\newpage 
    234 \tableofcontents 
    235  
    236 \newpage 
    237  
    238 %\end {document} 
    239  
    240 \input \datapath par-constitution 
    241 \input \datapath par-preambule 
    242 \input \datapath par-presentation 
    243 \input \datapath par-changements 
    244  
    245  
    246 \chapter{Commandes de bases} 
    247 \input \datapath par-choixpointdevue 
    248 \input \datapath par-axes3D 
    249 \newpage 
    250 \input \datapath par-solidespredefinis 
    251 \input \datapath par-positionnersolide 
    252  
    253  
    254 \chapter{Les options de \textbackslash{}psSolid} 
    255 \input \datapath par-commandestrace 
    256 \input \datapath par-solidescreux 
    257 \input \datapath par-numeroterfacettes 
    258 \input \datapath par-enleverfacettes 
    259 \input \datapath par-pointagesommets 
    260  
    261 \input \datapath par-couleurs 
    262 \input \datapath par-colorierfacettes 
    263 \input \datapath par-opacity 
    264 \input \datapath par-definitionmaillage 
    265 \input \datapath par-modes 
    266  
    267 \input \datapath par-eclairageponctuel 
    268 \input \datapath par-tronque 
    269 \input \datapath par-affinage 
    270 \input \datapath par-chanfrein 
    271 \input \datapath par-transform 
    272 \input \datapath par-lignedeniveau 
    273  
    274  
    275 \chapter{Utilisation de fichiers externes} 
    276 \input \datapath par-datfile 
    277 %\input \datapath par-offfile 
    278 %\input \datapath par-objfile 
    279  
    280 \chapter{Quelques objets spécifiques} 
    281 %\input \datapath par-grille 
    282 \input \datapath par-plan 
    283 \input \datapath par-vecteur 
    284 \input \datapath par-point 
    285 \input \datapath par-geode 
    286  
    287  
    288 \chapter{Fabriquer de nouveaux solides} 
    289 \input \datapath par-codejps 
    290 \input \datapath par-definirfonction 
    291  
    292 \input \datapath par-courbeR3 
    293 \input \datapath par-tube 
    294 \input \datapath par-prisme 
    295 \input \datapath par-new 
    296 \input \datapath par-face 
    297 \input \datapath par-ruban 
    298 %\newpage 
    299 \input \datapath par-anneaux 
    300 \input \datapath par-cylindres-cones 
    301 \input \datapath par-surfacesparametrees 
    302  
    303  
    304 \chapter{Surfaces définies par une fonction $z=f(x,y)$} 
    305 \input \datapath par-surfaces 
    306  
     234 
     235\Input{par-anneaux}% Problem with the \Input macro and par-anneaux here 
     236%\fancyfoot[RE,LO]{{\footnotesize par-anneaux}}\input{\datapath par-anneaux} 
     237%\fancyfoot[RE,LO]{} 
     238\clearpage 
     239\Input{par-anneaux2}% Problem with the \Input macro and par-anneaux here 
     240 
     241 
     242\Input{par-cylindres-cones} 
     243 
     244 
     245\Input{par-surfacesparametrees} 
     246 
     247 
     248\chapter{Surfaces définies par une fonction} 
     249\Input{par-surfaces} 
    307250 
    308251\chapter{Utilisation avancée} 
    309 \input \datapath par-nommersolide 
    310 \input \datapath par-section 
    311 \input \datapath par-fusion 
    312 \input \datapath par-fusionjps 
     252\Input{par-nommersolide} 
     253\Input{par-section} 
     254\Input{par-fusion} 
     255\Input{par-fusionjps} 
    313256 
    314257 
    315258\chapter{Interaction avec PSTricks} 
    316 \input \datapath par-positionnerpointconnu 
    317 \input \datapath par-ligne3D 
    318 \input \datapath par-tracerpolygone 
    319 \input \datapath par-transformpointconnu 
    320 \input \datapath par-annoterschema 
    321 %%\input \datapath par-composervue 
     259\Input{par-positionnerpointconnu} 
     260\Input{par-ligne3D} 
     261\Input{par-tracerpolygone} 
     262\Input{par-transformpointconnu} 
     263\Input{par-annoterschema} 
     264%%\Input{par-composervue} 
    322265 
    323266 
    324267\chapter{Projections} 
    325 \input \datapath par-projpresentation 
    326 \input \datapath par-projectionvisibility 
    327 \input \datapath par-definirplanquelconque 
    328 \input \datapath par-projectionpoint 
    329 \input \datapath par-projectionvecteur 
    330 \input \datapath par-projectiondroite 
    331 \newpage 
    332 \input \datapath par-projectioncercle 
    333 \input \datapath par-projectionpolygone 
    334 \input \datapath par-projectionligne 
    335 \newpage 
    336 \input \datapath par-projectionangledroit 
    337 %% \input \datapath par-definirfacesolideproj %% destroy 
    338 \input \datapath par-projectioncourbe 
    339 %% \input \datapath par-projectionchemin 
    340 \input \datapath par-projectiontexte 
    341  
     268\Input{par-projpresentation} 
     269\Input{par-projectionvisibility} 
     270\Input{par-definirplanquelconque} 
     271\Input{par-projectionpoint} 
     272\Input{par-projectionvecteur} 
     273\Input{par-projectiondroite} 
     274\newpage 
     275\Input{par-projectioncercle} 
     276\Input{par-projectionpolygone} 
     277\Input{par-projectionligne} 
     278\newpage 
     279\Input{par-projectionangledroit} 
     280%% \Input{par-definirfacesolideproj} %% destroy 
     281\Input{par-projectioncourbe} 
     282%% \Input{par-projectionchemin} 
     283\Input{par-projectiontexte} 
     284 
     285\appendix 
    342286\chapter{Annexe} 
    343 \input \datapath par-parametres 
     287\Input{par-parametres} 
    344288 
    345289\nocite{*} 
    346290\bgroup 
     291\fancyfoot{} 
    347292\RaggedRight 
    348293\bibliographystyle{plain}