Asymptote Changelog

What's new in Asymptote 2.89

Apr 1, 2024
  • Portability fixes were made to allow static builds with or without pkg-config.
  • Static linking of the GSL library is now supported.
  • Redundant templated imports are avoided.

New in Asymptote 2.88 (Mar 11, 2024)

  • Building against specific static libraries is supported again.
  • An ambiguity in statistics.h was resolved.
  • The output of dvisvgm is optimized by default.
  • PDF 1.5 output is now generated.

New in Asymptote 2.86 (Jun 12, 2023)

  • Update HOWTO.
  • Update build script.
  • Fix type.
  • Fix compilation under MSDOS.
  • Fix boost issues.

New in Asymptote 2.85 (Feb 10, 2023)

  • Draw dot after drawing path.
  • Add example.
  • Fix centering; center image on load.
  • XASY: Work around QtSvg pattern bug.
  • Fix Makefile.
  • XASY: Update script before exporting.
  • Fix bug #367: implement intersection of path3 with Bezier triangle.
  • Simplify example.
  • Improve example.
  • Test errno after nanosleep.
  • Fix animation keyboard controls.
  • Fix animation timer.
  • Fix more uninitialized variables.
  • Avoid division by zero.
  • Fix uninitialized variable.
  • Fix #366: Question about python scripts.
  • Update URL.
  • Make installing icons_rc.py optional.
  • Retain icons_rc.py.
  • Pregenerate icons_rc.py.
  • Improve resolution of cputime().change.user.
  • Implement alternatives to CLOCK_THREAD_CPUTIME_ID.
  • Fix compilation without FFTW.
  • Workaround broken offscreen graphics drivers.
  • Increase initial heapsize under MSDOS.
  • Update year in copyright.

New in Asymptote 2.84 (Jan 26, 2023)

  • Account for linewidth in labelmargin.
  • Add high-resolution clock; update FFT support.
  • Revert "Improve last revision.
  • Fix Makefile dependency.

New in Asymptote 2.83 (Dec 5, 2022)

  • Fix default export extension.
  • XASY: Implement color interface.
  • XASY: Remove obsolete code.
  • XASY: Implement solid pen; disable unimplemented color interface.
  • XASY: Convert from asy to Qt pattern.
  • Merge branch 'Qt'.
  • XASY: Fix arrowify bug.
  • Simplify vectorfield example.
  • Allow specifying only endpoint of vector in vectorfield.
  • Fix vectorfield scaling.
  • Remove diagnostic.
  • Fix vectorfield scaling.
  • Fix integer quotient bug introduced in 1e1e6cbbcfe65b58ead8e04d5e2b302ed011acd8.
  • Remove arrows from slopefield; fix scaling in vectorfield routines.
  • Simplify vectorfield example.
  • Allow specifying only endpoint of vector in vectorfield.
  • Fix vectorfield scaling.
  • Remove diagnostic.
  • Fix vectorfield scaling.
  • Fix integer quotient bug introduced in 1e1e6cbbcfe65b58ead8e04d5e2b302ed011acd8.

New in Asymptote 2.70 (Apr 1, 2021)

  • Make orthographic scaling consistent with perspective scaling when keepAspect=false.
  • Merge pull request #203 from cagprado/fix_image_scaling
  • Fix Gouraud image
  • Merge branch 'cagprado-contour_scaling'.
  • Merge branch 'mojca-static_cast'.
  • Subtract 1 before casting to potentially smaller type.
  • Remove obsolete package everypage.
  • Make contour respect picture scaling
  • Add (x, y) scaling to the 2D contours routines.
  • Cast unsigned integers to avoid compiler warnings
  • Make Gouraud image respect x and y picture scaling
  • Transforms (x, y) pairs of the unstructured mesh according to the picture scaling in each coordinate. This fix an issue that the picture scaling is ignored when generating the image.
  • Fix z scaling in Gouraud image
  • Add missing HAVE_LIBCURL conditional.
  • Add missing above argument.
  • Remove unused line. Increase fuzz in bezulate.
  • Fix segmentation fault in subpath3
  • Fix dual simplex method.
  • Fix warning message.

