\makeatletter
\pstheader{sphereII.pro}
\define@key[psset]{pst-V3D}{unitgrid}{\def\psk@IIID@unitgrid{#1}} \psset[pst-V3D]{unitgrid=10}
\define@key[psset]{pst-V3D}{startlatitude}{\def\psk@IIID@startlatitude{#1}} \psset[pst-V3D]{startlatitude=0}
\define@key[psset]{pst-V3D}{sepTheta}{\def\pst@VIIID@sepTheta{#1}}
\psset[pst-V3D]{sepTheta=0}
\def\psCapSphere{\pst@object{psCapSphere}}
\def\psCapSphere@i(#1,#2,#3)#4{{ \begin@ClosedObj
\use@par
\addto@pscode{ 1 setlinejoin
\tx@parametresIIID
/sepTheta \pst@VIIID@sepTheta\space def
/CX #1 def
/CY #2 def
/CZ #3 def
/Rsphere #4 def
/increment \psk@IIID@unitgrid\space def
/condition {PSfacette 0 ge} def
/departPhi \psk@IIID@startlatitude\space def
/colorBase H_S def
/CxFaceInf #1 def
/CyFaceInf #2 def
/CzFaceInf #3 def
/PointsApresTransformations{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
MaillageSphereII
/Xpoint departPhi cos #4 mul def
/Ypoint 0 def
/Zpoint departPhi sin #4 mul def
PointsApresTransformations
/CzBaseInf ED
/CyBaseInf ED
/CxBaseInf ED
/RXvueInf XpointVue CxBaseInf sub def
/RYvueInf YpointVue CyBaseInf sub def
/RZvueInf ZpointVue CzBaseInf sub def
/Xpoint 0 def
/Ypoint 0 def
/Zpoint Rsphere def
PointsApresTransformations
/ZsommetSphere ED
/YsommetSphere ED
/XsommetSphere ED
/nXBaseInf CxFaceInf XsommetSphere sub def
/nYBaseInf CyFaceInf YsommetSphere sub def
/nZBaseInf CzFaceInf ZsommetSphere sub def
/PSbaseSphere nXBaseInf RXvueInf mul
nYBaseInf RYvueInf mul add
nZBaseInf RZvueInf mul add def
PSbaseSphere 0 ge {
/TableauxPoints [
0 1 359 { /theta exch def [
/Xpoint Rsphere theta cos mul departPhi cos mul def
/Ypoint Rsphere theta sin mul departPhi cos mul def
/Zpoint Rsphere departPhi sin mul def
PointsApresTransformations
3dto2d ]
} for
] def
/BASE{
newpath
TableauxPoints 0 get aload pop moveto
0 1 359 {
/compteur exch def
TableauxPoints compteur get aload pop
lineto } for
closepath} def
gsave
BASE
H_S 1 sethsbcolor
fill
grestore
gsave
BASE
0 setgray stroke
grestore
} if
}\showpointsfalse
\end@ClosedObj
}}\makeatother

—
Syracuse — Dernière modification : 18 août 2006 (0.07s - 3949728 - 9 janvier 2009)