%! /a [ 1 0 ] def /b [ 0.5 3 sqrt 2 div ] def /N 20 def /S 72 def S dup scale 1 S div setlinewidth 4 4 translate newpath N neg 1 N { /i exch def N neg 1 N { /j exch def a 0 get i mul b 0 get j mul add a 1 get i mul b 1 get j mul add 2 copy moveto % without the moveto, arc adds in a line from one disk to another 0.1 0 360 arc } for } for fill