New in Asymptote 2.69 (Feb 20, 2021)

  • A segmentation fault in subpath3 was fixed. The fuzz parameter in bezulate
  • was increased to handle font precision issues. A missing above argument was
  • added in plain_boxes.asy. Scaling bugs in the palette module were fixed.
  • The contour module now respects picture scaling. Bugs in reading null
  • fields were fixed. Orthographic scaling is now consistent with perspective
  • scaling when keepAspect=false. The obsolete everypage package was removed.
  • A compilation issue with LIBCURL and compilation warnings were fixed.

New in Asymptote 2.67 (Aug 6, 2020)

  • Reformat examples.
  • Indent projection output.
  • Add C++ and asy indenting and formatting Emacs lisp scripts.

New in Asymptote 2.66 (Jul 7, 2020)

  • Enable PDF transparency for SVG and HTML formats.

New in Asymptote 2.65 (Mar 26, 2020)

  • Fix export bug

New in Asymptote 2.63 (Mar 3, 2020)

  • Increase default output precision to 7.

New in Asymptote 2.62 (Jan 15, 2020)

  • Replace object with iframe in WebGL usage comment.

New in Asymptote 2.61 (Nov 18, 2019)

  • Fix material attribute.

New in Asymptote 2.60 (Nov 6, 2019)

  • Revert "Remove obsolete MSDOS Intel GPU workaround.
  • Convert POSIX filename to MSDOS filename.
  • Fix commit 24c7bcbc8b6e2e08938ab1fd088e922a0806251f.
  • Allow an object to be positioned finely with the arrow keys while holding down the mouse button. Fix origin and center order. Fix anchor names.
  • Update asymptote.sty to use grffile.
  • Fix commit 41cc1fa54e638954177314a0add6b2d3a043257f.
  • Use grffile to fix issues with included file names.
  • Fix bug #117: Wrong silhouette generated of a cylinder.
  • Revert "Reinstate comment about using glOptions=-indirect for old graphics card drivers.
  • Fix returned x array in rationalSimplex; port optimizations to simplex.
  • Reinstate comment about using glOptions=-indirect for old graphics card drivers.
  • Make locatefile return fully qualified file name; use this for viewing WebGL files.
  • Fix xasy resize.
  • Port xasy to high-resolution screens.
  • Implement pad function that pads a picture to a precise size in both directions.
  • Support SVG output of embedded PNG, JPEG, and external vector PDF images using dvisvgm 2.8.
  • Fix xasy handling of Ctrl-c.
  • Fix basic indices in rationalSimplex.
  • Simplify code.
  • Fix infeasible test in simplex.asy.
  • Move basic variables in rationalSimplex to column 0.
  • Check for redundant basis vectors in phase1 of rationalSimplex.
  • Standardize write(rational[]) suffixes.
  • Fix write(rational) default suffixes.
  • Fix iterateDual(real[][],int,int[]).
  • Avoid use of test -o.
  • Use htmlviewer to display svg files.
  • Fix Makefile.in.
  • Simplify Makefile.in.
  • Update asygl.
  • Fix transparent background.
  • Fix revision.cc.

New in Asymptote 2.58 (Oct 11, 2019)

  • Initialize all vertices in triangle arrays, even if they are offscreen.
  • Add outdir() convenience function; make asy() respect outdir(); update documentation and example of external EPS vector graphics.
  • Remove unnecessary code.
  • Revert "Make locatefile return fully qualified path." This reverts commit 9817571be16cc925c549a375b186fdc065a42da6.
  • Switch order of GLEW library when linking.
  • Fix bug #90: force graphics() to pass fully qualified file name to xasy; due to current limitations of dvisvgm (2.7.4), this only works with vector EPS files (embedded images, PDF, PNG, and JPG formats are not supported).
  • Make locatefile return fully qualified path.
  • Fix numerical precision issue in geometry.asy.
  • Distinguish between msdos and cygwin builds.
  • Change intersection points back to currentcoordsys in geometry.asy.
  • Handle execError gracefully, without killing parent or current process.
  • Resolve ambiguous function signatures in geometry.asy using ecasts to special cases.
  • Support building asymptote.so again.
  • Make --version option list both enabled and disabled features.
  • Reluctantly change default xasy editor for UNIX to vi.
  • Consistently use specified xasy editor.
  • Fix configuration issues.
  • Explicitly link with GLX library if present.

New in Asymptote 2.57 (Oct 8, 2019)

  • Improve feature description.
  • Remove unused variables
  • Fix numerical degeneracy in points[] intersectionpoints(bqe bqe1, bqe bqe2) of geometry module.

