prologues := 3;
outputformat := "svg";
defaultfont := "cmr10";
defaultscale := 1.1;
color Blue,Teal,Orange,Green,Grey,Light,Wash;
Blue := (0,84/255,159/255); Teal := (0,177/255,183/255);
Orange := (246/255,168/255,0); Green := (87/255,171/255,39/255);
Grey := (100/255,101/255,103/255); Light := (236/255,236/255,237/255);
Wash := (232/255,241/255,250/255);
% Format displayed numbers to hundredths using integer strings.
vardef numlabel(expr value)=
 save n,whole,frac; numeric n,whole,frac;
 n:=round(100abs value); whole:=floor(n/100); frac:=n mod 100;
 (if value<-.005: "-" & fi decimal whole
  if frac>0: & "." & if frac<10: "0" & fi decimal frac fi)
enddef;
pickup pencircle scaled .9;
outputtemplate := "MPT-16-002.svg";
beginfig(1);
fill unitsquare xscaled 320 yscaled 220 withcolor white;
% BEGIN DRAWING
path spine,leftedge,rightedge,ribbon;
pair c,n;
numeric w;
spine:=(34,67)..(99,150)..(183,77)..(281,151);
for i=0 upto 80:
  c:=point (3i/80) of spine;
  n:=(unitvector direction (3i/80) of spine) rotated 90;
  w:=1+12*(sind(180i/80)**2);
  if i=0:
    leftedge:=c+w*n; rightedge:=c-w*n;
  else:
    leftedge:=leftedge--(c+w*n);
    rightedge:=rightedge--(c-w*n);
  fi;
endfor;
ribbon:=leftedge--reverse rightedge--cycle;
fill ribbon withcolor .2[Blue,Teal];
draw spine dashed evenly withpen pencircle scaled .65 withcolor white;
label(btex width follows a sine envelope etex scaled .9,(160,32));
% END DRAWING
label.lft("MPT-16-002" infont "cmr8",(312,210));
setbounds currentpicture to unitsquare xscaled 320 yscaled 220;
endfig;
end.
