[Therion] Hiding centreline within a scrap, while showing it for surveys

Tarquin Wilton-Jones tarquin.wilton-jones at ntlworld.com
Sun Dec 8 11:13:01 CET 2019


> I achieve my version of what you describe all the time, but I think my
> standards are lower than yours. :-)

Your standards are excellent, you have provided the answer!

Do it in MetaPost:

layout externalcentreline
  code metapost
    def l_survey_cave_MY(expr P) =
      if known ATTR__scrap:
        if ATTR__scrap = "":
          l_survey_cave_SKBB(P);
        fi;
      else:
        l_survey_cave_SKBB(P);
      fi;
    enddef;
  endcode
  symbol-assign line survey:cave MY
  symbol-hide point station
endlayout

Wherever this sees centreline, it checks "Is this inside a scrap?". If
so, it does nothing. If not, it draws the centreline.

Similar tricks work for surface (l_survey_surface), or stations (if you
actually want to render stations for some reason).

Many thanks for pointing me in the right direction :)

Tarquin



More information about the Therion mailing list