New in Asymptote 2.56 (Oct 3, 2019)

  • Fix MSDOS portability issue.
  • Fix compilation without OpenGL.
  • Fix test for tr1/unordered_map.
  • Tighten up test for std::tr1::unordered_map on legacy systems.
  • Fix viewMat initialization.

New in Asymptote 2.55 (Sep 30, 2019)

  • An initialization bug in the OpenGL renderer and portability issues were fixed.

New in Asymptote 2.54 (Sep 29, 2019)

  • Support for generating and embedding interactive 3D WebGL vector graphics within an HTML file has been added, allowing Asymptote figures to be displayed on modern mobile and desktop browsers. The OpenGL rendering routines were further optimized, yielding higher frame rates and lower memory usage. The view position for perspective projection was fixed. The default value of file word() was fixed. Installation issues were addressed. A new digits setting controls the default output file precision. A hanging pipe was fixed. The popcount function was extended to systems that lack 64-bit integers. The order of PRC quad colours was fixed. If lighting is enabled, vertex colors are now ignored in PRC images; when drawing a surface s, use draw(s,prc() ? nolight : currentlight); to disable lighting manually and recover the old behaviour.

New in Asymptote 2.49 (Apr 2, 2019)

  • Portability issues and numerical precision issues were fixed.

New in Asymptote 2.48 (Mar 27, 2019)

  • Update examples.
  • Fix fuzz usage.
  • Apply further workaround for broken MSWindows drivers for Intel GPU.
  • Fix portability issues.
  • Fix Makefile.
  • Support --disable-gc again.
  • Document material buffer sizes.
  • Reduce number of shader recompilations.
  • Rename shader files.
  • Fix lighting and material limits.

New in Asymptote 2.47 (Jul 31, 2018)

  • Minor optimization.
  • Fix scaling (allow second variable in Simplex method to be negative).
  • Generate EPS only for single-page documents.
  • Remove .vscode from releases
  • Remove unused files.
  • Fix uptodate flag; remove spurious directory
  • Fix URL in README.
  • Fix bsp module.

New in Asymptote 2.46 (Jul 29, 2018)

  • Don't use defaultGhostscriptLibrary location in MSWindows registry since TeXLive dvisvgm requires 32-bit version, even on 64-bit platforms.
  • Account for pen width in bbox.
  • Fix shipout issues.
  • Fix commit 451a260ae50d02867c1e54726a68d8af2c55761d.
  • Fix relative alignment under picture rotation.

New in Asymptote 2.45 (Jul 22, 2018)

  • Fix portability issues

New in Asymptote 2.44 (Apr 10, 2018)

  • Fix portability issues.

New in Asymptote 2.43 (Apr 6, 2018)

  • Asymptote http://asymptote.sourceforge.net is a powerful descriptive vector graphics language for technical drawing, inspired by MetaPost but with an improved C++-like syntax. Asymptote provides for figures the same high-quality level of typesetting that LaTeX does for scientific text.
  • The real modulo operator was fixed. Vector SVG output is now supported for PDF tex engines. Compilation under MacOS X was fixed. Both 32- and 64-bit MSWindows binaries are now available.

New in Asymptote 2.42 (Apr 3, 2018)

  • Bitreverse and popcount functions were added. An overflow in the modulo
  • operator was fixed. An asymmetry in angle(transform t) was fixed so that
  • angle(yscale(-1))=0. Missing 3D underline characters were fixed.
  • The MSWindows binary is now 64-bit.

New in Asymptote 2.41 (Apr 26, 2017)

  • The rendering of Bezier patches was improved
  • Minor improvements were made to perpendicular marks in the geometry package
  • A perl issue was addressed
  • Two unwanted temporary files are now removed after TeX processing
  • EPS output is now supported with all TeX engines
  • A workaround was implemented for the ImageMagick jpeg black background bug

New in Asymptote 2.40 (Mar 16, 2017)

  • A partial workaround for the OpenGL transparency bug was implemented, by
  • presorting transparent triangles of the same material. The examples were
  • updated and a segmentation fault was fixed. Multisample detection, surface
  • rendering, and crack filling algorithms were fixed. The default compilation
  • flags now specify -std=c++11.

New in Asymptote 2.35 (May 22, 2015)

  • Update documentation.
  • Work around eps2write bug that forces all postscript to first page,
  • breaking multiple 3D xelatex and context labels.
  • Replace duplicate files with symbolic links.
  • Support rendered 3D context images.
  • Increment version to 2.35svn

