1 \documentclass{article}
2 \usepackage{pst-solides3d,pst-node,pst-plot,multido,url}
3 \usepackage[latin1]{inputenc}
4 \usepackage[T1]{fontenc}
7 \usepackage[a4paper,bottom=2.5cm,top=2cm]{geometry}
8 %%\usepackage[frenchle]{babel}
11 \title{\texttt{pst-solides3d} :\\
17 %\psset{lightsrc=10 20 30,viewpoint=50 20 30 rtp2xyz}
18 %\psset{SphericalCoor=true,viewpoint=50 20 40}
20 \section {Définir un objet de type plan}
24 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
25 \begin{pspicture*}(-5,-4)(6,4)
28 \psSolid[object=plantype,
37 %\codejps{test newplan drawsolid}
38 \axesIIID(0,0,0)(2,3,4)
42 \section {Plan défini par une face de solide}
45 \psset{SphericalCoor=true,viewpoint=10 18 30,Decran=10,fontsize=10}
47 \begin{pspicture*}(-5,-4)(6,4)
49 \psSolid[object=cube,a=3,fontsize=20,numfaces=all,name=A]
60 \axesIIID(0,0,0)(2,3,4)
64 \section {Plan défini par son équation}
69 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
70 \begin{pspicture*}(-5,-4)(6,4)
81 \axesIIID(0,0,0)(2,3,4)
85 Avec l'équation $z=0$ et en prenant $(0,3,0)$ comme origine. Si
86 l'origine fournie ne vérifie pas l'équation du plan, alors on ne tient
87 pas compte de l'origine proposée
90 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
91 \begin{pspicture*}(-5,-4)(8,4)
102 \axesIIID(0,0,0)(4,4,4)
108 Avec l'équation $z=0$ et une rotation de $90^\circ $ autour de la normale
111 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
112 \begin{pspicture*}(-5,-4)(6,4)
114 \psSolid[object=plan,
125 \section {Plan défini par sa normale et un point}
127 \texttt{args={0 0 -2 [0 0 1]}}
129 \texttt{args={0 0 1 [0 0 1]}}
132 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
133 \begin{pspicture*}(-5,-4)(6,4)
135 \psSolid[object=plan,
136 definition=normalpoint,
137 args={0 0 -2 [0 0 1]},
142 \psSolid[object=plan,
143 definition=normalpoint,
144 args={0 0 1 [0 0 1]},
152 \texttt{args={0 0 1 [0 0 1 90]}}
155 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
156 \begin{pspicture*}(-5,-4)(6,4)
158 \psSolid[object=plan,
159 definition=normalpoint,
160 args={0 0 1 [0 0 1 90]},
170 \texttt{args={0 0 0 [1 0 0 0 0 1]}}
173 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
174 \begin{pspicture*}(-5,-4)(6,4)
176 \psSolid[object=plan,
177 definition=normalpoint,
178 args={0 0 0 [1 0 0 0 0 1]},
186 \texttt{args={0 0 0 [1 1 0 0 0 1]}}
189 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
190 \begin{pspicture*}(-5,-4)(6,4)
192 \psSolid[object=plan,
193 definition=normalpoint,
194 args={0 0 0 [1 1 0 0 0 1]},
206 \psset{viewpoint=10 18 60 rtp2xyz,Decran=10,fontsize=10}
207 \begin{pspicture*}(-5,-4)(6,9)
208 \psSolid[object=plan,
216 \psSolid[object=plan,
225 %% /eq1 {[1 0 -2 0]} def %% equation plan 1
227 %% {dup [-3 3 -3 3] planputrange
228 %% dup [1. dup] planputngrid} exec
231 %% dup (jaune) (jaune) solidputcolors
240 \section {Translation, rotations}
243 % fabrique du bi-cone
245 %-5 3 0 [18 60] newcone
246 % 5 3 0 [18 60] newcone
247 % dup solidfacesreverse
249 %(bicone) writesolidfile
251 \begin{pspicture}(-5,-6)(8,7)
252 \psset{viewpoint=50 -30 20 rtp2xyz,Decran=50}%
253 \psframe[fillstyle=solid,fillcolor=gray!50](-5,-6)(8,7)%
254 \psSolid[object=grille,base=-4 4 -4 8,linecolor={[rgb]{0.72 0.72 0.5}}](0,0,-5)%
255 \psSolid[object=plan,action=draw,
261 base=-3 3 -6 5,planmarks,showBase]%
262 %% %% \psSolid[object=plan,action=draw,
263 %% %% definition=equation,%RotZ=90,
264 %% %% args={[1 0 0 -0.25] 90},
265 %% %% base=-3 3 -6 5,planmarks,showBase](0,5,1)%
266 %% %\axesIIID[linecolor=blue](0,0,0)(4,3,6)%
270 \section {\`A partir d'une face de solide}
273 % fabrique du bi-cone
275 %-5 3 0 [18 60] newcone
276 % 5 3 0 [18 60] newcone
277 % dup solidfacesreverse
279 %(bicone) writesolidfile
281 \begin{pspicture}(-5,-6)(8,7)
282 \psset{viewpoint=50 -30 20,Decran=50}%
284 \psframe[fillstyle=solid,fillcolor=gray!50](-5,-6)(8,7)%
285 \psSolid[object=cube,a=3,name=A,fontsize=20,numfaces=all]%
286 %% psSolid[object=plan,action=draw,
287 %% definition=equation,
291 %% args={[1 0 0 0] 90},
292 %% base=-3 3 -6 5,planmarks,showBase]%
300 \section {Avec du code jps}
304 \psset{viewpoint=-50 70 30 rtp2xyz,Decran=50}
305 \begin{pspicture*}(-5,-4)(6,9)
310 /eq1 [1 0 -2 0] def %% equation plan 1
311 /eq2 [0 1 0 0] def %% equation plan 2
313 dup [-3 3 -3 3] planputrange
314 dup [1. dup] planputngrid
316 eq2 solideqplansepare
317 dup (orange) solidputcolors
320 dup (orange) solidputcolors
324 dup [-3 3 -3 3] planputrange
325 dup [1. dup] planputngrid
327 %eq1 solidplansection
328 dup (jaune) (jaune) solidputcolors
341 \psset{SphericalCoor=true,viewpoint=10 18 10,Decran=10}
342 \begin{pspicture*}(-5,-4)(6,9)
345 /eq1 {[0 0 1 -1]} def
348 /eq4 {[1.2 1 0 -.8]} def
349 %% plan d equation z = 1
352 dup eq4 solideqplansepare
353 dup (blanc) solidputcolors
355 dup (blanc) solidputcolors
357 %% plan d equation z = 0
360 dup eq4 solideqplansepare
361 dup (blanc) solidputcolors
363 dup (blanc) solidputcolors
365 %% plan d equation z = -1
368 dup eq4 solideqplansepare
369 dup (blanc) solidputcolors
371 dup (blanc) solidputcolors
373 %% plan d equation x + y + 1 = 0
376 dup (cyan) solidputcolors
383 eq4 eq2plan planmarks