%D \module %D [ file=mp-symb.mp, %D version=very old, %D title=\CONTEXT\ \METAPOST\ graphics, %D subtitle=navigation symbol macros, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D Instead of these symbols, you can use the \type {contnav} %D font by Taco Hoekwater that is derived form this file. u := 3; h := 5u; wt := 5u; wb := .25wt; o := .1u; pw := .5u; drawoptions (withpen pencircle scaled pw); path lefttriangle, righttriangle, sublefttriangle, subrighttriangle; pair s ; s = (2wb,0) ; x1t = x2t = 0; x3t = wt; y3t = .5h; z1t-z2t = (z3t-z2t) rotated 60; z4t = (z2t--z3t) intersectionpoint ((z1t--z2t) shifted s) ; z5t = (z3t--z1t) intersectionpoint ((z1t--z2t) shifted s) ; righttriangle = z1t--z2t--z3t--cycle; lefttriangle = righttriangle rotatedaround((0,.5h), 180) shifted (wt,0); subrighttriangle = z4t--((z2t--z3t--z1t) shifted s)--z5t ; sublefttriangle = subrighttriangle rotatedaround((0,.5h), 180) shifted (wt,0); path sidebar; x1b = x4b = 0; x2b = x3b = wb; y1b = y2b = y1t; y3b = y4b = y2t; sidebar = z1b--z2b--z3b--z4b--cycle; path midbar, onebar, twobar; hh = abs(y1t-y2t); %midbar := unitsquare scaled 2hh/3; midbar := unitsquare scaled hh; onebar := unitsquare xscaled (hh/3) yscaled hh; twobar := onebar; def prepareglyph = drawoptions (withpen pencircle scaled .5u); enddef; def finishglyph = set_outer_boundingbox currentpicture; bboxmargin := o; setbounds currentpicture to bbox currentpicture; % draw boundingbox currentpicture withcolor red withpen pencircle scaled 1; enddef; beginfig (1); prepareglyph; fill lefttriangle; draw lefttriangle; % draw gets the bbox right, filldraw doesn't finishglyph; endfig; beginfig (2); prepareglyph; fill righttriangle; draw righttriangle; finishglyph; endfig; beginfig (3); prepareglyph; fill sidebar; draw sidebar; fill lefttriangle shifted (.5s); draw lefttriangle shifted (.5s); finishglyph; endfig; beginfig (4); prepareglyph; fill righttriangle; draw righttriangle; fill sidebar shifted (wt,0); draw sidebar shifted (wt,0); finishglyph; endfig; beginfig (5); prepareglyph; fill lefttriangle; draw lefttriangle; fill lefttriangle shifted s; draw lefttriangle shifted s; finishglyph; endfig; beginfig (6); prepareglyph; fill righttriangle; draw righttriangle; fill righttriangle shifted s; draw righttriangle shifted s; finishglyph; endfig; beginfig (7); prepareglyph; fill midbar; draw midbar; finishglyph; endfig; beginfig (8); prepareglyph; fill onebar; draw onebar; finishglyph; endfig; beginfig (9); prepareglyph; fill twobar; draw twobar; fill twobar shifted (pw+hh/2,0); draw twobar shifted (pw+hh/2,0); finishglyph; endfig; beginfig(101); prepareglyph; draw lefttriangle; finishglyph; endfig; beginfig(102); prepareglyph; draw righttriangle; finishglyph; endfig; beginfig(103); prepareglyph; draw sidebar; draw lefttriangle shifted (.5s); finishglyph; endfig; beginfig(104); prepareglyph; draw righttriangle; draw sidebar shifted (wt,0); finishglyph; endfig; beginfig(105); prepareglyph; draw lefttriangle; draw lefttriangle shifted s; finishglyph; endfig; beginfig(106); prepareglyph; draw righttriangle; draw righttriangle shifted s; finishglyph; endfig; beginfig(107); prepareglyph; draw midbar; finishglyph; endfig; beginfig(108); prepareglyph; draw onebar; finishglyph; endfig; beginfig(109); prepareglyph; draw twobar; draw twobar shifted (pw+hh/2,0); finishglyph; endfig; beginfig(201); prepareglyph; draw lefttriangle; finishglyph; endfig; beginfig(202); prepareglyph; draw righttriangle; finishglyph; endfig; beginfig(203); prepareglyph; draw sidebar; draw lefttriangle shifted (.5s); finishglyph; endfig; beginfig(204); prepareglyph; draw righttriangle; draw sidebar shifted (wt,0); finishglyph; endfig; beginfig(205); prepareglyph; draw sublefttriangle shifted s; draw lefttriangle shifted s; finishglyph; endfig; beginfig(206); prepareglyph; draw subrighttriangle; draw righttriangle; finishglyph; endfig; beginfig(207); prepareglyph; draw midbar; finishglyph; endfig; beginfig(208); prepareglyph; draw onebar; finishglyph; endfig; beginfig(209); prepareglyph; draw twobar; draw twobar shifted (pw+hh/2,0); finishglyph; endfig; beginfig(999); picture collection [] ; prepareglyph ; draw lefttriangle ; finishglyph ; collection[201] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw righttriangle ; finishglyph ; collection[202] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw sidebar ; draw lefttriangle shifted (.5s) ; finishglyph ; collection[203] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw righttriangle ; draw sidebar shifted (wt,0) ; finishglyph ; collection[204] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw sublefttriangle shifted s ; draw lefttriangle shifted s ; finishglyph ; collection[205] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw subrighttriangle ; draw righttriangle ; finishglyph ; collection[206] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw midbar ; finishglyph ; collection[207] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw onebar ; finishglyph ; collection[208] := currentpicture ; currentpicture := nullpicture ; prepareglyph ; draw twobar ; draw twobar shifted (pw+hh/2,0) ; finishglyph ; collection[209] := currentpicture ; currentpicture := nullpicture ; for i=201 upto 209 : collection[i] := collection[i] shifted - center collection[i] ; endfor ; addto currentpicture also collection[205] shifted ( 0, 0) withcolor (.3,.4,.5) ; addto currentpicture also collection[202] shifted ( 0,1.5h) withcolor (.5,.6,.7) ; addto currentpicture also collection[201] shifted (1.5h, 0) withcolor (.6,.7,.8) ; addto currentpicture also collection[206] shifted (1.5h,1.5h) withcolor (.4,.5,.6) ; collection[210] := currentpicture ; currentpicture := nullpicture ; bboxmargin := .25u; fill bbox collection[210] withcolor .95(1,1,0); addto currentpicture also collection[210] ; endfig ; end