New in Asymptote 2.33 (May 12, 2015)

  • A work around was implemented for the missing epswrite driver in ghostscript-9.15.
  • Deconstruction is now always done in the C locale.
  • A work around for a unit change in dvisvgm-1.5.3 was implemented.
  • The path arc(pair B, pair A, pair C, real r) function was fixed.
  • The handling of the boolean condition in parametric surfaces was fixed.
  • The default meshlight was changed to nolight so that mesh lines with positive width appear consistent with the default mesh lines.
  • A nonsquare image dimension error was fixed.
  • The definition of the SimpleHead arrowhead was fixed.
  • The zoom/menu button and play option were fixed.
  • An intersect(path, surface) function was implemented.
  • A smoothcontour3 module written by Charles Staats and leminiscate example were added.
  • The inline asymptote.sty option now works with xelatex.
  • An obsolete workaround for an Adobe Reader transparency artifact was removed.
  • An asylatexdir option was added to support the pdflatex -output-directory option.
  • An aligndir option for aligning the picture to an arbitrary point of the page boundary was added.
  • The garbage collector was updated to gc-7.4.2.
  • The documentation was updated.

New in Asymptote 2.32 (May 23, 2014)

  • The libc++ stringstream workaround was also enabled for FreeBSD.
  • The segment(bool[] b) function was fixed.
  • The side(pair,pair,pair) function was renamed to orient(pair,pair,pair) and an error in its documentation was corrected.
  • New functions orient(triple,triple,triple,triple) and insphere(triple,triple,triple,triple,triple) were implemented.
  • A random number generator incompatibility on some platforms was fixed.
  • Support was removed for the obsolete utility texi2dvi4a2ps. Compiler warnings were

New in Asymptote 2.31 (May 17, 2014)

  • Fix hangs in 3D font generation and the "none" tex engine.

New in Asymptote 2.30 (May 17, 2014)

  • Compilation issues were addressed.
  • The OpenGL zoom/menu button was fixed.

New in Asymptote 2.29 (May 16, 2014)

  • The TeX bidirectional pipe was overhauled to support the context tex engine
  • again.
  • The luatex and lualatex tex engines were enabled.
  • The inline option used by the asymptote.sty LaTeX package and the inlineimage option used for generating external PRC files were fixed.
  • Portability issues were addressed.

New in Asymptote 2.28 (May 13, 2014)

  • A locale bug that interfered with the 3D PRC camera transformation was fixed.
  • Minimum OpenGL window constraints were removed in favour of the viewportsize
  • variable. The transform(u,v,O) function, which projects onto the plane
  • spanned by u and v through point O, was fixed. Numerical overflow issues in
  • quadraticroots and cubicroots were fixed. The documentation was updated.

New in Asymptote 2.27 (Apr 29, 2014)

  • Move Adobe transparency workaround to C++ code to allow use of texpreamble
  • again with the pdflatex tex engine.

New in Asymptote 2.26 (Apr 28, 2014)

  • The xasy graphical user interface now terminates the asy process on exit. The xasy code editor under MSWindows was fixed; the default code editor is now winpad. Degenerate HookHead and SimpleHead arrows were fixed. Portability issues were addressed.

New in Asymptote 2.25 (Apr 22, 2014)

  • A superfluous play button in rendered 3D images embedded by recent versions of media9 is now suppressed. The contour.asy module was reverted to a previous stable linearized version.
  • A numerical precision issue in makepen was fixed. A routine for drawing braces was added. Deep recursion is now avoided in guide flattening. A workaround for an Adobe Reader transparency artifact was implemented for the pdflatex and xelatex tex engines. Raw PRC output can now be generated with the "-f prc" command-line option. Vector patches are now sorted to work around opacity artifacts in many rendering engines. The xasy code editor now accepts command-line options. Under MSWindows, the ghostscript library is searched for in both the 32 bit and 64 bit registries. The FAQ and documentation were updated.

New in Asymptote 2.23 (May 21, 2013)

  • Compilation without the FFTW library is now supported again.

New in Asymptote 2.22 (May 17, 2013)

  • Self-defined unary operators are now allowed.
  • Formatted strings instead of real values are compared in OmitFormat.
  • The segment(bool[]) function was rewritten to use the more efficient segmentlimits(bool[]) call.
  • Unnecessary buffering of surface and path3 data was removed. Portability tweaks were made.
  • References to out-of-date trembling examples were removed. Vertex-colored triangles now work again in Adobe XI.
  • The transformation of normal vectors was fixed.
  • PostScript extend qualifiers were added for axial and radial shading.
  • The TEXMFMAN environment variable is now used to find the TeXLive sysdir.

