%% /usezzcamview {} def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%% Positionnement de la caméra et du type de caméra
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /ScreenDist 0.1 def
%% /ZoomFactor_x 100 def
%% /ZoomFactor_y 100 def
%%
%% /representationtype (perspective) def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% choix du type de représentation
%% /representationtype (perspective) def
%% %/representationtype (ortho) def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Set Camera Position
%% /SetCamPos { %% Cam_x Cam_y Cam_z
%% /Cam_z@3d exch def
%% /Cam_y@3d exch def
%% /Cam_x@3d exch def
%% /CamPos@3d {Cam_x@3d Cam_y@3d Cam_z@3d} def
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Get Camera Position
%% /GetCamPos {
%% CamPos@3d
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Set Camera Looking vector
%% /SetCamVec { %% Cam_Vx Cam_Vy Cam_Vz
%% /Cam_Vz@3d exch def
%% /Cam_Vy@3d exch def
%% /Cam_Vx@3d exch def
%% /CamVec@3d {Cam_Vx@3d Cam_Vy@3d Cam_Vz@3d} def
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Get Camera Looking vector
%% /GetCamVec {
%% CamVec@3d
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Set Camera Up vector
%% /SetCamUp { %% Cam_Ux Cam_Uy Cam_Uz
%% /Cam_Uz@3d exch def
%% /Cam_Uy@3d exch def
%% /Cam_Ux@3d exch def
%% /UpVec@3d {Cam_Ux@3d Cam_Uy@3d Cam_Uz@3d} def
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Get Camera Up vector
%% /GetCamUp {
%% UpVec@3d
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% Compute vectors usefull to CamView
%% /ComputeCamera {
%%
%% %% Calcule le vecteur directeur ZVecteur relatif à la caméra
%% CamVec@3d dupp3d norme3d -1 exch div mulv3d
%% /ZVec_z@3d exch def
%% /ZVec_y@3d exch def
%% /ZVec_x@3d exch def
%% /ZVec@3d {ZVec_x@3d ZVec_y@3d ZVec_z@3d} def
%%
%% %% Calcule le vecteur directeur YVecteur relatif à la caméra
%% ZVec@3d dupp3d UpVec@3d scalprod3d neg mulv3d UpVec@3d addv3d dupp3d norme3d 1 exch div mulv3d
%% /YVec_z@3d exch def
%% /YVec_y@3d exch def
%% /YVec_x@3d exch def
%% /YVec@3d {YVec_x@3d YVec_y@3d YVec_z@3d} def
%%
%% %% Calcule le vecteur directeur YVecteur relatif à la caméra
%% YVec@3d ZVec@3d vectprod3d
%% /XVec_z@3d exch def
%% /XVec_y@3d exch def
%% /XVec_x@3d exch def
%% /XVec@3d {XVec_x@3d XVec_y@3d XVec_z@3d} def
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% On projete le point 3d sur le plan de représentation de la caméra,
%% %% selon le mode de représentation
%% /CamView { %% x y z
%% 1 dict begin
%% /M defpoint3d
%% representationtype (ortho) eq
%% {CamPos@3d M vecteur3d dupp3d
%% ZVec@3d scalprod3d neg ZVec@3d lambdav3d
%% addv3d dupp3d XVec@3d scalprod3d 0.01 ZoomFactor_x mul mul
%% 4 1 roll YVec@3d scalprod3d 0.01 ZoomFactor_y mul mul
%% }
%% {CamPos@3d M vecteur3d dupp3d
%% ZVec@3d scalprod3d neg ScreenDist exch div mulv3d
%% dupp3d XVec@3d scalprod3d ZoomFactor_x mul
%% 4 1 roll YVec@3d scalprod3d ZoomFactor_y mul
%% } ifelse
%% end
%% } def
%%
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %% transforme un tableau de points 3d en tableau de points 2d
%% /tab3dto2d {
%% 2 dict begin
%% /T exch def
%% /n T length def
%% [ T aload pop
%% n 1 sub -1 n 3 idiv 2 mul
%% { 1 dict begin
%% /i exch def
%% CamView i 2 roll
%% end } for ]
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%% Version 3d des commandes jps TEXTE
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /bbtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} bbtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /bbtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} bbtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /bctext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} bctext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /bctexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} bctexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /bltext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} bltext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /bltexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} bltexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /brtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} brtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /brtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} brtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /cbtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} cbtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /cbtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} cbtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /cctext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} cctext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /cctexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} cctexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /cltext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} cltext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /cltexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} cltexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /crtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} crtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /crtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} crtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /dbtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} dbtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /dbtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} dbtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /dctext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} dctext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /dctexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} dctexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /dltext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} dltext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /dltexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} dltexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /ubtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} ubtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /ubtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} ubtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /uctext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} uctext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /uctexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} uctexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /ultext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} ultext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /ultexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} ultexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /urtext3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} urtext
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /urtexlabel3d {
%% 2 dict begin
%% /vect_echelle [1 1] def
%% /angle_de_rot {0} def
%% dup xcheck
%% {/angle_de_rot exch def}
%% if
%% dup isarray
%% {/vect_echelle exch def}
%% if
%% CamView vect_echelle {angle_de_rot} urtexlabel
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%% Version 3d des commandes jps GEOMETRIQUES
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /ligne3d { %% [tableau de points3d] option --> trace la ligne brisée
%% 1 dict begin
%% dup isstring
%% {/option exch def}
%% if
%% tab3dto2d
%% currentdict /option known
%% {option}
%% if
%% ligne
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /plus3d { %% A
%% CamView plus
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /point3d { %% A
%% CamView point
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /points3d { %% tableau de points3d
%% tab3dto2d points
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /polygone3d { %% tableau de points3d
%% tab3dto2d polygone
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /polygone*3d { %% tableau de points3d
%% tab3dto2d polygone*
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /surfaceparam3d { %% x_min pas_x x_max y_min pas_x y_max {Proc}
%% 9 dict begin
%% /z@xy exch def
%% /y1 exch def
%% /yp exch def
%% /y0 exch def
%% /x1 exch def
%% /xp exch def
%% /x0 exch def
%% x0 xp x1 {
%% /x exch def
%% y0 y1 {x exch 2 copy z@xy CamView pop} {x exch 2 copy z@xy CamView exch pop} Courbeparam
%% } for
%% y0 yp y1 {
%% /y exch def
%% x0 x1 {y 2 copy z@xy CamView pop} {y 2 copy z@xy CamView exch pop} Courbeparam
%% } for
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%% Commandes spécifiques 3d
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /qplanxy { %% trace un quadrillage du plan XY
%% gsave
%% 190 255 div 190 255 div 200 255 div setrgbcolor
%% -5 1 5 {
%% 1 dict begin
%% /i exch def
%% [i -5 0 i 5 0] (-) ligne3d
%% [-5 i 0 5 i 0] (-) ligne3d
%% end
%% } for
%% grestore } def
%%
%% /quadrilleXYZ { %% x_min x_max y_min y_max z_min z_max
%% 9 dict begin
%% /z1 exch def
%% /z0 exch def
%% /y1 exch def
%% /y0 exch def
%% /x1 exch def
%% /x0 exch def
%% x0 1 x1 {
%% /i exch def
%% y0 1 y1 {
%% /j exch def
%% [i j z0 i j z1] (-) ligne3d
%% } for
%% } for
%% x0 1 x1 {
%% /i exch def
%% z0 1 z1 {
%% /k exch def
%% [i y0 k i y1 k] (-) ligne3d
%% } for
%% } for
%% y0 1 y1 {
%% /j exch def
%% z0 1 z1 {
%% /k exch def
%% [x0 j k x1 j k] (-) ligne3d
%% } for
%% } for
%% end
%% } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /axeR { % x_min x_max lu (étendue du pointille, longueur du vecteur)
%% 3 dict begin
%% /lu exch def
%% /x1 exch def
%% /x0 exch def
%% gsave
%% continu
%% rouge
%% [0 0 0 lu 0 0] (->) ligne3d
%% currentlinewidth 0.5 mul setlinewidth
%% pointilles
%% [x0 0 0 x1 0 0] (-) ligne3d
%% grestore
%% end } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /axeV { % y_min y_max lu (étendue du pointille, longueur du vecteur)
%% 3 dict begin
%% /lu exch def
%% /y1 exch def
%% /y0 exch def
%% gsave
%% continu
%% vert
%% [0 0 0 0 lu 0] (->) ligne3d
%% currentlinewidth 0.5 mul setlinewidth
%% pointilles
%% [0 y0 0 0 y1 0] (-) ligne3d
%% grestore
%% end } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /axeB { % z_min z_max lu (étendue du pointille, longueur du vecteur)
%% 3 dict begin
%% /lu exch def
%% /z1 exch def
%% /z0 exch def
%% gsave
%% continu
%% bleu
%% [0 0 0 0 0 lu] (->) ligne3d
%% currentlinewidth 0.5 mul setlinewidth
%% pointilles
%% [0 0 z0 0 0 z1] (-) ligne3d
%% grestore
%% end } def
%%
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% /axesRVB { % xyz_min xyz_max lu (étendue du pointille, longueur des vecteurs)
%% 3 dict begin
%% /lu exch def
%% /w1 exch def
%% /w0 exch def
%% w0 w1 lu axeR
%% w0 w1 lu axeV
%% w0 w1 lu axeB
%% } def
%%
%% %% 6 -6 4 SetCamPos
%% %% 1 1.1 -0.3 SetCamVec
%% %% .03 0.03 1 SetCamUp
%% %% ComputeCamera
|