diff options
Diffstat (limited to 'Master/texmf-dist/doc/generic/pst-solides3d/src/text/par-projectiontexte-en.tex')
-rw-r--r-- | Master/texmf-dist/doc/generic/pst-solides3d/src/text/par-projectiontexte-en.tex | 619 |
1 files changed, 619 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-solides3d/src/text/par-projectiontexte-en.tex b/Master/texmf-dist/doc/generic/pst-solides3d/src/text/par-projectiontexte-en.tex new file mode 100644 index 00000000000..b4b2f47c9c9 --- /dev/null +++ b/Master/texmf-dist/doc/generic/pst-solides3d/src/text/par-projectiontexte-en.tex @@ -0,0 +1,619 @@ +\section{Text} + +The object \Lkeyword{texte} of the macro \Lcs{psProjection} allows us +to \Index{project} character strings onto planes. + +\subsection{The parameters and the options} + +There are three parameters:\Lkeyword{text} which defines the +string, \Lkeyword{fontsize}, which gives the dimension of the font +in points (remember: 28.45~pts correspond to 1~cm), and finally +\Lkeyword{pos}, which defines the position of the \Index{text}. By +default, the text is centred at the origin of the plane. + +This last parameter needs some explanation. See the string + \texttt{petit texte} represented below. +\begin{center} +\begin{pspicture}(-5,-2)(5,2) +\rput(0,0){\psframebox[linestyle=none,fillstyle=solid, + fillcolor=yellow!50,framesep=0pt]{\phantom{\timesnormal petit texte}}} +\rput(0,0){\rnode[lb]{A}{\rnode[rb]{B}{\rnode[rt]{C}{% + \rnode[lt]{D}{\rnode[l]{E}{\rnode[r]{F}{% + \rnode[t]{G}{\rnode[b]{H}{\timesnormal petit texte}}}}}}}}} +%\psset{nodesep=5pt} +\ncline{A}{B}\ncline{B}{C}\ncline{C}{D}\ncline{D}{A} +\pnode({A}){A'} +\pnode({B}){B'} +\pnode({C}){C'} +\pnode({D}){D'} +\pnode({E}){E'} +\pnode({F}){F'} +\pnode({G}){G'} +\pnode({H}){H'} +\rput(A){\pnode(0,\baselineskip){B1}} +\rput(B){\pnode(0,\baselineskip){B2}} +\psdots(A')(B')(C')(D')(E')(F')(G')(H')(B1)(B2)(0,0) +\psline(B1)(B2) +\pnode(! \GetCenter{A} A.x 0.5 sub A.y 0.5 sub){A1} +\ncline{->}{A}{A1} +\uput[dl](A1){\texttt{dl}} +\pnode(! \GetCenter{B1} B1.x 0.5 sub B1.y){B1l} +\ncline{->}{B1}{B1l} +\uput[l](B1l){\texttt{bl}} +\pnode(! \GetCenter{E} E.x 0.5 sub E.y){El} +\ncline{->}{E}{El} +\uput[l](El){\texttt{cl}} +\pnode(! \GetCenter{D} D.x 0.5 sub D.y 0.5 add){Dl} +\ncline{->}{D}{Dl} +\uput[ul](Dl){\texttt{ul}} +\pnode(! \GetCenter{G} G.x G.y 0.5 add){Gu} +\ncline{->}{G}{Gu} +\uput[u](Gu){\texttt{uc}} +\pnode(! \GetCenter{H} H.x H.y 0.5 sub){Hd} +\ncline{->}{H}{Hd} +\uput[d](Hd){\texttt{dc}} +\pnode(! \GetCenter{C} C.x 0.5 add C.y 0.5 add){Cr} +\ncline{->}{C}{Cr} +\uput[ur](Cr){\texttt{ur}} +\pnode(! \GetCenter{B} B.x 0.5 add B.y 0.5 sub){Br} +\ncline{->}{B}{Br} +\uput[dr](Br){\texttt{dr}} +\pnode(! \GetCenter{B2} B2.x 0.5 add B2.y){B2r} +\ncline{->}{B2}{B2r} +\uput[r](B2r){\texttt{br}} +\pnode(! \GetCenter{F} F.x 0.5 add F.y){Fr} +\ncline{->}{F}{Fr} +\uput[r](Fr){\texttt{cr}} +\end{pspicture} +\end{center} + +We have $4$~horizontal reference lines: the bottom line +\verb+(d)own+, the base line \verb+(b)aseline+, the median line, +or centre line \verb+(c)enter+, and the upper line \verb+(u)p+. + +There are as well $4$~vertical reference lines: the left line +\verb+(l)eft+, the base line \verb+(b)aseline+, the centre line +\verb+(c)enter+ and the right line \verb+(r)ight+. In the case of +strings, the two vertical lines \verb+l+ and \verb+b+ might be +indistinguishable and easily confounded. + +The intersection of the $4$ horizontal lines with the $4$ vertical +lines gives us $16$~positioning point possibilities \verb+dl+, +\verb+bl+, \verb+cl+, \verb+ul+, \verb+db+, \verb+bb+, \verb+cb+, +\verb+ub+, \verb+dc+, \verb+bc+, \verb+cc+, \verb+uc+, \verb+dr+, +\verb+br+, \verb+cr+, \verb+ur+. + +Of these, $4$~are considered as \textit{inner points}: \verb+bb+, +\verb+bc+, \verb+cb+ and \verb+cc+. + +When the parameter \Lkeyword{pos} of \Lcs{psProjection} is assigned +one of these four inner points, it means that the latter will be +situated at the origin of the plane of projection. + +When the parameter \Lkeyword{pos} of \Lcs{psProjection} is assigned +one of the twelve remaining points, it indicates the direction in +which the text will be positioned relative to the origin of the +plane of projection. + +For example, \verb+\psProjection[...,pos=uc](0,0)+ indicates that +the text will be centred relative to the point $(0,0)$ and +situated above it. + +%% Le plan doit \^{e}tre d\'{e}fini par son origine +%% \Cadre{$\mathtt{(x_0ny_0,z_0)}$} et la normale %$ +%% \Cadre{\texttt{[normal=1 0 0 90]}}. Pour les particularit\'{e}s +%% de la d\'{e}finition de la normale, car il y a trois fa\c{c}ons de le faire ! +%% Tous les d\'{e}tails sont dans la partie \Cadre{\texttt{``Choisir un plan +%% par son origine et une normale''}} de la documentation de +%% \texttt{doc-psProjection}. + +%% La taille de la fonte doit \^{e}tre fix\'{e}e en points avec l'option +%% . . + + +\subsection{Examples of projecting onto a plane} + +\subsubsection{Example 1: \Index{projection} onto $Oxy$, with the option \texttt{pos=bc}} + +\begin{LTXexample}[width=8cm] +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10, + viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-4 4 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + pos=bc,plan=monplan, + text=j'aimerais tant voir Syracuse, +](0,0)% +\axesIIID(0,0,0)(4,2,1) +\composeSolid +\end{pspicture} +\end{LTXexample} + +\subsubsection{Example 2: \Index{projection} onto $Oxy$, centred text} + +\begin{LTXexample}[width=8cm] +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10, + viewpoint=50 -90 89.99 rtp2xyz,,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-4 4 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text= L'\^{\i}le de P\^{a}ques et Kairouan, + plan=monplan]% +\axesIIID(0,0,0)(4,2,1) +\end{pspicture} +\end{LTXexample} + + +\subsubsection{Example 3: \Index{projection} onto $Oxy$, with different options +\texttt{pos=dl, etc.}} + +\begin{center} +\psset{unit=.8} +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10,viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-10 10 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text=Et les grands oiseaux qui s'amusent, + pos=dl, + plan=monplan]% +\axesIIID(0,0,0)(8,1,1) +\rput(0,-1.5){\Cadre{\texttt{[pos=dl]}}} +\end{pspicture} +\end{center} + +\begin{center} +\psset{unit=.8} +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10,viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-10 10 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text= A glisser l'aile sous le vent., + pos=dr, + plan=monplan]% +\axesIIID(0,0,0)(8,1,1) +\rput(0,-1.5){\Cadre{\texttt{[pos=dr]}}} +\end{pspicture} +\end{center} + +\begin{center} +\psset{unit=.8} +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10,viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-10 10 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text=Avant que ma jeunesse s'use, + pos=ur, + plan=monplan]% +\axesIIID(0,0,0)(8,1,1) +\rput(0,-1.5){\Cadre{\texttt{[pos=ur]}}} +\end{pspicture} +\end{center} + +\begin{center} +\psset{unit=.8} +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10,viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-10 10 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text=Et que mes printemps soient partis, + pos=ul, + plan=monplan]% +\axesIIID(0,0,0)(8,1,1) +\rput(0,-1.5){\Cadre{\texttt{[pos=ul]}}} +\end{pspicture} +\end{center} + +\begin{center} +\psset{unit=.8} +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10,viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-10 10 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text=J'aimerais tant voir Syracuse, + pos=uc, + plan=monplan]% +\axesIIID(0,0,0)(8,1,1) +\rput(0,-1.5){\Cadre{\texttt{[pos=uc]}}} +\end{pspicture} +\end{center} + +\begin{center} +\psset{unit=.8} +\begin{pspicture}(-4,-1.5)(4,1.5) +\psset{solidmemory} +\psset{lightsrc=10 0 10,viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-10 10 -1 1,args={0 0 0 [0 0 1]},name=monplan,] +\psProjection[object=texte, + fontsize=20,linecolor=red, + text=Pour m'en souvenir \`{a} Paris., + pos=dc, + plan=monplan]% +\axesIIID(0,0,0)(8,1,1) +\rput(0,-1.5){\Cadre{\texttt{[pos=dc]}}} +\end{pspicture} +\end{center} + +\subsubsection{Example 4: \Index{projection} onto $Oxy$ with text rotation} + +\begin{LTXexample}[width=8cm] +\begin{pspicture}(-4,-3)(4,3) +\psset{solidmemory} +\psset{lightsrc=10 0 10, + viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-4 4 -3 3,args={0 0 0 [0 0 1]},name=monplan,] +\psset{plan=monplan} +\psProjection[object=texte, + fontsize=28.45,linecolor=gray!50, + text=Tournez man\`{e}ges]% +\psProjection[object=texte, + fontsize=28.45,linecolor=red, + text=Tournez man\`{e}ges, + phi=60]% +\axesIIID(0,0,0)(4,3,1) +\end{pspicture} +\end{LTXexample} +The text rotation is introduced by the parameter \texttt{phi=60}. + +\subsubsection{Example 5: positioning text at a point} + +\begin{LTXexample}[width=8cm] +\begin{pspicture}(-4,-3)(4,3) +\psset{solidmemory} +\psset{viewpoint=50 -90 89.99 rtp2xyz,Decran=50} +\psSolid[object=plan,definition=normalpoint,plangrid, + base=-4 4 -3 3,args={0 0 0 [0 0 1]},name=monplan,] +\psset{fontsize=28.45,plan=monplan} +\psProjection[object=texte, + linecolor=green, + text=ici](-2,-2) +\psProjection[object=texte, + linecolor=red, + text=ou]% +\psProjection[object=texte, + linecolor=blue, + text=l\`{a}](2,2) +\psPoint(0,0,0){O} +\psPoint(-2,-2,0){O1} +\psPoint(2,2,0){O2} +\psdots[dotsize=0.2](O)(O1)(O2) +\axesIIID(0,0,0)(4,4,1) +\end{pspicture} +\end{LTXexample} + +\subsection{Examples for \Index{projecting} onto a face of a solid} + +\subsubsection{Method} + +The solid must be memorised with the general option +\texttt{$\backslash$psset$\{$solidmemory$\}$}. The first thing to %$ +do is to find the numbers of the faces of the solid with the +option \texttt{\Lkeyword{numfaces}=\Lkeyval{all}}. +\begin{LTXexample}[width=8cm] +\psset{viewpoint=50 20 30 rtp2xyz,Decran=100} +\begin{pspicture}(-4,-4)(4,4) +\psSolid[object=cube,a=2,action=draw, + linecolor=red,numfaces=all]% +\axesIIID(1,1,1)(2,2,2) +\end{pspicture} +\end{LTXexample} + +Then we define the projection plane as the chosen face, where in +this case we put \texttt{A} on the face with the index number 0: + + +Then we define the projection plane by a chosen face, there we put \texttt{A} on the face with the index number 0: +\begin{verbatim} +\psSolid[object=plan,definition=solidface,args=A 0,name=P0] +\psProjection[object=texte,linecolor=red,text=A,plan=P0]% +\end{verbatim} + + +\begin{LTXexample}[width=8cm] +\psset{viewpoint=50 20 30 rtp2xyz,Decran=50} +\begin{pspicture}(-4,-4)(4,5) +\psset{unit=0.5} +\psset{solidmemory} +\psSolid[object=cube,a=8,action=draw,name=A,linecolor=red]% +\psset{fontsize=100} +\psSolid[object=plan,action=none, + definition=solidface,args=A 0,name=P0] +\psProjection[object=texte,linecolor=red,text=A,plan=P0]% +\psSolid[object=plan,action=none, + definition=solidface,args=A 1,name=P1] +\psProjection[object=texte,linecolor=red,text=B,plan=P1]% +\psSolid[object=plan,action=none, + definition=solidface,args=A 4,name=P4] +\psProjection[object=texte,linecolor=red,text=E,plan=P4]% +\axesIIID(4,4,4)(6,6,6) +\end{pspicture} +\end{LTXexample} + +\subsubsection{Text rotation with the option \texttt{phi}} + +\begin{LTXexample}[width=8cm] +\psset{viewpoint=50 20 30 rtp2xyz,Decran=50} +\psset{unit=0.4} +\begin{pspicture}(-8,-7)(4,9) +\psset{solidmemory} +\psSolid[object=cube,a=8,action=draw,linecolor=red,name=A]% +\psset{fontsize=200} +\psSolid[object=plan,action=none, + definition=solidface,args=A 0,name=P0] +\psProjection[object=texte,linecolor=gray,text=A,plan=P0]% +\psset{phi=90} +\psProjection[object=texte,linecolor=red,text=A,plan=P0]% +\axesIIID(4,4,4)(6,6,6) +\end{pspicture} +\end{LTXexample} + + +\subsection{Examples of \Index{projecting} onto different faces of a solid} + +\definecolor{rose}{rgb}{1,0.75,0.74} + +\def\JuangJie{% +\begin{pspicture}(-3.5,-2)(3.5,4) +\psframe[fillcolor=cyan!50,fillstyle=solid](-3.5,-2)(3.5,4)% +\psSolid[object=cylindre,r=8,h=0.2,ngrid=1 36,action=draw**,hue=0.5 0.6]% +\psSolid[object=cube,a=8,h=0.2,ngrid=1 36,action=draw**,color1=magenta!50, + color2=red!20,color3=yellow!50,color4=green!50, + fcol=0 (color1) 1 (color2) 2 (color3) 3 (color4) 4(White)](0,0,4.2)% +\psset{solidmemory}% +\psSolid[object=cube,a=8, + name=A, + action=none](0,0,4.2)% +%% la face 0 +\psSolid[object=plan,action=none,definition=solidface, + base=-4 4 -4 4,args=A 0,name=P0]% +%\psSolid[object=plan,definition=plan,action=none,args=P0,planmarks,action=none,]% +\psset{fontsize=30,plan=P0}% +\psProjection[object=texte,text=po\`{e}me](0,3)% +\psProjection[object=texte,text=de](0,2)% +\psset{fontsize=55} +\psProjection[object=texte,linecolor=red,text=Juang Jie] +%% la face 4 +\psSolid[object=plan,action=none,definition=solidface,base=-4 4 -4 4,args=A 4,phi=-90,name=P4]% +%\psSolid[object=plan,definition=plan,action=none,args=P4,fontsize=10,planmarks,action=none]% +\psset{fontsize=28.45,pos=bc,plan=P4} +\psProjection[object=texte,text={Dans ma jeunesse,}](0,3)% +\psset{fontsize=20} +\psProjection[object=texte,text=j'\'{e}coutais le son de la pluie](0,2)% +\psProjection[object=texte,text=dans les maisons de plaisir](0,1)% +\psProjection[object=texte,text=les tentures frissonnaient]% +\psProjection[object=texte,text=sous la lumi\`{e}re rouge](0,-1)% +\psProjection[object=texte,text=des cand\'{e}labres](0,-2)% +%% la face 1 +\psSolid[object=plan,action=none,definition=solidface,base=-4 4 -4 4,args=A 1,phi=180,name=P1]% +%\psSolid[object=plan,definition=plan,action=none,args=P1,fontsize=10,planmarks,action=none]% +\psset{plan=P1} +\psProjection[object=texte,fontsize=25,text=Dans mon \^{a}ge m\^{u}r](0,3)% +\psProjection[object=texte,text=j'ai \'{e}cout\'{e} le son de la pluie](0,2)% +\psProjection[object=texte,fontsize=18,text={en voyage, \`{a} bord d'un bateau}](0,1)% +\psProjection[object=texte,text=les nuages pesaient bas]% +\psProjection[object=texte,text=sur l'immensit\'{e} du fleuve](0,-1)% +\psProjection[object=texte,text=une oie sauvage ](0,-2)% +\psProjection[object=texte,text=s\'{e}par\'{e}e de ses soeurs](0,-3)% +%% la face 2 +\psSolid[object=plan,action=none,definition=solidface,base=-4 4 -4 4,args=A 2,phi=180,name=P2]% +%\psSolid[object=plan,definition=plan,action=none,args=P2,fontsize=10,planmarks,action=none]% +\psset{plan=P2} +\psProjection[object=texte,text=appelait dans le vent d'ouest](0,3)% +\psProjection[object=texte,text={Aujourd'hui,}](0,2)% +\psProjection[object=texte,text=j'\'{e}coute le son de la pluie](0,1)% +\psProjection[object=texte,text=sous le charme]% +\psProjection[object=texte,text=d'un ermitage monastique](0,-1)% +\psProjection[object=texte,text=Ma t\^{e}te est chenue](0,-2)% +\psProjection[object=texte,text=chagrins et bonheurs](0,-3)% +%% la face 3 +\psSolid[object=plan,action=none,definition=solidface,args=A 3,phi=180,name=P3]% +%\psSolid[object=plan,definition=plan,action=none,args=P3,fontsize=10,planmarks,action=none]% +\psset{plan=P3} +\psProjection[object=texte,text=s\'{e}parations et retrouvailles](0,3)% +\psProjection[object=texte,text=tout est vanit\'{e}](0,2)% +\psProjection[object=texte,text={Dehors, sur les marches}](0,1)% +\psProjection[object=texte,text=les gouttes tambourinent]% +\psProjection[object=texte,text= jusqu'\`{a} l'aube](0,-1)% +\psProjection[object=texte,text=Juang Jie ](0,-3)% +\composeSolid +\end{pspicture}} + +\def\MollyBloom{% +%\psset{lightsrc=-15 -9 5} +%\psset{viewpoint=20 -150 30 rtp2xyz,Decran=11} +\psset{solidmemory,visibility} +%% le plan de base +\psSolid[object=plan, + definition=equation, + ngrid=1. 1., + args={[0 0 1 0]},linecolor=red, + base=-8 10 -8 8, + linecolor=red, + name=G]% +\psset{fontsize=25,,pos=bc,plan=G} +\psProjection[object=texte, + phi=-90, + text=le monologue de Molly, + pos=bc, + ](-5,0) +\psProjection[object=texte,text=dans Ulysse de James Joyce](1,-5,0) +\psset{h=1,fillcolor=yellow!50,incolor=rose,hollow} +\psset{fontsize=20,pos=cc} +% +\psSolid[object=ruban,name=ruban1,base=9 8 9 -8] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=O cet effrayant torrent tout au fond O et la mer \'{e}carlate] +% +\psSolid[object=ruban,name=ruban1,base=9 -8 -8 -8] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=quelquefois comme du feu et les glorieux couchers de soleil et] +% +\psSolid[object=ruban,name=ruban1,base=-8 7 7 7] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0,fontsize=18, + text=les ruelles bizarres les maisons roses et bleues et jaunes,] +% +\psSolid[object=ruban,name=ruban1,base=7 7 7 -6] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=et les roseraies et les jasmins et les g\'{e}raniums,] +% +\psSolid[object=ruban,name=ruban1,base=7 -6 -6 -6] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=et les cactus de Gibraltar quand j'\'{e}tais jeune fille,] +% +\psSolid[object=ruban,name=ruban1,base=-6 5 5 5] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0,fontsize=18, + text=quand j'ai mis la rose dans mes cheveux,] +% +\psSolid[object=ruban,name=ruban1,base=5 5 5 -4] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=comme les filles Andalouses,] +% +\psSolid[object=ruban,name=ruban1,base=5 -4 -3 -4] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=ou en mettrai-je une rouge oui,] +% +\psSolid[object=ruban,name=ruban1,base=-3 4 3 4] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0,fontsize=18, + text=sous le mur mauresque,] +% +\psSolid[object=ruban,name=ruban1,base=3 4 3 -2] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=je me suis dit apr\`{e}s,] +% +\psSolid[object=ruban,name=ruban1,base=3 -2 -1.5 -2] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=tout aussi bien,] +% +\psSolid[object=ruban,name=ruban1,base=-1.5 3 2 3] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=et alors je,] +\psSolid[object=ruban,name=ruban1,base=-8 -8 -8 7] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=les figuiers dans les jardins de l'Alameda et toutes,] +% +\psSolid[object=ruban,name=ruban1,base=-6 -6 -6 5] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=et une Fleur de la montagne oui,] +% +\psSolid[object=ruban,name=ruban1,base=-3 -4 -3 4] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=et comme il m'a embrass\'{e}e,] +% +\psSolid[object=ruban,name=ruban1,base=-1.5 -2 -1.5 3] +\psSolid[object=plan,action=none,definition=solidface,args=ruban1 0,name=R0,phi=-90] +\psProjection[object=texte,plan=R0, + text=lui qu'un autre,] +% +\composeSolid +} + +We project a poem, verse by verse, onto 4 faces of a cube. It is +necessary to use the option \texttt{solidmemory} at the beginning +\begin{verbatim} +\psset{solidmemory} +\psSolid[object=cube,a=8,name=A1](0,0,4.2)% +\end{verbatim} +of the code. We then define the cube, which is memorised with the +help of the command \texttt{name=A}: + +\begin{verbatim} +\psset{solidmemory} +\psProjection[object=texte,text=po\`{e}me,fontsize=30,plan=P0](0,3)% +\psSolid[object=cube,a=8,name=A](0,0,4.2)% +\end{verbatim} + +The number of each face needs to be known---from a previous run +of the code with the option \texttt{\Lkeyword{numfaces}=\Lkeyval{all}}. The following +commands: + + +\begin{verbatim} +\psSolid[object=plan,action=none,definition=solidface,args=A 0,name=P0]% +\psProjection[object=texte,text=po\`{e}me,fontsize=30,plan=P0](0,3)% +\end{verbatim} +define the plane $P0$ as the oriented plane of the face with index +number 0 of the solid $A$, before the word \texttt{po\`{e}me} is +projected onto $P0$, with a font size of 30~pts, to the point with +coordinates $(0,3)$ (within the coordinate system of that plane). +We could have changed the orientation of the text to +\texttt{phi=-90} for example, in the one or other of the commands. + +By default, if the face is not visible, its text stays hidden. By +putting \Lkeyword{visibility} in the options, the text is shown when +it would otherwise not be, as in the following example. + +You must not forget to write \texttt{$\backslash$composeSolid} at +the end of the text-writing commands for all these lines to be +taken into account. Any other PStricks command will have +the usual effect and \verb+\composeSolid+ will be unnecessary. + + + + +\begin{center} +\psset{viewpoint=40 20 30 rtp2xyz,Decran=16} +\JuangJie \hfil +\psset{viewpoint=40 110 30 rtp2xyz,Decran=16} +\JuangJie +\end{center} +\begin{center} +\psset{viewpoint=40 200 30 rtp2xyz,Decran=16} +\JuangJie\hfil +\psset{viewpoint=40 290 30 rtp2xyz,Decran=16} +\JuangJie +\end{center} + + +\begin{center} +\begin{pspicture}(-8,-6)(8,3) +\psset{lightsrc=-15 -9 5} +\psframe(-8,-6)(8,3) +\psset{viewpoint=20 -150 30 rtp2xyz,Decran=11}\MollyBloom +\end{pspicture} +\end{center} +\begin{center} +\begin{pspicture}(-8,-6)(8,7) +\psset{lightsrc=0 0 3} +\psframe(-8,-6)(8,7) +\psset{viewpoint=6 -150 89.9 rtp2xyz,Decran=2.8}\MollyBloom +\end{pspicture} +\end{center} + +\endinput |