New in Asymptote 2.21 (Oct 11, 2012)

  • Explicitly transformed billboard labels now work correctly again. The alignment point of OpenGL billboard labels was fixed.
  • An extend parameter was added to the axes (default true) and axes3 (default false) routines.
  • A history recall bug was fixed.
  • A typo was corrected in the documentation of the Jacobi elliptic functions sncndn.

New in Asymptote 2.20 (Sep 28, 2012)

  • A work around was implemented for a dvipdfmx bug that prevents the xelatex tex engine from properly embedding PRC objects.
  • Billboard rotation is now disabled for explicitly transformed labels.

New in Asymptote 2.19 (Sep 26, 2012)

  • Numerical resolution issues with the PRC camera orientation and viewportshift were fixed.
  • The lighting of NURBS surfaces was fixed.
  • The special 8192 strlen NSIS build was now correctly reinstated, with stubs, to prevent the installer from overwriting Windows PATH environment variables > 1023 bytes.

New in Asymptote 2.18 (Sep 20, 2012)

  • A compilation issue on MacOSX was addressed.
  • Secondary axes pictures now inherit the size of the primary picture, so that the markthin marker works properly.
  • The special 8192 strlen NSIS build was reinstated to prevent the installer from overwriting extremely long Windows PATH environment variables.

New in Asymptote 2.17 (Sep 19, 2012)

  • A bug with non-square pen function images was fixed.
  • Auto-scaled logarithmic axes were fixed.
  • Offscreen and non-offscreen rendering are now supported in a single binary (requiring OSMesa version 8), with settings.offscreen defaulting to false.
  • The media9 LaTeX style file is now used to embed 3D PRC content instead of movie15.
  • Local 3D coordinates are now used.
  • PRC Part names are nolonger generated by default.
  • A bug in bezulate was fixed.
  • A settings.axes3 flag was added to control the visibility of PRC axes.
  • An efficient 3D routine for drawing many triangles, with specified vertices and optional normals or vertex colors, was implemented.

New in Asymptote 2.16 (May 31, 2012)

  • Ticks are no longer autoscaled when the number of major intervals is specified and autoscale is false.
  • Manual tick scaling was fixed.
  • A bug in the palette range was fixed.
  • A division by zero in constructing curved arrows was fixed.
  • A numerical underflow was fixed.
  • A picture bound error was fixed.
  • The current value of currentpen is now always respected in default arguments.
  • A default viewportwidth is no longer imposed for attached images.
  • A routine for computing camera positions was added.
  • The format command is now more consistent with C++ printf formatting.
  • Named arguments can now appear in function calls after rest arguments.
  • The wheel example was improved to support PDF animations.
  • The erase command no longer resets the machine state.
  • Pipes are now used for xasy communication.
  • A new mode parameter to input and output replaces xinput, xoutput, binput, and boutput.
  • The icon directory path for 64-bit MSWindows systems was fixed.
  • Compilation of native CYGWIN binaries is now supported.

New in Asymptote 2.15 (Nov 17, 2011)

  • A compilation problem under MacOS X was fixed.

New in Asymptote 2.14 (Nov 16, 2011)

  • Minor problems in the geometry module were fixed. Billboard interaction is
  • now disabled for offscreen rendering. A markthin(path) marker with opacity
  • thinning was implemented. A locale string was added to format(string,int).
  • The copy, map, and sequence functions were generalized to arbitrary depths.
  • Asymptote can now be compiled as a shared library. A tuple operator was
  • added. The draw(revolution) function now defers drawing until the final
  • camera position is known. Nonrendered preview images can now be generated
  • for fitted pictures. String reads from binary files were fixed. An int
  • ascii(string) function and a bool isnan(real) function were implemented.
  • Jacobi elliptic functions were implemented. A quick reference card was added.
  • Compilation and static initialization issues under MacOS X Lion were addressed.

New in Asymptote 2.13 (Jun 20, 2011)

  • Compilation and installation issues were addressed

