diff options
Diffstat (limited to 'graphics/asymptote/base/plain.asy')
-rw-r--r-- | graphics/asymptote/base/plain.asy | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/graphics/asymptote/base/plain.asy b/graphics/asymptote/base/plain.asy index 480780c458..141ccb8d13 100644 --- a/graphics/asymptote/base/plain.asy +++ b/graphics/asymptote/base/plain.asy @@ -32,9 +32,9 @@ include plain_filldraw; include plain_margins; include plain_picture; include plain_Label; -include plain_shipout; include plain_arcs; include plain_boxes; +include plain_shipout; include plain_markers; include plain_arrows; include plain_debugger; @@ -180,6 +180,19 @@ void eval(code s, bool embedded=false) if(!embedded) restoredefaults(); } +// Associate a parametrized type with a name. +void type(string type, string name) +{ + eval("typedef "+type+" "+name,true); +} + +void mapArray(string From, string To) +{ + type(From,"From"); + type(To,"To"); + eval("To[] map(To f(From), From[] a) {return sequence(new To(int i) {return f(a[i]);},a.length);}",true); +} + // Evaluate user command line option. void usersetting() { |