diff options
author | Karl Berry <karl@freefriends.org> | 2019-10-06 17:17:34 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-10-06 17:17:34 +0000 |
commit | 7f9f7dad00ea5f025578c491005835740f9ffd90 (patch) | |
tree | 011a87a78042a82ea3a18f5c08e60f6a3930bf0b /Build/source/utils/asymptote/asy.list | |
parent | 37d8fb68e502daabe6aa5f5ae9fb78191f275742 (diff) |
asy 2.56 sources
git-svn-id: svn://tug.org/texlive/trunk@52300 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/asy.list')
-rw-r--r-- | Build/source/utils/asymptote/asy.list | 6172 |
1 files changed, 3086 insertions, 3086 deletions
diff --git a/Build/source/utils/asymptote/asy.list b/Build/source/utils/asymptote/asy.list index 202908ffd86..51585d44a2e 100644 --- a/Build/source/utils/asymptote/asy.list +++ b/Build/source/utils/asymptote/asy.list @@ -1,1310 +1,320 @@ -void drawstrokepath(picture pic=<default>, path g, pen strokepen, pen p=<default>); -real legendlinelength; -bool prc(string format=<default>); -light currentlight; -pen royalblue; -real arrowdir; -filltype filltype(int type=<default>, pen fillpen=<default>, pen drawpen=<default>, void fill2(frame f, path[] g, pen fillpen)); -int Suppress; -align NoAlign; -pair relative(picture pic=<default>, pair z); -filltype RadialShade(pen penc, pen penr); -real[] arrowbasepoints(path base, path left, path right, real default=<default>); -object embed3(string, frame, string, string, string, light, projection); -real bp; -pen mean(pen[] p, real opacity(real[])=<default>); -pen[] mean(pen[][] palette, real opacity(real[])=<default>); -pen squarecap; -string[] split(string s, string delimiter=<default>); -path[] plus; +string stripfile(string s); +string stripsuffix(string f, string suffix=<default>); +real cbrt(real x); +real[] cbrt(real[] a); +pen RGB(int r, int g, int b); cputime cputime(); -real inches; -pair SW; -real inch; -picture legenditem(Legend legenditem, real linelength); -marginT EndMargin(path, pen); -pen mediumgrey; -pen darkcyan; -coord[] maxcoords(coord[] in, bool operator <=(coord, coord)); -coord[] maxcoords(coord[] in, bool operator <=(coord, coord)); -real legendhskip; -void addSaveFunction(void s()()); -pen olive; -void copyPairOrTriple(pairOrTriple dest, pairOrTriple src); -pen zerowinding; -pen deepmagenta; -path[] margin(path[] g, real xmargin, real ymargin); -string file(string s); -plain_bounds plain_bounds; -pen mediumyellow; -slice lastcut(path p, path knife); -pen darkgreen; -string verbatim(string s); -pen heavygray; -pen darkred; -pair E; -plain_scaling plain_scaling; -pen darkgray; -frame orientation(frame); -void progress(bool3 init=<default>); -pen salmon; -pen mediummagenta; -pair arcdir(path p, real L); -pen mediumcyan; -pen Pentype(int n); -triple gettriple(string name=<default>, triple default=<default>, string prompt=<default>, bool store=<default>); -pen Yellow; -bool Arrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); -bool Arrow(picture, path, pen, marginT(path, pen)); -pair[] pairs(real[] x, real[] y); -void eval(code s, bool embedded=<default>); -void eval(string s, bool embedded=<default>); -real cm; -pen mediumgreen; -pen heavygreen; -pen dashdotted; -pen deepblue; -string graphicscale(real x); -pen mediumblue; -transform invert; -pair NNW; -pair SE; -pen thick(pen p=<default>); -pen mediumred; -marginT EndDotMargin(path, pen); -bool ArcArrows(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); -bool ArcArrows(picture, path, pen, marginT(path, pen)); -void filloutside(picture pic=<default>, path[] g, pen p=<default>, bool copy=<default>); -void filloutside(frame f, path[] g, pen p=<default>, bool copy=<default>); -bool ArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); -bool ArcArrow(picture, path, pen, marginT(path, pen)); -filltype RadialShadeDraw(real xmargin=<default>, real ymargin=<default>, pen penc, pen penr, pen drawpen=<default>); -marginT BeginDotMargin(path, pen); -marker[] Mark; -marker Mark(int n); -projection projection(triple camera, triple up=<default>, triple target=<default>, triple normal=<default>, real zoom=<default>, real angle=<default>, pair viewportshift=<default>, bool showtarget=<default>, bool autoadjust=<default>, bool center=<default>, transformation projector(triple camera, triple up, triple target)); -pen darkolive; -pen Dotted; -pen Dotted(pen p=<default>); -string math(string s); -transform fixedscaling(picture pic=<default>, pair min, pair max, pen p=<default>, bool warn=<default>); -pen Symbol(string series=<default>, string shape=<default>); -int count; -path circle(pair c, real r); -path ellipse(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -path ellipse(frame f, Label L, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -path ellipse(pair c, real a, real b); +string stripdirectory(string s); +real sqrtEpsilon; +string stripextension(string s); +version version; +void nosetpagesize(); +void texpreamble(string s); pen beveljoin; -pen orange; -pen green; -bool EndBar(picture, path, pen, marginT(path, pen)); -bool EndBar(picture, path, pen, marginT(path, pen))(real size=<default>); -file stdin; -int debuggerlines; -frame bbox(picture pic=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>); -path unitcircle; -arrowhead DefaultHead; -pen white; -position EndPoint; -transform Rotate(transform)(pair z); -transform Rotate(transform t); -Legend Legend(string label, pen plabel=<default>, pen p=<default>, frame mark=<default>, bool above=<default>); -void exitfunction(); -void drawarrow(frame f, arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>, bool forwards=<default>, marginT margin(path, pen)=<default>, bool center=<default>); string cputimeformat; -pair arcpoint(path p, real L); -bool interior(int windingnumber, pen fillrule); -pen fuchsia; -pen brown; -void bar(picture pic, pair a, pair d, pen p=<default>); -picture bar(pair a, pair d, pen p=<default>); -pen deepcyan; -pen dotted; -pair reldir(path p, real l); -pen pink; -pen TimesRoman(string series=<default>, string shape=<default>); -pen palemagenta; -int mantissaBits; -pen lightolive; -path arrowbase(path r, pair y, real t, real size); -pen[] monoPen; -bool CW; -pen Cyan; -string outprefix(string prefix=<default>); -object object(Label L, path e(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>), real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -object object(frame f); -object object(Label L); -marginT EndPenMargin(path, pen); -pair NNE; -bool EndArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); -bool EndArrow(picture, path, pen, marginT(path, pen)); -pen roundjoin; -void addArrow(picture pic, arrowhead arrowhead, path g, pen p, real size, real angle, filltype filltype, real position); -pen lightgray; -picture arrow2(arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>); -position MidPoint; -string Embed(string name, string text=<default>, string options=<default>, real width=<default>, real height=<default>); -pen deepgrey; -pen lightyellow; -marginT Margin(path, pen)(real begin, real end); -marginT Margin(path, pen); -side NoSide; -file stdout; -frame Seascape(frame f); -pair up; -pen ZapfChancery(string series=<default>, string shape=<default>); -pair left; -bool prconly(string format=<default>); -pen deepgreen; -pen lightmagenta; -real bracedefaultratio; -transform Scale(transform t); -string getstring(string name=<default>, string default=<default>, string prompt=<default>, bool store=<default>); -marginT DotMargins(path, pen); -bool debugging; -void shipout(string prefix=<default>, picture pic=<default>, frame orientation(frame)=<default>, string format=<default>, bool wait=<default>, bool view=<default>, string options=<default>, string script=<default>, light light=<default>, projection P=<default>); -void shipout(string prefix=<default>, frame f, string format=<default>, bool wait=<default>, bool view=<default>, string options=<default>, string script=<default>, light light=<default>, projection P=<default>, transform t=<default>); -path[] MarkPath; -pen deepgray; -string defaultformat(int n, string trailingzero=<default>, bool fixed=<default>, bool signed=<default>); -string defaultformat; -pen lightcyan; -pen paleblue; -frame align(frame f, pair align); -path[] align(path[] g, transform t=<default>, pair position, pair align, pen p=<default>); -object align(object F, pair align); -transform scaleless(transform t); -pen RGB(int r, int g, int b); -pen thin(); -real arcarrowangle; -void restoredefaults(); -pen longdashdotted; -void usepackage(string s, string options=<default>); -pen dashed; -string TeXify(string s); -string graphic(string name, string options=<default>); -frame Portrait(frame f); -real braceinnerangle; -guide operator ---(... guide[]); -int JOIN_IN; -real barfactor; -void arrow(picture pic=<default>, Label L=<default>, pair b, pair dir, real length=<default>, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>); -picture arrow(arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>, bool forwards=<default>, marginT margin(path, pen)=<default>, bool center=<default>); -void unitsize(picture pic=<default>, real x, real y=<default>, real z=<default>); -pen lightgreen; -transform zeroTransform; -void endl(file file); -void usersetting(); -bool prc0(string format=<default>); -pair rectify(pair dir); -arrowhead TeXHead; -void beep(); -real labelmargin; -real labelmargin(pen p=<default>); -pen lightblue; -real bracemidangle; -path unitsquare; -void savedefaults()(); -bool MidArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); -bool MidArrow(picture, path, pen, marginT(path, pen)); -pen cyan; -pen grey; -transform rotation(transform t); -pair W; -pen magenta; -pair WSW; -pen nobasealign; -frame Landscape(frame f); -real camerafactor; -pen lightred; -path trim(path g, real begin, real end); -marginT DotMargin(path, pen)(real begin, real end); -marginT DotMargin(path, pen); -pen squarepen; -pen deepyellow; -real barsize(pen p=<default>); -real legendmargin; -bool None(picture, path, pen, marginT(path, pen)); -pen AvantGarde(string series=<default>, string shape=<default>); -real circleprecision; -pen Black; -pen Bookman(string series=<default>, string shape=<default>); -path box(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -path box(frame f, Label L, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -path box(pair a, pair b); -frame[] fit(string prefix=<default>, picture[] pictures, string format=<default>, bool view=<default>, string options=<default>, string script=<default>, projection P=<default>); -string ask(string prompt); -frame[] fit2(picture[] pictures, picture all); -pen Pen(int n); -pair ENE; -pen Courier(string series=<default>, string shape=<default>); -void makedraw(frame f, path g, pen p, int depth=<default>); -pair down; -path arc(pair c, real r, real angle1, real angle2); -path arc(pair c, explicit pair z1, explicit pair z2, bool direction=<default>); -path arc(pair c, real r, real angle1, real angle2, bool direction); -pair right; -string outformat(string format=<default>); -filltype Fill; -filltype Fill(real xmargin=<default>, real ymargin=<default>, pen p=<default>); -pen Palatino(string series=<default>, string shape=<default>); -pair[] intersectionpoints(path p, path q, real fuzz=<default>); -pair[] intersectionpoints(explicit path[] p, explicit path[] q, real fuzz=<default>); -real arcarrowsize(pen p=<default>); -real calculateScaling(string dir, coord[] coords, real size, bool warn=<default>); -real calculateScaling(string dir, coord[] coords, real size, bool warn=<default>); -real calculateScaling(string dir, coord[] m, coord[] M, real size, bool warn=<default>); -real calculateScaling(string dir, coord[] m, coord[] M, real size, bool warn=<default>); -real expansionfactor; -bool BeginArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); -bool BeginArcArrow(picture, path, pen, marginT(path, pen)); -position BeginPoint; -real arrowhookfactor; -bool finite(real x); -bool finite(pair z); -bool finite(triple v); -filltype UnFill(real xmargin=<default>, real ymargin=<default>); -filltype UnFill; -frame enclose(string prefix=<default>, object F, string format=<default>); -bool Bars(picture, path, pen, marginT(path, pen)); -bool Bars(picture, path, pen, marginT(path, pen))(real size=<default>); -pair I; -pair SSW; -transform Slant(transform t); -pair intersectionpoint(path p, path q, real fuzz=<default>); -real getreal(string name=<default>, real default=<default>, string prompt=<default>, bool store=<default>); -pen darkbrown; -int sourceline(string file, string text); -void updatefunction(); -bool implicitshipout; -void buildRestoreDefaults()(); -path[] operator ^^(path p, path q); -path[] operator ^^(explicit path[] p, path q); -path[] operator ^^(path p, explicit path[] q); -path[] operator ^^(explicit path[] p, explicit path[] q); -real arrow2sizelimit; -filltype FillDraw; -filltype FillDraw(real xmargin=<default>, real ymargin=<default>, pen fillpen=<default>, pen drawpen=<default>); -void pause(string w=<default>); -int ocgindex; -pen springgreen; -pen heavygrey; -void markuniform(picture pic=<default>, frame f, path g)(pair z(real t), real a, real b, int n); -void markuniform(picture pic=<default>, frame f, path g)(bool centered=<default>, int n, bool rotated=<default>); -real circlescale; -bool ignore; -pen darkblue; -real reltime(path p, real l); -void marknodes(picture pic=<default>, frame f, path g); -int JOIN_OUT; -projection currentprojection; -real arrowsizelimit; -pair endpoint(path p); -slice firstcut(path p, path knife); -frame UpsideDown(frame f); -pair viewportmargin; -pen nullpen; -void save()(); -real dotfactor; -pen palecyan; -node node(void d(frame f, transform t, transform T, pair lb, pair rt), string key=<default>); -frame pack(pair align=<default> ... object[] inset); -marginT BeginMargin(path, pen); -path buildcycle(... path[] p); -marker markthin(path g, pen p=<default>, real thin(real fraction)=<default>, filltype filltype=<default>); -void activatequote(picture pic=<default>); -int undefined; -void drawarrow2(frame f, arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>); -bool BeginArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); -bool BeginArrow(picture, path, pen, marginT(path, pen)); -pen roundcap; -void buildRestoreThunk()(); -void overloadedMessage(file file); -frame currentpatterns; -real arrowfactor; +real Cos(real deg); +string insert(string s, int pos, string t); +marginT EndDotMargin(path, pen); pen heavyred; pen black; -void Draw(picture pic=<default>, path g, pen p=<default>); -filltype Draw; -void Draw(picture pic=<default>, explicit path[] g, pen p=<default>); -filltype Draw(real xmargin=<default>, real ymargin=<default>, pen p=<default>); -void tab(file file); -marker marker(frame f=<default>, void markroutine(picture pic=<default>, frame f, path g)=<default>, bool above=<default>); -marker marker(path[] g, void markroutine(picture pic=<default>, frame f, path g)=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -bool CCW; -void usetypescript(string s, string encoding=<default>); -path randompath(int n, bool cumulate=<default>, guide join(... guide[])=<default>); -void()()[] array(int n, void value()(), int depth=<default>); -bool[] array(int n, bool value, int depth=<default>); -string[] array(int n, string value, int depth=<default>); -pair[][] array(int n, pair[] value, int depth=<default>); -bool3[] array(int n, bool3 value, int depth=<default>); -coord[] array(int n, coord value, int depth=<default>); -coord[] array(int n, coord value, int depth=<default>); -object[] array(int n, object value, int depth=<default>); -marker[] array(int n, marker value, int depth=<default>); -Legend[] array(int n, Legend value, int depth=<default>); -real[][] array(int n, real[] value, int depth=<default>); -real[] array(int n, real value, int depth=<default>); -triple[] array(int n, triple value, int depth=<default>); -path[] array(int n, path value, int depth=<default>); -frame[] array(int n, frame value, int depth=<default>); -pen[][] array(int n, pen[] value, int depth=<default>); -Label[] array(int n, Label value, int depth=<default>); -picture[] array(int n, picture value, int depth=<default>); -int[] array(int n, int value, int depth=<default>); -string[][] array(int n, string[] value, int depth=<default>); -pair[] array(int n, pair value, int depth=<default>); -guide[] array(int n, guide value, int depth=<default>); -pen[] array(int n, pen value, int depth=<default>); -string[] array(string s); -real[] uniform(real a, real b, int n); -pair viewportsize; -picture currentpicture; -pen palegreen; -Label Label(Label L, pair position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -Label Label(string s, string size=<default>, explicit position position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -Label Label(Label L, explicit position position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -Label Label(explicit pair position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -Label Label; -Label Label(string s=<default>, string size=<default>, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -Label Label(string s, string size=<default>, pair position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -Label Label(Label L, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); -hsv hsv(real h, real s, real v); -hsv hsv(pen p); -arrowhead HookHead; -arrowhead HookHead(real dir=<default>, real barb=<default>); -picture[] concat(... picture[][]); -real[] concat(... real[][]); -object[] concat(... object[][]); -pair[] concat(... pair[][]); -Label[] concat(... Label[][]); -pen[] concat(... pen[][]); -coord[] concat(... coord[][]); -coord[] concat(... coord[][]); -Legend[] concat(... Legend[][]); -path[] concat(... path[][]); -int[] concat(... int[][]); -void()()[] concat(... void()()[][]); -bool3[] concat(... bool3[][]); -string[] concat(... string[][]); -triple[] concat(... triple[][]); -marker[] concat(... marker[][]); -frame[] concat(... frame[][]); -guide[] concat(... guide[][]); -bool[] concat(... bool[][]); -pair N; -real dotsize(pen p=<default>); -real pt; -settings settings; -int MoveQuiet; -pair WNW; -pen palegray; -pen miterjoin; -arrowhead SimpleHead; -real arrowangle; -frame dotframe(pen p=<default>, filltype filltype=<default>); -frame dotframe; -real arcarrowfactor; -real mm; pen heavyblue; filltype dotfilltype; -plain plain; -int getint(string name=<default>, int default=<default>, string prompt=<default>, bool store=<default>); -int bitreverse(int a, int bits); -int popcount(int a); -int NOT(int a); -int XOR(int a, int b); -int OR(int a, int b); -real[][] scale3(real s); -int AND(int a, int b); -real[] cubicroots(real a, real b, real c, real d); +pen heavygreen; +pen heavycyan; +marginT PenMargin(path, pen)(real begin, real end); +marginT PenMargin(path, pen); +int realDigits; +pen heavymagenta; +marginT PenMargins(path, pen); +void newl(file file); +void seek(file f, int pos); +string verbatim(string s); +pen heavygray; +pen heavygrey; +void markuniform(picture pic=<default>, frame f, path g)(pair z(real t), real a, real b, int n); +void markuniform(picture pic=<default>, frame f, path g)(bool centered=<default>, int n, bool rotated=<default>); +real[] mintimes(path p); +real[] mintimes(path3 p); +bool straight(path p, int t); +bool straight(path3 p, int t); +pen makepen(path p); +real dotsize(pen p=<default>); +real[] curlSpecifier(guide g, int t); +real straightness(path3 p, int t); +real straightness(triple z0, triple c0, triple c1, triple z1); +real log10(real x); +real[] log10(real[] a); +pen paleblue; +bool prc0(string format=<default>); +string xasyKEY(); +void xasyKEY(string s); +int CTZ(int a); +void _shipout(string prefix=<default>, frame f, frame preamble=<default>, string format=<default>, bool wait=<default>, bool view=<default>, transform t=<default>); +real barfactor; +pen Magenta; +real cos(real x); +real[] cos(real[] a); +pair cos(explicit pair z); +int intMax; +bool cyclic(guide g); +bool cyclic(path p); +bool cyclic(path3 p); +void printBytecode(<open>); +transform Rotate(transform)(pair z); +transform Rotate(transform t); +path subpath(path p, int a, int b); +path subpath(path p, real a, real b); +path3 subpath(path3 p, int a, int b); +path3 subpath(path3 p, real a, real b); +bool isnan(real x); +string jobname(string name); +void print_random_addresses(int n=<default>); void attach(picture dest=<default>, frame src, pair position, pair align, bool group=<default>, filltype filltype=<default>, bool above=<default>); void attach(picture dest=<default>, frame src, pair position=<default>, bool group=<default>, filltype filltype=<default>, bool above=<default>); real[] quadraticroots(real a, real b, real c); pair[] quadraticroots(explicit pair a, explicit pair b, explicit pair c); -path[] strokepath(path g, pen p=<default>); -real erf(real x); -real Yn(int n, real x); -real Jn(int n, real x); -light light(pen diffuse=<default>, pen specular=<default>, pen background=<default>, real x, real y, real z); -light light(explicit light light); -light light(pen diffuse=<default>, pen specular=<default>, pen background=<default>, real specularfactor=<default> ... triple[] position); -light light(pen[] diffuse, pen[] specular=<default>, pen background=<default>, real specularfactor=<default>, triple[] position); -real remainder(real x, real y); -int choose(int n, int k); -real hypot(real x, real y); -int Round(real x); -int Ceil(real x); -marginT BeginPenMargin(path, pen); -int round(real x); -int floor(real x); -pen extendcap; -int ceil(real x); -int rand(); -int sgn(real x); -int quotient(int x, int y); -real insphere(triple a, triple b, triple c, triple d, triple e); -path3 path3(triple[] pre, triple[] point, triple[] post, bool[] straight, bool cyclic); -real incircle(pair a, pair b, pair c, pair d); -real atan2(real y, real x); -bool inside(explicit path[] g, pair z, pen fillrule=<default>); -bool inside(path g, pair z, pen fillrule=<default>); -int inside(path p, path q, pen fillrule=<default>); -pair inside(path p, pen fillrule=<default>); -real erfc(real x); -int windingnumber(path[] p, pair z); -real relativedistance(real theta, real phi, real t, bool atleast); +pen darkcyan; string[] file3; real[] maxtimes(path p); real[] maxtimes(path3 p); -real[] mintimes(path p); -real[] mintimes(path3 p); -pair maxAfterTransform(transform t, path[] p); -pair minAfterTransform(transform t, path[] p); -pair extension(pair p, pair q, pair p, pair q); -real[][] intersections(path p, path q, real fuzz=<default>); -real[] intersections(path p, explicit pair a, explicit pair b, real fuzz=<default>); -real[][] intersections(path3 p, path3 q, real fuzz=<default>); -real[][] intersections(path3 p, triple[][] p, real fuzz=<default>); -real[] intersect(path p, path q, real fuzz=<default>); -real[] intersect(path3 p, path3 q, real fuzz=<default>); -real[] intersect(path3 p, triple[][] p, real fuzz=<default>); -real dirtime(path p, pair z); -real arctime(path p, real l); -real arctime(path3 p, real dval); -position Relative(real position); -side Relative(explicit pair align); -marginT Margins(path, pen); -pair truepoint(picture pic=<default>, pair dir, bool user=<default>); -real arclength(path p); -real arclength(path3 p); -bool piecewisestraight(path p); -bool piecewisestraight(path3 p); -path nurb(pair z0, pair z1, pair z2, pair z3, real w0, real w1, real w2, real w3, int m); -path subpath(path p, int a, int b); -path subpath(path p, real a, real b); -path3 subpath(path3 p, int a, int b); -path3 subpath(path3 p, real a, real b); -real radius(path p, real t); -real radius(path3 p, real t); -real radius(triple z0, triple c0, triple c1, triple z1, real t); -pair accel(path p, int t, int sign=<default>); -pair accel(path p, real t); -triple accel(path3 p, int t, int sign=<default>); -triple accel(path3 p, real t); -pair precontrol(path p, int t); -pair precontrol(path p, real t); -triple precontrol(path3 p, int t); -triple precontrol(path3 p, real t); -string defaultfilename; -real longitude(triple v, bool warn=<default>); -filltype NoFill; -real colatitude(triple v, bool warn=<default>); -marker nomarker; -pair beginpoint(path p); -real azimuth(triple v, bool warn=<default>); -real polar(triple v, bool warn=<default>); -real zpart(triple v); -pair bezierPPP(pair a, pair b, pair c, pair d); -triple bezierPPP(triple a, triple b, triple c, triple d); -pair SSE; -pair bezierP(pair a, pair b, pair c, pair d, real t); -triple bezierP(triple a, triple b, triple c, triple d, real t); -marginT TrueMargin(path, pen)(real begin, real end); -pair bezier(pair a, pair b, pair c, pair d, real t); -triple bezier(triple a, triple b, triple c, triple d, real t); -pair realmult(pair z, pair w); -triple realmult(triple u, triple v); -int Floor(real x); -pair gamma(explicit pair z); -real gamma(real x); -pair expi(real angle); -triple expi(real polar, real azimuth); -pair dir(real degrees); -pair dir(explicit pair z); -triple dir(explicit triple z); -triple dir(real colatitude, real longitude); -pair dir(path p, int t, int sign=<default>, bool normalize=<default>); -pair dir(path p, real t, bool normalize=<default>); -triple dir(path3 p, int t, int sign=<default>, bool normalize=<default>); -triple dir(path3 p, real t, bool normalize=<default>); -pair dir(path p); -pair dir(path p, path q); -real aTan(real x); -real aCos(real x); -real aSin(real x); -real arrowsize(pen p=<default>); -real Tan(real deg); -real Cos(real deg); -frame legend(picture pic=<default>, int perline=<default>, real xmargin=<default>, real ymargin=<default>, real linelength=<default>, real hskip=<default>, real vskip=<default>, real maxwidth=<default>, real maxheight=<default>, bool hstretch=<default>, bool vstretch=<default>, pen p=<default>); -picture legend(Legend[] Legend, int perline=<default>, real linelength, real hskip, real vskip, real maxwidth=<default>, real maxheight=<default>, bool hstretch=<default>, bool vstretch=<default>); -real Degrees(real radians); -real radians(real degrees); -real angle(pair z, bool warn=<default>); -real angle(transform t); -side Center; -real ypart(pair z); -real ypart(triple v); -real xpart(pair z); -real xpart(triple v); -int seconds(string t=<default>, string format=<default>); -pen rgba(real[] a); -real[] rgba(pen p); -string time(string format=<default>); -string time(int seconds, string format=<default>); -string string(int x); -string string(real x, int digits=<default>); -int ascii(string s); -side RightSide; -string replace(string s, string[][] translate); -string replace(string s, string before, string after); -pen lightgrey; -string upcase(string s); -pen mediumgray; -string downcase(string s); -string substr(string s, int pos, int n=<default>); -string insert(string s, int pos, string t); -int rfind(string s, string t, int pos=<default>); -void purge(int divisor=<default>); -int animate(string args=<default>, string file=<default>, string format=<default>); -int convert(string args=<default>, string file=<default>, string format=<default>); -real sqrtEpsilon; -string stripextension(string s); -string stripfile(string s); -string stripdirectory(string s); -void warning(string s, string t, bool position=<default>); +filltype FillDraw; +filltype FillDraw(real xmargin=<default>, real ymargin=<default>, pen fillpen=<default>, pen drawpen=<default>); +void initdefaults(); +void erase(frame f); +string erase(string s, int pos, int n); +void erase(picture pic=<default>); +pair E; +int Ceil(real x); +pair I; +pair SSW; +pen magenta; +pair WSW; +pair N; +bool view(); +void usersetting(); pair S; void nowarn(string s); -void warn(string s); -void breakpoints(); -void stop(string file, int line, code s=<default>); -void stop(string file, string text, code s=<default>); -string locatefile(string file); -void breakpoint(code s=<default>); -void atbreakpoint(string f(string, int, int, code)); -string phantom(string s); -void atexit(void f()); -void atexit()(); +transform rotate(real angle, pair z=<default>); +int quotient(int x, int y); +transform rotation(transform t); +pair W; +int rand(); +pen ZapfChancery(string series=<default>, string shape=<default>); +int XOR(int a, int b); void atupdate(void f()); void atupdate()(); -string outname(); -string mktemp(string s); -int rename(string from, string to); -real arrowbarb; -pen yellow; -int delete(string s); -void seekeof(file f); -pen heavymagenta; -marginT PenMargins(path, pen); -void newl(file file); -void seek(file f, int pos); -bool Arrows(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); -bool Arrows(picture, path, pen, marginT(path, pen)); -int tell(file f); -void DOSendl(file file); -string debugger(string file, int line, int column, code s=<default>); -string getc(file f); -void flush(file f); -pen blue; -pen evenodd; -int precision(file f=<default>, int digits=<default>); -void close(file f); -void clear(file f); -void clear(string file, int line); -void clear(); -void clear(string file, string text); void unfill(frame f, path[] g, bool copy=<default>); void unfill(picture pic=<default>, path[] g, bool copy=<default>); bool Bar(picture, path, pen, marginT(path, pen))(real size=<default>); bool Bar(picture, path, pen, marginT(path, pen)); bool eol(file f); -bool eof(file f); -pen paleyellow; -file output(string name=<default>, bool update=<default>, string comment=<default>, string mode=<default>); +pen zerowinding; +void atbreakpoint(string f(string, int, int, code)); +void savedefaults()(); +bool MidArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); +bool MidArrow(picture, path, pen, marginT(path, pen)); +bool MidArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); +bool MidArcArrow(picture, path, pen, marginT(path, pen)); +void grestore(frame f); +pair extension(pair p, pair q, pair p, pair q); +pen extendcap; +int ceil(real x); +pen thick(pen p=<default>); +pair left; +int Suppress; file input(string name=<default>, bool check=<default>, string comment=<default>, string mode=<default>); -pair bezierPP(pair a, pair b, pair c, pair d, real t); -triple bezierPP(triple a, triple b, triple c, triple d, real t); -real[] _projection(); -triple maxbezier(triple[][] p, triple b); -triple minbezier(triple[][] p, triple b); -real legendvskip; -pen darkmagenta; -real change2(triple[][] a); -pair NW; -real norm(real[] a); -real norm(real[][] a); -real norm(triple[][] a); -int[][] triangulate(pair[] z); -pair[] fft(pair[] a, int sign=<default>); -real simpson(real f(real), real a, real b, real acc=<default>, real dxmax=<default>); -pen[] colorPen; -real _findroot(real f(real), real a, real b, real tolerance, real fa, real fb); -real newton(int iterations=<default>, real f(real), real fprime(real), real x, bool verbose=<default>); -real newton(int iterations=<default>, real f(real), real fprime(real), real x1, real x2, bool verbose=<default>); -real[] tridiagonal(real[] a, real[] b, real[] c, real[] f); -void filldraw(picture pic=<default>, path[] g, pen fillpen=<default>, pen drawpen=<default>); -void filldraw(frame f, path[] g, pen fillpen=<default>, pen drawpen=<default>); -real dot(real[] a, real[] b); -pair dot(pair[] a, pair[] b); -real dot(explicit pair z, explicit pair w); -real dot(triple u, triple v); -void dot(picture pic=<default>, Label[] L=<default>, explicit path g, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); -marker dot(pen p=<default>, filltype filltype=<default>); -void dot(picture pic=<default>, pair z, pen p=<default>, filltype filltype=<default>); -void dot(frame f, pair z, pen p=<default>, filltype filltype=<default>); -void dot(picture pic=<default>, Label L, pen p=<default>, filltype filltype=<default>); -void dot(picture pic=<default>, Label[] L=<default>, pair[] z, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); -void dot(picture pic=<default>, path[] g, pen p=<default>, filltype filltype=<default>); -marker dot; -void dot(picture pic=<default>, Label L, pair z, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); -pair ESE; -pair project(triple v, real[][] t); -real[][] AtA(real[][] a); -real[] solve(real[][] a, real[] b, bool warn=<default>); -real[][] solve(real[][] a, real[][] b, bool warn=<default>); -scaleT scaleT(real T(real x), real Tinv(real x), bool logarithmic=<default>, bool automin=<default>, bool automax=<default>); -string baseline(string s, string template=<default>); -int[] findall(bool[] a); -bool BeginBar(picture, path, pen, marginT(path, pen)); -bool BeginBar(picture, path, pen, marginT(path, pen))(real size=<default>); -triple perp(triple v, triple u); -int find(bool[] a, int n=<default>); -int find(string s, string t, int pos=<default>); -real degrees(pair z, bool warn=<default>); -real degrees(real radians); -bool[] operator !(bool[] a); -bool operator !(bool b); -int[] sequence(int n); -pen[][] sequence(pen[] f(int), int n); -Label[] sequence(Label f(int), int n); -picture[] sequence(picture f(int), int n); -int[] sequence(int f(int), int n); -string[][] sequence(string[] f(int), int n); -pair[] sequence(pair f(int), int n); -guide[] sequence(guide f(int), int n); -pen[] sequence(pen f(int), int n); -void()()[] sequence(void f()()(int), int n); -bool[] sequence(bool f(int), int n); -string[] sequence(string f(int), int n); -pair[][] sequence(pair[] f(int), int n); -bool3[] sequence(bool3 f(int), int n); -coord[] sequence(coord f(int), int n); -coord[] sequence(coord f(int), int n); -object[] sequence(object f(int), int n); -marker[] sequence(marker f(int), int n); -Legend[] sequence(Legend f(int), int n); -real[][] sequence(real[] f(int), int n); -real[] sequence(real f(int), int n); -int[] sequence(int n, int m); -triple[] sequence(triple f(int), int n); -path[] sequence(path f(int), int n); -frame[] sequence(frame f(int), int n); -int[] complement(int[] a, int n); -path[] complement(frame f, path[] g); -void saveline(string name, string value, bool store=<default>); -string readline(string prompt=<default>, string name=<default>, bool tabcompletion=<default>); -real unitrand(); -string[] history(string name, int n=<default>); -string[] history(int n=<default>); -path[] _strokepath(path g, pen p=<default>); -path[][] textpath(string[] s, pen[] p); -marginT NoMargin(path, pen); -marginT NoMargin(path, pen)(); -path[][] _texpath(string[] s, pen[] p); int SuppressQuiet; real[] texsize(string s, pen p=<default>); -bool labels(frame f); -slice cut(path p, path knife, int n); -bool is3D(frame f); -bool is3D(string format=<default>); -transformation transformation(real[][] modelview); -transformation transformation(real[][] modelview, real[][] projection); -pair maxratio(frame f); -pair maxratio(triple[][] p, pair b); -pair maxratio(path3 g); -pair minratio(frame f); -pair minratio(triple[][] p, pair b); -pair minratio(path3 g); -triple size3(frame f); -void size3(picture pic=<default>, real x, real y=<default>, real z=<default>, bool keepAspect=<default>); -triple max3(frame f); -triple max3(pen p); -pair unit(pair z); -triple unit(triple v); -triple min3(frame f); -triple min3(pen p); -void drawpixel(frame f, triple v, pen p, real width=<default>); -void drawPRCtube(frame f, path3 center, path3 g, pen[] p, real opacity, real shininess); -void begin(picture pic=<default>, string name, string id=<default>, bool visible=<default>); -void drawPRCdisk(frame f, real[][] t, pen[] p, real opacity, real shininess); -int CLZ(int a); -void drawPRCsphere(frame f, real[][] t, bool half=<default>, pen[] p, real opacity, real shininess, int type); -string[] spinner; -real[] times(path p, real x); -real[] times(path p, explicit pair z); -void drawbeziertriangle(frame f, triple[][] p, triple center, bool straight, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] colors, int interaction, bool prc=<default>); -void draw(frame f, triple[][] p, triple center, bool straight, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] colors, int interaction, bool prc=<default>); -void draw(frame f, triple[] p, real[] knot, real[] weights=<default>, pen p); -void draw(frame f, triple[][] p, real[] uknot, real[] vknot, real[][] weights=<default>, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] colors); -void draw(frame f, triple[] v, int[][] vi, triple[] n, int[][] ni, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] c=<default>, int[][] ci=<default>); -void draw(picture pic=<default>, path[] g, pen fillrule=<default>, pen[] p); -object draw(picture pic=<default>, Label L, path e(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>), pair position, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -void draw(frame f, explicit path[] g, pen p=<default>); -void draw(picture pic=<default>, Label L=<default>, path g, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(pair origin, picture pic=<default>, Label L=<default>, path g, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -object draw(picture pic=<default>, Label L, path e(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>), real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -void draw(picture pic=<default>, guide[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); -void draw(pair origin, picture pic=<default>, guide[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); -void draw(frame f, guide[] g, pen p=<default>); -void draw(picture pic=<default>, explicit path[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); -void draw(pair origin, picture pic=<default>, explicit path[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); -void draw(frame f, path g, pen p=<default>); -void draw(frame f, path g, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))); -void deconstruct(frame f, frame preamble=<default>, transform t=<default>); -void deconstruct(picture pic=<default>); -void shipout3(string prefix, frame f, string format=<default>, real width, real height, real angle, real zoom, triple m, triple m, pair shift, real[][] t, real[] background, triple[] lights, real[][] diffuse, real[][] specular, bool view=<default>); -void shipout3(string prefix, frame f); -int CTZ(int a); -void _shipout(string prefix=<default>, frame f, frame preamble=<default>, string format=<default>, bool wait=<default>, bool view=<default>, transform t=<default>); -void asy(string format, bool overwrite=<default> ... string[] s); -bool latex(); string nativeformat(); -path unstraighten(path p); -path3 unstraighten(path3 p); -void _image(frame f, real[][] data, pair initial, pair final, pen[] palette=<default>, transform t=<default>, bool copy=<default>, bool antialias=<default>); -void _image(frame f, pen[][] data, pair initial, pair final, transform t=<default>, bool copy=<default>, bool antialias=<default>); -void _image(frame f, pen f(int, int), int width, int height, pair initial, pair final, transform t=<default>, bool antialias=<default>); -void layer(frame f); -void layer(picture pic=<default>); -void texreset(); -void _labelpath(frame f, string s, string size, path g, string justify, pair offset, pen p); -real arrowtexfactor; -void comma(file file); -void deletepreamble(); -version version; -void nosetpagesize(); -void texpreamble(string s); -real braceouterangle; -void tex(frame f, string s); -void tex(frame f, string s, pair min, pair max); -void tex(picture pic=<default>, string s, pair min, pair max); -void tex(picture pic=<default>, string s); -void prepend(frame dest, frame src); -void add(frame dest, frame src); -void add(picture dest=<default>, frame src, pair position, pair align, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(frame dest, frame src, pair position, pair align, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(picture pic=<default>, Label L); -void add(picture src, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(picture pic=<default>, void d(frame f, transform t), bool exact=<default>); -void add(picture pic=<default>, void d(picture, real[][]), bool exact=<default>); -void add(picture dest, picture src, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(picture dest, picture src, pair position, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(picture dest=<default>, object F, pair position=<default>, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(frame dest, frame src, filltype filltype, bool above=<default>); -void add(frame dest, frame src, bool group, filltype filltype=<default>, bool above=<default>); -void add(picture pic=<default>, void d(frame f, real[][] t, picture pic, projection P), bool exact=<default>); -void add(frame f, transform t=<default>, Label L); -void add(frame dest, frame src, pair position, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(picture dest=<default>, frame src, pair position=<default>, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void add(picture pic=<default>, void d(picture, transform), bool exact=<default>); -void add(picture src, pair position, bool group=<default>, filltype filltype=<default>, bool above=<default>); -void endgroup3(frame f); -void _begingroup3(frame f, string name, real compression, real granularity, bool closed, bool tessellate, bool dobreak, bool nobreak, triple center, int interaction); -void endgroup(frame f); -void endgroup(picture pic=<default>); -void begingroup(frame f); -void begingroup(picture pic=<default>); -bool MidArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); -bool MidArcArrow(picture, path, pen, marginT(path, pen)); -void grestore(frame f); -void drawPRCcylinder(frame f, real[][] t, pen[] p, real opacity, real shininess); -void beginclip(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); -void beginclip(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); -pen palegrey; -void clip(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); -void clip(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); -int Allow; -real determinant(real[][] a); -void functionshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, string shader=<default>, bool copy=<default>); -void functionshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, string shader, bool copy=<default>); -bool EndArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); -bool EndArcArrow(picture, path, pen, marginT(path, pen)); -void tensorshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, path[] b=<default>, pair[][] z=<default>, bool copy=<default>); -void tensorshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, path[] b=<default>, pair[][] z=<default>, bool copy=<default>); -void tensorshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>, pair[] z); -void tensorshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>, pair[] z); -void tensorshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>); -void tensorshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>); -file _outpipe; -void gouraudshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, pair[] z, int[] edges, bool copy=<default>); -void gouraudshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, int[] edges, bool copy=<default>); -void gouraudshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, pair[] z, int[] edges, bool copy=<default>); -void gouraudshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, int[] edges, bool copy=<default>); -pair getpair(string name=<default>, pair default=<default>, string prompt=<default>, bool store=<default>); -void axialshade(frame f, path[] g, bool stroke=<default>, pen pena, pair a, bool extenda=<default>, pen penb, pair b, bool extendb=<default>, bool copy=<default>); -void axialshade(picture pic=<default>, path[] g, bool stroke=<default>, pen pena, pair a, bool extenda=<default>, pen penb, pair b, bool extendb=<default>, bool copy=<default>); -pen chartreuse; -void latticeshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, transform t=<default>, bool copy=<default>); -void latticeshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, bool copy=<default>); -void fill(frame f, path[] g, pen p=<default>, bool copy=<default>); -path fill(frame dest, frame src, filltype filltype=<default>, real xmargin=<default>, real ymargin=<default>); -void fill(picture pic=<default>, path[] g, pen p=<default>, bool copy=<default>); -void fill(pair origin, picture pic=<default>, path[] g, pen p=<default>); -void _draw(frame f, path g, pen p); -void _draw(frame f, path3 g, triple center=<default>, pen p, int interaction=<default>); -void _draw(picture pic, path g, pen p, marginT margin(path, pen)); -void initdefaults(); -void erase(frame f); -string erase(string s, int pos, int n); -void erase(picture pic=<default>); -string jobname(string name); -void print_random_addresses(int n=<default>); -void generate_random_backtrace(); -guide operator ::(... guide[]); -pen Helvetica(string series=<default>, string shape=<default>); -transform reflect(pair a, pair b); -transform rotate(real angle, pair z=<default>); -bool IgnoreAspect; -void postscript(frame f, string s); -void postscript(frame f, string s, pair min, pair max); -void postscript(picture pic=<default>, string s, pair min, pair max); -void postscript(picture pic=<default>, string s); -transform slant(real s); -transform yscale(real y); -transform inverse(transform t); -real[][] inverse(real[][] a); -pen darkgrey; -transform xscale(real x); -transform shiftless(transform t); -real[][] shiftless(real[][] t); -real[] _cputime(); -guide reverse(guide g); -string reverse(string s); -path reverse(path p); -path3 reverse(path3 p); -triple[] reverse(triple[] a); -int[] reverse(int[] a); -real[] reverse(real[] a); -int[] reverse(int n); -string[] reverse(string[] a); -pair[] reverse(pair[] a); -bool[] reverse(bool[] a); -real[] curlSpecifier(guide g, int t); -bool Blank(picture, path, pen, marginT(path, pen)); -tensionSpecifier tensionSpecifier(guide g, int t); -bool3 default; -pair[] controlSpecifier(guide g, int t); -pen red; -pair[] dirSpecifier(guide g, int t); -pen longdashed; -pair point(guide g, int t); -pair point(path p, int t); -pair point(path p, real t); -triple point(path3 p, int t); -triple point(path3 p, real t); -pair point(picture pic=<default>, pair dir, bool user=<default>); -pair point(object F, pair dir, transform t=<default>); -pair point(frame f, pair dir); -int length(guide g); -int length(string s); -real length(pair z); -real length(triple v); -int length(path p); -int length(path3 p); -int size(guide g); -pair size(frame f); -int size(path p); -int size(path[] p); -int size(path3 p); -void size(picture dest, picture src); -pair size(picture pic, bool user=<default>); -void size(picture pic=<default>, transform t); -void size(picture pic=<default>, real x, real y=<default>, bool keepAspect=<default>); -void size(picture pic=<default>, real xsize, real ysize, pair min, pair max); -string texify(string s); -guide operator controls(pair zout, pair zin); -guide operator controls(pair z); -bool empty(frame f); -tensionSpecifier operator tension(real tout, real tin, bool atleast); -tensionSpecifier operator tension(real t, bool atLeast); -void end(picture pic=<default>); -curlSpecifier operator curl(real gamma, int p); -guide operator spec(pair z, int p); -void list(string s, bool imports=<default>); -string cd(string s=<default>); -int Move; -string location(); -string toplocation(); -string xasyKEY(); -void xasyKEY(string s); -bool pdf(); -void _eval(string s, bool embedded, bool interactivewrite=<default>); -void _eval(code s, bool embedded); -void usleep(int microseconds); -void sleep(int seconds); -real Sin(real deg); -void assert(bool b, string s=<default>); -pair Align; -void exit(); -void abort(string s=<default>); -string locale(string s=<default>); -string defaultseparator; -string asydir(); -bool view(); +bool invisible(pen p); +pen invisible(); +pen invisible; +bool CCW; +void usetypescript(string s, string encoding=<default>); +path randompath(int n, bool cumulate=<default>, guide join(... guide[])=<default>); int system(string[] s); int system(string s); -bool interactive(); -pen colorless(pen p); -bool straight(path p, int t); -bool straight(path3 p, int t); -pen makepen(path p); -path nib(pen p); -transform transform(pen p); -pair relpoint(path p, real l); -pair[][] transpose(pair[][] a); -pen[][] transpose(pen[][] a); -string[][] transpose(string[][] a); -real[][] transpose(real[][] a); -pen overwrite(int n); -int overwrite(pen p=<default>); -real lineskip(pen p=<default>); -pen fontsize(real size, real lineskip); -real fontsize(pen p=<default>); -pen fontsize(real size); -string font(pen p=<default>); -pen font(string name, string options=<default>); -pen font(string encoding, string family, string series, string shape); -pen font(string name, real size, string options=<default>); -void newpage(frame f); -void newpage(picture pic=<default>); -pen fontcommand(string s); -pen linewidth(real x); -real linewidth(pen p=<default>); -real arrowlength; -pen miterlimit(real x); -real miterlimit(pen p=<default>); -pen linecap(int n); -int linecap(pen p=<default>); -bool adjust(pen p); -pen adjust(pen p, real arclength, bool cyclic); -bool scale(pen p); -transform scale(real x); -transform scale(real x, real y); -real[][] scale(real x, real y, real z); +void bar(picture pic, pair a, pair d, pen p=<default>); +picture bar(pair a, pair d, pen p=<default>); +side NoSide; +file stdout; transform Shift(transform t); real fmod(real x, real y); real offset(pen p); +pen rgb(pen p); +pen rgb(real r, real g, real b); +pen rgb(string s); +real inch; +bool ArcArrow(picture, path, pen, marginT(path, pen)); +bool ArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); +bool ArcArrows(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); +bool ArcArrows(picture, path, pen, marginT(path, pen)); +pen currentpen; +pair precontrol(path p, int t); +pair precontrol(path p, real t); +triple precontrol(path3 p, int t); +triple precontrol(path3 p, real t); +light currentlight; +pen royalblue; +picture currentpicture; +frame currentpatterns; +int JOIN_IN; +int JOIN_OUT; +projection currentprojection; real orient(pair a, pair b, pair c); real orient(triple a, triple b, triple c, triple d); pen linetype(real[] pattern, real offset=<default>, bool scale=<default>, bool adjust=<default>); real[] linetype(pen p=<default>); pen linetype(string pattern, real offset=<default>, bool scale=<default>, bool adjust=<default>); -string blend(pen p); -void endclip(frame f); -void endclip(picture pic=<default>); -pen opacity(real opacity=<default>, string blend=<default>); -real opacity(pen p); -pen fillrule(int n); -int fillrule(pen p); -real[][] identity4; -marker[] MarkFill; -pen pattern(string s); -string pattern(pen p); -pen solid; -string colorspace(pen p); -int byte(real x); -bool Aspect; -string hex(pen p); -int hex(string s); -real[] colors(pen p); -void DOSnewl(file file); -pen cmyk(pen p); -pen cmyk(real c, real m, real y, real k); -pen rgb(pen p); -pen rgb(real r, real g, real b); -pen rgb(string s); -pen gray(pen p); -pen gray(real gray); -pen gray; -bool invisible(pen p); -pen invisible(); -pen invisible; -void defaultpen(pen p); -pen defaultpen(); -pen defaultpen; -void defaultpen(real w); -void resetdefaultpen(); -bool isnan(real x); -bool cyclic(guide g); -bool cyclic(path p); -bool cyclic(path3 p); -void printBytecode(<open>); -pen currentpen; -string VERSION; -bool alias(pair[][] a, pair[][] b); -bool alias(guide[] a, guide[] b); -bool alias(marginT a, marginT b); -bool alias(simplex a, simplex b); -bool alias(scaleT a, scaleT b); -bool alias(arrowhead a, arrowhead b); -bool alias(pair[] a, pair[] b); -bool alias(coord a, coord b); -bool alias(coord a, coord b); -bool alias(Legend a, Legend b); -bool alias(position a, position b); -bool alias(marker[] a, marker[] b); -bool alias(int[] a, int[] b); -bool alias(string[][] a, string[][] b); -bool alias(slice a, slice b); -bool alias(freezableBounds a, freezableBounds b); -bool alias(projection a, projection b); -bool alias(picture a, picture b); -bool alias(Label[] a, Label[] b); -bool alias(real[][] a, real[][] b); -bool alias(bool3 a, bool3 b); -bool alias(bool3[] a, bool3[] b); -bool alias(autoscaleT a, autoscaleT b); -bool alias(align a, align b); -bool alias(processtime a, processtime b); -bool alias(string[] a, string[] b); -bool alias(frame[] a, frame[] b); -bool alias(scaling a, scaling b); -bool alias(scaling a, scaling b); -bool alias(bounds a, bounds b); -bool alias(light a, light b); -bool alias(node a, node b); -bool alias(Label a, Label b); -bool alias(picture[] a, picture[] b); -bool alias(bool[] a, bool[] b); -bool alias(void()()[] a, void()()[] b); -bool alias(pen[][] a, pen[][] b); -bool alias(filltype a, filltype b); -bool alias(coord[] a, coord[] b); -bool alias(coord[] a, coord[] b); -bool alias(coords3 a, coords3 b); -bool alias(marker a, marker b); -bool alias(Legend[] a, Legend[] b); -bool alias(path[] a, path[] b); -bool alias(triple[] a, triple[] b); -bool alias(ScaleT a, ScaleT b); -bool alias(side a, side b); -bool alias(cputime a, cputime b); -bool alias(real[] a, real[] b); -bool alias(pen[] a, pen[] b); -bool alias(hsv a, hsv b); -bool alias(coords2 a, coords2 b); -bool alias(coords2 a, coords2 b); -bool alias(transformation a, transformation b); -bool alias(pairOrTriple a, pairOrTriple b); -bool alias(object a, object b); -bool alias(object[] a, object[] b); -real pi; -int randMax; -pen heavycyan; -marginT PenMargin(path, pen)(real begin, real end); -marginT PenMargin(path, pen); -int realDigits; -real realEpsilon; -pair NE; -real realMin; -real realMax; -simplex simplex(real[] c, real[][] A, real[] b, bool phase1=<default>, bool dual=<default>); -simplex simplex(real[] c, real[][] A, int[] s, real[] b); -simplex simplex; -real nan; -real infinity; -void xmap(string key, transform t=<default>); -real inf; -int intMin; -int intMax; -pen palered; -real[] map(real f(pair), pair[] a); -int[] map(int f(real), real[] a); -bool3[] map(bool3 f(bool3), bool3[] a); -frame[] map(frame f(frame), frame[] a); -pen[][] map(pen[] f(pen[]), pen[][] a); -triple[] map(triple f(triple), triple[] a); -pen[] map(pen f(pen), pen[] a); -coord[] map(coord f(coord), coord[] a); -coord[] map(coord f(coord), coord[] a); -Legend[] map(Legend f(Legend), Legend[] a); -pair[] map(pair f(pair), pair[] a); -Label[] map(Label f(Label), Label[] a); -string[] map(string f(string), string[] a); -object[] map(object f(object), object[] a); -void()()[] map(void f()()(void()()), void()()[] a); -pair[][] map(pair[] f(pair[]), pair[][] a); -real[] map(real f(real), real[] a); -picture[] map(picture f(picture), picture[] a); -int[] map(int f(int), int[] a); -string[][] map(string[] f(string[]), string[][] a); -marker[] map(marker f(marker), marker[] a); -bool[] map(bool f(bool), bool[] a); -path[] map(path f(path), path[] a); -real[][] map(real[] f(real[]), real[][] a); -guide[] map(guide f(guide), guide[] a); -real identity(real x); -real[] identity(real[] a); -transform identity(); -real[][] identity(int n); -transform identity; -real pow10(real x); -real[] pow10(real[] a); -pen linejoin(int n); -int linejoin(pen p=<default>); -real ldexp(real x, int e); -real log1p(real x); -real[] log1p(real[] a); -path brace(pair a, pair b, real amplitude=<default>); -void deactivatequote(picture pic=<default>); -string format(string format, int x, string locale=<default>); -string format(string format, bool forcemath=<default>, string separator, real x, string locale=<default>); -string format(string format=<default>, bool forcemath=<default>, real x, string locale=<default>); -real expm1(real x); -real[] expm1(real[] a); -void label(frame f, string s, string size, transform t, pair position, pair align, pen p); -void label(picture pic=<default>, Label L, align align=<default>, pen p=<default>, filltype filltype=<default>); -void label(pair origin, picture pic=<default>, Label L, align align=<default>, pen p=<default>, filltype filltype=<default>); -void label(frame f, Label L, pair position, align align=<default>, pen p=<default>, filltype filltype=<default>); -void label(picture pic=<default>, Label L, pair position, align align=<default>, pen p=<default>, filltype filltype=<default>); -void label(frame f, Label L, align align=<default>, pen p=<default>, filltype filltype=<default>); -void label(picture pic=<default>, Label L, explicit guide g, align align=<default>, pen p=<default>, filltype filltype=<default>); -void label(picture pic=<default>, Label L, explicit path g, align align=<default>, pen p=<default>, filltype filltype=<default>); -real fabs(real x); -real[] fabs(real[] a); -string stripsuffix(string f, string suffix=<default>); -real cbrt(real x); -real[] cbrt(real[] a); -real sqrt(real x); -real[] sqrt(real[] a); -pair sqrt(explicit pair z); -bool all(bool[] a); -real atanh(real x); -real[] atanh(real[] a); -real acosh(real x); -real[] acosh(real[] a); +real xpart(pair z); +real xpart(triple v); +side Center; +real ypart(pair z); +real ypart(triple v); +real zpart(triple v); +frame orientation(frame); +pen Courier(string series=<default>, string shape=<default>); +real simpson(real f(real), real a, real b, real acc=<default>, real dxmax=<default>); transform shift(transform t); transform shift(pair z); transform shift(real x, real y); transform shift(frame f, pair align); real asinh(real x); real[] asinh(real[] a); -pen ZapfDingbats(string series=<default>, string shape=<default>); -real tanh(real x); -real[] tanh(real[] a); +pen orange; +pen darkgray; +slice lastcut(path p, path knife); +pen darkgreen; +pen darkgrey; +transform xscale(real x); +transform shiftless(transform t); +real[][] shiftless(real[][] t); +transform yscale(real y); +void usleep(int microseconds); real cosh(real x); real[] cosh(real[] a); -real sinh(real x); -real[] sinh(real[] a); -real straightness(path3 p, int t); -real straightness(triple z0, triple c0, triple c1, triple z1); -real log10(real x); -real[] log10(real[] a); -pair midpoint(path p); -real exp(real x); -real[] exp(real[] a); -pair exp(explicit pair z); +position MidPoint; +real Sin(real deg); +void assert(bool b, string s=<default>); +pen Palatino(string series=<default>, string shape=<default>); +real incircle(pair a, pair b, pair c, pair d); +frame Landscape(frame f); pen purple; string italic(string s); real atan(real x); real[] atan(real[] a); real acos(real x); real[] acos(real[] a); -path roundbox(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -path roundbox(frame f, Label L, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -real asin(real x); -real[] asin(real[] a); -real tan(real x); -real[] tan(real[] a); -pen Magenta; -real cos(real x); -real[] cos(real[] a); -pair cos(explicit pair z); -real sin(real x); -real[] sin(real[] a); -pair sin(explicit pair z); -path polygon(int n); -guide operator --(... guide[]); -void none(file file); -int factorial(int n); -real log(real x); -real[] log(real[] a); -pair log(explicit pair z); -guide operator ..(... guide[]); -guide operator ..(... guide[])(tensionSpecifier t); -pair operator tuple(real x, real y); -triple operator tuple(real x, real y, real z); -transform operator tuple(real x, real y, real xx, real xy, real yx, real yy); -int[][] diagonal(... int[]); -real[][] diagonal(... real[]); -pair[][] diagonal(... pair[]); -path[] texpath(string s, pen p, bool tex=<default>, bool bbox=<default>); -path[] texpath(Label L, bool tex=<default>, bool bbox=<default>); -bool uptodate(); -int operator #(int a, int b); -int[] operator #(int a, int[] b); -int[] operator #(int[] a, int b); -int[] operator #(int[] a, int[] b); -int operator %(int a, int b); -int[] operator %(int a, int[] b); -int[] operator %(int[] a, int b); -int[] operator %(int[] a, int[] b); -real operator %(real a, real b); -real[] operator %(real a, real[] b); -real[] operator %(real[] a, real b); -real[] operator %(real[] a, real[] b); +int popcount(int a); +pair minbound(pair a, pair b); +triple minbound(triple a, triple b); +pair minbound(pair[] a); +pair minbound(pair[][] a); +pair minbound(pair[][][] a); +triple minbound(triple[] a); +triple minbound(triple[][] a); +triple minbound(triple[][][] a); +void restore(); +pen basealign(int n); +int basealign(pen p=<default>); +pen basealign; +int min(int a, int b); +int[] min(int a, int[] b); +int[] min(int[] a, int b); +int[] min(int[] a, int[] b); +int min(int[] a); +int min(int[][] a); +int min(int[][][] a); +real min(real a, real b); +real[] min(real a, real[] b); +real[] min(real[] a, real b); +real[] min(real[] a, real[] b); +real min(real[] a); +real min(real[][] a); +real min(real[][][] a); +string min(string a, string b); +string[] min(string a, string[] b); +string[] min(string[] a, string b); +string[] min(string[] a, string[] b); +string min(string[] a); +string min(string[][] a); +string min(string[][][] a); +pair min(pen p); +pair min(frame f); +pair min(explicit path p); +pair min(path[] p); +triple min(path3 p); +real min(... real[] a); +real min(real m, scaling s, coord[] c); +pair min(picture pic, bool user=<default>); +real min(real m, scaling s, coord[] c); +int min(... int[] a); +filltype RadialShade(pen penc, pen penr); int search(int[] a, int key); int search(real[] a, real key); int search(string[] a, string key); int search(void()()[] a, void key()(), bool less(void()(), void()())); -int search(object[] a, object key, bool less(object, object)); int search(real[] a, real key, bool less(real, real)); int search(guide[] a, guide key, bool less(guide, guide)); -int search(Label[] a, Label key, bool less(Label, Label)); +int search(object[] a, object key, bool less(object, object)); int search(pair[] a, pair key, bool less(pair, pair)); int search(coord[] a, coord key, bool less(coord, coord)); -int search(coord[] a, coord key, bool less(coord, coord)); int search(Legend[] a, Legend key, bool less(Legend, Legend)); +int search(Label[] a, Label key, bool less(Label, Label)); int search(frame[] a, frame key, bool less(frame, frame)); +int search(coord[] a, coord key, bool less(coord, coord)); int search(int[] a, int key, bool less(int, int)); int search(bool3[] a, bool3 key, bool less(bool3, bool3)); int search(string[] a, string key, bool less(string, string)); int search(path[] a, path key, bool less(path, path)); int search(pen[] a, pen key, bool less(pen, pen)); -int search(marker[] a, marker key, bool less(marker, marker)); int search(bool[] a, bool key, bool less(bool, bool)); int search(triple[] a, triple key, bool less(triple, triple)); +int search(marker[] a, marker key, bool less(marker, marker)); int search(picture[] a, picture key, bool less(picture, picture)); -int[] sort(int[] a); -int[][] sort(int[][] a); -real[] sort(real[] a); -real[][] sort(real[][] a); -string[] sort(string[] a); -string[][] sort(string[][] a); -Label[] sort(Label[] a, bool less(Label, Label), bool stable=<default>); -picture[] sort(picture[] a, bool less(picture, picture), bool stable=<default>); -path[] sort(path[] a, bool less(path, path), bool stable=<default>); -pen[][] sort(pen[][] a, bool less(pen[], pen[]), bool stable=<default>); -pair[][] sort(pair[][] a, bool less(pair[], pair[]), bool stable=<default>); -pen[] sort(pen[] a, bool less(pen, pen), bool stable=<default>); -bool[] sort(bool[] a, bool less(bool, bool), bool stable=<default>); -void()()[] sort(void()()[] a, bool less(void()(), void()()), bool stable=<default>); -frame[] sort(frame[] a, bool less(frame, frame), bool stable=<default>); -bool3[] sort(bool3[] a, bool less(bool3, bool3), bool stable=<default>); -coord[] sort(coord[] a, bool less(coord, coord), bool stable=<default>); -coord[] sort(coord[] a, bool less(coord, coord), bool stable=<default>); -object[] sort(object[] a, bool less(object, object), bool stable=<default>); -marker[] sort(marker[] a, bool less(marker, marker), bool stable=<default>); -Legend[] sort(Legend[] a, bool less(Legend, Legend), bool stable=<default>); -int[] sort(int[] a, bool less(int, int), bool stable=<default>); -string[][] sort(string[][] a, bool less(string[], string[]), bool stable=<default>); -real[] sort(real[] a, bool less(real, real), bool stable=<default>); -string[] sort(string[] a, bool less(string, string), bool stable=<default>); -pair[] sort(pair[] a, bool less(pair, pair), bool stable=<default>); -real[][] sort(real[][] a, bool less(real[], real[]), bool stable=<default>); -triple[] sort(triple[] a, bool less(triple, triple), bool stable=<default>); -guide[] sort(guide[] a, bool less(guide, guide), bool stable=<default>); +filltype RadialShadeDraw(real xmargin=<default>, real ymargin=<default>, pen penc, pen penr, pen drawpen=<default>); +real sin(real x); +real[] sin(real[] a); +pair sin(explicit pair z); +pen deepcyan; +void restoredefaults(); +path[] plus; +pair expi(real angle); +triple expi(real polar, real azimuth); +void endclip(frame f); +void endclip(picture pic=<default>); +pen opacity(real opacity=<default>, string blend=<default>); +real opacity(pen p); +real[] solve(real[][] a, real[] b, bool warn=<default>); +real[][] solve(real[][] a, real[][] b, bool warn=<default>); +int rename(string from, string to); +void DOSendl(file file); +string debugger(string file, int line, int column, code s=<default>); +string getc(file f); +bool debugging; +void shipout(string prefix=<default>, frame f, string format=<default>, bool wait=<default>, bool view=<default>, string options=<default>, string script=<default>, light light=<default>, projection P=<default>, transform t=<default>); +void shipout(string prefix=<default>, picture pic=<default>, frame orientation(frame)=<default>, string format=<default>, bool wait=<default>, bool view=<default>, string options=<default>, string script=<default>, light light=<default>, projection P=<default>); +void shipout3(string prefix, frame f, string format=<default>, real width, real height, real angle, real zoom, triple m, triple m, pair shift, pair margin, real[][] t, real[] background, triple[] lights, real[][] diffuse, real[][] specular, bool view=<default>); +void shipout3(string prefix, frame f, string format=<default>); +string getstring(string name=<default>, string default=<default>, string prompt=<default>, bool store=<default>); +int debuggerlines; +frame bbox(picture pic=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>); +real radians(real degrees); +bool pdf(); +void _eval(string s, bool embedded, bool interactivewrite=<default>); +void _eval(code s, bool embedded); +path[][] textpath(string[] s, pen[] p); +void radialshade(frame f, path[] g, bool stroke=<default>, pen pena, pair a, real ra, bool extenda=<default>, pen penb, pair b, real rb, bool extendb=<default>, bool copy=<default>); +void radialshade(picture pic=<default>, path[] g, bool stroke=<default>, pen pena, pair a, real ra, bool extenda=<default>, pen penb, pair b, real rb, bool extendb=<default>, bool copy=<default>); +pair maxbound(pair a, pair b); +triple maxbound(triple a, triple b); +pair maxbound(pair[] a); +pair maxbound(pair[][] a); +pair maxbound(pair[][][] a); +triple maxbound(triple[] a); +triple maxbound(triple[][] a); +triple maxbound(triple[][][] a); +string Embed(string name, string text=<default>, string options=<default>, real width=<default>, real height=<default>); pair postcontrol(path p, int t); pair postcontrol(path p, real t); triple postcontrol(path3 p, int t); @@ -1336,101 +346,176 @@ pair max(explicit path p); pair max(path[] p); triple max(path3 p); pair max(picture pic, bool user=<default>); +real max(real M, scaling s, coord[] c); int max(... int[] a); real max(... real[] a); real max(real M, scaling s, coord[] c); -real max(real M, scaling s, coord[] c); -void restore(); -pen basealign(int n); -int basealign(pen p=<default>); -pen basealign; -int min(int a, int b); -int[] min(int a, int[] b); -int[] min(int[] a, int b); -int[] min(int[] a, int[] b); -int min(int[] a); -int min(int[][] a); -int min(int[][][] a); -real min(real a, real b); -real[] min(real a, real[] b); -real[] min(real[] a, real b); -real[] min(real[] a, real[] b); -real min(real[] a); -real min(real[][] a); -real min(real[][][] a); -string min(string a, string b); -string[] min(string a, string[] b); -string[] min(string[] a, string b); -string[] min(string[] a, string[] b); -string min(string[] a); -string min(string[][] a); -string min(string[][][] a); -pair min(pen p); -pair min(frame f); -pair min(explicit path p); -pair min(path[] p); -triple min(path3 p); -real min(... real[] a); -real min(real m, scaling s, coord[] c); -real min(real m, scaling s, coord[] c); -pair min(picture pic, bool user=<default>); -int min(... int[] a); -void srand(int seed); -bool operator >(int a, int b); -bool[] operator >(int a, int[] b); -bool[] operator >(int[] a, int b); -bool[] operator >(int[] a, int[] b); -bool operator >(real a, real b); -bool[] operator >(real a, real[] b); -bool[] operator >(real[] a, real b); -bool[] operator >(real[] a, real[] b); -bool operator >(string a, string b); -bool[] operator >(string a, string[] b); -bool[] operator >(string[] a, string b); -bool[] operator >(string[] a, string[] b); -bool operator >=(int a, int b); -bool[] operator >=(int a, int[] b); -bool[] operator >=(int[] a, int b); -bool[] operator >=(int[] a, int[] b); -bool operator >=(real a, real b); -bool[] operator >=(real a, real[] b); -bool[] operator >=(real[] a, real b); -bool[] operator >=(real[] a, real[] b); -bool operator >=(string a, string b); -bool[] operator >=(string a, string[] b); -bool[] operator >=(string[] a, string b); -bool[] operator >=(string[] a, string[] b); -bool operator >=(coord a, coord b); -bool operator >=(coord a, coord b); -bool operator <=(int a, int b); -bool[] operator <=(int a, int[] b); -bool[] operator <=(int[] a, int b); -bool[] operator <=(int[] a, int[] b); -bool operator <=(real a, real b); -bool[] operator <=(real a, real[] b); -bool[] operator <=(real[] a, real b); -bool[] operator <=(real[] a, real[] b); -bool operator <=(string a, string b); -bool[] operator <=(string a, string[] b); -bool[] operator <=(string[] a, string b); -bool[] operator <=(string[] a, string[] b); -bool operator <=(coord a, coord b); -bool operator <=(coord a, coord b); -bool operator <(int a, int b); -bool[] operator <(int a, int[] b); -bool[] operator <(int[] a, int b); -bool[] operator <(int[] a, int[] b); -bool operator <(real a, real b); -bool[] operator <(real a, real[] b); -bool[] operator <(real[] a, real b); -bool[] operator <(real[] a, real[] b); -bool operator <(string a, string b); -bool[] operator <(string a, string[] b); -bool[] operator <(string[] a, string b); -bool[] operator <(string[] a, string[] b); +Label Label(Label L, pair position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +Label Label(string s, string size=<default>, explicit position position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +Label Label(Label L, explicit position position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +Label Label(explicit pair position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +Label Label; +Label Label(string s=<default>, string size=<default>, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +Label Label(string s, string size=<default>, pair position, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +Label Label(Label L, align align=<default>, pen p=<default>, transform embed(transform)=<default>, filltype filltype=<default>); +string font(pen p=<default>); +pen font(string name, string options=<default>); +pen font(string encoding, string family, string series, string shape); +pen font(string name, real size, string options=<default>); +marker markthin(path g, pen p=<default>, real thin(real fraction)=<default>, filltype filltype=<default>); +int intMin; +pen white; +side RightSide; +string replace(string s, string[][] translate); +string replace(string s, string before, string after); +transform fixedscaling(picture pic=<default>, pair min, pair max, pen p=<default>, bool warn=<default>); +pen Symbol(string series=<default>, string shape=<default>); +slice firstcut(path p, path knife); +pen squarecap; +pen squarepen; +pen deepyellow; +real barsize(pen p=<default>); +bool EndArrow(picture, path, pen, marginT(path, pen)); +bool EndArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); +bool EndArcArrow(picture, path, pen, marginT(path, pen)); +bool EndArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); +void tensorshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, path[] b=<default>, pair[][] z=<default>, bool copy=<default>); +void tensorshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, path[] b=<default>, pair[][] z=<default>, bool copy=<default>); +void tensorshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>, pair[] z); +void tensorshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>, pair[] z); +void tensorshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>); +void tensorshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, path b=<default>); +string[] split(string s, string delimiter=<default>); +void addSaveFunction(void s()()); +object embed3(string, frame, string, string, string, light, projection); +filltype NoFill; +real colatitude(triple v, bool warn=<default>); +void label(frame f, string s, string size, transform t, pair position, pair align, pen p); +void label(picture pic=<default>, Label L, align align=<default>, pen p=<default>, filltype filltype=<default>); +void label(pair origin, picture pic=<default>, Label L, align align=<default>, pen p=<default>, filltype filltype=<default>); +void label(frame f, Label L, pair position, align align=<default>, pen p=<default>, filltype filltype=<default>); +void label(picture pic=<default>, Label L, pair position, align align=<default>, pen p=<default>, filltype filltype=<default>); +void label(frame f, Label L, align align=<default>, pen p=<default>, filltype filltype=<default>); +void label(picture pic=<default>, Label L, explicit guide g, align align=<default>, pen p=<default>, filltype filltype=<default>); +void label(picture pic=<default>, Label L, explicit path g, align align=<default>, pen p=<default>, filltype filltype=<default>); +real fabs(real x); +real[] fabs(real[] a); +bool labels(frame f); +light light(pen diffuse=<default>, pen specular=<default>, pen background=<default>, real x, real y, real z); +light light(pen diffuse=<default>, pen specular=<default>, pen background=<default>, real specularfactor=<default> ... triple[] position); +light light(pen[] diffuse, pen[] specular=<default>, pen background=<default>, real specularfactor=<default>, triple[] position); +light light(explicit light light); +real remainder(real x, real y); +int byte(real x); +real camerafactor; +pen lightred; +real labelmargin; +real labelmargin(pen p=<default>); +pen lightblue; +pen lightgreen; +pair right; +string outformat(string format=<default>); +pen lightcyan; +pen lightmagenta; +pen lightyellow; +pen lightgray; +pen lightolive; +pen lightgrey; +string upcase(string s); +pen darkblue; +pen darkbrown; +path[] strokepath(path g, pen p=<default>); +real erf(real x); +void saveline(string name, string value, bool store=<default>); +pen fuchsia; +filltype filltype(int type=<default>, pen fillpen=<default>, pen drawpen=<default>, void fill2(frame f, path[] g, pen fillpen)); +pen Bookman(string series=<default>, string shape=<default>); +path box(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +path box(frame f, Label L, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +path box(pair a, pair b); +frame[] fit(string prefix=<default>, picture[] pictures, string format=<default>, bool view=<default>, string options=<default>, string script=<default>, projection P=<default>); +void seekeof(file f); +path unitcircle; pair[] conj(pair[] a); pair[][] conj(pair[][] a); pair conj(pair z); +pen deepgray; +pen deepgreen; +pen deepgrey; +marker[] Mark; +marker Mark(int n); +real aTan(real x); +void _begingroup3(frame f, string name, real compression, real granularity, bool closed, bool tessellate, bool dobreak, bool nobreak, triple center, int interaction); +path[] MarkPath; +string graphic(string name, string options=<default>); +real aCos(real x); +void texreset(); +string graphicscale(real x); +int[] complement(int[] a, int n); +path[] complement(frame f, path[] g); +pen Cyan; +marginT NoMargin(path, pen); +marginT NoMargin(path, pen)(); +path[][] _texpath(string[] s, pen[] p); +real sinh(real x); +real[] sinh(real[] a); +real[] _cputime(); +position EndPoint; +hsv hsv(real h, real s, real v); +hsv hsv(pen p); +void deconstruct(frame f, frame preamble=<default>, transform t=<default>); +void deconstruct(picture pic=<default>); +int sgn(real x); +node node(void d(frame f, transform t, transform T, pair lb, pair rt), string key=<default>); +pair minAfterTransform(transform t, path[] p); +int seconds(string t=<default>, string format=<default>); +pen cyan; +pen grey; +real cm; +filltype Fill; +filltype Fill(real xmargin=<default>, real ymargin=<default>, pen p=<default>); +pen olive; +pen darkolive; +int ascii(string s); +real arcarrowangle; +real arcarrowfactor; +real mm; +real arcarrowsize(pen p=<default>); +real calculateScaling(string dir, coord[] coords, real size, bool warn=<default>); +real calculateScaling(string dir, coord[] coords, real size, bool warn=<default>); +real calculateScaling(string dir, coord[] m, coord[] M, real size, bool warn=<default>); +real calculateScaling(string dir, coord[] m, coord[] M, real size, bool warn=<default>); +triple gettriple(string name=<default>, triple default=<default>, string prompt=<default>, bool store=<default>); +void drawpixel(frame f, triple v, pen p, real width=<default>); +pen fontsize(real size, real lineskip); +real fontsize(pen p=<default>); +pen fontsize(real size); +void close(file f); +real lineskip(pen p=<default>); +pen dashed; +pair maxAfterTransform(transform t, path[] p); +int[][] triangulate(pair[] z); +void fill(frame f, path[] g, pen p=<default>, bool copy=<default>); +path fill(frame dest, frame src, filltype filltype=<default>, real xmargin=<default>, real ymargin=<default>); +void fill(picture pic=<default>, path[] g, pen p=<default>, bool copy=<default>); +void fill(pair origin, picture pic=<default>, path[] g, pen p=<default>); +pair midpoint(path p); +real exp(real x); +real[] exp(real[] a); +pair exp(explicit pair z); +pen linejoin(int n); +int linejoin(pen p=<default>); +real ldexp(real x, int e); +pen rgba(real[] a); +real[] rgba(pen p); +string time(string format=<default>); +string time(int seconds, string format=<default>); +void prepend(frame dest, frame src); +real pt; +settings settings; +int MoveQuiet; +marginT EndMargin(path, pen); +pen nullpen; side LeftSide; path nullpath; guide[] copy(guide[] a, int depth=<default>); @@ -1439,7 +524,9 @@ triple[] copy(triple[] a, int depth=<default>); bool[] copy(bool[] a, int depth=<default>); real[][] copy(real[][] a, int depth=<default>); pen[] copy(pen[] a, int depth=<default>); -Label[] copy(Label[] a, int depth=<default>); +coord[] copy(coord[] a, int depth=<default>); +object[] copy(object[] a, int depth=<default>); +marker[] copy(marker[] a, int depth=<default>); picture[] copy(picture[] a, int depth=<default>); pen[][] copy(pen[][] a, int depth=<default>); path[] copy(path[] a, int depth=<default>); @@ -1451,10 +538,8 @@ frame[] copy(frame[] a, int depth=<default>); pair[] copy(pair[] a, int depth=<default>); bool3[] copy(bool3[] a, int depth=<default>); coord[] copy(coord[] a, int depth=<default>); -coord[] copy(coord[] a, int depth=<default>); -object[] copy(object[] a, int depth=<default>); -marker[] copy(marker[] a, int depth=<default>); Legend[] copy(Legend[] a, int depth=<default>); +Label[] copy(Label[] a, int depth=<default>); pair[][] copy(pair[][] a, int depth=<default>); real[] abs(pair[] a); real[] abs(triple[] a); @@ -1463,134 +548,311 @@ real[] abs(real[] a); real abs(pair z); real abs(triple v); int abs(int x); -void radialshade(frame f, path[] g, bool stroke=<default>, pen pena, pair a, real ra, bool extenda=<default>, pen penb, pair b, real rb, bool extendb=<default>, bool copy=<default>); -void radialshade(picture pic=<default>, path[] g, bool stroke=<default>, pen pena, pair a, real ra, bool extenda=<default>, pen penb, pair b, real rb, bool extendb=<default>, bool copy=<default>); -pair maxbound(pair a, pair b); -triple maxbound(triple a, triple b); -pair maxbound(pair[] a); -pair maxbound(pair[][] a); -pair maxbound(pair[][][] a); -triple maxbound(triple[] a); -triple maxbound(triple[][] a); -triple maxbound(triple[][][] a); -pair minbound(pair a, pair b); -triple minbound(triple a, triple b); -pair minbound(pair[] a); -pair minbound(pair[][] a); -pair minbound(pair[][][] a); -triple minbound(triple[] a); -triple minbound(triple[][] a); -triple minbound(triple[][][] a); -real operator /(real a, real b); -real[] operator /(real a, real[] b); -real[] operator /(real[] a, real b); -real[] operator /(real[] a, real[] b); -real[][] operator /(real[][] a, real b); -pair operator /(pair a, pair b); -pair[] operator /(pair a, pair[] b); -pair[] operator /(pair[] a, pair b); -pair[] operator /(pair[] a, pair[] b); -pair[][] operator /(pair[][] a, pair b); -triple[] operator /(triple[] a, real b); -real operator /(int a, int b); -real[] operator /(int[] a, int b); -real[] operator /(int a, int[] b); -real[] operator /(int[] a, int[] b); -triple operator /(triple v, real x); -real interp(real a, real b, real t); -pair interp(explicit pair a, explicit pair b, real t); -triple interp(triple a, triple b, real t); -pen interp(pen a, pen b, real t); -int operator *(int a, int b); -int[] operator *(int a, int[] b); -int[] operator *(int[] a, int b); -int[] operator *(int[] a, int[] b); -int[][] operator *(int a, int[][] b); -int[][] operator *(int[][] a, int b); -real operator *(real a, real b); -real[] operator *(real a, real[] b); -real[] operator *(real[] a, real b); -real[] operator *(real[] a, real[] b); -real[][] operator *(real a, real[][] b); -real[][] operator *(real[][] a, real b); -pair operator *(pair a, pair b); -pair[] operator *(pair a, pair[] b); -pair[] operator *(pair[] a, pair b); -pair[] operator *(pair[] a, pair[] b); -pair[][] operator *(pair a, pair[][] b); -pair[][] operator *(pair[][] a, pair b); -triple[] operator *(real a, triple[] b); -triple[][] operator *(real a, triple[][] b); -triple[] operator *(triple[] a, real b); -triple[][] operator *(triple[][] a, real b); -pen operator *(real a, pen b); -pen operator *(pen a, real b); -transform operator *(transform a, transform b); -pair operator *(transform t, pair z); -path operator *(transform t, path g); -pen operator *(transform t, pen p); -frame operator *(transform t, frame f); -frame operator *(real[][] t, frame f); -real[] operator *(real[][] a, real[] b); -real[] operator *(real[] a, real[][] b); -int[][] operator *(int[][] a, int[][] b); -real[][] operator *(real[][] a, real[][] b); -pair[][] operator *(pair[][] a, pair[][] b); -triple operator *(real[][] t, triple v); -triple operator *(real x, triple v); -triple operator *(triple v, real x); -path3 operator *(real[][] t, path3 g); -picture operator *(transform t, picture orig); -object operator *(transform t, explicit object F); -bounds operator *(transform t, bounds b); -Label operator *(transform t, Label L); -path[] operator *(transform t, explicit path[] p); -pair[] operator *(transform t, pair[] z); -picture operator *(real[][] t, picture orig); -side operator *(real x, side s); -Label operator *(real[][] t, Label L); +pen pink; +real inches; +path ellipse(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +path ellipse(frame f, Label L, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +path ellipse(pair c, real a, real b); +pair getpair(string name=<default>, pair default=<default>, string prompt=<default>, bool store=<default>); +void axialshade(frame f, path[] g, bool stroke=<default>, pen pena, pair a, bool extenda=<default>, pen penb, pair b, bool extendb=<default>, bool copy=<default>); +void axialshade(picture pic=<default>, path[] g, bool stroke=<default>, pen pena, pair a, bool extenda=<default>, pen penb, pair b, bool extendb=<default>, bool copy=<default>); +string locale(string s=<default>); +real dirtime(path p, pair z); +void copyPairOrTriple(pairOrTriple dest, pairOrTriple src); +real[] colors(pen p); +void filloutside(picture pic=<default>, path[] g, pen p=<default>, bool copy=<default>); +void filloutside(frame f, path[] g, pen p=<default>, bool copy=<default>); +pen[] colorPen; +real _findroot(real f(real), real a, real b, real tolerance, real fa, real fb); +pen colorless(pen p); +pen solid; +string colorspace(pen p); +void warn(string s); +pen deepblue; +pen palered; +real[] map(real f(pair), pair[] a); +int[] map(int f(real), real[] a); +bool3[] map(bool3 f(bool3), bool3[] a); +frame[] map(frame f(frame), frame[] a); +coord[] map(coord f(coord), coord[] a); +pen[][] map(pen[] f(pen[]), pen[][] a); +triple[] map(triple f(triple), triple[] a); +pen[] map(pen f(pen), pen[] a); +coord[] map(coord f(coord), coord[] a); +Legend[] map(Legend f(Legend), Legend[] a); +Label[] map(Label f(Label), Label[] a); +pair[] map(pair f(pair), pair[] a); +object[] map(object f(object), object[] a); +string[] map(string f(string), string[] a); +void()()[] map(void f()()(void()()), void()()[] a); +pair[][] map(pair[] f(pair[]), pair[][] a); +real[] map(real f(real), real[] a); +marker[] map(marker f(marker), marker[] a); +picture[] map(picture f(picture), picture[] a); +int[] map(int f(int), int[] a); +string[][] map(string[] f(string[]), string[][] a); +bool[] map(bool f(bool), bool[] a); +path[] map(path f(path), path[] a); +real[][] map(real[] f(real[]), real[][] a); +guide[] map(guide f(guide), guide[] a); +path unstraighten(path p); +path3 unstraighten(path3 p); +void _image(frame f, real[][] data, pair initial, pair final, pen[] palette=<default>, transform t=<default>, bool copy=<default>, bool antialias=<default>); +void _image(frame f, pen[][] data, pair initial, pair final, transform t=<default>, bool copy=<default>, bool antialias=<default>); +void _image(frame f, pen f(int, int), int width, int height, pair initial, pair final, transform t=<default>, bool antialias=<default>); +pair arcpoint(path p, real L); +pen Pen(int n); +int rfind(string s, string t, int pos=<default>); +pair minratio(frame f); +pair minratio(triple[][] p, pair b); +pair minratio(path3 g); +string toplocation(); +int[] sequence(int n); +pen[][] sequence(pen[] f(int), int n); +coord[] sequence(coord f(int), int n); +object[] sequence(object f(int), int n); +marker[] sequence(marker f(int), int n); +picture[] sequence(picture f(int), int n); +int[] sequence(int f(int), int n); +string[][] sequence(string[] f(int), int n); +pair[] sequence(pair f(int), int n); +guide[] sequence(guide f(int), int n); +pen[] sequence(pen f(int), int n); +void()()[] sequence(void f()()(int), int n); +bool[] sequence(bool f(int), int n); +string[] sequence(string f(int), int n); +pair[][] sequence(pair[] f(int), int n); +bool3[] sequence(bool3 f(int), int n); +coord[] sequence(coord f(int), int n); +Legend[] sequence(Legend f(int), int n); +Label[] sequence(Label f(int), int n); +real[][] sequence(real[] f(int), int n); +real[] sequence(real f(int), int n); +int[] sequence(int n, int m); +triple[] sequence(triple f(int), int n); +path[] sequence(path f(int), int n); +frame[] sequence(frame f(int), int n); +triple minbezier(triple[][] p, triple b); +path trim(path g, real begin, real end); +marginT DotMargin(path, pen)(real begin, real end); +marginT DotMargin(path, pen); +marginT DotMargins(path, pen); +string string(int x); +string string(real x, int digits=<default>); +string cd(string s=<default>); +int size(guide g); +pair size(frame f); +int size(path p); +int size(path[] p); +int size(path3 p); +void size(picture dest, picture src); +pair size(picture pic, bool user=<default>); +void size(picture pic=<default>, transform t); +void size(picture pic=<default>, real x, real y=<default>, bool keepAspect=<default>); +void size(picture pic=<default>, real xsize, real ysize, pair min, pair max); +void clear(file f); +void clear(string file, int line); +void clear(); +void clear(string file, string text); +pen mediumred; +pen mediumblue; +pen mediumgreen; +pen mediumcyan; +pen mediummagenta; +pair arcdir(path p, real L); +pen mediumyellow; +pen mediumgray; +string downcase(string s); +pen mediumgrey; +transform transform(pen p); +string readline(string prompt=<default>, string name=<default>, bool tabcompletion=<default>); +void beep(); +pair relpoint(path p, real l); +pair[][] transpose(pair[][] a); +pen[][] transpose(pen[][] a); +string[][] transpose(string[][] a); +real[][] transpose(real[][] a); +pen overwrite(int n); +int overwrite(pen p=<default>); +pen linewidth(real x); +real linewidth(pen p=<default>); +transformation transformation(real[][] modelview); +transformation transformation(real[][] modelview, real[][] projection); +pair maxratio(frame f); +pair maxratio(triple[][] p, pair b); +pair maxratio(path3 g); +triple maxbezier(triple[][] p, triple b); +void layer(frame f); +void layer(picture pic=<default>); +void DOSnewl(file file); +pen cmyk(pen p); +pen cmyk(real c, real m, real y, real k); +pen blue; +pen evenodd; +int precision(file f=<default>, int digits=<default>); +path3 path3(triple[] pre, triple[] point, triple[] post, bool[] straight, bool cyclic); +bool piecewisestraight(path p); +bool piecewisestraight(path3 p); +void stop(string file, int line, code s=<default>); +void stop(string file, string text, code s=<default>); +pair reldir(path p, real l); +pen TimesRoman(string series=<default>, string shape=<default>); +slice cut(path p, path knife, int n); +bool is3D(frame f); +bool is3D(string format=<default>); +void add(frame dest, frame src); +void add(picture dest=<default>, frame src, pair position, pair align, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(frame dest, frame src, pair position, pair align, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(picture src, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(picture pic=<default>, void d(frame f, transform t), bool exact=<default>); +void add(picture pic=<default>, void d(frame f, real[][] t, picture pic, projection P), bool exact=<default>); +void add(picture pic=<default>, void d(picture, real[][]), bool exact=<default>); +void add(picture pic=<default>, Label L); +void add(picture dest, picture src, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(picture dest, picture src, pair position, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(picture dest=<default>, object F, pair position=<default>, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(frame dest, frame src, filltype filltype, bool above=<default>); +void add(frame dest, frame src, bool group, filltype filltype=<default>, bool above=<default>); +void add(frame dest, frame src, pair position, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(picture dest=<default>, frame src, pair position=<default>, bool group=<default>, filltype filltype=<default>, bool above=<default>); +void add(picture pic=<default>, void d(picture, transform), bool exact=<default>); +void add(frame f, transform t=<default>, Label L); +void add(picture src, pair position, bool group=<default>, filltype filltype=<default>, bool above=<default>); +plain plain; +void purge(int divisor=<default>); +int Round(real x); +real sqrt(real x); +real[] sqrt(real[] a); +pair sqrt(explicit pair z); +string[] spinner; +real[] times(path p, real x); +real[] times(path p, explicit pair z); +void drawbeziertriangle(frame f, triple[][] p, triple center, bool straight, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] colors, int interaction, bool prc=<default>); +void Draw(picture pic=<default>, path g, pen p=<default>); +filltype Draw; +void Draw(picture pic=<default>, explicit path[] g, pen p=<default>); +filltype Draw(real xmargin=<default>, real ymargin=<default>, pen p=<default>); +void tab(file file); +plain_scaling plain_scaling; +string file(string s); +plain_bounds plain_bounds; +string outprefix(string prefix=<default>); +object object(Label L, path e(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>), real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +object object(frame f); +object object(Label L); +file stdin; +void()()[] array(int n, void value()(), int depth=<default>); +bool[] array(int n, bool value, int depth=<default>); +string[] array(int n, string value, int depth=<default>); +pair[][] array(int n, pair[] value, int depth=<default>); +bool3[] array(int n, bool3 value, int depth=<default>); +coord[] array(int n, coord value, int depth=<default>); +Legend[] array(int n, Legend value, int depth=<default>); +Label[] array(int n, Label value, int depth=<default>); +real[][] array(int n, real[] value, int depth=<default>); +real[] array(int n, real value, int depth=<default>); +triple[] array(int n, triple value, int depth=<default>); +path[] array(int n, path value, int depth=<default>); +frame[] array(int n, frame value, int depth=<default>); +pen[][] array(int n, pen[] value, int depth=<default>); +coord[] array(int n, coord value, int depth=<default>); +object[] array(int n, object value, int depth=<default>); +marker[] array(int n, marker value, int depth=<default>); +picture[] array(int n, picture value, int depth=<default>); +int[] array(int n, int value, int depth=<default>); +string[][] array(int n, string[] value, int depth=<default>); +pair[] array(int n, pair value, int depth=<default>); +guide[] array(int n, guide value, int depth=<default>); +pen[] array(int n, pen value, int depth=<default>); +string[] array(string s); +bool BeginBar(picture, path, pen, marginT(path, pen)); +bool BeginBar(picture, path, pen, marginT(path, pen))(real size=<default>); +triple perp(triple v, triple u); +int find(bool[] a, int n=<default>); +int find(string s, string t, int pos=<default>); +position BeginPoint; +marginT BeginMargin(path, pen); +path buildcycle(... path[] p); +bool BeginArrow(picture, path, pen, marginT(path, pen)); +bool BeginArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); +marginT BeginPenMargin(path, pen); +int round(real x); +marginT BeginDotMargin(path, pen); +bool BeginArcArrow(picture, path, pen, marginT(path, pen)); +bool BeginArcArrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); +pen roundcap; +void buildRestoreThunk()(); +pen roundjoin; +int sourceline(string file, string text); +void buildRestoreDefaults()(); +path roundbox(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +path roundbox(frame f, Label L, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +real asin(real x); +real[] asin(real[] a); +pair endpoint(path p); real latitude(triple v, bool warn=<default>); int sum(int[] a); real sum(real[] a); pair sum(pair[] a); triple sum(triple[] a); int sum(bool[] a); -bool initialized(int a); -bool initialized(real a); -bool initialized(pair a); -bool initialized(triple a); -int operator -(int a, int b); -int[] operator -(int a, int[] b); -int[] operator -(int[] a, int b); -int[] operator -(int[] a, int[] b); -int[][] operator -(int[][] a, int[][] b); -int operator -(int a); -int[] operator -(int[] a); -int[][] operator -(int[][] a); -real operator -(real a, real b); -real[] operator -(real a, real[] b); -real[] operator -(real[] a, real b); -real[] operator -(real[] a, real[] b); -real[][] operator -(real[][] a, real[][] b); -real operator -(real a); -real[] operator -(real[] a); -real[][] operator -(real[][] a); -pair operator -(pair a, pair b); -pair[] operator -(pair a, pair[] b); -pair[] operator -(pair[] a, pair b); -pair[] operator -(pair[] a, pair[] b); -pair[][] operator -(pair[][] a, pair[][] b); -pair operator -(pair a); -pair[] operator -(pair[] a); -pair[][] operator -(pair[][] a); -triple operator -(triple a, triple b); -triple[] operator -(triple a, triple[] b); -triple[] operator -(triple[] a, triple b); -triple[] operator -(triple[] a, triple[] b); -triple[][] operator -(triple[][] a, triple[][] b); -triple operator -(triple a); -triple[] operator -(triple[] a); -triple[][] operator -(triple[][] a); +void xmap(string key, transform t=<default>); +real inf; +real arctime(path p, real l); +real arctime(path3 p, real dval); +pen palemagenta; +void draw(frame f, triple[][] p, triple center, bool straight, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] colors, int interaction, bool prc=<default>); +void draw(frame f, triple[] p, real[] knot, real[] weights=<default>, pen p); +void draw(frame f, triple[][] p, real[] uknot, real[] vknot, real[][] weights=<default>, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] colors); +void draw(frame f, triple[] v, int[][] vi, triple[] n, int[][] ni, pen[] p, real opacity, real shininess, real metallic, real fresnel0, real prcshininess, pen[] c=<default>, int[][] ci=<default>); +void draw(picture pic=<default>, path[] g, pen fillrule=<default>, pen[] p); +object draw(picture pic=<default>, Label L, path e(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>), pair position, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +void draw(frame f, explicit path[] g, pen p=<default>); +void draw(picture pic=<default>, guide[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); +void draw(pair origin, picture pic=<default>, guide[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, explicit path[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); +void draw(pair origin, picture pic=<default>, explicit path[] g, pen p=<default>, Label legend=<default>, marker marker=<default>); +object draw(picture pic=<default>, Label L, path e(frame dest, frame src=<default>, real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>), real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +void draw(frame f, guide[] g, pen p=<default>); +void draw(frame f, path g, pen p=<default>); +void draw(picture pic=<default>, Label L=<default>, path g, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(pair origin, picture pic=<default>, Label L=<default>, path g, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(frame f, path g, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))); +int mantissaBits; +real identity(real x); +real[] identity(real[] a); +transform identity(); +real[][] identity(int n); +transform identity; +real[][] identity4; +marker[] MarkFill; +pen pattern(string s); +string pattern(pen p); +transform invert; +transform inverse(transform t); +real[][] inverse(real[][] a); +pair unit(pair z); +triple unit(triple v); +triple min3(frame f); +triple min3(pen p); +void begin(picture pic=<default>, string name, string id=<default>, bool visible=<default>); +void drawPRCdisk(frame f, real[][] t, pen[] p, real opacity, real shininess); +void drawPRCtube(frame f, path3 center, path3 g, pen[] p, real opacity, real shininess); +int CLZ(int a); +void drawPRCsphere(frame f, real[][] t, bool half=<default>, pen[] p, real opacity, real shininess, int type); +arrowhead DefaultHead; +void drawPRCcylinder(frame f, real[][] t, pen[] p, real opacity, real shininess); +void beginclip(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); +void beginclip(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); +void begingroup(frame f); +void begingroup(picture pic=<default>); +marker nomarker; +pair beginpoint(path p); +real azimuth(triple v, bool warn=<default>); +real angle(pair z, bool warn=<default>); +real angle(transform t); +pair ENE; +frame pack(pair align=<default> ... object[] inset); void gsave(frame f); void write(file file=<default>, string s=<default>, bool x, void suffix(file)=<default> ... bool[]); void write(file file=<default>, string s=<default>, explicit bool[] a ... bool[][]); @@ -1628,188 +890,370 @@ void write(file file=<default>, string s=<default>, pen[] p); void write(void suffix(file)=<default>); void write(pairOrTriple a); void write(file file, string s=<default>, explicit path[] x, void suffix(file)=<default>); -void write(file file=<default>, Label L, void suffix(file)=<default>); +void write(file file=<default>, align align, void suffix(file)=<default>); void write(file file, string s=<default>, cputime c, string format=<default>, void suffix(file)=<default>); void write(string s=<default>, bool3 b, void suffix(file)=<default>); void write(file file, string s=<default>, bool3 b, void suffix(file)=<default>); void write(string s=<default>, explicit guide[] x, void suffix(file)=<default>); -void write(file file=<default>, align align, void suffix(file)=<default>); -bool operator !=(bool a, bool b); -bool[] operator !=(bool a, bool[] b); -bool[] operator !=(bool[] a, bool b); -bool[] operator !=(bool[] a, bool[] b); -bool operator !=(bool[][] a, bool[][] b); -bool operator !=(int a, int b); -bool[] operator !=(int a, int[] b); -bool[] operator !=(int[] a, int b); -bool[] operator !=(int[] a, int[] b); -bool operator !=(int[][] a, int[][] b); -bool operator !=(real a, real b); -bool[] operator !=(real a, real[] b); -bool[] operator !=(real[] a, real b); -bool[] operator !=(real[] a, real[] b); -bool operator !=(real[][] a, real[][] b); -bool operator !=(pair a, pair b); -bool[] operator !=(pair a, pair[] b); -bool[] operator !=(pair[] a, pair b); -bool[] operator !=(pair[] a, pair[] b); -bool operator !=(pair[][] a, pair[][] b); -bool operator !=(triple a, triple b); -bool[] operator !=(triple a, triple[] b); -bool[] operator !=(triple[] a, triple b); -bool[] operator !=(triple[] a, triple[] b); -bool operator !=(triple[][] a, triple[][] b); -bool operator !=(string a, string b); -bool[] operator !=(string a, string[] b); -bool[] operator !=(string[] a, string b); -bool[] operator !=(string[] a, string[] b); -bool operator !=(string[][] a, string[][] b); -bool[] operator !=(pen[] a, pen[] b); -bool operator !=(pen a, pen b); -bool operator !=(transform a, transform b); -bool operator !=(file a, file b); -bool operator !=(path a, path b); -bool operator !=(path3 a, path3 b); -bool operator !=(bool3 a, bool3 b); -bool operator !=(autoscaleT a, autoscaleT b); -bool operator !=(align a, align b); -bool operator !=(processtime a, processtime b); -bool operator !=(scaling a, scaling b); -bool operator !=(scaling a, scaling b); -bool operator !=(bounds a, bounds b); -bool operator !=(light a, light b); -bool operator !=(node a, node b); -bool operator !=(Label a, Label b); -bool operator !=(filltype a, filltype b); -bool operator !=(coords3 a, coords3 b); -bool operator !=(marker a, marker b); -bool operator !=(ScaleT a, ScaleT b); -bool operator !=(side a, side b); -bool operator !=(cputime a, cputime b); -bool operator !=(hsv a, hsv b); -bool operator !=(coords2 a, coords2 b); -bool operator !=(coords2 a, coords2 b); -bool operator !=(transformation a, transformation b); -bool operator !=(pairOrTriple a, pairOrTriple b); -bool operator !=(object a, object b); -bool operator !=(bool3 a, bool b); -bool operator !=(marginT a, marginT b); -bool operator !=(simplex a, simplex b); -bool operator !=(scaleT a, scaleT b); -bool operator !=(arrowhead a, arrowhead b); -bool operator !=(coord a, coord b); -bool operator !=(coord a, coord b); -bool operator !=(Legend a, Legend b); -bool operator !=(position a, position b); -bool operator !=(bool a, bool3 b); -bool operator !=(slice a, slice b); -bool operator !=(freezableBounds a, freezableBounds b); -bool operator !=(projection a, projection b); -bool operator !=(picture a, picture b); -bool operator ==(bool a, bool b); -bool[] operator ==(bool a, bool[] b); -bool[] operator ==(bool[] a, bool b); -bool[] operator ==(bool[] a, bool[] b); -bool operator ==(bool[][] a, bool[][] b); -bool operator ==(int a, int b); -bool[] operator ==(int a, int[] b); -bool[] operator ==(int[] a, int b); -bool[] operator ==(int[] a, int[] b); -bool operator ==(int[][] a, int[][] b); -bool operator ==(real a, real b); -bool[] operator ==(real a, real[] b); -bool[] operator ==(real[] a, real b); -bool[] operator ==(real[] a, real[] b); -bool operator ==(real[][] a, real[][] b); -bool operator ==(pair a, pair b); -bool[] operator ==(pair a, pair[] b); -bool[] operator ==(pair[] a, pair b); -bool[] operator ==(pair[] a, pair[] b); -bool operator ==(pair[][] a, pair[][] b); -bool operator ==(triple a, triple b); -bool[] operator ==(triple a, triple[] b); -bool[] operator ==(triple[] a, triple b); -bool[] operator ==(triple[] a, triple[] b); -bool operator ==(triple[][] a, triple[][] b); -bool operator ==(string a, string b); -bool[] operator ==(string a, string[] b); -bool[] operator ==(string[] a, string b); -bool[] operator ==(string[] a, string[] b); -bool operator ==(string[][] a, string[][] b); -bool[] operator ==(pen[] a, pen[] b); -bool operator ==(pen a, pen b); -bool operator ==(transform a, transform b); -bool operator ==(file a, file b); -bool operator ==(path a, path b); -bool operator ==(path3 a, path3 b); -bool operator ==(bool3 a, bool3 b); -bool operator ==(autoscaleT a, autoscaleT b); -bool operator ==(align a, align b); -bool operator ==(processtime a, processtime b); -bool operator ==(scaling a, scaling b); -bool operator ==(scaling a, scaling b); -bool operator ==(bounds a, bounds b); -bool operator ==(light a, light b); -bool operator ==(node a, node b); -bool operator ==(Label a, Label b); -bool operator ==(filltype a, filltype b); -bool operator ==(coords3 a, coords3 b); -bool operator ==(marker a, marker b); -bool operator ==(ScaleT a, ScaleT b); -bool operator ==(side a, side b); -bool operator ==(cputime a, cputime b); -bool operator ==(hsv a, hsv b); -bool operator ==(coords2 a, coords2 b); -bool operator ==(coords2 a, coords2 b); -bool operator ==(transformation a, transformation b); -bool operator ==(pairOrTriple a, pairOrTriple b); -bool operator ==(object a, object b); -bool operator ==(bool3 a, bool b); -bool operator ==(marginT a, marginT b); -bool operator ==(simplex a, simplex b); -bool operator ==(scaleT a, scaleT b); -bool operator ==(arrowhead a, arrowhead b); -bool operator ==(coord a, coord b); -bool operator ==(coord a, coord b); -bool operator ==(Legend a, Legend b); -bool operator ==(position a, position b); -bool operator ==(bool a, bool3 b); -bool operator ==(slice a, slice b); -bool operator ==(freezableBounds a, freezableBounds b); -bool operator ==(projection a, projection b); -bool operator ==(picture a, picture b); -bool operator ^(bool a, bool b); -bool[] operator ^(bool a, bool[] b); -bool[] operator ^(bool[] a, bool b); -bool[] operator ^(bool[] a, bool[] b); -int operator ^(int a, int b); -int[] operator ^(int a, int[] b); -int[] operator ^(int[] a, int b); -int[] operator ^(int[] a, int[] b); -real operator ^(real a, real b); -real[] operator ^(real a, real[] b); -real[] operator ^(real[] a, real b); -real[] operator ^(real[] a, real[] b); -pair operator ^(pair a, pair b); -pair[] operator ^(pair a, pair[] b); -pair[] operator ^(pair[] a, pair b); -pair[] operator ^(pair[] a, pair[] b); -transform operator ^(transform t, int n); -real operator ^(real x, int y); -pair operator ^(pair z, int y); -bool operator |(bool a, bool b); -bool[] operator |(bool a, bool[] b); -bool[] operator |(bool[] a, bool b); -bool[] operator |(bool[] a, bool[] b); -pen NewCenturySchoolBook(string series=<default>, string shape=<default>); -void()()[] saveFunctions; -bool operator &(bool a, bool b); -bool[] operator &(bool a, bool[] b); -bool[] operator &(bool[] a, bool b); -bool[] operator &(bool[] a, bool[] b); -path operator &(path p, path q); -path3 operator &(path3 p, path3 q); -path operator &(path p, cycleToken tok); +void write(file file=<default>, Label L, void suffix(file)=<default>); +void save()(); +marginT EndPenMargin(path, pen); +pair NNE; +real[] tridiagonal(real[] a, real[] b, real[] c, real[] f); +pen Dotted; +pen Dotted(pen p=<default>); +pair dir(real degrees); +pair dir(explicit pair z); +triple dir(explicit triple z); +triple dir(real colatitude, real longitude); +pair dir(path p, int t, int sign=<default>, bool normalize=<default>); +pair dir(path p, real t, bool normalize=<default>); +triple dir(path3 p, int t, int sign=<default>, bool normalize=<default>); +triple dir(path3 p, real t, bool normalize=<default>); +pair dir(path p); +pair dir(path p, path q); +int[][] diagonal(... int[]); +real[][] diagonal(... real[]); +pair[][] diagonal(... pair[]); +real reltime(path p, real l); +void marknodes(picture pic=<default>, frame f, path g); +real newton(int iterations=<default>, real f(real), real fprime(real), real x, bool verbose=<default>); +real newton(int iterations=<default>, real f(real), real fprime(real), real x1, real x2, bool verbose=<default>); +string TeXify(string s); +bool3 default; +pair[] controlSpecifier(guide g, int t); +void defaultpen(pen p); +pen defaultpen(); +pen defaultpen; +void defaultpen(real w); +transform Slant(transform t); +triple max3(frame f); +triple max3(pen p); +string defaultformat(int n, string trailingzero=<default>, bool fixed=<default>, bool signed=<default>); +string defaultformat; +pen dashdotted; +string defaultseparator; +string asydir(); +string defaultfilename; +real longitude(triple v, bool warn=<default>); +bool Blank(picture, path, pen, marginT(path, pen)); +tensionSpecifier tensionSpecifier(guide g, int t); +marker marker(frame f=<default>, void markroutine(picture pic=<default>, frame f, path g)=<default>, bool above=<default>); +marker marker(path[] g, void markroutine(picture pic=<default>, frame f, path g)=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +int Move; +string location(); +string locatefile(string file); +pen dotted; +string blend(pen p); +arrowhead HookHead; +arrowhead HookHead(real dir=<default>, real barb=<default>); +marker[] concat(... marker[][]); +picture[] concat(... picture[][]); +real[] concat(... real[][]); +pair[] concat(... pair[][]); +object[] concat(... object[][]); +pen[] concat(... pen[][]); +coord[] concat(... coord[][]); +Legend[] concat(... Legend[][]); +Label[] concat(... Label[][]); +path[] concat(... path[][]); +coord[] concat(... coord[][]); +int[] concat(... int[][]); +void()()[] concat(... void()()[][]); +bool3[] concat(... bool3[][]); +string[] concat(... string[][]); +triple[] concat(... triple[][]); +frame[] concat(... frame[][]); +guide[] concat(... guide[][]); +bool[] concat(... bool[][]); +int OR(int a, int b); +real log1p(real x); +real[] log1p(real[] a); +real infinity; +bool alias(pair[][] a, pair[][] b); +bool alias(guide[] a, guide[] b); +bool alias(marginT a, marginT b); +bool alias(coord[] a, coord[] b); +bool alias(light a, light b); +bool alias(align a, align b); +bool alias(processtime a, processtime b); +bool alias(pair[] a, pair[] b); +bool alias(scaling a, scaling b); +bool alias(coord a, coord b); +bool alias(scaleT a, scaleT b); +bool alias(Legend a, Legend b); +bool alias(Label a, Label b); +bool alias(int[] a, int[] b); +bool alias(string[][] a, string[][] b); +bool alias(slice a, slice b); +bool alias(freezableBounds a, freezableBounds b); +bool alias(transformation a, transformation b); +bool alias(picture a, picture b); +bool alias(object[] a, object[] b); +bool alias(marker a, marker b); +bool alias(real[][] a, real[][] b); +bool alias(bool3 a, bool3 b); +bool alias(bool3[] a, bool3[] b); +bool alias(coords3 a, coords3 b); +bool alias(autoscaleT a, autoscaleT b); +bool alias(side a, side b); +bool alias(cputime a, cputime b); +bool alias(string[] a, string[] b); +bool alias(frame[] a, frame[] b); +bool alias(coords2 a, coords2 b); +bool alias(scaling a, scaling b); +bool alias(node a, node b); +bool alias(object a, object b); +bool alias(marker[] a, marker[] b); +bool alias(picture[] a, picture[] b); +bool alias(bool[] a, bool[] b); +bool alias(void()()[] a, void()()[] b); +bool alias(pen[][] a, pen[][] b); +bool alias(filltype a, filltype b); +bool alias(simplex a, simplex b); +bool alias(coord[] a, coord[] b); +bool alias(projection a, projection b); +bool alias(Legend[] a, Legend[] b); +bool alias(Label[] a, Label[] b); +bool alias(arrowhead a, arrowhead b); +bool alias(path[] a, path[] b); +bool alias(triple[] a, triple[] b); +bool alias(coord a, coord b); +bool alias(bounds a, bounds b); +bool alias(ScaleT a, ScaleT b); +bool alias(position a, position b); +bool alias(real[] a, real[] b); +bool alias(pen[] a, pen[] b); +bool alias(hsv a, hsv b); +bool alias(coords2 a, coords2 b); +bool alias(pairOrTriple a, pairOrTriple b); +real pi; +int getint(string name=<default>, int default=<default>, string prompt=<default>, bool store=<default>); +int bitreverse(int a, int bits); +bool IgnoreAspect; +void postscript(frame f, string s); +void postscript(frame f, string s, pair min, pair max); +void postscript(picture pic=<default>, string s, pair min, pair max); +void postscript(picture pic=<default>, string s); +transform slant(real s); +void breakpoint(code s=<default>); +void breakpoints(); +void endgroup(frame f); +void endgroup(picture pic=<default>); +void endgroup3(frame f); +int Floor(real x); +pair gamma(explicit pair z); +real gamma(real x); +real pow10(real x); +real[] pow10(real[] a); +real[][] AtA(real[][] a); +real bp; +int[] sort(int[] a); +int[][] sort(int[][] a); +real[] sort(real[] a); +real[][] sort(real[][] a); +string[] sort(string[] a); +string[][] sort(string[][] a); +coord[] sort(coord[] a, bool less(coord, coord), bool stable=<default>); +object[] sort(object[] a, bool less(object, object), bool stable=<default>); +marker[] sort(marker[] a, bool less(marker, marker), bool stable=<default>); +picture[] sort(picture[] a, bool less(picture, picture), bool stable=<default>); +path[] sort(path[] a, bool less(path, path), bool stable=<default>); +pen[][] sort(pen[][] a, bool less(pen[], pen[]), bool stable=<default>); +pair[][] sort(pair[][] a, bool less(pair[], pair[]), bool stable=<default>); +pen[] sort(pen[] a, bool less(pen, pen), bool stable=<default>); +bool[] sort(bool[] a, bool less(bool, bool), bool stable=<default>); +void()()[] sort(void()()[] a, bool less(void()(), void()()), bool stable=<default>); +frame[] sort(frame[] a, bool less(frame, frame), bool stable=<default>); +bool3[] sort(bool3[] a, bool less(bool3, bool3), bool stable=<default>); +coord[] sort(coord[] a, bool less(coord, coord), bool stable=<default>); +Legend[] sort(Legend[] a, bool less(Legend, Legend), bool stable=<default>); +Label[] sort(Label[] a, bool less(Label, Label), bool stable=<default>); +int[] sort(int[] a, bool less(int, int), bool stable=<default>); +string[][] sort(string[][] a, bool less(string[], string[]), bool stable=<default>); +real[] sort(real[] a, bool less(real, real), bool stable=<default>); +string[] sort(string[] a, bool less(string, string), bool stable=<default>); +pair[] sort(pair[] a, bool less(pair, pair), bool stable=<default>); +real[][] sort(real[][] a, bool less(real[], real[]), bool stable=<default>); +triple[] sort(triple[] a, bool less(triple, triple), bool stable=<default>); +guide[] sort(guide[] a, bool less(guide, guide), bool stable=<default>); +pen salmon; +bool ignore; +pen Pentype(int n); +pen chartreuse; +void latticeshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, transform t=<default>, bool copy=<default>); +void latticeshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[][] p, bool copy=<default>); +pair[] pairs(real[] x, real[] y); +void eval(code s, bool embedded=<default>); +void eval(string s, bool embedded=<default>); +bool Arrow(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>); +bool Arrow(picture, path, pen, marginT(path, pen)); +bool Arrows(picture, path, pen, marginT(path, pen))(arrowhead arrowhead=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>); +bool Arrows(picture, path, pen, marginT(path, pen)); +int tell(file f); +pen Yellow; +pair up; +guide reverse(guide g); +string reverse(string s); +path reverse(path p); +path3 reverse(path3 p); +triple[] reverse(triple[] a); +int[] reverse(int[] a); +real[] reverse(real[] a); +int[] reverse(int n); +string[] reverse(string[] a); +pair[] reverse(pair[] a); +bool[] reverse(bool[] a); +void _labelpath(frame f, string s, string size, path g, string justify, pair offset, pen p); +int floor(real x); +void resetdefaultpen(); +real aSin(real x); +pen darkred; +transform Scale(transform t); +pen mean(pen[] p, real opacity(real[])=<default>); +pen[] mean(pen[][] palette, real opacity(real[])=<default>); +string mktemp(string s); +void sleep(int seconds); +void drawstrokepath(picture pic=<default>, path g, pen strokepen, pen p=<default>); +void arrow(picture pic=<default>, Label L=<default>, pair b, pair dir, real length=<default>, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>); +picture arrow(arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>, bool forwards=<default>, marginT margin(path, pen)=<default>, bool center=<default>); +void unitsize(picture pic=<default>, real x, real y=<default>, real z=<default>); +picture arrow2(arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>); +path unitsquare; +real arrowdir; +real arrowbarb; +pen yellow; +int delete(string s); +pen miterjoin; +arrowhead SimpleHead; +real arrowangle; +real arrowlength; +pen miterlimit(real x); +real miterlimit(pen p=<default>); +real arrowfactor; +real arrowsize(pen p=<default>); +real Tan(real deg); +real arrowsizelimit; +real arrow2sizelimit; +real arrowhookfactor; +real arrowtexfactor; +void comma(file file); +void deletepreamble(); +real[] arrowbasepoints(path base, path left, path right, real default=<default>); +path arrowbase(path r, pair y, real t, real size); +int choose(int n, int k); +real hypot(real x, real y); +path[] _strokepath(path g, pen p=<default>); +void pause(string w=<default>); +int ocgindex; +pen springgreen; +pen brown; +bool scale(pen p); +transform scale(real x); +transform scale(real x, real y); +real[][] scale(real x, real y, real z); +scaleT scaleT(real T(real x), real Tinv(real x), bool logarithmic=<default>, bool automin=<default>, bool automax=<default>); +string baseline(string s, string template=<default>); +int[] findall(bool[] a); +real[][] scale3(real s); +int AND(int a, int b); +real polar(triple v, bool warn=<default>); +real radius(path p, real t); +real radius(path3 p, real t); +real radius(triple z0, triple c0, triple c1, triple z1, real t); +transform scaleless(transform t); +void makedraw(frame f, path g, pen p, int depth=<default>); +simplex simplex(real[] c, real[][] A, real[] b, bool phase1=<default>, bool dual=<default>); +simplex simplex(real[] c, real[][] A, int[] s, real[] b); +simplex simplex; +real nan; +pair down; +path arc(pair c, real r, real angle1, real angle2); +path arc(pair c, explicit pair z1, explicit pair z2, bool direction=<default>); +path arc(pair c, real r, real angle1, real angle2, bool direction); +real[] cubicroots(real a, real b, real c, real d); +pen green; +real tan(real x); +real[] tan(real[] a); +pen longdashed; +pair point(guide g, int t); +pair point(path p, int t); +pair point(path p, real t); +triple point(path3 p, int t); +triple point(path3 p, real t); +pair point(picture pic=<default>, pair dir, bool user=<default>); +pair point(object F, pair dir, transform t=<default>); +pair point(frame f, pair dir); +void progress(bool3 init=<default>); +pen longdashdotted; +void usepackage(string s, string options=<default>); +void drawarrow(frame f, arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, position position=<default>, bool forwards=<default>, marginT margin(path, pen)=<default>, bool center=<default>); +void drawarrow2(frame f, arrowhead arrowhead=<default>, path g, pen p=<default>, real size=<default>, real angle=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>); +pen fillrule(int n); +int fillrule(pen p); +pair ESE; +pair project(triple v, real[][] t); +bool prc(string format=<default>); +projection projection(triple camera, triple up=<default>, triple target=<default>, triple normal=<default>, real zoom=<default>, real angle=<default>, pair viewportshift=<default>, bool showtarget=<default>, bool autoadjust=<default>, bool center=<default>, transformation projector(triple camera, triple up, triple target)); +void endl(file file); +marginT TrueMargin(path, pen)(real begin, real end); +pair bezier(pair a, pair b, pair c, pair d, real t); +triple bezier(triple a, triple b, triple c, triple d, real t); +pair SSE; +pair bezierP(pair a, pair b, pair c, pair d, real t); +triple bezierP(triple a, triple b, triple c, triple d, real t); +pair bezierPP(pair a, pair b, pair c, pair d, real t); +triple bezierPP(triple a, triple b, triple c, triple d, real t); +real[] _projection(); +pair bezierPPP(pair a, pair b, pair c, pair d); +triple bezierPPP(triple a, triple b, triple c, triple d); +real Jn(int n, real x); +int randMax; +path nurb(pair z0, pair z1, pair z2, pair z3, real w0, real w1, real w2, real w3, int m); +align NoAlign; +bool EndBar(picture, path, pen, marginT(path, pen)); +bool EndBar(picture, path, pen, marginT(path, pen))(real size=<default>); +Legend Legend(string label, pen plabel=<default>, pen p=<default>, frame mark=<default>, bool above=<default>); +real Yn(int n, real x); +int NOT(int a); +pen[] monoPen; +bool CW; +bool all(bool[] a); +real atanh(real x); +real[] atanh(real[] a); +frame UpsideDown(frame f); +pair realmult(pair z, pair w); +triple realmult(triple u, triple v); +real acosh(real x); +real[] acosh(real[] a); +real realEpsilon; +pair NW; +real norm(real[] a); +real norm(real[][] a); +real norm(triple[][] a); +int length(guide g); +int length(string s); +real length(pair z); +real length(triple v); +int length(path p); +int length(path3 p); +pair SW; +void flush(file f); +pen thin(); +pen palecyan; +void warning(string s, string t, bool position=<default>); +frame legend(picture pic=<default>, int perline=<default>, real xmargin=<default>, real ymargin=<default>, real linelength=<default>, real hskip=<default>, real vskip=<default>, real maxwidth=<default>, real maxheight=<default>, bool hstretch=<default>, bool vstretch=<default>, pen p=<default>); +picture legend(Legend[] Legend, int perline=<default>, real linelength, real hskip, real vskip, real maxwidth=<default>, real maxheight=<default>, bool hstretch=<default>, bool vstretch=<default>); +real Degrees(real radians); +picture legenditem(Legend legenditem, real linelength); +real legendhskip; +real legendvskip; +pen darkmagenta; +real change2(triple[][] a); +real legendmargin; +bool None(picture, path, pen, marginT(path, pen)); +real dotfactor; +real legendlinelength; string minipage(string s, real width=<default>); real legendmaxrelativewidth; real cross(explicit pair z, explicit pair w); @@ -1852,6 +1296,132 @@ pen operator +(real w, pen p); string operator +(... string[] a); marginT operator +(path, pen)(marginT ma(path, pen), marginT mb(path, pen)); pen[] operator +(pen[] a, pen b); +int operator -(int a, int b); +int[] operator -(int a, int[] b); +int[] operator -(int[] a, int b); +int[] operator -(int[] a, int[] b); +int[][] operator -(int[][] a, int[][] b); +int operator -(int a); +int[] operator -(int[] a); +int[][] operator -(int[][] a); +real operator -(real a, real b); +real[] operator -(real a, real[] b); +real[] operator -(real[] a, real b); +real[] operator -(real[] a, real[] b); +real[][] operator -(real[][] a, real[][] b); +real operator -(real a); +real[] operator -(real[] a); +real[][] operator -(real[][] a); +pair operator -(pair a, pair b); +pair[] operator -(pair a, pair[] b); +pair[] operator -(pair[] a, pair b); +pair[] operator -(pair[] a, pair[] b); +pair[][] operator -(pair[][] a, pair[][] b); +pair operator -(pair a); +pair[] operator -(pair[] a); +pair[][] operator -(pair[][] a); +triple operator -(triple a, triple b); +triple[] operator -(triple a, triple[] b); +triple[] operator -(triple[] a, triple b); +triple[] operator -(triple[] a, triple[] b); +triple[][] operator -(triple[][] a, triple[][] b); +triple operator -(triple a); +triple[] operator -(triple[] a); +triple[][] operator -(triple[][] a); +int operator *(int a, int b); +int[] operator *(int a, int[] b); +int[] operator *(int[] a, int b); +int[] operator *(int[] a, int[] b); +int[][] operator *(int a, int[][] b); +int[][] operator *(int[][] a, int b); +real operator *(real a, real b); +real[] operator *(real a, real[] b); +real[] operator *(real[] a, real b); +real[] operator *(real[] a, real[] b); +real[][] operator *(real a, real[][] b); +real[][] operator *(real[][] a, real b); +pair operator *(pair a, pair b); +pair[] operator *(pair a, pair[] b); +pair[] operator *(pair[] a, pair b); +pair[] operator *(pair[] a, pair[] b); +pair[][] operator *(pair a, pair[][] b); +pair[][] operator *(pair[][] a, pair b); +triple[] operator *(real a, triple[] b); +triple[][] operator *(real a, triple[][] b); +triple[] operator *(triple[] a, real b); +triple[][] operator *(triple[][] a, real b); +pen operator *(real a, pen b); +pen operator *(pen a, real b); +transform operator *(transform a, transform b); +pair operator *(transform t, pair z); +path operator *(transform t, path g); +pen operator *(transform t, pen p); +frame operator *(transform t, frame f); +frame operator *(real[][] t, frame f); +real[] operator *(real[][] a, real[] b); +real[] operator *(real[] a, real[][] b); +int[][] operator *(int[][] a, int[][] b); +real[][] operator *(real[][] a, real[][] b); +pair[][] operator *(pair[][] a, pair[][] b); +triple operator *(real[][] t, triple v); +triple operator *(real x, triple v); +triple operator *(triple v, real x); +path3 operator *(real[][] t, path3 g); +side operator *(real x, side s); +Label operator *(real[][] t, Label L); +picture operator *(transform t, picture orig); +object operator *(transform t, explicit object F); +path[] operator *(transform t, explicit path[] p); +Label operator *(transform t, Label L); +pair[] operator *(transform t, pair[] z); +bounds operator *(transform t, bounds b); +picture operator *(real[][] t, picture orig); +bool operator init(); +int operator init(); +real operator init(); +string operator init(); +pair operator init(); +triple operator init(); +transform operator init(); +guide operator init(); +path operator init(); +path3 operator init(); +pen operator init(); +frame operator init(); +file operator init(); +marginT operator init(); +light operator init(); +align operator init(); +processtime operator init(); +filltype operator init(); +simplex operator init(); +projection operator init(); +arrowhead operator init(); +slice operator init(); +transformation operator init(); +picture operator init(); +marker operator init(); +hsv operator init(); +coords2 operator init(); +pairOrTriple operator init(); +coords2 operator init(); +scaling operator init(); +node operator init(); +object operator init(); +scaling operator init(); +coord operator init(); +scaleT operator init(); +Legend operator init(); +Label operator init(); +coord operator init(); +bounds operator init(); +ScaleT operator init(); +position operator init(); +bool3 operator init(); +coords3 operator init(); +autoscaleT operator init(); +side operator init(); +cputime operator init(); real operator cast(int); pair operator cast(int); pair operator cast(real); @@ -1893,33 +1463,33 @@ string[][][] operator cast(file); guide operator cast(cycleToken tok); guide operator cast(curlSpecifier spec); guide operator cast(tensionSpecifier t); -object operator cast(Label L); -Label operator cast(object F); +align operator cast(side side); guide[] operator cast(path[] g); +frame operator cast(object F); hsv operator cast(pen p); +bool3[] operator cast(bool[] b); position operator cast(pair x); +object operator cast(Label L); +Label operator cast(object F); pair operator cast(position P); -bool3[] operator cast(bool[] b); object operator cast(frame f); -align operator cast(pair dir); guide[] operator cast(pair[] z); path[] operator cast(guide[] g); bool operator cast(bool3 b); -align operator cast(triple dir); +align operator cast(pair dir); path[] operator cast(guide g); path[] operator cast(pair[] z); +align operator cast(triple dir); path[] operator cast(path p); bool[] operator cast(bool3[] b); +bool3 operator cast(bool b); position operator cast(int x); object operator cast(string s); -align operator cast(side side); -bool3 operator cast(bool b); -position operator cast(real x); -Label operator cast(string s); pair operator cast(pairOrTriple a); triple operator cast(pairOrTriple a); pen operator cast(hsv hsv); -frame operator cast(object F); +position operator cast(real x); +Label operator cast(string s); pen deepred; bool error(file f); string operator ecast(int); @@ -1934,90 +1504,521 @@ int operator ecast(real); int[] operator ecast(real[]); real[] operator ecast(string[] a); int[] operator ecast(string[] a); -bool operator init(); -int operator init(); -real operator init(); -string operator init(); -pair operator init(); -triple operator init(); -transform operator init(); -guide operator init(); -path operator init(); -path3 operator init(); -pen operator init(); -frame operator init(); -file operator init(); -marginT operator init(); -simplex operator init(); -scaleT operator init(); -arrowhead operator init(); -filltype operator init(); -coords3 operator init(); -marker operator init(); -slice operator init(); -projection operator init(); -picture operator init(); -hsv operator init(); -coords2 operator init(); -coords2 operator init(); -transformation operator init(); -pairOrTriple operator init(); -object operator init(); -scaling operator init(); -scaling operator init(); -bounds operator init(); -light operator init(); -node operator init(); -Label operator init(); -coord operator init(); -coord operator init(); -Legend operator init(); -position operator init(); -ScaleT operator init(); -side operator init(); -cputime operator init(); -bool3 operator init(); -autoscaleT operator init(); -align operator init(); -processtime operator init(); +pair operator tuple(real x, real y); +triple operator tuple(real x, real y, real z); +transform operator tuple(real x, real y, real xx, real xy, real yx, real yy); +real operator /(real a, real b); +real[] operator /(real a, real[] b); +real[] operator /(real[] a, real b); +real[] operator /(real[] a, real[] b); +real[][] operator /(real[][] a, real b); +pair operator /(pair a, pair b); +pair[] operator /(pair a, pair[] b); +pair[] operator /(pair[] a, pair b); +pair[] operator /(pair[] a, pair[] b); +pair[][] operator /(pair[][] a, pair b); +triple[] operator /(triple[] a, real b); +real operator /(int a, int b); +real[] operator /(int[] a, int b); +real[] operator /(int a, int[] b); +real[] operator /(int[] a, int[] b); +triple operator /(triple v, real x); +path[] texpath(string s, pen p, bool tex=<default>, bool bbox=<default>); +path[] texpath(Label L, bool tex=<default>, bool bbox=<default>); +bool uptodate(); +int operator #(int a, int b); +int[] operator #(int a, int[] b); +int[] operator #(int[] a, int b); +int[] operator #(int[] a, int[] b); +int operator %(int a, int b); +int[] operator %(int a, int[] b); +int[] operator %(int[] a, int b); +int[] operator %(int[] a, int[] b); +real operator %(real a, real b); +real[] operator %(real a, real[] b); +real[] operator %(real[] a, real b); +real[] operator %(real[] a, real[] b); +bool operator ^(bool a, bool b); +bool[] operator ^(bool a, bool[] b); +bool[] operator ^(bool[] a, bool b); +bool[] operator ^(bool[] a, bool[] b); +int operator ^(int a, int b); +int[] operator ^(int a, int[] b); +int[] operator ^(int[] a, int b); +int[] operator ^(int[] a, int[] b); +real operator ^(real a, real b); +real[] operator ^(real a, real[] b); +real[] operator ^(real[] a, real b); +real[] operator ^(real[] a, real[] b); +pair operator ^(pair a, pair b); +pair[] operator ^(pair a, pair[] b); +pair[] operator ^(pair[] a, pair b); +pair[] operator ^(pair[] a, pair[] b); +transform operator ^(transform t, int n); +real operator ^(real x, int y); +pair operator ^(pair z, int y); +bool operator ==(bool a, bool b); +bool[] operator ==(bool a, bool[] b); +bool[] operator ==(bool[] a, bool b); +bool[] operator ==(bool[] a, bool[] b); +bool operator ==(bool[][] a, bool[][] b); +bool operator ==(int a, int b); +bool[] operator ==(int a, int[] b); +bool[] operator ==(int[] a, int b); +bool[] operator ==(int[] a, int[] b); +bool operator ==(int[][] a, int[][] b); +bool operator ==(real a, real b); +bool[] operator ==(real a, real[] b); +bool[] operator ==(real[] a, real b); +bool[] operator ==(real[] a, real[] b); +bool operator ==(real[][] a, real[][] b); +bool operator ==(pair a, pair b); +bool[] operator ==(pair a, pair[] b); +bool[] operator ==(pair[] a, pair b); +bool[] operator ==(pair[] a, pair[] b); +bool operator ==(pair[][] a, pair[][] b); +bool operator ==(triple a, triple b); +bool[] operator ==(triple a, triple[] b); +bool[] operator ==(triple[] a, triple b); +bool[] operator ==(triple[] a, triple[] b); +bool operator ==(triple[][] a, triple[][] b); +bool operator ==(string a, string b); +bool[] operator ==(string a, string[] b); +bool[] operator ==(string[] a, string b); +bool[] operator ==(string[] a, string[] b); +bool operator ==(string[][] a, string[][] b); +bool[] operator ==(pen[] a, pen[] b); +bool operator ==(pen a, pen b); +bool operator ==(transform a, transform b); +bool operator ==(file a, file b); +bool operator ==(path a, path b); +bool operator ==(path3 a, path3 b); +bool operator ==(bool3 a, bool3 b); +bool operator ==(coords3 a, coords3 b); +bool operator ==(autoscaleT a, autoscaleT b); +bool operator ==(side a, side b); +bool operator ==(cputime a, cputime b); +bool operator ==(coords2 a, coords2 b); +bool operator ==(scaling a, scaling b); +bool operator ==(node a, node b); +bool operator ==(object a, object b); +bool operator ==(filltype a, filltype b); +bool operator ==(simplex a, simplex b); +bool operator ==(projection a, projection b); +bool operator ==(arrowhead a, arrowhead b); +bool operator ==(coord a, coord b); +bool operator ==(bounds a, bounds b); +bool operator ==(ScaleT a, ScaleT b); +bool operator ==(position a, position b); +bool operator ==(hsv a, hsv b); +bool operator ==(coords2 a, coords2 b); +bool operator ==(pairOrTriple a, pairOrTriple b); +bool operator ==(bool3 a, bool b); +bool operator ==(marginT a, marginT b); +bool operator ==(light a, light b); +bool operator ==(align a, align b); +bool operator ==(processtime a, processtime b); +bool operator ==(scaling a, scaling b); +bool operator ==(coord a, coord b); +bool operator ==(scaleT a, scaleT b); +bool operator ==(Legend a, Legend b); +bool operator ==(Label a, Label b); +bool operator ==(bool a, bool3 b); +bool operator ==(slice a, slice b); +bool operator ==(freezableBounds a, freezableBounds b); +bool operator ==(transformation a, transformation b); +bool operator ==(picture a, picture b); +bool operator ==(marker a, marker b); +bool operator !=(bool a, bool b); +bool[] operator !=(bool a, bool[] b); +bool[] operator !=(bool[] a, bool b); +bool[] operator !=(bool[] a, bool[] b); +bool operator !=(bool[][] a, bool[][] b); +bool operator !=(int a, int b); +bool[] operator !=(int a, int[] b); +bool[] operator !=(int[] a, int b); +bool[] operator !=(int[] a, int[] b); +bool operator !=(int[][] a, int[][] b); +bool operator !=(real a, real b); +bool[] operator !=(real a, real[] b); +bool[] operator !=(real[] a, real b); +bool[] operator !=(real[] a, real[] b); +bool operator !=(real[][] a, real[][] b); +bool operator !=(pair a, pair b); +bool[] operator !=(pair a, pair[] b); +bool[] operator !=(pair[] a, pair b); +bool[] operator !=(pair[] a, pair[] b); +bool operator !=(pair[][] a, pair[][] b); +bool operator !=(triple a, triple b); +bool[] operator !=(triple a, triple[] b); +bool[] operator !=(triple[] a, triple b); +bool[] operator !=(triple[] a, triple[] b); +bool operator !=(triple[][] a, triple[][] b); +bool operator !=(string a, string b); +bool[] operator !=(string a, string[] b); +bool[] operator !=(string[] a, string b); +bool[] operator !=(string[] a, string[] b); +bool operator !=(string[][] a, string[][] b); +bool[] operator !=(pen[] a, pen[] b); +bool operator !=(pen a, pen b); +bool operator !=(transform a, transform b); +bool operator !=(file a, file b); +bool operator !=(path a, path b); +bool operator !=(path3 a, path3 b); +bool operator !=(bool3 a, bool3 b); +bool operator !=(coords3 a, coords3 b); +bool operator !=(autoscaleT a, autoscaleT b); +bool operator !=(side a, side b); +bool operator !=(cputime a, cputime b); +bool operator !=(coords2 a, coords2 b); +bool operator !=(scaling a, scaling b); +bool operator !=(node a, node b); +bool operator !=(object a, object b); +bool operator !=(filltype a, filltype b); +bool operator !=(simplex a, simplex b); +bool operator !=(projection a, projection b); +bool operator !=(arrowhead a, arrowhead b); +bool operator !=(coord a, coord b); +bool operator !=(bounds a, bounds b); +bool operator !=(ScaleT a, ScaleT b); +bool operator !=(position a, position b); +bool operator !=(hsv a, hsv b); +bool operator !=(coords2 a, coords2 b); +bool operator !=(pairOrTriple a, pairOrTriple b); +bool operator !=(bool3 a, bool b); +bool operator !=(marginT a, marginT b); +bool operator !=(light a, light b); +bool operator !=(align a, align b); +bool operator !=(processtime a, processtime b); +bool operator !=(scaling a, scaling b); +bool operator !=(coord a, coord b); +bool operator !=(scaleT a, scaleT b); +bool operator !=(Legend a, Legend b); +bool operator !=(Label a, Label b); +bool operator !=(bool a, bool3 b); +bool operator !=(slice a, slice b); +bool operator !=(freezableBounds a, freezableBounds b); +bool operator !=(transformation a, transformation b); +bool operator !=(picture a, picture b); +bool operator !=(marker a, marker b); +bool operator <(int a, int b); +bool[] operator <(int a, int[] b); +bool[] operator <(int[] a, int b); +bool[] operator <(int[] a, int[] b); +bool operator <(real a, real b); +bool[] operator <(real a, real[] b); +bool[] operator <(real[] a, real b); +bool[] operator <(real[] a, real[] b); +bool operator <(string a, string b); +bool[] operator <(string a, string[] b); +bool[] operator <(string[] a, string b); +bool[] operator <(string[] a, string[] b); +bool operator <=(int a, int b); +bool[] operator <=(int a, int[] b); +bool[] operator <=(int[] a, int b); +bool[] operator <=(int[] a, int[] b); +bool operator <=(real a, real b); +bool[] operator <=(real a, real[] b); +bool[] operator <=(real[] a, real b); +bool[] operator <=(real[] a, real[] b); +bool operator <=(string a, string b); +bool[] operator <=(string a, string[] b); +bool[] operator <=(string[] a, string b); +bool[] operator <=(string[] a, string[] b); +bool operator <=(coord a, coord b); +bool operator <=(coord a, coord b); +void srand(int seed); +bool operator >(int a, int b); +bool[] operator >(int a, int[] b); +bool[] operator >(int[] a, int b); +bool[] operator >(int[] a, int[] b); +bool operator >(real a, real b); +bool[] operator >(real a, real[] b); +bool[] operator >(real[] a, real b); +bool[] operator >(real[] a, real[] b); +bool operator >(string a, string b); +bool[] operator >(string a, string[] b); +bool[] operator >(string[] a, string b); +bool[] operator >(string[] a, string[] b); +bool operator >=(int a, int b); +bool[] operator >=(int a, int[] b); +bool[] operator >=(int[] a, int b); +bool[] operator >=(int[] a, int[] b); +bool operator >=(real a, real b); +bool[] operator >=(real a, real[] b); +bool[] operator >=(real[] a, real b); +bool[] operator >=(real[] a, real[] b); +bool operator >=(string a, string b); +bool[] operator >=(string a, string[] b); +bool[] operator >=(string[] a, string b); +bool[] operator >=(string[] a, string[] b); +bool operator >=(coord a, coord b); +bool operator >=(coord a, coord b); +filltype UnFill(real xmargin=<default>, real ymargin=<default>); +filltype UnFill; +real degrees(pair z, bool warn=<default>); +real degrees(real radians); +bool[] operator !(bool[] a); +bool operator !(bool b); +path[] operator ^^(path p, path q); +path[] operator ^^(explicit path[] p, path q); +path[] operator ^^(path p, explicit path[] q); +path[] operator ^^(explicit path[] p, explicit path[] q); +guide operator ::(... guide[]); +pen Helvetica(string series=<default>, string shape=<default>); +transform reflect(pair a, pair b); +bool Bars(picture, path, pen, marginT(path, pen)); +bool Bars(picture, path, pen, marginT(path, pen))(real size=<default>); +void none(file file); +int factorial(int n); +real log(real x); +real[] log(real[] a); +pair log(explicit pair z); +guide operator ..(... guide[]); +guide operator ..(... guide[])(tensionSpecifier t); +path polygon(int n); +guide operator --(... guide[]); +guide operator ---(... guide[]); +pen NewCenturySchoolBook(string series=<default>, string shape=<default>); +void()()[] saveFunctions; +bool operator &(bool a, bool b); +bool[] operator &(bool a, bool[] b); +bool[] operator &(bool[] a, bool b); +bool[] operator &(bool[] a, bool[] b); +path operator &(path p, path q); +path3 operator &(path3 p, path3 q); +path operator &(path p, cycleToken tok); +bool operator |(bool a, bool b); +bool[] operator |(bool a, bool[] b); +bool[] operator |(bool[] a, bool b); +bool[] operator |(bool[] a, bool[] b); +string texify(string s); +guide operator controls(pair zout, pair zin); +guide operator controls(pair z); +bool empty(frame f); +tensionSpecifier operator tension(real tout, real tin, bool atleast); +tensionSpecifier operator tension(real t, bool atLeast); +void end(picture pic=<default>); +curlSpecifier operator curl(real gamma, int p); +guide operator spec(pair z, int p); +string substr(string s, int pos, int n=<default>); +pen paleyellow; +file output(string name=<default>, bool update=<default>, string comment=<default>, string mode=<default>); +pen ZapfDingbats(string series=<default>, string shape=<default>); +real tanh(real x); +real[] tanh(real[] a); +real interp(real a, real b, real t); +pair interp(explicit pair a, explicit pair b, real t); +triple interp(triple a, triple b, real t); +pen interp(pen a, pen b, real t); +frame Seascape(frame f); +bool interior(int windingnumber, pen fillrule); +real[] intersect(path p, path q, real fuzz=<default>); +real[] intersect(path3 p, path3 q, real fuzz=<default>); +real[] intersect(path3 p, triple[][] p, real fuzz=<default>); +bool interactive(); +real[][] intersections(path p, path q, real fuzz=<default>); +real[] intersections(path p, explicit pair a, explicit pair b, real fuzz=<default>); +real[][] intersections(path3 p, path3 q, real fuzz=<default>); +real[][] intersections(path3 p, triple[][] p, real fuzz=<default>); +int animate(string args=<default>, string file=<default>, string format=<default>); +void generate_random_backtrace(); +pair intersectionpoint(path p, path q, real fuzz=<default>); +pair[] intersectionpoints(path p, path q, real fuzz=<default>); +pair[] intersectionpoints(explicit path[] p, explicit path[] q, real fuzz=<default>); +void asy(string format, bool overwrite=<default> ... string[] s); +bool latex(); +bool adjust(pen p); +pen adjust(pen p, real arclength, bool cyclic); +pair Align; +void exit(); +real[] uniform(real a, real b, int n); +pair viewportsize; +pair viewportmargin; +string VERSION; +real insphere(triple a, triple b, triple c, triple d, triple e); +void filldraw(picture pic=<default>, path[] g, pen fillpen=<default>, pen drawpen=<default>); +void filldraw(frame f, path[] g, pen fillpen=<default>, pen drawpen=<default>); +real dot(real[] a, real[] b); +pair dot(pair[] a, pair[] b); +real dot(explicit pair z, explicit pair w); +real dot(triple u, triple v); +void dot(picture pic=<default>, Label[] L=<default>, explicit path g, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); +marker dot(pen p=<default>, filltype filltype=<default>); +void dot(picture pic=<default>, pair z, pen p=<default>, filltype filltype=<default>); +void dot(frame f, pair z, pen p=<default>, filltype filltype=<default>); +void dot(picture pic=<default>, Label L, pen p=<default>, filltype filltype=<default>); +void dot(picture pic=<default>, Label[] L=<default>, pair[] z, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); +void dot(picture pic=<default>, path[] g, pen p=<default>, filltype filltype=<default>); +marker dot; +void dot(picture pic=<default>, Label L, pair z, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); +void list(string s, bool imports=<default>); +pair NNW; +string phantom(string s); +void atexit(void f()); +void atexit()(); +real getreal(string name=<default>, real default=<default>, string prompt=<default>, bool store=<default>); +int convert(string args=<default>, string file=<default>, string format=<default>); +pair WNW; +pen palegray; +pen palegreen; +pen palegrey; +void clip(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); +void clip(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, bool copy=<default>); +marginT Margin(path, pen)(real begin, real end); +marginT Margin(path, pen); +position Relative(real position); +side Relative(explicit pair align); +marginT Margins(path, pen); +pair truepoint(picture pic=<default>, pair dir, bool user=<default>); +real arclength(path p); +real arclength(path3 p); +bool finite(real x); +bool finite(pair z); +bool finite(triple v); +void updatefunction(); +bool implicitshipout; +void _draw(frame f, path g, pen p); +void _draw(frame f, path3 g, triple center=<default>, pen p, int interaction=<default>); +void _draw(picture pic, path g, pen p, marginT margin(path, pen)); +frame align(frame f, pair align); +object align(object F, pair align); +path[] align(path[] g, transform t=<default>, pair position, pair align, pen p=<default>); +real unitrand(); +string[] history(string name, int n=<default>); +string[] history(int n=<default>); +coord[] maxcoords(coord[] in, bool operator <=(coord, coord)); +coord[] maxcoords(coord[] in, bool operator <=(coord, coord)); +pen AvantGarde(string series=<default>, string shape=<default>); +frame enclose(string prefix=<default>, object F, string format=<default>); +int count; +real atan2(real y, real x); +bool inside(explicit path[] g, pair z, pen fillrule=<default>); +bool inside(path g, pair z, pen fillrule=<default>); +int inside(path p, path q, pen fillrule=<default>); +pair inside(path p, pen fillrule=<default>); +pair rectify(pair dir); +arrowhead TeXHead; +bool initialized(int a); +bool initialized(real a); +bool initialized(pair a); +bool initialized(triple a); +path[] margin(path[] g, real xmargin, real ymargin); +pair relative(picture pic=<default>, pair z); +real erfc(real x); +int windingnumber(path[] p, pair z); +real expansionfactor; +void addArrow(picture pic, arrowhead arrowhead, path g, pen p, real size, real angle, filltype filltype, real position); +void exitfunction(); +pen gray(pen p); +pen gray(real gray); +pen gray; +real relativedistance(real theta, real phi, real t, bool atleast); +path circle(pair c, real r); +void overloadedMessage(file file); +pen deepmagenta; +real circlescale; +string math(string s); +real circleprecision; +int Allow; +real determinant(real[][] a); +void functionshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, string shader=<default>, bool copy=<default>); +void functionshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, string shader, bool copy=<default>); +pen red; +pair[] dirSpecifier(guide g, int t); +void abort(string s=<default>); +bool Aspect; +string hex(pen p); +int hex(string s); +path brace(pair a, pair b, real amplitude=<default>); +void deactivatequote(picture pic=<default>); +string format(string format, int x, string locale=<default>); +string format(string format, bool forcemath=<default>, string separator, real x, string locale=<default>); +string format(string format=<default>, bool forcemath=<default>, real x, string locale=<default>); +real expm1(real x); +real[] expm1(real[] a); +void activatequote(picture pic=<default>); +int undefined; +transform zeroTransform; +string ask(string prompt); +frame[] fit2(picture[] pictures, picture all); +pen linecap(int n); +int linecap(pen p=<default>); +string outname(); +void newpage(frame f); +void newpage(picture pic=<default>); +pen fontcommand(string s); +real bracemidangle; +pair accel(path p, int t, int sign=<default>); +pair accel(path p, real t); +triple accel(path3 p, int t, int sign=<default>); +triple accel(path3 p, real t); +frame Portrait(frame f); +real braceinnerangle; +real braceouterangle; +void tex(frame f, string s); +void tex(frame f, string s, pair min, pair max); +void tex(picture pic=<default>, string s, pair min, pair max); +void tex(picture pic=<default>, string s); +real bracedefaultratio; +bool prconly(string format=<default>); +pen Black; +triple size3(frame f); +void size3(picture pic=<default>, real x, real y=<default>, real z=<default>, bool keepAspect=<default>); +bool eof(file f); +frame dotframe(pen p=<default>, filltype filltype=<default>); +frame dotframe; +real realMax; +pair NE; +real realMin; +path nib(pen p); +file _outpipe; +void gouraudshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, pair[] z, int[] edges, bool copy=<default>); +void gouraudshade(frame f, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, int[] edges, bool copy=<default>); +void gouraudshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, pair[] z, int[] edges, bool copy=<default>); +void gouraudshade(picture pic=<default>, path[] g, bool stroke=<default>, pen fillrule=<default>, pen[] p, int[] edges, bool copy=<default>); +pair[] fft(pair[] a, int sign=<default>); +pair SE; +pen nobasealign; sCAD operator init(); -frame NoBox(frame f); real animationdelay; animation operator init(); +frame NoBox(frame f); frame BBox(frame)(real xmargin=<default>, real ymargin=<default>, pen p=<default>, filltype filltype=<default>); void annotate(picture pic=<default>, string title, string text, pair position); void babel(string s); -path[] bezulate(path[] p); -bool checkSegment(path g, pair p, pair q); -void connect(path[] paths, path[] result, path[] patch); +path removeDuplicates(path p); path uncycle(path p, real t); -path section(path p, real t1, real t2, bool loop=<default>); +path[] bezulate(path[] p); real[][] intersections(pair a, pair b, path p); -real maxrefinements; +void connect(path[] paths, path[] result, path[] patch); +int countIntersections(path[] p, pair start, pair end); real duplicateFuzz; path subdivide(path p); bool isDuplicate(pair a, pair b, real relSize); -path[][] containmentTree(path[] paths); +bool checkSegment(path g, pair p, pair q); +path section(path p, real t1, real t2, bool loop=<default>); real fuzz; -path removeDuplicates(path p); -int countIntersections(path[] p, pair start, pair end); -binarytree binarytree(... key[] keys); -key nil; -key key(int n, bool active=<default>); -real minDistDefault; +real maxrefinements; +path[][] containmentTree(path[] paths); +binarytree searchtree(... int[] keys); object draw(picture pic=<default>, binarytreeNode node, pair pos, int height, real minDist, real levelDist, real nodeDiameter, pen p=<default>, bool condensed=<default>); void draw(picture pic=<default>, binarytree tree, real minDist=<default>, real nodeMargin=<default>, pen p=<default>, bool condensed=<default>); real nodeMarginDefault; -key operator cast(int n); -int operator cast(key k); -int[] operator cast(key[] k); +key key(int n, bool active=<default>); +binarytree binarytree(... key[] keys); binarytreeNode binarytreeNode(int key); +key nil; +real minDistDefault; binarytreeNode operator init(); key operator init(); binarytree operator init(); -binarytree searchtree(... int[] keys); +key operator cast(int n); +int operator cast(key k); +int[] operator cast(key[] k); +line intersection(face a, face b); real epsilon; -void add(picture pic=<default>, face[] faces, projection P=<default>); +splitface split(face a, face cut, projection P); face operator init(); line operator init(); half operator init(); @@ -2025,227 +2026,333 @@ splitface operator init(); bsp operator init(); picture operator cast(face f); face operator cast(path3 p); -line intersection(face a, face b); -splitface split(face a, face cut, projection P); -list_data viridis; -list_data magma; -list_data inferno; -list_data cividis; -seg_data wistia; -seg_data winter; -list_data tab20c; -list_data tab20; -list_data tab10; -seg_data nipy_spectral; -seg_data gist_stern; -seg_data gist_ncar; -seg_data gist_earth; -list_data bwr; -list_data brg; +void add(picture pic=<default>, face[] faces, projection P=<default>); +list_data Set2; list_data YlOrBr; list_data YlGn; -list_data RdGy; -list_data Purples; -list_data Paired; -list_data Oranges; -list_data OrRd; -seg_data CMRmap; list_data BuPu; +list_data tab20; +list_data tab20b; +list_data tab20c; +seg_data gist_earth; +seg_data gist_ncar; +seg_data gist_stern; +list_data PuBuGn; +seg_data hot; list_data Blues; -real[] makeMappingArray(int N, triple[] data, real gamma=<default>); -list_data Accent; -list_data twilight; -seg_data binary; -list_data YlGnBu; -list_data PiYG; +seg_data autumn; +list_data PuBu; +list_data plasma; +seg_data nipy_spectral; +seg_data spring; +list_data Set3; +list_data Dark2; +seg_data bone; +seg_data hsv; +list_data bwr; +list_data viridis; +list_data Reds; +list_data inferno; seg_data copper; +seg_data pink; +list_data YlOrRd; seg_data gray; -seg_data summer; -list_data Spectral; -list_data PRGn; -list_data RdPu; list_data RdYlGn; +seg_data CMRmap; +seg_data winter; +list_data Greys; +list_data Purples; +list_data BuGn; +list_data Oranges; +list_data RdGy; +seg_data binary; +list_data magma; +list_data cividis; +seg_data operator init(); +list_data operator init(); +list_data BrBG; list_data seismic; -list_data PuOr; -list_data PuBu; +list_data Greens; +list_data YlGnBu; +list_data PuRd; +real[] makeMappingArray(int N, triple[] data, real gamma=<default>); seg_data coolwarm; -seg_data jet; -list_data Reds; -list_data Set1; -list_data Set3; +list_data RdPu; +list_data RdBu; +list_data twilight; list_data twilight_shifted; -seg_data cool; +seg_data wistia; +list_data brg; list_data Pastel1; -seg_data operator init(); -list_data operator init(); -list_data BuGn; -list_data GnBu; list_data Pastel2; -list_data Greens; -seg_data autumn; -seg_data hsv; -list_data Dark2; +list_data GnBu; +list_data Accent; +list_data PuOr; +list_data Spectral; +list_data PiYG; +list_data OrRd; +seg_data cool; +list_data PRGn; +list_data Set1; +list_data tab10; +list_data Paired; +seg_data jet; +seg_data summer; list_data RdYlBu; -list_data RdBu; -seg_data bone; -seg_data spring; -list_data YlOrRd; -list_data BrBG; -seg_data pink; -list_data Set2; -list_data PuBuGn; -list_data Greys; -list_data plasma; -list_data PuRd; -list_data tab20b; -seg_data hot; -void addseg(pair[][] gds, segment seg); +segment case1(pair p0, pair p1, int edge); +void draw(picture pic=<default>, Label[] L=<default>, guide[][] g, pen[] p); +void draw(picture pic=<default>, Label[] L=<default>, guide[][] g, pen p=<default>); +pen[][] interior(picture pic=<default>, guide[][] g, pen[] palette); pen[] extend(pen[] palette, pen below, pen above); guide[][] connect(pair[][][] points, real[] c, guide join(... guide[])); +segment case2(pair p0, pair p1, pair p2, real v0, real v1, real v2, int edge); void collect(pair[][][] points, real[] c); segment case3(pair p0, pair p1, pair p2, real v0, real v1, real v2, int edge=<default>); -segment case1(pair p0, pair p1, int edge); -real eps; segment checktriangle(pair p0, pair p1, pair p2, real v0, real v1, real v2, int edge=<default>); -segment case2(pair p0, pair p1, pair p2, real v0, real v1, real v2, int edge); +segment operator init(); +void addseg(pair[][] gds, segment seg); +void fill(picture pic=<default>, guide[][] g, pen[][] palette); guide[][] contour(pair[][] z, real[][] f, real[][] midpoint=<default>, real[] c, guide join(... guide[])=<default>); guide[][] contour(real[][] f, real[][] midpoint=<default>, pair a, pair b, real[] c, guide join(... guide[])=<default>); guide[][] contour(real f(real, real), pair a, pair b, real[] c, int nx=<default>, int ny=<default>, guide join(... guide[])=<default>); guide[][] contour(real f(pair), pair a, pair b, real[] c, int nx=<default>, int ny=<default>, guide join(... guide[])=<default>); guide[][] contour(pair[] z, real[] f, real[] c, guide join(... guide[])=<default>); -void draw(picture pic=<default>, Label[] L=<default>, guide[][] g, pen[] p); -void draw(picture pic=<default>, Label[] L=<default>, guide[][] g, pen p=<default>); -segment operator init(); -pen[][] interior(picture pic=<default>, guide[][] g, pen[] palette); -void fill(picture pic=<default>, guide[][] g, pen[][] palette); -vertex[][] contour3(triple[][][] v, real[][][] f, real[][][] midpoint=<default>, projection P=<default>); -vertex[][] contour3(real[][][] f, real[][][] midpoint=<default>, triple a, triple b, projection P=<default>); -vertex[][] contour3(real f(real, real, real), triple a, triple b, int nx=<default>, int ny=<default>, int nz=<default>, projection P=<default>); +real eps; +surface surface(vertex[][] g); weighted operator init(); bucket operator init(); vertex operator init(); object operator init(); -surface surface(vertex[][] g); +vertex[][] contour3(triple[][][] v, real[][][] f, real[][][] midpoint=<default>, projection P=<default>); +vertex[][] contour3(real[][][] f, real[][][] midpoint=<default>, triple a, triple b, projection P=<default>); +vertex[][] contour3(real f(real, real, real), triple a, triple b, int nx=<default>, int ny=<default>, int nz=<default>, projection P=<default>); real eps; -real treeMinNodeWidth; -void drawAll(TreeNode node, frame f); -real treeNodeStep; void draw(TreeNode root, pair pos); -TreeNode makeNode(TreeNode parent=<default>, frame f); -TreeNode makeNode(TreeNode parent=<default>, Label label); +real treeNodeStep; +void drawAll(TreeNode node, frame f); +real layout(int level, TreeNode node); TreeNode operator init(); void add(TreeNode child, TreeNode parent); real treeLevelStep; -real layout(int level, TreeNode node); +real treeMinNodeWidth; +TreeNode makeNode(TreeNode parent=<default>, frame f); +TreeNode makeNode(TreeNode parent=<default>, Label label); string link(string label, string text=<default>); string embed(string name, string text=<default>, string options=<default>, real width=<default>, real height=<default>); string embedplayer(string name, string text=<default>, string options=<default>, real width=<default>, real height=<default>); string link(string label, string text=<default>); -string hyperlink(string url, string text); string embed(string name, string text=<default>, string options=<default>, real width=<default>, real height=<default>, string image=<default>); -bool XYAlign; -void drawMomArrow(picture pic=<default>, path p, align align, position pos=<default>, real offset=<default>, real length=<default>, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real margin=<default>); -void drawVertexOX(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); -void drawVertexBoxO(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); +string hyperlink(string url, string text); +real gluonratio; +real gluonamplitude; +void drawGluon(picture pic=<default>, path p, real amp=<default>, real width=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); +void drawGhost(picture pic=<default>, path p, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); +void drawVertex(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>); +void drawVertexO(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); +void drawVertexX(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>); void drawVertexBox(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>); +void drawVertexBoxO(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); +void drawVertexOX(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); void drawVertexTriangle(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>); -void drawVertex(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>); +void drawVertexTriangleO(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); +void drawVertexBoxX(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); +void do_overpaint(picture pic, path p, pen bgpen, real halfwidth, real vertexangle); +void texshipout(string stem, picture pic=<default>, bool xalign=<default>); +pen doublelinepen; +real doublelinespacing; void drawDoubleLine(picture pic=<default>, path p, pen fgpen=<default>, real dlspacing=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); -void drawGhost(picture pic=<default>, path p, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); -real momarrowmargin; -real momarrowoffset; -pen momarrowpen; -bool currentmomarrow(picture, path, pen, marginT(path, pen)); -real vertexsize; -real minvertexangle; -real linemargin; +void drawScalar(picture pic=<default>, path p, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); bool overpaint; -bool currentarrow(picture, path, pen, marginT(path, pen)); -real doublelinespacing; -real photonamplitude; -real gluonamplitude; +path photon(path p, real amp=<default>, real width=<default>); +pen photonpen; real photonratio; -pen gluonpen; +real photonamplitude; +string includegraphicscommand; +pen momarrowpen; real momarrowsize(pen p=<default>); -void drawVertexX(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>); -void drawVertexO(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); -real bigvertexsize; real momarrowlength; -path photon(path p, real amp=<default>, real width=<default>); -path gluon(path p, real amp=<default>, real width=<default>); -bool YAlign; -void drawFermion(picture pic=<default>, path p, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); -pen backgroundpen; -bool appendsuffix; -void drawVertexTriangleO(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); +real momarrowoffset; +real momarrowmargin; real momarrowfactor; +bool XYAlign; pen vertexpen; -void drawPhoton(picture pic=<default>, path p, real amp=<default>, real width=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); -void drawGluon(picture pic=<default>, path p, real amp=<default>, real width=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); +real vertexsize; path momArrowPath(path p, align align, position pos, real offset=<default>, real length=<default>); -real gluonratio; -void texshipout(string stem, picture pic=<default>, bool xalign=<default>); -void fmdefaults(); -pen doublelinepen; -pen ghostpen; +void drawPhoton(picture pic=<default>, path p, real amp=<default>, real width=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); +bool YAlign; +pen backgroundpen; pen scalarpen; -void drawVertexBoxX(picture pic=<default>, pair xy, real r=<default>, pen fgpen=<default>, bool erasebg=<default>, pen bgpen=<default>); -void drawScalar(picture pic=<default>, path p, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); pen fermionpen; -void do_overpaint(picture pic, path p, pen bgpen, real halfwidth, real vertexangle); -string includegraphicscommand; -pen photonpen; pen bigvertexpen; -Dir Down; +real bigvertexsize; +real minvertexangle; +void drawMomArrow(picture pic=<default>, path p, align align, position pos=<default>, real offset=<default>, real length=<default>, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real margin=<default>); +void fmdefaults(); +real linemargin; +pen ghostpen; +void drawFermion(picture pic=<default>, path p, pen fgpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool erasebg=<default>, pen bgpen=<default>, real vertexangle=<default>, real margin=<default>); +bool currentarrow(picture, path, pen, marginT(path, pen)); +bool currentmomarrow(picture, path, pen, marginT(path, pen)); +bool appendsuffix; +path gluon(path p, real amp=<default>, real width=<default>); +pen gluonpen; Dir Left; -block bevel(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dh=<default>, real dw=<default>, real minwidth=<default>, real minheight=<default>); block roundrectangle(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real ds=<default>, real dw=<default>, real minwidth=<default>, real minheight=<default>); block diamond(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real ds=<default>, real dw=<default>, real height=<default>, real minwidth=<default>, real minheight=<default>); -real defaultexcursion; -real mincirclediameter; +void draw(picture pic=<default>, block block, pen p=<default>); +real minblockwidth; real minblockheight; +real defaultexcursion; +path path(pair[] point ... flowdir[] dir); Dir Up; -Dir Right; -real minblockwidth; -block circle(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dr=<default>, real mindiameter=<default>); -block operator --(block b1, Label label); -block operator --(block b1, Dir dir); -block operator --(block b, bool arrowbar(picture, path, pen, marginT(path, pen))); +real mincirclediameter; +flowdir Vertical; block rectangle(object header, object body, pair center=<default>, pen headerpen=<default>, pen bodypen=<default>, pen drawpen=<default>, real dx=<default>, real minheaderwidth=<default>, real minheaderheight=<default>, real minbodywidth=<default>, real minbodyheight=<default>); block rectangle(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dx=<default>, real minwidth=<default>, real minheight=<default>); -path path(pair[] point ... flowdir[] dir); -void draw(picture pic=<default>, block block, pen p=<default>); -flowdir Vertical; +block parallelogram(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dx=<default>, real slope=<default>, real minwidth=<default>, real minheight=<default>); +block blockconnector(block, block)(picture pic, transform t, pen p=<default>, marginT margin(path, pen)=<default>); +block circle(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dr=<default>, real mindiameter=<default>); flowdir operator init(); block operator init(); Dir operator init(); -block blockconnector(block, block)(picture pic, transform t, pen p=<default>, marginT margin(path, pen)=<default>); -block parallelogram(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dx=<default>, real slope=<default>, real minwidth=<default>, real minheight=<default>); +block operator --(block b1, Label label); +block operator --(block b1, Dir dir); +block operator --(block b, bool arrowbar(picture, path, pen, marginT(path, pen))); flowdir Horizontal; -arc arccircle(point A, point M, point B); -arc arccircle(point A, point B, real angle, bool direction=<default>); -void lineinversion(); +block bevel(object body, pair center=<default>, pen fillpen=<default>, pen drawpen=<default>, real dh=<default>, real dw=<default>, real minwidth=<default>, real minheight=<default>); +Dir Right; +Dir Down; +int[] numarray; +point midpoint(segment s); +point midpoint(side side); +point isotomicconjugate(triangle t, point M); +real rd(real x, real y, real z); +point circumcenter(point A, point B, point C); +point circumcenter(triangle t); +circle circumcircle(point A, point B, point C); +circle circumcircle(triangle t); +point point(coordsys R, pair p, real m=<default>); +point point(explicit pair p, real m); +point point(coordsys R, explicit point M, real m=<default>); +point point(explicit vector u); +point point(circle c, abscissa l); +point point(ellipse el, abscissa l); +point point(parabola p, abscissa l); +point point(hyperbola h, abscissa l); +point point(explicit conic co, abscissa l); +point point(line l, abscissa x); +point point(line l, explicit real x); +point point(line l, explicit int x); +point point(explicit circle c, explicit real x); +point point(explicit circle c, explicit int x); +point point(explicit ellipse el, explicit real x); +point point(explicit ellipse el, explicit int x); +point point(explicit parabola p, explicit real x); +point point(explicit parabola p, explicit int x); +point point(explicit hyperbola h, explicit real x); +point point(explicit hyperbola h, explicit int x); +point point(explicit conic co, explicit real x); +point point(explicit conic co, explicit int x); +point point(arc a, abscissa l); +point point(arc a, real x); +pair point(explicit arc a, int x); +point point(explicit mass m); +point point(explicit vertex V); +point point(trilinear tri); +point point(circle c, point M); +point point(circle c, explicit vector v); +bool finite(explicit point p); +void dot(picture pic=<default>, Label L, explicit point Z, align align=<default>, string format=<default>, pen p=<default>); +real dot(point A, point B); +real dot(point A, explicit pair B); +real dot(explicit pair A, point B); +void dot(picture pic=<default>, Label L, explicit mass M, align align=<default>, string format=<default>, pen p=<default>); +void dot(picture pic=<default>, triangle t, pen p=<default>); +real[] realquarticroots(real a, real b, real c, real d, real e); +point origin; +point origin(coordsys R=<default>); +void draw(picture pic=<default>, Label L=<default>, line l, bool dirA=<default>, bool dirB=<default>, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); +void draw(picture pic=<default>, Label[] L=<default>, line[] l, align align=<default>, pen[] p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label[] legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); +void draw(picture pic=<default>, Label[] L=<default>, line[] l, align align=<default>, pen p, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label[] legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); +void draw(picture pic=<default>, Label L=<default>, circle c, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, Label L=<default>, ellipse el, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, Label L=<default>, parabola parabola, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, Label L=<default>, hyperbola h, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, Label L=<default>, explicit conic co, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, Label L=<default>, arc a, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); +void draw(picture pic=<default>, triangle t, pen p=<default>, marker marker=<default>); +void draw(picture pic=<default>, triangle[] t, pen p=<default>, marker marker=<default>); +coordsys defaultcoordsys; +string defaultmassformat; line radicalline(circle c1, circle c2); point radicalcenter(circle c1, circle c2); point radicalcenter(circle c1, circle c2, circle c3); -point inverse(real k, point A, point M); -circle inverse(real k, point A, line l); -circle inverse(real k, point A, circle c); -arc inverse(real k, point A, segment s); -triangle anticomplementary(triangle t); -triangle symmedial(triangle t); -triangle orthic(triangle t); -triangle medial(triangle t); -point intouch(side side); -triangle intouch(triangle t); -triangle extouch(triangle t); -triangle extouch(side side); +ellipse ellipse(point F1, point F2, real a); +ellipse ellipse(point F1, point F2, point M); +ellipse ellipse(point C, real a, real b, real angle=<default>); +ellipse ellipse(bqe bqe); +ellipse ellipse(point M1, point M2, point M3, point M4, point M5); +path arctopath(arc a, int n); +bool inside(ellipse el, point M); +bool inside(parabola p, point M); +int ellipsenodesnumber(real a, real b); +int ellipsenodesnumber(real a, real b, real angle1, real angle2, bool dir); +int ellipsenodesnumberfactor; +bool byfoci; +transform reflect(line l); +transform reflect(line l1, line l2, bool safe=<default>); +real[] bangles(picture pic=<default>, parabola p); +real[][] bangles(picture pic=<default>, hyperbola h); +abscissa relabscissa(real x); +abscissa relabscissa(int x); +abscissa relabscissa(line l, point M); +abscissa relabscissa(circle c, point M); +abscissa relabscissa(ellipse el, point M); +abscissa relabscissa(conic co, point M); +abscissa relabscissa(arc a, point M); +circle incircle(point A, point B, point C); +circle incircle(triangle t); +mass masscenter(... mass[] M); +vector unit(point M); +vector unit(vector u); +line Ox(coordsys R=<default>); +line Ox; +conic conic(point F, line l, real e); +conic conic(point M1, point M2, point M3, point M4, point M5); +conic conic(bqe bqe); +bool defined(point P); +string conictype(bqe bqe); triangle antipedal(triangle t, point M); -triangle pedal(triangle t, point M); -line pedal(side side, point M); +void clipdraw(picture pic=<default>, Label L=<default>, path g, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, real xmargin=<default>, real ymargin=<default>, Label legend=<default>, marker marker=<default>); +real perpfactor; +int conicnodesfactor; +int conicnodesnumber(conic co, real angle1, real angle2, bool dir=<default>); +line altitude(vertex V); +line altitude(side side); point isogonalconjugate(triangle t, point M); -point isotomicconjugate(triangle t, point M); -point[] fermat(triangle t); +point isogonal(side side, point M); +line isogonal(vertex V, point M); +triangle isogonal(triangle t, point M); +line hline(coordsys R=<default>); +line hline; +int[] tricoef(side side); +path arcfromfocus(conic co, real angle1, real angle2, int n=<default>, bool direction=<default>); +line sector(int n=<default>, int p=<default>, line l1, line l2, real angle=<default>, bool sharp=<default>); +path arcfromcenter(ellipse el, real angle1, real angle2, bool direction=<default>, int n=<default>); +path arcfromcenter(hyperbola h, real angle1, real angle2, int n=<default>, bool direction=<default>); +path arcfromcenter(explicit conic co, real angle1, real angle2, int n, bool direction=<default>); +line vline(coordsys R=<default>); +line vline; +vector vector(coordsys R=<default>, pair v); +vector vector(point M); +real[] intersect(path g, explicit pair p, real fuzz=<default>); +real[] intersect(path g, explicit point P, real fuzz=<default>); +int sgnd(real x); +int sgnd(int x); +circle excircle(point A, point B, point C); +circle excircle(side side); +line extend(line l); +point intersectionpoint(line l1, line l2); pair[] intersectionpoints(pair A, pair B, real a, real b, real c, real d, real f, real g); pair[] intersectionpoints(pair A, pair B, real[] equation); point[] intersectionpoints(line l, path g); @@ -2286,10 +2393,247 @@ point[] intersectionpoints(arc a, conic co); point[] intersectionpoints(arc a1, arc a2); point[] intersectionpoints(line l, arc a); point[] intersectionpoints(arc a, line l); +point intouch(side side); +triangle intouch(triangle t); +point orthocentercenter(point A, point B, point C); +point orthocentercenter(triangle t); +real rf(real x, real y, real z); +bool concurrent(... line[] l); +real inradius(point A, point B, point C); +real inradius(triangle t); +pen addpenline; +pen addpenline(pen p); +pen addpenarc; +pen addpenarc(pen p); +void label(picture pic=<default>, Label L, explicit mass M, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); +void label(picture pic=<default>, Label L, vertex V, pair align=<default>, real alignFactor=<default>, pen p=<default>, filltype filltype=<default>); +void label(picture pic=<default>, Label LA=<default>, Label LB=<default>, Label LC=<default>, triangle t, real alignAngle=<default>, real alignFactor=<default>, pen p=<default>, filltype filltype=<default>); +real abs(coordsys R, pair m); +real abs(explicit point M); +point curpoint(line l, real x); +point curpoint(explicit circle c, real x); +point curpoint(explicit ellipse el, real x); +point curpoint(explicit parabola p, real x); +point curpoint(conic co, real x); +point curpoint(arc a, real x); +line bisector(line l1, line l2, real angle=<default>, bool sharp=<default>); +line bisector(point A, point B, point C, point D, real angle=<default>, bool sharp=<default>); +line bisector(segment s, real angle=<default>); +line bisector(point A, point B, real angle=<default>); +line bisector(vertex V, real angle=<default>); +line bisector(side side); +bqe canonical(bqe bqe); +point bisectorpoint(side side); +abscissa angabscissa(real x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +abscissa angabscissa(int x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +abscissa angabscissa(circle c, point M); +abscissa angabscissa(ellipse el, point M, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +abscissa angabscissa(hyperbola h, point M, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +abscissa angabscissa(parabola p, point M); +abscissa angabscissa(explicit conic co, point M); +abscissa angabscissa(arc a, point M); +pair locate(point P); +point locate(pair p); +pair locate(explicit vector v); +bool samecoordsys(bool warn=<default> ... point[] M); +bool samecoordsys(bool warn=<default> ... bqe[] bqes); +triangle extouch(triangle t); +triangle extouch(side side); +coordsys canonicalcartesiansystem(ellipse el); +coordsys canonicalcartesiansystem(parabola p); +coordsys canonicalcartesiansystem(hyperbola h); +coordsys canonicalcartesiansystem(explicit conic co); +arc arc(ellipse el, real angle1, real angle2, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>, bool direction=<default>); +arc arc(ellipse el, explicit abscissa x1, explicit abscissa x2, bool direction=<default>); +arc arc(ellipse el, point M, point N, bool direction=<default>); +arc arc(explicit arc a, abscissa x1, abscissa x2); +arc arc(explicit arc a, point M, point N); +path arc(explicit pair B, explicit pair A, explicit pair C, real r); +void markrightangle(picture pic=<default>, point A, point O, point B, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +real epsgeo; +real sharpangle(line l1, line l2); +bool isparabola(bqe bqe); +real sharpdegrees(line l1, line l2); +real exradius(point A, point B, point C); +real exradius(side side); +abscissa nodabscissa(real x); +abscissa nodabscissa(int x); +abscissa nodabscissa(line l, point M); +abscissa nodabscissa(circle c, point M); +abscissa nodabscissa(ellipse el, point M); +abscissa nodabscissa(parabola p, point M); +abscissa nodabscissa(conic co, point M); +abscissa nodabscissa(arc a, point M); +coordsys coordsys(line l); +coordsys coordsys(conic co); +coordsys coordsys(ellipse el); +pair coordinates(point M); +real length(explicit point M); +real length(segment s); +int arcnodesnumber(explicit arc a); +point[] standardizecoordsys(coordsys R=<default>, bool warn=<default> ... point[] M); +int nodesystem; +bool collinear(vector u, vector v); +point centroid(point A, point B, point C); +point centroid(triangle t); +int angularsystem; +path square(pair z1, pair z2); +point symmedian(triangle t); +point symmedian(side side); +line symmedian(vertex V); +triangle symmedial(triangle t); +int curvilinearsystem; +bqe bqe(coordsys R=<default>, real a, real b, real c, real d, real e, real f); +bqe bqe(point M1, point M2, point M3, point M4, point M5); +arc arccircle(point A, point M, point B); +arc arccircle(point A, point B, real angle, bool direction=<default>); +point relpoint(line l, real x); +point relpoint(explicit circle c, real x); +point relpoint(explicit ellipse el, real x); +point relpoint(explicit parabola p, real x); +point relpoint(explicit hyperbola h, real x); +point relpoint(explicit conic co, explicit real x); +point relpoint(explicit conic co, explicit int x); +point relpoint(arc a, real x); +point changecoordsys(coordsys R, point M); +vector changecoordsys(coordsys R, vector v); +line changecoordsys(coordsys R, line l); +bqe changecoordsys(coordsys R, bqe bqe); +conic changecoordsys(coordsys R, conic co); +real angle(explicit point M, coordsys R=<default>, bool warn=<default>); +real angle(explicit vector v, coordsys R=<default>, bool warn=<default>); +real angle(line l, coordsys R=<default>); +real angle(line l1, line l2); +real angle(arc a); +point[] fermat(triangle t); +real arclength(circle c); +real arclength(ellipse el); +real arclength(ellipse el, real angle1, real angle2, bool direction=<default>, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +real arclength(parabola p, real angle); +real arclength(parabola p, real angle1, real angle2); +real arclength(parabola p); +real arclength(arc a); +line reverse(line l); +arc reverse(arc a); +point gergonne(triangle t); +real focusToCenter(ellipse el, real a); +hyperbola hyperbola(point P1, point P2, real ae, bool byfoci=<default>); +hyperbola hyperbola(point C, real a, real b, real angle=<default>); +hyperbola hyperbola(bqe bqe); +hyperbola hyperbola(point M1, point M2, point M3, point M4, point M5); +side opposite(vertex V); +vertex opposite(side side); +int hyperbolanodesnumber(hyperbola h, real angle1, real angle2); +path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)(conic co); +int hyperbolanodesnumberfactor; +line parallel(point M, line l); +line parallel(point M, explicit vector dir); +line parallel(point M, explicit pair dir); +bool parallel(line l1, line l2, bool strictly=<default>); transform projection(point A, point B); transform projection(point A, point B, point C, point D, bool safe=<default>); transform projection(line l); transform projection(line l1, line l2, bool safe=<default>); +bool degenerate(conic c); +bool degenerate(circle c); +bool degenerate(ellipse el); +line line(point A, bool extendA=<default>, point B, bool extendB=<default>); +line line(segment s); +line line(real a, point A=<default>); +line line(point A=<default>, real a); +line line(int a, point A=<default>); +line line(coordsys R=<default>, real slope, real origin); +line line(coordsys R=<default>, real a, real b, real c); +line line(circle c); +line line(explicit side side); +line complementary(explicit line l); +line[] complementary(explicit segment s); +arc complementary(arc a); +point ppoint(arc a, real x); +bool between(point M, point O, point N); +path fromFocus(conic co, real angle1, real angle2, int n, bool direction); +bool sameside(point M, point N, point O); +bool sameside(point M, point P, line l); +point[] sameside(point M, line l1, line l2); +arc arcsubtended(point A, point B, real angle); +void distance(picture pic=<default>, Label L=<default>, point A, point B, bool rotated=<default>, real offset=<default>, pen p=<default>, pen joinpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); +real distance(point M, line l); +real distance(line l, point M); +point incenter(point A, point B, point C); +point incenter(triangle t); +void write(explicit line l); +void write(explicit segment s); +void write(trilinear tri); +triangle incentral(triangle t); +point arcsubtendedcenter(point A, point B, real angle); +circle circle(explicit point C, real r); +circle circle(point A, point B); +circle circle(segment s); +circle circle(point A, point B, point C); +circle circle(triangle t); +circle circle(inversion i); +point angpoint(conic co, real angle); +point angpoint(explicit circle c, real x); +point angpoint(explicit ellipse el, real x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +point angpoint(explicit parabola p, real x); +point angpoint(explicit hyperbola h, real x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); +point angpoint(arc a, real angle); +triangle orthic(triangle t); +int circlenodesnumber(real r); +int circlenodesnumber(real r, real angle1, real angle2); +path compassmark(pair O, pair A, real position, real angle=<default>); +bool byvertices; +int circlenodesnumberfactor; +transform xscale(real k, point M); +transform yscale(real k, point M); +transform scale(real k, point M); +transform scale(real k, point A, point B, point C, point D, bool safe=<default>); +transform scale(real k, line l1, line l2, bool safe=<default>); +point operator +(explicit point P1, explicit point P2); +point operator +(explicit point P1, explicit pair p2); +point operator +(explicit pair p1, explicit point p2); +point operator +(point M, explicit vector v); +point operator +(explicit pair m, explicit vector v); +vector operator +(explicit vector v1, explicit vector v2); +line operator +(line l, vector u); +conic operator +(conic c, explicit point M); +conic operator +(conic c, explicit pair m); +conic operator +(conic c, vector v); +circle operator +(explicit circle c, explicit point M); +circle operator +(explicit circle c, pair m); +circle operator +(explicit circle c, vector m); +abscissa operator +(real x, explicit abscissa a); +abscissa operator +(explicit abscissa a, real x); +abscissa operator +(int x, explicit abscissa a); +arc operator +(explicit arc a, point M); +arc operator +(explicit arc a, vector v); +mass operator +(mass M1, mass M2); +mass operator +(explicit mass M, real x); +mass operator +(explicit mass M, int x); +point operator -(explicit point P); +point operator -(explicit point P1, explicit point P2); +point operator -(explicit point P1, explicit pair p2); +point operator -(explicit pair p1, explicit point P2); +point operator -(point M, explicit vector v); +vector operator -(explicit vector v); +point operator -(explicit pair m, explicit vector v); +vector operator -(explicit vector v1, explicit vector v2); +line operator -(line l, vector u); +conic operator -(conic c, explicit point M); +conic operator -(conic c, explicit pair m); +conic operator -(conic c, vector v); +circle operator -(explicit circle c, explicit point M); +circle operator -(explicit circle c, pair m); +circle operator -(explicit circle c, vector m); +abscissa operator -(explicit abscissa a); +abscissa operator -(real x, explicit abscissa a); +abscissa operator -(explicit abscissa a, real x); +abscissa operator -(int x, explicit abscissa a); +arc operator -(explicit arc a, point M); +arc operator -(explicit arc a, vector v); +mass operator -(mass M1, mass M2); +mass operator -(explicit mass M, real x); +mass operator -(explicit mass M, int x); pair operator *(coordsys R, pair p); path operator *(coordsys R, path g); coordsys operator *(transform t, coordsys R); @@ -2327,120 +2671,23 @@ circle operator *(inversion i, line l); circle operator *(inversion i, circle c); arc operator *(inversion i, segment s); path operator *(inversion i, triangle t); -abscissa angabscissa(real x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -abscissa angabscissa(int x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -abscissa angabscissa(circle c, point M); -abscissa angabscissa(ellipse el, point M, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -abscissa angabscissa(hyperbola h, point M, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -abscissa angabscissa(parabola p, point M); -abscissa angabscissa(explicit conic co, point M); -abscissa angabscissa(arc a, point M); -point centroid(point A, point B, point C); -point centroid(triangle t); -inversion inversion(real k, point C); -inversion inversion(point C, real k); -inversion inversion(circle c1, circle c2, real sgn=<default>); -inversion inversion(circle c1, circle c2, circle c3); -inversion inversion(circle c); -path compassmark(pair O, pair A, real position, real angle=<default>); -vector vector(coordsys R=<default>, pair v); -vector vector(point M); -path square(pair z1, pair z2); -line isotomic(vertex V, point M); -point isotomic(side side, point M); -triangle isotomic(triangle t, point M); -transform hprojection(line l, bool safe=<default>); -line median(vertex V); -line median(side side); -real arclength(circle c); -real arclength(ellipse el); -real arclength(ellipse el, real angle1, real angle2, bool direction=<default>, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -real arclength(parabola p, real angle); -real arclength(parabola p, real angle1, real angle2); -real arclength(parabola p); -real arclength(arc a); -pair attract(pair m, path g, real fuzz=<default>); -point attract(point M, path g, real fuzz=<default>); -bool degenerate(conic c); -bool degenerate(circle c); -bool degenerate(ellipse el); -void perpendicularmark(picture pic=<default>, point z, explicit pair align, explicit pair dir=<default>, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -void perpendicularmark(picture pic=<default>, point z, vector align, vector dir=<default>, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -void perpendicularmark(picture pic=<default>, point z, explicit pair align, path g, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -void perpendicularmark(picture pic=<default>, point z, vector align, path g, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -void perpendicularmark(picture pic=<default>, line l1, line l2, real size=<default>, pen p=<default>, int quarter=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -void markrightangle(picture pic=<default>, point A, point O, point B, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -point ppoint(arc a, real x); -line sector(int n=<default>, int p=<default>, line l1, line l2, real angle=<default>, bool sharp=<default>); -line hline(coordsys R=<default>); -line hline; -point circumcenter(point A, point B, point C); -point circumcenter(triangle t); -real binomial(real n, real k); -point point(coordsys R, pair p, real m=<default>); -point point(explicit pair p, real m); -point point(coordsys R, explicit point M, real m=<default>); -point point(explicit vector u); -point point(circle c, abscissa l); -point point(ellipse el, abscissa l); -point point(parabola p, abscissa l); -point point(hyperbola h, abscissa l); -point point(explicit conic co, abscissa l); -point point(line l, abscissa x); -point point(line l, explicit real x); -point point(line l, explicit int x); -point point(explicit circle c, explicit real x); -point point(explicit circle c, explicit int x); -point point(explicit ellipse el, explicit real x); -point point(explicit ellipse el, explicit int x); -point point(explicit parabola p, explicit real x); -point point(explicit parabola p, explicit int x); -point point(explicit hyperbola h, explicit real x); -point point(explicit hyperbola h, explicit int x); -point point(explicit conic co, explicit real x); -point point(explicit conic co, explicit int x); -point point(arc a, abscissa l); -point point(arc a, real x); -pair point(explicit arc a, int x); -point point(explicit mass m); -point point(explicit vertex V); -point point(trilinear tri); -point point(circle c, point M); -point point(circle c, explicit vector v); -point bisectorpoint(side side); -transform scale(real k, point M); -transform scale(real k, point A, point B, point C, point D, bool safe=<default>); -transform scale(real k, line l1, line l2, bool safe=<default>); -bool operator ==(coordsys c1, coordsys c2); -bool operator ==(explicit point M, explicit point N); -bool operator ==(explicit vector u, explicit vector v); -bool operator ==(line l1, line l2); -point arcsubtendedcenter(point A, point B, real angle); -triangle triangleAbc(real alpha, real b, real c, real angle=<default>, point A=<default>); -vector unit(point M); -vector unit(vector u); -transform reflect(line l); -transform reflect(line l1, line l2, bool safe=<default>); -real EPS; -point isogonal(side side, point M); -line isogonal(vertex V, point M); -triangle isogonal(triangle t, point M); -bqe canonical(bqe bqe); -void clipdraw(picture pic=<default>, Label L=<default>, path g, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, real xmargin=<default>, real ymargin=<default>, Label legend=<default>, marker marker=<default>); -real sharpdegrees(line l1, line l2); -triangle incentral(triangle t); -point origin; -point origin(coordsys R=<default>); -string massformat(string format=<default>, string s, mass M); -line complementary(explicit line l); -line[] complementary(explicit segment s); -arc complementary(arc a); -void write(explicit line l); -void write(explicit segment s); -void write(trilinear tri); -point midpoint(segment s); -point midpoint(side side); -int ellipsenodesnumberfactor; +coordsys operator init(); +point operator init(); +vector operator init(); +line operator init(); +segment operator init(); +bqe operator init(); +conic operator init(); +circle operator init(); +ellipse operator init(); +parabola operator init(); +hyperbola operator init(); +abscissa operator init(); +arc operator init(); +mass operator init(); +triangle operator init(); +trilinear operator init(); +inversion operator init(); pair operator cast(point P); pair[] operator cast(point[] P); point operator cast(pair p); @@ -2486,89 +2733,32 @@ point operator cast(vertex V); point operator cast(trilinear tri); circle operator cast(inversion i); inversion operator cast(circle c); -point curpoint(line l, real x); -point curpoint(explicit circle c, real x); -point curpoint(explicit ellipse el, real x); -point curpoint(explicit parabola p, real x); -point curpoint(conic co, real x); -point curpoint(arc a, real x); -point angpoint(conic co, real angle); -point angpoint(explicit circle c, real x); -point angpoint(explicit ellipse el, real x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -point angpoint(explicit parabola p, real x); -point angpoint(explicit hyperbola h, real x, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>); -point angpoint(arc a, real angle); -pen addpenline; -pen addpenline(pen p); -point relpoint(line l, real x); -point relpoint(explicit circle c, real x); -point relpoint(explicit ellipse el, real x); -point relpoint(explicit parabola p, real x); -point relpoint(explicit hyperbola h, real x); -point relpoint(explicit conic co, explicit real x); -point relpoint(explicit conic co, explicit int x); -point relpoint(arc a, real x); -bool collinear(vector u, vector v); -pair coordinates(point M); -int circlenodesnumberfactor; -coordsys operator init(); -point operator init(); -vector operator init(); -line operator init(); -segment operator init(); -bqe operator init(); -conic operator init(); -circle operator init(); -ellipse operator init(); -parabola operator init(); -hyperbola operator init(); -abscissa operator init(); -arc operator init(); -mass operator init(); -triangle operator init(); -trilinear operator init(); -inversion operator init(); -point excenter(point A, point B, point C); -point excenter(side side); -real degrees(explicit point M, coordsys R=<default>, bool warn=<default>); -real degrees(vector v, coordsys R=<default>, bool warn=<default>); -real degrees(line l, coordsys R=<default>); -real degrees(line l1, line l2); -real degrees(arc a); -point foot(vertex V); -point foot(side side); +void lineinversion(); +pair operator /(pair p, coordsys R); +point operator /(explicit point P, real x); +point operator /(real x, explicit point P); +vector operator /(explicit vector v, real x); +line operator /(line l, real x); +line operator /(line l, int x); +circle operator /(explicit circle c, real x); +circle operator /(explicit circle c, int x); +ellipse operator /(ellipse el, real x); +abscissa operator /(real x, explicit abscissa a); +abscissa operator /(explicit abscissa a, real x); +abscissa operator /(int x, explicit abscissa a); +arc operator /(explicit arc a, real x); +mass operator /(explicit mass M, real x); +mass operator /(explicit mass M, int x); +transform scaleO(real x); +real operator ^(point M, explicit circle c); +bool operator ==(coordsys c1, coordsys c2); +bool operator ==(explicit point M, explicit point N); +bool operator ==(explicit vector u, explicit vector v); +bool operator ==(line l1, line l2); bool operator !=(explicit point M, explicit point N); bool operator !=(line l1, line l2); -arc arcsubtended(point A, point B, real angle); -int parabolanodesnumber(parabola p, real angle1, real angle2); -void draw(picture pic=<default>, Label L=<default>, line l, bool dirA=<default>, bool dirB=<default>, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); -void draw(picture pic=<default>, Label[] L=<default>, line[] l, align align=<default>, pen[] p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label[] legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); -void draw(picture pic=<default>, Label[] L=<default>, line[] l, align align=<default>, pen p, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label[] legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); -void draw(picture pic=<default>, Label L=<default>, circle c, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(picture pic=<default>, Label L=<default>, ellipse el, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(picture pic=<default>, Label L=<default>, parabola parabola, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(picture pic=<default>, Label L=<default>, hyperbola h, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(picture pic=<default>, Label L=<default>, explicit conic co, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(picture pic=<default>, Label L=<default>, arc a, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, bool bar(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, Label legend=<default>, marker marker=<default>); -void draw(picture pic=<default>, triangle t, pen p=<default>, marker marker=<default>); -void draw(picture pic=<default>, triangle[] t, pen p=<default>, marker marker=<default>); -bool inside(ellipse el, point M); -bool inside(parabola p, point M); -transform vprojection(line l, bool safe=<default>); -string conictype(bqe bqe); -circle circumcircle(point A, point B, point C); -circle circumcircle(triangle t); -pen addpenarc; -pen addpenarc(pen p); -line reverse(line l); -arc reverse(arc a); -void drawline(picture pic=<default>, triangle t, pen p=<default>); -circle incircle(point A, point B, point C); -circle incircle(triangle t); -real[] intersect(path g, explicit pair p, real fuzz=<default>); -real[] intersect(path g, explicit point P, real fuzz=<default>); -side opposite(vertex V); -vertex opposite(side side); +transform xscaleO(real x); +transform yscaleO(real x); line[] operator ^^(line l1, line l2); line[] operator ^^(line l1, line[] l2); line[] operator ^^(line[] l2, line l1); @@ -2576,103 +2766,92 @@ line[] operator ^^(line[] l1, line[] l2); triangle[] operator ^^(triangle[] t1, triangle t2); triangle[] operator ^^(... triangle[] t); real elle(real phi, real k); -point conj(explicit point M); -vector conj(explicit vector u); -hyperbola conj(hyperbola h); +point excenter(point A, point B, point C); +point excenter(side side); mass mass(point M, real m); mass mass(explicit point P); mass mass(coordsys R, explicit pair p, real m); -point operator +(explicit point P1, explicit point P2); -point operator +(explicit point P1, explicit pair p2); -point operator +(explicit pair p1, explicit point p2); -point operator +(point M, explicit vector v); -point operator +(explicit pair m, explicit vector v); -vector operator +(explicit vector v1, explicit vector v2); -line operator +(line l, vector u); -conic operator +(conic c, explicit point M); -conic operator +(conic c, explicit pair m); -conic operator +(conic c, vector v); -circle operator +(explicit circle c, explicit point M); -circle operator +(explicit circle c, pair m); -circle operator +(explicit circle c, vector m); -abscissa operator +(real x, explicit abscissa a); -abscissa operator +(explicit abscissa a, real x); -abscissa operator +(int x, explicit abscissa a); -arc operator +(explicit arc a, point M); -arc operator +(explicit arc a, vector v); -mass operator +(mass M1, mass M2); -mass operator +(explicit mass M, real x); -mass operator +(explicit mass M, int x); -point intersectionpoint(line l1, line l2); -bool concurrent(... line[] l); -void label(picture pic=<default>, Label L, explicit mass M, align align=<default>, string format=<default>, pen p=<default>, filltype filltype=<default>); -void label(picture pic=<default>, Label L, vertex V, pair align=<default>, real alignFactor=<default>, pen p=<default>, filltype filltype=<default>); -void label(picture pic=<default>, Label LA=<default>, Label LB=<default>, Label LC=<default>, triangle t, real alignAngle=<default>, real alignFactor=<default>, pen p=<default>, filltype filltype=<default>); -circle circle(explicit point C, real r); -circle circle(point A, point B); -circle circle(segment s); -circle circle(point A, point B, point C); -circle circle(triangle t); -circle circle(inversion i); +bool operator @(point m, line l); +bool operator @(point M, conic co); +bool operator @(point M, explicit circle c); +bool operator @(point M, arc a); +triangle triangle(line l1, line l2, line l3); +trilinear trilinear(triangle t, real a, real b, real c); +trilinear trilinear(triangle t, point M); +trilinear trilinear(triangle t, real f(real, real, real), real a=<default>, real b=<default>, real c=<default>); +triangle triangleAbc(real alpha, real b, real c, real angle=<default>, point A=<default>); +triangle triangleabc(real a, real b, real c, real angle=<default>, point A=<default>); +triangle anticomplementary(triangle t); +vector dir(vertex V); +real degrees(explicit point M, coordsys R=<default>, bool warn=<default>); +real degrees(vector v, coordsys R=<default>, bool warn=<default>); +real degrees(line l, coordsys R=<default>); +real degrees(line l1, line l2); +real degrees(arc a); segment segment(point A, point B); segment segment(line l); segment segment(explicit side side); -transform yscale(real k, point M); -int sgnd(real x); -int sgnd(int x); -line line(point A, bool extendA=<default>, point B, bool extendB=<default>); -line line(segment s); -line line(real a, point A=<default>); -line line(point A=<default>, real a); -line line(int a, point A=<default>); -line line(coordsys R=<default>, real slope, real origin); -line line(coordsys R=<default>, real a, real b, real c); -line line(circle c); -line line(explicit side side); -arc arc(ellipse el, real angle1, real angle2, path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)=<default>, bool direction=<default>); -arc arc(ellipse el, explicit abscissa x1, explicit abscissa x2, bool direction=<default>); -arc arc(ellipse el, point M, point N, bool direction=<default>); -arc arc(explicit arc a, abscissa x1, abscissa x2); -arc arc(explicit arc a, point M, point N); -path arc(explicit pair B, explicit pair A, explicit pair C, real r); -coordsys canonicalcartesiansystem(ellipse el); -coordsys canonicalcartesiansystem(parabola p); -coordsys canonicalcartesiansystem(hyperbola h); -coordsys canonicalcartesiansystem(explicit conic co); -hyperbola hyperbola(point P1, point P2, real ae, bool byfoci=<default>); -hyperbola hyperbola(point C, real a, real b, real angle=<default>); -hyperbola hyperbola(bqe bqe); -hyperbola hyperbola(point M1, point M2, point M3, point M4, point M5); -line vline(coordsys R=<default>); -line vline; +real linemargin; +real linemargin(); +line Oy(coordsys R=<default>); +line Oy; +path fromCenter(conic co, real angle1, real angle2, int n, bool direction); +void markarc(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, arc a, pen sectorpen=<default>, pen markpen=<default>, marginT margin(path, pen)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marker marker=<default>); +real approximate(real t); +real[] approximate(real[] T); +void markangle(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, explicit line l1, explicit line l2, explicit pair align=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, pen p=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>, marker marker=<default>); +void markangle(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, explicit line l1, explicit line l2, explicit vector align, bool arrow(picture, path, pen, marginT(path, pen))=<default>, pen p=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>, marker marker=<default>); +transform hprojection(line l, bool safe=<default>); +point conj(explicit point M); +vector conj(explicit vector u); +hyperbola conj(hyperbola h); +transform vprojection(line l, bool safe=<default>); +parabola parabola(point F, line l); +parabola parabola(point F, point vertex); +parabola parabola(point F, real a, real angle); +parabola parabola(bqe bqe); +parabola parabola(point M1, point M2, point M3, line l); +parabola parabola(point M1, point M2, point M3, point M4, point M5); +bool onpath(picture pic=<default>, path g, point M, pen p=<default>); +int parabolanodesnumber(parabola p, real angle1, real angle2); +int parabolanodesnumberfactor; +path NoModifier(path); +coordsys currentcoordsys; +point foot(vertex V); +point foot(side side); +path currentpolarconicroutine(conic co, real angle1, real angle2, int n, bool direction); transform rotate(explicit pair dir); transform rotate(explicit vector dir); transform rotate(explicit point dir); -void addMargins(picture pic=<default>, real lmargin=<default>, real bmargin=<default>, real rmargin=<default>, real tmargin=<default>, bool rigid=<default>, bool allObject=<default>); -ellipse ellipse(point F1, point F2, real a); -ellipse ellipse(point F1, point F2, point M); -ellipse ellipse(point C, real a, real b, real angle=<default>); -ellipse ellipse(bqe bqe); -ellipse ellipse(point M1, point M2, point M3, point M4, point M5); -triangle triangle(line l1, line l2, line l3); -path fromCenter(conic co, real angle1, real angle2, int n, bool direction); -abscissa nodabscissa(real x); -abscissa nodabscissa(int x); -abscissa nodabscissa(line l, point M); -abscissa nodabscissa(circle c, point M); -abscissa nodabscissa(ellipse el, point M); -abscissa nodabscissa(parabola p, point M); -abscissa nodabscissa(conic co, point M); -abscissa nodabscissa(arc a, point M); -transform xscale(real k, point M); -bool between(point M, point O, point N); -triangle cevian(triangle t, point P); -point cevian(side side, point P); -line cevian(vertex V, point P); -line Ox(coordsys R=<default>); -line Ox; -real abs(coordsys R, pair m); -real abs(explicit point M); +real EPS; +transform rotateO(real a); +line perpendicular(point M, line l); +line perpendicular(point M, explicit vector normal); +line perpendicular(point M, explicit pair normal); +bool perpendicular(line l1, line l2); +void perpendicular(picture pic=<default>, pair z, pair align, pair dir=<default>, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +void perpendicular(picture pic=<default>, pair z, pair align, path g, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +real binomial(real n, real k); +void perpendicularmark(picture pic=<default>, point z, explicit pair align, explicit pair dir=<default>, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +void perpendicularmark(picture pic=<default>, point z, vector align, vector dir=<default>, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +void perpendicularmark(picture pic=<default>, point z, explicit pair align, path g, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +void perpendicularmark(picture pic=<default>, point z, vector align, path g, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +void perpendicularmark(picture pic=<default>, line l1, line l2, real size=<default>, pen p=<default>, int quarter=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); +pair attract(pair m, path g, real fuzz=<default>); +point attract(point M, path g, real fuzz=<default>); +void Drawline(picture pic=<default>, Label L=<default>, pair P, bool dirP=<default>, pair Q, bool dirQ=<default>, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); +bool simeq(point A, point B, real fuzz=<default>); +bool simeq(point a, real b, real fuzz=<default>); +point inverse(real k, point A, point M); +circle inverse(real k, point A, line l); +circle inverse(real k, point A, circle c); +arc inverse(real k, point A, segment s); +inversion inversion(real k, point C); +inversion inversion(point C, real k); +inversion inversion(circle c1, circle c2, real sgn=<default>); +inversion inversion(circle c1, circle c2, circle c3); +inversion inversion(circle c); +coordsys cartesiansystem(pair O=<default>, pair i, pair j); line tangent(circle c, abscissa x); line tangent(circle c, point M); line tangent(circle c, explicit vector v); @@ -2681,60 +2860,35 @@ line tangent(parabola p, abscissa x); line tangent(hyperbola h, abscissa x); line tangent(explicit arc a, abscissa x); line tangent(explicit arc a, point M); -line altitude(vertex V); -line altitude(side side); -trilinear trilinear(triangle t, real a, real b, real c); -trilinear trilinear(triangle t, point M); -trilinear trilinear(triangle t, real f(real, real, real), real a=<default>, real b=<default>, real c=<default>); -vector dir(vertex V); -real angle(explicit point M, coordsys R=<default>, bool warn=<default>); -real angle(explicit vector v, coordsys R=<default>, bool warn=<default>); -real angle(line l, coordsys R=<default>); -real angle(line l1, line l2); -real angle(arc a); -mass masscenter(... mass[] M); -triangle tangential(triangle t); -point operator -(explicit point P); -point operator -(explicit point P1, explicit point P2); -point operator -(explicit point P1, explicit pair p2); -point operator -(explicit pair p1, explicit point P2); -point operator -(point M, explicit vector v); -vector operator -(explicit vector v); -point operator -(explicit pair m, explicit vector v); -vector operator -(explicit vector v1, explicit vector v2); -line operator -(line l, vector u); -conic operator -(conic c, explicit point M); -conic operator -(conic c, explicit pair m); -conic operator -(conic c, vector v); -circle operator -(explicit circle c, explicit point M); -circle operator -(explicit circle c, pair m); -circle operator -(explicit circle c, vector m); -abscissa operator -(explicit abscissa a); -abscissa operator -(real x, explicit abscissa a); -abscissa operator -(explicit abscissa a, real x); -abscissa operator -(int x, explicit abscissa a); -arc operator -(explicit arc a, point M); -arc operator -(explicit arc a, vector v); -mass operator -(mass M1, mass M2); -mass operator -(explicit mass M, real x); -mass operator -(explicit mass M, int x); -real[] realquarticroots(real a, real b, real c, real d, real e); line[] tangents(circle c, point M); line[] tangents(ellipse el, point M); line[] tangents(parabola p, point M); line[] tangents(hyperbola h, point M); -triangle triangleabc(real a, real b, real c, real angle=<default>, point A=<default>); -void markangle(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, explicit line l1, explicit line l2, explicit pair align=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, pen p=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>, marker marker=<default>); -void markangle(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, explicit line l1, explicit line l2, explicit vector align, bool arrow(picture, path, pen, marginT(path, pen))=<default>, pen p=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>, marker marker=<default>); -bool isparabola(bqe bqe); -point[] standardizecoordsys(coordsys R=<default>, bool warn=<default> ... point[] M); -transform scaleO(real x); -real approximate(real t); -real[] approximate(real[] T); -bool simeq(point A, point B, real fuzz=<default>); -bool simeq(point a, real b, real fuzz=<default>); -real epsgeo; -real rf(real x, real y, real z); +real centerToFocus(ellipse el, real a); +bqe equation(ellipse el); +bqe equation(parabola p); +bqe equation(hyperbola h); +bqe equation(explicit conic co); +triangle tangential(triangle t); +triangle pedal(triangle t, point M); +line pedal(side side, point M); +string massformat(string format=<default>, string s, mass M); +triangle cevian(triangle t, point P); +point cevian(side side, point P); +line cevian(vertex V, point P); +int relativesystem; +void drawline(picture pic=<default>, triangle t, pen p=<default>); +void addMargins(picture pic=<default>, real lmargin=<default>, real bmargin=<default>, real rmargin=<default>, real tmargin=<default>, bool rigid=<default>, bool allObject=<default>); +triangle medial(triangle t); +line median(vertex V); +line median(side side); +void show(picture pic=<default>, Label lo=<default>, Label li=<default>, Label lj=<default>, coordsys R, pen dotpen=<default>, pen xpen=<default>, pen ypen=<default>, pen ipen=<default>, pen jpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); +void show(Label L, vector v, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); +void show(picture pic=<default>, line l, pen p=<default>); +void show(picture pic=<default>, Label LA=<default>, Label LB=<default>, Label LC=<default>, Label La=<default>, Label Lb=<default>, Label Lc=<default>, triangle t, pen p=<default>, filltype filltype=<default>); +line isotomic(vertex V, point M); +point isotomic(side side, point M); +triangle isotomic(triangle t, point M); abscissa curabscissa(real x); abscissa curabscissa(int x); abscissa curabscissa(line l, point M); @@ -2743,169 +2897,9 @@ abscissa curabscissa(ellipse el, point M); abscissa curabscissa(parabola p, point M); abscissa curabscissa(conic co, point M); abscissa curabscissa(arc a, point M); -real rd(real x, real y, real z); -coordsys cartesiansystem(pair O=<default>, pair i, pair j); -void show(picture pic=<default>, Label lo=<default>, Label li=<default>, Label lj=<default>, coordsys R, pen dotpen=<default>, pen xpen=<default>, pen ypen=<default>, pen ipen=<default>, pen jpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); -void show(Label L, vector v, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); -void show(picture pic=<default>, line l, pen p=<default>); -void show(picture pic=<default>, Label LA=<default>, Label LB=<default>, Label LC=<default>, Label La=<default>, Label Lb=<default>, Label Lc=<default>, triangle t, pen p=<default>, filltype filltype=<default>); -pair operator /(pair p, coordsys R); -point operator /(explicit point P, real x); -point operator /(real x, explicit point P); -vector operator /(explicit vector v, real x); -line operator /(line l, real x); -line operator /(line l, int x); -circle operator /(explicit circle c, real x); -circle operator /(explicit circle c, int x); -ellipse operator /(ellipse el, real x); -abscissa operator /(real x, explicit abscissa a); -abscissa operator /(explicit abscissa a, real x); -abscissa operator /(int x, explicit abscissa a); -arc operator /(explicit arc a, real x); -mass operator /(explicit mass M, real x); -mass operator /(explicit mass M, int x); -coordsys defaultcoordsys; -coordsys currentcoordsys; -point changecoordsys(coordsys R, point M); -vector changecoordsys(coordsys R, vector v); -line changecoordsys(coordsys R, line l); -bqe changecoordsys(coordsys R, bqe bqe); -conic changecoordsys(coordsys R, conic co); -bool samecoordsys(bool warn=<default> ... point[] M); -bool samecoordsys(bool warn=<default> ... bqe[] bqes); -pair locate(point P); -point locate(pair p); -pair locate(explicit vector v); -real length(explicit point M); -real length(segment s); -conic conic(point F, line l, real e); -conic conic(point M1, point M2, point M3, point M4, point M5); -conic conic(bqe bqe); -transform rotateO(real a); -transform xscaleO(real x); -bool byvertices; -transform yscaleO(real x); -real linemargin; -real linemargin(); -string defaultmassformat; -bool defined(point P); -bool finite(explicit point p); -point orthocentercenter(point A, point B, point C); -point orthocentercenter(triangle t); -bool onpath(picture pic=<default>, path g, point M, pen p=<default>); -bool sameside(point M, point N, point O); -bool sameside(point M, point P, line l); -point[] sameside(point M, line l1, line l2); -path currentpolarconicroutine(conic co, real angle1, real angle2, int n, bool direction); -int ellipsenodesnumber(real a, real b); -int ellipsenodesnumber(real a, real b, real angle1, real angle2, bool dir); -path NoModifier(path); -void Drawline(picture pic=<default>, Label L=<default>, pair P, bool dirP=<default>, pair Q, bool dirQ=<default>, align align=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, Label legend=<default>, marker marker=<default>, path pathModifier(path)=<default>); -void distance(picture pic=<default>, Label L=<default>, point A, point B, bool rotated=<default>, real offset=<default>, pen p=<default>, pen joinpen=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); -real distance(point M, line l); -real distance(line l, point M); -bool operator @(point m, line l); -bool operator @(point M, conic co); -bool operator @(point M, explicit circle c); -bool operator @(point M, arc a); -coordsys coordsys(line l); -coordsys coordsys(conic co); -coordsys coordsys(ellipse el); -line extend(line l); -line Oy(coordsys R=<default>); -line Oy; -void dot(picture pic=<default>, Label L, explicit point Z, align align=<default>, string format=<default>, pen p=<default>); -real dot(point A, point B); -real dot(point A, explicit pair B); -real dot(explicit pair A, point B); -void dot(picture pic=<default>, Label L, explicit mass M, align align=<default>, string format=<default>, pen p=<default>); -void dot(picture pic=<default>, triangle t, pen p=<default>); -real centerToFocus(ellipse el, real a); -line parallel(point M, line l); -line parallel(point M, explicit vector dir); -line parallel(point M, explicit pair dir); -bool parallel(line l1, line l2, bool strictly=<default>); -line perpendicular(point M, line l); -line perpendicular(point M, explicit vector normal); -line perpendicular(point M, explicit pair normal); -bool perpendicular(line l1, line l2); -void perpendicular(picture pic=<default>, pair z, pair align, pair dir=<default>, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -void perpendicular(picture pic=<default>, pair z, pair align, path g, real size=<default>, pen p=<default>, marginT margin(path, pen)=<default>, filltype filltype=<default>); -real sharpangle(line l1, line l2); -line bisector(line l1, line l2, real angle=<default>, bool sharp=<default>); -line bisector(point A, point B, point C, point D, real angle=<default>, bool sharp=<default>); -line bisector(segment s, real angle=<default>); -line bisector(point A, point B, real angle=<default>); -line bisector(vertex V, real angle=<default>); -line bisector(side side); -bqe bqe(coordsys R=<default>, real a, real b, real c, real d, real e, real f); -bqe bqe(point M1, point M2, point M3, point M4, point M5); -int conicnodesfactor; -int conicnodesnumber(conic co, real angle1, real angle2, bool dir=<default>); -int circlenodesnumber(real r); -int circlenodesnumber(real r, real angle1, real angle2); -int parabolanodesnumberfactor; -real perpfactor; -int hyperbolanodesnumberfactor; -int hyperbolanodesnumber(hyperbola h, real angle1, real angle2); -path arcfromfocus(conic co, real angle1, real angle2, int n=<default>, bool direction=<default>); -bool byfoci; -parabola parabola(point F, line l); -parabola parabola(point F, point vertex); -parabola parabola(point F, real a, real angle); -parabola parabola(bqe bqe); -parabola parabola(point M1, point M2, point M3, line l); -parabola parabola(point M1, point M2, point M3, point M4, point M5); -real operator ^(point M, explicit circle c); -path arcfromcenter(ellipse el, real angle1, real angle2, bool direction=<default>, int n=<default>); -path arcfromcenter(hyperbola h, real angle1, real angle2, int n=<default>, bool direction=<default>); -path arcfromcenter(explicit conic co, real angle1, real angle2, int n, bool direction=<default>); -path fromFocus(conic co, real angle1, real angle2, int n, bool direction); -bqe equation(ellipse el); -bqe equation(parabola p); -bqe equation(hyperbola h); -bqe equation(explicit conic co); -real[] bangles(picture pic=<default>, parabola p); -real[][] bangles(picture pic=<default>, hyperbola h); -real focusToCenter(ellipse el, real a); -int relativesystem; -int curvilinearsystem; -int nodesystem; -abscissa relabscissa(real x); -abscissa relabscissa(int x); -abscissa relabscissa(line l, point M); -abscissa relabscissa(circle c, point M); -abscissa relabscissa(ellipse el, point M); -abscissa relabscissa(conic co, point M); -abscissa relabscissa(arc a, point M); -path polarconicroutine(conic co, real angle1, real angle2, int n, bool direction)(conic co); -void markarc(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, arc a, pen sectorpen=<default>, pen markpen=<default>, marginT margin(path, pen)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marker marker=<default>); -int arcnodesnumber(explicit arc a); -path arctopath(arc a, int n); -point incenter(point A, point B, point C); -point incenter(triangle t); -real inradius(point A, point B, point C); -real inradius(triangle t); -real exradius(point A, point B, point C); -real exradius(side side); -circle excircle(point A, point B, point C); -circle excircle(side side); -int[] numarray; -int[] tricoef(side side); -point symmedian(triangle t); -point symmedian(side side); -line symmedian(vertex V); -int angularsystem; -point gergonne(triangle t); -path Arc(pair c, real r, real angle1, real angle2, bool direction, int n=<default>); -path Arc(pair c, real r, real angle1, real angle2, int n=<default>); -path Arc(pair c, explicit pair z1, explicit pair z2, bool direction=<default>, int n=<default>); -guide polargraph(picture pic=<default>, real r(real), real a, real b, int n=<default>, guide join(... guide[])=<default>); -guide polargraph(picture pic=<default>, real[] r, real[] theta, guide join(... guide[])=<default>); -pair polar(real r, real theta); -string conditionlength; -guide Hermite(... guide[])(real[] splinetype(real[], real[])); -guide Hermite(... guide[]); +string DefaultFormat(real); +string DefaultLogFormat(real)(int base); +string DefaultLogFormat(real); guide graph(pair f(real), real, real, int)(guide join(... guide[])); guide[] graph(pair f(real), real, real, int)(guide join(... guide[]), bool3 cond(real)); guide graph(picture pic=<default>, real f(real), real a, real b, int n=<default>, real T(real)=<default>, guide join(... guide[])=<default>); @@ -2918,216 +2912,153 @@ guide graph(picture pic=<default>, pair[] z, guide join(... guide[])=<default>); guide[] graph(picture pic=<default>, pair[] z, bool3[] cond, guide join(... guide[])=<default>); guide graph(picture pic=<default>, real[] x, real[] y, guide join(... guide[])=<default>); guide[] graph(picture pic=<default>, real[] x, real[] y, bool3[] cond, guide join(... guide[])=<default>); -picture secondaryY(picture primary=<default>, void f(picture)); -picture secondaryX(picture primary=<default>, void f(picture)); -string noprimary; -void labely(picture pic=<default>, Label L=<default>, explicit pair z, align align=<default>, string format=<default>, pen p=<default>); -void labely(picture pic=<default>, Label L=<default>, real y, align align=<default>, string format=<default>, pen p=<default>); -void labely(picture pic=<default>, Label L, string format=<default>, explicit pen p=<default>); -void labelx(picture pic=<default>, Label L=<default>, explicit pair z, align align=<default>, string format=<default>, pen p=<default>); -void labelx(picture pic=<default>, Label L=<default>, real x, align align=<default>, string format=<default>, pen p=<default>); -void labelx(picture pic=<default>, Label L, string format=<default>, explicit pen p=<default>); -void tick(picture pic=<default>, pair z, pair dir, real size=<default>, pen p=<default>); -void tick(picture pic=<default>, Label L, real value, explicit pair z, pair dir, string format=<default>, real size=<default>, pen p=<default>); -void limits(picture pic=<default>, pair min, pair max, bool crop=<default>); -void crop(picture pic=<default>); -void ylimits(picture pic=<default>, real min=<default>, real max=<default>, bool crop=<default>); -void YZero(picture, axisT)(bool extend=<default>); -void YZero(picture, axisT); -void YEquals(picture, axisT)(real y, bool extend=<default>); -void XEquals(picture, axisT)(real x, bool extend=<default>); -void LeftRight(picture, axisT)(bool extend=<default>); -void LeftRight(picture, axisT); +scientific scientific(real x); void Left(picture, axisT)(bool extend=<default>); void Left(picture, axisT); -int Min; -void RightTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void RightTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void RightTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); -void NoTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(); -void NoTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); -tickvalues NoZero(tickvalues); -tickvalues OmitTickIntervals(tickvalues)(real[] a, real[] b); -void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks=<default>, real[] ticks=<default>, int N=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); -real zerotickfuzz; +autoscaleT defaultS; +void XEquals(picture, axisT)(real x, bool extend=<default>); +void YEquals(picture, axisT)(real y, bool extend=<default>); +string LogFormat(real)(int base); +string LogFormat(real); +axisT axis; +void axis(picture pic=<default>, Label L=<default>, path g, path g2=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>), ticklocate locate, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, int[] divisor=<default>, bool above=<default>, bool opposite=<default>); void drawtick(frame f, transform T, path g, path g2, ticklocate locate, real val, real Size, int sign, pen p, bool extend); -pair ticklabelshift(pair align, pen p=<default>); -string DefaultFormat(real); -string Format(real)(string s=<default>); -real upscale(real b, real a); -bool logaxiscoverage(int N, transform T, path g, ticklocate locate, pair side, int sign, real Size, Label F, string ticklabel(real), real limit, int first, int last); +real maxlength(pair a, pair b, int nx, int ny); +void errorbar(picture pic, pair z, pair dp, pair dm, pen p=<default>, real size=<default>); +void errorbars(picture pic=<default>, pair[] z, pair[] dp, pair[] dm=<default>, bool[] cond=<default>, pen p=<default>, real size=<default>); +void errorbars(picture pic=<default>, real[] x, real[] y, real[] dpx, real[] dpy, real[] dmx=<default>, real[] dmy=<default>, bool[] cond=<default>, pen p=<default>, real size=<default>); +void errorbars(picture pic=<default>, real[] x, real[] y, real[] dpy, bool[] cond=<default>, pen p=<default>, real size=<default>); +void xlimits(picture pic=<default>, real min=<default>, real max=<default>, bool crop=<default>); +string conditionlength; +void ylimits(picture pic=<default>, real min=<default>, real max=<default>, bool crop=<default>); +tickvalues None(tickvalues v); +scaleT Logarithmic; +void limits(picture pic=<default>, pair min, pair max, bool crop=<default>); +void crop(picture pic=<default>); +picture vectorfield(path vector(real), path g, int n, bool truesize=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>); +picture vectorfield(path vector(pair), pair a, pair b, int nx=<default>, int ny=<default>, bool truesize=<default>, real maxlength=<default>, bool cond(pair z)=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>); +string OmitFormat(real)(string s=<default> ... real[] x); +guide Straight(... guide[]); +int Min; +string trailingzero; +void label(picture pic, Label L, pair z, real x, align align, string format, pen p); +void labelx(picture pic=<default>, Label L=<default>, explicit pair z, align align=<default>, string format=<default>, pen p=<default>); +void labelx(picture pic=<default>, Label L=<default>, real x, align align=<default>, string format=<default>, pen p=<default>); +void labelx(picture pic=<default>, Label L, string format=<default>, explicit pen p=<default>); +path Arc(pair c, real r, real angle1, real angle2, bool direction, int n=<default>); +path Arc(pair c, real r, real angle1, real angle2, int n=<default>); +path Arc(pair c, explicit pair z1, explicit pair z2, bool direction=<default>, int n=<default>); +void labely(picture pic=<default>, Label L=<default>, explicit pair z, align align=<default>, string format=<default>, pen p=<default>); +void labely(picture pic=<default>, Label L=<default>, real y, align align=<default>, string format=<default>, pen p=<default>); +void labely(picture pic=<default>, Label L, string format=<default>, explicit pen p=<default>); pair labeltick(frame d, transform T, path g, ticklocate locate, real val, pair side, int sign, real Size, string ticklabel(real), Label F, real norm=<default>); -int[] divisors(int a, int b); -scientific scientific(real x); +void labelaxis(frame f, transform T, Label L, path g, ticklocate locate=<default>, int sign=<default>, bool ticklabels=<default>); +void xtick(picture pic=<default>, explicit pair z, pair dir=<default>, real size=<default>, pen p=<default>); +void xtick(picture pic=<default>, real x, pair dir=<default>, real size=<default>, pen p=<default>); +void xtick(picture pic=<default>, Label L, explicit pair z, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void xtick(picture pic=<default>, Label L, real x, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void ytick(picture pic=<default>, explicit pair z, pair dir=<default>, real size=<default>, pen p=<default>); +void ytick(picture pic=<default>, real y, pair dir=<default>, real size=<default>, pen p=<default>); +void ytick(picture pic=<default>, Label L, explicit pair z, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void ytick(picture pic=<default>, Label L, real y, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +picture secondaryX(picture primary=<default>, void f(picture)); +picture secondaryY(picture primary=<default>, void f(picture)); +tickvalues OmitTickIntervals(tickvalues)(real[] a, real[] b); +tickvalues OmitTickInterval(tickvalues)(real a, real b); +tickvalues OmitTick(tickvalues)(... real[] x); Label Break; tickvalues Break(tickvalues)(real, real); scaleT Linear; scaleT Linear(bool automin=<default>, bool automax=<default>, real s=<default>, real intercept=<default>); -bool axiscoverage(int N, transform T, path g, ticklocate locate, real Step, pair side, int sign, real Size, Label F, string ticklabel(real), real norm, real limit); -void errorbar(picture pic, pair z, pair dp, pair dm, pen p=<default>, real size=<default>); +pair tickMin(picture pic); +pair tickMax(picture pic); +string autoformat(string format=<default>, real norm ... real[] a); real linear(real)(real S(real x)=<default>, real Min, real Max); -void xaxis(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); -void yaxisAt(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>, bool opposite=<default>); -autoscaleT defaultS; +pair polar(real r, real theta); +string Format(real)(string s=<default>); +guide polargraph(picture pic=<default>, real r(real), real a, real b, int n=<default>, guide join(... guide[])=<default>); +guide polargraph(picture pic=<default>, real[] r, real[] theta, guide join(... guide[])=<default>); +void LeftTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void LeftTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void LeftTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); +tickvalues NoZero(tickvalues); +string NoZeroFormat(real); +guide Hermite(... guide[])(real[] splinetype(real[], real[])); +guide Hermite(... guide[]); +path Circle(pair c, real r, int n=<default>); +bool axiscoverage(int N, transform T, path g, ticklocate locate, real Step, pair side, int sign, real Size, Label F, string ticklabel(real), real norm, real limit); +scaleT Broken(real a, real b, bool automin=<default>, bool automax=<default>); +scaleT BrokenLog(real a, real b, bool automin=<default>, bool automax=<default>); +void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks=<default>, real[] ticks=<default>, int N=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void Ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); +string noprimary; +void xequals(picture pic=<default>, Label L=<default>, real x, bool extend=<default>, real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); +void yequals(picture pic=<default>, Label L=<default>, real y, bool extend=<default>, real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); +pair Scale(picture pic=<default>, pair z); +real ScaleX(picture pic=<default>, real x); real ScaleY(picture pic=<default>, real y); +void xaxisAt(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>, bool opposite=<default>); +void yaxisAt(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>, bool opposite=<default>); +tickvalues generateticks(int sign, Label F=<default>, string ticklabel(real)=<default>, int N, int n=<default>, real Step=<default>, real step=<default>, real Size=<default>, real size=<default>, transform T, pair side, path g, real limit, pen p, ticklocate locate, int[] divisor, bool opposite); +void xaxis(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); void yaxis(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>, bool autorotate=<default>); -void yequals(picture pic=<default>, Label L=<default>, real y, bool extend=<default>, real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); -guide Spline(... guide[]); -bounds autoscale(real Min, real Max, scaleT scale=<default>); -void autoscale(picture pic=<default>, void axis(picture, axisT)); -void Right(picture, axisT)(bool extend=<default>); -void Right(picture, axisT); -void errorbars(picture pic=<default>, pair[] z, pair[] dp, pair[] dm=<default>, bool[] cond=<default>, pen p=<default>, real size=<default>); -void errorbars(picture pic=<default>, real[] x, real[] y, real[] dpx, real[] dpy, real[] dmx=<default>, real[] dmy=<default>, bool[] cond=<default>, pen p=<default>, real size=<default>); -void errorbars(picture pic=<default>, real[] x, real[] y, real[] dpy, bool[] cond=<default>, pen p=<default>, real size=<default>); -void labelaxis(frame f, transform T, Label L, path g, ticklocate locate=<default>, int sign=<default>, bool ticklabels=<default>); -path Circle(pair c, real r, int n=<default>); -string LogFormat(real)(int base); -string LogFormat(real); void checkconditionlength(int x, int y); -pair zero(real); -void label(picture pic, Label L, pair z, real x, align align, string format, pen p); -pair tickMin(picture pic); -tickvalues generateticks(int sign, Label F=<default>, string ticklabel(real)=<default>, int N, int n=<default>, real Step=<default>, real step=<default>, real Size=<default>, real size=<default>, transform T, pair side, path g, real limit, pen p, ticklocate locate, int[] divisor, bool opposite); -ticklocate ticklocate(real a, real b, autoscaleT S=<default>, real tickmin=<default>, real tickmax=<default>, real time(real)=<default>, pair dir(real)=<default>); -int Max; -scaleT Logarithmic; +real xtrans(transform t, real x); void Top(picture, axisT)(bool extend=<default>); void Top(picture, axisT); -string NoZeroFormat(real); -string trailingzero; -path[] segment(pair[] z, bool[] cond, guide join(... guide[])=<default>); -picture vectorfield(path vector(real), path g, int n, bool truesize=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>); -picture vectorfield(path vector(pair), pair a, pair b, int nx=<default>, int ny=<default>, bool truesize=<default>, real maxlength=<default>, bool cond(pair z)=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>); -tickvalues OmitTickInterval(tickvalues)(real a, real b); -pair tickMax(picture pic); +real ytrans(transform t, real y); +void scale(picture pic=<default>, scaleT x, scaleT y=<default>, scaleT z=<default>); +void scale(picture pic=<default>, bool xautoscale=<default>, bool yautoscale=<default>, bool zautoscale=<default>); +int[] divisors(int a, int b); scientific operator init(); bounds operator init(); ticklocate operator init(); locateT operator init(); tickvalues operator init(); axisT operator init(); -real ScaleX(picture pic=<default>, real x); -real xtrans(transform t, real x); -void LeftTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void LeftTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void LeftTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); -pair Scale(picture pic=<default>, pair z); -void XZero(picture, axisT)(bool extend=<default>); -void XZero(picture, axisT); -real maxlength(pair a, pair b, int nx, int ny); -real ytrans(transform t, real y); int Both; -tickvalues None(tickvalues v); -scaleT BrokenLog(real a, real b, bool automin=<default>, bool automax=<default>); -void xequals(picture pic=<default>, Label L=<default>, real x, bool extend=<default>, real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); -tickvalues OmitTick(tickvalues)(... real[] x); -scaleT Log; -scaleT Log(bool automin=<default>, bool automax=<default>); +void axes(picture pic=<default>, Label xlabel=<default>, Label ylabel=<default>, bool extend=<default>, pair min=<default>, pair max=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); string signedtrailingzero; -string baselinetemplate; -void xlimits(picture pic=<default>, real min=<default>, real max=<default>, bool crop=<default>); -void scale(picture pic=<default>, scaleT x, scaleT y=<default>, scaleT z=<default>); -void scale(picture pic=<default>, bool xautoscale=<default>, bool yautoscale=<default>, bool zautoscale=<default>); +path[] segment(pair[] z, bool[] cond, guide join(... guide[])=<default>); +ticklocate ticklocate(real a, real b, autoscaleT S=<default>, real tickmin=<default>, real tickmax=<default>, real time(real)=<default>, pair dir(real)=<default>); +pair ticklabelshift(pair align, pen p=<default>); +pair zero(real); void Bottom(picture, axisT)(bool extend=<default>); void Bottom(picture, axisT); -void xtick(picture pic=<default>, explicit pair z, pair dir=<default>, real size=<default>, pen p=<default>); -void xtick(picture pic=<default>, real x, pair dir=<default>, real size=<default>, pen p=<default>); -void xtick(picture pic=<default>, Label L, explicit pair z, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -void xtick(picture pic=<default>, Label L, real x, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -void axes(picture pic=<default>, Label xlabel=<default>, Label ylabel=<default>, bool extend=<default>, pair min=<default>, pair max=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>); -string autoformat(string format=<default>, real norm ... real[] a); -void ytick(picture pic=<default>, explicit pair z, pair dir=<default>, real size=<default>, pen p=<default>); -void ytick(picture pic=<default>, real y, pair dir=<default>, real size=<default>, pen p=<default>); -void ytick(picture pic=<default>, Label L, explicit pair z, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -void ytick(picture pic=<default>, Label L, real y, pair dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -guide Straight(... guide[]); -scaleT Broken(real a, real b, bool automin=<default>, bool automax=<default>); void BottomTop(picture, axisT)(bool extend=<default>); void BottomTop(picture, axisT); -axisT axis; -void axis(picture pic=<default>, Label L=<default>, path g, path g2=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>), ticklocate locate, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, int[] divisor=<default>, bool above=<default>, bool opposite=<default>); -string DefaultLogFormat(real)(int base); -string DefaultLogFormat(real); -void xaxisAt(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>, marginT margin(path, pen)=<default>, bool above=<default>, bool opposite=<default>); +real zerotickfuzz; +real upscale(real b, real a); +bool logaxiscoverage(int N, transform T, path g, ticklocate locate, pair side, int sign, real Size, Label F, string ticklabel(real), real limit, int first, int last); +string baselinetemplate; +void NoTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(); +void NoTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); +void tick(picture pic=<default>, pair z, pair dir, real size=<default>, pen p=<default>); +void tick(picture pic=<default>, Label L, real value, explicit pair z, pair dir, string format=<default>, real size=<default>, pen p=<default>); int Value; -string OmitFormat(real)(string s=<default> ... real[] x); -void labelz(picture pic=<default>, Label L=<default>, triple v, align align=<default>, string format=<default>, pen p=<default>); -void labelx3(picture pic=<default>, Label L=<default>, real x, align align=<default>, string format=<default>, pen p=<default>); -void ztick3(picture pic=<default>, real z, triple dir=<default>, real size=<default>, pen p=<default>); -void ztick3(picture pic=<default>, Label L, real z, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -void ztick(picture pic=<default>, triple v, triple dir=<default>, real size=<default>, pen p=<default>); -void ztick(picture pic=<default>, Label L, triple v, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -void ytick3(picture pic=<default>, real y, triple dir=<default>, real size=<default>, pen p=<default>); -void ytick3(picture pic=<default>, Label L, real y, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -void xaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>); -void autoscale3(picture pic=<default>, void axis(picture, axisT)); -triple defaultdir(triple X, triple Y, triple Z, bool opposite=<default>, projection P); -real ztrans(real[][] t, real z); -void XYZero(picture, axisT)(triple align=<default>, bool extend=<default>); -void XYZero(picture, axisT); -void YZZero(picture, axisT)(triple align=<default>, bool extend=<default>); -void YZZero(picture, axisT); -void XZEquals(picture, axisT)(real x, real z, triple align=<default>, bool extend=<default>); -void YZEquals(picture, axisT)(real y, real z, triple align=<default>, bool extend=<default>); -void Bounds(picture, axisT)(int type=<default>, int type2=<default>, triple align=<default>, bool extend=<default>); -void Bounds(picture, axisT); -void InTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void InTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void InTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); -void NoTicks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(); -void NoTicks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); -void Ticks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks=<default>, real[] ticks=<default>, int N=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void Ticks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -surface bispline(real[][] z, real[][] p, real[][] q, real[][] r, real[] x, real[] y, bool[][] cond=<default>); -void axes3(picture pic=<default>, Label xlabel=<default>, Label ylabel=<default>, Label zlabel=<default>, bool extend=<default>, triple min=<default>, triple max=<default>, pen p=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>); -void zlimits(picture pic=<default>, real min=<default>, real max=<default>, bool crop=<default>); -bool vperiodic(triple[][] a); -void xtick3(picture pic=<default>, real x, triple dir=<default>, real size=<default>, pen p=<default>); -void xtick3(picture pic=<default>, Label L, real x, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -bool uperiodic(triple[][] a); -void zaxis3At(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real zmin=<default>, real zmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>, bool opposite=<default>, bool opposite2=<default>, bool primary=<default>); -void OutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void OutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void OutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); -triple tickMin3(picture pic); -void axis(picture pic=<default>, Label L=<default>, path3 g, path3 g2=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>), ticklocate locate, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, int[] divisor=<default>, bool above=<default>, bool opposite=<default>); -triple tickMax3(picture pic); -void ytick(picture pic=<default>, triple v, triple dir=<default>, real size=<default>, pen p=<default>); -void ytick(picture pic=<default>, Label L, triple v, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -real xtrans(real[][] t, real x); -void(flatguide3)[][] lift(real f(real x, real y), guide[][] g, void join(flatguide3)(... void(flatguide3)[])=<default>); -void(flatguide3)[][] lift(real f(pair z), guide[][] g, void join(flatguide3)(... void(flatguide3)[])=<default>); -real maxlength(triple f(pair z), pair a, pair b, int nu, int nv); -triple Dir(real)(triple dir); -void yaxis3At(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>, bool opposite=<default>, bool opposite2=<default>, bool primary=<default>); -locateT operator init(); -void draw(picture pic=<default>, Label[] L=<default>, void(flatguide3)[][] g, pen[] p, light light=<default>, string name=<default>, render render=<default>, interaction interaction=<default>); -void draw(picture pic=<default>, Label[] L=<default>, void(flatguide3)[][] g, pen p=<default>, light light=<default>, string name=<default>, render render=<default>, interaction interaction=<default>); -void labely3(picture pic=<default>, Label L=<default>, real y, align align=<default>, string format=<default>, pen p=<default>); -void xtick(picture pic=<default>, triple v, triple dir=<default>, real size=<default>, pen p=<default>); -void xtick(picture pic=<default>, Label L, triple v, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); -picture vectorfield(path3 vector(pair v), triple f(pair z), pair a, pair b, int nu=<default>, int nv=<default>, bool truesize=<default>, real maxlength=<default>, bool cond(pair z)=<default>, pen p=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, string name=<default>, render render=<default>); +scaleT Log; +scaleT Log(bool automin=<default>, bool automax=<default>); +void Right(picture, axisT)(bool extend=<default>); +void Right(picture, axisT); +void RightTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void RightTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void RightTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>); +int Max; +void XZero(picture, axisT)(bool extend=<default>); +void XZero(picture, axisT); +void YZero(picture, axisT)(bool extend=<default>); +void YZero(picture, axisT); +bounds autoscale(real Min, real Max, scaleT scale=<default>); +void autoscale(picture pic=<default>, void axis(picture, axisT)); +guide Spline(... guide[]); +void LeftRight(picture, axisT)(bool extend=<default>); +void LeftRight(picture, axisT); path3[] segment(triple[] v, bool[] cond, void join(flatguide3)(... void(flatguide3)[])=<default>); -ticklocate ticklocate(real a, real b, autoscaleT S=<default>, real tickmin=<default>, real tickmax=<default>, real time(real)=<default>, triple dir(real)); -void label(picture pic, Label L, triple v, real x, align align, string format, pen p); -void XZZero(picture, axisT)(triple align=<default>, bool extend=<default>); -void XZZero(picture, axisT); -void zaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real zmin=<default>, real zmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>); +locateT operator init(); void Straight(flatguide3)(... void(flatguide3)[]); -real ytrans(real[][] t, real y); -path3 Circle(triple c, real r, triple normal=<default>, int n=<default>); -void labelaxis(picture pic, real[][] T, Label L, path3 g, ticklocate locate=<default>, int sign=<default>, bool ticklabels=<default>); -void yaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>); -void XYEquals(picture, axisT)(real x, real y, triple align=<default>, bool extend=<default>); -real ScaleZ(picture pic=<default>, real z); -void xaxis3At(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>, bool opposite=<default>, bool opposite2=<default>, bool primary=<default>); -void Spline(flatguide3)(... void(flatguide3)[]); -void labelz3(picture pic=<default>, Label L=<default>, real z, align align=<default>, string format=<default>, pen p=<default>); void graph(flatguide3)(triple F(real), real, real, int)(void join(flatguide3)(... void(flatguide3)[])); void(flatguide3)[] graph(triple F(real), real, real, int)(void join(flatguide3)(... void(flatguide3)[]), bool3 cond(real)); void graph(flatguide3)(picture pic=<default>, real x(real), real y(real), real z(real), real a, real b, int n=<default>, void join(flatguide3)(... void(flatguide3)[])=<default>); @@ -3142,23 +3073,28 @@ void graph(flatguide3)(triple F(path, real), path p, int n=<default>, void join( void graph(flatguide3)(triple F(pair), path p, int n=<default>, void join(flatguide3)(... void(flatguide3)[])=<default>); void graph(flatguide3)(picture pic=<default>, real f(pair), path p, int n=<default>, void join(flatguide3)(... void(flatguide3)[])=<default>); void graph(flatguide3)(real f(pair), path p, int n=<default>, real T(pair), void join(flatguide3)(... void(flatguide3)[])=<default>); -path3 Arc(triple c, triple v1, triple v2, triple normal=<default>, bool direction=<default>, int n=<default>); -path3 Arc(triple c, real r, real theta1, real phi1, real theta2, real phi2, triple normal=<default>, bool direction, int n=<default>); -path3 Arc(triple c, real r, real theta1, real phi1, real theta2, real phi2, triple normal=<default>, int n=<default>); -void labeltick(picture pic, real[][] T, path3 g, ticklocate locate, real val, int sign, real Size, string ticklabel(real), Label F, real norm=<default>); -void labelx(picture pic=<default>, Label L=<default>, triple v, align align=<default>, string format=<default>, pen p=<default>); -void labely(picture pic=<default>, Label L=<default>, triple v, align align=<default>, string format=<default>, pen p=<default>); -void drawtick(picture pic, real[][] T, path3 g, path3 g2, ticklocate locate, real val, real Size, int sign, pen p, bool extend); -void tick(picture pic=<default>, triple v, triple dir, real size=<default>, pen p=<default>); -void tick(picture pic=<default>, Label L, real value, triple v, triple dir, string format=<default>, real size=<default>, pen p=<default>); -void polargraph(flatguide3)(real r(real, real), real theta(real), real phi(real), int n=<default>, void join(flatguide3)(... void(flatguide3)[])=<default>); -triple ticklabelshift(triple align, pen p=<default>); +void(flatguide3)[][] lift(real f(real x, real y), guide[][] g, void join(flatguide3)(... void(flatguide3)[])=<default>); +void(flatguide3)[][] lift(real f(pair z), guide[][] g, void join(flatguide3)(... void(flatguide3)[])=<default>); triple polar(real r, real theta, real phi); -triple Scale(picture pic=<default>, triple v); -void limits(picture pic=<default>, triple min, triple max); -void InOutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void InOutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); -void InOutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); +void polargraph(flatguide3)(real r(real, real), real theta(real), real phi(real), int n=<default>, void join(flatguide3)(... void(flatguide3)[])=<default>); +bool uperiodic(triple[][] a); +bool vperiodic(triple[][] a); +void OutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void OutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void OutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); +void axis(picture pic=<default>, Label L=<default>, path3 g, path3 g2=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>), ticklocate locate, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, int[] divisor=<default>, bool above=<default>, bool opposite=<default>); +void Bounds(picture, axisT)(int type=<default>, int type2=<default>, triple align=<default>, bool extend=<default>); +void Bounds(picture, axisT); +void XZZero(picture, axisT)(triple align=<default>, bool extend=<default>); +void XZZero(picture, axisT); +void YZZero(picture, axisT)(triple align=<default>, bool extend=<default>); +void YZZero(picture, axisT); +void xaxis3At(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>, bool opposite=<default>, bool opposite2=<default>, bool primary=<default>); +void yaxis3At(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>, bool opposite=<default>, bool opposite2=<default>, bool primary=<default>); +void zaxis3At(picture pic=<default>, Label L=<default>, void axis(picture, axisT), real zmin=<default>, real zmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>, bool opposite=<default>, bool opposite2=<default>, bool primary=<default>); +void xaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real xmin=<default>, real xmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>); +void yaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real ymin=<default>, real ymax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>); +void zaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, real zmin=<default>, real zmax=<default>, pen p=<default>, void ticks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, bool above=<default>); surface surface(triple[][] f, bool[][] cond=<default>); surface surface(real[][] f, real[] x, real[] y, real[] xsplinetype(real[], real[])=<default>, real[] ysplinetype(real[], real[])=<default>, bool[][] cond=<default>); surface surface(real[][] f, pair a, pair b, real[] xsplinetype(real[], real[]), real[] ysplinetype(real[], real[])=<default>, bool[][] cond=<default>); @@ -3167,253 +3103,315 @@ surface surface(triple f(pair z), pair a, pair b, int nu=<default>, int nv=<defa surface surface(triple f(pair z), pair a, pair b, int nu=<default>, int nv=<default>, real[](real[], real[])[] usplinetype, real[](real[], real[])[] vsplinetype=<default>, bool cond(pair z)=<default>); surface surface(real f(pair z), pair a, pair b, int nx=<default>, int ny=<default>, bool cond(pair z)=<default>); surface surface(real f(pair z), pair a, pair b, int nx=<default>, int ny=<default>, real[] xsplinetype(real[], real[]), real[] ysplinetype(real[], real[])=<default>, bool cond(pair z)=<default>); +void XYEquals(picture, axisT)(real x, real y, triple align=<default>, bool extend=<default>); +triple Dir(real)(triple dir); +void draw(picture pic=<default>, Label[] L=<default>, void(flatguide3)[][] g, pen[] p, light light=<default>, string name=<default>, render render=<default>, interaction interaction=<default>); +void draw(picture pic=<default>, Label[] L=<default>, void(flatguide3)[][] g, pen p=<default>, light light=<default>, string name=<default>, render render=<default>, interaction interaction=<default>); +void Ticks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks=<default>, real[] ticks=<default>, int N=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void Ticks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(int sign, Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +real maxlength(triple f(pair z), pair a, pair b, int nu, int nv); +void drawtick(picture pic, real[][] T, path3 g, path3 g2, ticklocate locate, real val, real Size, int sign, pen p, bool extend); +triple tickMin3(picture pic); +triple tickMax3(picture pic); +triple Scale(picture pic=<default>, triple v); +real ScaleZ(picture pic=<default>, real z); +picture vectorfield(path3 vector(pair v), triple f(pair z), pair a, pair b, int nu=<default>, int nv=<default>, bool truesize=<default>, real maxlength=<default>, bool cond(pair z)=<default>, pen p=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>, string name=<default>, render render=<default>); +path3 Circle(triple c, real r, triple normal=<default>, int n=<default>); +void InTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void InTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void InTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); +void Spline(flatguide3)(... void(flatguide3)[]); +void InOutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, tickvalues modify(tickvalues)=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void InOutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, real[] Ticks, real[] ticks=<default>, real Size=<default>, real size=<default>, bool extend=<default>, pen pTick=<default>, pen ptick=<default>); +void InOutTicks(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); +void axes3(picture pic=<default>, Label xlabel=<default>, Label ylabel=<default>, Label zlabel=<default>, bool extend=<default>, triple min=<default>, triple max=<default>, pen p=<default>, bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, marginT3 margin(path3, pen)=<default>); +void label(picture pic, Label L, triple v, real x, align align, string format, pen p); +void labelx(picture pic=<default>, Label L=<default>, triple v, align align=<default>, string format=<default>, pen p=<default>); +void labely(picture pic=<default>, Label L=<default>, triple v, align align=<default>, string format=<default>, pen p=<default>); +void labeltick(picture pic, real[][] T, path3 g, ticklocate locate, real val, int sign, real Size, string ticklabel(real), Label F, real norm=<default>); +void labelaxis(picture pic, real[][] T, Label L, path3 g, ticklocate locate=<default>, int sign=<default>, bool ticklabels=<default>); +void labelx3(picture pic=<default>, Label L=<default>, real x, align align=<default>, string format=<default>, pen p=<default>); +void labely3(picture pic=<default>, Label L=<default>, real y, align align=<default>, string format=<default>, pen p=<default>); +void labelz(picture pic=<default>, Label L=<default>, triple v, align align=<default>, string format=<default>, pen p=<default>); +void labelz3(picture pic=<default>, Label L=<default>, real z, align align=<default>, string format=<default>, pen p=<default>); +void autoscale3(picture pic=<default>, void axis(picture, axisT)); +void xtick(picture pic=<default>, triple v, triple dir=<default>, real size=<default>, pen p=<default>); +void xtick(picture pic=<default>, Label L, triple v, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void ytick(picture pic=<default>, triple v, triple dir=<default>, real size=<default>, pen p=<default>); +void ytick(picture pic=<default>, Label L, triple v, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void xtick3(picture pic=<default>, real x, triple dir=<default>, real size=<default>, pen p=<default>); +void xtick3(picture pic=<default>, Label L, real x, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void ytick3(picture pic=<default>, real y, triple dir=<default>, real size=<default>, pen p=<default>); +void ytick3(picture pic=<default>, Label L, real y, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void ztick(picture pic=<default>, triple v, triple dir=<default>, real size=<default>, pen p=<default>); +void ztick(picture pic=<default>, Label L, triple v, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +void ztick3(picture pic=<default>, real z, triple dir=<default>, real size=<default>, pen p=<default>); +void ztick3(picture pic=<default>, Label L, real z, triple dir=<default>, string format=<default>, real size=<default>, pen p=<default>); +triple defaultdir(triple X, triple Y, triple Z, bool opposite=<default>, projection P); +real xtrans(real[][] t, real x); +real ytrans(real[][] t, real y); +real ztrans(real[][] t, real z); +ticklocate ticklocate(real a, real b, autoscaleT S=<default>, real tickmin=<default>, real tickmax=<default>, real time(real)=<default>, triple dir(real)); +triple ticklabelshift(triple align, pen p=<default>); +path3 Arc(triple c, triple v1, triple v2, triple normal=<default>, bool direction=<default>, int n=<default>); +path3 Arc(triple c, real r, real theta1, real phi1, real theta2, real phi2, triple normal=<default>, bool direction, int n=<default>); +path3 Arc(triple c, real r, real theta1, real phi1, real theta2, real phi2, triple normal=<default>, int n=<default>); +void limits(picture pic=<default>, triple min, triple max); +void XZEquals(picture, axisT)(real x, real z, triple align=<default>, bool extend=<default>); +void YZEquals(picture, axisT)(real y, real z, triple align=<default>, bool extend=<default>); +void XYZero(picture, axisT)(triple align=<default>, bool extend=<default>); +void XYZero(picture, axisT); +void zlimits(picture pic=<default>, real min=<default>, real max=<default>, bool crop=<default>); +void tick(picture pic=<default>, triple v, triple dir, real size=<default>, pen p=<default>); +void tick(picture pic=<default>, Label L, real value, triple v, triple dir, string format=<default>, real size=<default>, pen p=<default>); +surface bispline(real[][] z, real[][] p, real[][] q, real[][] r, real[] x, real[] y, bool[][] cond=<default>); +void NoTicks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>)(); +void NoTicks3(picture, real[][], Label, path3, path3, pen, bool(picture, path3, material, marginT3(path3, pen), light, light), marginT3(path3, pen), ticklocate, int[], bool opposite=<default>, bool primary=<default>); +bool Crop; +int ngraph; +real epsilon; real axiscoverage; real Ticksize; +bool NoCrop; real ticksize; int nmesh; int nCircle; real ylabelwidth; -real epsilon; real axislabelfactor; -bool NoCrop; -int ngraph; -bool Crop; -guide hermite(real[] x, real[] y, real[] splinetype(real[], real[])=<default>); -real[] monotonic(real[] x, real[] y); real[] clamped(real[], real[])(real slopea, real slopeb); +real[] natural(real[] x, real[] y); +real[] monotonic(real[] x, real[] y); +real[] notaknot(real[] x, real[] y); real[] linear(real[] x, real[] y); -string differentlengths; string morepoints; -real[] Spline(real[] x, real[] y); -real[](real[], real[])[] Spline; -real[] notaknot(real[] x, real[] y); -real[] periodic(real[] x, real[] y); -real[] natural(real[] x, real[] y); +guide hermite(real[] x, real[] y, real[] splinetype(real[], real[])=<default>); void checklengths(int x, int y, string text=<default>); void checkincreasing(real[] x); -grid3(picture pic)[] YX_YZgrid(position posa=<default>, position posb=<default>); -grid3(picture pic)[] YX_YZgrid; -grid3(picture pic)[] YZYgrid(position pos=<default>); -grid3(picture pic)[] YZYgrid; -grid3(picture pic)[] XZXgrid(position pos=<default>); -grid3(picture pic)[] XZXgrid; -grid3(picture pic)[] ZXZgrid(position pos=<default>); -grid3(picture pic)[] ZXZgrid; -grid3 ZYgrid(picture pic)(position pos=<default>); -grid3 ZYgrid(picture pic); -grid3 ZXgrid(picture pic)(position pos=<default>); -grid3 ZXgrid(picture pic); -grid3 XZgrid(picture pic)(position pos=<default>); -grid3 XZgrid(picture pic); -grid3 YXgrid(picture pic)(position pos=<default>); -grid3 YXgrid(picture pic); -grid3 XYgrid(picture pic)(position pos=<default>); -grid3 XYgrid(picture pic); -ticksgridT InTicks()(Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, pen pTick=<default>, pen ptick=<default>, grid3(picture pic)[][] gridroutine, pen pGrid=<default>, pen pgrid=<default>); -grid3(picture pic)[][] XYZgrid(position pos=<default>); -grid3(picture pic)[][] XYZgrid; +real[] periodic(real[] x, real[] y); +string differentlengths; +real[] Spline(real[] x, real[] y); +real[](real[], real[])[] Spline; grid3(picture pic)[] YXYgrid(position pos=<default>); grid3(picture pic)[] YXYgrid; +grid3 operator init(); +ticksgridT operator init(); +grid3(picture pic)[] operator cast(grid3 gridroutine(picture pic)); +grid3(picture pic)[][] operator cast(grid3(picture pic)[] gridroutine); +grid3(picture pic)[][] operator cast(grid3 gridroutine(picture pic)); +triple X(picture pic); +triple Y(picture pic); +triple Z(picture pic); +grid3(picture pic)[] XYXgrid(position pos=<default>); +grid3(picture pic)[] XYXgrid; +grid3(picture pic)[] XY_XZgrid(position posa=<default>, position posb=<default>); +grid3(picture pic)[] XY_XZgrid; grid3(picture pic)[] ZX_ZYgrid(position posa=<default>, position posb=<default>); grid3(picture pic)[] ZX_ZYgrid; +grid3 XYgrid(picture pic)(position pos=<default>); +grid3 XYgrid(picture pic); +grid3 ZYgrid(picture pic)(position pos=<default>); +grid3 ZYgrid(picture pic); position middle; void grid3(picture pic=<default>, grid3(picture pic)[][] gridroutine=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, pen pGrid=<default>, pen pgrid=<default>, bool above=<default>); void grid3(picture pic=<default>, grid3(picture pic)[][] gridroutine, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, pen[] pGrid, pen[] pgrid, bool above=<default>); -void zaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, pen p=<default>, ticksgridT ticks(), bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, bool above=<default>); ticksgridT OutTicks()(Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, pen pTick=<default>, pen ptick=<default>, grid3(picture pic)[][] gridroutine, pen pGrid=<default>, pen pgrid=<default>); +triple YZ(picture pic); +triple ZX(picture pic); void xaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, pen p=<default>, ticksgridT ticks(), bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, bool above=<default>); -grid3 YZgrid(picture pic)(position pos=<default>); -grid3 YZgrid(picture pic); +void yaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, pen p=<default>, ticksgridT ticks(), bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, bool above=<default>); +void zaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, pen p=<default>, ticksgridT ticks(), bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, bool above=<default>); +grid3(picture pic)[] ZXZgrid(position pos=<default>); +grid3(picture pic)[] ZXZgrid; position top; -grid3 operator init(); -ticksgridT operator init(); -triple ZX(picture pic); -triple X(picture pic); -triple Y(picture pic); -grid3(picture pic)[] operator cast(grid3 gridroutine(picture pic)); -grid3(picture pic)[][] operator cast(grid3(picture pic)[] gridroutine); -grid3(picture pic)[][] operator cast(grid3 gridroutine(picture pic)); +grid3(picture pic)[] XZXgrid(position pos=<default>); +grid3(picture pic)[] XZXgrid; +ticksgridT InTicks()(Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, pen pTick=<default>, pen ptick=<default>, grid3(picture pic)[][] gridroutine, pen pGrid=<default>, pen pgrid=<default>); +ticksgridT InOutTicks()(Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, pen pTick=<default>, pen ptick=<default>, grid3(picture pic)[][] gridroutine, pen pGrid=<default>, pen pgrid=<default>); +grid3(picture pic)[] YX_YZgrid(position posa=<default>, position posb=<default>); +grid3(picture pic)[] YX_YZgrid; position bottom; -grid3(picture pic)[] XY_XZgrid(position posa=<default>, position posb=<default>); -grid3(picture pic)[] XY_XZgrid; +grid3 YXgrid(picture pic)(position pos=<default>); +grid3 YXgrid(picture pic); +grid3 ZXgrid(picture pic)(position pos=<default>); +grid3 ZXgrid(picture pic); +triple XY(picture pic); +grid3(picture pic)[][] XYZgrid(position pos=<default>); +grid3(picture pic)[][] XYZgrid; grid3(picture pic)[] ZYZgrid(position pos=<default>); grid3(picture pic)[] ZYZgrid; -grid3(picture pic)[] XYXgrid(position pos=<default>); -grid3(picture pic)[] XYXgrid; -ticksgridT InOutTicks()(Label F=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, bool begin=<default>, bool end=<default>, real Size=<default>, real size=<default>, pen pTick=<default>, pen ptick=<default>, grid3(picture pic)[][] gridroutine, pen pGrid=<default>, pen pgrid=<default>); -triple YZ(picture pic); -triple XY(picture pic); -triple Z(picture pic); -void yaxis3(picture pic=<default>, Label L=<default>, void axis(picture, axisT)=<default>, pen p=<default>, ticksgridT ticks(), bool arrow(picture, path3, material, marginT3(path3, pen), light, light)=<default>, bool above=<default>); +grid3 XZgrid(picture pic)(position pos=<default>); +grid3 XZgrid(picture pic); +grid3 YZgrid(picture pic)(position pos=<default>); +grid3 YZgrid(picture pic); +grid3(picture pic)[] YZYgrid(position pos=<default>); +grid3(picture pic)[] YZYgrid; real fspline(real)(real[] x, real[] y, real[] splinetype(real[], real[])=<default>); -real fhorner(real)(horner sh); -horner hdiffdiv(real[] x, real[] y, real[] dy); -horner operator init(); real pwhermite(real)(real[] x, real[] y, real[] dy); horner diffdiv(real[] x, real[] y); +horner hdiffdiv(real[] x, real[] y, real[] dy); +horner operator init(); +real fhorner(real)(horner sh); void labelpath(frame f, Label L, path g, string justify=<default>, pen p=<default>); void labelpath(picture pic=<default>, Label L, path g, string justify=<default>, pen p=<default>); -string RightJustified; -string Centered; string LeftJustified; +string Centered; +string RightJustified; surface labelpath(string s, path3 p, real angle=<default>, triple optional=<default>); -triple nextnormal(triple p, triple q); -triple[] nextframe(path3 p, real reltimestart, triple[] start, real reltimeend, int subdiv=<default>); triple[] firstframe(path3 p, triple optional=<default>); +triple[] nextframe(path3 p, real reltimestart, triple[] start, real reltimeend, int subdiv=<default>); real eps; -void lm_lmpar(int n, real[] r, int ldr, int[] ipvt, real[] diag, real[] qtb, real delta, lm_real_type par, real[] x, real[] sdiag, real[] wa1, real[] wa2); +triple nextnormal(triple p, triple q); +string[] lm_infmsg; void lm_qrfac(int m, int n, real[] a, bool pivot, int[] ipvt, real[] rdiag, real[] acnorm, real[] wa); -void lm_print_quiet(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev); -void lm_print_default(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev); -string pad(string str, int count, string pad=<default>); -string pad(int num, int digits, string pad=<default>); -string pad(real num, int digits, string pad=<default>); -real lm_enorm(int n, real[] x, int offset=<default>); -real SQR(real x); -void lm_lmdif(int m, int n, real[] x, real[] fvec, real ftol, real xtol, real gtol, int maxfev, real epsfcn, real[] diag, int mode, real factor, lm_int_type info, lm_int_type nfev, real[] fjac, int[] ipvt, real[] qtf, real[] wa1, real[] wa2, real[] wa3, real[] wa4, void evaluate(real[] par, int m_dat, real[] fvec, lm_data_type data, lm_int_type info), void printout(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev), lm_data_type data); -string[] lm_shortmsg; -real LM_USERTOL; -real LM_DWARF; -real LM_MACHEP; +void lm_qrsolv(int n, real[] r, int ldr, int[] ipvt, real[] diag, real[] qtb, real[] x, real[] sdiag, real[] wa); FitControl defaultControl; +real LM_MACHEP; +real LM_SQRT_DWARF; real LM_SQRT_GIANT; -string[] lm_infmsg; -void lm_evaluate_default(real[] par, int m_dat, real[] fvec, lm_data_type data, lm_int_type info); -void lm_qrsolv(int n, real[] r, int ldr, int[] ipvt, real[] diag, real[] qtb, real[] x, real[] sdiag, real[] wa); +void lm_lmpar(int n, real[] r, int ldr, int[] ipvt, real[] diag, real[] qtb, real delta, lm_real_type par, real[] x, real[] sdiag, real[] wa1, real[] wa2); +void lm_lmdif(int m, int n, real[] x, real[] fvec, real ftol, real xtol, real gtol, int maxfev, real epsfcn, real[] diag, int mode, real factor, lm_int_type info, lm_int_type nfev, real[] fjac, int[] ipvt, real[] qtf, real[] wa1, real[] wa2, real[] wa3, real[] wa4, void evaluate(real[] par, int m_dat, real[] fvec, lm_data_type data, lm_int_type info), void printout(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev), lm_data_type data); +void lm_minimize(int m_dat, int n_par, real[] par, void evaluate(real[] par, int m_dat, real[] fvec, lm_data_type data, lm_int_type info), void printout(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev), lm_data_type data, lm_control_type control); +FitResult fit(real[] xdata, real[] ydata, real[] errors, real function(real[], real), real[] parameters, FitControl control=<default>); +FitResult fit(real[] xdata, real[] ydata, real function(real[], real), real[] parameters, FitControl control=<default>); +real lm_enorm(int n, real[] x, int offset=<default>); lm_data_type operator init(); lm_int_type operator init(); lm_real_type operator init(); lm_control_type operator init(); FitControl operator init(); FitResult operator init(); -void lm_minimize(int m_dat, int n_par, real[] par, void evaluate(real[] par, int m_dat, real[] fvec, lm_data_type data, lm_int_type info), void printout(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev), lm_data_type data, lm_control_type control); -real LM_SQRT_DWARF; -FitResult fit(real[] xdata, real[] ydata, real[] errors, real function(real[], real), real[] parameters, FitControl control=<default>); -FitResult fit(real[] xdata, real[] ydata, real function(real[], real), real[] parameters, FitControl control=<default>); +real SQR(real x); +string[] lm_shortmsg; +void lm_evaluate_default(real[] par, int m_dat, real[] fvec, lm_data_type data, lm_int_type info); +string pad(string str, int count, string pad=<default>); +string pad(int num, int digits, string pad=<default>); +string pad(real num, int digits, string pad=<default>); +real LM_USERTOL; +real LM_DWARF; +void lm_print_quiet(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev); +void lm_print_default(int n_par, real[] par, int m_dat, real[] fvec, lm_data_type data, int iflag, int iter, int nfev); +real barmarksize(pen p=<default>); +real barmarksizefactor; marker CrossIntervalMarker(int i=<default>, int n=<default>, real size=<default>, real space=<default>, real angle=<default>, pair offset=<default>, bool rotated=<default>, pen p=<default>, frame uniform=<default>, bool above=<default>); marker StickIntervalMarker(int i=<default>, int n=<default>, real size=<default>, real space=<default>, real angle=<default>, pair offset=<default>, bool rotated=<default>, pen p=<default>, frame uniform=<default>, bool above=<default>); -void markangle(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, pair A, pair O, pair B, bool arrow(picture, path, pen, marginT(path, pen))=<default>, pen p=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>, marker marker=<default>); -real markanglespace(pen p=<default>); -real markanglespace; frame crossframe(int n=<default>, real size=<default>, pair space=<default>, real angle=<default>, pair offset=<default>, pen p=<default>); real crossmarksize(pen p=<default>); -real barmarksize(pen p=<default>); -real barmarksizefactor; -real circlemarkradiusfactor; -frame tildeframe(int n=<default>, real size=<default>, pair space=<default>, real angle=<default>, pair offset=<default>, pen p=<default>); -frame tildeframe; -frame duplicate(path g, int n=<default>, pair space=<default>, pen p=<default>); -void markinterval(picture pic=<default>, frame f, path g)(int n=<default>, frame f, bool rotated=<default>); -marker CircleBarIntervalMarker(int i=<default>, int n=<default>, real barsize=<default>, real radius=<default>, real angle=<default>, pair offset=<default>, bool rotated=<default>, pen p=<default>, filltype filltype=<default>, bool circleabove=<default>, frame uniform=<default>, bool above=<default>); real crossmarksizefactor; -marker TildeIntervalMarker(int i=<default>, int n=<default>, real size=<default>, real space=<default>, real angle=<default>, pair offset=<default>, bool rotated=<default>, pen p=<default>, frame uniform=<default>, bool above=<default>); -real tildemarksize(pen p=<default>); -real tildemarksizefactor; -real circlemarkradius(pen p=<default>); -real markangleradiusfactor; -real markanglespacefactor; frame stickframe(int n=<default>, real size=<default>, pair space=<default>, real angle=<default>, pair offset=<default>, pen p=<default>); frame stickframe; -frame circlebarframe(int n=<default>, real barsize=<default>, real radius=<default>, real angle=<default>, pair offset=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); -real stickmarksizefactor; real stickmarksize(pen p=<default>); -real stickmarkspacefactor; real stickmarkspace(pen p=<default>); +real stickmarksizefactor; +real stickmarkspacefactor; +frame duplicate(path g, int n=<default>, pair space=<default>, pen p=<default>); +marker CircleBarIntervalMarker(int i=<default>, int n=<default>, real barsize=<default>, real radius=<default>, real angle=<default>, pair offset=<default>, bool rotated=<default>, pen p=<default>, filltype filltype=<default>, bool circleabove=<default>, frame uniform=<default>, bool above=<default>); +frame circlebarframe(int n=<default>, real barsize=<default>, real radius=<default>, real angle=<default>, pair offset=<default>, pen p=<default>, filltype filltype=<default>, bool above=<default>); +real circlemarkradius(pen p=<default>); +real circlemarkradiusfactor; +marker operator *(transform T, marker m); +marker TildeIntervalMarker(int i=<default>, int n=<default>, real size=<default>, real space=<default>, real angle=<default>, pair offset=<default>, bool rotated=<default>, pen p=<default>, frame uniform=<default>, bool above=<default>); +frame tildeframe(int n=<default>, real size=<default>, pair space=<default>, real angle=<default>, pair offset=<default>, pen p=<default>); +frame tildeframe; +real tildemarksize(pen p=<default>); +real tildemarksizefactor; +void markangle(picture pic=<default>, Label L=<default>, int n=<default>, real radius=<default>, real space=<default>, pair A, pair O, pair B, bool arrow(picture, path, pen, marginT(path, pen))=<default>, pen p=<default>, filltype filltype=<default>, marginT margin(path, pen)=<default>, marker marker=<default>); +real markanglespace(pen p=<default>); +real markanglespace; real markangleradius(pen p=<default>); real markangleradius; -marker operator *(transform T, marker m); -real[] leastsquares(real[][] A, real[] b, bool warn=<default>); -pair[][] fft(pair[][] a, int sign=<default>); -pair[] quarticroots(real a, real b, real c, real d, real e); -real slope(path g, real x, int n=<default>); -real slope(path g, explicit pair z, int n=<default>); -real value(path g, real x, int n=<default>); -real value(path g, explicit pair z, int n=<default>); -real time(path g, real x, int n=<default>); -real time(path g, explicit pair z, int n=<default>); +real markanglespacefactor; +real markangleradiusfactor; +void markinterval(picture pic=<default>, frame f, path g)(int n=<default>, frame f, bool rotated=<default>); +real[] partialsum(real[] a); +real[] partialsum(real[] a, real[] dx); +int[] partialsum(int[] a); +int[] partialsum(int[] a, int[] dx); +real cot(real x); +int unique(real[] a, real x); +int unique(string[] a, string x); +int quadrant(real degrees); +pair exp(explicit pair z); +string nopoint; +real intersect(pair p, pair q, pair z); +real intersect(triple P, triple Q, triple n, triple Z); real interpolate(real[] x, real[] y, real x0, int i); real interpolate(real[] x, real[] y, real x0); +triple intersectionpoint(triple n0, triple P0, triple n1, triple P1); +pair[] quarticroots(real a, real b, real c, real d, real e); +bool lexorder(pair a, pair b); +bool lexorder(triple a, triple b); +bool square(real[][] m); +real sec(real x); bool rectangular(real[][] m); bool rectangular(pair[][] m); bool rectangular(triple[][] m); -bool lexorder(pair a, pair b); -bool lexorder(triple a, triple b); -int unique(real[] a, real x); -int unique(string[] a, string x); -real[] partialsum(real[] a); -real[] partialsum(real[] a, real[] dx); -int[] partialsum(int[] a); -int[] partialsum(int[] a, int[] dx); +bool polygon(path p); +pair unityroot(int n, int k=<default>); +real acot(real x); +pair[][] fft(pair[][] a, int sign=<default>); +real slope(path g, real x, int n=<default>); +real slope(path g, explicit pair z, int n=<default>); picture grid(int Nx, int Ny, pen p=<default>); +rootfinder_settings operator init(); real frac(real x); real asec(real x); -real acsc(real x); -real sec(real x); -real csc(real x); -int quadrant(real degrees); -pair exp(explicit pair z); -real cot(real x); -pair log(explicit pair z); -triple intersectionpoint(triple n0, triple P0, triple n1, triple P1); +int[][] segmentlimits(bool[] b); +int[][] segment(bool[] b); +real time(path g, real x, int n=<default>); +real time(path g, explicit pair z, int n=<default>); +real[] leastsquares(real[][] A, real[] b, bool warn=<default>); +bool increasing(real[] a, bool strict=<default>); real[] zero(int n); real[][] zero(int n, int m); real findroot(real f(real), real a, real b, real tolerance=<default>, real fa=<default>, real fb=<default>); -string nopoint; +real acsc(real x); +real value(path g, real x, int n=<default>); +real value(path g, explicit pair z, int n=<default>); +real csc(real x); +pair log(explicit pair z); void drawline(picture pic=<default>, pair P, pair Q, pen p=<default>); -int[][] segment(bool[] b); -real acot(real x); -real intersect(pair p, pair q, pair z); -real intersect(triple P, triple Q, triple n, triple Z); -rootfinder_settings operator init(); -pair unityroot(int n, int k=<default>); -bool polygon(path p); -bool square(real[][] m); -bool increasing(real[] a, bool strict=<default>); -int[][] segmentlimits(bool[] b); -path cuttings; -path cutafter(path p, path q); path cutbefore(path p, path q); +path cutafter(path p, path q); +path cuttings; +void draw(picture pic=<default>, obj o, light light=<default>); obj operator *(real[][] T, obj o); obj operator init(); -void draw(picture pic=<default>, obj o, light light=<default>); real[][] finiteDifferenceJacobian(real[] f(real[]), real[] t, real[] h=<default>); -real adjust(real h, real error, real tolmin, real tolmax, RKTableau tableau); +RKTableau E_Euler; real error(real error, real initial, real lowOrder, real norm, real diff); -RKTableau RK5F; RKTableau RK5; +real stepfactor; RKTableau RK4; -RKTableau RK3BS; real[] newton(int iterations=<default>, real[] f(real[]), real[][] jacobian(real[]), real[] t); -RKTableau RK2; -RKTableau E_Euler; real phi1(real x); -real[] Coeff; -real stepfactor; -real phi2(real x); -RKTableau RK5DP; -void report(real old, real h, real t); -RKTableau E_PC; solution integrate(real y, real c=<default>, real f(real t, real y), real a, real b=<default>, real h=<default>, int n=<default>, bool dynamic=<default>, real tolmin=<default>, real tolmax=<default>, real dtmin=<default>, real dtmax=<default>, RKTableau tableau, bool verbose=<default>); Solution integrate(real[] y, real[] f(real t, real[] y), real a, real b=<default>, real h=<default>, int n=<default>, bool dynamic=<default>, real tolmin=<default>, real tolmax=<default>, real dtmin=<default>, real dtmax=<default>, RKTableau tableau, bool verbose=<default>); -RKTableau E_RK2; RKTableau RK3; -RKTableau PC; +void expfactors(real x, coefficients a); +real phi2(real x); +void report(real old, real h, real t); +real[] solveBVP(real[] f(real, real[]), real a, real b=<default>, real h=<default>, int n=<default>, bool dynamic=<default>, real tolmin=<default>, real tolmax=<default>, real dtmin=<default>, real dtmax=<default>, RKTableau tableau, bool verbose=<default>, real[] initial(real[]), real[] discrepancy(real[]), real[] guess, int iterations=<default>); +RKTableau Euler; +RKTableau E_PC; +RKTableau RK2; real phi3(real x); +void write(solution S); +void write(Solution S); coefficients operator init(); RKTableau operator init(); solution operator init(); Solution operator init(); -void write(solution S); -void write(Solution S); -void expfactors(real x, coefficients a); +RKTableau E_RK2; +RKTableau RK3BS; +RKTableau RK5F; +real adjust(real h, real error, real tolmin, real tolmax, RKTableau tableau); +RKTableau RK5DP; +real[] Coeff; +RKTableau PC; RKTableau E_RK3BS; -real[] solveBVP(real[] f(real, real[]), real a, real b=<default>, real h=<default>, int n=<default>, bool dynamic=<default>, real tolmin=<default>, real tolmax=<default>, real dtmin=<default>, real dtmax=<default>, RKTableau tableau, bool verbose=<default>, real[] initial(real[]), real[] discrepancy(real[]), real[] guess, int iterations=<default>); -RKTableau Euler; -pen[] cmyk(pen[] Palette); -pen[] BWRainbow2(int NColors=<default>); +pen[] Grayscale(int NColors=<default>); +bounds Range(picture pic, real min, real max)(bool automin=<default>, real min=<default>, bool automax=<default>, real max=<default>); pen[] Wheel(int NColors=<default>); -real[] sequencereal; -pen[] adjust(picture pic, real min, real max, real rmin, real rmax, pen[] palette); void image(frame f, real[][] data, pair initial, pair final, pen[] palette, bool transpose=<default>, transform t=<default>, bool copy=<default>, bool antialias=<default>); void image(frame f, pen[][] data, pair initial, pair final, bool transpose=<default>, transform t=<default>, bool copy=<default>, bool antialias=<default>); bounds image(picture pic=<default>, real[][] f, bounds range(picture pic, real min, real max)=<default>, pair initial, pair final, pen[] palette, bool transpose=<default>, bool copy=<default>, bool antialias=<default>); @@ -3422,206 +3420,208 @@ void image(picture pic=<default>, pen[][] data, pair initial, pair final, bool t void image(picture pic=<default>, pen f(int, int), int width, int height, pair initial, pair final, bool transpose=<default>, bool antialias=<default>); bounds image(picture pic=<default>, pair[] z, real[] f, bounds range(picture pic, real min, real max)=<default>, pen[] palette); bounds image(picture pic=<default>, real[] x, real[] y, real[] f, bounds range(picture pic, real min, real max)=<default>, pen[] palette); -bounds Full(picture pic, real min, real max); -bounds Automatic(picture pic, real min, real max); +pen[] cmyk(pen[] Palette); +pen[] BWRainbow(int NColors, bool two); +pen[] BWRainbow(int NColors=<default>); +pen[] BWRainbow2(int NColors=<default>); transform swap; -void NoTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>); -pen[] Gradient(int NColors=<default> ... pen[] p); +bounds Automatic(picture pic, real min, real max); +real[] sequencereal; pen[] Rainbow(int NColors=<default>); +pen[] adjust(picture pic, real min, real max, real rmin, real rmax, pen[] palette); +pen[] Gradient(int NColors=<default> ... pen[] p); pen[] quantize(pen[] Palette, int n); -pen[] Grayscale(int NColors=<default>); -pen[] BWRainbow(int NColors, bool two); -pen[] BWRainbow(int NColors=<default>); -bounds Range(picture pic, real min, real max)(bool automin=<default>, real min=<default>, bool automax=<default>, real max=<default>); +void NoTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>); +bounds Full(picture pic, real min, real max); +void PaletteTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, pen pTick=<default>, pen ptick=<default>); +void PaletteTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>); pen[] palette(real[] f, pen[] palette); pen[][] palette(real[][] f, pen[] palette); void palette(picture pic=<default>, Label L=<default>, bounds bounds, pair initial, pair final, void axis(picture, axisT)=<default>, pen[] palette, pen p=<default>, void ticks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>)=<default>, bool copy=<default>, bool antialias=<default>); -void PaletteTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>)(Label format=<default>, string ticklabel(real)=<default>, bool beginlabel=<default>, bool endlabel=<default>, int N=<default>, int n=<default>, real Step=<default>, real step=<default>, pen pTick=<default>, pen ptick=<default>); -void PaletteTicks(frame, transform, Label, pair, path, path, pen, bool(picture, path, pen, marginT(path, pen)), marginT(path, pen), ticklocate, int[], bool opposite=<default>)(int sign=<default>); +picture brick(real Hx=<default>, real Hy=<default>, pen p=<default>); picture crosshatch(real H=<default>, pen p=<default>); picture hatch(real H=<default>, pair dir=<default>, pen p=<default>); real hatchepsilon; picture checker(real Hx=<default>, real Hy=<default>, pen p=<default>); -picture tile(real Hx=<default>, real Hy=<default>, pen p=<default>, filltype filltype=<default>); -picture brick(real Hx=<default>, real Hy=<default>, pen p=<default>); -frame tiling(string name, picture pic, pair lb=<default>, pair rt=<default>); void add(string name, picture pic, pair lb=<default>, pair rt=<default>); +frame tiling(string name, picture pic, pair lb=<default>, pair rt=<default>); +picture tile(real Hx=<default>, real Hy=<default>, pen p=<default>, filltype filltype=<default>); void grestore(picture pic=<default>); -void gsave(picture pic=<default>); pen textpen; +void gsave(picture pic=<default>); pair align; rational[][] rationalidentity(int n); -rational sum(rational[] a); -bool rectangular(rational[][] m); -string texstring(rational r); -bool operator >(rational r, rational s); -bool[] operator >(rational[] r, rational s); -bool operator <(rational r, rational s); -bool[] operator <(rational[] r, rational s); -rational operator /(rational r, rational s); -rational abs(rational r); -int lcm(int m, int n); -bool operator >=(rational r, rational s); -bool[] operator >=(rational[] r, rational s); -rational operator +(rational r, rational s); int gcd(int m, int n); -rational operator cast(int p); -rational[] operator cast(int[] a); -rational[][] operator cast(int[][] a); -rational operator init(); rational min(rational a, rational b); -bool operator !=(rational r, rational s); +rational abs(rational r); +string texstring(rational r); +bool rectangular(rational[][] m); +string string(rational r); void write(file fout=<default>, string s=<default>, rational r, void suffix(file)=<default>); void write(file fout=<default>, string s=<default>, rational[] a, void suffix(file)=<default>); void write(file fout=<default>, string s=<default>, rational[][] a, void suffix(file)=<default>); +rational operator +(rational r, rational s); +rational operator -(rational r); +rational operator -(rational r, rational s); +rational[] operator -(rational[] r); +rational operator *(rational r, rational s); +rational operator init(); +rational operator cast(int p); +rational[] operator cast(int[] a); +rational[][] operator cast(int[][] a); +real operator ecast(rational r); +rational operator /(rational r, rational s); bool operator ==(rational r, rational s); bool[] operator ==(rational[] r, rational s); bool operator ==(rational[] r, rational[] s); bool operator ==(rational[][] r, rational[][] s); +bool operator !=(rational r, rational s); +bool operator <(rational r, rational s); +bool[] operator <(rational[] r, rational s); bool operator <=(rational r, rational s); bool[] operator <=(rational[] r, rational s); -rational operator -(rational r); -rational operator -(rational r, rational s); -rational[] operator -(rational[] r); +bool operator >(rational r, rational s); +bool[] operator >(rational[] r, rational s); +bool operator >=(rational r, rational s); +bool[] operator >=(rational[] r, rational s); +rational sum(rational[] a); +int lcm(int m, int n); rational max(rational a, rational b); rational max(rational[] a); -string string(rational r); -real operator ecast(rational r); -rational operator *(rational r, rational s); -void simplexWrite(rational[][] E, int[] Bindicies, int, int); +simplex operator init(); void simplexPhase2(); void simplexTableau(rational[][] E, int[] Bindices, int I=<default>, int J=<default>); -simplex operator init(); +void simplexWrite(rational[][] E, int[] Bindicies, int, int); path roundedpath(path A, real R, real S=<default>); simplex operator init(); -void bibliography(string name); -void subitem(string s, pen p=<default>); -void item(string s, pen p=<default>, bool step=<default>); -void asyfilecode(bool center=<default>, string s, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>, bool newslide=<default>); -void asyfigure(string s, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, filltype filltype=<default>, bool newslide=<default>); -void code(bool center=<default>, string s, pen p=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>); -void asyinclude(string s, real xsize=<default>, real ysize=<default>); -string[] codefile; -void figure(string[] s, string options=<default>, real margin=<default>, string[] captions=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); -void figure(string s, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); void display(frame[] f, real margin=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); void display(frame f, real margin=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); void display(string[] s, real margin=<default>, string[] captions=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); void display(string s, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); -void equation(string s, pen p=<default>); -void vbox(string s, pen p=<default>); -void remark(bool center=<default>, string s, pair align=<default>, pen p=<default>, real indent=<default>, bool minipage=<default>, real skip=<default>, filltype filltype=<default>, bool step=<default>); -void outline(string s=<default>, pair position=<default>, pair align=<default>, pen p=<default>); -void erasestep(int erasenode); -bool checkposition(); -void reversevideo(); -void color(string name, string color); -bool empty(); -void setpens(pen red=<default>, pen blue=<default>, pen steppen=<default>); -int preamblenodes; +void multifigure(string[] slist, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool step=<default>); int page; -int[] firstnode; -pair titlepageposition; -pen foregroundcolor; -pen backgroundcolor; -pen figuremattpen; +void subitem(string s, pen p=<default>); +pen pagenumberpen; +pair pagenumberalign; pair pagenumberposition; -string newbulletcolor; -void skip(real n=<default>); -string oldbulletcolor; -pair titlealign; -pair dateskip; +void indexedfigure(string prefix, int first, int last, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool step=<default>); +string texcolor(pen p); +void color(string name, string color); +pen foregroundcolor; +void bibliography(string name); +void bibliographystyle(string name); +int[] lastnode; +real aboveequationskip; +void nextpage(pen p=<default>); +void asyfigure(string s, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, filltype filltype=<default>, bool newslide=<default>); +void asyfilecode(bool center=<default>, string s, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>, bool newslide=<default>); +bool itemstep; real itemskip; -pen datepen; -pen institutionpen; -pen authorpen; -pen titlepagepen; -pen codepen; -pair urlskip; -transform tinv; -picture background; -void background(); +void remark(bool center=<default>, string s, pair align=<default>, pen p=<default>, real indent=<default>, bool minipage=<default>, real skip=<default>, filltype filltype=<default>, bool step=<default>); +void filecode(bool center=<default>, string s, pen p=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>); +void usersetting(); +bool landscape; +real codeskip; +void newslide(bool stepping=<default>); +pen itempen; +bool reverse; +void reversevideo(); +void vbox(string s, pen p=<default>); +void asycode(bool center=<default>, string s, string options=<default>, string caption=<default>, string preamble=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>, bool newslide=<default>); +void exitfunction(); +bool havepagenumber; +void item(string s, pen p=<default>, bool step=<default>); real pageheight; real pagewidth; -void indexedfigure(string prefix, int first, int last, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool step=<default>); +picture background; +void background(); +pen backgroundcolor; +void normalvideo(); +void title(string s, pair position=<default>, pair align=<default>, pen p=<default>, bool newslide=<default>); pen titlepen; -string bulletcolor(string color); -real minipagemargin; -void incrementposition(pair z); -void filecode(bool center=<default>, string s, pen p=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>); -void newslide(bool stepping=<default>); -void center(string s, pen p=<default>); real titleskip; -void step(); -void multifigure(string[] slist, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool step=<default>); -pair startposition; +pair dateskip; +pair titlealign; +pen authorpen; +pen titlepagepen; void titlepage(string title, string author, string institution=<default>, string date=<default>, string url=<default>, bool newslide=<default>); -pair currentposition; -void asycode(bool center=<default>, string s, string options=<default>, string caption=<default>, string preamble=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>, bool newslide=<default>); -pen itempen; -string asywrite(string s, string preamble=<default>); -bool reverse; -void numberpage(pen p=<default>); +pair titlepageposition; +pen codepen; +void erasestep(int erasenode); +bool checkposition(); string cropcode(string s); -void usersetting(); -void currentexitfunction(); -bool landscape; -bool itemstep; +void setpens(pen red=<default>, pen blue=<default>, pen steppen=<default>); +void code(bool center=<default>, string s, pen p=<default>, real indent=<default>, real skip=<default>, filltype filltype=<default>); +transform tinv; +pair urlskip; +void numberpage(pen p=<default>); +pen urlpen; +bool allowstepping; +pair currentposition; +int[] firstnode; bool firststep; -void normalvideo(); +string asywrite(string s, string preamble=<default>); +pair startposition; +string oldbulletcolor; +string newbulletcolor; +pen datepen; +void incrementposition(pair z); +pen institutionpen; +void skip(real n=<default>); bool stepping; -real codeskip; +real pagemargin; +pen steppagenumberpen; +bool empty(); +void currentexitfunction(); +void step(); +string[] codefile; +void outline(string s=<default>, pair position=<default>, pair align=<default>, pen p=<default>); +void center(string s, pen p=<default>); +void equation(string s, pen p=<default>); +void equations(string s, pen p=<default>); +void asyinclude(string s, real xsize=<default>, real ysize=<default>); +void figure(string[] s, string options=<default>, real margin=<default>, string[] captions=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); +void figure(string s, string options=<default>, string caption=<default>, pair align=<default>, pen p=<default>, pen figuremattpen=<default>, bool final=<default>); real figureborder; +pen figuremattpen; string bullet; -pen pagenumberpen; -int[] lastnode; -string texcolor(pen p); -void equations(string s, pen p=<default>); -bool allowstepping; -real aboveequationskip; -void nextpage(pen p=<default>); +int preamblenodes; +string bulletcolor(string color); real minipagewidth; -void bibliographystyle(string name); -real pagemargin; -pen urlpen; -void title(string s, pair position=<default>, pair align=<default>, pen p=<default>, bool newslide=<default>); -pen steppagenumberpen; -pair pagenumberalign; -bool havepagenumber; -void exitfunction(); -picture slopefield(real f(real, real), pair a, pair b, int nx=<default>, int ny=<default>, real tickfactor=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); -picture slopefield(real f(real), pair a, pair b, int nx=<default>, int ny=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); +real minipagemargin; +real stepfraction; path curve(pair c, real f(real, real), pair a, pair b); path curve(pair c, real f(real), pair a, pair b); -real stepfraction; -surface implicitsurface(real f(triple)=<default>, real ff(real, real, real)=<default>, triple a, triple b, int n=<default>, bool keyword overlapedges=<default>, int keyword nx=<default>, int keyword ny=<default>, int keyword nz=<default>, int keyword maxdepth=<default>, bool keyword usetriangles=<default>); -evaluatedpoint[][] slice(evaluatedpoint[][] a, int start1, int end1, int start2, int end2); -evaluatedpoint[][][] slice(evaluatedpoint[][][] a, int start1, int end1, int start2, int end2, int start3, int end3); -positionedvector[][] slice(positionedvector[][] a, int start1, int end1, int start2, int end2); -positionedvector[][][] slice(positionedvector[][][] a, int start1, int end1, int start2, int end2, int start3, int end3); -triple nGrad(triple)(real f(triple)); -patch[] quadpatches(path3 edgecycle, positionedvector[] corners, real f(triple), triple grad(triple), triple a, triple b, bool usetriangles); -bool checkpt(triple testpt, real f(triple), triple grad(triple), triple a, triple b); -bool checkptincube(triple pt, triple a, triple b); -bool check_fpt_zero(triple testpoint, real f(triple), triple grad(triple)); -patch[] triangletoquads(path3 external, real f(triple), triple grad(triple), triple a, triple b); -triple normalout(int face); +picture slopefield(real f(real, real), pair a, pair b, int nx=<default>, int ny=<default>, real tickfactor=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); +picture slopefield(real f(real), pair a, pair b, int nx=<default>, int ny=<default>, pen p=<default>, bool arrow(picture, path, pen, marginT(path, pen))=<default>); +real B03(real t); patch[] maketriangle(path3 external, real f(triple), triple grad(triple), bool allowsubdivide=<default>); +real B23(real t); path3 pathinface(positionedvector v1, positionedvector v2, triple facenorm, triple edge1normout, triple edge2normout); path3 pathinface(positionedvector v1, positionedvector v2, int face, int edge1face, int edge2face); path3 bisector(path3 edgecycle, int[] savevertices); -triple projecttospan(triple toproject, triple v1, triple v2, real mincoeff=<default>); -int YHIGH; int XHIGH; -int NULL_VERTEX; -patch trianglewithnormals(path3 external, triple n1, triple n2, triple n3); +int YHIGH; +int ZHIGH; +real(real)[] bernstein; +path3 pathbetween(positionedvector v1, positionedvector v2); +path3 pathbetween(path3 edgecycle, int vertex1, int vertex2); patch patchwithnormals(path3 external, triple[] u0normals, triple[] u1normals, triple[] v0normals, triple[] v1normals); patch patchwithnormals(path3 external, triple normalat(triple)); -real(real)[] bernstein; -real B23(real t); +real angledegrees(triple a, triple b); +triple projecttospan(triple toproject, triple v1, triple v2, real mincoeff=<default>); +real[] projecttospan_findcoeffs(triple toproject, triple v1, triple v2, bool warn=<default>); +triple nGrad(triple)(real f(triple)); +patch[] quadpatches(path3 edgecycle, positionedvector[] corners, real f(triple), triple grad(triple), triple a, triple b, bool usetriangles); +triple normalout(int face); +int[] makecircle(edge[] edges); real B13(real t); -bool operator ==(edge a, edge b); -real B33(real t); +bool check_fpt_zero(triple testpoint, real f(triple), triple grad(triple)); +bool checkptincube(triple pt, triple a, triple b); +bool checkpt(triple testpt, real f(triple), triple grad(triple), triple a, triple b); +int XLOW; +int YLOW; +int ZLOW; pathwithnormals_settings operator init(); intset operator init(); int_to_intset operator init(); @@ -3633,302 +3633,302 @@ string operator cast(edge e); string operator cast(edge[] edges); string operator cast(positionedvector vv); triple operator cast(evaluatedpoint p); -int ZLOW; -real B03(real t); -real[] projecttospan_findcoeffs(triple toproject, triple v1, triple v2, bool warn=<default>); -int YLOW; -int ZHIGH; -real angledegrees(triple a, triple b); -path3 pathbetween(positionedvector v1, positionedvector v2); -path3 pathbetween(path3 edgecycle, int vertex1, int vertex2); -int XLOW; +surface implicitsurface(real f(triple)=<default>, real ff(real, real, real)=<default>, triple a, triple b, int n=<default>, bool keyword overlapedges=<default>, int keyword nx=<default>, int keyword ny=<default>, int keyword nz=<default>, int keyword maxdepth=<default>, bool keyword usetriangles=<default>); +bool operator ==(edge a, edge b); +patch[] triangletoquads(path3 external, real f(triple), triple grad(triple), triple a, triple b); +patch trianglewithnormals(path3 external, triple n1, triple n2, triple n3); evaluatedpoint[][][] make3dgrid(triple a, triple b, int nx, int ny, int nz, real f(triple), bool allowzero=<default>); -int[] makecircle(edge[] edges); -path[] cylinder(path3 base, real h, triple axis=<default>, projection P); -revolution cylinder(triple c=<default>, real r, real h, triple axis=<default>); -path line(path p, path q, real[] t); -pen defaultbackpen; -revolution cone(triple c=<default>, real r, real h, triple axis=<default>, int n=<default>); +real B33(real t); +evaluatedpoint[][] slice(evaluatedpoint[][] a, int start1, int end1, int start2, int end2); +evaluatedpoint[][][] slice(evaluatedpoint[][][] a, int start1, int end1, int start2, int end2, int start3, int end3); +positionedvector[][] slice(positionedvector[][] a, int start1, int end1, int start2, int end2); +positionedvector[][][] slice(positionedvector[][][] a, int start1, int end1, int start2, int end2, int start3, int end3); +int NULL_VERTEX; revolution operator *(real[][] t, revolution r); -revolution sphere(triple c=<default>, real r, int n=<default>); skeleton operator init(); revolution operator init(); +revolution sphere(triple c=<default>, real r, int n=<default>); +path line(path p, path q, real[] t); +surface surface(revolution r, int n=<default>, pen color(int i, real j)=<default>); void draw(picture pic=<default>, revolution r, int m=<default>, int n=<default>, pen frontpen=<default>, pen backpen=<default>, pen longitudinalpen=<default>, pen longitudinalbackpen=<default>, light light=<default>, string name=<default>, render render=<default>, projection P=<default>); real[] tangent(path p, path q, bool side); -surface surface(revolution r, int n=<default>, pen color(int i, real j)=<default>); -linefit leastsquares(real[] x, real[] y); -pair Gaussrandpair(); -void histogram(picture pic=<default>, real[] bins, real[] count, real low=<default>, pen fillpen=<default>, pen drawpen=<default>, bool bars=<default>, Label legend=<default>, real markersize=<default>); -void histogram(picture pic=<default>, real[] data, real a, real b, int n, bool normalize=<default>, real low=<default>, pen fillpen=<default>, pen drawpen=<default>, bool bars=<default>, Label legend=<default>, real markersize=<default>); +pen defaultbackpen; +path[] cylinder(path3 base, real h, triple axis=<default>, projection P); +revolution cylinder(triple c=<default>, real r, real h, triple axis=<default>); +revolution cone(triple c=<default>, real r, real h, triple axis=<default>, int n=<default>); +real rms(real[] A); int[] frequency(real[] data, real[] bins); int[] frequency(real[] data, real a, real b, int n); int[][] frequency(real[] x, real[] y, real[] xbins, real[] ybins); int[][] frequency(real[] x, real[] y, pair a, pair b, int nx, int ny=<default>); int[][] frequency(pair[] z, pair a, pair b, int nx, int ny=<default>); -real kurtosis(real[] A); -real variancebiased(real[] A); -real variance(real[] A); -real legendmarkersize; -real rms(real[] A); -real stdev(real[] A); -real Gaussrand(); -real kurtosisexcess(real[] A); -linefit operator init(); +void histogram(picture pic=<default>, real[] bins, real[] count, real low=<default>, pen fillpen=<default>, pen drawpen=<default>, bool bars=<default>, Label legend=<default>, real markersize=<default>); +void histogram(picture pic=<default>, real[] data, real a, real b, int n, bool normalize=<default>, real low=<default>, pen fillpen=<default>, pen drawpen=<default>, bool bars=<default>, Label legend=<default>, real markersize=<default>); +real mean(real[] A); int bins(real[] data, int max=<default>); -real skewness(real[] A); path topbox(pair a, pair b); path halfbox(pair a, pair b); +real stdev(real[] A); +real variance(real[] A); +real legendmarkersize; +real variancebiased(real[] A); real Gaussian(real x, real sigma); real Gaussian(real x); -real mean(real[] A); +pair Gaussrandpair(); +real Gaussrand(); +linefit operator init(); +real skewness(real[] A); +linefit leastsquares(real[] x, real[] y); +real kurtosis(real[] A); +real kurtosisexcess(real[] A); Relation r4a; +pair[] endpoints(guide[] a); +Relation r3; picture tableau(frame[] cards, bool number=<default>); -Braid apply(Relation r, Braid b, int step, int place); -Component wye; +pair min(pair[] z); +Component bp; Component phi; -Component bm; real gapfactor; -Component bp; -pair[] endpoints(guide[] a); -Relation r4b; +Component bm; +Braid apply(Relation r, Braid b, int step, int place); +Relation operator -(Relation r); Component operator init(); Braid operator init(); Relation operator init(); Syzygy operator init(); -pair min(pair[] z); -real hwratio; -Relation operator -(Relation r); +Relation r4b; +Component wye; pair max(pair[] z); -Relation r3; -pen Gray; -pen Tan; -pen Brown; -pen Sepia; -pen OliveGreen; -pen SeaGreen; -pen JungleGreen; -pen BlueGreen; -pen NavyBlue; +real hwratio; +pen Orchid; +pen WildStrawberry; +pen Magenta; +pen BrickRed; pen CadetBlue; -pen BlueViolet; -pen RoyalPurple; -pen Plum; -pen DarkOrchid; -pen Fuchsia; -pen Rhodamine; pen CarnationPink; +pen SpringGreen; +pen MidnightBlue; +pen OliveGreen; +pen Apricot; pen Salmon; -pen WildStrawberry; -pen RubineRed; -pen OrangeRed; -pen BrickRed; +pen Cyan; +pen Red; +pen RawSienna; pen Mahogany; -pen BurntOrange; -pen Melon; -pen Dandelion; +pen Gray; +pen Plum; +pen BlueGreen; +pen Cerulean; +pen Blue; +pen BlueViolet; +pen RedOrange; pen Goldenrod; -pen GreenYellow; +pen ForestGreen; +pen BurntOrange; +pen Tan; pen Aquamarine; -pen Orchid; -pen Peach; -pen Cerulean; +pen Lavender; +pen Brown; +pen RubineRed; +pen TealBlue; pen White; -pen Yellow; -pen Thistle; -pen Violet; +pen Purple; +pen Bittersweet; +pen Orange; +pen OrangeRed; +pen Fuchsia; +pen Peach; pen PineGreen; -pen RedViolet; -pen Red; -pen Magenta; -pen Turquoise; -pen MidnightBlue; -pen Maroon; -pen ProcessBlue; +pen Dandelion; pen Black; -pen Bittersweet; +pen NavyBlue; +pen Rhodamine; pen YellowOrange; +pen Maroon; +pen ProcessBlue; +pen YellowGreen; +pen LimeGreen; +pen Green; +pen GreenYellow; +pen Sepia; +pen Emerald; +pen Mulberry; +pen RedViolet; pen SkyBlue; +pen SeaGreen; pen VioletRed; -pen ForestGreen; -pen RawSienna; +pen Violet; pen Periwinkle; -pen SpringGreen; -pen LimeGreen; -pen YellowGreen; -pen Mulberry; -pen Cyan; -pen Blue; -pen Orange; +pen Thistle; +pen Yellow; +pen JungleGreen; +pen DarkOrchid; pen CornflowerBlue; -pen Emerald; -pen TealBlue; -pen RedOrange; pen RoyalBlue; -pen Apricot; -pen Purple; -pen Lavender; -pen Green; +pen Melon; +pen RoyalPurple; +pen Turquoise; int lookup(tree t, int key); -bool contains(tree t, int key); -tree operator init(); +tree newtree(); void write(file out=<default>, tree t); +tree operator init(); tree add(tree t, int key, int value); -tree newtree(); -real trembleFrequency; +bool contains(tree t, int key); real trembleFuzz(); -real magneticRadius; -tremble operator init(); -real trembleRandom; real trembleAngle; -real degrees(rmf a, rmf b); -int coloredNodes; +real trembleRandom; +real trembleFrequency; +tremble operator init(); +real magneticRadius; +real[] sample(path3 g, real r, real relstep=<default>); path3 roundedpath(path3 A, real r); +int coloredNodes; +int coloredSegments; +surface surface(rmf[] R, real[] t, coloredpath cp, transform T(real), bool cyclic); +surface tube(path3 g, coloredpath section, transform T(real)=<default>, real corner=<default>, real relstep=<default>); coloredpath operator init(); coloredpath operator cast(path p); coloredpath operator cast(guide p); -surface tube(path3 g, coloredpath section, transform T(real)=<default>, real corner=<default>, real relstep=<default>); -surface surface(rmf[] R, real[] t, coloredpath cp, transform T(real), bool cyclic); -int coloredSegments; -real[] sample(path3 g, real r, real relstep=<default>); +real degrees(rmf a, rmf b); string VERSION; -pen Tomato; -pen Tan; -pen Snow; -pen Sienna; -pen SeaGreen; -pen SandyBrown; -pen RosyBrown; -pen PowderBlue; -pen Plum; -pen Pink; -pen PeachPuff; -pen PaleVioletRed; -pen PaleTurquoise; -pen OrangeRed; -pen OldLace; -pen Navy; -pen NavajoWhite; +pen Orchid; +pen Indigo; +pen Beige; +pen Seashell; +pen SlateBlue; +pen SlateGray; +pen Magenta; +pen GhostWhite; +pen CadetBlue; +pen DeepPink; +pen SpringGreen; +pen MidnightBlue; +pen Olive; +pen OliveDrab; pen Salmon; -pen Moccasin; -pen MistyRose; +pen LavenderBlush; +pen Chocolate; +pen Wheat; +pen Cyan; +pen Gainsboro; +pen Ivory; +pen PeachPuff; +pen PapayaWhip; +pen Red; +pen Pink; pen MintCream; +pen DarkTurquoise; pen Lime; -pen LightYellow; -pen LightSkyBlue; -pen LightSeaGreen; -pen LightPink; -pen LightGrey; -pen LightCyan; -pen Khaki; -pen HotPink; -pen Honeydew; -pen GreenYellow; -pen SaddleBrown; +pen SteelBlue; pen Gray; -pen IndianRed; +pen MediumBlue; +pen MediumOrchid; +pen MediumPurple; +pen MediumSeaGreen; +pen MediumSlateBlue; +pen MediumAquamarine; +pen MediumSpringGreen; +pen MediumTurquoise; +pen MediumVioletRed; +pen Plum; +pen Blue; +pen Gold; +pen BlueViolet; pen Goldenrod; -pen Fuchsia; -pen DimGray; -pen DeepSkyBlue; -pen DeepPink; -pen DarkTurquoise; -pen DarkSlateGray; -pen DarkSalmon; -pen DarkOrchid; -pen LawnGreen; -pen DarkOrange; -pen DarkOliveGreen; +pen ForestGreen; +pen Chartreuse; +pen NavajoWhite; +pen LemonChiffon; +pen Tan; pen DarkMagenta; -pen DarkGreen; -pen DarkGoldenrod; -pen DarkBlue; +pen AntiqueWhite; +pen PaleTurquoise; +pen Aquamarine; +pen IndianRed; +pen Aqua; pen Crimson; -pen Coral; -pen PapayaWhip; -pen CadetBlue; -pen BurlyWood; -pen Brown; -pen BlueViolet; -pen Beige; pen Azure; -pen Aquamarine; -pen OliveDrab; -pen DarkKhaki; +pen Lavender; +pen LawnGreen; +pen Brown; +pen BurlyWood; +pen Moccasin; +pen DarkBlue; pen Peru; -pen LightGoldenrodYellow; -pen DarkSeaGreen; -pen SkyBlue; pen White; -pen Yellow; -pen Thistle; +pen Purple; pen WhiteSmoke; -pen Violet; -pen LightCoral; -pen Red; -pen Magenta; -pen LightSalmon; -pen DarkViolet; -pen Turquoise; -pen MidnightBlue; -pen LavenderBlush; -pen Maroon; -pen Seashell; -pen Ivory; +pen DimGray; +pen Orange; +pen OrangeRed; +pen Fuchsia; pen Bisque; -pen PaleGreen; -pen PaleGoldenrod; +pen Honeydew; +pen RosyBrown; pen Black; -pen SlateBlue; -pen LightBlue; -pen ForestGreen; -pen LightGreen; -pen LemonChiffon; -pen AliceBlue; -pen Orchid; -pen Silver; -pen MediumVioletRed; -pen MediumBlue; -pen SpringGreen; -pen FloralWhite; -pen Linen; -pen Olive; -pen AntiqueWhite; -pen LightSlateGray; -pen GhostWhite; -pen LimeGreen; +pen Sienna; +pen Khaki; pen FireBrick; -pen BlanchedAlmond; +pen Snow; +pen Maroon; pen YellowGreen; -pen Gold; -pen MediumSpringGreen; -pen rgbint(int r, int g, int b); -pen Cyan; -pen Blue; -pen Teal; -pen Chartreuse; -pen DarkSlateBlue; -pen SlateGray; -pen Orange; +pen LimeGreen; +pen OldLace; +pen Green; +pen DarkOliveGreen; +pen DarkOrange; +pen GreenYellow; +pen DarkCyan; +pen FloralWhite; +pen DarkRed; +pen Silver; +pen BlanchedAlmond; +pen PowderBlue; pen DarkGray; -pen CornflowerBlue; -pen MediumOrchid; -pen Wheat; -pen Chocolate; -pen Aqua; -pen MediumPurple; +pen DarkGreen; +pen DarkGoldenrod; +pen SkyBlue; +pen SeaGreen; +pen DarkViolet; +pen Teal; +pen Violet; +pen AliceBlue; +pen SandyBrown; +pen HotPink; pen DodgerBlue; -pen DarkRed; -pen DarkCyan; -pen MediumSlateBlue; -pen MediumSeaGreen; -pen RoyalBlue; -pen MediumAquamarine; -pen Cornsilk; -pen Indigo; -pen Purple; -pen Lavender; -pen SteelBlue; -pen MediumTurquoise; +pen SaddleBrown; +pen Tomato; +pen DarkKhaki; +pen DeepSkyBlue; +pen Thistle; +pen LightBlue; +pen LightCoral; +pen Yellow; +pen LightCyan; +pen PaleGreen; +pen Linen; +pen LightGoldenrodYellow; +pen LightGreen; +pen LightGrey; +pen PaleGoldenrod; +pen LightPink; +pen LightSalmon; +pen LightSeaGreen; +pen Navy; +pen LightSkyBlue; +pen PaleVioletRed; +pen DarkOrchid; +pen LightSlateGray; pen LightSteelBlue; -pen Green; -pen Gainsboro; +pen CornflowerBlue; +pen LightYellow; +pen rgbint(int r, int g, int b); +pen Cornsilk; +pen Coral; +pen MistyRose; +pen DarkSalmon; +pen DarkSeaGreen; +pen RoyalBlue; +pen DarkSlateBlue; +pen DarkSlateGray; +pen Turquoise; |