New in Asymptote 2.10 (May 27, 2011)

  • PRC vertex-shading for straight patches was implemented.
  • A general image routine that uses a pen function of two integer parameters was implemented.
  • A 3D pixel routine was added.
  • A temporary expression is now used to avoid side effects in self operators.
  • Keyword-only function arguments were implemented.
  • The sizing routines were recoded.
  • Bugs in drawline and geometry were fixed.
  • The geometry module no longer overloads the built-in circle and ellipse functions.
  • PDF TeX engines are now supported in xasy.
  • Directory prefixes are no longer stripped from .js and .prc file names.
  • The TeXShop instructions were updated.
  • The asymptote.sty LaTeX style file
  • was updated to allow leading spaces before \end{asy} and to introduce a
  • keepAspect keyval option.
  • Segmentation faults were fixed.
  • Unwanted state-dependency was removed from the startTrembling function of
  • the contributed trembling module by introducing a tremble structure
  • (backwards incompatible change);

New in Asymptote 2.08 (Nov 4, 2010)

  • Legend markers now work again.

New in Asymptote 2.07 (Nov 1, 2010)

  • The -P option required by ghostscript 9.00 was added.
  • The limits command now works correctly with reversed axes.
  • The asyinclude command of asymptote.sty was improved so that asy source files do not need to be sent to publishers; the asy extension is now optional. A mktemp function was implemented.
  • Further MSWindows installer problems were addressed.

New in Asymptote 2.06 (Oct 25, 2010)

  • Compilation problems and build issues were fixed.

New in Asymptote 2.05 (Oct 18, 2010)

  • Arbitrary depth array constructors were re-instated. Profiling code was
  • added. Spaces within file names and eps file attachments are now supported
  • in inlinetex mode, and interference from any pre-existing aux file is
  • avoided. A new auto-generated version (1.21) of asymptote.sty contributed
  • by Will Robertson features a latexmk-compatible asyinclude command.
  • Path-overwriting bugs in the NSIS MSWindows installer were circumvented.

New in Asymptote 2.04 (Aug 21, 2010)

  • Subdivision cracks in transparent labels are no longer filled.
  • Warning messages from the FP package are suppressed.
  • MSDOS line terminators are now handled; DOSendl and DOSnewl line terminators were added.
  • Files generated in inlinetex mode can now be renamed without editing their
  • contents (using asymptote.sty version 1.19).
  • The main page was fixed.
  • The documentation of render.merge was fixed.

New in Asymptote 2.03 (Aug 4, 2010)

  • Fix blank 3D labels.

New in Asymptote 1.99 (Jun 18, 2010)

  • A segmentation fault was fixed. Perspective animations were fixed.
  • A bug in the bezulate topological sorting algorithm was fixed.
  • A settings.framedelay parameter was added for working around OpenGL animation rendering buffer overruns.
  • Further optimizations were made.
  • A portability issue was addressed.

New in Asymptote 1.98 (Jun 18, 2010)

  • Memory usage and garbage collection were greatly improved, and many
  • optimizations were made. Labels are now aligned using the rotational instead of
  • the shiftless part of the transform. A portable CYGWIN memory limit fix was
  • implemented. Noncyclic stokepaths are discarded to work around a bug in gs 8.71.

New in Asymptote 1.97 (Jun 18, 2010)

  • A new render.labelfill option (enabled by default) fills subdivision cracks in
  • unlighted labels. The dependence on gcc-4.3 was removed. Offscreen
  • detection and zoom bugs in the OpenGL renderer were fixed. Three-dimensional
  • grouping was improved. The symbol table was replaced with a custom hash
  • table. Portability updates were made. The Cygwin memory limit fix for
  • MSWindows now works even on systems that lack a complete Cygwin installation.
  • The examples were updated to exploit the new PRC rendering options.

New in Asymptote 1.96 (Jun 18, 2010)

  • The viewpoint function and some examples were updated.

New in Asymptote 1.95 (Jun 18, 2010)

  • The PRC driver has been overhauled to support model tree groups, lossy
  • compression, efficient representations of elementary geometrical objects,
  • and specialized rendering options. More efficient OpenGL thick tubes were
  • implemented; the capping of 3D curves was improved. The SIGQUIT signal was
  • replaced by SIGTERM. Under MSWindows, the 384MB Cygwin memory limit is now
  • automatically disabled by the Asymptote installer. Inferred variable types
  • were added and operator symbols are now pretranslated.

