Works fine here.
Alan
P.S. I simplified your code slightly:
\definefloat
[recipe]
[figure]
[default={right,none}]
\setupbodyfont [pagella,9pt]
\starttext
\startplacerecipe
\startMPcode
pair vert[] ;
numeric n ; n := 5 ;
numeric radius ; radius := 2cm ;
for i=0 upto n :
vert[i] = radius * dir(360*i/(n+1)) ;
endfor ;
draw for i=0 upto n: vert[i] -- endfor cycle withcolor blue ;
draw for i=0 upto n: vert[i] .. endfor cycle withcolor red ;
draw origin--vert0 withcolor green ;
draw origin--vert5 withcolor green ;
draw origin--.5[vert0,vert5] dashed evenly ;
label.urt("C",vert1) ;
%alternately:
%draw textext.urt("C") shifted vert1 ;
\stopMPcode
\stopplacerecipe
\input knuth
\stoptext
On Thu, 31 Dec 2015 17:46:35 +0100
Fabrice Couvreur
Hello, The code below works perfectly without the placement of the label, but if I want to place the label, it no longer works. Thank you
\definefloat [recipe] [figure]
\setupfloat [recipe] [default={right,none}]
\starttext
\switchtobodyfont [pagella, 9pt]
\placerecipe{}{
\startMPcode
pair vert[] ; n:=6 ; radius=2cm ; for i=0 upto n : vert[i] = radius * dir(360*i/n) ; endfor ;
draw for i=0 upto n-1: vert[i] -- endfor cycle withcolor blue ;
draw for i=0 upto n-1: vert[i] .. endfor cycle withcolor red ;
draw (0,0)--vert[0] withcolor green ;
draw (0,0)--vert[5] withcolor green ;
draw (0,0) --(vert[0]+vert[5])/2 dashed evenly ;
% label.urt("C",vert[1]) ;
\stopMPcode }
\input knuth
\stoptext
-- Alan Braslau CEA DSM-IRAMIS-SPEC CNRS UMR 3680 Orme des Merisiers 91191 Gif-sur-Yvette cedex FRANCE tel: +33 1 69 08 73 15 fax: +33 1 69 08 87 86 mailto:alan.braslau@cea.fr