diff options
Diffstat (limited to 'Build/source/utils/asymptote/doc/asymptote.texi')
-rw-r--r-- | Build/source/utils/asymptote/doc/asymptote.texi | 82 |
1 files changed, 42 insertions, 40 deletions
diff --git a/Build/source/utils/asymptote/doc/asymptote.texi b/Build/source/utils/asymptote/doc/asymptote.texi index c8e7467a9ca..ce1c6573fc9 100644 --- a/Build/source/utils/asymptote/doc/asymptote.texi +++ b/Build/source/utils/asymptote/doc/asymptote.texi @@ -488,6 +488,7 @@ type may be changed to @code{a4} with the configuration variable @code{papertype}. Alignment to other paper sizes can be obtained by setting the configuration variables @code{paperwidth} and @code{paperheight}. +@cindex @code{config} @cindex @code{texpath} @cindex @code{texcommand} @cindex @code{dvips} @@ -499,6 +500,7 @@ configuration variables @code{paperwidth} and @code{paperheight}. @cindex @code{ImageMagick} The following configuration variables normally do not require adjustment: @verbatim +config texpath texcommand dvips @@ -510,7 +512,7 @@ animate @end verbatim @noindent -Warnings (such as "writeoverloaded") may be enabled or disabled with +Warnings (such as "unbounded" and "offaxis") may be enabled or disabled with the functions @verbatim warn(string s); @@ -1362,8 +1364,8 @@ and @code{rainbow.asy}. @cindex Function shading @cindex function shading @cindex @code{functionshade} -More general shading possibilities are available with the @code{pdflatex}, -@code{context}, and @code{pdftex} @TeX{} engines: the routine +More general shading possibilities are available using @TeX{} engines +that produce PDF output (@pxref{texengines}): the routine @verbatim void functionshade(picture pic=currentpicture, path[] g, bool stroke=false, pen fillrule=currentpen, string shader); @@ -4064,12 +4066,28 @@ struct T { ++Tcount; } +T foo=new T; T foo; @end verbatim - -Here, the expression @code{new T} will produce a new instance of the class, but -will also cause @code{Tcount} to be incremented, so that it keeps track of the -number of instances produced. +@noindent +Here, @code{new T} produces a new instance of the class, which +causes @code{Tcount} to be incremented, tracking the +number of instances produced. The declarations @code{T foo=new T} and +@code{T foo} are equivalent: the second form implicitly creates a new +instance of @code{T}. +That is, after the definition of a structure @code{T}, a variable of +type @code{T} is initialized to a new instance (@code{new T}) by +default. During the definition of the structure, however, variables +of type @code{T} are initialized to @code{null} by default. This +special behaviour is to avoid infinite recursion of creating new +instances in code such as +@verbatim +struct tree { + int value; + tree left; + tree right; +} +@end verbatim The expression @code{null} can be cast to any structure type to yield a null reference, a reference that does not actually refer to any instance of the @@ -4079,27 +4097,14 @@ structure. Trying to use a field of a null reference will cause an error. @cindex @code{==} @cindex @code{!=} The function @code{bool alias(T,T)} checks to see if two structure references -refer to the same instance of the structure (or both to @code{null}). For -example, in the example code at the start of the section, @code{alias(foo,bar)} +refer to the same instance of the structure (or both to @code{null}). +In example at the beginning of this section, @code{alias(foo,bar)} would return true, but @code{alias(foo,new T)} would return false, as @code{new T} creates a new instance of the structure @code{T}. The boolean operators @code{==} and @code{!=} are by default equivalent to @code{alias} and @code{!alias} respectively, but may be overwritten for a particular type (for example, to do a deep comparison). -After the definition of a structure @code{T}, a variable of type @code{T} is -initialized to a new instance (@code{new T}) by default. During the definition -of the structure, however, variables of type @code{T} are initialized to -@code{null} by default. This special behaviour is to avoid infinite -recursion of creating new instances in code such as -@verbatim -struct tree { - int value; - tree left; - tree right; -} -@end verbatim - Here is a simple example that illustrates the use of structures: @verbatim struct S { @@ -6057,7 +6062,7 @@ An even better method for processing a @code{LaTeX} file with embedded @end quotation @noindent after putting the contents of -@url{http://asymptote.svn.sourceforge.net/viewvc/asymptote/trunk/asymptote/doc/latexmkrc} +@url{http://sourceforge.net/p/asymptote/code/HEAD/tree/trunk/asymptote/doc/latexmkrc} @noindent in a file @code{latexmkrc} in the same directory. The command @verbatim @@ -6072,7 +6077,7 @@ To store the figures in a separate directory named @code{asy}, one can define \def\asydir{asy} @end verbatim in @code{latexusage.tex} and put the contents of -@url{http://asymptote.svn.sourceforge.net/viewvc/asymptote/trunk/asymptote/doc/latexmkrc_asydir} +@url{http://sourceforge.net/p/asymptote/code/HEAD/tree/trunk/asymptote/doc/latexmkrc_asydir} in a file @code{latexmkrc} in the same directory. @noindent External @code{Asymptote} code in @code{filename.asy} should be included with @@ -9064,14 +9069,17 @@ at the beginning of the configuration file, it can contain arbitrary @cindex @code{pdflatex} @cindex @code{xelatex} @cindex @code{context} +@cindex @code{luatex} +@cindex @code{lualatex} @cindex @code{EPS} @cindex @code{PDF} +@anchor{texengines} @anchor{convert} The default output format is @acronym{EPS} for the (default) @code{latex} and @code{tex} tex engine and @acronym{PDF} for the -@code{pdflatex}, @code{xelatex}, and @code{context} tex engines. -Alternative output formats may be produced using the @code{-f} option -(or @code{outformat} setting). +@code{pdflatex}, @code{xelatex}, @code{context}, @code{luatex}, and +@code{lualatex} tex engines. Alternative output formats may be +produced using the @code{-f} option (or @code{outformat} setting). @cindex @code{SVG} @cindex @code{dvisvgm} @@ -9565,7 +9573,7 @@ Mark Henning, Steve Melenchuk, Martin Wiebusch, and Stefan Knorr. @c LocalWords: latexusage tex bbox PostScript subdirectory gcc emacs ASYDIR @c LocalWords: documentclass usepackage subpath shipout sqrt xN Mx bw AcroRd @c LocalWords: xscale xaxis yaxis BeginBar GIF postprocessing fpu de rpair xy -@c LocalWords: ImageMagick defaultfontsize defaultlinewidth cd asymptote Hy +@c LocalWords: ImageMagick cd asymptote Hy @c LocalWords: startup natively xasy tkinter VxN yingyang currentpicture toc @c LocalWords: MetaPost MetaFont Hammerlindl Healy texinfo autoload setq setf @c LocalWords: printindex setfilename settitle dircategory direntry titlepage @@ -9726,8 +9734,8 @@ Mark Henning, Steve Melenchuk, Martin Wiebusch, and Stefan Knorr. @c LocalWords: z2 before' struct X11 x11colors type1cm 12pt OT1 5mm @c LocalWords: cmr12 x' y' xsize ysize 25cm s1 s2 neighbourhood u'' @c LocalWords: s'' 3x 5x 3y 602e 2x 2y 3sin 10cm 204e addby7 10x Ai -@c LocalWords: only'' pow10 log10 expm1 log1p atan2 Ai Ai Ai Ai Ai -@c LocalWords: Ai Ai x1 x2 graph2d attachfile2 n0 P0 n1 P1 markers1 +@c LocalWords: only'' pow10 log10 expm1 log1p atan2 0pt 1filll 's ' +@c LocalWords: x1 x2 graph2d attachfile2 n0 P0 n1 P1 markers1 3D 2D @c LocalWords: interpolate1 markers2 inlinemovie3 media9 U3D T2A 5E @c LocalWords: embeddedu3d curvedlabel3 value2 tickvalue inner'' 2N @c LocalWords: lineargraph0 scalings log2 log2graph 5cm BWRainbow2 @@ -9746,13 +9754,7 @@ Mark Henning, Steve Melenchuk, Martin Wiebusch, and Stefan Knorr. @c LocalWords: yaxis3 zaxis3 ticks3 NoTicks3 arrowbar3 type2 axis3 @c LocalWords: generalaxis3 vectorfield3 margin3 grid3xyz 5unit 2D @c LocalWords: slopefield1 144x144 1filll 'load 'asy 'lasy 'auto 4g -@c LocalWords: 5bp 1cm 2S 100pt 3t bracedefaultratio incircle 12pt -@c LocalWords: 5mm 25cm 3x 5x 3y 602e 2x 2y 3sin 10cm 204e 10x Ai ' -@c LocalWords: 5E 5cm 2N 2E 2n 100d 5z 5y 0pt 0pt 1filll 's 3D 2D -@c LocalWords: 5unit 144x144 1filll 's 3D 2D libgs 'load 'asy 'lasy -@c LocalWords: 'auto 5bp 1cm 4g 2S 100pt 3t 12pt 5mm 25cm 3x 5x 3y -@c LocalWords: 602e 2x 2y 3sin 10cm 204e 10x 'load 'asy 'lasy 'auto -@c LocalWords: Ai 5E 5cm 2N 2E 2n 100d 5z 5y 5unit dvisvgmOptions -@c LocalWords: 144x144 5bp 1cm 4g 2S 100pt 3t 12pt 5mm 25cm 3x 5x -@c LocalWords: 3y 602e 2x 2y 3sin 10cm 204e 10x Ai Ai Ai Ai Ai Ai -@c LocalWords: Ai Ai 5E 5cm 2N 2E 2n 100d 5z 5y +@c LocalWords: libgs 'load 'asy 'lasy 'auto 5bp 1cm 2S 100pt 3t 5mm +@c LocalWords: bracedefaultratio incircle 12pt 25cm 3x 5x 3y 602e +@c LocalWords: 2x 2y 3sin 10cm 204e 10x Ai 5E +@c LocalWords: 5cm 2N 2E 2n 100d 5z 5y 5unit dvisvgmOptions 144x144 |