Fichier essai_08.jps — Modifié le 20 Février 2008 à 14 h 02

essai_08.pdf
Source
%% d'apres les donnees de
%% http://www.mathcurve.com/courbes3d/spiraleconic/pappus.shtml

-1 1 setxrange
-1 1 setyrange
200 setxunit

30.01 30 30 SetCamPos
0 0 0 SetCamView
/ScreenDist .3 def

-10 10 setxrange3d
-3 3 setyrange3d
2 setlinejoin

/a 1.2 def
/b 7  def

/g {
3 dict begin
   settvar
#rpn# a*Sin(b*t)*Cos(t)
#rpn# a*Sin(b*t)*Sin(t)
#rpn# a*Cos(b*t)
end
} def

/g' {
3 dict begin
   settvar
#rpn# a*b*Cos(b*t)*Cos(t) - a*Sin(b*t)*Sin(t)
#rpn# a*b*Cos(b*t)*Sin(t) + a*Sin(b*t)*Cos(t)
#rpn# -a*b*Sin(b*t)
end
} def

/g'' {
3 dict begin
   settvar
#rpn# -a*b^2*Sin(b*t)*Cos(t) - a*b*Cos(b*t)*Sin(t) - a*b*Cos(b*t)*Sin(t) - a*Sin(b*t)*Cos(t)
#rpn# -a*b^2*Sin(b*t)*Sin(t) + a*b*Cos(b*t)*Cos(t) + a*b*Cos(b*t)*Cos(t) - a*Sin(b*t)*Sin(t)
#rpn# -a*b*Sin(b*t)
end
} def

%% 600 setresolution
%% %rouge
%% 0 pi 1 div {g} CourbeR3
%% stop

.1 setlinewidth
/aretescachees false def

GetCamPos setlightsrc
%solidgridOff

0 1 pi mul (g) .05 [605 6] newtube
%dup (rouge) outputcolors
dup [0 .1] solidputhuecolors
%dup videsolid

drawsolid**