1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
%%
%% This is file `unidig.mf',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% uni.dtx (with options: `dig')
%%
%% Copyright (C) 1998 Christian Holm.
%%
%% The universal font and package is distributed in the hope that
%% it will be useful, but WITHOUT ANY WARRANTY; without even the
%% implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
%% PURPOSE. See the GNU General Public License for more details.
%%
%% See the file uni.dtx for further comments and documentation.
%%
beginchar("0",A_w#,l_h#,0) ; "The number 0" ;
uniarc(w/2,p_t,(w/2,h-w/2),0,180,10) ;
uniarc(w/2,p_t,(w/2,w/2),180,360,20) ;
pickup unipensqu ;
top lft z1 = (0,h-w/2) ; bot lft z2 = (0,w/2) ; draw z1--z2 ;
top rt z3 = (w,h-w/2) ; bot rt z4 = (w,w/2) ; draw z3--z4 ;
penlabels(1,2,3,4) ;
endchar;
beginchar("1",2c_d#,l_h#,0) ; "The number 1" ;
uniend(p_t,(w-p_t,h-p_t),0,90,10) ;
pickup unipensqu ;
lft top z1 = (0,h) ; rt top z2 = (w-p_t,h) ; draw z1--z2 ;
rt top z3 = (w,h-p_t) ; rt bot z4 = (w,0) ; draw z3--z4 ;
penlabels(1,2,3,4) ;
endchar;
beginchar("2",A_w#,l_h#,0) ; "The number 2" ;
uniarc(w/2,p_t,(w/2,h-w/2),0,180,10) ;
phi := angle((w,h-w/2)-(0,p_t)) ;
z1 = (w-p_t,h-w/2) ; z2 = z1 + p_t*(sind(phi),-cosd(phi)) ;
z3 = (p_t,p_t) ; z4 = z3 + p_t*(-sind(phi),cosd(phi)) ;
fill z1--z2--z3--z4--cycle ;
uniend(p_t,z1,270+phi,360,20) ;
uniend(p_t,z3,90+phi,270,30) ;
pickup unipensqu ;
bot lft z5 = (p_t,0) ; bot rt z6 = (w,0) ; draw z5--z6 ;
penlabels(range 1 thru 6) ;
endchar;
beginchar("3",A_w#,l_h#,0) ; "The number 3" ;
path arc_a, arc_b ;
arc_a = (w,h-w/2)..(w/2,h-w) ; arc_b = (w,w/2)..(w/2,w) ;
z3 = arc_a intersectionpoint arc_b ; phi := angle(z3-(w/2,w/2)) ;
uniarc(w/2,p_t,(w/2,h-w/2),-phi,180,10) ;
uniarc(w/2,p_t,(w/2,w/2),-180,phi,20) ;
pickup unipensqu ;
rt z1 = (w/2*(1+cosd(phi)),h/2) ; lft z2 = (w/2,h/2) ; draw z1--z2 ;
penlabels(1,2) ;
endchar;
beginchar("4",A_w#,l_h#,0) ; "The number 4" ;
z1 = (w-p_t,h-p_t) ; z2 = z1 + p_t*(-1/sqrt(2),1/sqrt(2)) ;
z3 = (p_t,h-w+p_t) ; z4 = z3 + p_t*(-1/sqrt(2),1/sqrt(2)) ;
fill z1--z2--z4--z3--cycle ;
uniend(p_t,z1,0,135,10) ;
uniend(p_t,z3,135,270,20) ;
pickup unipensqu ;
top rt z5 = (w,h-p_t) ; bot rt z6 = (w,0) ; draw z5--z6 ;
bot lft z7 = (p_t,h-w) ; bot rt z8 = (w,h-w) ; draw z7--z8 ;
penlabels(range 1 thru 8) ;
endchar;
beginchar("5",A_w#,l_h#,0) ; "The number 5" ;
rad := 9w/20 ;
uniarc(rad,p_t,(w-rad,rad),-150,90,10) ;
uniend(p_t,(p_t,h-p_t),90,180,20) ;
uniend(p_t,(p_t,2rad),180,270,30) ;
pickup unipensqu ;
top lft z1 = (p_t,2rad) ; top rt z2 = (w-rad,2rad) ; draw z1--z2 ;
bot lft z3 = (0,2rad) ; top lft z4 = (0,h-p_t) ; draw z3--z4 ;
top lft z5 = (p_t,h) ; top rt z6 = (w,h) ; draw z5--z6 ;
penlabels(range 1 thru 6) ;
endchar;
beginchar("6",A_w#,l_h#,0) ; "The number 6" ;
unicir(w/2,p_t,(w/2,w/2),10) ;
uniarc(w/2,p_t,(w/2,h-w/2),60,180,20) ;
pickup unipensqu ;
top lft z1 = (0,h-w/2) ; bot lft z2 = (0,w/2) ; draw z1--z2 ;
penlabels(1,2) ;
endchar;
beginchar("7",A_w#,l_h#,0) ; "The number 7" ;
z1 = (w-p_t,h-p_t) ; phi := angle(z1) ;
uniend(p_t,z1,-90+phi,90,10) ;
z2 = z1 + p_t*(cosd(90-phi),-sind(90-phi)) ;
z3 = (p_t/cosd(90-phi),0) ; z4 = (0,0) ;
fill z1--z2--z3--z4--cycle ;
pickup unipensqu ;
top lft z5 = (0,h) ; top rt z6 = (w-p_t,h) ; draw z5--z6 ;
penlabels(range 1 thru 6) ;
endchar;
beginchar("8",1/2*(l_h#+p_t#),l_h#,0) ; "The number 8" ;
unicir(w/2,p_t,(w/2,w/2),10) ;
unicir(w/2,p_t,(w/2,h-w/2),20) ;
endchar;
beginchar("9",A_w#,l_h#,0) ; "The number 9" ;
unicir(w/2,p_t,(w/2,h-w/2),10) ;
uniarc(w/2,p_t,(w/2,w/2),-150,0,20) ;
pickup unipensqu ;
top rt z1 = (w,h-w/2) ; bot rt z2 = (w,w/2) ; draw z1--z2 ;
penlabels(1,2) ;
endchar;
\endinput
%%
%% End of file `unidig.mf'.
|