%% %% This is file `imajdig.mf', %% generated with the docstrip utility. %% %% The original source files were: %% %% inslrmaj.dtx (with options: `dig') %% %% Copyright 1999 Peter R. Wilson %% %% This program is provided under the terms of the %% LaTeX Project Public License distributed from CTAN %% archives in directory macros/latex/base/lppl.txt. %% %% Author: Peter Wilson (CUA) %% now at: peter.r.wilson@boeing.com %% cmchar "IMAJ digit 1"; beginchar("1", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); pcshiftx := sb; pickup quill; x1=x2=w/2; y1=h; bot y2=0; %%ductus:=true; if ductus: pickup stylus; fi draw_tstem(1,2,srad); draw_triserif(1,trijut); ductus:=false; penlabels(1,2,100); endchar; % end "1" cmchar "IMAJ digit 2"; beginchar("2", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); pcshiftx := sb; pickup quill; %% stem lft x1=pcshiftx+o; top y1=h-2thin; x2=1/2w; top y2= h+o; rt x3=w-pcshiftx-o; y3=3/4h; %% foot lft x5=pcshiftx; bot y5=0; rt x6=w-pcshiftx; y6=y5; %%ductus:=true; if ductus: pickup stylus; fi draw z1..z2{right}..z3{down}..{down}z5; % curve draw z5--z6; % foot draw_utriangle(6,thick); ductus:=false; penlabels(1,2,3,4,5,6,100); endchar; % end "2" cmchar "IMAJ digit 3"; beginchar("3", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); pcshiftx := sb; pickup quill; %% x values lft x3=pcshiftx; x10=x3; rt x5=w-pcshiftx; x8=x5-3thin; x4=0.5[x3,x5]; x9=0.5[x10,x8]; lft x6=pcshiftx+3thin; x7=x6; %% y values bot y3=thin; top y10=h-2thin; y6=0.5[y3,y10]; y7=y6; bot y4=-thin; top y9=h+thin; y5=0.5[y3,y6]; y8=11/12[y7,y10]; %%ductus:=true; if ductus: pickup stylus; fi draw z3..z4{right}..z5{up}...{-pdir}z6; % bottom bowl draw z7{pdir}...z8{up}..z9{left}..z10; % top bowl ductus:=false; penlabels(1,2,3,4,5,6,7,8,9,10,100); endchar; % end "3" cmchar "IMAJ digit 4"; beginchar("4", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); pcshiftx := sb; pickup quill; %% the stem x1=x2=w-pcshiftx-jut; y1=h; bot y2=0; %% the crossbar lft x3=pcshiftx; y3=0.33h; rt x4=w-pcshiftx; y4=y3; %% the diagonal lft x5=pcshiftx+jut; y5=h; x6=x5; y6=y4; %%ductus:=true; if ductus: pickup stylus; fi draw_tstem(1,2,srad); % main stem %%draw_clubbase(1, 2, 1/3, 0, clubjut); draw z3--z4; % crossbar draw z3{(1,1)}..{(1,1)}z1; % diagonal ductus:=false; penlabels(1,2,3,4,100); endchar; % end "4" cmchar "IMAJ digit 5"; beginchar("5", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); numeric n[]; pcshiftx := sb; pickup quill; %% for the top rt x1=w-pcshiftx; top y1=h; lft x2=pcshiftx; y2=y1; z2'=(lft x2, top y2); z2''=(rt x2, y2'); z0'=(x2', 0); z0''=(x2'', 0); %% bowl n1 := w-2pcshiftx+4/3thick; % width of bowl n2 := 2/3h; % height of bowl z3=(w-pcshiftx-n1, 0); obowl(3, n1, n2); z10o = (z2''--z0'') intersectionpoint subpath (3,4) of obouter; z10i = (z2'--z0') intersectionpoint subpath (3,4) of obinner; z10'=(x10i,y10o); z20o = (z2'--z0') intersectionpoint subpath (2,3) of obouter; z20i = (z2'--z0') intersectionpoint subpath (2,3) of obinner; %%ductus:=true; if ductus: pickup stylus; draw z2--z1; draw z2'--z0'; draw z2''--z0''; draw obouter; draw obinner; else: draw z2--z1; % top bar draw_triangle(1,thick); fill z2'--z10i--z10o--z2''--cycle; % stem fill z10o..z3minlo{pdir}..z3maxro{-ppdir}..z3minro{-pdir}..z20o-- z20i..z3minri{pdir}..z3maxri{ppdir}..z3minli{-pdir}..z10i-- z10'--cycle; fi ductus:=false; penlabels(1,2,3,4,5,6,7,100); endchar; % end "5" cmchar "IMAJ digit 6"; beginchar("6", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); numeric n[]; path pth[]; pcshiftx := sb; pickup quill; n1 := w-2pcshiftx; % width of character n2 := h; % height of character %% main bowl z3=(w-pcshiftx-n1,0); obowl(3, n1, n2); pth1 := obouter; pth2 := obinner; z0 = (0,0); z0'=(w,h); z10o' = (z0--z0') intersectionpoint subpath (0,1) of pth1; z10i' = (z0--z0') intersectionpoint subpath (0,1) of pth2; n0 := w-pcshiftx-x10o'; z10o=(x10o'+n0, y10o'); z10i=(x10i'+n0, y10i'); %% bottom bowl n3 := 16/12n2; % width n4 := 2/3n2; % height z13=(w-pcshiftx-n3, 0); obowl(13, n3, n4); pth11 := obouter; pth12 := obinner; z20o = subpath (2,4) of pth2 intersectionpoint (subpath (3,4) of pth11 & subpath (0,1) of pth11); z20i = subpath (2,4) of pth2 intersectionpoint (subpath (3,4) of pth12 & subpath (0,1) of pth12); %%ductus:=true; if ductus: pickup stylus; draw subpath (2,4) of pth2; draw (subpath (3,4) of pth11 & subpath (0,1) of pth11); draw (subpath (3,4) of pth12 & subpath (0,1) of pth12); else: fill z10o..z3minlo{-pdir}..z3maxlo{-ppdir}..z3minro{pdir}.. z13maxro{ppdir}..{-pdir}z20o--z20i{pdir}..z13maxri{-ppdir}.. z3minri{-pdir}..z3maxli{ppdir}..z3minli{pdir}..z10i-- cycle; fi ductus:=false; penlabels(1,2,3,4,5,6,8,100); endchar; % end "6" cmchar "IMAJ digit 7"; beginchar("7", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); pcshiftx := sb; pickup quill; %% top bar lft x1=pcshiftx; rt x2=w-pcshiftx; top y1=top y2=h; x8=pcshiftx+3/8jut; y8=h-0.5thin; %% bowed leg x4=w/2; bot y4=0; x3=0.5[x2,x4]-3thin; y3=0.5[y2,y4]; %%ductus:=true; if ductus: pickup stylus; fi draw z1--z2; % top bar draw_triangle(1,thick); draw z2..z3..z4; % leg ductus:=false; penlabels(1,2,3,4,5,6,7,8,100); endchar; % end "7" cmchar "IMAJ digit 8"; beginchar("8", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); pcshiftx := sb; numeric alpha; alpha:=1; pickup quill; lft x1=alpha*pcshiftx+o; rt x3=w-alpha*pcshiftx-o; y1=y3=3/4h; x2=x4=w/2; top y2=h+o; bot y4=-o; x5=x2; y5=h/2+2o; lft x11=pcshiftx; rt x13=w-pcshiftx; y11=y13=1/4h; %%ductus:=true; if ductus: pickup stylus; fi draw z1..z2..z3..z5..z11..z4..z13..z5..cycle; ductus:=false; penlabels(1,2,3,4,5,11,13,100); endchar; % end "8" cmchar "IMAJ digit 9"; beginchar("9", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); numeric n[]; path pth[]; pcshiftx := sb; pickup quill; n1 := w-2pcshiftx; % width of character n2 := h; % height of character %% main bowl z3=(w-pcshiftx-n1,0); obowl(3, n1, n2); pth1 := obouter; pth2 := obinner; z0=(0,0); z0'=(w,h); z20o' = (z0--z0') intersectionpoint subpath (2,3) of pth1; z20i' = (z0--z0') intersectionpoint subpath (2,3) of pth2; n0 := x20o'-pcshiftx; z20o=(x20o'-n0, y20o'); z20i=(x20i'-n0, y20i'); %% bottom bowl n3 := 16/12n2; % width n4 := 2/3n2; % height z13=(pcshiftx,h-n4); obowl(13, n3, n4); pth11 := obouter; pth12 := obinner; z10o = subpath (0,2) of pth2 intersectionpoint subpath (1,3) of pth11; z10i = subpath (0,2) of pth2 intersectionpoint subpath (1,3) of pth12; %%ductus:=true; if ductus: pickup stylus; draw subpath (0,2) of pth2; draw subpath (1,3) of pth11; draw subpath (1,3) of pth12; else: fill z20o..z3minro{pdir}..z3maxro{ppdir}..z3minlo{-pdir}.. z13maxlo{-ppdir}..{pdir}z10o--z10i{-pdir}..z13maxli{ppdir}.. z3minli{pdir}..z3maxri{-ppdir}..z3minri{-pdir}..z20i-- cycle; fi ductus:=false; penlabels(1,2,3,4,5,6,100); endchar; % end "9" cmchar "Uncial digit 0"; beginchar("0", 2sb#+fig_width#, fig_height#, 0); adjust_fit(0,0); numeric n[]; pcshiftx := sb; pickup quill; n1 := w-2pcshiftx; % bowl width n2 := h+2o; % bowl height z1=(pcshiftx,-o); obowl(1, n1, n2); %%ductus:=true; if ductus: pickup stylus; fi fill obouter; unfill obinner; ductus:=false; %%%proofpcbb(100, y100, y100); penlabels(1,2,3,4,100); endchar; % end "0"