Retour

icosahedral_with_holes.tex

Télécharger le fichier
\makeatletter
\pstheader{icosahedronvide.pro}
\define@key[psset]{pst-V3D}{radius}{\def\psk@IIID@R{#1}}       % rayon de la sphère circonscrite
\define@key[psset]{pst-V3D}{d}{\def\psk@IIID@d{#1}}       % fraction arete
\psset[pst-V3D]{d=3,radius=3}
 
 
\def\psIcosahedronH{\pst@object{psIcosahedronH}}
 
\def\psIcosahedronH@i(#1,#2,#3){{%
  \begin@ClosedObj
    \use@par
    \addto@pscode{%
    1 setlinejoin
    \ifPst@visibility /condition { PSfacette 0 gt } def \else /condition { PSfacette 0 le} def \fi
    \tx@parametresIIID
    /RotX \psk@IIID@RotX\space def
    /RotY \psk@IIID@RotY\space def
    /RotZ \psk@IIID@RotZ\space def
    /radius \psk@IIID@R\space def
    /d \psk@IIID@d\space def
    /CX #1 def
    /CY #2 def
    /CZ #3 def
/c2 {RotY cos} bind def
/s2 {RotY sin} bind def
/c3 {RotZ cos} bind def
/s3 {RotZ sin} bind def
/c1 {RotX cos} bind def
/s1 {RotX sin} bind def
%% les coefficients de la matrice de transformation
%% de l'objet
/M11 {c2 c3 mul} bind def
/M12 {c3 s1 mul s2 mul c1 s3 mul sub} bind def
/M13 {c1 c3 mul s2 mul s1 s3 mul add} bind def
/M21 {c2 s3 mul} bind def
/M22 {s1 s2 mul s3 mul c1 c3 mul add} bind def
/M23 {s3 s2 mul c1 mul c3 s1 mul sub} bind def
/M31 {s2 neg} bind def
/M32 {s1 c2 mul} bind def
/M33 {c1 c2 mul} bind def
%%
/CalculsPointsAfterTransformations {
3 dict begin
   M11 Xpoint mul M12 Ypoint mul add M13 Zpoint mul add CX add
   M21 Xpoint mul M22 Ypoint mul add M23 Zpoint mul add CY add
   M31 Xpoint mul M32 Ypoint mul add M33 Zpoint mul add CZ add
end
} def
ICOSAEDRE_Creux}  % fin du code ps
    \end@ClosedObj%
}}
\makeatother