diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 23:38:21 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 23:38:21 +0000 |
commit | 215012a8d684889983ec2c0629e1c704e6853d9c (patch) | |
tree | ebf1271bd71869069824935ae8a5678745bf8bce /Master/texmf-dist/fonts/source/public/clock/clock.mf | |
parent | 1af3d19d6dbcbf309667d9cb4aa3cdda914914a9 (diff) |
trunk/Master/texmf-dist/fonts/source
git-svn-id: svn://tug.org/texlive/trunk@101 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/clock/clock.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/clock/clock.mf | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/clock/clock.mf b/Master/texmf-dist/fonts/source/public/clock/clock.mf new file mode 100644 index 00000000000..5438012337a --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/clock/clock.mf @@ -0,0 +1,137 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% File: clock.mf +% Date: April 10, 2001 +% Author: Oliver Corff +% (c) 2001 Ulaanbaatar, Beijing, Berlin +% +% A metafont for providing the clock to LaTeX-users. +% +% Usage: see package clock +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% This font contains characters for hands and dials. %%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +mode_setup; + mg:=4/4; + thin#:=mg*1pt#; + width#:=mg*16pt#; + height#:=mg*12pt#; + depth#:=mg*4pt#; + margin#:=mg*1.05pt#; + + define_pixels(width,height,depth,thin,margin); + + font_size = 10pt#; + + font_x_height = 16pt#; + % font_quad = 16pt#; + font_normal_space = 0pt#; + font_extra_space = 0pt#; +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% All sorts of clock parts +% +def MinuteHand (expr minutes) = % Minutenzeiger + z1=(w/2,1/2(h-d)); + z2=(w/2,27/36h-margin); + pickup pencircle scaled 1/2thin; % rotated (-minutes*6); + draw (z1--z2) rotatedabout (z1,-minutes*6); +enddef; + +def HourHand (expr minutes) = % Stundenzeiger + z1=(w/2,1/2(h-d)); + z2=(w/2,24/36h-margin); + pickup pencircle scaled 9/16thin; % rotated (-minutes*6); + draw (z1--z2) rotatedabout (z1,-minutes*6); +enddef; + +def Hands (expr minutes) = % Beide Zeiger + % + beginchar(minutes+64,width#,height#,depth#); + MinuteHand(minutes); + endchar; + % + beginchar(minutes+128,width#,height#,depth#); + HourHand(minutes); + endchar; +enddef; + +def NESW = + % This routine places ticks at 12, 3, 6 and 9 o'clock + for l = 0,3,6,9: + top z5=(w/2,h-margin); + z7=(w/2,1/2(h-d)); + z6=6/36[z5,z7]; + draw (z5--z6) rotatedabout (z7,-l*30); + endfor; +enddef; + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% All sorts of dials +% +beginchar("0",width#,height#,depth#); + top z1=(0.5w,h-margin); % 12 Uhr + rt z2=(w-margin,0.5(h-d)); % 3 Uhr + bot z3=(x1,-d+margin); % 6 Uhr + lft z4=(0+margin,y2); % 9 Uhr + + pickup pencircle scaled 1/2thin; + draw z1...z2...z3...z4...cycle; +endchar; +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +beginchar("1",width#,height#,depth#); + % + % "Standard", or "Classical" dial + % with indications for every hour + % + pickup pencircle scaled 5/8thin; + NESW; + + pickup pencircle scaled 2/4thin; + for l = 1,2,4,5,7,8,10,11: + numeric x[]; + numeric y[]; + top z5=(w/2,h-margin); + z7=(w/2,1/2(h-d)); + z6=3/36[z5,z7]; + draw (z5--z6) rotatedabout (z7,-l*30); + endfor; +endchar; +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +beginchar("2",width#,height#,depth#); + % + % A rather minimalist dial, with + % just a dot marking each hour + % + pickup pencircle scaled 2/4thin; + for l = 0 step 1 until 11: + top z2=(w/2,h-margin-6/8thin); + z1=(w/2,1/2(h-d)); + drawdot(z2) rotatedabout (z1,-l*30); + endfor; +endchar; +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +beginchar("3",width#,height#,depth#); + % A radically minimalist dial + pickup pencircle scaled 5/8thin; + NESW; +endchar; +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% The true center of activity: +% create both hands at the same time +% +for minutes = 0 step 1 until 59: + Hands(minutes); +endfor; +end. + |