Dear all, I have a survey with lots of sections (which are on another map than the plan and the elevation, see attached files NaduelFilonCerisiersPlan.pdf and NaduelRD8_sections.pdf) and I would like to add automatically a label numbering each section at the end of the section line in the plan. As I want to be able not to display the section lines AND the their numbers when I inlcude that survey into the larger map, I thought that adding a user attribute to the section line would be the right way. Thus, I used a user attribute called label in my th2 file: line section -reverse on -direction both -attr label "one" 312.0 327.0 334.09 327.0 396.0 327.0 425.0 327.0 endline and I redefined the section line metapost command into in my layout: code metapost def l_section (expr P)(text txt) = T:=identity; path Q; Q = punked P; pickup PenC; for t = 0 upto length P - 1: pair zz[]; zz1 := point t of P; zz2 := point t+1 of P; zz3 := postcontrol t of P; zz4 := precontrol t+1 of P; if (length(zz3-1/3[zz1,zz2]) > 0.1pt) or (length(zz4-2/3[zz1,zz2]) > 0.1pt): zz5 = whatever[zz1,zz2]; (zz3-zz5) = whatever * (zz1-zz2) rotated 90; draw zz1--zz5; zz6 = whatever[zz1,zz2]; (zz4-zz6) = whatever * (zz1-zz2) rotated 90; draw zz2--zz6; else: draw zz1--zz2; fi; endfor; for pnt=txt: if pnt=-1: else: T:=identity rotated angle(thdir(Q,pnt)) shifted (point pnt of Q); pickup PenC; thdraw (0,0)--(0,.8u); thdraw (-.1u,.55u)--(0,.8u)--(.1u,.55u); if known ATTR_label: p_label( ATTR_label, (point pnt of Q), 0, 5); fi; fi; exitif pnt=-1; endfor; enddef; endcode The file NaduelRD5_plan.pdf is an example on what it gives. With that solution, I have two problems: - the first one is that is I change -attr label "one" with -attr label "1" then metapost crashes because ATTR_label is intrepreted in that case as a known numeric and not as a string. - the second problem is how to give an offset to the label so that it is actually above and below the lines? If there is any metapost guru that can help, I'll appreciate. Xavier PS: there would be another solution to my problem, which would be to put sections and their labels in separate scraps, simulating different layers as in gimp, and not to include these scraps into the large map. However, to define properly a scrap as a layer of another one, it would be needed to deform both scarps exactly in the same way, which is not the case right now if some reference survey station is moved in one scrap only. Thus, I would imagine that a bettre solution would be a special type of layer scrap where the geometry is copied from another (e.g. something like scrap scrap2_layer2 -copy scrap2). Is that something feasible?