New in Asymptote 1.94 (May 5, 2010)

  • Work arounds for MSWindows registry problems and obsolete runtime libraries were implemented. The SimpleHead arrowhead was fixed. Additional matrix routines and casts were implemented. The pair dir(path, path) routine now returns a unit vector. Variable conflicts coming from the contour module
  • were addressed. A RadialShadeDraw filltype was implemented. A guide bug was fixed. Redundant mismatched version warnings are avoided. Support for
  • fitting one 3D picture within another was added. The documentation was updated.

New in Asymptote 1.93 (Apr 27, 2010)

  • Expose outname() to asy.
  • Revert revision 4865 for strings containing spaces.
  • Fix tex(picture).
  • Add deactivatequote and activatequote functions for Babel users.
  • Redraw screen after export
  • Move backslash conversion into asy.
  • Fix GUI export under MSWindows.
  • Improve camera position.
  • Fix poster size.

New in Asymptote 1.88 (Oct 15, 2009)

  • Compilation without OpenGL was fixed. PRC billboard labels were
  • implemented;
  • settings.billboard was renamed to settings.autobillboard
  • and by default enabled for all 3D labels.
  • The surface constructor for embedding labels on surfaces now draws both the top and bottom faces by default.
  • The meshpen, knot, weight, and color arrays are now properly cached.
  • The example fequlogo.asy illustrates how to draw an arbitrary 3D background plane.
  • The intermediate dvi file is now removed when producing SVG output.
  • Improvements were made to the tutorial.

New in Asymptote 1.82 (Jul 21, 2009)

  • Threaded exports were fixed. The texpath fontsize was fixed for PDF tex engines.
  • A default currentprojection argument was added to transform3(projection).
  • The -gray and -bw settings are now respected in PRC output.
  • A consistent approximation is now used for drawing tube centers.
  • Missing pt units were added to all fontsize examples.

New in Asymptote 1.79 (Jul 4, 2009)

  • The perp vector calculation in the solids module was fixed. A bug in the
  • mouse motion functions was fixed. A pan action (which differs from shift
  • due to perspective distortion) was added to the OpenGl renderer;
  • the Camera (c) menu item now outputs all camera settings. The default right
  • mouse button mouse binding was changed from "zoom/menu" to "zoom".
  • User-initiated exports no longer cause the renderer to quit.
  • Dynamic time stepping was fixed in the ode module; the "integrate"
  • routines now return the array of computed values. Operators == and != were
  • added for all built-in arithmetic 2D arrays; a segmentation fault was
  • fixed. The etc/fstab kludge for Cygwin 1.7 was removed. The configuration
  • directory under TeXLive is now $TEXMFCONFIG/asymptote.

New in Asymptote 1.78 (Jul 4, 2009)

  • Thread locking issues were fixed. The linegranularity is now respected when
  • drawing thick curved lines. A bug in FSAL ODE integrators when using a
  • fixed time step was fixed. Missing miterlimit defaults were added.
  • Xasy was updated to use Python 2.6.2 and Imaging-1.1.7b1 (which requires no
  • alpha support patches). Obsolete patches were removed. More TeXLive build
  • issues were addressed: the install-prebuilt target omits texhash and does
  • not attempt to install PNG files for asymptote.info. A configuration
  • problem with --disable-gc was fixed. The 3D mouse bindings are now
  • customizable. Support was added for generating syntax highlighting for the KDE
  • editor Kate.

New in Asymptote 1.77 (Jun 19, 2009)

  • Splined parametric surfaces were implemented; a bug in the Cartesian
  • splined surface routines was fixed. An ode module for solving ordinary
  • differential equations was added. A bug in maxtimes and mintimes was fixed.
  • A Levenberg-Marquardt nonlinear fitting routine was added. The format
  • command now returns TeX compatible output only in math mode. A path3 label
  • alignment problem was fixed. The MSWindows support for TeXLive 2009 was fixed.

New in Asymptote 1.76 (Jun 6, 2009)

  • A bezulate bug was fixed. The resolution and caching of texpath were improved; for PDF tex engines, the basealign pen attribute is now respected. Support for OCG layers was added. Lights Headlamp and White were implemented; the predefined adobe light was removed. Holes are now handled
  • in superpath-to-surface constructor when planar=true. A degenerate transform3 issue was fixed. The alignment of rendered and PRC images was improved; the angle for rendering absolute projections was fixed. Inaccurate TeX and ConTeXt font scalings were fixed. A texsize(string, pen=currentpen) function returns the raw TeX dimensions {width,height,depth}. A new version of asymptote.sty (1.07) fixes attach=true mode.

