1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
%%
%% Ein Beispiel der DANTE-Edition
%%
%%
%% Copyright (C) 2010 Herbert Voss
%%
%% It may be distributed and/or modified under the conditions
%% of the LaTeX Project Public License, either version 1.3
%% of this license or (at your option) any later version.
%%
%% See http://www.latex-project.org/lppl.txt for details.
%%
%%
%% ====
% Show page(s) 1
%%
\documentclass[]{exaarticle}
\pagestyle{empty}
\setlength\textwidth{352.81416pt}
\setlength\parindent{0pt}
\StartShownPreambleCommands
\usepackage{pst-solides3d}
\StopShownPreambleCommands
\begin{document}
\psset{viewpoint=50 50 20 rtp2xyz,lightsrc=25 37 17,Decran=30}
\begin{pspicture}(-1.5,-1)(1.5,6)
\psSolid[object=grille,base=-2 2 -2 2,ngrid=8]
\psSolid[object=prisme,h=10,ngrid=20 2,hue=0 1 0.4 5,
base=.5 0 .5 .5 0 .5 -.5 .5 -.5 0 -.5 -.5 0 -.5 .5 -.5]
\end{pspicture}
%
\begin{pspicture}(-1.5,-1)(1.5,6)
\psSolid[object=grille,base=-2 2 -2 2,ngrid=8]
\pstVerb{
/torsion { % x y z liegt auf dem Stack
2 dict begin % alles lokal halten
/M defpoint3d % x- y- z-Koordinaten speichern
M % x y z wieder auf den Stack legen
/z exch def % z Koordinate speichern
pop pop % x y löschen
M % x y z auf den Stack legen
0 0 z 18 mul % weitere 0 0 18*z auf den Stack
rotateOpoint3d % Punkt rotieren
end
} def
}%
\psSolid[object=prisme,h=10,ngrid=20 2,transform=torsion,hue=0 1 0.4 5,
base=.5 0 .5 .5 0 .5 -.5 .5 -.5 0 -.5 -.5 0 -.5 .5 -.5]
\end{pspicture}
\end{document}
|