%%% @mffile{ %%% filename="capfon.mf", %%% version="", %%% date="", %%% filetype="mf fontcreator", %%% package="m-capbas.arj" %%% author="Phons Bloemen (PhB)", %%% address="Eindhoven U. of Technology, %%% Fac. of Electrical Engineering, %%% P. O. Box 513, NL-5600 MB Eindhoven %%% email="Internet: phons@ei.ele.tue.nl", %%% codetable="ISO/ASCII", %%% checksumtype="none", %%% checksum="0", %%% keywords="", %%% abstract=" %%% Input file defining the glyphs for Capital Baseball. %%% The font is drawn onto a fixed 'grid' of points. By %%% deformation of this 'square' grid special effects can %%% be achieved. %%% Part of Capital Baseball package" %%% copyright="Copyleft (L) Phons Bloemen (PhB), %%% according to GNU public licence version 2 or later. %%% (1) Do not change this file (even its name) %%% (2) if you do make changes, first rename it to some %%% other name, and mark your changes clearly.", %%% } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% def dummy = enddef; def corner (suffix $) = if roundcapbas : (z$a - z$) = dir(angle(z$ - z0)) scaled td * scaw * h * revcap; (z$c - z$) = dir(angle(z0 - z$)) scaled td * scaw * h * revcap; z$b = z$ rotatedaround (z0,te * scaw * revcap); z$d = z$ rotatedaround (z0,-te * scaw * revcap); else: z$a = z$ + (0,tf * revcap); z$c = z$ - (0,tf * revcap); z$b = z$ - (tf * revcap,0); z$d = z$ + (tf * revcap,0); fi enddef; def arcus(suffix i,j) = if roundcapbas : (z.i .. z.i rotatedaround (z0,(angle(z.j-z0)-angle(z.i-z0))/3) .. z.j rotatedaround (z0,(angle(z.i-z0)-angle(z.j-z0))/3) .. z.j) else : (z.i -- z.j) fi enddef; def rcapbasgrid(suffix $)(expr hi,ma) = revcap := 1; for k = 1,3,4,5,6,7,8,9,11 : sca := 1 + ((k-6)*hi/10)/(length(z$ - z0)); z$j[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*4); z$a[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*3); z$b[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*2); z$c[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*1); z$d[k] = z0 + ((z$ - z0) scaled sca) rotated (0); z$e[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma); z$f[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*2); z$g[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*3); z$h[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*4); endfor; labels($); enddef; def capbasrevgrid(suffix $)(expr hi,ma) = revcap := -1; for k = 1,3,4,5,6,7,8,9,11 : sca := 1 - ((k-6)*hi/10)/(length(z$ - z0)); z$j[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*4); z$a[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*3); z$b[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*2); z$c[k] = z0 + ((z$ - z0) scaled sca) rotated (-ma*1); z$d[k] = z0 + ((z$ - z0) scaled sca) rotated (0); z$e[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*1); z$f[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*2); z$g[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*3); z$h[k] = z0 + ((z$ - z0) scaled sca) rotated (ma*4); endfor; labels($); enddef; def scapbasgrid(suffix $)(expr hi,ma) = revcap := 1; for k = 1,3,4,5,6,7,8,9,11 : z$j[k] = z0 + (-ma*2,(k-6)*hi/10); z$a[k] = z0 + (-ma*3/2,(k-6)*hi/10); z$b[k] = z0 + (-ma,(k-6)*hi/10); z$c[k] = z0 + (-ma/2,(k-6)*hi/10); z$d[k] = z0 + (0,(k-6)*hi/10); z$e[k] = z0 + (ma/2,(k-6)*hi/10); z$f[k] = z0 + (ma,(k-6)*hi/10); z$g[k] = z0 + (ma*3/2,(k-6)*hi/10); z$h[k] = z0 + (ma*2,(k-6)*hi/10); endfor; labels($); enddef; def gencha(suffix $) = corner($a11);corner($g11); fill(z$a11c -- arcus($a11d,$g11b) -- z$g11c -- arcus($g9,$a9) -- cycle); fill(arcus($c9,$a9) -- arcus($a1,$c1) -- cycle); fill(arcus($g9,$e9) -- arcus($e1,$g1) -- cycle); fill(arcus($c7,$e7) -- arcus($e5,$c5) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchb(suffix $) = corner($g11); corner($g6); corner($g1); fill(arcus($a11,$g11b) -- z$g11c -- z$g6a -- z$g6b -- z$g6c -- z$g1a -- arcus($g1b,$a1) -- cycle); unfill(arcus($c9,$e9) -- arcus($e7,$c7) -- cycle); unfill(arcus($c5,$e5) -- arcus($e3,$c3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchd(suffix $) = corner($g11);corner($g1); fill(arcus($a11,$g11b) -- z$g11c -- z$g1a -- arcus($g1b,$a1) -- cycle); unfill(arcus($c9,$e9) -- arcus($e3,$c3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchc(suffix $) = corner($g11);corner($g1);corner($a1);corner($a11) fill(arcus($a11d,$g11b) -- z$g11c -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- z$a11c -- cycle); unfill(arcus($c9,$e9) -- arcus($e3,$c3) -- cycle); unfill(arcus($e8,$g8) -- arcus($g4,$e4) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genche(suffix $) = fill(arcus($a11,$c11) -- arcus($c1,$a1) -- cycle ); fill(arcus($c11,$g11) -- arcus($g9,$c9) -- cycle ); fill(arcus($c7,$g7) -- arcus($g5,$c5) -- cycle ); fill(arcus($c3,$g3) -- arcus($g1,$c1) -- cycle ); cull currentpicture keeping (1,infinity); enddef;; def genchf(suffix $) = fill(arcus($a11,$c11) -- arcus($c1,$a1) -- cycle ); fill(arcus($c11,$g11) -- arcus($g9,$c9) -- cycle ); fill(arcus($c7,$g7) -- arcus($g5,$c5) -- cycle ); cull currentpicture keeping (1,infinity); enddef;; def genchg(suffix $) = corner($g11);corner($g1);corner($g6);corner($a11);corner($a1); fill(arcus($a11d,$g11b) -- z$g11c -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- z$a11c -- cycle); unfill(arcus($c9,$e9) -- arcus($e3,$c3) -- cycle); unfill(arcus($e8,$g8) -- z$g6c -- arcus($g6b,$e6) -- cycle); fill(arcus($d6,$e6) -- arcus($e4,$d4) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchh(suffix $) = fill(arcus($a11,$c11) -- arcus($c1,$a1) -- cycle); fill(arcus($e11,$g11) -- arcus($g1,$e1) -- cycle); fill(arcus($c7,$e7) -- arcus($e5,$c5) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchi(suffix $) = fill(arcus($c11,$e11) -- arcus($e1,$c1) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchj(suffix $) = corner($g1);corner($a1); fill(arcus($a3,$g3) -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- cycle); fill(arcus($c4,$a4) -- arcus($a3,$c3) -- cycle); fill(arcus($g11,$e11) -- arcus($e3,$g3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchij(suffix $) = corner($g1);corner($a1); fill(arcus($a3,$g3) -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- cycle); fill(arcus($c4,$a4) -- arcus($a3,$c3) -- cycle); fill(arcus($g11,$e11) -- arcus($e3,$g3) -- cycle); fill(arcus($a11,$c11) -- arcus($c7,$a7) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchk(suffix $) = corner($e6);corner($g8);corner($g4); fill(arcus($e11,$g11) -- z$g8c -- z$e6 -- z$g4a -- arcus($g1,$e1) -- z$e4 -- arcus($d5,$c5) -- arcus($c7,$d7) -- z$e8 -- cycle); fill(arcus($a11,$c11) -- arcus($c1,$a1) -- cycle ); cull currentpicture keeping (1,infinity); enddef;; def genchl(suffix $) = fill(arcus($a11,$c11) -- arcus($c3,$g3) -- arcus($g1,$a1) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchm(suffix $) = fill(arcus($j11,$b11) -- z$d8 -- z$d5 -- z$b8 -- arcus($b1,$j1) -- cycle); fill(arcus($f11,$h11) -- arcus($h1,$f1) -- z$f8 -- z$d5 -- z$d8 -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchn(suffix $) = fill(arcus($a11,$c11) -- arcus($c1,$a1) -- cycle); fill(arcus($e11,$g11) -- arcus($g1,$e1) -- cycle); fill(z$c11 -- z$e6 -- z$e1 -- z$c6 -- cycle); cull currentpicture keeping (1,infinity); enddef;; def gencho(suffix $) = corner($g11);corner($g1);corner($a1);corner($a11); fill(arcus($a11d,$g11b) -- z$g11c -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- z$a11c -- cycle); unfill(arcus($c9,$e9) -- arcus($e3,$c3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchq(suffix $) = corner($g11);corner($g1);corner($a1);corner($a11); corner($e1);corner($g3); fill(arcus($a11d,$g11b) -- z$g11c -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- z$a11c -- cycle); unfill(arcus($c9,$e9) -- z$e4 -- arcus($d3,$c3) -- cycle); unfill(arcus($e1d,$e1b) -- z$e1a -- cycle); unfill(z$g3a -- z$g3b -- z$g3c -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchp(suffix $) = corner($g11);corner($g5); fill(arcus($a11,$g11b) -- z$g11c -- z$g5a -- arcus($g5b,$a5) -- cycle); unfill(arcus($c9,$e9) -- arcus($e7,$c7) -- cycle); fill(arcus($a1,$c1) -- arcus($c6,$a6) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchr(suffix $) = corner($g11);corner($g6);corner($e5); fill(arcus($a11,$g11b) -- z$g11c -- z$g6a -- z$g6b -- z$g6c -- arcus($g1,$a1) -- cycle); unfill(arcus($c9,$e9) -- arcus($e7,$c7) -- cycle); unfill(arcus($c5,$e5b) -- z$e5c -- arcus($e1,$c1) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchs(suffix $) = corner($g11);corner($a11);corner($g1);corner($a1);corner($g7); corner($a5); fill(arcus($a11d,$g11b) -- z$g11c -- arcus($g9,$a9) -- z$a11c -- cycle); fill(arcus($a7,$g7b) -- z$g7c -- arcus($g5,$a5d) -- z$a5a -- cycle); fill(arcus($a3,$g3) -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- cycle); fill(arcus($c4,$a4) -- arcus($a3,$c3) -- cycle); fill(arcus($c9,$a9) -- arcus($a6,$c6) -- cycle); fill(arcus($g6,$e6) -- arcus($e3,$g3) -- cycle); fill(arcus($g9,$e9) -- arcus($e8,$g8) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def gencht(suffix $) = z$e10 = (z$e11+z$e9)/2; z$c10 = (z$c11+z$c9)/2; fill(arcus($e10,$c10) -- arcus($c1,$e1) -- cycle); fill(arcus($a11,$g11) -- arcus($g9,$a9) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchu(suffix $) = corner($g11);corner($g1);corner($a1);corner($a11); fill(arcus($a11,$g11) -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- z$a11c -- cycle); unfill(arcus($c11,$e11) -- arcus($e3,$c3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchv(suffix $) = fill(arcus($a11,$c11) -- arcus($c6,$a6) -- cycle); fill(arcus($e11,$g11) -- arcus($g6,$e6) -- cycle); fill(z$d1 -- arcus($g6,$e6) -- z$d4 -- arcus($c6,$a6) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchw(suffix $) = fill(arcus($j11,$b11) -- z$c4 -- z$d6 -- z$d3 -- z$b1 -- cycle); fill(arcus($f11,$h11) -- z$f1 -- z$d3 -- z$d6 -- z$e4 -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchx(suffix $) = corner($a7);corner($a5);corner($g5);corner($b6);corner($f6); corner($g7);corner($e9);corner($e3);corner($c9);corner($c3); fill(arcus($a11,$c11) -- z$c9c -- z$d7 -- z$d6 -- z$b6d -- z$a7 -- cycle); fill(arcus($e11,$g11) -- z$g7 -- z$f6b -- z$d6 -- z$d7 -- z$e9c -- cycle); fill(arcus($a1,$c1) -- z$c3a -- z$d5 -- z$d6 -- z$b6d -- z$a5 -- cycle); fill(arcus($e1,$g1) -- z$g5 -- z$f6b -- z$d6 -- z$d5 -- z$e3a -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchy(suffix $) = corner($a7);corner($g7);corner($e9);corner($c9); fill(arcus($a11,$c11) -- z$c5 -- z$a7a -- cycle); fill(arcus($e11,$g11) -- z$g7a -- z$e5 -- cycle); fill(z$c9c -- z$d7 -- z$e9c -- arcus($e1,$c1) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchz(suffix $) = fill(arcus($a11,$g11) -- arcus($g9,$a9) -- cycle); fill(arcus($a3,$g3) -- arcus($g1,$a1) -- cycle); fill(arcus($a3,$c3) -- z$g8 -- arcus($g9,$e9) -- z$a4 -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchone(suffix $) = fill(arcus($c3,$e3) -- arcus($e11,$c11) -- cycle); fill(z$c11 -- z$b9 -- z$b7 -- z$c9 -- cycle); fill(arcus($b1,$f1) -- arcus($f3,$b3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchtwo(suffix $) = corner($a11);corner($g11); fill(arcus($a11d,$g11b) -- z$g11c -- arcus($g9,$a9) -- z$a11c -- cycle); fill(arcus($a8,$c8) -- arcus($c9,$a9) -- cycle); fill(arcus($a3,$g3) -- arcus($g1,$a1) -- cycle); fill(arcus($a3,$c3) -- z$g7 -- arcus($g9,$e9) -- z$e8 -- z$a4 -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchthr(suffix $) = corner($a11);corner($g11);corner($a1);corner($g1);corner($g6); fill(arcus($a11d,$g11b) -- z$g11c -- arcus($g9,$a9) -- z$a11c -- cycle); fill(arcus($a1d,$g1b) -- z$g1a -- arcus($g3,$a3) -- z$a1a -- cycle); fill(arcus($a8,$c8) -- arcus($c9,$a9) -- cycle); fill(arcus($a4,$c4) -- arcus($c3,$a3) -- cycle); fill(arcus($g9,$e9) -- arcus($e7,$c7) -- arcus($c5,$e5) -- arcus($e3,$g3) -- z$g6c -- z$g6b -- z$g6a -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchfou(suffix $) = corner($c5);corner($d9); fill(arcus($d11,$f11) -- arcus($f1,$d1) -- cycle); fill(arcus($a5,$g5) -- arcus($g3,$a3) -- cycle); fill(arcus($a5,$c5) -- z$d9c -- z$d11 -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchfiv(suffix $) = z$e2 = (z$e1+3z$e3)/4; z$g2 = (z$g1+3z$g3)/4; z$a10 = (z$a11+z$a9)/2; z$c10 = (z$c11+z$c9)/2; corner($g1);corner($a1);corner($g7); fill(arcus($a11,$g11) -- arcus($g9,$a9) -- cycle); fill(arcus($a5,$g5) -- z$g7c -- arcus($g7b,$c7) -- arcus($c10,$a10) -- cycle); fill(arcus($a1d,$g1b) -- z$g1a -- arcus($g3,$c3) -- arcus($c4,$a4) -- z$a1a -- cycle); fill(arcus($e6,$g6) -- arcus($g2,$e2) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchsev(suffix $) = corner($c5);corner($e9); fill(arcus($a11,$g11) -- arcus($g9,$a9) -- cycle); fill(arcus($c1,$e1) -- z$e5 -- arcus($g9,$e9) -- z$c5a -- cycle); cull currentpicture keeping (1,infinity); enddef;; def gencheig(suffix $) = corner($g11); corner($g6); corner($g1); corner($a6);corner($a1); corner($a11); fill(arcus($a11d,$g11b) -- z$g11c -- z$g6a -- z$g6b -- z$g6c -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- z$a6c -- z$a6d -- z$a6a -- z$a11c -- cycle); unfill(arcus($c9,$e9) -- arcus($e7,$c7) -- cycle); unfill(arcus($c5,$e5) -- arcus($e3,$c3) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchsix(suffix $) = corner($g11);corner($a11);corner($g1);corner($a1);corner($g7); corner($a5); z$a2 = (z$a1+3z$a3)/4; z$c2 = (z$c1+3z$c3)/4; z$e2 = (z$e1+3z$e3)/4; z$g2 = (z$g1+3z$g3)/4; z$a10 = (z$a11+3z$a9)/4; z$c10 = (z$c11+3z$c9)/4; z$e10 = (z$e11+3z$e9)/4; z$g10 = (z$g11+3z$g9)/4; fill(arcus($a11d,$g11b) -- z$g11c -- arcus($g9,$a9) -- z$a11c -- cycle); fill(arcus($a7,$g7b) -- z$g7c -- arcus($g5,$a5) -- cycle); fill(arcus($a3,$g3) -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- cycle); fill(arcus($c10,$a10) -- arcus($a2,$c2) -- cycle); fill(arcus($g6,$e6) -- arcus($e2,$g2) -- cycle); fill(arcus($g10,$e10) -- arcus($e8,$g8) -- cycle); cull currentpicture keeping (1,infinity); enddef;; def genchnin(suffix $) = corner($g11);corner($a11);corner($g1);corner($a1);corner($g7); corner($a5); z$a2 = (z$a1+3z$a3)/4; z$c2 = (z$c1+3z$c3)/4; z$e2 = (z$e1+3z$e3)/4; z$g2 = (z$g1+3z$g3)/4; z$a10 = (z$a11+3z$a9)/4; z$c10 = (z$c11+3z$c9)/4; z$e10 = (z$e11+3z$e9)/4; z$g10 = (z$g11+3z$g9)/4; fill(arcus($a11d,$g11b) -- z$g11c -- arcus($g9,$a9) -- z$a11c -- cycle); fill(arcus($a7,$g7) -- arcus($g5,$a5d) -- z$a5a -- cycle); fill(arcus($a3,$g3) -- z$g1a -- arcus($g1b,$a1d) -- z$a1a -- cycle); fill(arcus($c4,$a4) -- arcus($a2,$c2) -- cycle); fill(arcus($c10,$a10) -- arcus($a6,$c6) -- cycle); fill(arcus($g10,$e10) -- arcus($e2,$g2) -- cycle); cull currentpicture keeping (1,infinity); enddef;;