New in Asymptote 1.75 (Jun 2, 2009)

  • Issues with 3D labels and texpath, both in inlinetex mode and with the
  • ConTeXt TeX engine, were resolved. A bug in bezulate was fixed. A partial
  • workaround was added for the unimplememented -output-directory ConTeXt
  • option (the current directory must still be writeable). The aspect ratio
  • and viewportmargin calculation in module three was improved, with tighter
  • 3D bounds. A bug in the intersectionpoints(path3, surface) routine was fixed.

New in Asymptote 1.70 (Apr 11, 2009)

  • A labelpath3 module for typesetting curved labels in 3D, contributed by Jens
  • Schwaiger, was added. PenMargin2 was defined for use with planar arrowhead
  • types like DefaultHead2. A center=false parameter was added to projections
  • to allow one to automatically center the target within the bounding volume.
  • The ambiguity in the surface function was resolved. Problems with spaces in
  • filenames were fixed.

New in Asymptote 1.69 (Apr 6, 2009)

  • Internal patch degeneracies were removed by splitting. Bugs in the
  • windingnumber and the intersection routines were fixed. The inside(path)
  • routine was improved; a fillrule argument was added. The bezulate connect
  • routine was improved. Bezulate is now automatically applied to path arrays:
  • surfaces should be constructed directly, without first calling bezulate.
  • A workaround for recent changes in the hyperref package was implemented.
  • The divisor setting was replaced with purge(divisor=0). The calls to baseline
  • in graph.asy were fixed. A miterlimit attribute was added to pens.
  • Animation problems were fixed. Lighting problems with multiple exports and
  • a quit deadlock were fixed. A new version of asymptote.sty (1.06) fixes
  • an undefined ASYbox.

New in Asymptote 1.67 (Mar 20, 2009)

  • Spurious annotation question marks in 3D PDF attachments were fixed;
  • attached images are now printable.
  • The asy environment defined in the new (1.04) version of asymptote.sty supports keyval options width, height, viewportwidth, viewportheight, and attach; the obsolete asyattach environment was removed.
  • The default viewportwidth is the linewidth in inline mode and 0 in attached mode. Planar projected arrows were fixed.
  • Automatic camera adjustment was improved. A minimum viewportsize can now be specified.
  • The control points for cyclic segments produced by texpath were
  • fixed.
  • Overlap issues in planar surface patches were fixed.
  • Surface constructors were simplified: the routine planar has been replaced by
  • surface(path, triple plane(pair)=XYplane) and in most cases there is no
  • need to call bezulate directly.
  • An Align constant was added.
  • The parameter limits used in buildcycle were fixed.
  • The intersection routines now respect the fuzz parameter.
  • Segmentation faults involving null cyclic guides were fixed.
  • Subpath now preserves the straight flag.
  • Pictures containing graphs now transform correctly; unextended axes limits and tick selection were improved.
  • Axial and radial shading respect now respect -gray.
  • The animation prefix was fixed.
  • An example of drawing a surface from irregular data was added.
  • A work around was implemented for an intermittent hang on exit in the 3D native renderer. An auto3D option was added for controlling the poster option.
  • The 2008/10/08 version of movie15.sty is now compulsory.
  • The cd %USERPROFILE% command was removed from asy.bat.

New in Asymptote 1.65 (Feb 20, 2009)

  • Changed paths:
  • M /trunk/asymptote/doc/asymptote.texi
  • M /trunk/asymptote/drawclipend.h
  • M /trunk/asymptote/settings.cc
  • M /trunk/asymptote/settings.h
  • M /trunk/asymptote/texfile.cc
  • Fix pdflatex output.
  • Implement xelatex engine.
  • Fix xelatex alignment.

New in Asymptote 1.62 (Feb 9, 2009)

  • Outputting PDF format to other directories was fixed. An int hex(string) function that casts a hexidecimal string to an integer and a pen rgb(string) routine that returns a pen corresponding to a given 6-character RGB hexidecimal string were added.
  • In the dot routines, Label arguments were added and minor bugs were fixed. A parametric version of
  • markuniform was added.

New in Asymptote 1.40 (Jan 8, 2008)

  • Hatch widths for PDF output were fixed by disabling dynamic line width adjustment.
  • A nurb-related bug in solid shading was also fixed.