[Therion] Setting scale on custom symbol

Bruce Mutton bruce at tomo.co.nz
Wed May 15 09:23:33 CEST 2019


Hi Bill
I think that merging what you have with an interim defaultscale:=0.6; variable as demonstrated by Thomas Holder here https://therion.speleo.sk/wiki/metapost#special_symbol_examples will do the trick.
You probably want to keep the sc in def p_u_electriclight (expr pos,theta,sc,al), and multiply it by defaultscale before calling T:=identity...
Probably some trial and error involved.
Bruce

-----Original Message-----
From: Therion <therion-bounces at speleo.sk> On Behalf Of Bill Gee
Sent: Monday, 13 May 2019 06:14
To: Therion Mail List <therion at speleo.sk>
Subject: [Therion] Setting scale on custom symbol

Hello everyone - 

I have defined a custom symbol for electric light fixtures.  The MetaPost code is below.  Now that I have used it, I find that it draws the symbol too large.  I tried using "-scale small" and "-scale tiny", and that helps.  Rather than go through and add that to every point, I would like to change the MetaPost so it draws the symbol a bit smaller.

And I am lazy!  I could replot all the points for each of the lines.  It seems to me there should be a simpler way.  I tried messing with the U:= parameters, but they seem to make no difference whatever.

Is there a way I can declare a multiplier in the MetaPost code?  Perhaps declaring u = 0.6u?

Thanks!
-- 
Bill Gee

# This code defines an artificial electric light.  Used in tourist sections of a cave.
    def p_u_electriclight (expr pos,theta,sc,al) =
      U:=(0.3u, 0.3u);
      T:=identity aligned al rotated theta scaled sc shifted pos;
      pickup PenC;
      
      thdraw fullcircle scaled 0.5u shifted (0.0u, 0.7u);
      thdraw (-0.5u, -0.6u) -- (-0.5u, 0.0u);
      thdraw (-0.5u, 0.0u) .. (-0.35u, 0.55u) .. (0.0u, 0.7u);
      thdraw (0.0u, 0.7u) .. (0.35u, 0.55u) .. (0.5u, 0.0u);
      thdraw (0.5u,0.0u) -- (0.5u, -0.6u);
      thdraw (-0.7u, -0.6u) -- (0.7u, -0.6u);
      
    enddef;
    


_______________________________________________
Therion mailing list
Therion at speleo.sk
https://mailman.speleo.sk/listinfo/therion




More information about the Therion mailing list