prologues := 1; input boxes; defaultfont:="phvr8r"; path unitcircle; unitcircle := fullcircle scaled 2; pen epen; epen := pencircle scaled .05pt; vardef eye = save p; picture p; p := nullpicture; addto p doublepath unitcircle withpen epen;; addto p doublepath unitcircle xscaled .2 yscaled .5 shifted (-.8, 0) withpen epen; addto p contour unitcircle xscaled .1 yscaled .25 shifted (-.9, 0); p enddef; def basic = addto currentpicture also eye scaled 20; yoffs := -50; boxit.fex("Feature extraction" infont defaultfont); boxit.fv("Feature vector" infont defaultfont); boxit.ma("Matcher" infont defaultfont); picture p; p := "Memorized textures" infont defaultfont; pair v; v := (urcorner(p) - ulcorner(p)); for i = 0 upto 7: addto p doublepath fullcircle scaled (abs(v)/8.0) shifted ((i/7.0)*v + (0,17)) withpen pencircle scaled .5pt; endfor; boxit.mem(p); xpart(mem.c) = xpart(fex.c) = xpart(fv.c) = 0; ypart(fex.c) = yoffs; ypart(fv.c) = 2 * yoffs; ypart(mem.c) = 3.3 * yoffs; fv.w-fv.e = fex.w-fex.e; fixpos(fex, fv, mem); fixsize(fex, fv, mem); xpart(ma.c) = 70; ypart(ma.c) = .5[ypart(fv.s), ypart(mem.n)]; show fv.s; show mem.n; show ma.c; drawboxed(fex, fv, ma); drawunboxed(mem); enddef; beginfig(1); basic; endfig; end