%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% PhS %% %% échelle et étendue de l'image 60 setxunit -3.5 3.5 setxrange -3 4 setyrange %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% DANGER !! Il ne faut pas utiliser de variables %% DANGER !! qui commence par les lettres : %% DANGER !! xmin, xmax, ymin et ymax... %% DANGER !! Utiliser x_min, y_min... %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% procédures %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% procedure sphere_parallele /parallele_de_sphere { %% R (rayon) phi (lattitude deg) alpha (inclinaison deg) 6 dict begin /alpha exch def /phi exch def /R exch def /Xdet { 1 dict begin /t exch def R phi sin mul t cos mul end } def /Ydet { 1 dict begin /t exch def phi cos alpha cos mul phi sin alpha sin mul t sin mul sub R mul end } def 90 phi eq {/phi phi 1.001 mul def} if 1 alpha tan phi tan div lt {/tmax -90 def} { alpha tan phi tan div -1 lt {/tmax 90 def} {/tmax alpha tan phi tan div neg arcsin def} ifelse} ifelse gsave tmax dup neg 180 add settrange {Xdet} {Ydet} courbeparam grestore end } def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% définitions des couleurs %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /coul1 {120 255 div 70 255 div 9 255 div setrgbcolor} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% tracés %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% tracé des axes et du point Origine 1 setlinewidth 15 setfontsize noir continu traceaxes marks tracerepere rouge 0 0 3 cercle coul1 3 5 30 parallele_de_sphere 3 15 30 parallele_de_sphere 3 25 30 parallele_de_sphere 3 30 30 parallele_de_sphere 3 40 30 parallele_de_sphere 3 50 30 parallele_de_sphere 3 60 30 parallele_de_sphere 3 70 30 parallele_de_sphere 3 80 30 parallele_de_sphere 3 90 30 parallele_de_sphere 3 100 30 parallele_de_sphere 3 110 30 parallele_de_sphere 3 140 30 parallele_de_sphere 3 155 30 parallele_de_sphere 3 165 30 parallele_de_sphere 3 175 30 parallele_de_sphere