/hatszogoldal                                    % hatszögoldal deklarálása
{ 100 0 lineto
  currentpoint translate
  60 rotate } def                                % 60 fokos forgatás
/otszogoldal                                       % ötszögoldal deklarálása
{ 100 0 lineto
  currentpoint translate
  72 rotate } def                                % forgatás 72 fokkal
/negyszogoldal
{ 100 0 lineto
  currentpoint translate
  90 rotate } def                                % forgatás 90 fokkal
/haromszogoldal
{ 100 0 lineto
  currentpoint translate
  120 rotate } def                                % forgatás 120 fokkal

newpath
100 200 moveto
currentpoint translate
6 {hatszogoldal} repeat                        % a hatszög kirajzolása ciklussal
250 0 moveto
currentpoint translate
5 {otszogoldal} repeat                         % az ötszög kirajzolása ciklussal
-250 200 moveto
currentpoint translate
4 {negyszogoldal} repeat                     % a négyszög kirajzolása ciklussal
250 0 moveto
currentpoint translate
3 {haromszogoldal} repeat                    % a háromszög kirajzolása ciklussal

closepath
gsave
 .5 setgray fill                                         % színbeállítás szürkére
grestore
stroke

showpage