summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/info
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-02-24 18:33:44 +0000
committerKarl Berry <karl@freefriends.org>2021-02-24 18:33:44 +0000
commitdbd941ed19b558edd09219a372b2b0832957b283 (patch)
tree9c6af6f3924d8b1fff6638e510a907306342fa7d /Master/texmf-dist/doc/info
parenta360890a6c2a4befab6b48084d0731ad09c46631 (diff)
asymptote 2.69 support files
git-svn-id: svn://tug.org/texlive/trunk@57876 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/info')
-rw-r--r--Master/texmf-dist/doc/info/asy-faq.info44
-rw-r--r--Master/texmf-dist/doc/info/asymptote.info1753
2 files changed, 931 insertions, 866 deletions
diff --git a/Master/texmf-dist/doc/info/asy-faq.info b/Master/texmf-dist/doc/info/asy-faq.info
index 94a02e1e38a..dc69d1917e7 100644
--- a/Master/texmf-dist/doc/info/asy-faq.info
+++ b/Master/texmf-dist/doc/info/asy-faq.info
@@ -10,7 +10,7 @@ END-INFO-DIR-ENTRY
File: asy-faq.info, Node: Top, Next: Question 1.1, Up: (dir)
ASYMPTOTE FREQUENTLY ASKED QUESTIONS
- 25 Mar 2020
+ 2021-02-19
This is the list of Frequently Asked Questions about Asymptote (asy).
@@ -223,7 +223,7 @@ Question 1.2. How do I obtain Asymptote?
Binary releases are available for Linux, MacOS X, and Microsoft Windows
platforms, in addition to full source code, from the website
-http://asymptote.sourceforge.net/. Many Linux distributions (such as
+https://asymptote.sourceforge.io/. Many Linux distributions (such as
RedHat and Debian) now include an Asymptote package (check your
distribution's documentation for further information about this).
@@ -234,7 +234,7 @@ Question 1.3. Where can I ask questions about Asymptote?
If you have a question, please try to find an answer in this FAQ, in the
extensive Asymptote documentation at
-http://asymptote.sourceforge.net/doc/, or search the forum:
+https://asymptote.sourceforge.io/doc/, or search the forum:
http://sourceforge.net/forum/forum.php?forum_id=409349.

@@ -316,7 +316,7 @@ File: asy-faq.info, Node: Question 2.3, Next: Question 2.4, Previous: Question 2
Question 2.3. What do I do if I get the error: Error: pdfetex (file pdftex.cfg): cannot open config file...texinfo.tex appears to be broken?
-Simply put http://asymptote.sourceforge.net/asymptote.pdf in the directory
+Simply put https://asymptote.sourceforge.io/asymptote.pdf in the directory
doc and repeat the command make all. Or, if you don't want to build a
local copy of the documentation, simply proceed with make install-asy.
@@ -340,7 +340,7 @@ detailed guide on the topic. You can download it from
http://dario.dse.nl/projects/asylatex/.
Philippe Ivaldi has contributed an Asymptote mode for Emacs users
-http://asymptote.sourceforge.net/doc/Editing-modes.html, which includes a
+https://asymptote.sourceforge.io/doc/Editing-modes.html, which includes a
lasy-mode that allows one to compile and view the output of one
\begin{asy}...\end{asy} section at a time.
@@ -541,7 +541,7 @@ File: asy-faq.info, Node: Question 4.4, Next: Question 4.5, Previous: Question 4
Question 4.4. How can I use international fonts in Asymptote labels?
-See http://asymptote.sourceforge.net/doc/unicode.html.
+See https://asymptote.sourceforge.io/doc/Pens.html.

File: asy-faq.info, Node: Question 4.5, Next: Question 4.6, Previous: Question 4.4, Up: Section 4
@@ -586,8 +586,8 @@ Question 4.9. How can I draw some squares and circles of a fixed size and put a
Fixed-size objects should be drawn on a separate picture and then added to
currentpicture. Here is one way (see also
-http://asymptote.sourceforge.net/gallery/subpictures.asy and
-http://asymptote.sourceforge.net/gallery/mosquito.asy):
+https://asymptote.sourceforge.io/gallery/subpictures.asy and
+https://asymptote.sourceforge.io/gallery/mosquito.asy):
real u=2cm;
@@ -904,7 +904,7 @@ label. Other possible overwrite arguments are Allow (allows overlapping
labels; the default), Suppress (an overlapping label will not be written
at all), SuppressQuiet, and MoveQuiet. The last two achieve the same
result as the non-quiet types, but will not notify you which labels are
-overlapping. See: http://asymptote.sourceforge.net/doc/Pens.html.
+overlapping. See: https://asymptote.sourceforge.io/doc/Pens.html.
In the case of a user-specified tick array, you can change which labels
get suppressed/moved by changing the order of array entries.
@@ -948,7 +948,7 @@ corner. You can use this option to ensure multiple figures have the same
scaling and same resulting figure size (just ensure the two coordinates
given to fixedscaling() leaves room for any labels).
-See also http://asymptote.sourceforge.net/doc/Frames-and-pictures.html.
+See also https://asymptote.sourceforge.io/doc/Frames-and-pictures.html.

File: asy-faq.info, Node: Question 6.9, Next: Question 6.10, Previous: Question 6.8, Up: Section 6
@@ -966,7 +966,7 @@ limits((0,0),(1,2),Crop);
xaxis("$x$",BottomTop,LeftTicks);
yaxis("$y$",LeftRight,RightTicks);
-See also http://asymptote.sourceforge.net/doc/graph.html.
+See also https://asymptote.sourceforge.io/doc/graph.html.

File: asy-faq.info, Node: Question 6.10, Next: Question 6.11, Previous: Question 6.9, Up: Section 6
@@ -1051,7 +1051,7 @@ File: asy-faq.info, Node: Question 6.13, Next: Question 6.14, Previous: Question
Question 6.13. How can I make the y axis display base-2 logarithmic values?
-See the example http://asymptote.sourceforge.net/gallery/2D
+See the example https://asymptote.sourceforge.io/gallery/2D
graphs/log2graph.asy.

@@ -1061,7 +1061,7 @@ Question 6.14. How can I align the x axes of two graphs on the same figure?
An easy way to do this, if the axes to be aligned have the same scaling
and size, is illustrated in the example
-http://asymptote.sourceforge.net/gallery/2D graphs/alignedaxis.asy.
+https://asymptote.sourceforge.io/gallery/2D graphs/alignedaxis.asy.
Here is a more general solution to the problem of aligning two arbitrary
axes. One fits the second picture to a frame based on the horizontal
@@ -1125,7 +1125,7 @@ File: asy-faq.info, Node: Question 6.15, Next: Question 6.16, Previous: Question
Question 6.15. How can I change the direction of the y-axis, such that negatives values are on the upper y-axis?
Here is a simple example (see also the example
-http://asymptote.sourceforge.net/gallery/2D graphs/diatom.asy or the
+https://asymptote.sourceforge.io/gallery/2D graphs/diatom.asy or the
discussion of Linear(-1) in the documentation):
import graph;
@@ -1159,7 +1159,7 @@ Yes, use the parametric form
y=t
x=(t-2)^2+1
-See the example http://asymptote.sourceforge.net/gallery/2D
+See the example https://asymptote.sourceforge.io/gallery/2D
graphs/parametricgraph.asy.

@@ -1382,7 +1382,7 @@ Question 7.8. Is there a debugger for asy?
Yes, Asymptote includes a line-based debugger:
-http://asymptote.sourceforge.net/doc/Debugger.html
+https://asymptote.sourceforge.io/doc/Debugger.html

File: asy-faq.info, Node: Question 7.9, Next: Question 8.1, Previous: Question 7.8, Up: Section 7
@@ -1441,7 +1441,7 @@ pictures and distinguishes between true-size objects and objects that
should scale with the picture size. The resulting linear programming
problem is solved via the Simplex method.
-See the http://asymptote.sourceforge.net/gallery/dimension.asy example for
+See the https://asymptote.sourceforge.io/gallery/dimension.asy example for
an example of how deferred drawing is used to accomodate both user and
true-size (PostScript) coordinates.
@@ -1495,7 +1495,7 @@ PQ and pq. We find using routines like extension more explicit and less
confusing to new users. But we could be persuaded to add something similar
if someone can justify the need. In the meantime, one can always use the
explicit built-in linear solver solve (see
-http://asymptote.sourceforge.net/doc/solve.html), which uses LU
+https://asymptote.sourceforge.io/doc/solve.html), which uses LU
decomposition.

@@ -1578,7 +1578,7 @@ void clip(picture pic=currentpicture, real width, real height)
clip(100,100);
See also the discussion of tilings in the documentation:
-http://asymptote.sourceforge.net/doc/Pens.html.
+https://asymptote.sourceforge.io/doc/Pens.html.

File: asy-faq.info, Node: Section 9, Previous: Section 8, Up: Top
@@ -1612,7 +1612,7 @@ import settings;
interactiveView=false;
batchView=false;
in their config.asy file. See
-http://asymptote.sourceforge.net/doc/Options.html.
+https://asymptote.sourceforge.io/doc/Options.html.

File: asy-faq.info, Node: Question 9.2, Next: Question 9.3, Previous: Question 9.1, Up: Section 9
@@ -1631,8 +1631,8 @@ Convert them to eps format and use the graphic(string) function just like
a Label:
label(graphic("file"),(0,0));
-See the example http://asymptote.sourceforge.net/gallery/orthocenter.asy
-and http://asymptote.sourceforge.net/doc/label.html.
+See the example https://asymptote.sourceforge.io/gallery/orthocenter.asy
+and https://asymptote.sourceforge.io/doc/label.html.

File: asy-faq.info, Node: Question 9.4, Next: Question 9.5, Previous: Question 9.3, Up: Section 9
diff --git a/Master/texmf-dist/doc/info/asymptote.info b/Master/texmf-dist/doc/info/asymptote.info
index a1ca6774244..042d9085414 100644
--- a/Master/texmf-dist/doc/info/asymptote.info
+++ b/Master/texmf-dist/doc/info/asymptote.info
@@ -1,11 +1,11 @@
This is asymptote.info, produced by makeinfo version 6.6 from
asymptote.texi.
-This file documents 'Asymptote', version 2.65.
+This file documents 'Asymptote', version 2.69.
<https://asymptote.sourceforge.io>
- Copyright (C) 2004-19 Andy Hammerlindl, John Bowman, and Tom Prince.
+ Copyright (C) 2004-20 Andy Hammerlindl, John Bowman, and Tom Prince.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Lesser General Public License
@@ -22,11 +22,11 @@ File: asymptote.info, Node: Top, Next: Description, Prev: (dir), Up: (dir)
Asymptote
*********
-This file documents 'Asymptote', version 2.65.
+This file documents 'Asymptote', version 2.69.
<https://asymptote.sourceforge.io>
- Copyright (C) 2004-19 Andy Hammerlindl, John Bowman, and Tom Prince.
+ Copyright (C) 2004-20 Andy Hammerlindl, John Bowman, and Tom Prince.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Lesser General Public License
@@ -126,6 +126,7 @@ Base modules
* stats:: Statistics routines and histograms
* patterns:: Custom fill and draw patterns
* markers:: Custom path marker routines
+* map:: Map keys to values
* tree:: Dynamic binary search tree
* binarytree:: Binary tree drawing module
* drawtree:: Tree drawing module
@@ -136,8 +137,6 @@ Base modules
* embed:: Embedding movies, sounds, and 3D objects
* slide:: Making presentations with 'Asymptote'
* MetaPost:: 'MetaPost' compatibility routines
-* unicode:: Accept 'unicode' (UTF-8) characters
-* latin1:: Accept 'ISO 8859-1' characters
* babel:: Interface to 'LaTeX' 'babel' package
* labelpath:: Drawing curved labels
* labelpath3:: Drawing curved labels in 3D
@@ -175,8 +174,12 @@ provides a mathematical coordinate-based framework for technical
drawing. Labels and equations are typeset with 'LaTeX', for overall
document consistency, yielding the same high-quality level of
typesetting that 'LaTeX' provides for scientific text. By default it
-produces 'PostScript' output, but it can also generate any format that
-the 'ImageMagick' package can produce.
+produces 'PostScript' output, but it can also generate 'PDF', 'SVG',
+'WebGL', 'PRC', and any format that the 'ImageMagick' package can
+produce. You can even try it out in your Web browser without installing
+it, using the 'Asymptote Web Application':
+
+ <http://asymptote.ualberta.ca>
A major advantage of 'Asymptote' over other graphics packages is that
it is a high-level programming language, as opposed to just a graphics
@@ -292,8 +295,8 @@ The 'texhash' command, which installs LaTeX style files, is optional.
The executable file will be '/usr/local/bin/asy') and example code will
be installed by default in '/usr/local/share/doc/asymptote/examples'.
-Fedora users can easily install the most recent version of 'Asymptote'
-with the command
+Fedora users can easily install a recent version of 'Asymptote' with the
+command
dnf --enablerepo=rawhide install asymptote
To install the latest version of 'Asymptote' on a Debian-based
@@ -332,7 +335,7 @@ self-extracting 'Asymptote' executable 'asymptote-x.xx-setup.exe', where
A working TeX implementation (we recommend
<https://www.tug.org/texlive> or <http://www.miktex.org>) will be
required to typeset labels. You will also need to install 'GPL
-Ghostscript' version 9.14 or later from
+Ghostscript' version 9.52 or later from
<http://downloads.ghostscript.com/public>.
To view 'PostScript' output, you can install the program 'gsview'
@@ -365,7 +368,7 @@ file is updated. The default 'UNIX' 'PostScript' viewer 'gv' supports
this (via a 'SIGHUP' signal). Version 'gv-3.6.3' or later (from
<https://ftp.gnu.org/gnu/gv/>) is required for interactive mode to work
properly. Users of 'ggv' will need to enable 'Watch file' under
-'Edit/Postscript Viewer Preferences'. Users of 'gsview' will need to
+'Edit/PostScript Viewer Preferences'. Users of 'gsview' will need to
enable 'Options/Auto Redisplay' (however, under 'MSDOS' it is still
necessary to click on the 'gsview' window; under 'UNIX' one must
manually redisplay by pressing the 'r' key).
@@ -397,7 +400,9 @@ The configuration variable 'htmlviewer' specifies the browser to use to
display 3D 'WebGL' output. The default setting is 'google-chrome' under
'UNIX' and 'cmd' under 'Microsoft Windows'. Note that 'Internet
Explorer' does not support 'WebGL'; 'Microsoft Windows' users should set
-their default html browser to 'chrome' or 'microsoft-edge'.
+their default html browser to 'chrome' or 'microsoft-edge'. By default,
+2D and 3D 'HTML' images expand to the enclosing canvas; this can be
+disabled by setting the configuation variable 'absolute' to 'true'.
On 'UNIX' systems, to support automatic document reloading of 'PDF'
files in 'Adobe Reader', we recommend copying the file 'reload.js' from
@@ -462,8 +467,8 @@ File: asymptote.info, Node: Search paths, Next: Compiling from UNIX source, P
2.5 Search paths
================
-In looking for 'Asymptote' system files, 'asy' will search the following
-paths, in the order listed:
+In looking for 'Asymptote' files, 'asy' will search the following paths,
+in the order listed:
1. The current directory;
2. A list of one or more directories specified by the configuration
variable 'dir' or environment variable 'ASYMPTOTE_DIR' (separated
@@ -475,6 +480,9 @@ paths, in the order listed:
4. The 'Asymptote' system directory (by default,
'/usr/local/share/asymptote' under 'UNIX' and 'C:\Program
Files\Asymptote' under 'MSDOS').
+ 5. The 'Asymptote' examples directory (by default,
+ '/usr/local/share/doc/asymptote/examples' under 'UNIX' and
+ 'C:\Program Files\Asymptote\examples' under 'MSDOS').

File: asymptote.info, Node: Compiling from UNIX source, Next: Editing modes, Prev: Search paths, Up: Installation
@@ -498,18 +506,16 @@ used; if it is old we recommend first putting
in the 'Asymptote' source directory.
On 'UNIX' platforms (other than 'MacOS X'), we recommend using
-version '3.0.0' of the 'freeglut' library. To compile 'freeglut',
+version '3.2.1' of the 'freeglut' library. To compile 'freeglut',
download
- <https://prdownloads.sourceforge.net/freeglut/freeglut-3.0.0.tar.gz>
+ <https://prdownloads.sourceforge.net/freeglut/freeglut-3.2.1.tar.gz>
and type (as the root user):
-gunzip freeglut-3.0.0.tar.gz
-tar -xf freeglut-3.0.0.tar
-cd freeglut-3.0.0
-./configure --prefix=/usr
-cmake .
+gunzip freeglut-3.2.1.tar.gz
+tar -xf freeglut-3.2.1.tar
+cd freeglut-3.2.1
+cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_C_FLAGS=-fcommon .
make
make install
-cd ..
Then compile 'Asymptote' with the commands
./configure
@@ -528,9 +534,10 @@ done as the root user. To install without root privileges, change the
./configure --prefix=$HOME/asymptote
One can disable use of the Boehm garbage collector by configuring
with './configure --disable-gc'. For a list of other configuration
-options, say './configure --help'. For example, one can tell configure
-to look for header files and libraries in nonstandard locations:
-./configure CPPFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib
+options, say './configure --help'. For example, under 'MacOS X', one
+can tell configure to use the 'clang' compilers and look for header
+files and libraries in nonstandard locations:
+./configure CC=clang CXX=clang++ CPPFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib
If you are compiling 'Asymptote' with 'gcc', you will need a
relatively recent version (e.g. 3.4.4 or later). For full interactive
@@ -618,7 +625,10 @@ cd asymptote
make all
make install
-To compile without optimization, use the command 'make CFLAGS=-g'.
+To compile without optimization, use the command 'make CFLAGS=-g'. On
+'Ubuntu' systems, you may need to first install the required
+dependencies:
+apt-get build-dep asymptote

File: asymptote.info, Node: Uninstall, Prev: Git, Up: Installation
@@ -652,7 +662,7 @@ A concise introduction to 'Asymptote' is given here. For a more
thorough introduction, see the excellent 'Asymptote' tutorial written by
Charles Staats:
- <https://math.uchicago.edu/~cstaats/Charles_Staats_III/Notes_and_papers_files/asymptote_tutorial.pdf>
+ <https://asymptote.sourceforge.io/asymptote_tutorial.pdf>
Another 'Asymptote' tutorial is available as a wiki, with images
rendered by an online Asymptote engine:
@@ -798,7 +808,7 @@ the initial node, as in this approximation (accurate to within 0.06%) of
a unit circle:
path unitcircle=E..N..W..S..cycle;
-An 'Asymptote' path, being connected, is equivalent to a 'Postscript
+An 'Asymptote' path, being connected, is equivalent to a 'PostScript
subpath'. The '^^' binary operator, which requests that the pen be
moved (without drawing or affecting endpoint curvatures) from the final
point of the left-hand path to the initial point of the right-hand path,
@@ -820,8 +830,8 @@ of the paths:
filldraw(unitcircle^^reverse(g),yellow,black);
The '^^' operator is used by the 'box(triple, triple)' function in
-the module 'three.asy' to construct the edges of a cube 'unitbox'
-without retracing steps (*note three::):
+the module 'three' to construct the edges of a cube 'unitbox' without
+retracing steps (*note three::):
import three;
currentprojection=orthographic(5,4,2,center=true);
@@ -873,6 +883,9 @@ layer appearing on top. Within each layer, labels, images, and verbatim
'tex' commands are always drawn after the 'PostScript' objects in that
layer.
+ A page break can be generated with the command
+void newpage(picture pic=currentpicture);
+
While some of these drawing commands take many options, they all have
sensible default values (for example, the picture argument defaults to
currentpicture).
@@ -930,18 +943,19 @@ equivalently 'ArcArrow'), 'MidArcArrow', and 'ArcArrows'.
'labelmargin(p)' to avoid overlap with other drawn objects. Typical
values of 'margin' are 'NoMargin', 'BeginMargin', 'EndMargin' (or
equivalently 'Margin'), and 'Margins' (which leaves a margin at both
-ends of the path). One may use 'Margin(real begin, real end)' to
+ends of the path). One may use 'Margin(real begin, real end=begin)' to
specify the size of the beginning and ending margin, respectively, in
multiples of the units 'labelmargin(p)' used for aligning labels.
Alternatively, 'BeginPenMargin', 'EndPenMargin' (or equivalently
-'PenMargin'), 'PenMargins', 'PenMargin(real begin, real end)' specify a
-margin in units of the pen line width, taking account of the pen line
-width when drawing the path or arrow. For example, use 'DotMargin', an
-abbreviation for 'PenMargin(-0.5*dotfactor,0.5*dotfactor)', to draw from
-the usual beginning point just up to the boundary of an end dot of width
+'PenMargin'), 'PenMargins', 'PenMargin(real begin, real end=begin)'
+specify a margin in units of the pen line width, taking account of the
+pen line width when drawing the path or arrow. For example, use
+'DotMargin', an abbreviation for
+'PenMargin(-0.5*dotfactor,0.5*dotfactor)', to draw from the usual
+beginning point just up to the boundary of an end dot of width
'dotfactor*linewidth(p)'. The qualifiers 'BeginDotMargin',
'EndDotMargin', and 'DotMargins' work similarly. The qualifier
-'TrueMargin(real begin, real end)' allows one to specify a margin
+'TrueMargin(real begin, real end=begin)' allows one to specify a margin
directly in 'PostScript' units, independent of the pen line width.
The use of arrows, bars, and margins is illustrated by the examples
@@ -1051,7 +1065,8 @@ void axialshade(picture pic=currentpicture, path g, bool stroke=false,
pen pena, pair a, bool extenda=true,
pen penb, pair b, bool extendb=true);
The boolean parameters 'extenda' and 'extendb' indicate whether the
-shading should extend beyond the axis endpoints 'a' and 'b'.
+shading should extend beyond the axis endpoints 'a' and 'b'. An example
+of axial shading is provided in the example file 'axialshade.asy'.
Radial gradient shading varying smoothly from 'pena' on the circle
with center 'a' and radius 'ra' to 'penb' on the circle with center 'b'
@@ -1079,10 +1094,10 @@ Illustrations of Gouraud shading are provided in the example file
here:
<https://www.adobe.com/content/dam/acom/en/devnet/postscript/pdfs/TN5600.SmoothShading.pdf>
- Tensor product shading using fill rule 'fillrule' on patches bounded
-by the n cyclic paths of length 4 in path array 'b', using the vertex
-colors specified in the n \times 4 pen array 'p' and internal control
-points in the n \times 4 array 'z', is implemented with
+ Tensor product shading using clipping path 'g', fill rule 'fillrule'
+on patches bounded by the n cyclic paths of length 4 in path array 'b',
+using the vertex colors specified in the n \times 4 pen array 'p' and
+internal control points in the n \times 4 array 'z', is implemented with
void tensorshade(picture pic=currentpicture, path[] g, bool stroke=false,
pen fillrule=currentpen, pen[][] p, path[] b=g,
pair[][] z=new pair[][]);
@@ -1129,8 +1144,10 @@ void clip(picture pic=currentpicture, path g, stroke=false,
the path 'g', using fill rule 'fillrule' (*note fillrule::). If
'stroke=true', the clipped portion is the same as the region that would
be drawn with 'draw(pic,g,zerowinding)'; in this case the path 'g' need
-not be cyclic. For an illustration of picture clipping, see the first
-example in *note LaTeX usage::.
+not be cyclic. While clipping has no notion of depth (it transcends
+layers and even pages), one can localize clipping to a temporary
+picture, which can then be added to 'pic'. For an illustration of
+picture clipping, see the first example in *note LaTeX usage::.

File: asymptote.info, Node: label, Prev: clip, Up: Drawing commands
@@ -1260,12 +1277,12 @@ asy(nativeformat(),"logo");
fill(unitcircle^^(scale(2/11.7)*unitcircle),
evenodd+rgb(124/255,205/255,124/255));
label(scale(1.1)*minipage(
-"\centering\scriptsize \textbf{\LARGE {\tt Asymptote}\\
+ "\centering\scriptsize \textbf{\LARGE {\tt Asymptote}\\
\smallskip
\small The Vector Graphics Language}\\
\smallskip
\textsc{Andy Hammerlindl, John Bowman, and Tom Prince}
-http://asymptote.sourceforge.net\\
+https://asymptote.sourceforge.io\\
",8cm),(0,0.6));
label(graphic("logo","height=7cm"),(0,-0.22));
clip(unitcircle^^(scale(2/11.7)*unitcircle),evenodd);
@@ -1484,12 +1501,12 @@ user-defined types):
returns the conjugate of 'z';
'real length(pair z)'
- returns the complex modulus '|z|' of its argument 'z'. For
+ returns the complex modulus |'z'| of its argument 'z'. For
example,
pair z=(3,4);
length(z);
returns the result 5. A synonym for 'length(pair)' is
- 'abs(pair)';
+ 'abs(pair)'. The function 'abs2(pair z)' returns |'z'|^2;
'real angle(pair z, bool warn=true)'
returns the angle of 'z' in radians in the interval
@@ -1563,8 +1580,9 @@ user-defined types):
Here are the built-in functions for triples:
'real length(triple v)'
- returns the length '|v|' of the vector 'v'. A synonym for
- 'length(triple)' is 'abs(triple)';
+ returns the length |'v'| of its argument 'v'. A synonym for
+ 'length(triple)' is 'abs(triple)'. The function 'abs2(triple
+ v)' returns |'v'|^2;
'real polar(triple v, bool warn=true)'
returns the colatitude of 'v' measured from the z axis in
@@ -2419,7 +2437,7 @@ with one or more color components equal to 1.
'defaultpen(pen)', causes the label alignment routines to use the
full label bounding box for alignment. In contrast, 'basealign'
requests that the TeX baseline be respected. The base align
- setting of a pen is returned by 'int basealigin(pen p=currentpen)'.
+ setting of a pen is returned by 'int basealign(pen p=currentpen)'.
* The font size is specified in TeX points (1 pt = 1/72.27 inches)
with the function 'pen fontsize(real size, real
@@ -2435,14 +2453,12 @@ with one or more color components equal to 1.
fontsize(pen p=currentpen)' and 'real lineskip(pen p=currentpen)',
respectively.
- * A pen using a specific 'LaTeX' 'NFSS' font is returned by calling
- the function 'pen font(string encoding, string family, string
- series, string shape)'. The default setting,
- 'font("OT1","cmr","m","n")', corresponds to 12pt Computer Modern
- Roman; this may be changed with 'defaultpen(pen)'. The font
- setting of a pen is returned by 'string font(pen p=currentpen)'.
- Support for standardized international characters is provided by
- the 'unicode' package (*note unicode::).
+ * A pen using a specific LaTeX NFSS font is returned by calling the
+ function 'pen font(string encoding, string family, string series,
+ string shape)'. The default setting, 'font("OT1","cmr","m","n")',
+ corresponds to 12pt Computer Modern Roman; this may be changed with
+ 'defaultpen(pen)'. The font setting of a pen is returned by
+ 'string font(pen p=currentpen)'.
Alternatively, one may select a fixed-size TeX font (on which
'fontsize' has no effect) like '"cmr12"' (12pt Computer Modern
@@ -2466,6 +2482,25 @@ with one or more color components equal to 1.
pen Symbol(string series="m", string shape="n");
pen ZapfDingbats(string series="m", string shape="n");
+ * Starting with the 2018/04/01 release, LaTeX takes UTF-8 as the new
+ default input encoding. However, you can still set different input
+ encoding (so as the font, font encoding or even language context).
+ Here is an example for 'cp1251' and Russian language in Cyrillic
+ script (font encoding 'T2A'):
+ texpreamble("\usepackage[math]{anttor}");
+ texpreamble("\usepackage[T2A]{fontenc}");
+ texpreamble("\usepackage[cp1251]{inputenc}");
+ texpreamble("\usepackage[russian]{babel}");
+ Support for Chinese, Japanese, and Korean fonts is provided by the
+ CJK package:
+ <https://ctan.org/pkg/cjk>
+ The following commands enable the CJK song family (within a label,
+ you can also temporarily switch to another family, say kai, by
+ prepending '"\CJKfamily{kai}"' to the label string):
+ texpreamble("\usepackage{CJK}
+ \AtBeginDocument{\begin{CJK*}{GBK}{song}}
+ \AtEndDocument{\clearpage\end{CJK*}}");
+
* The transparency of a pen can be changed with the command:
pen opacity(real opacity=1, string blend="Compatible");
The opacity can be varied from '0' (fully transparent) to the
@@ -2652,7 +2687,8 @@ power with the '^' operator.
The implicit initializer for transforms is 'identity()'. The
routines 'shift(transform t)' and 'shiftless(transform t)' return the
transforms '(t.x,t.y,0,0,0,0)' and '(0,0,t.xx,t.xy,t.yx,t.yy)'
-respectively.
+respectively. The function 'bool isometry(transform t)' can be used to
+test if 't' is an isometry (preserves distance).

File: asymptote.info, Node: Frames and pictures, Next: Files, Prev: Transforms, Up: Programming
@@ -2991,7 +3027,7 @@ File: asymptote.info, Node: Files, Next: Variable initializers, Prev: Frames
value) files and portable XDR (External Data Representation) binary
files.
- An input file must first be opened with
+ An input file can be opened with
input(string name="", bool check=true, string comment="#", string mode="");
reading is then done by assignment:
file fin=input("test.txt");
@@ -3004,12 +3040,14 @@ character of the string 'comment' specifies a comment character. If
this character is encountered in a data file, the remainder of the line
is ignored. When reading strings, a comment character followed
immediately by another comment character is treated as a single literal
-comment character.
+comment character. If 'Asymptote' is compiled with support for
+'libcurl', 'name' can be a URL.
- One can change the current working directory for read operations to
-the contents of the string 's' with the function 'string cd(string s)',
-which returns the new working directory. If 'string s' is empty, the
-path is reset to the value it had at program startup.
+ Unless the '-noglobalread' command-line option is specified, one can
+change the current working directory for read operations to the contents
+of the string 's' with the function 'string cd(string s)', which returns
+the new working directory. If 'string s' is empty, the path is reset to
+the value it had at program startup.
When reading pairs, the enclosing parenthesis are optional. Strings
are also read by assignment, by reading characters up to but not
@@ -3025,9 +3063,11 @@ existing data will be preserved, the position will be set to the
end-of-file, and both reading and writing operations will be enabled.
For security reasons, writing to files in directories other than the
current directory is allowed only if the '-globalwrite' (or '-nosafe')
-command-line option is specified. The function 'string mktemp(string
-s)' may be used to create and return the name of a unique temporary file
-in the current directory based on the string 's'.
+command-line option is specified. Reading from files in other
+directories is allowed unless the '-noglobalread' command-line option is
+specified. The function 'string mktemp(string s)' may be used to create
+and return the name of a unique temporary file in the current directory
+based on the string 's'.
There are two special files: 'stdin', which reads from the keyboard,
and 'stdout', which writes to the terminal. The implicit initializer
@@ -3063,12 +3103,12 @@ Microsystem's XDR (External Data Representation) portable binary format
(available on all 'UNIX' platforms). Alternatively, a file may also be
opened with 'mode="binary"' to read or write double precision reals and
single precision integers in the native (nonportable) machine binary
-format. The virtual member functions 'file singlereal(bool b=true)' and
-'file singleint(bool b=true)' be used to change the precision of real
-and integer I/O operations, respectively, for an XDR or binary file 'f'.
-Similarly, the function 'file signedint(bool b=true)' can be used to
-modify the signedness of integer reads and writes for an XDR or binary
-file 'f'.
+format, or to read the entire file into a string. The virtual member
+functions 'file singlereal(bool b=true)' and 'file singleint(bool
+b=true)' be used to change the precision of real and integer I/O
+operations, respectively, for an XDR or binary file 'f'. Similarly, the
+function 'file signedint(bool b=true)' can be used to modify the
+signedness of integer reads and writes for an XDR or binary file 'f'.
The virtual members 'name', 'mode', 'singlereal', 'singleint', and
'signedint' may be used to query the respective parameters for a given
@@ -3386,10 +3426,11 @@ be the (non-'void') type of the variable.
The function 'cputime()' returns a structure 'cputime' with
cumulative CPU times broken down into the fields 'parent.user',
-'parent.system', 'child.user', and 'child.system'. For convenience, the
-incremental fields 'change.user' and 'change.system' indicate the change
-in the corresponding total parent and child CPU times since the last
-call to 'cputime()'. The function
+'parent.system', 'child.user', and 'child.system', along with the
+cumulative wall clock time in 'parent.clock', all measured in seconds.
+For convenience, the incremental fields 'change.user', 'change.system',
+and 'change.clock' indicate the change in the corresponding fields since
+the last call to 'cputime()'. The function
void write(file file=stdout, string s="", cputime c,
string format=cputimeformat, suffix suffix=none);
displays the incremental user cputime followed by "u", the incremental
@@ -4079,18 +4120,18 @@ of type 'T[]'.
'new T[] {list}'
returns a new array of type 'T[]' initialized with 'list' (a comma
- delimited list of elements).
+ delimited list of elements);
'new T[n]'
returns a new array of 'n' elements of type 'T[]'. These 'n' array
elements are not initialized unless they are arrays themselves (in
- which case they are each initialized to empty arrays).
+ which case they are each initialized to empty arrays);
'T[] array(int n, T value, int depth=intMax)'
returns an array consisting of 'n' copies of 'value'. If 'value'
is itself an array, a deep copy of 'value' is made for each entry.
If 'depth' is specified, this deep copying only recurses to the
- specified number of levels.
+ specified number of levels;
'int[] sequence(int n)'
if 'n >= 1' returns the array '{0,1,...,n-1}' (otherwise returns a
@@ -4108,7 +4149,12 @@ of type 'T[]'.
'T[] map(T f(T), T[] a)'
returns the array obtained by applying the function 'f' to each
element of the array 'a'. This is equivalent to 'sequence(new
- T(int i) {return f(a[i]);},a.length)'.
+ T(int i) {return f(a[i]);},a.length)';
+
+'T2[] map(T2 f(T1), T1[] a)'
+ constructed by calling 'mapArray("T1","T2")', returns the array
+ obtained by applying the function 'f' to each element of the array
+ 'a';
'int[] reverse(int n)'
if 'n >= 1' returns the array '{n-1,n-2,...,0}' (otherwise returns
@@ -4117,7 +4163,7 @@ of type 'T[]'.
'int[] complement(int[] a, int n)'
returns the complement of the integer array 'a' in
'{0,1,2,...,n-1}', so that 'b[complement(a,b.length)]' yields the
- complement of 'b[a]'.
+ complement of 'b[a]';
'real[] uniform(real a, real b, int n)'
if 'n >= 1' returns a uniform partition of '[a,b]' into 'n'
@@ -4129,13 +4175,13 @@ of type 'T[]'.
the end of the array for the '-n'th value;
'int[] findall(bool[] a)'
- returns the indices of all 'true' values in the boolean array 'a'.
+ returns the indices of all 'true' values in the boolean array 'a';
'int search(T[] a, T key)'
For built-in ordered types 'T', searches a sorted array 'a' of 'n'
elements for k, returning the index 'i' if 'a[i] <= key < a[i+1]',
'-1' if 'key' is less than all elements of 'a', or 'n-1' if 'key'
- is greater than or equal to the last element of 'a'.
+ is greater than or equal to the last element of 'a';
'int search(T[] a, T key, bool less(T i, T j))'
searches an array 'a' sorted in ascending order such that element
@@ -4175,44 +4221,44 @@ of type 'T[]'.
'i' precedes element 'j' if 'less(i,j)' is true, subject to (if
'stable' is 'true') the stability constraint that the original
order of elements 'i' and 'j' is preserved if 'less(i,j)' and
- 'less(j,i)' are both 'false'.
+ 'less(j,i)' are both 'false';
'T[][] transpose(T[][] a)'
- returns the transpose of 'a'.
+ returns the transpose of 'a';
'T[][][] transpose(T[][][] a, int[] perm)'
returns the 3D transpose of 'a' obtained by applying the
permutation 'perm' of 'new int[]{0,1,2}' to the indices of each
- entry.
+ entry;
'T sum(T[] a)'
- For arithmetic types 'T', returns the sum of 'a'. In the case
+ for arithmetic types 'T', returns the sum of 'a'. In the case
where 'T' is 'bool', the number of true elements in 'a' is
- returned.
+ returned;
'T min(T[] a)'
'T min(T[][] a)'
'T min(T[][][] a)'
- For built-in ordered types 'T', returns the minimum element of 'a'.
+ for built-in ordered types 'T', returns the minimum element of 'a';
'T max(T[] a)'
'T max(T[][] a)'
'T max(T[][][] a)'
- For built-in ordered types 'T', returns the maximum element of 'a'.
+ for built-in ordered types 'T', returns the maximum element of 'a';
'T[] min(T[] a, T[] b)'
- For built-in ordered types 'T', and arrays 'a' and 'b' of the same
+ for built-in ordered types 'T', and arrays 'a' and 'b' of the same
length, returns an array composed of the minimum of the
- corresponding elements of 'a' and 'b'.
+ corresponding elements of 'a' and 'b';
'T[] max(T[] a, T[] b)'
- For built-in ordered types 'T', and arrays 'a' and 'b' of the same
+ for built-in ordered types 'T', and arrays 'a' and 'b' of the same
length, returns an array composed of the maximum of the
- corresponding elements of 'a' and 'b'.
+ corresponding elements of 'a' and 'b';
'pair[] pairs(real[] x, real[] y);'
- For arrays 'x' and 'y' of the same length, returns the pair array
- 'sequence(new pair(int i) {return (x[i],y[i]);},x.length)'.
+ for arrays 'x' and 'y' of the same length, returns the pair array
+ 'sequence(new pair(int i) {return (x[i],y[i]);},x.length)';
'pair[] fft(pair[] a, int sign=1)'
returns the unnormalized Fast Fourier Transform of 'a' (if the
@@ -4230,18 +4276,18 @@ of type 'T[]'.
'pair[][] fft(pair[][] a, int sign=1)'
returns the unnormalized two-dimensional Fourier transform of 'a'
- using the given 'sign'.
+ using the given 'sign';
'pair[][][] fft(pair[][][] a, int sign=1)'
returns the unnormalized three-dimensional Fourier transform of 'a'
- using the given 'sign'.
+ using the given 'sign';
'real dot(real[] a, real[] b)'
- returns the dot product of the vectors 'a' and 'b'.
+ returns the dot product of the vectors 'a' and 'b';
'pair dot(pair[] a, pair[] b)'
returns the complex dot product 'sum(a*conj(b))' of the vectors 'a'
- and 'b'.
+ and 'b';
'real[] tridiagonal(real[] a, real[] b, real[] c, real[] f);'
Solve the periodic tridiagonal problem L'x'='f' and return the
@@ -4254,7 +4300,7 @@ of type 'T[]'.
[ c[n-1] a[n-1] b[n-1] ]
For Dirichlet boundary conditions (denoted here by 'u[-1]' and
'u[n]'), replace 'f[0]' by 'f[0]-a[0]u[-1]' and
- 'f[n-1]-c[n-1]u[n]'; then set 'a[0]=c[n-1]=0'.
+ 'f[n-1]-c[n-1]u[n]'; then set 'a[0]=c[n-1]=0';
'real[] solve(real[][] a, real[] b, bool warn=true)'
Solve the linear equation 'a'x='b' by LU decomposition and return
@@ -4270,31 +4316,31 @@ of type 'T[]'.
write(a*x);
If 'a' is a singular matrix and 'warn' is 'false', return an empty
array. If the matrix 'a' is tridiagonal, the routine 'tridiagonal'
- provides a more efficient algorithm (*note tridiagonal::).
+ provides a more efficient algorithm (*note tridiagonal::);
'real[][] solve(real[][] a, real[][] b, bool warn=true)'
Solve the linear equation 'a'x='b' and return the solution x, where
'a' is an n \times n matrix and 'b' is an n \times m matrix. If
'a' is a singular matrix and 'warn' is 'false', return an empty
- matrix.
+ matrix;
'real[][] identity(int n);'
- returns the n \times n identity matrix.
+ returns the n \times n identity matrix;
'real[][] diagonal(... real[] a)'
- returns the diagonal matrix with diagonal entries given by a.
+ returns the diagonal matrix with diagonal entries given by a;
'real[][] inverse(real[][] a)'
- returns the inverse of a square matrix 'a'.
+ returns the inverse of a square matrix 'a';
'real[] quadraticroots(real a, real b, real c);'
This numerically robust solver returns the real roots of the
quadratic equation ax^2+bx+c=0, in ascending order. Multiple roots
- are listed separately.
+ are listed separately;
'pair[] quadraticroots(explicit pair a, explicit pair b, explicit pair c);'
This numerically robust solver returns the complex roots of the
- quadratic equation ax^2+bx+c=0.
+ quadratic equation ax^2+bx+c=0;
'real[] cubicroots(real a, real b, real c, real d);'
This numerically robust solver returns the real roots of the cubic
@@ -4619,6 +4665,11 @@ quotation marks:
'import "/usr/local/share/asymptote/graph.asy" as graph;'
+ If 'Asymptote' is compiled with support for 'libcurl', the file name
+can even be a URL: 'import
+"https://raw.githubusercontent.com/vectorgraphics/asymptote/HEAD/doc/axis3.asy"
+as axis3;'
+
It is an error if modules import themselves (or each other in a
cycle). The module name to be imported must be known at compile time.
@@ -4651,6 +4702,9 @@ code s=quote {
};
eval(s,true); // Outputs 1
+ One application of 'eval' is the creation of parametrized Asymptote
+code, such as a map from one type to another (*note map::).
+
To include the contents of an existing file 'graph' verbatim (as if
the contents of the file were inserted at that point), use one of the
forms:
@@ -4735,7 +4789,7 @@ void f();
for(int i=0; i < 10; ++i) {
int x=i;
if(x==5) {
- f=new void () { write(x); }
+ f=new void() {write(x);};
}
}
f();
@@ -4751,7 +4805,7 @@ void f() {
}
}
both 'x' and 'y' will be allocated in the same place, which is also
-where 'f' is also allocated.
+where 'f' is allocated.
Statements may also be declared static, in which case they are run at
the place where the enclosing function or structure is defined.
@@ -4782,7 +4836,7 @@ File: asymptote.info, Node: LaTeX usage, Next: Base modules, Prev: Programmin
***************
'Asymptote' comes with a convenient 'LaTeX' style file 'asymptote.sty'
-(v1.35 or later required) that makes 'LaTeX' 'Asymptote'-aware.
+(v1.36 or later required) that makes 'LaTeX' 'Asymptote'-aware.
Entering 'Asymptote' code directly into the 'LaTeX' source file, at the
point where it is needed, keeps figures organized and avoids the need to
invent new file names for each figure. Simply add the line
@@ -4985,6 +5039,7 @@ File: asymptote.info, Node: Base modules, Next: Options, Prev: LaTeX usage,
* stats:: Statistics routines and histograms
* patterns:: Custom fill and draw patterns
* markers:: Custom path marker routines
+* map:: Map keys to values
* tree:: Dynamic binary search tree
* binarytree:: Binary tree drawing module
* drawtree:: Tree drawing module
@@ -4995,8 +5050,6 @@ File: asymptote.info, Node: Base modules, Next: Options, Prev: LaTeX usage,
* embed:: Embedding movies, sounds, and 3D objects
* slide:: Making presentations with 'Asymptote'
* MetaPost:: 'MetaPost' compatibility routines
-* unicode:: Accept 'unicode' (UTF-8) characters
-* latin1:: Accept 'ISO 8859-1' characters
* babel:: Interface to 'LaTeX' 'babel' package
* labelpath:: Drawing curved labels
* labelpath3:: Drawing curved labels in 3D
@@ -5040,9 +5093,9 @@ File: asymptote.info, Node: simplex, Next: math, Prev: plain, Up: Base modul
8.2 'simplex'
=============
-This package solves the two-variable linear programming problem using
-the simplex method. It is used by the module 'plain' for automatic
-sizing of pictures.
+This module solves the two-variable linear programming problem using the
+simplex method. It is used by the module 'plain' for automatic sizing
+of pictures.

File: asymptote.info, Node: math, Next: interpolate, Prev: simplex, Up: Base modules
@@ -5050,7 +5103,7 @@ File: asymptote.info, Node: math, Next: interpolate, Prev: simplex, Up: Base
8.3 'math'
==========
-This package extends 'Asymptote''s mathematical capabilities with useful
+This module extends 'Asymptote''s mathematical capabilities with useful
functions such as
'void drawline(picture pic=currentpicture, pair P, pair Q, pen p=currentpen);'
@@ -5152,7 +5205,7 @@ File: asymptote.info, Node: stats, Next: patterns, Prev: trembling, Up: Base
8.7 'stats'
===========
-This package implements a Gaussian random number generator and a
+This module implements a Gaussian random number generator and a
collection of statistics routines, including 'histogram' and
'leastsquares'.
@@ -5162,8 +5215,8 @@ File: asymptote.info, Node: patterns, Next: markers, Prev: stats, Up: Base m
8.8 'patterns'
==============
-This package implements 'Postscript' tiling patterns and includes
-several convenient pattern generation routines.
+This module implements 'PostScript' tiling patterns and includes several
+convenient pattern generation routines.

File: asymptote.info, Node: markers, Next: tree, Prev: patterns, Up: Base modules
@@ -5171,8 +5224,8 @@ File: asymptote.info, Node: markers, Next: tree, Prev: patterns, Up: Base mo
8.9 'markers'
=============
-This package implements specialized routines for marking paths and
-angles. The principal mark routine provided by this package is
+This module implements specialized routines for marking paths and
+angles. The principal mark routine provided by this module is
markroutine markinterval(int n=1, frame f, bool rotated=false);
which centers 'n' copies of frame 'f' within uniformly space intervals
in arclength along the path, optionally rotated by the angle of the
@@ -5200,7 +5253,7 @@ and 'TildeIntervalMarker' from the above frames. The example
[./markers1]
- This package also provides a routine for marking an angle AOB:
+ This module also provides a routine for marking an angle AOB:
void markangle(picture pic=currentpicture, Label L="",
int n=1, real radius=0, real space=0,
pair A, pair O, pair B, arrowbar arrow=None,
@@ -5212,17 +5265,38 @@ as illustrated in the example 'markers2.asy'.
[./markers2]

+File: asymptote.info, Node: map, Next: tree, Prev: markers, Up: Base modules
+
+8.10 'map'
+==========
+
+This module creates a struct parameterized by the types specified in
+strings 'key' and 'value', mapping keys to values with a specified
+default:
+import map;
+
+mapTemplate(name="map",key="string",value="int",default="-1");
+
+map M;
+
+M.add("z",2);
+M.add("a",3);
+M.add("d",4);
+write(M.lookup("a"));
+write(M.lookup("y"));
+
+
File: asymptote.info, Node: tree, Next: binarytree, Prev: markers, Up: Base modules
-8.10 'tree'
+8.11 'tree'
===========
-This package implements an example of a dynamic binary search tree.
+This module implements an example of a dynamic binary search tree.

File: asymptote.info, Node: binarytree, Next: drawtree, Prev: tree, Up: Base modules
-8.11 'binarytree'
+8.12 'binarytree'
=================
This module can be used to draw an arbitrary binary tree and includes an
@@ -5247,7 +5321,7 @@ add(pic2.fit(),(0,0),10S);

File: asymptote.info, Node: drawtree, Next: syzygy, Prev: binarytree, Up: Base modules
-8.12 'drawtree'
+8.13 'drawtree'
===============
This is a simple tree drawing module used by the example 'treetest.asy'.
@@ -5255,7 +5329,7 @@ This is a simple tree drawing module used by the example 'treetest.asy'.

File: asymptote.info, Node: syzygy, Next: feynman, Prev: drawtree, Up: Base modules
-8.13 'syzygy'
+8.14 'syzygy'
=============
This module automates the drawing of braids, relations, and syzygies,
@@ -5265,27 +5339,27 @@ along with the corresponding equations, as illustrated in the example

File: asymptote.info, Node: feynman, Next: roundedpath, Prev: syzygy, Up: Base modules
-8.14 'feynman'
+8.15 'feynman'
==============
-This package, contributed by Martin Wiebusch, is useful for drawing
+This module, contributed by Martin Wiebusch, is useful for drawing
Feynman diagrams, as illustrated by the examples 'eetomumu.asy' and
'fermi.asy'.

File: asymptote.info, Node: roundedpath, Next: animation, Prev: feynman, Up: Base modules
-8.15 'roundedpath'
+8.16 'roundedpath'
==================
-This package, contributed by Stefan Knorr, is useful for rounding the
+This module, contributed by Stefan Knorr, is useful for rounding the
sharp corners of paths, as illustrated in the example file
'roundpath.asy'.

File: asymptote.info, Node: animation, Next: embed, Prev: roundedpath, Up: Base modules
-8.16 'animation'
+8.17 'animation'
================
This module allows one to generate animations, as illustrated by the
@@ -5296,7 +5370,7 @@ MPEG movie.
The related 'animate' module, derived from the 'animation' module,
generates higher-quality portable clickable PDF movies, with optional
-controls. This requires installing the package
+controls. This requires installing the module
<http://mirror.ctan.org/macros/latex/contrib/animate/animate.sty>
(version 2007/11/30 or later) in a new directory 'animate' in the local
'LaTeX' directory (for example, in
@@ -5317,7 +5391,7 @@ described here:

File: asymptote.info, Node: embed, Next: slide, Prev: animation, Up: Base modules
-8.17 'embed'
+8.18 'embed'
============
This module provides an interface to the 'LaTeX' package (included with
@@ -5342,21 +5416,21 @@ animate::).

File: asymptote.info, Node: slide, Next: MetaPost, Prev: embed, Up: Base modules
-8.18 'slide'
+8.19 'slide'
============
-This package provides a simple yet high-quality facility for making
+This module provides a simple yet high-quality facility for making
presentation slides, including portable embedded PDF animations (see the
file 'slidemovies.asy'). A simple example is provided in
'slidedemo.asy'.

-File: asymptote.info, Node: MetaPost, Next: unicode, Prev: slide, Up: Base modules
+File: asymptote.info, Node: MetaPost, Next: babel, Prev: slide, Up: Base modules
-8.19 'MetaPost'
+8.20 'MetaPost'
===============
-This package provides some useful routines to help 'MetaPost' users
+This module provides some useful routines to help 'MetaPost' users
migrate old 'MetaPost' code to 'Asymptote'. Further contributions here
are welcome.
@@ -5369,42 +5443,9 @@ occurrences of 'whatever', one can use the built-in explicit linear
equation solver 'solve' instead.

-File: asymptote.info, Node: unicode, Next: latin1, Prev: MetaPost, Up: Base modules
-
-8.20 'unicode'
-==============
-
-Import this package at the beginning of the file to instruct 'LaTeX' to
-accept 'unicode' (UTF-8) standardized international characters. To use
-Cyrillic fonts, you will need to change the font encoding:
-import unicode;
-texpreamble("\usepackage{mathtext}\usepackage[russian]{babel}");
-defaultpen(font("T2A","cmr","m","n"));
-Support for Chinese, Japanese, and Korean fonts is provided by the CJK
-package:
- <http://mirror.ctan.org/languages/chinese/CJK/>
-The following commands enable the CJK song family (within a label, you
-can also temporarily switch to another family, say kai, by prepending
-'"\CJKfamily{kai}"' to the label string):
-texpreamble("\usepackage{CJK}
-\AtBeginDocument{\begin{CJK*}{GBK}{song}}
-\AtEndDocument{\clearpage\end{CJK*}}");
+File: asymptote.info, Node: babel, Next: labelpath, Prev: MetaPost, Up: Base modules
-
-File: asymptote.info, Node: latin1, Next: babel, Prev: unicode, Up: Base modules
-
-8.21 'latin1'
-=============
-
-If you don't have 'LaTeX' support for 'unicode' installed, you can
-enable support for Western European languages (ISO 8859-1) by importing
-the module 'latin1'. This module can be used as a template for
-providing support for other ISO 8859 alphabets.
-
-
-File: asymptote.info, Node: babel, Next: labelpath, Prev: latin1, Up: Base modules
-
-8.22 'babel'
+8.21 'babel'
============
This module implements the 'LaTeX' 'babel' package in 'Asymptote'. For
@@ -5415,7 +5456,7 @@ babel("german");

File: asymptote.info, Node: labelpath, Next: labelpath3, Prev: babel, Up: Base modules
-8.23 'labelpath'
+8.22 'labelpath'
================
This module uses the 'PSTricks' 'pstextpath' macro to fit labels along a
@@ -5427,13 +5468,13 @@ Here 'justify' is one of 'LeftJustified', 'Centered', or
'RightJustified'. The x component of a shift transform applied to the
Label is interpreted as a shift along the curve, whereas the y component
is interpreted as a shift away from the curve. All other Label
-transforms are ignored. This package requires the 'latex' tex engine
-and inherits the limitations of the 'PSTricks' '\pstextpath' macro.
+transforms are ignored. This module requires the 'latex' tex engine and
+inherits the limitations of the 'PSTricks' '\pstextpath' macro.

File: asymptote.info, Node: labelpath3, Next: annotate, Prev: labelpath, Up: Base modules
-8.24 'labelpath3'
+8.23 'labelpath3'
=================
This module, contributed by Jens Schwaiger, implements a 3D version of
@@ -5443,7 +5484,7 @@ provided in 'curvedlabel3.asy'.

File: asymptote.info, Node: annotate, Next: CAD, Prev: labelpath3, Up: Base modules
-8.25 'annotate'
+8.24 'annotate'
===============
This module supports PDF annotations for viewing with 'Adobe Reader',
@@ -5457,21 +5498,20 @@ and 'tex' TeX engines.

File: asymptote.info, Node: CAD, Next: graph, Prev: annotate, Up: Base modules
-8.26 'CAD'
+8.25 'CAD'
==========
-This package, contributed by Mark Henning, provides basic pen
-definitions and measurement functions for simple 2D CAD drawings
-according to DIN 15. It is documented separately, in the file
-'CAD.pdf'.
+This module, contributed by Mark Henning, provides basic pen definitions
+and measurement functions for simple 2D CAD drawings according to DIN
+15. It is documented separately, in the file 'CAD.pdf'.

File: asymptote.info, Node: graph, Next: palette, Prev: CAD, Up: Base modules
-8.27 'graph'
+8.26 'graph'
============
-This package implements two-dimensional linear and logarithmic graphs,
+This module implements two-dimensional linear and logarithmic graphs,
including automatic scale and tick selection (with the ability to
override manually). A graph is a 'guide' (that can be drawn with the
draw command, with an optional legend) constructed with one of the
@@ -5833,11 +5873,11 @@ following routines:
real f(real x) {return exp(x);}
pair F(real x) {return (x,f(x));}
+ draw(graph(f,-4,2,operator ..),red);
+
xaxis("$x$");
yaxis("$y$",0);
- draw(graph(f,-4,2,operator ..),red);
-
labely(1,E);
label("$e^x$",F(1),SE);
@@ -5890,21 +5930,21 @@ following routines:
attach(legend(),truepoint(E),20E,UnFill);
A legend can have multiple entries per line:
- import graph;
- size(8cm,6cm,IgnoreAspect);
-
- typedef real realfcn(real);
- realfcn F(real p) {
- return new real(real x) {return sin(p*x);};
- };
-
+ import graph;
+ size(8cm,6cm,IgnoreAspect);
+
+ typedef real realfcn(real);
+ realfcn F(real p) {
+ return new real(real x) {return sin(p*x);};
+ };
+
for(int i=1; i < 5; ++i)
draw(graph(F(i*pi),0,1),Pen(i),
- "$\sin("+(i == 1 ? "" : (string) i)+"\pi x)$");
- xaxis("$x$",BottomTop,LeftTicks);
- yaxis("$y$",LeftRight,RightTicks(trailingzero));
-
- attach(legend(2),(point(S).x,truepoint(S).y),10S,UnFill);
+ "$\sin("+(i == 1 ? "" : (string) i)+"\pi x)$");
+ xaxis("$x$",BottomTop,LeftTicks);
+ yaxis("$y$",LeftRight,RightTicks(trailingzero));
+
+ attach(legend(2),(point(S).x,truepoint(S).y),10S,UnFill);
[./legend]
@@ -6363,7 +6403,7 @@ following routines:
draw(pic,graph(pic,t,infectious,t >= 10 & t <= 15),red);
yaxis(pic,Right,red,LeftTicks(begin=false,end=false));
});
-
+
add(secondary);
label(shift(5mm*N)*"Proportion of crows",point(NW),E);
@@ -6419,7 +6459,7 @@ following routines:
// Remove negative or zero values of rho:
t=rho > 0 ? t : null;
rho=rho > 0 ? rho : null;
-
+
scale(Log(true),Linear(true));
int n=step > 0 ? ceil((last-first)/step) : 0;
@@ -6430,17 +6470,17 @@ following routines:
real first=first+i*step;
real[] logrho=(t >= first & t <= last) ? log(rho) : null;
real[] logt=(t >= first & t <= last) ? -log(t) : null;
-
+
if(logt.length < 2) break;
-
+
// Fit to the line logt=L.m*logrho+L.b:
linefit L=leastsquares(logt,logrho);
-
+
T.push(first);
xi.push(L.m);
dxi.push(L.dm);
- }
-
+ }
+
draw(graph(T,xi),blue);
errorbars(T,xi,dxi,red);
@@ -6540,7 +6580,7 @@ following routines:

