Les sources de Syracuse arrow.pps

%% /arrowpointe 12.5 def
%% /arrowplume 2.5 def 
%% /arrow@ngle 60 def        
%% /arrowscale {1 1} def
%% /arrowangle 0 def     %% pour l'utilisateur
%% 
%% /arrow {
%%    gsave
%%    arrowscale scale
%%    arrowangle rotate
%%    newpath 
%%    0 0 moveto 
%%    arrowpointe neg 0 rmoveto	%% ainsi c'est la pointe qui est en (0, 0)
%%    %% le pt extremal arriere haut
%% 	 arrowplume neg		%% l'abscisse
%% 	 arrow@ngle sin arrow@ngle cos div arrowplume mul %% l'ordonnee
%%    rlineto
%% 	 arrowplume arrowpointe add
%% 	 arrow@ngle sin arrow@ngle cos div arrowplume mul neg
%%    rlineto 
%% 	 arrowplume arrowpointe add neg
%% 	 arrow@ngle sin arrow@ngle cos div arrowplume mul neg
%%    rlineto
%%    closepath fill
%%    grestore
%% } def


/arrowlength 15 def
/arrowsize 8.5 def 
/arrowinset 2.5 def 
/arrowscale {1 1} def
/arrowangle 0 def     %% pour l'utilisateur

/arrow {
   gsave
   arrowscale scale
   arrowangle rotate
   newpath 
      0 0 moveto 
      arrowlength neg arrowsize 2 div rlineto
      arrowinset arrowsize 2 div neg rlineto
      arrowinset neg arrowsize 2 div neg rlineto
   closepath fill
   stroke
   grestore
} def

%/ahalpha 35 def
/ahlength 7 def

%% %% syntaxe : C B A Arrow --> fleche d'extremite A
%% /Arrow {
%% 8 dict begin
%%    /A defpoint
%%    /B defpoint
%%    /C defpoint
%%    /alpha ahalpha 2 div def
%%    C A alpha rotatepoint /C0 defpoint
%%    B A alpha rotatepoint /B0 defpoint
%%    C A alpha neg rotatepoint /C1 defpoint
%%    B A alpha neg rotatepoint /B1 defpoint
%%    C C0 C1 axesympoint /C2 defpoint
%%    newpath
%% 	 C0 smoveto
%% 	 [C0 .. B0 .. A] draw_
%% 	 [A .. B1 .. C1] draw_
%% 	 C2 C C2 vecteur addv slineto
%%    closepath
%% 	 gsave fill grestore
%%    stroke
%% end
%% } def


Page composée par petitParseur[ps2html] le samedi 30 août 2008.