Initialisation du projet pst-solides3d.git (SVN revision 142)
[pst-solides3d.git] / doc / .svn / text-base / par-fusion.tex.svn-base
1 \section {Fusionner des solides}
2
3 Il est possible d'assembler plusieurs solides en une seule structure~:
4 c'est l'opération de \textsl {fusion\/} des solides. Cette technique
5 permet d'appliquer l'algorithme du peintre à toute une scéne.
6
7 Pour ce faire, il faut activer la possibilité de mettre en mémoire par
8 \verb+\psset{solidmemory}+, puis construire ses différents solides
9 avec \verb+\psSolid+, sans omettre de leur donner un nom chacun.
10
11 On utilise ensuite l'objet \verb+fusion+ de \verb+\psSolid+, en
12 indiquent dans le paramètre \verb+base+ la liste des noms des solides
13 à fusionner.
14
15 Pour visualiser la scène, ne pas oublier de conclure par
16 \verb+\composeSolid+. 
17
18 \begin{multicols}{2}
19 \bgroup
20 \psset{lightsrc=50 -50 50,viewpoint=40 16 32 rtp2xyz,Decran=40}
21 \psset{unit=.6}
22 \begin{pspicture}(-6,-5)(6,7)
23 \psframe*[linecolor=gray!40](-6,-5)(6,7)
24 \psset{solidmemory}
25 \psSolid[object=cylindre,h=6,fillcolor=blue,
26       r=1.5,
27       ngrid=4 16,
28       action=none,
29       name=A1,
30       ](0,0,-4)
31 \psSolid[object=anneau,h=6,fillcolor=red!50,
32       R=4,r=3,h=1,
33       action=none,
34       name=B1,
35       ](0,0,-1)
36 \psSolid[object=fusion,
37       action=draw**,
38       base=A1 B1,
39       ](0,0,0)
40 \composeSolid
41 \end{pspicture}
42 \egroup
43
44 \columnbreak
45
46 \begin{verbatim}
47 \psset{solidmemory}
48 \psSolid[object=cylindre,h=6,fillcolor=blue,
49       r=1.5,
50       ngrid=4 16,
51       action=none,
52       name=A1,
53       ](0,0,-4)
54 \psSolid[object=anneau,h=6,fillcolor=red!50,
55       R=4,r=3,h=1,
56       action=none,
57       name=B1,
58       ](0,0,-1)
59 \psSolid[object=fusion,
60       action=draw**,
61       base=A1 B1,
62       ](0,0,0)
63 \composeSolid
64 \end{verbatim}
65 \end{multicols}
66
67
68 \begin{multicols}{2}
69 \bgroup
70 \psset{unit=0.5}
71 \begin{pspicture}(-6,-5)(6,5)
72 \psset{solidmemory}
73 \psset{lightsrc=50 -50 50,viewpoint=100 -30 40,
74    Decran=100,linewidth=0.5\pslinewidth,
75    ngrid=18 18,fillcolor=white,
76    h=12,r=2,RotX=90}
77 \psframe*[linecolor=black](-6,-5)(6,5)
78 \psSolid[object=cylindrecreux,
79    action=none,
80    name=cylindre1](0, 6, 0)
81 \psSolid[object=cylindrecreux,
82    RotZ=90,
83    action=none,
84    name=cylindre2](-6, 0, 0)
85 \psSolid[object=fusion,
86    base=cylindre1 cylindre2,RotX=0]
87 \composeSolid
88 \end{pspicture}
89 \egroup
90
91 \columnbreak
92
93 \begin{verbatim}
94 \psset{solidmemory}
95 \psset{lightsrc=50 -50 50,
96    viewpoint=100 -30 40,
97    Decran=100,linewidth=0.5\pslinewidth,
98    ngrid=18 18,fillcolor=white,
99    h=12,r=2,RotX=90}
100 \psframe*[linecolor=black](-6,-5)(6,5)
101 \psSolid[object=cylindrecreux,
102    action=none,
103    name=cylindre1](0, 6, 0)
104 \psSolid[object=cylindrecreux,
105    RotZ=90,
106    action=none,
107    name=cylindre2](-6, 0, 0)
108 \psSolid[object=fusion,
109    base=cylindre1 cylindre2,RotX=0]
110 \composeSolid
111 \end{verbatim}
112
113 \end{multicols}
114

Licence Creative Commons Les fichiers de Syracuse sont mis à disposition (sauf mention contraire) selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.