[Therion] Need metapost wizard: new text label

Benedikt Hallinger beni at hallinger.org
Thu Feb 27 09:54:50 CET 2020


Good morning, and thank you for your comments!
Honestly, i have no clue what this all does, i just managed to copy paste until it magically startet to work :)

If you want to upload it to the wiki, im honored and please modify to your wills, especially to make it not break anything existing. Would be nice if you could drop me a line if its ready :)
(I fear fiddling around with it, as it already took me about five hours to get this and i don’t want to break it again)

My intention for the usage was in bigger cave systems to show the adjacent survey names (with preview below/above) so one can more easily navigate in the data and see where to look next.

Btw, i found out that „symbol-hide point u:mysymbol“ does not seem to recognize the symbol subtype and thus cannot hide it. Is this normal or am i doing something wrong?

> Am 27.02.2020 um 09:02 schrieb Tarquin Wilton-Jones via Therion <therion at speleo.sk>:
> 
> Nice one :)
> 
> All simple enough to understand (I might put it on the wiki with some
> explanatory comments).
> 
>> thelabel(txt, pos); 
> 
> I notice in the main Therion Metapost, it uses
> lab:=thelabel@#(txt, pos);
> to make sure that it can respect alignment, which your code cannot.
> Don't suppose you worked out how to pass the correct alignment value to
> it, did you?
> 
>> interim bboxmargin:=6.5bp;    % padding border->text
> 
> Just checking, since I don't know the "interim" keyword very well ...
> Doesn't it need to be inside a "begingroup/endgroup" pair, in order to
> know when to stop applying the "interim" value to the internal
> bboxmargin variable?
> 
> As far as I can tell, you are modifying the global value of it, so all
> subsequent uses of that internal variable will end up with your padding.
> At least until the next "endgroup" happens somewhere above your code in
> the stack.
> 
> (You are also trampling on any existing variables called lab, q or txt,
> but this is normal for Therion's code for some reason. Personally, I
> have started wrapping all of my symbol code in a group whenever it uses
> variables, and then I save them in order to make a macro equivalent to a
> "local" variable. This was needed in one case because I reused some
> variable name with a different datatype, and caused Metapost to get upset.)
> _______________________________________________
> Therion mailing list
> Therion at speleo.sk
> https://mailman.speleo.sk/listinfo/therion



More information about the Therion mailing list