File: asymptote.info, Node: palette, Next: three, Prev: graph, Up: Base modules
-8.28 'palette'
+8.27 'palette'
==============
'Asymptote' can also generate color density images and palettes. The
@@ -6750,7 +6790,7 @@ pen[][] palette(real[][] f, pen[] palette);

File: asymptote.info, Node: three, Next: obj, Prev: palette, Up: Base modules
-8.29 'three'
+8.28 'three'
============
This module fully extends the notion of guides and paths in 'Asymptote'
@@ -6827,7 +6867,7 @@ and 'three_light.asy':
struct light {
real[][] diffuse;
real[][] specular;
- pen background=nullpen; // Background color of the 3D canvas.
+ pen background=nullpen; // Background color of the canvas.
real specularfactor;
triple[] position; // Only directional lights are currently implemented.
}
@@ -6844,9 +6884,11 @@ light Headlamp=light(gray(0.8),specular=gray(0.7),
currentlight=Headlamp;
light nolight;
- The 'background' pen can be use to set the 3D 'OpenGL' background
-colour (the default is white). In the case of 3D 'WebGL' images one can
-request a completely transparent background with
+ The 'currentlight.background' (or 'background' member of the
+specified 'light') can be used to set the background colour for 2D (or
+3D) images. The default background is white for 'HTML' images and
+transparent for all other formats. One can request a completely
+transparent background for 3D 'WebGL' images with
'currentlight.background=black+opacity(0.0);'
Sample Bezier surfaces are contained in the example files
@@ -6923,10 +6965,11 @@ There are five choices for viewing 3D 'Asymptote' output:
the command-line option '-V' and the default settings
'outformat=""' and 'render=-1'). On 'UNIX' systems with graphics
support for multisampling, the sample width can be controlled with
- the setting 'multisample'. An initial screen position can be
- specified with the pair setting 'position', where negative values
- are interpreted as relative to the corresponding maximum screen
- dimension. The default settings
+ the setting 'multisample'. The ratio of physical to logical screen
+ pixels can be specified with the setting 'devicepixelratio'. An
+ initial screen position can be specified with the pair setting
+ 'position', where negative values are interpreted as relative to
+ the corresponding maximum screen dimension. The default settings
import settings;
leftbutton=new string[] {"rotate","zoom","shift","pan"};
middlebutton=new string[] {""};
@@ -7387,9 +7430,8 @@ position 'v' using pen 'p'.
three-dimensional nonrendered 'PostScript') is available with the
setting 'render=0'. This currently only works for piecewise planar
surfaces, such as those produced by the parametric 'surface' routines in
-the 'graph3' module. Surfaces produced by the 'solids' package will
-also be properly rendered if the parameter 'nslices' is sufficiently
-large.
+the 'graph3' module. Surfaces produced by the 'solids' module will also
+be properly rendered if the parameter 'nslices' is sufficiently large.
In the module 'bsp', hidden surface removal of planar pictures is
implemented using a binary space partition and picture clipping. A
@@ -7432,7 +7474,7 @@ add(faces);

