summaryrefslogtreecommitdiff
path: root/metapost/context/base/mpxl/mp-tool.mpxl
diff options
context:
space:
mode:
Diffstat (limited to 'metapost/context/base/mpxl/mp-tool.mpxl')
-rw-r--r--metapost/context/base/mpxl/mp-tool.mpxl16
1 files changed, 16 insertions, 0 deletions
diff --git a/metapost/context/base/mpxl/mp-tool.mpxl b/metapost/context/base/mpxl/mp-tool.mpxl
index 474b68353..294dddcb9 100644
--- a/metapost/context/base/mpxl/mp-tool.mpxl
+++ b/metapost/context/base/mpxl/mp-tool.mpxl
@@ -3910,3 +3910,19 @@ vardef hatched(expr o) primary c =
enddef;
permanent hatched ;
+
+% By Mikael Sundqvist:
+
+numeric mfun_dash_len ;
+
+primarydef p withdashes len =
+ hide (
+ save l, n ;
+ l := arclength p ;
+ n := l div len ;
+ if odd(n) : n := n + 1 fi ;
+ mfun_dash_len := l / n ;
+ )
+ p dashed dashpattern (on mfun_dash_len off mfun_dash_len)
+enddef ;
+