Fichier spirale_03.jps — Modifié le 15 Février 2008 à 20 h 58

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

-1 1 setxrange
-1 1 setyrange
200 setxunit

0.01 0 30 SetCamPos
0 0 0 SetCamView
/ScreenDist .02 def

-10 10 setxrange3d
-3 3 setyrange3d
2 setlinejoin

/a .5 def
/b pi 3 div  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*Sin(b)*Cos(t) - a*Sin(b)*t*Sin(t)
#rpn# a*Sin(b)*Sin(t)+ a*Sin(b)*t*Cos(t)
#rpn# a*Cos(b)
end
} def

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


%rouge
0 pi 6 mul {g} CourbeR3
%stop

.1 setlinewidth
/aretescachees false def

GetCamPos setlightsrc
%solidgridOff

-8 pi mul 8 pi mul (g) .5 [600 6] newtube
%dup (rouge) outputcolors
dup [.1 .3] solidputhuecolors
%dup videsolid

drawsolid**