<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v =
"urn:schemas-microsoft-com:vml" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:w =
"urn:schemas-microsoft-com:office:word"><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.21184" name=GENERATOR>
<STYLE>@page Section1 {size: 612.0pt 792.0pt; margin: 72.0pt 77.95pt 72.0pt 77.95pt; }
P.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
COLOR: blue; TEXT-DECORATION: underline
}
P.MsoPlainText {
FONT-SIZE: 10pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Courier New"
}
LI.MsoPlainText {
FONT-SIZE: 10pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Courier New"
}
DIV.MsoPlainText {
FONT-SIZE: 10pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Courier New"
}
PRE {
FONT-SIZE: 10pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Courier New"
}
P.avgcert {
FONT-SIZE: 12pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
LI.avgcert {
FONT-SIZE: 12pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
DIV.avgcert {
FONT-SIZE: 12pt; MARGIN-LEFT: 0cm; MARGIN-RIGHT: 0cm; FONT-FAMILY: "Times New Roman"; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
SPAN.EmailStyle19 {
COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal
}
SPAN.EmailStyle20 {
COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal
}
DIV.Section1 {
page: Section1
}
</STYLE>
</HEAD>
<BODY lang=EN-US vLink=blue link=blue>
<DIV dir=ltr align=left><SPAN class=235045519-01122011><FONT face=Arial
color=#0000ff size=2>Hi Bruce,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=235045519-01122011><FONT face=Arial
color=#0000ff size=2>I've solved the problem - obvious really - I need to use
p_station, not p_station_SKBB. I'll send the example through later - I
need to copy it off another computer.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=235045519-01122011><FONT face=Arial
color=#0000ff size=2>Regards,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=235045519-01122011><FONT face=Arial
color=#0000ff size=2>- Ben</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> therion-bounces@speleo.sk
[mailto:therion-bounces@speleo.sk] <B>On Behalf Of </B>Ben
Cooper<BR><B>Sent:</B> 30 November 2011 22:35<BR><B>To:</B> 'List for Therion
users'<BR><B>Subject:</B> Re: [Therion] symbol-show fixed points / point
text<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>Hi Bruce,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>You beat me to it! I've spent the last few days
learning metapost and rummaging around the bowels of the Therion's source code
and have more or less got to what you have summarised below. I also
spotted the smartlabel, though haven't yet tried it in the re-definition of
p_continuation. </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>I surmise that stations with fixed co-ordinates are
not exported by Therion in any detectable way; while the th2 mark "fixed"
is exported as "mark", and the th2 flags are exported as "flags". The
items that are exported are accessible in
metapost. </FONT></SPAN><SPAN class=094593821-30112011><FONT
face=Arial color=#0000ff size=2>In the debug output data.mp file, I saw that
"attr code" is exported by Therion as ATTR_code, where "code" is whatever attr
has been declated in the th2 file. Note that it only has one "_" whereas
ATTR__text has two "_". So o<SPAN class=094593821-30112011><FONT
face=Arial color=#0000ff size=2>ne thing I tried that did work is to print the
value of my user define attr statements instead of the text, which is
potentially quite useful, as I can display a short code, and use
continuation.html for the longer description. However, this still relies
on having the "continuation" flag set.
</FONT></SPAN></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>I used the following re-definition of </FONT></SPAN><SPAN
class=094593821-30112011><FONT face=Arial color=#0000ff size=2>p_continuation
using ATTR_code instead of the example's ATTR__text, as
follows</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>**THE FOLLOWING WORKS**</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2> code metapost<BR> def
p_continuation(expr pos,theta,sc,al) =<BR> % draw default
continuation
symbol<BR> p_continuation_UIS(pos,theta,sc,al);</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2> % if attr code is
set<BR> if known(ATTR_code):</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2> % set labeling color to light
orange<BR> push_label_fill_color(1.0, 0.9,
0.8);<BR> <BR> % draw filled
label with text next to
?<BR> p_label.urt(ATTR_code,(.5u,-.25u) transformed
T,0.0,8);<BR> <BR> % restore
original labeling
color<BR> pop_label_fill_color;<BR> fi;<BR> enddef;<BR> endcode <BR></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>Looking at p_station_SKBB, the problem you and I are
facing is that it's only for the "continuation" flags that ATTR__text has been
set. I</FONT></SPAN><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>t occurred to me that if it was possible to refedine
p_station_SKBB in the thconfig file, then it would be possible to output
ATTR__text if an "attr code" has been declared in the th2 file.
</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>For example, th2 file:-</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>station 1 "Some text to output" entrance attr print
"true"</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=094593821-30112011><FONT face=Arial
color=#0000ff size=2>My example p_station_SKBB is below.
</FONT></SPAN><FONT face=Arial color=#0000ff size=2><SPAN
class=094593821-30112011>Unfortunately, I've so far not managed to see it
being executed. I can see it appear in the data.mp debug file, but the
changes I've made to it don't appear to work - the text is not yet being
output to my pdf file. Also, I don't understand yet the purpose of the
metapost "save" command, and the manual doesn't really shed much light on
it! So it's possible that I've just not yet properly understood metapost
syntax. </SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=094593821-30112011></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=094593821-30112011>This
is the sort of thing I've got in mind </SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=094593821-30112011></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=094593821-30112011>**
WARNING, THE FOLLOWING IS NOT YET WORKING **</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2>def p_station_SKBB(expr
pos,mark,txt)(text flags) =<BR> T:=identity shifted pos;</FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2> if mark=4:
p_station_fixed(pos)<BR> elseif mark=3: p_station_natural(pos)<BR>
elseif mark=2: p_station_painted(pos)<BR> elseif mark=1:
p_station_temporary(pos)<BR> fi;<BR> <BR> path
path_cave;<BR> path_cave = (-.3u,-.25u) -- (-.2u,-.25u){dir 135} .. (0,
.25u) .. {dir 225}(.2u,-.25u) -- (.3u,-.25u);<BR> for
i=flags:<BR></FONT><FONT face=Arial color=#0000ff size=2><SPAN
class=094593821-30112011> % ... etc. No
change to contents of for-loop</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2> endfor;<BR></DIV></FONT>
<DIV><SPAN class=094593821-30112011><FONT face=Arial color=#0000ff
size=2> % if the "print" attribute is set to true, display the
text</FONT></SPAN></DIV>
<DIV><SPAN class=094593821-30112011><FONT face=Arial color=#0000ff
size=2> if known (ATTR_print) and
ATTR_print="true":</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2> if
picture(txt):<BR> picture
ATTR__text;<BR> ATTR__text :=
txt;<BR></FONT><FONT face=Arial><FONT color=#0000ff><FONT size=2><SPAN
class=094593821-30112011> % set
labeling color to light orange<BR>
push_label_fill_color(1.0, 0.9,
0.8);<BR> <BR> % draw
filled label with text next to ?<BR>
p_label.urt(ATTR__text,(.5u,-.25u) transformed
T,0.0,8);<BR> <BR>
% restore original labeling
color<BR>
pop_label_fill_color;<BR></SPAN> <SPAN
class=094593821-30112011> </SPAN> save
ATTR__text;<BR> fi;<BR>% thdraw (0,0)
withpen PenX withcolor red;<BR>enddef;<BR></FONT></FONT></FONT></DIV>
<DIV><FONT size=+0><FONT size=+0><SPAN class=094593821-30112011><FONT
face=Arial color=#0000ff size=2>You're welcome to try it to see if you can get
it to work!</FONT></SPAN></FONT></FONT></DIV>
<DIV><FONT size=+0><FONT size=+0><SPAN class=094593821-30112011><FONT
face=Arial color=#0000ff size=2>Regards,</FONT></SPAN></FONT></FONT></DIV>
<DIV><FONT size=+0><FONT size=+0><SPAN class=094593821-30112011><FONT
face=Arial color=#0000ff size=2>- Ben</FONT></SPAN></DIV></FONT></FONT>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=094593821-30112011></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT><FONT face=Arial
color=#0000ff size=2></FONT><FONT face=Arial color=#0000ff
size=2></FONT><BR></DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> therion-bounces@speleo.sk
[mailto:therion-bounces@speleo.sk] <B>On Behalf Of </B>Bruce<BR><B>Sent:</B>
29 November 2011 18:20<BR><B>To:</B> 'List for Therion
users'<BR><B>Subject:</B> Re: [Therion] symbol-show fixed points / point
text<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=Section1>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">Ben<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">I think the following (dumped below) from the
therion sources mpost\thPoint.mp holds the solution to what we are looking
for. And I think the smartlabel is the wonderous self organising label
routine. I have not had time to verify all this
however.<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">Stacho tried to point me to it <A
href="http://article.gmane.org/gmane.comp.gis.therion/2468/match=symbol+show+fixed+points+text">http://article.gmane.org/gmane.comp.gis.therion/2468/match=symbol+show+fixed+points+text</A>
but I did not follow up on it.<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">The first definition below is the code for drawing
the ? symbol of a continuation point. You just need to replace the thdraw
statements with the symbol you would like. Don’t ask me how – my
approach is to trawl the rest of the therion code for a symbol I like and
perhaps tweak it a little.<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">The second shows how mark is used to decide what
station ‘x’ mark to use, and then how the flags control how the secondary
symbols are added. The %% comments are mine, so may not be correct. It
shows that station comment text is only added if the station is flagged
entrance.<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">I think moving the smartlabel into all but the
station_temporary conditional statements might be what we are
after.<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">Bruce<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">def p_continuation_UIS(expr pos,theta,sc,al)
=<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> U:=(.15u,.3u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> T:=identity aligned al shifted
pos;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> %% draw ? symbol<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> pickup PenC;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
(-.1u,.2u){up}..{down}(.1u,.2u)..{down}(0,-.05u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> pickup PenX;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw (0,-.2u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">enddef;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">def p_station_SKBB(expr pos,mark,txt)(text flags)
=<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> T:=identity shifted
pos;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> if mark=4:
p_station_fixed(pos)<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif mark=3:
p_station_natural(pos)<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif mark=2:
p_station_painted(pos)<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif mark=1:
p_station_temporary(pos)<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> fi;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> <o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> path path_cave; %% = omega
symbol<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> path_cave = (-.3u,-.25u) -- (-.2u,-.25u){dir
135} .. (0, .25u) .. {dir 225}(.2u,-.25u) --
(.3u,-.25u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> for i=flags:<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> pickup
PenX;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> if
i="entrance":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">% thfill fullcircle
scaled 1 cm withtransparentcolor tr_blue;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
path_cave;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">%
p_label.urt(txt,pos+(0.4u,0),0,0);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> %% move this if block
outside of for loop to label all stations, not just flagged
entrance<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> if not numeric
txt: <o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
p_smartlabel(txt,pos); %% This is the wonderous self organising label
i think<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
fi;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
%%<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="sink":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw path_cave
cutbefore ((-u,0)--(u,0)) cutafter
((-u,0)--(u,0));<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> pickup
PenA;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw (0,-.45u) --
(0,.05u) withcolor blue;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw (-.15u,-.02u)
-- (0,.05u) -- (.15u,-.02u) withcolor blue;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="spring":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw path_cave
cutbefore ((-u,0)--(u,0)) cutafter
((-u,0)--(u,0));<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> pickup
PenA;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw (0,-.45u) --
(0,.05u) withcolor blue;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw (-.15u,-.38u)
-- (0,-.45u) -- (.15u,-.38u) withcolor blue;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="doline":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
(-.5u,.05u){down}..(0,-0.6u)..{up}(.5u,.05u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="dig":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw (-.5u,.25u) --
(-.35u,.25u)--(-.23u,-.25u)--(.23u,-.25u)--(.35u,.25u)--(.5u,.25u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif substring(0,11) of i =
"air-draught":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> pickup
PenB;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
((0,.11u){dir-120} ..{dir-70}(0,0) ..
{dir-120}(0,-.11u));<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
((0,.11u){dir-120} ..{dir-70}(0,0) .. {dir-120}(0,-.11u)) shifted
(.11u,0);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
((0,.11u){dir-120} ..{dir-70}(0,0) .. {dir-120}(0,-.11u)) shifted
(-.11u,0);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="continuation":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> if
picture(txt):<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> picture
ATTR__text;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
ATTR__text := txt;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
fi;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
begingroup;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> save T;
transform T;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
p_continuation(pos+(0,.25u),0,1,(0,1));<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
endgroup;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> if
picture(txt):<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> save
ATTR__text;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">
fi;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="arch":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
(-.5u,-.25u)--(-.5u,.25u)--(.5u,.25u)--(.5u,-.25u)..(0,.2u)..cycle;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thfill
(-.5u,-.25u)--(-.5u,.25u)--(.5u,.25u)--(.5u,-.25u)..(0,.2u)..cycle;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> elseif
i="overhang":<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> thdraw
(.2u,-.25u)--(-.2u,-.25u){up}..{right}(.2u,.25u);<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> fi;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"> endfor;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">% thdraw (0,0) withpen PenX withcolor
red;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt">enddef;<o:p></o:p></SPAN></FONT></P>
<P class=MsoPlainText><FONT face="Courier New" size=2><SPAN lang=EN-NZ
style="FONT-SIZE: 10pt"><o:p> </o:p></SPAN></FONT></P></DIV></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>