%%%%%%% les parametres %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
/N 751 def %% nombre de sommets du polygone
/k 2 def %% multiplication modulaire par k
/l 1.5 def %% facteur d'agrandissement pour le segment
/echelle 2 def %% echelle pour la fenetre de dessin
%% echelle = .5 ==> fenetre de 2 xmin a 2 xmax
.01 setlinewidth %% epaisseur du trait
/avec_legende true def %% switch pour la legende (true ou false)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
echelle dup scale
-15 15 setxrange
-15 15 setyrange
%% on genere un polygone regulier a N sommets
/les_points O 5.5 N 0 genpolyreg def
/fillstyle {jaune fill} def
O 5 cercle*
%% on relie le point d'indice i au point d'indice k*i (mod N)
/i 0 def
N {
les_points i getp
les_points i k mul N mod getp
l trait %% ici les traits depassent du segment (de 50%)
/i i 1 add store
} repeat
%%%%%%% la legende
/fontsize 12 echelle div def
/str 20 string def
/legende {
setTimesItalic
( n) xmin echelle div ymin echelle div rtext
setTimes
( = ) show
N str cvs show
setTimesItalic
(k) 0 ymin echelle div text
setTimes
( = ) show
k str cvs show
setTimesItalic
(l) xmax xmin sub .8 mul xmin add echelle div ymin echelle div text
setTimes
( = ) show
l str cvs show
} def
avec_legende {legende} if
|