summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/doc/asymptote.texi
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/asymptote/doc/asymptote.texi')
-rw-r--r--Build/source/utils/asymptote/doc/asymptote.texi82
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