File: asymptote.info, Node: obj, Next: graph3, Prev: three, Up: Base modules
-8.30 'obj'
+8.29 'obj'
==========
This module allows one to construct surfaces from simple obj files, as
@@ -7441,7 +7483,7 @@ illustrated in the example files 'galleon.asy' and 'triceratops.asy'.

File: asymptote.info, Node: graph3, Next: grid3, Prev: obj, Up: Base modules
-8.31 'graph3'
+8.30 'graph3'
=============
This module implements three-dimensional versions of the functions in
@@ -7607,7 +7649,7 @@ picture vectorfield(path3 vector(pair v), triple f(pair z), pair a, pair b,

File: asymptote.info, Node: grid3, Next: solids, Prev: graph3, Up: Base modules
-8.32 'grid3'
+8.31 'grid3'
============
This module, contributed by Philippe Ivaldi, can be used for drawing 3D
@@ -7636,10 +7678,10 @@ zaxis3(Label("$z$",position=EndPoint,align=(-1,0.5)),Bounds(Min,Min),

File: asymptote.info, Node: solids, Next: tube, Prev: grid3, Up: Base modules
-8.33 'solids'
+8.32 'solids'
=============
-This solid geometry package defines a structure 'revolution' that can be
+This solid geometry module defines a structure 'revolution' that can be
used to fill and draw surfaces of revolution. The following example
uses it to display the outline of a circular cylinder of radius 1 with
axis 'O--1.5unit(Y+Z)' with perspective projection:
@@ -7671,10 +7713,10 @@ struct skeleton {

File: asymptote.info, Node: tube, Next: flowchart, Prev: solids, Up: Base modules
-8.34 'tube'
+8.33 'tube'
===========
-This package extends the 'tube' surfaces constructed in
+This module extends the 'tube' surfaces constructed in
'three_arrows.asy' to arbitrary cross sections, colors, and spine
transformations. The routine
surface tube(path3 g, coloredpath section,
@@ -7722,10 +7764,10 @@ Further examples can be found at

File: asymptote.info, Node: flowchart, Next: contour, Prev: tube, Up: Base modules
-8.35 'flowchart'
+8.34 'flowchart'
================
-This package provides routines for drawing flowcharts. The primary
+This module provides routines for drawing flowcharts. The primary
structure is a 'block', which represents a single block on the
flowchart. The following eight functions return a position on the
appropriate edge of the block, given picture transform 't':
@@ -7810,8 +7852,8 @@ size(0,300);
import flowchart;
block block1=rectangle(Label("Example",magenta),
- pack(Label("Start:",heavygreen),"",Label("$A:=0$",blue),
- "$B:=1$"),(-0.5,3),palegreen,paleblue,red);
+ pack(Label("Start:",heavygreen),"",Label("$A:=0$",blue),
+ "$B:=1$"),(-0.5,3),palegreen,paleblue,red);
block block2=diamond(Label("Choice?",blue),(0,2),palegreen,red);
block block3=roundrectangle("Do something",(-1,1));
block block4=bevel("Don't do something",(1,1));
@@ -7838,12 +7880,12 @@ add(new void(picture pic, transform t) {

File: asymptote.info, Node: contour, Next: contour3, Prev: flowchart, Up: Base modules
-8.36 'contour'
+8.35 'contour'
==============
-This package draws contour lines. To construct contours corresponding
-to the values in a real array 'c' for a function 'f' on 'box(a,b)', use
-the routine
+This module draws contour lines. To construct contours corresponding to
+the values in a real array 'c' for a function 'f' on 'box(a,b)', use the
+routine
guide[][] contour(real f(real, real), pair a, pair b,
real[] c, int nx=ngraph, int ny=nx,
interpolate join=operator --, int subsample=1);
@@ -7934,7 +7976,7 @@ pen tickpen=gray+0.5*linewidth(currentpen);
pen[] Palette=BWRainbow();
bounds range=image(f,Automatic,a,b,N,Palette);
-
+
// Major contours
real[] Cvals=uniform(range.min,range.max,Divs);
@@ -8017,17 +8059,17 @@ Shewchuk.

File: asymptote.info, Node: contour3, Next: smoothcontour3, Prev: contour, Up: Base modules
-8.37 'contour3'
+8.36 'contour3'
===============
-This package draws surfaces described as the null space of real-valued
+This module draws surfaces described as the null space of real-valued
functions of (x,y,z) or 'real[][][]' matrices. Its usage is illustrated
in the example file 'magnetic.asy'.

File: asymptote.info, Node: smoothcontour3, Next: slopefield, Prev: contour3, Up: Base modules
-8.38 'smoothcontour3'
+8.37 'smoothcontour3'
=====================
This module, written by Charles Staats, draws implicitly defined
@@ -8063,7 +8105,7 @@ explanation of the module's usage and pitfalls, are available at

File: asymptote.info, Node: slopefield, Next: ode, Prev: smoothcontour3, Up: Base modules
-8.39 'slopefield'
+8.38 'slopefield'
=================
To draw a slope field for the differential equation dy/dx=f(x,y) (or
@@ -8105,7 +8147,7 @@ draw(curve((0,0),func,(-3,-3),(3,3)),red);

File: asymptote.info, Node: ode, Prev: slopefield, Up: Base modules
-8.40 'ode'
+8.39 'ode'
==========
The 'ode' module, illustrated in the example 'odetest.asy', implements a
@@ -8143,7 +8185,9 @@ Options (negate by replacing - with -no):
-cmyk Convert rgb colors to cmyk [false]
-c,-command string Command to autoexecute
-compact Conserve memory at the expense of speed [false]
+-compress Compress images in PDF output [true]
-d,-debug Enable debugging messages [false]
+-devicepixelratio n Ratio of physical to logical pixels [1]
-digits n Default output file precision [7]
-divisor n Garbage collect using purge(divisor=n) [2]
-embed Embed rendered preview image [true]
@@ -8152,6 +8196,7 @@ Options (negate by replacing - with -no):
-fitscreen Fit rendered image to screen [true]
-framedelay ms Additional frame delay [0]
-framerate frames/s Animation speed [30]
+-globalread Allow read from other directory [true]
-globalwrite Allow write to other directory [false]
-gray Convert all colors to grayscale [false]
-h,-help Show summary of options; command-line only
@@ -8170,12 +8215,11 @@ Options (negate by replacing - with -no):
-loop Loop 3D animations [false]
-m,-mask Mask fpu exceptions; command-line only
-maxtile pair Maximum rendering tile size [(1024,768)]
--maxviewport pair Maximum viewport size [(2048,2048)]
+-maxviewport pair Maximum viewport size [(0,0)]
-multiline Input code over multiple lines at the prompt [false]
-multipleView View output from multiple batch-mode files [false]
-multisample n Multisampling width for screen images [4]
-offline Produce offline html files [false]
--offscreen Use offscreen rendering [false]
-O,-offset pair PostScript offset [(0,0)]
-f,-outformat format Convert each output file to specified format
-o,-outname name Alternative output directory/filename
@@ -8196,7 +8240,7 @@ Options (negate by replacing - with -no):
-shiftHoldDistance n WebGL touch screen distance limit for shift mode [20]
-shiftWaitTime ms WebGL touch screen shift mode delay [200]
-spinstep deg/s Spin speed [60]
--svgemulation Emulate unimplemented SVG shading [false]
+-svgemulation Emulate unimplemented SVG shading [true]
-tabcompletion Interactive prompt auto-completion [true]
-tex engine latex|pdflatex|xelatex|lualatex|tex|pdftex|luatex|context|none [latex]
-thick Render thick 3D lines [true]
@@ -8276,10 +8320,9 @@ using the '-f' option (or 'outformat' setting).
later) from <https://dvisvgm.de>. You might need to adjust the
configuration variable 'libgs' to point to the location of your
'Ghostscript' library 'libgs.so' (or to an empty string, depending on
-how 'dvisvgm' was configured). The 2.8 version of 'dvisvgm' can display
-SVG output (used by the 'xasy' editor) for external vector EPS and PDF
-images included with the 'graphic()' function, in addition to (using the
-'latex' TeX engine) PNG and JPEG embedded raster images.
+how 'dvisvgm' was configured). The 2.9.1 version of 'dvisvgm' can
+display SVG output (used by the 'xasy' editor) for embedded EPS, PDF,
+PNG, and JPEG images included with the 'graphic()' function.
'Asymptote' can also produce any output format supported by the
'ImageMagick' 'convert' program (version 6.3.5 or later recommended; an
@@ -8459,7 +8502,7 @@ pip3 install cson numpy pyqt5 PyQt5.sip
Pictures are deconstructed into the SVG image format. Since 'Qt5'
does not support 'SVG' clipping, you will need the 'rsvg-convert'
utility, which is part of the 'librsvg2-tools' package on 'UNIX' systems
-and the 'librsvg' package on 'MacOS'; under 'Microsoft Windows', it is
+and the 'librsvg' package on 'MacOS X'; under 'Microsoft Windows', it is
available as
<https://sourceforge.net/projects/tumagcc/files/rsvg-convert-2.40.20.7z>
@@ -8628,7 +8671,9 @@ Prince. Sean Healy designed the 'Asymptote' logo. Other contributors
include Orest Shardt, Jesse Frohlich, Michail Vidiassov, Charles Staats,
Philippe Ivaldi, Olivier Guibe', Radoslav Marinov, Jeff Samuelson, Chris
Savage, Jacques Pienaar, Mark Henning, Steve Melenchuk, Martin Wiebusch,
-Stefan Knorr, and Supakorn "Jamie" Rassameemasmuang.
+Stefan Knorr, and Supakorn "Jamie" Rassameemasmuang. Pedram Emami
+developed the 'Asymptote Web Application' at
+<http://asymptote.ualberta.ca>.

File: asymptote.info, Node: Index, Prev: Credits, Up: Top
@@ -8678,9 +8723,9 @@ Index
* ---: Bezier curves. (line 84)
* -=: Self & prefix operators.
(line 6)
-* -c: Options. (line 194)
-* -l: Options. (line 213)
-* -u: Options. (line 204)
+* -c: Options. (line 195)
+* -l: Options. (line 214)
+* -u: Options. (line 205)
* -V: Configuring. (line 6)
* -V <1>: Drawing in batch mode.
(line 16)
@@ -8693,7 +8738,7 @@ Index
* 2D graphs: graph. (line 6)
* 3D graphs: graph3. (line 6)
* 3D grids: grid3. (line 6)
-* 3D PostScript: three. (line 636)
+* 3D PostScript: three. (line 639)
* :: Arithmetic & logical.
(line 61)
* ::: Bezier curves. (line 70)
@@ -8721,15 +8766,20 @@ Index
(line 53)
* ||: Arithmetic & logical.
(line 51)
-* a4: Configuring. (line 66)
-* abort: Data types. (line 363)
+* a4: Configuring. (line 68)
+* abort: Data types. (line 364)
* abs: Data types. (line 65)
-* abs <1>: Mathematical functions.
+* abs <1>: Data types. (line 144)
+* abs <2>: Mathematical functions.
(line 35)
+* abs2: Data types. (line 65)
+* abs2 <1>: Data types. (line 144)
+* absolute: Configuring. (line 43)
* accel: Paths and guides. (line 126)
* accel <1>: Paths and guides. (line 132)
-* accel <2>: three. (line 537)
+* accel <2>: three. (line 540)
* access: Import. (line 6)
+* access <1>: Import. (line 45)
* acknowledgments: Credits. (line 6)
* acos: Mathematical functions.
(line 6)
@@ -8741,8 +8791,8 @@ Index
(line 217)
* add <1>: Frames and pictures.
(line 231)
-* add <2>: three. (line 309)
-* addViews: three. (line 430)
+* add <2>: three. (line 312)
+* addViews: three. (line 433)
* adjust: Pens. (line 123)
* Ai: Mathematical functions.
(line 48)
@@ -8751,57 +8801,57 @@ Index
* Ai_deriv: Mathematical functions.
(line 48)
* alias: Structures. (line 62)
-* alias <1>: Arrays. (line 174)
+* alias <1>: Arrays. (line 179)
* Align: label. (line 12)
-* aligndir: Options. (line 186)
-* all: Arrays. (line 333)
-* Allow: Pens. (line 346)
+* aligndir: Options. (line 187)
+* all: Arrays. (line 338)
+* Allow: Pens. (line 363)
* and: Bezier curves. (line 56)
* AND: Arithmetic & logical.
(line 68)
* angle: Data types. (line 73)
* animate: Configuring. (line 20)
-* animate <1>: Files. (line 155)
+* animate <1>: Files. (line 159)
* animate <2>: animation. (line 12)
* animation: animation. (line 6)
* animation <1>: animation. (line 6)
* annotate: annotate. (line 6)
-* antialias: three. (line 251)
-* antialias <1>: Options. (line 155)
-* append: Files. (line 36)
+* antialias: three. (line 254)
+* antialias <1>: Options. (line 157)
+* append: Files. (line 38)
* append <1>: Arrays. (line 39)
* arc: Paths and guides. (line 24)
* Arc: Paths and guides. (line 37)
-* arc <1>: three. (line 320)
+* arc <1>: three. (line 323)
* ArcArrow: draw. (line 26)
-* ArcArrow3: three. (line 603)
+* ArcArrow3: three. (line 606)
* ArcArrows: draw. (line 26)
-* ArcArrows3: three. (line 603)
+* ArcArrows3: three. (line 606)
* arclength: Paths and guides. (line 153)
-* arclength <1>: three. (line 537)
+* arclength <1>: three. (line 540)
* arcpoint: Paths and guides. (line 163)
* arctime: Paths and guides. (line 157)
-* arctime <1>: three. (line 537)
+* arctime <1>: three. (line 540)
* arguments: Default arguments. (line 6)
* arithmetic operators: Arithmetic & logical.
(line 6)
-* array: Data types. (line 283)
+* array: Data types. (line 284)
* array <1>: Arrays. (line 112)
* array iteration: Programming. (line 52)
* arrays: Arrays. (line 6)
-* arrow: Drawing commands. (line 31)
+* arrow: Drawing commands. (line 34)
* Arrow: draw. (line 26)
* arrow <1>: label. (line 70)
* arrow keys: Drawing in interactive mode.
(line 11)
* arrow keys <1>: GUI usage. (line 6)
-* Arrow3: three. (line 603)
+* Arrow3: three. (line 606)
* arrows: draw. (line 26)
* Arrows: draw. (line 26)
-* Arrows3: three. (line 603)
+* Arrows3: three. (line 606)
* as: Import. (line 67)
-* ascii: Data types. (line 308)
-* ascii <1>: Data types. (line 308)
+* ascii: Data types. (line 309)
+* ascii <1>: Data types. (line 309)
* asin: Mathematical functions.
(line 6)
* aSin: Mathematical functions.
@@ -8810,17 +8860,18 @@ Index
(line 6)
* Aspect: Frames and pictures.
(line 59)
-* assert: Data types. (line 368)
+* assert: Data types. (line 369)
* assignment: Programming. (line 26)
-* asy: Data types. (line 358)
-* asy <1>: Import. (line 101)
+* asy: Data types. (line 359)
+* asy <1>: Import. (line 106)
* asy-mode: Editing modes. (line 6)
* asy.vim: Editing modes. (line 32)
-* asygl: Configuring. (line 72)
+* asygl: Configuring. (line 74)
* asyinclude: LaTeX usage. (line 45)
+* Asymptote Web Application: Description. (line 6)
* asymptote.sty: LaTeX usage. (line 6)
* asymptote.xml: Editing modes. (line 48)
-* ASYMPTOTE_CONFIG: Options. (line 126)
+* ASYMPTOTE_CONFIG: Options. (line 128)
* atan: Mathematical functions.
(line 6)
* aTan: Mathematical functions.
@@ -8834,8 +8885,8 @@ Index
(line 276)
* attach <1>: LaTeX usage. (line 50)
* attach <2>: graph. (line 406)
-* autoadjust: three. (line 395)
-* autoimport: Options. (line 122)
+* autoadjust: three. (line 398)
+* autoimport: Options. (line 124)
* automatic scaling: graph. (line 690)
* automatic scaling <1>: graph. (line 690)
* axialshade: fill. (line 43)
@@ -8843,57 +8894,57 @@ Index
* axis <1>: graph. (line 988)
* axis <2>: graph3. (line 66)
* axis <3>: graph3. (line 82)
-* azimuth: Data types. (line 153)
+* azimuth: Data types. (line 154)
* babel: babel. (line 6)
* background: three. (line 76)
* background <1>: three. (line 97)
* background color: Frames and pictures.
(line 180)
-* BackView: three. (line 423)
+* BackView: three. (line 426)
* Bar: draw. (line 19)
-* Bar3: three. (line 603)
+* Bar3: three. (line 606)
* Bars: draw. (line 19)
-* Bars3: three. (line 603)
+* Bars3: three. (line 606)
* barsize: draw. (line 19)
* base modules: Base modules. (line 6)
* basealign: Pens. (line 181)
* baseline: label. (line 90)
* batch mode: Drawing in batch mode.
(line 6)
-* beep: Data types. (line 381)
+* beep: Data types. (line 382)
* BeginArcArrow: draw. (line 26)
-* BeginArcArrow3: three. (line 603)
+* BeginArcArrow3: three. (line 606)
* BeginArrow: draw. (line 26)
-* BeginArrow3: three. (line 603)
+* BeginArrow3: three. (line 606)
* BeginBar: draw. (line 19)
-* BeginBar3: three. (line 603)
+* BeginBar3: three. (line 606)
* BeginDotMargin: draw. (line 42)
-* BeginDotMargin3: three. (line 619)
+* BeginDotMargin3: three. (line 622)
* BeginMargin: draw. (line 42)
-* BeginMargin3: three. (line 619)
+* BeginMargin3: three. (line 622)
* BeginPenMargin: draw. (line 42)
-* BeginPenMargin2: three. (line 619)
-* BeginPenMargin3: three. (line 619)
+* BeginPenMargin2: three. (line 622)
+* BeginPenMargin3: three. (line 622)
* BeginPoint: label. (line 55)
* Bessel: Mathematical functions.
(line 48)
* bevel: flowchart. (line 72)
* beveljoin: Pens. (line 149)
* Bezier curves: Bezier curves. (line 6)
-* Bezier patch: three. (line 116)
-* Bezier triangle: three. (line 116)
-* bezulate: three. (line 134)
+* Bezier patch: three. (line 118)
+* Bezier triangle: three. (line 118)
+* bezulate: three. (line 136)
* Bi: Mathematical functions.
(line 48)
-* Billboard: three. (line 507)
-* binary: Files. (line 76)
-* binary format: Files. (line 76)
+* Billboard: three. (line 510)
+* binary: Files. (line 80)
+* binary format: Files. (line 80)
* binary operators: Arithmetic & logical.
(line 6)
* binarytree: binarytree. (line 6)
* Bi_deriv: Mathematical functions.
(line 48)
-* black stripes: three. (line 251)
+* black stripes: three. (line 254)
* Blank: draw. (line 26)
* block.bottom: flowchart. (line 19)
* block.bottomleft: flowchart. (line 19)
@@ -8912,7 +8963,7 @@ Index
(line 6)
* Bottom: graph. (line 132)
* BottomTop: graph. (line 138)
-* BottomView: three. (line 423)
+* BottomView: three. (line 426)
* bounding box: Frames and pictures.
(line 180)
* Bounds: graph3. (line 21)
@@ -8920,14 +8971,14 @@ Index
(line 25)
* box <1>: Frames and pictures.
(line 130)
-* box <2>: three. (line 342)
-* box <3>: three. (line 344)
+* box <2>: three. (line 345)
+* box <3>: three. (line 347)
* bp: Drawing in batch mode.
(line 23)
* brace: Paths and guides. (line 51)
* break: Programming. (line 48)
* breakpoints: Debugger. (line 21)
-* brick: Pens. (line 268)
+* brick: Pens. (line 285)
* broken axis: graph. (line 801)
* bug reports: Help. (line 19)
* buildcycle: Paths and guides. (line 270)
@@ -8935,33 +8986,35 @@ Index
* Button-2: GUI. (line 6)
* BWRainbow: palette. (line 15)
* BWRainbow2: palette. (line 18)
-* C string: Data types. (line 216)
+* C string: Data types. (line 217)
* CAD: CAD. (line 6)
* calculateTransform: Frames and pictures.
(line 118)
-* camera: three. (line 389)
+* camera: three. (line 392)
* casts: Casts. (line 6)
* cbrt: Mathematical functions.
(line 6)
-* cd: Files. (line 25)
+* cd: Files. (line 26)
* ceil: Mathematical functions.
(line 26)
* Center: label. (line 60)
-* center: three. (line 372)
-* checker: Pens. (line 268)
-* Chinese: unicode. (line 12)
+* center: three. (line 375)
+* checker: Pens. (line 285)
+* Chinese: Pens. (line 244)
* choose: Mathematical functions.
(line 39)
* Ci: Mathematical functions.
(line 48)
* circle: Paths and guides. (line 10)
* Circle: Paths and guides. (line 18)
-* circle <1>: three. (line 316)
+* circle <1>: three. (line 319)
* circle <2>: flowchart. (line 61)
* circlebarframe: markers. (line 18)
-* CJK: unicode. (line 12)
+* CJK: Pens. (line 244)
* clamped: graph. (line 36)
-* clear: Files. (line 93)
+* clang: Compiling from UNIX source.
+ (line 48)
+* clear: Files. (line 97)
* clear <1>: Debugger. (line 23)
* clip: clip. (line 6)
* CLZ: Arithmetic & logical.
@@ -8969,34 +9022,34 @@ Index
* cm: Figure size. (line 18)
* cmd: Configuring. (line 35)
* cmyk: Pens. (line 38)
-* colatitude: Data types. (line 158)
+* colatitude: Data types. (line 159)
* color: Pens. (line 23)
* coloredNodes: tube. (line 25)
* coloredpath: tube. (line 18)
* coloredSegments: tube. (line 25)
* colorless: Pens. (line 57)
* colors: Pens. (line 54)
-* comma: Files. (line 61)
-* comma-separated-value mode: Arrays. (line 365)
-* command-line options: Configuring. (line 89)
+* comma: Files. (line 65)
+* comma-separated-value mode: Arrays. (line 370)
+* command-line options: Configuring. (line 91)
* command-line options <1>: Options. (line 6)
* comment character: Files. (line 16)
* compass directions: Labels. (line 18)
* Compiling from UNIX source: Compiling from UNIX source.
(line 6)
-* complement: Arrays. (line 140)
-* concat: Arrays. (line 170)
+* complement: Arrays. (line 145)
+* concat: Arrays. (line 175)
* conditional: Programming. (line 26)
* conditional <1>: Arithmetic & logical.
(line 61)
-* config: Configuring. (line 72)
-* config <1>: Options. (line 126)
+* config: Configuring. (line 74)
+* config <1>: Options. (line 128)
* configuration file: Configuring. (line 20)
-* configuration file <1>: Options. (line 126)
+* configuration file <1>: Options. (line 128)
* configuring: Configuring. (line 6)
* conj: Data types. (line 62)
* constructors: Structures. (line 91)
-* context: Options. (line 155)
+* context: Options. (line 157)
* continue: Programming. (line 48)
* continue <1>: Debugger. (line 31)
* contour: contour. (line 6)
@@ -9004,13 +9057,13 @@ Index
* controls: Bezier curves. (line 45)
* controls <1>: three. (line 6)
* controlSpecifier: Paths and guides. (line 396)
-* convert: Configuring. (line 72)
-* convert <1>: Files. (line 155)
+* convert: Configuring. (line 74)
+* convert <1>: Files. (line 159)
* convert <2>: animation. (line 6)
-* convert <3>: Options. (line 155)
-* convertOptions: Options. (line 141)
-* Coons shading: fill. (line 77)
-* copy: Arrays. (line 167)
+* convert <3>: Options. (line 157)
+* convertOptions: Options. (line 143)
+* Coons shading: fill. (line 78)
+* copy: Arrays. (line 172)
* cos: Mathematical functions.
(line 6)
* Cos: Mathematical functions.
@@ -9021,20 +9074,20 @@ Index
* crop: graph. (line 639)
* cropping graphs: graph. (line 639)
* cross: Data types. (line 106)
-* cross <1>: Data types. (line 196)
+* cross <1>: Data types. (line 197)
* cross <2>: graph. (line 480)
* crossframe: markers. (line 22)
-* crosshatch: Pens. (line 285)
-* csv: Arrays. (line 365)
+* crosshatch: Pens. (line 302)
+* csv: Arrays. (line 370)
* CTZ: Arithmetic & logical.
(line 68)
-* cubicroots: Arrays. (line 322)
+* cubicroots: Arrays. (line 327)
* curl: Bezier curves. (line 66)
* curl <1>: three. (line 6)
* curlSpecifier: Paths and guides. (line 408)
* currentlight: three. (line 76)
* currentpen: Pens. (line 6)
-* currentprojection: three. (line 420)
+* currentprojection: three. (line 423)
* curve: slopefield. (line 20)
* custom axis types: graph. (line 141)
* custom mark routine: graph. (line 577)
@@ -9046,12 +9099,12 @@ Index
* cyclic: Paths and guides. (line 85)
* cyclic <1>: Paths and guides. (line 376)
* cyclic <2>: Arrays. (line 39)
-* cyclic <3>: three. (line 537)
-* Cyrillic: unicode. (line 7)
+* cyclic <3>: three. (line 540)
+* Cyrillic: Pens. (line 237)
* dashdotted: Pens. (line 102)
* dashed: Pens. (line 102)
* data types: Data types. (line 6)
-* date: Data types. (line 320)
+* date: Data types. (line 321)
* Debian: UNIX binary distributions.
(line 19)
* debugger: Debugger. (line 6)
@@ -9060,14 +9113,14 @@ Index
* default arguments: Default arguments. (line 6)
* defaultformat: graph. (line 175)
* DefaultHead: draw. (line 26)
-* DefaultHead3: three. (line 603)
+* DefaultHead3: three. (line 606)
* defaultpen: Pens. (line 49)
* defaultpen <1>: Pens. (line 122)
* defaultpen <2>: Pens. (line 127)
* defaultpen <3>: Pens. (line 139)
* defaultpen <4>: Pens. (line 192)
-* defaultpen <5>: Pens. (line 346)
-* defaultpen <6>: Pens. (line 370)
+* defaultpen <5>: Pens. (line 363)
+* defaultpen <6>: Pens. (line 387)
* defaultrender: three. (line 46)
* deferred drawing: simplex. (line 6)
* degrees: Data types. (line 78)
@@ -9075,54 +9128,55 @@ Index
(line 17)
* Degrees: Mathematical functions.
(line 17)
-* delete: Files. (line 150)
+* delete: Files. (line 154)
* delete <1>: Arrays. (line 39)
* description: Description. (line 6)
-* diagonal: Arrays. (line 307)
+* devicepixelratio: three. (line 174)
+* diagonal: Arrays. (line 312)
* diamond: flowchart. (line 54)
* diffuse: three. (line 76)
* diffusepen: three. (line 66)
-* dimension: Arrays. (line 370)
+* dimension: Arrays. (line 375)
* dir: Search paths. (line 9)
* dir <1>: Data types. (line 90)
-* dir <2>: Data types. (line 180)
+* dir <2>: Data types. (line 181)
* dir <3>: Paths and guides. (line 109)
-* dir <4>: three. (line 537)
+* dir <4>: three. (line 540)
* direction specifier: Bezier curves. (line 6)
-* directory: Files. (line 25)
+* directory: Files. (line 26)
* dirSpecifier: Paths and guides. (line 390)
* dirtime: Paths and guides. (line 166)
* display: Configuring. (line 20)
* do: Programming. (line 48)
-* DOSendl: Files. (line 61)
-* DOSnewl: Files. (line 61)
-* dot: draw. (line 82)
+* DOSendl: Files. (line 65)
+* DOSnewl: Files. (line 65)
+* dot: draw. (line 83)
* dot <1>: Data types. (line 103)
-* dot <2>: Data types. (line 193)
-* dot <3>: Arrays. (line 262)
-* dot <4>: Arrays. (line 265)
+* dot <2>: Data types. (line 194)
+* dot <3>: Arrays. (line 267)
+* dot <4>: Arrays. (line 270)
* DotMargin: draw. (line 42)
-* DotMargin3: three. (line 619)
+* DotMargin3: three. (line 622)
* DotMargins: draw. (line 42)
-* DotMargins3: three. (line 619)
+* DotMargins3: three. (line 622)
* dotted: Pens. (line 102)
-* double deferred drawing: three. (line 294)
-* double precision: Files. (line 76)
-* draw: Drawing commands. (line 31)
+* double deferred drawing: three. (line 297)
+* double precision: Files. (line 80)
+* draw: Drawing commands. (line 34)
* draw <1>: draw. (line 6)
* Draw: draw. (line 26)
-* draw <2>: draw. (line 112)
+* draw <2>: draw. (line 113)
* Draw <1>: Frames and pictures.
(line 160)
-* draw <3>: three. (line 142)
+* draw <3>: three. (line 144)
* drawing commands: Drawing commands. (line 6)
* drawline: math. (line 9)
* drawtree: drawtree. (line 6)
-* dvips: Configuring. (line 72)
-* dvipsOptions: Options. (line 141)
-* dvisvgm: Configuring. (line 72)
-* dvisvgm <1>: Options. (line 160)
-* dvisvgmOptions: Options. (line 141)
+* dvips: Configuring. (line 74)
+* dvipsOptions: Options. (line 143)
+* dvisvgm: Configuring. (line 74)
+* dvisvgm <1>: Options. (line 162)
+* dvisvgmOptions: Options. (line 143)
* E: Labels. (line 18)
* E <1>: Mathematical functions.
(line 48)
@@ -9137,37 +9191,37 @@ Index
* else: Programming. (line 26)
* emacs: Editing modes. (line 6)
* embed: embed. (line 6)
-* Embedded: three. (line 507)
+* Embedded: three. (line 510)
* emissivepen: three. (line 66)
* empty: Frames and pictures.
(line 7)
* EndArcArrow: draw. (line 26)
-* EndArcArrow3: three. (line 603)
+* EndArcArrow3: three. (line 606)
* EndArrow: draw. (line 26)
-* EndArrow3: three. (line 603)
+* EndArrow3: three. (line 606)
* EndBar: draw. (line 19)
-* EndBar3: three. (line 603)
+* EndBar3: three. (line 606)
* EndDotMargin: draw. (line 42)
-* EndDotMargin3: three. (line 619)
-* endl: Files. (line 61)
+* EndDotMargin3: three. (line 622)
+* endl: Files. (line 65)
* EndMargin: draw. (line 42)
-* EndMargin3: three. (line 619)
+* EndMargin3: three. (line 622)
* EndPenMargin: draw. (line 42)
-* EndPenMargin2: three. (line 619)
-* EndPenMargin3: three. (line 619)
+* EndPenMargin2: three. (line 622)
+* EndPenMargin3: three. (line 622)
* EndPoint: label. (line 55)
* envelope: Frames and pictures.
(line 25)
-* environment variables: Configuring. (line 93)
-* eof: Files. (line 93)
-* eof <1>: Arrays. (line 347)
-* eol: Files. (line 93)
-* eol <1>: Arrays. (line 347)
+* environment variables: Configuring. (line 95)
+* eof: Files. (line 97)
+* eof <1>: Arrays. (line 352)
+* eol: Files. (line 97)
+* eol <1>: Arrays. (line 352)
* EPS: label. (line 78)
-* EPS <1>: Options. (line 155)
+* EPS <1>: Options. (line 157)
* erase: Drawing in interactive mode.
(line 11)
-* erase <1>: Data types. (line 256)
+* erase <1>: Data types. (line 257)
* erase <2>: Frames and pictures.
(line 7)
* erase <3>: Frames and pictures.
@@ -9177,20 +9231,20 @@ Index
* erfc: Mathematical functions.
(line 6)
* error: Files. (line 16)
-* error <1>: Files. (line 93)
+* error <1>: Files. (line 97)
* error bars: graph. (line 531)
* errorbars: graph. (line 480)
-* eval: Import. (line 97)
-* eval <1>: Import. (line 107)
+* eval: Import. (line 102)
+* eval <1>: Import. (line 112)
* evenodd: Paths. (line 37)
* evenodd <1>: Pens. (line 164)
-* exit: Data types. (line 372)
+* exit: Data types. (line 373)
* exit <1>: Interactive mode. (line 54)
* exit <2>: Debugger. (line 56)
* exp: Mathematical functions.
(line 6)
* expi: Data types. (line 86)
-* expi <1>: Data types. (line 176)
+* expi <1>: Data types. (line 177)
* explicit: Casts. (line 6)
* explicit casts: Casts. (line 21)
* expm1: Mathematical functions.
@@ -9201,26 +9255,26 @@ Index
* extension: Paths and guides. (line 246)
* extension <1>: MetaPost. (line 10)
* external: embed. (line 11)
-* extrude: three. (line 531)
+* extrude: three. (line 534)
* F: Mathematical functions.
(line 48)
* fabs: Mathematical functions.
(line 6)
-* face: three. (line 644)
+* face: three. (line 646)
* factorial: Mathematical functions.
(line 39)
* Fedora: UNIX binary distributions.
(line 15)
* feynman: feynman. (line 6)
-* fft: Arrays. (line 240)
-* fft <1>: Arrays. (line 254)
-* fft <2>: Arrays. (line 258)
+* fft: Arrays. (line 245)
+* fft <1>: Arrays. (line 259)
+* fft <2>: Arrays. (line 263)
* FFTW: Compiling from UNIX source.
- (line 63)
+ (line 62)
* file: Files. (line 6)
* file <1>: Debugger. (line 44)
* Fill: draw. (line 26)
-* fill: draw. (line 117)
+* fill: draw. (line 118)
* fill <1>: fill. (line 6)
* fill <2>: fill. (line 17)
* Fill <1>: Frames and pictures.
@@ -9231,83 +9285,87 @@ Index
(line 136)
* filloutside: fill. (line 27)
* fillrule: Pens. (line 164)
-* find: Data types. (line 241)
-* find <1>: Arrays. (line 149)
-* findall: Arrays. (line 154)
+* find: Data types. (line 242)
+* find <1>: Arrays. (line 154)
+* findall: Arrays. (line 159)
* firstcut: Paths and guides. (line 262)
* fit: Frames and pictures.
(line 113)
-* fit3: three. (line 307)
+* fit3: three. (line 310)
* fixedscaling: Frames and pictures.
(line 81)
* floor: Mathematical functions.
(line 26)
* flowchart: flowchart. (line 6)
-* flush: Files. (line 61)
-* flush <1>: Files. (line 93)
+* flush: Files. (line 65)
+* flush <1>: Files. (line 97)
* fmod: Mathematical functions.
(line 6)
* font: Pens. (line 206)
-* font command: Pens. (line 206)
-* fontcommand: Pens. (line 221)
+* font <1>: Pens. (line 206)
+* font <2>: Pens. (line 235)
+* font encoding: Pens. (line 235)
+* fontcommand: Pens. (line 219)
* fontsize: Pens. (line 192)
* for: Programming. (line 26)
-* format: Data types. (line 289)
-* format <1>: Options. (line 155)
+* format: Data types. (line 290)
+* format <1>: Options. (line 157)
* forum: Help. (line 6)
* frame: Frames and pictures.
(line 7)
* freshnel0: three. (line 66)
* from: Import. (line 16)
-* FrontView: three. (line 423)
+* FrontView: three. (line 426)
* function declarations: Functions. (line 79)
-* Function shading: fill. (line 99)
-* function shading: fill. (line 99)
+* Function shading: fill. (line 100)
+* function shading: fill. (line 100)
* functions: Functions. (line 6)
* functions <1>: Mathematical functions.
(line 6)
-* functionshade: fill. (line 99)
+* functionshade: fill. (line 100)
* gamma: Mathematical functions.
(line 6)
* Gaussrand: Mathematical functions.
(line 39)
* geometry: geometry. (line 6)
-* getc: Files. (line 30)
-* getpair: Files. (line 118)
-* getreal: Files. (line 118)
-* getstring: Files. (line 118)
-* gettriple: Files. (line 118)
+* getc: Files. (line 32)
+* getpair: Files. (line 122)
+* getreal: Files. (line 122)
+* getstring: Files. (line 122)
+* gettriple: Files. (line 122)
* git: Git. (line 6)
-* glOptions: three. (line 251)
-* glOptions <1>: Options. (line 141)
+* globalwrite: Files. (line 40)
+* globalwrite <1>: Files. (line 154)
+* glOptions: three. (line 254)
+* glOptions <1>: Options. (line 143)
* GNU Scientific Library: Mathematical functions.
(line 48)
-* gouraudshade: fill. (line 62)
+* gouraudshade: fill. (line 63)
* Gradient: palette. (line 25)
* gradient shading: fill. (line 32)
* graph: graph. (line 6)
* graph3: graph3. (line 6)
* graphic: label. (line 78)
-* graphic <1>: Options. (line 160)
+* graphic <1>: Options. (line 162)
* graphical user interface: GUI. (line 6)
* gray: Pens. (line 25)
* grayscale: Pens. (line 25)
* Grayscale: palette. (line 9)
-* grid: Pens. (line 268)
+* grid: Pens. (line 285)
* grid <1>: graph. (line 746)
* grid3: grid3. (line 6)
* gs: Configuring. (line 20)
* GSL: Compiling from UNIX source.
- (line 63)
+ (line 62)
* gsl: Mathematical functions.
(line 48)
-* gsOptions: Options. (line 141)
+* gsOptions: Options. (line 143)
* GUI: GUI. (line 6)
* GUI installation: GUI installation. (line 6)
* GUI usage: GUI usage. (line 6)
* guide: Paths and guides. (line 314)
* guide3: three. (line 6)
-* hatch: Pens. (line 285)
+* hatch: Pens. (line 302)
* Headlamp: three. (line 76)
* height: LaTeX usage. (line 50)
* help: Interactive mode. (line 42)
@@ -9315,42 +9373,42 @@ Index
* help <2>: Debugger. (line 30)
* Hermite: graph. (line 36)
* Hermite(splinetype splinetype: graph. (line 36)
-* hex: Data types. (line 305)
+* hex: Data types. (line 306)
* hex <1>: Pens. (line 64)
-* hexadecimal: Data types. (line 305)
+* hexadecimal: Data types. (line 306)
* hexadecimal <1>: Pens. (line 62)
-* hidden surface removal: three. (line 644)
+* hidden surface removal: three. (line 646)
* histogram: Mathematical functions.
(line 39)
-* history: Files. (line 143)
+* history: Files. (line 147)
* history <1>: Interactive mode. (line 54)
* historylines: Interactive mode. (line 57)
* HookHead: draw. (line 26)
-* HookHead3: three. (line 603)
+* HookHead3: three. (line 606)
* Horizontal: flowchart. (line 77)
-* HTML5: three. (line 220)
+* HTML5: three. (line 223)
* htmlviewer: Configuring. (line 20)
* htmlviewer <1>: Configuring. (line 43)
-* htmlviewerOptions: Options. (line 141)
-* hyperrefOptions: Options. (line 141)
+* htmlviewerOptions: Options. (line 143)
+* hyperrefOptions: Options. (line 143)
* hypot: Mathematical functions.
(line 6)
* I: Mathematical functions.
(line 48)
-* iconify: three. (line 251)
+* iconify: three. (line 254)
* identity: Transforms. (line 24)
* identity <1>: Mathematical functions.
(line 6)
-* identity <2>: Arrays. (line 304)
-* identity4: three. (line 475)
+* identity <2>: Arrays. (line 309)
+* identity4: three. (line 478)
* if: Programming. (line 26)
* IgnoreAspect: Frames and pictures.
(line 63)
* image: palette. (line 33)
* image <1>: palette. (line 58)
-* ImageMagick: Configuring. (line 72)
+* ImageMagick: Configuring. (line 74)
* ImageMagick <1>: animation. (line 6)
-* ImageMagick <2>: Options. (line 155)
+* ImageMagick <2>: Options. (line 157)
* images: palette. (line 6)
* implicit casts: Casts. (line 6)
* implicit linear solver: MetaPost. (line 10)
@@ -9359,11 +9417,11 @@ Index
* import: Import. (line 45)
* inches: Figure size. (line 18)
* incircle: Data types. (line 120)
-* include: Import. (line 126)
+* include: Import. (line 134)
* including images: label. (line 78)
* increasing: math. (line 55)
* inf: Data types. (line 35)
-* inheritance: Structures. (line 181)
+* inheritance: Structures. (line 182)
* initialized: Arrays. (line 39)
* initializers: Variable initializers.
(line 6)
@@ -9373,12 +9431,13 @@ Index
* input <1>: Files. (line 12)
* input <2>: Interactive mode. (line 45)
* input <3>: Interactive mode. (line 49)
-* insert: Data types. (line 252)
+* input encoding: Pens. (line 235)
+* insert: Data types. (line 253)
* insert <1>: Arrays. (line 39)
* inside: Paths and guides. (line 294)
* inside <1>: Paths and guides. (line 299)
* inside <2>: Paths and guides. (line 305)
-* insphere: three. (line 566)
+* insphere: three. (line 569)
* inst: Debugger. (line 35)
* installation: Installation. (line 6)
* int: Data types. (line 30)
@@ -9392,29 +9451,28 @@ Index
(line 6)
* interactive mode <1>: Interactive mode. (line 6)
* interior: Paths and guides. (line 290)
-* international characters: unicode. (line 6)
* interp: Arithmetic & logical.
(line 64)
* interpolate: interpolate. (line 6)
* intersect: Paths and guides. (line 195)
* intersect <1>: math. (line 13)
-* intersect <2>: three. (line 537)
+* intersect <2>: three. (line 540)
* intersectionpoint: Paths and guides. (line 238)
* intersectionpoint <1>: math. (line 17)
-* intersectionpoint <2>: three. (line 537)
+* intersectionpoint <2>: three. (line 540)
* intersectionpoints: Paths and guides. (line 242)
-* intersectionpoints <1>: three. (line 537)
-* intersectionpoints <2>: three. (line 550)
+* intersectionpoints <1>: three. (line 540)
+* intersectionpoints <2>: three. (line 553)
* intersections: Paths and guides. (line 206)
* intersections <1>: Paths and guides. (line 213)
-* intersections <2>: three. (line 537)
-* intersections <3>: three. (line 543)
+* intersections <2>: three. (line 540)
+* intersections <3>: three. (line 546)
* InTicks: graph3. (line 35)
* intMax: Data types. (line 30)
* intMin: Data types. (line 30)
* inverse: Transforms. (line 16)
-* inverse <1>: Arrays. (line 310)
-* invert: three. (line 465)
+* inverse <1>: Arrays. (line 315)
+* invert: three. (line 468)
* invisible: Pens. (line 43)
* isnan: Data types. (line 35)
* i_scaled: Mathematical functions.
@@ -9423,7 +9481,7 @@ Index
(line 6)
* J <1>: Mathematical functions.
(line 48)
-* Japanese: unicode. (line 12)
+* Japanese: Pens. (line 244)
* K: Mathematical functions.
(line 48)
* Kate: Editing modes. (line 48)
@@ -9433,34 +9491,34 @@ Index
* keepAspect <1>: Frames and pictures.
(line 63)
* keepAspect <2>: LaTeX usage. (line 50)
-* keyboard bindings:: three. (line 198)
+* keyboard bindings:: three. (line 201)
* keys: Arrays. (line 39)
* keyword: Named arguments. (line 37)
* keyword-only: Named arguments. (line 37)
* keywords: Named arguments. (line 6)
-* Korean: unicode. (line 12)
+* Korean: Pens. (line 244)
* k_scaled: Mathematical functions.
(line 48)
* label: Labels. (line 6)
-* Label: draw. (line 100)
+* Label: draw. (line 101)
* label <1>: label. (line 6)
* Label <1>: label. (line 14)
* Label <2>: graph. (line 330)
-* label <2>: three. (line 501)
+* label <2>: three. (line 504)
* labelpath: labelpath. (line 6)
* labelpath3: labelpath3. (line 6)
* labelx: graph. (line 330)
* labely: graph. (line 330)
* Landscape: Frames and pictures.
(line 104)
+* language context: Pens. (line 235)
* lastcut: Paths and guides. (line 266)
* lasy-mode: Editing modes. (line 6)
-* latex: Options. (line 155)
-* LaTeX fonts: Pens. (line 206)
+* latex: Options. (line 157)
+* LaTeX NFSS fonts: Pens. (line 206)
* LaTeX usage: LaTeX usage. (line 6)
* latexmk: LaTeX usage. (line 30)
-* latin1: latin1. (line 6)
-* latitude: Data types. (line 163)
+* latitude: Data types. (line 164)
* latticeshade: fill. (line 32)
* layer: Drawing commands. (line 16)
* leastsquares: stats. (line 6)
@@ -9470,39 +9528,40 @@ Index
* LeftSide: label. (line 60)
* LeftTicks: graph. (line 160)
* LeftTicks <1>: graph. (line 233)
-* LeftView: three. (line 423)
-* legend: Drawing commands. (line 31)
-* legend <1>: draw. (line 64)
+* LeftView: three. (line 426)
+* legend: Drawing commands. (line 34)
+* legend <1>: draw. (line 65)
* legend <2>: graph. (line 424)
* Legendre: Mathematical functions.
(line 48)
* length: Data types. (line 65)
* length <1>: Data types. (line 144)
-* length <2>: Data types. (line 238)
+* length <2>: Data types. (line 239)
* length <3>: Paths and guides. (line 76)
* length <4>: Paths and guides. (line 373)
* length <5>: Arrays. (line 39)
-* length <6>: three. (line 537)
-* letter: Configuring. (line 66)
+* length <6>: three. (line 540)
+* letter: Configuring. (line 68)
* lexorder: math. (line 63)
* lexorder <1>: math. (line 66)
-* libgs: Options. (line 160)
+* libcurl: Import. (line 94)
+* libgs: Options. (line 162)
* libm routines: Mathematical functions.
(line 6)
* libsigsegv: Functions. (line 100)
* libsigsegv <1>: Help. (line 27)
* light: three. (line 76)
* limits: graph. (line 639)
-* line: Arrays. (line 347)
-* line <1>: Arrays. (line 351)
-* line mode: Arrays. (line 347)
+* line: Arrays. (line 352)
+* line <1>: Arrays. (line 356)
+* line mode: Arrays. (line 352)
* Linear: graph. (line 690)
* linecap: Pens. (line 139)
* linejoin: Pens. (line 149)
* lineskip: Pens. (line 192)
* linetype: Pens. (line 123)
* linewidth: Pens. (line 127)
-* locale: Data types. (line 315)
+* locale: Data types. (line 316)
* log: Mathematical functions.
(line 6)
* Log: graph. (line 690)
@@ -9517,21 +9576,25 @@ Index
(line 6)
* longdashdotted: Pens. (line 102)
* longdashed: Pens. (line 102)
-* longitude: Data types. (line 168)
+* longitude: Data types. (line 169)
* loop: Programming. (line 26)
-* lualatex: Options. (line 155)
-* luatex: Options. (line 155)
+* lualatex: Options. (line 157)
+* luatex: Options. (line 157)
* MacOS X binary distributions: MacOS X binary distributions.
(line 6)
-* makepen: Pens. (line 321)
+* MacOS X configuration: Compiling from UNIX source.
+ (line 48)
+* makepen: Pens. (line 338)
* map: Arrays. (line 131)
+* map <1>: Arrays. (line 136)
+* map <2>: map. (line 6)
* Margin: draw. (line 42)
* Margin <1>: draw. (line 42)
-* Margin3: three. (line 619)
-* Margin3 <1>: three. (line 619)
+* Margin3: three. (line 622)
+* Margin3 <1>: three. (line 622)
* Margins: draw. (line 42)
-* margins: three. (line 300)
-* Margins3: three. (line 619)
+* margins: three. (line 303)
+* Margins3: three. (line 622)
* mark: graph. (line 480)
* markangle: markers. (line 35)
* marker: graph. (line 480)
@@ -9546,14 +9609,14 @@ Index
* max: Paths and guides. (line 279)
* max <1>: Frames and pictures.
(line 7)
-* max <2>: Arrays. (line 221)
-* max <3>: Arrays. (line 231)
-* max <4>: three. (line 537)
+* max <2>: Arrays. (line 226)
+* max <3>: Arrays. (line 236)
+* max <4>: three. (line 540)
* maxbound: Data types. (line 134)
-* maxbound <1>: Data types. (line 204)
-* maxtile: three. (line 251)
+* maxbound <1>: Data types. (line 205)
+* maxtile: three. (line 254)
* maxtimes: Paths and guides. (line 233)
-* maxviewport: three. (line 251)
+* maxviewport: three. (line 254)
* metallic: three. (line 66)
* MetaPost: MetaPost. (line 6)
* MetaPost ... : Bezier curves. (line 70)
@@ -9563,37 +9626,37 @@ Index
* MetaPost whatever: MetaPost. (line 10)
* Microsoft Windows: Microsoft Windows. (line 6)
* MidArcArrow: draw. (line 26)
-* MidArcArrow3: three. (line 603)
+* MidArcArrow3: three. (line 606)
* MidArrow: draw. (line 26)
-* MidArrow3: three. (line 603)
+* MidArrow3: three. (line 606)
* MidPoint: label. (line 55)
* midpoint: Paths and guides. (line 180)
* min: Paths and guides. (line 275)
* min <1>: Frames and pictures.
(line 7)
-* min <2>: Arrays. (line 216)
-* min <3>: Arrays. (line 226)
-* min <4>: three. (line 537)
+* min <2>: Arrays. (line 221)
+* min <3>: Arrays. (line 231)
+* min <4>: three. (line 540)
* minbound: Data types. (line 131)
-* minbound <1>: Data types. (line 201)
+* minbound <1>: Data types. (line 202)
* minipage: label. (line 116)
* mintimes: Paths and guides. (line 228)
* miterjoin: Pens. (line 149)
* miterlimit: Pens. (line 159)
-* mktemp: Files. (line 44)
+* mktemp: Files. (line 48)
* mm: Figure size. (line 18)
-* mobile browser: three. (line 220)
-* mode: Files. (line 76)
-* mode <1>: Files. (line 89)
+* mobile browser: three. (line 223)
+* mode: Files. (line 80)
+* mode <1>: Files. (line 93)
* monotonic: graph. (line 36)
* mouse: GUI. (line 6)
-* mouse bindings: three. (line 179)
+* mouse bindings: three. (line 182)
* mouse wheel: GUI usage. (line 6)
-* Move: Pens. (line 358)
-* MoveQuiet: Pens. (line 364)
-* multisample: three. (line 172)
+* Move: Pens. (line 375)
+* MoveQuiet: Pens. (line 381)
+* multisample: three. (line 174)
* N: Labels. (line 18)
-* name: Files. (line 89)
+* name: Files. (line 93)
* named arguments: Named arguments. (line 6)
* nan: Data types. (line 35)
* natural: graph. (line 36)
@@ -9602,25 +9665,27 @@ Index
* new <2>: Arrays. (line 103)
* newframe: Frames and pictures.
(line 7)
-* newl: Files. (line 61)
+* newl: Files. (line 65)
+* newpage: Drawing commands. (line 27)
* newton: Mathematical functions.
(line 66)
* newton <1>: Mathematical functions.
(line 73)
* next: Debugger. (line 41)
-* NFSS: Pens. (line 206)
* nobasealign: Pens. (line 181)
* NoFill: draw. (line 26)
* NoFill <1>: Frames and pictures.
(line 154)
+* noglobalread: Files. (line 26)
+* noglobalread <1>: Files. (line 40)
* nolight: three. (line 76)
* NoMargin: draw. (line 42)
-* NoMargin3: three. (line 619)
+* NoMargin3: three. (line 622)
* None: draw. (line 19)
* None <1>: draw. (line 26)
-* none: Files. (line 61)
-* normal: three. (line 523)
-* nosafe: Options. (line 181)
+* none: Files. (line 65)
+* normal: three. (line 526)
+* nosafe: Options. (line 182)
* NOT: Arithmetic & logical.
(line 68)
* notaknot: graph. (line 36)
@@ -9632,26 +9697,26 @@ Index
(line 140)
* nullpen <2>: Frames and pictures.
(line 149)
-* NURBS: three. (line 399)
-* O: three. (line 312)
+* NURBS: three. (line 402)
+* O: three. (line 315)
* obj: obj. (line 6)
-* oblique: three. (line 355)
-* obliqueX: three. (line 362)
-* obliqueY: three. (line 368)
-* obliqueZ: three. (line 355)
+* oblique: three. (line 358)
+* obliqueX: three. (line 365)
+* obliqueY: three. (line 371)
+* obliqueZ: three. (line 358)
* ode: ode. (line 6)
* offset: Pens. (line 123)
-* offset <1>: Options. (line 186)
+* offset <1>: Options. (line 187)
* OmitTick: graph. (line 223)
* OmitTickInterval: graph. (line 223)
* OmitTickIntervals: graph. (line 223)
-* opacity: Pens. (line 237)
+* opacity: Pens. (line 254)
* opacity <1>: three. (line 66)
* open: Files. (line 12)
-* OpenGL: three. (line 172)
+* OpenGL: three. (line 174)
* operator: User-defined operators.
(line 6)
-* operator +(...string[] a).: Data types. (line 283)
+* operator +(...string[] a).: Data types. (line 284)
* operator --: graph. (line 30)
* operator ..: graph. (line 33)
* operator answer: Interactive mode. (line 35)
@@ -9665,18 +9730,18 @@ Index
* OR: Arithmetic & logical.
(line 68)
* orient: Data types. (line 108)
-* orient <1>: three. (line 554)
+* orient <1>: three. (line 557)
* orientation: Frames and pictures.
(line 104)
-* orthographic: three. (line 372)
-* outformat: three. (line 172)
+* orthographic: three. (line 375)
+* outformat: three. (line 174)
* outprefix: Frames and pictures.
(line 91)
-* output: Files. (line 36)
-* output <1>: Options. (line 155)
+* output: Files. (line 38)
+* output <1>: Options. (line 157)
* OutTicks: graph3. (line 35)
* overloading functions: Functions. (line 55)
-* overwrite: Pens. (line 343)
+* overwrite: Pens. (line 360)
* P: Mathematical functions.
(line 48)
* pack: label. (line 100)
@@ -9685,16 +9750,16 @@ Index
(line 186)
* pair: Figure size. (line 6)
* pair <1>: Data types. (line 46)
-* pairs: Arrays. (line 236)
-* paperheight: Configuring. (line 66)
-* papertype: Configuring. (line 66)
-* paperwidth: Configuring. (line 66)
+* pairs: Arrays. (line 241)
+* paperheight: Configuring. (line 68)
+* papertype: Configuring. (line 68)
+* paperwidth: Configuring. (line 68)
* parallelogram: flowchart. (line 47)
* parametric surface: graph3. (line 99)
* parametrized curve: graph. (line 639)
* partialsum: math. (line 49)
* partialsum <1>: math. (line 52)
-* patch-dependent colors: three. (line 107)
+* patch-dependent colors: three. (line 109)
* path: Paths. (line 6)
* path <1>: Paths and guides. (line 7)
* path <2>: three. (line 42)
@@ -9703,62 +9768,63 @@ Index
* path3: three. (line 6)
* path3 <1>: three. (line 42)
* path[]: Paths. (line 23)
-* patterns: Pens. (line 254)
+* patterns: Pens. (line 271)
* patterns <1>: patterns. (line 6)
* PBR: three. (line 74)
-* PDF: Options. (line 155)
-* pdflatex: Options. (line 155)
-* pdfreloadOptions: Options. (line 141)
+* PDF: Options. (line 157)
+* pdflatex: Options. (line 157)
+* pdfreloadOptions: Options. (line 143)
* pdfviewer: Configuring. (line 20)
-* pdfviewerOptions: Options. (line 141)
+* pdfviewerOptions: Options. (line 143)
* pen: Pens. (line 6)
* PenMargin: draw. (line 42)
-* PenMargin2: three. (line 619)
-* PenMargin3: three. (line 619)
+* PenMargin2: three. (line 622)
+* PenMargin3: three. (line 622)
* PenMargins: draw. (line 42)
-* PenMargins2: three. (line 619)
-* PenMargins3: three. (line 619)
+* PenMargins2: three. (line 622)
+* PenMargins3: three. (line 622)
* periodic: graph. (line 36)
* perl: LaTeX usage. (line 30)
* perpendicular: geometry. (line 6)
-* perspective: three. (line 399)
+* perspective: three. (line 402)
* physically based rendering: three. (line 74)
* picture: Frames and pictures.
(line 39)
* picture alignment: Frames and pictures.
(line 231)
* piecewisestraight: Paths and guides. (line 92)
-* pixel: three. (line 626)
+* pixel: three. (line 629)
* Pl: Mathematical functions.
(line 48)
* plain: plain. (line 6)
-* planar: three. (line 116)
-* plane: three. (line 338)
-* planeproject: three. (line 520)
+* planar: three. (line 118)
+* plane: three. (line 341)
+* planeproject: three. (line 523)
* point: Paths and guides. (line 95)
* point <1>: Paths and guides. (line 379)
-* point <2>: three. (line 537)
-* polar: Data types. (line 148)
+* point <2>: three. (line 540)
+* polar: Data types. (line 149)
* polargraph: graph. (line 88)
* polygon: graph. (line 480)
* pop: Arrays. (line 39)
* Portrait: Frames and pictures.
(line 104)
* position: three. (line 76)
+* position <1>: three. (line 174)
* postcontrol: Paths and guides. (line 146)
-* postcontrol <1>: three. (line 537)
+* postcontrol <1>: three. (line 540)
* postfix operators: Self & prefix operators.
(line 19)
* postscript: Frames and pictures.
(line 297)
-* PostScript fonts: Pens. (line 224)
+* PostScript fonts: Pens. (line 222)
* PostScript subpath: Paths. (line 23)
* pow10: Mathematical functions.
(line 6)
-* prc: three. (line 269)
-* precision: Files. (line 93)
+* prc: three. (line 272)
+* precision: Files. (line 97)
* precontrol: Paths and guides. (line 139)
-* precontrol <1>: three. (line 537)
+* precontrol <1>: three. (line 540)
* prefix operators: Self & prefix operators.
(line 6)
* private: Structures. (line 6)
@@ -9766,23 +9832,23 @@ Index
* pstoedit: PostScript to Asymptote.
(line 6)
* psviewer: Configuring. (line 20)
-* psviewerOptions: Options. (line 141)
+* psviewerOptions: Options. (line 143)
* pt: Figure size. (line 18)
* public: Structures. (line 6)
* push: Arrays. (line 39)
* Python usage: Interactive mode. (line 72)
-* quadraticroots: Arrays. (line 313)
-* quadraticroots <1>: Arrays. (line 318)
+* quadraticroots: Arrays. (line 318)
+* quadraticroots <1>: Arrays. (line 323)
* quarticroots: math. (line 22)
-* quick reference: Description. (line 84)
+* quick reference: Description. (line 88)
* quit: Drawing in interactive mode.
(line 11)
* quit <1>: Interactive mode. (line 54)
* quit <2>: Debugger. (line 53)
-* quote: Import. (line 115)
+* quote: Import. (line 120)
* quotient: Arithmetic & logical.
(line 6)
-* radialshade: fill. (line 51)
+* radialshade: fill. (line 52)
* RadialShade: Frames and pictures.
(line 172)
* RadialShadeDraw: Frames and pictures.
@@ -9790,16 +9856,16 @@ Index
* radians: Mathematical functions.
(line 17)
* radius: Paths and guides. (line 135)
-* radius <1>: three. (line 537)
+* radius <1>: three. (line 540)
* Rainbow: palette. (line 12)
* rand: Mathematical functions.
(line 39)
* randMax: Mathematical functions.
(line 39)
-* read: Arrays. (line 387)
+* read: Arrays. (line 392)
* reading: Files. (line 12)
-* reading string arrays: Arrays. (line 357)
-* readline: Files. (line 135)
+* reading string arrays: Arrays. (line 362)
+* readline: Files. (line 139)
* real: Data types. (line 35)
* realDigits: Data types. (line 35)
* realEpsilon: Data types. (line 35)
@@ -9808,7 +9874,7 @@ Index
* realmult: Data types. (line 100)
* rectangle: flowchart. (line 34)
* recursion: Functions. (line 100)
-* reference: Description. (line 84)
+* reference: Description. (line 88)
* reflect: Transforms. (line 42)
* Relative: label. (line 50)
* Relative <1>: label. (line 60)
@@ -9816,24 +9882,24 @@ Index
* reltime: Paths and guides. (line 172)
* remainder: Mathematical functions.
(line 6)
-* rename: Files. (line 152)
+* rename: Files. (line 156)
* render: three. (line 46)
-* render <1>: three. (line 172)
-* render <2>: Options. (line 155)
-* replace: Data types. (line 269)
-* resetdefaultpen: Pens. (line 370)
+* render <1>: three. (line 174)
+* render <2>: Options. (line 157)
+* replace: Data types. (line 270)
+* resetdefaultpen: Pens. (line 387)
* rest arguments: Rest arguments. (line 6)
* restore: Frames and pictures.
(line 291)
* restricted: Structures. (line 6)
* return: Debugger. (line 47)
-* reverse: Data types. (line 265)
+* reverse: Data types. (line 266)
* reverse <1>: Paths and guides. (line 183)
* reverse <2>: Paths and guides. (line 382)
-* reverse <3>: Arrays. (line 136)
-* reverse <4>: three. (line 537)
-* rewind: Files. (line 93)
-* rfind: Data types. (line 246)
+* reverse <3>: Arrays. (line 141)
+* reverse <4>: three. (line 540)
+* rewind: Files. (line 97)
+* rfind: Data types. (line 247)
* rgb: Pens. (line 30)
* rgb <1>: Pens. (line 34)
* rgb <2>: Pens. (line 62)
@@ -9843,9 +9909,9 @@ Index
* RightSide: label. (line 60)
* RightTicks: graph. (line 160)
* RightTicks <1>: graph. (line 233)
-* RightView: three. (line 423)
+* RightView: three. (line 426)
* Rotate: label. (line 36)
-* rotate: three. (line 491)
+* rotate: three. (line 494)
* Rotate(pair z): label. (line 39)
* round: Mathematical functions.
(line 26)
@@ -9855,42 +9921,42 @@ Index
* roundrectangle: flowchart. (line 66)
* RPM: UNIX binary distributions.
(line 6)
-* runtime imports: Import. (line 97)
-* Russian: unicode. (line 7)
+* runtime imports: Import. (line 102)
+* Russian: Pens. (line 237)
* S: Labels. (line 18)
-* safe: Options. (line 181)
+* safe: Options. (line 182)
* save: Frames and pictures.
(line 288)
-* saveline: Files. (line 135)
+* saveline: Files. (line 139)
* Scale: label. (line 45)
* scale: Pens. (line 123)
* scale <1>: Transforms. (line 34)
* scale <2>: Transforms. (line 36)
* scale <3>: graph. (line 690)
* Scale <1>: graph. (line 707)
-* scale <4>: three. (line 490)
-* scale3: three. (line 488)
+* scale <4>: three. (line 493)
+* scale3: three. (line 491)
* scaled graph: graph. (line 670)
* scientific graph: graph. (line 387)
-* scroll: Files. (line 109)
-* search: Arrays. (line 157)
-* search <1>: Arrays. (line 163)
+* scroll: Files. (line 113)
+* search: Arrays. (line 162)
+* search <1>: Arrays. (line 168)
* search paths: Search paths. (line 6)
* Seascape: Frames and pictures.
(line 110)
* secondary axis: graph. (line 833)
* secondaryX: graph. (line 833)
* secondaryY: graph. (line 833)
-* seconds: Data types. (line 329)
-* seek: Files. (line 93)
-* seekeof: Files. (line 93)
+* seconds: Data types. (line 330)
+* seek: Files. (line 97)
+* seekeof: Files. (line 97)
* segment: math. (line 46)
* segmentation fault: Help. (line 27)
* self operators: Self & prefix operators.
(line 6)
* sequence: Arrays. (line 118)
* settings: Configuring. (line 20)
-* settings <1>: Options. (line 126)
+* settings <1>: Options. (line 128)
* sgn: Mathematical functions.
(line 26)
* shading: fill. (line 32)
@@ -9898,16 +9964,16 @@ Index
* shift: Transforms. (line 26)
* shift <1>: Transforms. (line 28)
* shift <2>: Transforms. (line 46)
-* shift <3>: three. (line 480)
+* shift <3>: three. (line 483)
* shiftless: Transforms. (line 46)
* shininess: three. (line 66)
* shipout: Frames and pictures.
(line 91)
-* showtarget: three. (line 372)
+* showtarget: three. (line 375)
* Si: Mathematical functions.
(line 48)
-* signedint: Files. (line 76)
-* signedint <1>: Files. (line 89)
+* signedint: Files. (line 80)
+* signedint <1>: Files. (line 93)
* SimpleHead: draw. (line 26)
* simplex: simplex. (line 6)
* simpson: Mathematical functions.
@@ -9916,16 +9982,16 @@ Index
(line 6)
* Sin: Mathematical functions.
(line 20)
-* single precision: Files. (line 76)
-* singleint: Files. (line 76)
-* singleint <1>: Files. (line 89)
-* singlereal: Files. (line 76)
-* singlereal <1>: Files. (line 89)
+* single precision: Files. (line 80)
+* singleint: Files. (line 80)
+* singleint <1>: Files. (line 93)
+* singlereal: Files. (line 80)
+* singlereal <1>: Files. (line 93)
* sinh: Mathematical functions.
(line 6)
-* SixViews: three. (line 438)
-* SixViewsFR: three. (line 438)
-* SixViewsUS: three. (line 438)
+* SixViews: three. (line 441)
+* SixViewsFR: three. (line 441)
+* SixViewsUS: three. (line 441)
* size: Figure size. (line 6)
* size <1>: Paths and guides. (line 81)
* size <2>: Paths and guides. (line 370)
@@ -9933,12 +9999,12 @@ Index
(line 48)
* size <4>: Frames and pictures.
(line 74)
-* size <5>: three. (line 537)
-* size <6>: Options. (line 155)
-* size3: three. (line 297)
+* size <5>: three. (line 540)
+* size <6>: Options. (line 157)
+* size3: three. (line 300)
* Slant: label. (line 42)
* slant: Transforms. (line 38)
-* sleep: Data types. (line 375)
+* sleep: Data types. (line 376)
* slice: Paths and guides. (line 251)
* slice <1>: Paths and guides. (line 262)
* slices: Slices. (line 6)
@@ -9951,17 +10017,17 @@ Index
(line 48)
* solid: Pens. (line 102)
* solids: solids. (line 6)
-* solve: Arrays. (line 282)
-* solve <1>: Arrays. (line 298)
-* sort: Arrays. (line 177)
-* sort <1>: Arrays. (line 181)
-* sort <2>: Arrays. (line 196)
+* solve: Arrays. (line 287)
+* solve <1>: Arrays. (line 303)
+* sort: Arrays. (line 182)
+* sort <1>: Arrays. (line 186)
+* sort <2>: Arrays. (line 201)
* specular: three. (line 76)
* specularfactor: three. (line 76)
* specularpen: three. (line 66)
* Spline: graph. (line 33)
* Spline <1>: graph3. (line 99)
-* split: Data types. (line 278)
+* split: Data types. (line 279)
* sqrt: Mathematical functions.
(line 6)
* squarecap: Pens. (line 139)
@@ -9972,42 +10038,42 @@ Index
* stack overflow <2>: Help. (line 27)
* static: Static. (line 6)
* stats: stats. (line 6)
-* stdin: Files. (line 48)
-* stdout: Files. (line 48)
+* stdin: Files. (line 52)
+* stdout: Files. (line 52)
* step: Debugger. (line 38)
* stickframe: markers. (line 16)
* stop: Debugger. (line 10)
* straight: Paths and guides. (line 88)
* Straight: graph. (line 30)
-* straight <1>: three. (line 537)
-* strftime: Data types. (line 320)
-* strftime <1>: Data types. (line 345)
-* string: Data types. (line 207)
-* string <1>: Data types. (line 311)
+* straight <1>: three. (line 540)
+* strftime: Data types. (line 321)
+* strftime <1>: Data types. (line 346)
+* string: Data types. (line 208)
+* string <1>: Data types. (line 312)
* stroke: fill. (line 36)
* stroke <1>: clip. (line 6)
* strokepath: Paths and guides. (line 309)
-* strptime: Data types. (line 329)
+* strptime: Data types. (line 330)
* struct: Structures. (line 6)
* structures: Structures. (line 6)
* subpath: Paths and guides. (line 186)
-* subpath <1>: three. (line 537)
+* subpath <1>: three. (line 540)
* subpictures: Frames and pictures.
(line 113)
-* substr: Data types. (line 261)
-* sum: Arrays. (line 211)
+* substr: Data types. (line 262)
+* sum: Arrays. (line 216)
* superpath: Paths. (line 23)
-* Suppress: Pens. (line 350)
-* SuppressQuiet: Pens. (line 354)
+* Suppress: Pens. (line 367)
+* SuppressQuiet: Pens. (line 371)
* surface: three. (line 46)
-* surface <1>: three. (line 116)
-* surface <2>: three. (line 130)
+* surface <1>: three. (line 118)
+* surface <2>: three. (line 132)
* surface <3>: graph3. (line 99)
-* SVG: Options. (line 160)
-* system: Data types. (line 353)
-* system <1>: Options. (line 181)
+* SVG: Options. (line 162)
+* system: Data types. (line 354)
+* system <1>: Options. (line 182)
* syzygy: syzygy. (line 6)
-* tab: Files. (line 61)
+* tab: Files. (line 65)
* tab completion: Drawing in interactive mode.
(line 11)
* tan: Mathematical functions.
@@ -10016,23 +10082,23 @@ Index
(line 20)
* tanh: Mathematical functions.
(line 6)
-* target: three. (line 372)
-* tell: Files. (line 93)
+* target: three. (line 375)
+* tell: Files. (line 97)
* tension: Bezier curves. (line 56)
* tension <1>: three. (line 6)
* tensionSpecifier: Paths and guides. (line 402)
-* tensor product shading: fill. (line 77)
-* tensorshade: fill. (line 77)
-* tessellation: three. (line 142)
+* tensor product shading: fill. (line 78)
+* tensorshade: fill. (line 78)
+* tessellation: three. (line 144)
* tex: Frames and pictures.
(line 305)
-* tex <1>: Options. (line 155)
-* TeX fonts: Pens. (line 215)
-* TeX string: Data types. (line 207)
-* texcommand: Configuring. (line 72)
+* tex <1>: Options. (line 157)
+* TeX fonts: Pens. (line 213)
+* TeX string: Data types. (line 208)
+* texcommand: Configuring. (line 74)
* TeXHead: draw. (line 26)
-* TeXHead3: three. (line 603)
-* texpath: Configuring. (line 72)
+* TeXHead3: three. (line 606)
+* texpath: Configuring. (line 74)
* texpath <1>: label. (line 113)
* texpreamble: Frames and pictures.
(line 314)
@@ -10041,73 +10107,72 @@ Index
* textbook graph: graph. (line 360)
* tgz: UNIX binary distributions.
(line 6)
-* thick: three. (line 154)
-* thin: three. (line 154)
+* thick: three. (line 156)
+* thin: three. (line 156)
* this: Structures. (line 6)
* three: three. (line 6)
-* ThreeViews: three. (line 438)
-* ThreeViewsFR: three. (line 438)
-* ThreeViewsUS: three. (line 438)
+* ThreeViews: three. (line 441)
+* ThreeViewsFR: three. (line 441)
+* ThreeViewsUS: three. (line 441)
* tick: graph. (line 330)
* ticks: graph. (line 160)
* Ticks: graph. (line 160)
* Ticks <1>: graph. (line 233)
* tildeframe: markers. (line 24)
-* tile: Pens. (line 268)
-* tilings: Pens. (line 254)
-* time: Data types. (line 320)
-* time <1>: Data types. (line 345)
+* tile: Pens. (line 285)
+* tilings: Pens. (line 271)
+* time: Data types. (line 321)
+* time <1>: Data types. (line 346)
* time <2>: math. (line 26)
* time <3>: math. (line 30)
* times: Paths and guides. (line 220)
* times <1>: Paths and guides. (line 224)
* Top: graph. (line 135)
-* TopView: three. (line 423)
+* TopView: three. (line 426)
* trace: Debugger. (line 50)
* trailingzero: graph. (line 175)
* transform: Transforms. (line 6)
-* transform <1>: three. (line 512)
-* transform3: three. (line 475)
-* transparency: Pens. (line 237)
+* transform <1>: three. (line 515)
+* transform3: three. (line 478)
+* transparency: Pens. (line 254)
* transparent: three. (line 97)
-* transpose: Arrays. (line 203)
-* transpose <1>: Arrays. (line 206)
+* transpose: Arrays. (line 208)
+* transpose <1>: Arrays. (line 211)
* tree: tree. (line 6)
* trembling: trembling. (line 6)
* triangle: geometry. (line 6)
-* triangles: three. (line 142)
+* triangles: three. (line 144)
* triangulate: contour. (line 149)
-* tridiagonal: Arrays. (line 269)
+* tridiagonal: Arrays. (line 274)
* trigonometric integrals: Mathematical functions.
(line 48)
* triple: Data types. (line 137)
* TrueMargin: draw. (line 42)
-* TrueMargin3: three. (line 619)
-* tube: three. (line 154)
+* TrueMargin3: three. (line 622)
+* tube: three. (line 156)
* tube <1>: tube. (line 6)
* tutorial: Tutorial. (line 6)
* type1cm: Pens. (line 192)
-* typedef: Data types. (line 384)
+* typedef: Data types. (line 385)
* typedef <1>: Functions. (line 46)
* U3D: embed. (line 22)
* undefined: Paths and guides. (line 283)
* UnFill: draw. (line 26)
-* unfill: fill. (line 109)
+* unfill: fill. (line 110)
* UnFill <1>: Frames and pictures.
(line 165)
* UnFill <2>: Frames and pictures.
(line 168)
-* unicode: unicode. (line 6)
-* uniform: Arrays. (line 145)
+* uniform: Arrays. (line 150)
* uninstall: Uninstall. (line 6)
* unique: math. (line 59)
* unit: Data types. (line 83)
-* unit <1>: Data types. (line 173)
+* unit <1>: Data types. (line 174)
* unitbox: Paths. (line 44)
-* unitbox <1>: three. (line 344)
+* unitbox <1>: three. (line 347)
* unitcircle: Paths. (line 17)
* unitcircle <1>: Paths. (line 17)
-* unitcircle <2>: three. (line 312)
+* unitcircle <2>: three. (line 315)
* unitrand: Mathematical functions.
(line 39)
* unitsize: Figure size. (line 39)
@@ -10117,18 +10182,19 @@ Index
(line 6)
* unpacking: Rest arguments. (line 39)
* unravel: Import. (line 29)
-* up: three. (line 372)
-* update: Files. (line 36)
+* up: three. (line 375)
+* update: Files. (line 38)
* UpsideDown: Frames and pictures.
(line 104)
* UpsideDown <1>: Frames and pictures.
(line 110)
+* URL: Import. (line 94)
* usepackage: Frames and pictures.
(line 321)
* user coordinates: Figure size. (line 39)
* user-defined operators: User-defined operators.
(line 6)
-* usleep: Data types. (line 378)
+* usleep: Data types. (line 379)
* value: math. (line 34)
* value <1>: math. (line 37)
* var: Variable initializers.
@@ -10138,50 +10204,50 @@ Index
* vectorfield: graph. (line 1004)
* vectorfield <1>: graph. (line 1043)
* vectorfield3: graph3. (line 157)
-* vectorization: Arrays. (line 326)
+* vectorization: Arrays. (line 331)
* verbatim: Frames and pictures.
(line 297)
-* vertex-dependent colors: three. (line 107)
+* vertex-dependent colors: three. (line 109)
* Vertical: flowchart. (line 77)
* Viewport: three. (line 76)
* viewportheight: LaTeX usage. (line 50)
-* viewportmargin: three. (line 300)
-* viewportsize: three. (line 300)
+* viewportmargin: three. (line 303)
+* viewportsize: three. (line 303)
* viewportwidth: LaTeX usage. (line 50)
-* views: three. (line 269)
+* views: three. (line 272)
* vim: Editing modes. (line 32)
-* virtual functions: Structures. (line 181)
+* virtual functions: Structures. (line 182)
* void: Data types. (line 10)
* W: Labels. (line 18)
-* WebGL: three. (line 220)
+* WebGL: three. (line 223)
* whatever: Paths and guides. (line 246)
* Wheel: palette. (line 22)
* wheel mouse: GUI. (line 6)
* while: Programming. (line 48)
* White: three. (line 76)
-* white-space string delimiter mode: Arrays. (line 357)
+* white-space string delimiter mode: Arrays. (line 362)
* width: LaTeX usage. (line 50)
* windingnumber: Paths and guides. (line 283)
-* word: Arrays. (line 357)
-* write: Files. (line 53)
-* write <1>: Arrays. (line 396)
-* X: three. (line 312)
+* word: Arrays. (line 362)
+* write: Files. (line 57)
+* write <1>: Arrays. (line 401)
+* X: three. (line 315)
* xasy: GUI. (line 6)
* xaxis3: graph3. (line 7)
-* xdr: Files. (line 76)
-* xelatex: Options. (line 155)
+* xdr: Files. (line 80)
+* xelatex: Options. (line 157)
* XEquals: graph. (line 265)
* xequals: graph. (line 278)
* xlimits: graph. (line 639)
* XOR: Arithmetic & logical.
(line 68)
* xpart: Data types. (line 94)
-* xpart <1>: Data types. (line 184)
+* xpart <1>: Data types. (line 185)
* xscale: Transforms. (line 30)
-* xscale3: three. (line 482)
+* xscale3: three. (line 485)
* xtick: graph. (line 330)
-* XY: three. (line 497)
-* XY <1>: three. (line 512)
+* XY: three. (line 500)
+* XY <1>: three. (line 515)
* XYEquals: graph3. (line 21)
* XYZero: graph3. (line 21)
* XZEquals: graph3. (line 21)
@@ -10191,22 +10257,22 @@ Index
(line 6)
* Y <1>: Mathematical functions.
(line 48)
-* Y <2>: three. (line 312)
+* Y <2>: three. (line 315)
* yaxis3: graph3. (line 7)
* YEquals: graph. (line 128)
* yequals: graph. (line 278)
* ylimits: graph. (line 639)
* ypart: Data types. (line 97)
-* ypart <1>: Data types. (line 187)
+* ypart <1>: Data types. (line 188)
* yscale: Transforms. (line 32)
-* yscale3: three. (line 484)
+* yscale3: three. (line 487)
* ytick: graph. (line 330)
-* YX: three. (line 512)
-* YZ: three. (line 512)
+* YX: three. (line 515)
+* YZ: three. (line 515)
* YZEquals: graph3. (line 21)
* YZero: graph. (line 123)
* YZZero: graph3. (line 21)
-* Z: three. (line 312)
+* Z: three. (line 315)
* zaxis3: graph3. (line 7)
* zeroTransform: Transforms. (line 44)
* zerowinding: Pens. (line 164)
@@ -10222,160 +10288,159 @@ Index
(line 48)
* zeta: Mathematical functions.
(line 48)
-* zpart: Data types. (line 190)
-* zscale3: three. (line 486)
-* ZX: three. (line 512)
-* ZX <1>: three. (line 512)
-* ZY: three. (line 512)
+* zpart: Data types. (line 191)
+* zscale3: three. (line 489)
+* ZX: three. (line 515)
+* ZX <1>: three. (line 515)
+* ZY: three. (line 515)

Tag Table:
Node: Top570
-Node: Description7280
-Node: Installation11190
-Node: UNIX binary distributions12236
-Node: MacOS X binary distributions13366
-Node: Microsoft Windows13921
-Node: Configuring15128
-Node: Search paths19591
-Node: Compiling from UNIX source20430
-Node: Editing modes23492
-Node: Git25914
-Node: Uninstall26314
-Node: Tutorial26660
-Node: Drawing in batch mode27551
-Node: Drawing in interactive mode28427
-Node: Figure size29459
-Node: Labels31054
-Node: Paths31882
-Ref: unitcircle32498
-Node: Drawing commands34400
-Node: draw36115
-Ref: arrows37297
-Node: fill42795
-Ref: gradient shading43841
-Node: clip48357
-Node: label48944
-Ref: Label49544
-Node: Bezier curves55376
-Node: Programming59276
-Ref: array iteration61029
-Node: Data types61196
-Ref: format71858
-Node: Paths and guides76304
-Ref: circle76558
-Ref: extension86258
-Node: Pens93068
-Ref: fillrule100759
-Ref: basealign101663
-Ref: transparency104497
-Ref: makepen108091
-Ref: overwrite108975
-Node: Transforms110189
-Node: Frames and pictures112021
-Ref: envelope113179
-Ref: size114272
-Ref: unitsize115259
-Ref: shipout116332
-Ref: filltype118683
-Ref: add122096
-Ref: add about123038
-Ref: tex126068
-Node: Files126964
-Ref: cd127951
-Ref: scroll132636
-Node: Variable initializers135554
-Node: Structures138271
-Node: Operators145773
-Node: Arithmetic & logical146087
-Node: Self & prefix operators148457
-Node: User-defined operators149251
-Node: Implicit scaling150164
-Node: Functions150727
-Ref: stack overflow153869
-Node: Default arguments154151
-Node: Named arguments154907
-Node: Rest arguments157477
-Node: Mathematical functions160599
-Node: Arrays165256
-Ref: sort172364
-Ref: tridiagonal175275
-Ref: solve176506
-Node: Slices180646
-Node: Casts184554
-Node: Import186824
-Node: Static192082
-Node: LaTeX usage194975
-Node: Base modules201470
-Node: plain204027
-Node: simplex204701
-Node: math204975
-Node: interpolate207559
-Node: geometry207838
-Node: trembling208432
-Node: stats208701
-Node: patterns208961
-Node: markers209197
-Node: tree211059
-Node: binarytree211244
-Node: drawtree211911
-Node: syzygy212112
-Node: feynman212386
-Node: roundedpath212661
-Node: animation212944
-Ref: animate213365
-Node: embed214478
-Node: slide215432
-Node: MetaPost215764
-Node: unicode216483
-Node: latin1217357
-Node: babel217726
-Node: labelpath217956
-Node: labelpath3218777
-Node: annotate219088
-Node: CAD219558
-Node: graph219869
-Ref: ticks227030
-Ref: pathmarkers240768
-Ref: marker241239
-Ref: markuniform241593
-Ref: errorbars243401
-Ref: automatic scaling247880
-Node: palette259641
-Ref: images259759
-Ref: image263933
-Ref: logimage264454
-Ref: penimage265560
-Ref: penfunctionimage265823
-Node: three266595
-Ref: PostScript3D295892
-Node: obj297631
-Node: graph3297880
-Ref: GaussianSurface303163
-Node: grid3304313
-Node: solids305098
-Node: tube306091
-Node: flowchart308322
-Node: contour312931
-Node: contour3318251
-Node: smoothcontour3318564
-Node: slopefield320285
-Node: ode321775
-Node: Options322032
-Ref: configuration file328817
-Ref: settings328817
-Ref: texengines330081
-Ref: convert330081
-Node: Interactive mode333591
-Ref: history335741
-Node: GUI337044
-Node: GUI installation337595
-Node: GUI usage338326
-Node: PostScript to Asymptote339389
-Node: Help340148
-Node: Debugger341822
-Node: Credits343578
-Node: Index344595
+Node: Description7200
+Node: Installation11286
+Node: UNIX binary distributions12332
+Node: MacOS X binary distributions13455
+Node: Microsoft Windows14010
+Node: Configuring15217
+Node: Search paths19829
+Node: Compiling from UNIX source20837
+Node: Editing modes23988
+Node: Git26410
+Node: Uninstall26917
+Node: Tutorial27263
+Node: Drawing in batch mode28110
+Node: Drawing in interactive mode28986
+Node: Figure size30018
+Node: Labels31613
+Node: Paths32441
+Ref: unitcircle33057
+Node: Drawing commands34955
+Node: draw36763
+Ref: arrows37945
+Node: fill43461
+Ref: gradient shading44507
+Node: clip49121
+Node: label49870
+Ref: Label50470
+Node: Bezier curves56328
+Node: Programming60228
+Ref: array iteration61981
+Node: Data types62148
+Ref: format72916
+Node: Paths and guides77362
+Ref: circle77616
+Ref: extension87316
+Node: Pens94126
+Ref: fillrule101817
+Ref: basealign102721
+Ref: transparency106403
+Ref: makepen109997
+Ref: overwrite110881
+Node: Transforms112095
+Node: Frames and pictures114034
+Ref: envelope115192
+Ref: size116285
+Ref: unitsize117272
+Ref: shipout118345
+Ref: filltype120696
+Ref: add124109
+Ref: add about125051
+Ref: tex128081
+Node: Files128977
+Ref: cd130034
+Ref: scroll134936
+Node: Variable initializers137854
+Node: Structures140571
+Node: Operators148149
+Node: Arithmetic & logical148463
+Node: Self & prefix operators150833
+Node: User-defined operators151627
+Node: Implicit scaling152540
+Node: Functions153103
+Ref: stack overflow156245
+Node: Default arguments156527
+Node: Named arguments157283
+Node: Rest arguments159853
+Node: Mathematical functions162975
+Node: Arrays167632
+Ref: sort174921
+Ref: tridiagonal177832
+Ref: solve179063
+Node: Slices183203
+Node: Casts187111
+Node: Import189381
+Node: Static194962
+Node: LaTeX usage197848
+Node: Base modules204343
+Node: plain206820
+Node: simplex207494
+Node: math207767
+Node: interpolate210350
+Node: geometry210629
+Node: trembling211223
+Node: stats211492
+Node: patterns211751
+Node: markers211986
+Node: map213845
+Node: tree214269
+Node: binarytree214453
+Node: drawtree215120
+Node: syzygy215321
+Node: feynman215595
+Node: roundedpath215869
+Node: animation216151
+Ref: animate216572
+Node: embed217684
+Node: slide218638
+Node: MetaPost218969
+Node: babel219685
+Node: labelpath219917
+Node: labelpath3220737
+Node: annotate221048
+Node: CAD221518
+Node: graph221828
+Ref: ticks228988
+Ref: pathmarkers242713
+Ref: marker243184
+Ref: markuniform243538
+Ref: errorbars245346
+Ref: automatic scaling249825
+Node: palette261540
+Ref: images261658
+Ref: image265832
+Ref: logimage266353
+Ref: penimage267459
+Ref: penfunctionimage267722
+Node: three268494
+Ref: PostScript3D298021
+Node: obj299759
+Node: graph3300008
+Ref: GaussianSurface305291
+Node: grid3306441
+Node: solids307226
+Node: tube308218
+Node: flowchart310448
+Node: contour315091
+Node: contour3320406
+Node: smoothcontour3320718
+Node: slopefield322439
+Node: ode323929
+Node: Options324186
+Ref: configuration file331094
+Ref: settings331094
+Ref: texengines332358
+Ref: convert332358
+Node: Interactive mode335792
+Ref: history337942
+Node: GUI339245
+Node: GUI installation339796
+Node: GUI usage340529
+Node: PostScript to Asymptote341592
+Node: Help342351
+Node: Debugger344025
+Node: Credits345781
+Node: Index346889

End Tag Table