summaryrefslogtreecommitdiff
path: root/Build/source/utils/asymptote/doc/asymptote.texi
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/asymptote/doc/asymptote.texi')
-rw-r--r--Build/source/utils/asymptote/doc/asymptote.texi98
1 files changed, 59 insertions, 39 deletions
diff --git a/Build/source/utils/asymptote/doc/asymptote.texi b/Build/source/utils/asymptote/doc/asymptote.texi
index bd67b18ac44..8fb751251b6 100644
--- a/Build/source/utils/asymptote/doc/asymptote.texi
+++ b/Build/source/utils/asymptote/doc/asymptote.texi
@@ -210,6 +210,8 @@ as @TeX{}/@code{LaTeX} is the de-facto standard for typesetting equations.
@item @code{LaTeX} typesetting of labels, for overall document consistency;
+@item the ability to generate and embed 3D vector @acronym{PRC} graphics into @acronym{PDF} files;
+
@item a natural coordinate-based framework for technical drawings,
inspired by @code{MetaPost}, with a much cleaner, powerful C++-like programming
syntax;
@@ -562,20 +564,19 @@ in the @code{Asymptote} source directory.
@cindex multisampling
@anchor{multisampling}
@noindent
-If your graphics card supports multisampling, we recommend using SVN
-revision 761 (or later) of @code{freeglut} to support antialiasing in
+If your graphics card supports multisampling, we recommend using version
+@code{2.6.0-rc1} (or later) of @code{freeglut} to support antialiasing in
@code{Asymptote}'s adaptive @code{OpenGL} 3D renderer
(@code{MacOS X} users can skip this step since @code{Asymptote} is configured
to use the native glut library on that platform). Download
@quotation
-@url{http://freeglut.svn.sourceforge.net/viewvc/freeglut/trunk/freeglut/freeglut.tar.gz}
+@url{http://prdownloads.sourceforge.net/freeglut/freeglut-2.6.0-rc1.tar.gz}
@end quotation
@noindent
and type (as the root user):
@verbatim
-tar -zxf freeglut.tar.gz
-cd freeglut
-sh autogen.sh
+tar -zxf freeglut-2.6.0-rc1.tar.gz
+cd freeglut-2.6.0
./configure --prefix=/usr
make install
cd ..
@@ -697,16 +698,23 @@ just add to @code{~/.vim/ftplugin/asy.vim}:
@verbatim
setlocal makeprg=asy\ %
setlocal errorformat=%f:\ %l.%c:\ %m
-
@end verbatim
+@cindex @code{KDE editor}
+@cindex @code{Kate}
+@cindex @code{asymptote.xml}
+Syntax highlighting support for the @acronym{KDE} editor @code{Kate}
+can be enabled by running @code{asy-kate.sh} in the
+@code{@value{Datadir}/asymptote} directory and putting the generated
+@code{asymptote.xml} file in @code{~/.kde/share/apps/katepart/syntax/}.
+
@node Subversion
@section Subversion (SVN)
@cindex Subversion
@cindex SVN
The following commands are needed to install the latest development version of
-@code{Asymptote} using @acronym{Subversion}:
+@code{Asymptote} using @code{Subversion}:
@verbatim
svn co http://asymptote.svn.sourceforge.net/svnroot/asymptote/trunk/asymptote
cd asymptote
@@ -4057,8 +4065,9 @@ Much like in C++, casting (@pxref{Casts}) provides for an elegant
implementation of structure inheritance, including virtual functions:
@verbatim
struct parent {
- real x=1;
- void virtual(int) {write (0);}
+ real x;
+ void operator init(int x) {this.x=x;}
+ void virtual(int) {write(0);}
void f() {virtual(1);}
}
@@ -4066,24 +4075,25 @@ void write(parent p) {write(p.x);}
struct child {
parent parent;
- real y=2;
- void virtual(int x) {write (x);}
+ real y=3;
+ void operator init(int x) {parent.operator init(x);}
+ void virtual(int x) {write(x);}
parent.virtual=virtual;
void f()=parent.f;
}
parent operator cast(child child) {return child.parent;}
-parent p;
-child c;
+parent p=parent(1);
+child c=child(2);
-write(c); // Outputs 1;
+write(c); // Outputs 2;
p.f(); // Outputs 0;
c.f(); // Outputs 1;
-write(c.parent.x); // Outputs 1;
-write(c.y); // Outputs 2;
+write(c.parent.x); // Outputs 2;
+write(c.y); // Outputs 3;
@end verbatim
For further examples of structures, see @code{Legend} and @code{picture} in
@@ -7465,20 +7475,31 @@ version of the @code{freeglut} library
controlled with the setting @code{multisample}. An initial screen
position can be specified with the pair setting @code{position}, where
negative values are interpreted as relative to the corresponding
-maximum screen dimension. The mouse bindings are:
+maximum screen dimension. The default settings
@cindex mouse bindings
+@verbatim
+import settings;
+leftbutton=new string[] {"rotate","zoom","shift",""};
+middlebutton=new string[] {"menu"};
+rightbutton=new string[] {"zoom/menu","rotateX","rotateY","rotateZ"};
+wheelup=new string[] {"zoomin"};
+wheeldown=new string[] {"zoomout"};
+@end verbatim
+bind the mouse buttons as follows:
@itemize
@item Left: rotate
-@item shift Left: zoom
-@item ctrl Left: shift
+@item Shift Left: zoom
+@item Ctrl Left: shift
@item Middle: menu
-@item Wheel: zoom
+@item Wheel Up: zoom in
+@item Wheel Down: zoom out
@item Right: zoom
@item Right double click: menu
-@item shift Right: rotate about the X axis
-@item ctrl Right: rotate about the Y axis
-@item alt Right: rotate about the Z axis
+@item Shift Right: rotate about the X axis
+@item Ctrl Right: rotate about the Y axis
+@item Alt Right: rotate about the Z axis
@end itemize
+
The keyboard shortcuts are:
@cindex keyboard bindings:
@itemize
@@ -8810,23 +8831,21 @@ or manually install the @code{tkinter}, @code{tix}, @code{tk},
and @code{tk-devel} packages.
Pictures are deconstructed into the @acronym{PNG} image format, which
-supports full alpha channel transparency. Under @code{Microsoft
-Windows}, this requires @code{Python 2.5 (or 2.5.1)} and the
-@code{Python Imaging Library}:
+supports full alpha channel transparency. Under @code{Microsoft Windows},
+this requires @code{Python 2.6.2} and the @code{Python Imaging Library}:
@quotation
-@url{http://www.python.org/ftp/python/2.5.1/python-2.5.1.msi}
+@url{http://www.python.org/ftp/python/2.6.2/python-2.6.2.msi}
@end quotation
@quotation
-@url{http://effbot.org/downloads/PIL-1.1.6.win32-py2.5.exe}.
+@url{http://effbot.org/downloads/PIL-1.1.7b1.win32-py2.6.exe}.
@end quotation
@noindent
On @code{UNIX} systems, place
-@url{http://effbot.org/downloads/Imaging-1.1.6.tar.gz} in the
+@url{http://effbot.org/downloads/Imaging-1.1.7b1.tar.gz} in the
@code{Asymptote} source directory, and type (as the root user):
@verbatim
-tar -zxf Imaging-1.1.6.tar.gz
-cd Imaging-1.1.6
-patch -p1 < ../patches/TkAlpha-Imaging-1.1.6.patch
+tar -zxf Imaging-1.1.7b1.tar.gz
+cd Imaging-1.1.7b1
python setup.py install
@end verbatim
@@ -8943,7 +8962,7 @@ To receive announcements of upcoming releases, please subscribe to
@cindex bug reports
@noindent
If you find a bug in @code{Asymptote}, please check (if possible)
-whether the bug is still present in the latest @acronym{Subversion}
+whether the bug is still present in the latest @code{Subversion}
developmental code (@pxref{Subversion}) before submitting a bug
report. New bugs can be submitted using the Bug Tracking System at
@quotation
@@ -9218,14 +9237,14 @@ Melenchuk, Martin Wiebusch, and Stefan Knorr.
@c LocalWords: pdfreloadOptions deferred OpenGL Phong Blinn renderer unitbox
@c LocalWords: bezulate Shardt's rasterized viewport unitdisk unitplane devel
@c LocalWords: unitcylinder unitcone solidcone unitfrustum unitsphere nslices
-@c LocalWords: DPostScript YZZero freeglut externalprc nonrendered nosafe
-@c LocalWords: unithemisphere versa XYplane xypart unitsolidcone YZEquals
+@c LocalWords: DPostScript YZZero freeglut externalprc nonrendered nosafe KDE
+@c LocalWords: unithemisphere versa XYplane xypart unitsolidcone YZEquals xml
@c LocalWords: XZEquals XYEquals XZZero XYZero InTicks OutTicks InOutTicks
@c LocalWords: fitscreen planeproject strokepath meshlight nullpens arrowdir
@c LocalWords: diffusepen ambientpen emissivepen specularpen arrowbarb keyval
@c LocalWords: hstretch vstretch roundbox nonconvex miterlimit basealigin
@c LocalWords: maxviewport maxtile antialiased sphericalharmonic attachfile
-@c LocalWords: vertexshading smoothelevation glOptions iconified iconify
+@c LocalWords: vertexshading smoothelevation glOptions iconified iconify kate
@c LocalWords: psviewerOptions pdfviewerOptions viewportmargin asyattach
@c LocalWords: multisampling autogen multisample coloredpath relstep flowdir
@c LocalWords: colortype coloredSegments coloredNodes trefoilknot scaledgraph
@@ -9235,5 +9254,6 @@ Melenchuk, Martin Wiebusch, and Stefan Knorr.
@c LocalWords: subregions nonsimply functionshade shader floatingdisk TopView
@c LocalWords: functionshading nonselfintersecting maxlength LeftView odetest
@c LocalWords: vectorfieldsphere RightView FrontView BackView BottomView
-@c LocalWords: addViews outprefix addAllViews xsplinetype ysplinetype
-@c LocalWords: usplinetype vsplinetype
+@c LocalWords: addViews outprefix addAllViews xsplinetype ysplinetype rotateX
+@c LocalWords: usplinetype vsplinetype leftbutton middlebutton rightbutton
+@c LocalWords: rotateY rotateZ wheelup zoomin wheeldown zoomout