diff options
author | Karl Berry <karl@freefriends.org> | 2009-09-11 00:21:50 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-09-11 00:21:50 +0000 |
commit | f06a2c99f2a8bbd8f641712c772179e8ed9ce14f (patch) | |
tree | fcf4f2b9d0492da04d9bf3761fbce51fb316024f /Build | |
parent | d4c54e52fe8e42b8ce9b160c70d897bb1d06eee7 (diff) |
asymptote 1.86
git-svn-id: svn://tug.org/texlive/trunk@15218 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
88 files changed, 21875 insertions, 18556 deletions
diff --git a/Build/source/utils/asymptote/ChangeLog b/Build/source/utils/asymptote/ChangeLog index b2cc5a3a469..b17acecd823 100644 --- a/Build/source/utils/asymptote/ChangeLog +++ b/Build/source/utils/asymptote/ChangeLog @@ -1,12 +1,414 @@ ------------------------------------------------------------------------ -r4598 | jcbowman | 2009-08-15 01:16:08 -0600 (Sat, 15 Aug 2009) | 2 lines +r4642 | jcbowman | 2009-09-05 21:34:57 +0200 (Sat, 05 Sep 2009) | 4 lines +Changed paths: + M /trunk/asymptote/drawpath3.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/prcfile.h + +Fix uninitialized variable. + +Add missing name arguments. + +------------------------------------------------------------------------ +r4641 | jcbowman | 2009-09-05 09:17:23 +0200 (Sat, 05 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/drawgroup.h + M /trunk/asymptote/prc/oPRCFile.h + +Fix string ambiguity. + +------------------------------------------------------------------------ +r4640 | jcbowman | 2009-09-04 23:36:17 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three.asy + +Remove spurious argument. + +------------------------------------------------------------------------ +r4639 | jcbowman | 2009-09-04 23:35:24 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/prc/oPRCFile.h + M /trunk/asymptote/prcfile.h + +Move begingroup and endgroup to oPRCFile class. + +------------------------------------------------------------------------ +r4638 | jcbowman | 2009-09-04 23:28:31 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/prcfile.h + +Remove spurious brace. + +------------------------------------------------------------------------ +r4637 | jcbowman | 2009-09-04 23:27:09 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three.asy + M /trunk/asymptote/drawgroup.h + M /trunk/asymptote/prcfile.h + M /trunk/asymptote/runpicture.in + +Add PRC model name support to begingroup3 and endgroup3. + +------------------------------------------------------------------------ +r4636 | jcbowman | 2009-09-04 18:28:47 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/TODO + M /trunk/asymptote/base/three.asy + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/doc/asymptote.texi + M /trunk/asymptote/drawpath3.h + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/prc/oPRCFile.cc + M /trunk/asymptote/prc/oPRCFile.h + M /trunk/asymptote/prcfile.h + M /trunk/asymptote/runpicture.in + +Support naming of PRC parts. + +------------------------------------------------------------------------ +r4635 | jcbowman | 2009-09-04 13:28:59 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/configure.ac + +Check for correct version of readline library. + +------------------------------------------------------------------------ +r4634 | jcbowman | 2009-09-04 13:13:50 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/configure.ac + +Add -lreadline to $LIBS. + +------------------------------------------------------------------------ +r4633 | jcbowman | 2009-09-04 13:06:33 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/configure.ac + +Fix readline test. + +------------------------------------------------------------------------ +r4632 | jcbowman | 2009-09-04 12:39:43 +0200 (Fri, 04 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/configure.ac + M /trunk/asymptote/doc/asymptote.texi + +Improve GNU readline test. + +------------------------------------------------------------------------ +r4631 | jcbowman | 2009-09-03 20:35:35 +0200 (Thu, 03 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/doc/asymptote.texi + +Fix typo. + +------------------------------------------------------------------------ +r4630 | jcbowman | 2009-09-03 20:34:12 +0200 (Thu, 03 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/path.h + M /trunk/asymptote/path3.h + +Fix radius of curvature at nodes. + +------------------------------------------------------------------------ +r4629 | jcbowman | 2009-09-03 00:39:30 +0200 (Thu, 03 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/examples/NURBSsurface.asy + +Reduce NURBS memory usage in polynomial case. + +------------------------------------------------------------------------ +r4628 | jcbowman | 2009-09-03 00:36:06 +0200 (Thu, 03 Sep 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/examples/NURBSsurface.asy + +Fix NURBS sizing. + +------------------------------------------------------------------------ +r4627 | jcbowman | 2009-08-31 10:00:43 +0200 (Mon, 31 Aug 2009) | 4 lines +Changed paths: + M /trunk/asymptote/drawpath3.cc + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/path3.h + M /trunk/asymptote/prcfile.h + +Optimize PRC polygons. + +Reduce surface memory usage. + +------------------------------------------------------------------------ +r4626 | jcbowman | 2009-08-22 01:45:52 +0200 (Sat, 22 Aug 2009) | 1 line +Changed paths: + M /trunk/asymptote/asymptote.spec + M /trunk/asymptote/configure.ac + +Increment version to 1.86svn. +------------------------------------------------------------------------ +r4625 | jcbowman | 2009-08-21 23:22:51 +0200 (Fri, 21 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/runtime.in + +Fix typo. + +------------------------------------------------------------------------ +r4624 | jcbowman | 2009-08-21 23:22:10 +0200 (Fri, 21 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/runpicture.in + M /trunk/asymptote/runtime.in + +Move remaining picture operations. + +------------------------------------------------------------------------ +r4623 | jcbowman | 2009-08-21 23:21:36 +0200 (Fri, 21 Aug 2009) | 3 lines +Changed paths: + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/examples/Klein.asy + +Rename labelsurface to surface; extend also to surfaces containing a single +patch. + +------------------------------------------------------------------------ +r4622 | jcbowman | 2009-08-21 07:08:28 +0200 (Fri, 21 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three.asy + +Add missing pen dimensions to sizing routine. + +------------------------------------------------------------------------ +r4621 | jcbowman | 2009-08-21 06:15:10 +0200 (Fri, 21 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/drawsurface.h + +Fix compilation on platforms that lack OpenGL. + +------------------------------------------------------------------------ +r4620 | jcbowman | 2009-08-20 16:39:20 +0200 (Thu, 20 Aug 2009) | 1 line +Changed paths: + M /trunk/asymptote/configure.ac + +Increment version to 1.85svn. +------------------------------------------------------------------------ +r4619 | jcbowman | 2009-08-20 08:47:14 +0200 (Thu, 20 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/runhistory.in + +Fix readline conditionals. + +------------------------------------------------------------------------ +r4618 | jcbowman | 2009-08-20 08:26:46 +0200 (Thu, 20 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/Makefile.in + M /trunk/asymptote/arrayop.h + M /trunk/asymptote/builtin.cc + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/exp.cc + M /trunk/asymptote/runarray.in + A /trunk/asymptote/runfile.in + A /trunk/asymptote/runmath.in + A /trunk/asymptote/runpair.in + A /trunk/asymptote/runpath.in + A /trunk/asymptote/runpath3d.in + A /trunk/asymptote/runstring.in + A /trunk/asymptote/runsystem.in + M /trunk/asymptote/runtime.in + A /trunk/asymptote/runtriple.in + +Split runtime further. + +------------------------------------------------------------------------ +r4617 | jcbowman | 2009-08-20 06:18:19 +0200 (Thu, 20 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/Makefile.in + M /trunk/asymptote/angle.h + M /trunk/asymptote/builtin.cc + M /trunk/asymptote/exp.cc + M /trunk/asymptote/runtime.in + M /trunk/asymptote/runtimebase.in + M /trunk/asymptote/types.cc + +Split runtime further. + +------------------------------------------------------------------------ +r4616 | jcbowman | 2009-08-20 06:06:02 +0200 (Thu, 20 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/Makefile.in + M /trunk/asymptote/builtin.cc + M /trunk/asymptote/runhistory.in + M /trunk/asymptote/runtime.in + M /trunk/asymptote/types.cc + +Split runtime.in further. + +------------------------------------------------------------------------ +r4615 | jcbowman | 2009-08-20 01:23:45 +0200 (Thu, 20 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/Makefile.in + M /trunk/asymptote/application.cc + M /trunk/asymptote/asymptote.spec + D /trunk/asymptote/backtrace.in + M /trunk/asymptote/builtin.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/exp.cc + M /trunk/asymptote/interact.cc + M /trunk/asymptote/newexp.cc + A /trunk/asymptote/runarray.in + A /trunk/asymptote/runbacktrace.in (from /trunk/asymptote/backtrace.in:4614) + A /trunk/asymptote/runhistory.in + A /trunk/asymptote/runlabel.in + A /trunk/asymptote/runpicture.in + M /trunk/asymptote/runtime.in + M /trunk/asymptote/runtimebase.in + M /trunk/asymptote/types.cc + M /trunk/asymptote/varinit.cc + +Start splitting runtime.in. + +------------------------------------------------------------------------ +r4614 | jcbowman | 2009-08-19 15:52:08 +0200 (Wed, 19 Aug 2009) | 2 lines +Changed paths: + A /trunk/asymptote/examples/splitpatch.asy (from /trunk/asymptote/examples/surfacesplit.asy:4613) + D /trunk/asymptote/examples/surfacesplit.asy + +Rename example. + +------------------------------------------------------------------------ +r4613 | jcbowman | 2009-08-19 09:12:04 +0200 (Wed, 19 Aug 2009) | 2 lines +Changed paths: + D /trunk/asymptote/doc/surfacesplit.asy + A /trunk/asymptote/examples/surfacesplit.asy (from /trunk/asymptote/doc/surfacesplit.asy:4611) + +Move new example to examples directory. + +------------------------------------------------------------------------ +r4612 | jcbowman | 2009-08-19 09:08:56 +0200 (Wed, 19 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three.asy + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/examples/NURBSsurface.asy + M /trunk/asymptote/runtime.in + +Extend NURBS interface. + +------------------------------------------------------------------------ +r4611 | catuneanu | 2009-08-19 06:08:55 +0200 (Wed, 19 Aug 2009) | 1 line +Changed paths: + M /trunk/asymptote/base/three_surface.asy + A /trunk/asymptote/doc/surfacesplit.asy + +Added structure pertaining to recursive subdivision of patches. Added example of use in surfacesplit.asy. +------------------------------------------------------------------------ +r4610 | jcbowman | 2009-08-18 18:30:30 +0200 (Tue, 18 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/builtin.cc + +Remove obsolete function. + +------------------------------------------------------------------------ +r4609 | jcbowman | 2009-08-17 08:16:29 +0200 (Mon, 17 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/runtime.in + +Move approximate NURBS bounds to C++ code. + +------------------------------------------------------------------------ +r4608 | jcbowman | 2009-08-16 23:50:08 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/virtualfieldaccess.cc + +Remove inline qualifier. + +------------------------------------------------------------------------ +r4607 | jcbowman | 2009-08-16 23:44:05 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three.asy + +Fix perspective PRC viewportmargin. + +------------------------------------------------------------------------ +r4606 | jcbowman | 2009-08-16 22:57:48 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/array.h + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + M /trunk/asymptote/examples/NURBSsurface.asy + M /trunk/asymptote/examples/pathintersectsurface.asy + M /trunk/asymptote/runtime.in + +Enable rational NURBS. + +------------------------------------------------------------------------ +r4605 | jcbowman | 2009-08-16 22:46:04 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/Makefile.in + +For clarity, use single quotes instead of double quotes. + +------------------------------------------------------------------------ +r4604 | jcbowman | 2009-08-16 19:08:20 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/path3.cc + +Compare to control point bounding box rather than patch bounding box. + +------------------------------------------------------------------------ +r4603 | jcbowman | 2009-08-16 18:06:11 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/examples/spectrum.asy + +Fix comment. + +------------------------------------------------------------------------ +r4602 | jcbowman | 2009-08-16 09:19:43 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/base/three_surface.asy + M /trunk/asymptote/drawsurface.cc + M /trunk/asymptote/drawsurface.h + A /trunk/asymptote/examples/NURBSsurface.asy + M /trunk/asymptote/examples/animations/earthmoon.asy + M /trunk/asymptote/runtime.in + +Add preliminary NURBS support (so far only implemented for PRC). + +------------------------------------------------------------------------ +r4601 | jcbowman | 2009-08-16 04:53:15 +0200 (Sun, 16 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/doc/asymptote.sty + +Clarify asymptote.sty license. + +------------------------------------------------------------------------ +r4600 | jcbowman | 2009-08-15 17:38:41 +0200 (Sat, 15 Aug 2009) | 2 lines +Changed paths: + M /trunk/asymptote/doc/asymptote.sty + M /trunk/asymptote/doc/asymptote.texi + +Remove unwanted spaces in asymptote.sty. + +------------------------------------------------------------------------ +r4599 | jcbowman | 2009-08-15 11:01:42 +0200 (Sat, 15 Aug 2009) | 1 line +Changed paths: + M /trunk/asymptote/configure.ac + +Increment version to 1.84svn. +------------------------------------------------------------------------ +r4598 | jcbowman | 2009-08-15 09:16:08 +0200 (Sat, 15 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/png/Makefile.in Fix dependency. ------------------------------------------------------------------------ -r4597 | jcbowman | 2009-08-15 00:28:59 -0600 (Sat, 15 Aug 2009) | 4 lines +r4597 | jcbowman | 2009-08-15 08:28:59 +0200 (Sat, 15 Aug 2009) | 4 lines Changed paths: M /trunk/asymptote/examples/Klein.asy A /trunk/asymptote/examples/spectrum.asy @@ -16,7 +418,7 @@ Embed parametric equations on Klein bottle. Add new example. ------------------------------------------------------------------------ -r4596 | jcbowman | 2009-08-15 00:17:32 -0600 (Sat, 15 Aug 2009) | 2 lines +r4596 | jcbowman | 2009-08-15 08:17:32 +0200 (Sat, 15 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/configure.ac @@ -24,7 +426,7 @@ Changed paths: Improve diagnostics for missing libz library or texi2dvi program. ------------------------------------------------------------------------ -r4595 | jcbowman | 2009-08-14 23:25:57 -0600 (Fri, 14 Aug 2009) | 2 lines +r4595 | jcbowman | 2009-08-15 07:25:57 +0200 (Sat, 15 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_shipout.asy @@ -36,14 +438,14 @@ Changed paths: Add light argument to fit() and shipout(). ------------------------------------------------------------------------ -r4594 | jcbowman | 2009-08-14 22:36:55 -0600 (Fri, 14 Aug 2009) | 2 lines +r4594 | jcbowman | 2009-08-15 06:36:55 +0200 (Sat, 15 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Remove redundant angle arguments. ------------------------------------------------------------------------ -r4593 | jcbowman | 2009-08-14 21:57:06 -0600 (Fri, 14 Aug 2009) | 2 lines +r4593 | jcbowman | 2009-08-15 05:57:06 +0200 (Sat, 15 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -51,14 +453,14 @@ Changed paths: Remove unwanted quotes from LaTeX jobname. ------------------------------------------------------------------------ -r4592 | jcbowman | 2009-08-14 17:05:07 -0600 (Fri, 14 Aug 2009) | 2 lines +r4592 | jcbowman | 2009-08-15 01:05:07 +0200 (Sat, 15 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix display of generated file names with spaces. ------------------------------------------------------------------------ -r4591 | jcbowman | 2009-08-14 09:05:32 -0600 (Fri, 14 Aug 2009) | 2 lines +r4591 | jcbowman | 2009-08-14 17:05:32 +0200 (Fri, 14 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/types.cc M /trunk/asymptote/types.h @@ -66,13 +468,13 @@ Changed paths: Check only primitive types for virtual file mode members. ------------------------------------------------------------------------ -r4590 | pivaldi | 2009-08-14 08:50:49 -0600 (Fri, 14 Aug 2009) | 1 line +r4590 | pivaldi | 2009-08-14 16:50:49 +0200 (Fri, 14 Aug 2009) | 1 line Changed paths: M /trunk/asymptote/base/geometry.asy Removing duplicated text of license ------------------------------------------------------------------------ -r4589 | jcbowman | 2009-08-14 04:19:54 -0600 (Fri, 14 Aug 2009) | 2 lines +r4589 | jcbowman | 2009-08-14 12:19:54 +0200 (Fri, 14 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/obj.asy M /trunk/asymptote/types.cc @@ -80,7 +482,7 @@ Changed paths: Restrict file modes to ty_file. ------------------------------------------------------------------------ -r4588 | jcbowman | 2009-08-14 04:02:48 -0600 (Fri, 14 Aug 2009) | 2 lines +r4588 | jcbowman | 2009-08-14 12:02:48 +0200 (Fri, 14 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/tests/array/delete.asy M /trunk/asymptote/tests/array/fields.asy @@ -89,7 +491,7 @@ Changed paths: Update tests. ------------------------------------------------------------------------ -r4587 | jcbowman | 2009-08-14 03:41:41 -0600 (Fri, 14 Aug 2009) | 3 lines +r4587 | jcbowman | 2009-08-14 11:41:41 +0200 (Fri, 14 Aug 2009) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/diatom.asy @@ -105,7 +507,7 @@ Make file mode functions virtual members; this backwards incompatibility requires that line(file f) be changed to f.line(), etc. ------------------------------------------------------------------------ -r4586 | jcbowman | 2009-08-13 22:36:05 -0600 (Thu, 13 Aug 2009) | 3 lines +r4586 | jcbowman | 2009-08-14 06:36:05 +0200 (Fri, 14 Aug 2009) | 3 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/obj.asy @@ -124,7 +526,7 @@ Remove obsolete cyclicflag and void cyclic(bool) functions now that the cyclic member of an array is writeable. ------------------------------------------------------------------------ -r4585 | jcbowman | 2009-08-13 22:06:27 -0600 (Thu, 13 Aug 2009) | 2 lines +r4585 | jcbowman | 2009-08-14 06:06:27 +0200 (Fri, 14 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/slidedemo.asy @@ -133,7 +535,7 @@ Changed paths: Don't overwrite viewportmargin. ------------------------------------------------------------------------ -r4584 | jcbowman | 2009-08-12 17:33:31 -0600 (Wed, 12 Aug 2009) | 2 lines +r4584 | jcbowman | 2009-08-13 01:33:31 +0200 (Thu, 13 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -141,14 +543,14 @@ Changed paths: Check ASYMPTOTE_HOME instead of ~/.asy in search path. ------------------------------------------------------------------------ -r4583 | jcbowman | 2009-08-12 16:12:31 -0600 (Wed, 12 Aug 2009) | 2 lines +r4583 | jcbowman | 2009-08-13 00:12:31 +0200 (Thu, 13 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix texpath initialization. ------------------------------------------------------------------------ -r4582 | jcbowman | 2009-08-11 01:32:50 -0600 (Tue, 11 Aug 2009) | 2 lines +r4582 | jcbowman | 2009-08-11 09:32:50 +0200 (Tue, 11 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/trumpet.asy @@ -156,28 +558,28 @@ Changed paths: Increase linegranularity. ------------------------------------------------------------------------ -r4581 | jcbowman | 2009-08-10 23:38:34 -0600 (Mon, 10 Aug 2009) | 2 lines +r4581 | jcbowman | 2009-08-11 07:38:34 +0200 (Tue, 11 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix splitting indices. ------------------------------------------------------------------------ -r4580 | jcbowman | 2009-08-10 22:28:47 -0600 (Mon, 10 Aug 2009) | 2 lines +r4580 | jcbowman | 2009-08-11 06:28:47 +0200 (Tue, 11 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix definition of normal in regularize. ------------------------------------------------------------------------ -r4579 | jcbowman | 2009-08-10 21:27:22 -0600 (Mon, 10 Aug 2009) | 2 lines +r4579 | jcbowman | 2009-08-11 05:27:22 +0200 (Tue, 11 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/spiral3.asy Improve example. ------------------------------------------------------------------------ -r4578 | jcbowman | 2009-08-10 21:21:17 -0600 (Mon, 10 Aug 2009) | 2 lines +r4578 | jcbowman | 2009-08-11 05:21:17 +0200 (Tue, 11 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/graph_splinetype.asy @@ -197,7 +599,7 @@ Changed paths: Use splined parametric surfaces to implement smooth thick lines. ------------------------------------------------------------------------ -r4577 | jcbowman | 2009-08-10 11:28:37 -0600 (Mon, 10 Aug 2009) | 4 lines +r4577 | jcbowman | 2009-08-10 19:28:37 +0200 (Mon, 10 Aug 2009) | 4 lines Changed paths: M /trunk/asymptote/drawclipbegin.h M /trunk/asymptote/drawclipend.h @@ -210,14 +612,14 @@ since the \beginpicture...\endpicture environment is still broken; this only affects the clipping of labels outside the bounding box.). ------------------------------------------------------------------------ -r4576 | jcbowman | 2009-08-09 15:47:06 -0600 (Sun, 09 Aug 2009) | 2 lines +r4576 | jcbowman | 2009-08-09 23:47:06 +0200 (Sun, 09 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/tube.asy Remove private qualifier from rmf. ------------------------------------------------------------------------ -r4575 | jcbowman | 2009-08-09 01:34:45 -0600 (Sun, 09 Aug 2009) | 2 lines +r4575 | jcbowman | 2009-08-09 09:34:45 +0200 (Sun, 09 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -227,7 +629,7 @@ Changed paths: Copy transformation T in projection.copy(). ------------------------------------------------------------------------ -r4574 | jcbowman | 2009-08-09 00:49:51 -0600 (Sun, 09 Aug 2009) | 14 lines +r4574 | jcbowman | 2009-08-09 08:49:51 +0200 (Sun, 09 Aug 2009) | 14 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/three.asy @@ -264,14 +666,14 @@ Add rendermargin parameter. Add triple dir(explicit triple) function for consistency. ------------------------------------------------------------------------ -r4573 | jcbowman | 2009-08-08 13:00:47 -0600 (Sat, 08 Aug 2009) | 2 lines +r4573 | jcbowman | 2009-08-08 21:00:47 +0200 (Sat, 08 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_light.asy Tune Headlamp. ------------------------------------------------------------------------ -r4572 | jcbowman | 2009-08-06 20:38:26 -0600 (Thu, 06 Aug 2009) | 4 lines +r4572 | jcbowman | 2009-08-07 04:38:26 +0200 (Fri, 07 Aug 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -282,14 +684,14 @@ Add labelsurface function. Add min(frame, projection) and max(frame, projection). ------------------------------------------------------------------------ -r4571 | hammera | 2009-08-04 11:17:53 -0600 (Tue, 04 Aug 2009) | 2 lines +r4571 | hammera | 2009-08-04 19:17:53 +0200 (Tue, 04 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.pl Added more error-checking to runtime.pl. ------------------------------------------------------------------------ -r4570 | jcbowman | 2009-08-04 00:35:17 -0600 (Tue, 04 Aug 2009) | 6 lines +r4570 | jcbowman | 2009-08-04 08:35:17 +0200 (Tue, 04 Aug 2009) | 6 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -311,7 +713,7 @@ Remove viewportfactor and anglefactor; increase angleprecision. Cache modelview matrix. ------------------------------------------------------------------------ -r4569 | hammera | 2009-08-03 13:48:16 -0600 (Mon, 03 Aug 2009) | 2 lines +r4569 | hammera | 2009-08-03 21:48:16 +0200 (Mon, 03 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/genv.cc @@ -322,7 +724,7 @@ Changed paths: Refactored pushing and popping processData. ------------------------------------------------------------------------ -r4568 | jcbowman | 2009-08-01 14:03:12 -0600 (Sat, 01 Aug 2009) | 2 lines +r4568 | jcbowman | 2009-08-01 22:03:12 +0200 (Sat, 01 Aug 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/tree.asy @@ -331,14 +733,14 @@ Changed paths: Simplify example. ------------------------------------------------------------------------ -r4567 | hammera | 2009-07-31 10:39:57 -0600 (Fri, 31 Jul 2009) | 2 lines +r4567 | hammera | 2009-07-31 18:39:57 +0200 (Fri, 31 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/TODO Removed TODO items I no longer feel like doing. ------------------------------------------------------------------------ -r4566 | hammera | 2009-07-30 14:22:52 -0600 (Thu, 30 Jul 2009) | 2 lines +r4566 | hammera | 2009-07-30 22:22:52 +0200 (Thu, 30 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/builtin.cc @@ -347,7 +749,7 @@ Changed paths: Removed menv. ------------------------------------------------------------------------ -r4565 | hammera | 2009-07-30 13:19:42 -0600 (Thu, 30 Jul 2009) | 2 lines +r4565 | hammera | 2009-07-30 21:19:42 +0200 (Thu, 30 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/TODO @@ -360,7 +762,7 @@ Changed paths: Added support for splitting runtime.in into several files. ------------------------------------------------------------------------ -r4564 | jcbowman | 2009-07-30 08:44:44 -0600 (Thu, 30 Jul 2009) | 2 lines +r4564 | jcbowman | 2009-07-30 16:44:44 +0200 (Thu, 30 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy A /trunk/asymptote/base/graph_splinetype.asy (from /trunk/asymptote/base/splinetype.asy:4561) @@ -370,21 +772,21 @@ Changed paths: Rename splinetype.asy to graph_splinetype.asy. ------------------------------------------------------------------------ -r4563 | jcbowman | 2009-07-29 00:36:18 -0600 (Wed, 29 Jul 2009) | 2 lines +r4563 | jcbowman | 2009-07-29 08:36:18 +0200 (Wed, 29 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Add uequals and vequals functions for indexed surfaces. ------------------------------------------------------------------------ -r4562 | jcbowman | 2009-07-29 00:35:28 -0600 (Wed, 29 Jul 2009) | 2 lines +r4562 | jcbowman | 2009-07-29 08:35:28 +0200 (Wed, 29 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Enable getstring with --interactive even if not a tty. ------------------------------------------------------------------------ -r4561 | jcbowman | 2009-07-28 01:17:37 -0600 (Tue, 28 Jul 2009) | 4 lines +r4561 | jcbowman | 2009-07-28 09:17:37 +0200 (Tue, 28 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -399,14 +801,14 @@ Add surface indices. Add nonuniform parametric surface routine. ------------------------------------------------------------------------ -r4560 | jcbowman | 2009-07-27 14:53:25 -0600 (Mon, 27 Jul 2009) | 2 lines +r4560 | jcbowman | 2009-07-27 22:53:25 +0200 (Mon, 27 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix formatting. ------------------------------------------------------------------------ -r4559 | jcbowman | 2009-07-27 14:25:07 -0600 (Mon, 27 Jul 2009) | 3 lines +r4559 | jcbowman | 2009-07-27 22:25:07 +0200 (Mon, 27 Jul 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three_surface.asy @@ -414,7 +816,7 @@ Separate code to split a path into nondegenerate Coons patches out of surface constructor. ------------------------------------------------------------------------ -r4558 | jcbowman | 2009-07-27 10:17:48 -0600 (Mon, 27 Jul 2009) | 2 lines +r4558 | jcbowman | 2009-07-27 18:17:48 +0200 (Mon, 27 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/examples/animations/glmovie.asy @@ -423,14 +825,14 @@ Changed paths: Generalize extrude. ------------------------------------------------------------------------ -r4557 | hammera | 2009-07-27 00:24:19 -0600 (Mon, 27 Jul 2009) | 2 lines +r4557 | hammera | 2009-07-27 08:24:19 +0200 (Mon, 27 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/TODO Removed finished TODO item. ------------------------------------------------------------------------ -r4556 | hammera | 2009-07-27 00:23:45 -0600 (Mon, 27 Jul 2009) | 2 lines +r4556 | hammera | 2009-07-27 08:23:45 +0200 (Mon, 27 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -438,7 +840,7 @@ Changed paths: Made more compact bytecode for pushing defualt arguments onto the stack. ------------------------------------------------------------------------ -r4555 | hammera | 2009-07-26 23:55:06 -0600 (Sun, 26 Jul 2009) | 2 lines +r4555 | hammera | 2009-07-27 07:55:06 +0200 (Mon, 27 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/builtin.cc @@ -463,7 +865,7 @@ Changed paths: Added detailed output for debugging bytecode. ------------------------------------------------------------------------ -r4554 | hammera | 2009-07-26 14:26:02 -0600 (Sun, 26 Jul 2009) | 2 lines +r4554 | hammera | 2009-07-26 22:26:02 +0200 (Sun, 26 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/item.h M /trunk/asymptote/program.cc @@ -474,14 +876,14 @@ Changed paths: Changed debugging output for DEBUG_STACK. ------------------------------------------------------------------------ -r4553 | jcbowman | 2009-07-25 23:35:36 -0600 (Sat, 25 Jul 2009) | 2 lines +r4553 | jcbowman | 2009-07-26 07:35:36 +0200 (Sun, 26 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r4552 | jcbowman | 2009-07-25 16:39:31 -0600 (Sat, 25 Jul 2009) | 2 lines +r4552 | jcbowman | 2009-07-26 00:39:31 +0200 (Sun, 26 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/drawsurface.cc @@ -491,7 +893,7 @@ Changed paths: Implement empirical translation between OpenGL and PRC shininess. ------------------------------------------------------------------------ -r4551 | hammera | 2009-07-25 10:31:06 -0600 (Sat, 25 Jul 2009) | 2 lines +r4551 | hammera | 2009-07-25 18:31:06 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/coder.cc @@ -508,7 +910,7 @@ Changed paths: Added preprocessor option to print names of bltin functions. ------------------------------------------------------------------------ -r4550 | hammera | 2009-07-25 10:12:38 -0600 (Sat, 25 Jul 2009) | 2 lines +r4550 | hammera | 2009-07-25 18:12:38 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/stm.cc @@ -516,7 +918,7 @@ Changed paths: Changed formatting of interactive write for overloaded variables. ------------------------------------------------------------------------ -r4549 | hammera | 2009-07-25 10:11:39 -0600 (Sat, 25 Jul 2009) | 2 lines +r4549 | hammera | 2009-07-25 18:11:39 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/types.cc @@ -525,14 +927,14 @@ Changed paths: Automated definition of IntArray, etc. ------------------------------------------------------------------------ -r4548 | jcbowman | 2009-07-25 09:58:38 -0600 (Sat, 25 Jul 2009) | 2 lines +r4548 | jcbowman | 2009-07-25 17:58:38 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix viewportshift flicker. ------------------------------------------------------------------------ -r4547 | jcbowman | 2009-07-25 02:05:50 -0600 (Sat, 25 Jul 2009) | 4 lines +r4547 | jcbowman | 2009-07-25 10:05:50 +0200 (Sat, 25 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/three.asy @@ -542,21 +944,21 @@ Embed 2D frame. Improve OpenGL movie generation. ------------------------------------------------------------------------ -r4546 | jcbowman | 2009-07-25 00:41:07 -0600 (Sat, 25 Jul 2009) | 2 lines +r4546 | jcbowman | 2009-07-25 08:41:07 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Remove diagnostic. ------------------------------------------------------------------------ -r4545 | jcbowman | 2009-07-25 00:01:06 -0600 (Sat, 25 Jul 2009) | 2 lines +r4545 | jcbowman | 2009-07-25 08:01:06 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation on suppressing warnings. ------------------------------------------------------------------------ -r4544 | jcbowman | 2009-07-24 23:57:15 -0600 (Fri, 24 Jul 2009) | 2 lines +r4544 | jcbowman | 2009-07-25 07:57:15 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/geometry.asy @@ -577,28 +979,28 @@ Changed paths: Allow asy warnings to be disabled. ------------------------------------------------------------------------ -r4543 | jcbowman | 2009-07-24 23:54:43 -0600 (Fri, 24 Jul 2009) | 2 lines +r4543 | jcbowman | 2009-07-25 07:54:43 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy Delete intermediate files. ------------------------------------------------------------------------ -r4542 | jcbowman | 2009-07-24 19:55:40 -0600 (Fri, 24 Jul 2009) | 2 lines +r4542 | jcbowman | 2009-07-25 03:55:40 +0200 (Sat, 25 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/util.h Add missing typedef. ------------------------------------------------------------------------ -r4541 | hammera | 2009-07-24 02:07:57 -0600 (Fri, 24 Jul 2009) | 2 lines +r4541 | hammera | 2009-07-24 10:07:57 +0200 (Fri, 24 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/stm.cc Write type info for variables on the interactive prompt. ------------------------------------------------------------------------ -r4540 | hammera | 2009-07-24 01:45:10 -0600 (Fri, 24 Jul 2009) | 2 lines +r4540 | hammera | 2009-07-24 09:45:10 +0200 (Fri, 24 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/settings.cc @@ -607,7 +1009,7 @@ Changed paths: Made overloaded warning for interactive write less scary. ------------------------------------------------------------------------ -r4539 | hammera | 2009-07-24 01:42:07 -0600 (Fri, 24 Jul 2009) | 2 lines +r4539 | hammera | 2009-07-24 09:42:07 +0200 (Fri, 24 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/name.cc M /trunk/asymptote/virtualfieldaccess.cc @@ -616,14 +1018,14 @@ Changed paths: Minor changes to virtual fields. ------------------------------------------------------------------------ -r4538 | hammera | 2009-07-23 19:24:46 -0600 (Thu, 23 Jul 2009) | 2 lines +r4538 | hammera | 2009-07-24 03:24:46 +0200 (Fri, 24 Jul 2009) | 2 lines Changed paths: A /trunk/asymptote/tests/array/fields.asy Add automated testing of array virtual fields. ------------------------------------------------------------------------ -r4537 | hammera | 2009-07-23 19:20:22 -0600 (Thu, 23 Jul 2009) | 2 lines +r4537 | hammera | 2009-07-24 03:20:22 +0200 (Fri, 24 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/access.cc @@ -636,7 +1038,7 @@ Changed paths: Implemented writing to virtual fields. ------------------------------------------------------------------------ -r4536 | jcbowman | 2009-07-23 11:04:54 -0600 (Thu, 23 Jul 2009) | 2 lines +r4536 | jcbowman | 2009-07-23 19:04:54 +0200 (Thu, 23 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/syzygy.asy @@ -644,7 +1046,7 @@ Changed paths: Resolve ambiguity. ------------------------------------------------------------------------ -r4535 | jcbowman | 2009-07-23 01:20:35 -0600 (Thu, 23 Jul 2009) | 9 lines +r4535 | jcbowman | 2009-07-23 09:20:35 +0200 (Thu, 23 Jul 2009) | 9 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/animation.asy @@ -673,49 +1075,49 @@ Add example of inset graph to xsin1x.asy. Improve animation fitting to guarantee a single transformation for all pictures. ------------------------------------------------------------------------ -r4534 | jcbowman | 2009-07-21 10:59:05 -0600 (Tue, 21 Jul 2009) | 2 lines +r4534 | jcbowman | 2009-07-21 18:59:05 +0200 (Tue, 21 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Extend embed(frame). ------------------------------------------------------------------------ -r4533 | jcbowman | 2009-07-21 01:10:31 -0600 (Tue, 21 Jul 2009) | 2 lines +r4533 | jcbowman | 2009-07-21 09:10:31 +0200 (Tue, 21 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Factor 3D fitting routine. ------------------------------------------------------------------------ -r4532 | jcbowman | 2009-07-21 00:14:50 -0600 (Tue, 21 Jul 2009) | 2 lines +r4532 | jcbowman | 2009-07-21 08:14:50 +0200 (Tue, 21 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Remove extra comma. ------------------------------------------------------------------------ -r4531 | jcbowman | 2009-07-20 21:44:59 -0600 (Mon, 20 Jul 2009) | 2 lines +r4531 | jcbowman | 2009-07-21 05:44:59 +0200 (Tue, 21 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Add missing picture sizing. ------------------------------------------------------------------------ -r4530 | hammera | 2009-07-20 15:12:11 -0600 (Mon, 20 Jul 2009) | 2 lines +r4530 | hammera | 2009-07-20 23:12:11 +0200 (Mon, 20 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Added routines for stepping through external animations in slides. ------------------------------------------------------------------------ -r4529 | jcbowman | 2009-07-20 00:35:29 -0600 (Mon, 20 Jul 2009) | 1 line +r4529 | jcbowman | 2009-07-20 08:35:29 +0200 (Mon, 20 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.83svn. ------------------------------------------------------------------------ -r4528 | jcbowman | 2009-07-19 22:57:37 -0600 (Sun, 19 Jul 2009) | 2 lines +r4528 | jcbowman | 2009-07-20 06:57:37 +0200 (Mon, 20 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/labelpath3.asy M /trunk/asymptote/base/three.asy @@ -726,7 +1128,7 @@ Changed paths: Use a consistent approximation for drawing tube centers. ------------------------------------------------------------------------ -r4527 | jcbowman | 2009-07-19 21:35:45 -0600 (Sun, 19 Jul 2009) | 2 lines +r4527 | jcbowman | 2009-07-20 05:35:45 +0200 (Mon, 20 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/main.cc @@ -735,7 +1137,7 @@ Changed paths: Fix threaded exports. ------------------------------------------------------------------------ -r4526 | jcbowman | 2009-07-18 15:26:12 -0600 (Sat, 18 Jul 2009) | 2 lines +r4526 | jcbowman | 2009-07-18 23:26:12 +0200 (Sat, 18 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/inlinemovie3.tex M /trunk/asymptote/pen.h @@ -744,14 +1146,14 @@ Changed paths: Respect -gray and -bw in PRC output. ------------------------------------------------------------------------ -r4525 | jcbowman | 2009-07-17 23:35:20 -0600 (Fri, 17 Jul 2009) | 2 lines +r4525 | jcbowman | 2009-07-18 07:35:20 +0200 (Sat, 18 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add default argument to transform3(projection). ------------------------------------------------------------------------ -r4524 | jcbowman | 2009-07-17 22:19:35 -0600 (Fri, 17 Jul 2009) | 2 lines +r4524 | jcbowman | 2009-07-18 06:19:35 +0200 (Sat, 18 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/examples/lever.asy @@ -762,7 +1164,7 @@ Changed paths: Fix texpath fontsize with PDF tex engines. ------------------------------------------------------------------------ -r4523 | jcbowman | 2009-07-17 19:55:57 -0600 (Fri, 17 Jul 2009) | 2 lines +r4523 | jcbowman | 2009-07-18 03:55:57 +0200 (Sat, 18 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/datagraph.asy M /trunk/asymptote/doc/diatom.asy @@ -777,33 +1179,33 @@ Changed paths: Add missing pt units. ------------------------------------------------------------------------ -r4522 | jcbowman | 2009-07-14 00:22:41 -0600 (Tue, 14 Jul 2009) | 1 line +r4522 | jcbowman | 2009-07-14 08:22:41 +0200 (Tue, 14 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.82svn. ------------------------------------------------------------------------ -r4521 | jcbowman | 2009-07-13 22:36:37 -0600 (Mon, 13 Jul 2009) | 2 lines +r4521 | jcbowman | 2009-07-14 06:36:37 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix initial angle calculation. ------------------------------------------------------------------------ -r4520 | jcbowman | 2009-07-13 21:18:26 -0600 (Mon, 13 Jul 2009) | 1 line +r4520 | jcbowman | 2009-07-14 05:18:26 +0200 (Tue, 14 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/glrender.cc Improve motion detection. ------------------------------------------------------------------------ -r4519 | jcbowman | 2009-07-13 21:02:58 -0600 (Mon, 13 Jul 2009) | 1 line +r4519 | jcbowman | 2009-07-14 05:02:58 +0200 (Tue, 14 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc Reinstate doubleclick motion detection. ------------------------------------------------------------------------ -r4518 | jcbowman | 2009-07-13 20:05:06 -0600 (Mon, 13 Jul 2009) | 2 lines +r4518 | jcbowman | 2009-07-14 04:05:06 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/glrender.cc @@ -811,21 +1213,21 @@ Changed paths: Approximate off-axis projections (viewportshift) in PRC. ------------------------------------------------------------------------ -r4517 | jcbowman | 2009-07-13 18:55:52 -0600 (Mon, 13 Jul 2009) | 2 lines +r4517 | jcbowman | 2009-07-14 02:55:52 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/util.cc Remove unused include. ------------------------------------------------------------------------ -r4516 | jcbowman | 2009-07-13 18:51:32 -0600 (Mon, 13 Jul 2009) | 2 lines +r4516 | jcbowman | 2009-07-14 02:51:32 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Fix lineskip units. ------------------------------------------------------------------------ -r4515 | jcbowman | 2009-07-13 18:41:39 -0600 (Mon, 13 Jul 2009) | 2 lines +r4515 | jcbowman | 2009-07-14 02:41:39 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/runtime.in @@ -833,7 +1235,7 @@ Changed paths: Rename minbound(triple[][], triple) to minbezier, etc. ------------------------------------------------------------------------ -r4514 | jcbowman | 2009-07-13 18:02:14 -0600 (Mon, 13 Jul 2009) | 2 lines +r4514 | jcbowman | 2009-07-14 02:02:14 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/runtime.in @@ -841,7 +1243,7 @@ Changed paths: Remove unused format argument from xasy. ------------------------------------------------------------------------ -r4513 | jcbowman | 2009-07-13 17:50:26 -0600 (Mon, 13 Jul 2009) | 2 lines +r4513 | jcbowman | 2009-07-14 01:50:26 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -851,7 +1253,7 @@ Changed paths: Remove obsolete GIF deconstruction format and xformat setting. ------------------------------------------------------------------------ -r4512 | jcbowman | 2009-07-13 17:37:20 -0600 (Mon, 13 Jul 2009) | 2 lines +r4512 | jcbowman | 2009-07-14 01:37:20 +0200 (Tue, 14 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -867,28 +1269,28 @@ Changed paths: Allow single quotation marks in filenames. ------------------------------------------------------------------------ -r4511 | jcbowman | 2009-07-12 22:47:17 -0600 (Sun, 12 Jul 2009) | 2 lines +r4511 | jcbowman | 2009-07-13 06:47:17 +0200 (Mon, 13 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Simplify code. ------------------------------------------------------------------------ -r4510 | jcbowman | 2009-07-12 22:31:56 -0600 (Sun, 12 Jul 2009) | 2 lines +r4510 | jcbowman | 2009-07-13 06:31:56 +0200 (Mon, 13 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Simplify code; remove cstdarg dependency. ------------------------------------------------------------------------ -r4509 | jcbowman | 2009-07-12 16:31:02 -0600 (Sun, 12 Jul 2009) | 2 lines +r4509 | jcbowman | 2009-07-13 00:31:02 +0200 (Mon, 13 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add other missing path3 functions. ------------------------------------------------------------------------ -r4508 | jcbowman | 2009-07-12 14:48:40 -0600 (Sun, 12 Jul 2009) | 2 lines +r4508 | jcbowman | 2009-07-12 22:48:40 +0200 (Sun, 12 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -899,14 +1301,14 @@ Changed paths: Set executable flag on PostScript files under MSDOS, to allow psviewer="cmd". ------------------------------------------------------------------------ -r4507 | hammera | 2009-07-12 12:30:14 -0600 (Sun, 12 Jul 2009) | 2 lines +r4507 | hammera | 2009-07-12 20:30:14 +0200 (Sun, 12 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Added beginpoint and endpoint for path3. ------------------------------------------------------------------------ -r4506 | jcbowman | 2009-07-11 00:00:43 -0600 (Sat, 11 Jul 2009) | 4 lines +r4506 | jcbowman | 2009-07-11 08:00:43 +0200 (Sat, 11 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.in @@ -919,14 +1321,14 @@ Use "cmd" to request the default MSDOS file association. Change default file association for pdfviewer, display, and animate to cmd. ------------------------------------------------------------------------ -r4505 | jcbowman | 2009-07-10 15:24:29 -0600 (Fri, 10 Jul 2009) | 2 lines +r4505 | jcbowman | 2009-07-10 23:24:29 +0200 (Fri, 10 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/contextfonts.asy Improve illustration of ConTeXT font bug workaround. ------------------------------------------------------------------------ -r4504 | jcbowman | 2009-07-10 15:22:23 -0600 (Fri, 10 Jul 2009) | 4 lines +r4504 | jcbowman | 2009-07-10 23:22:23 +0200 (Fri, 10 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/examples/contextfonts.asy @@ -938,14 +1340,14 @@ Fix font units. Add example of ConTeXT bug workaround for fonts smaller than 12pt. ------------------------------------------------------------------------ -r4503 | jcbowman | 2009-07-09 12:28:50 -0600 (Thu, 09 Jul 2009) | 2 lines +r4503 | jcbowman | 2009-07-09 20:28:50 +0200 (Thu, 09 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix doubleclick type. ------------------------------------------------------------------------ -r4502 | jcbowman | 2009-07-09 12:25:46 -0600 (Thu, 09 Jul 2009) | 2 lines +r4502 | jcbowman | 2009-07-09 20:25:46 +0200 (Thu, 09 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -953,21 +1355,21 @@ Changed paths: Change doubleclick setting to an int. ------------------------------------------------------------------------ -r4501 | jcbowman | 2009-07-09 12:20:40 -0600 (Thu, 09 Jul 2009) | 2 lines +r4501 | jcbowman | 2009-07-09 20:20:40 +0200 (Thu, 09 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Use a portable doubleclick timeout. ------------------------------------------------------------------------ -r4500 | jcbowman | 2009-07-08 09:33:37 -0600 (Wed, 08 Jul 2009) | 2 lines +r4500 | jcbowman | 2009-07-08 17:33:37 +0200 (Wed, 08 Jul 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/lmfit1.asy Add example of lmfit. ------------------------------------------------------------------------ -r4499 | jcbowman | 2009-07-07 17:43:32 -0600 (Tue, 07 Jul 2009) | 6 lines +r4499 | jcbowman | 2009-07-08 01:43:32 +0200 (Wed, 08 Jul 2009) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -978,21 +1380,21 @@ Respect keepAspect flag. Respect projection.autoadjust. ------------------------------------------------------------------------ -r4498 | jcbowman | 2009-07-07 09:26:05 -0600 (Tue, 07 Jul 2009) | 2 lines +r4498 | jcbowman | 2009-07-07 17:26:05 +0200 (Tue, 07 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix targetsize. ------------------------------------------------------------------------ -r4497 | jcbowman | 2009-07-07 09:24:59 -0600 (Tue, 07 Jul 2009) | 2 lines +r4497 | jcbowman | 2009-07-07 17:24:59 +0200 (Tue, 07 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix 3D labels. ------------------------------------------------------------------------ -r4496 | jcbowman | 2009-07-07 08:17:31 -0600 (Tue, 07 Jul 2009) | 3 lines +r4496 | jcbowman | 2009-07-07 16:17:31 +0200 (Tue, 07 Jul 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three_surface.asy @@ -1000,39 +1402,39 @@ Add bool targetsize=true to 3D label routines; this forces labels to be drawn with the size they would have on the target plane. ------------------------------------------------------------------------ -r4495 | jcbowman | 2009-07-06 21:35:38 -0600 (Mon, 06 Jul 2009) | 1 line +r4495 | jcbowman | 2009-07-07 05:35:38 +0200 (Tue, 07 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.81svn. ------------------------------------------------------------------------ -r4494 | jcbowman | 2009-07-06 18:06:06 -0600 (Mon, 06 Jul 2009) | 1 line +r4494 | jcbowman | 2009-07-07 02:06:06 +0200 (Tue, 07 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/xstream.h Reinstate missing prototypes under CYGWIN ------------------------------------------------------------------------ -r4493 | jcbowman | 2009-07-06 17:56:40 -0600 (Mon, 06 Jul 2009) | 1 line +r4493 | jcbowman | 2009-07-07 01:56:40 +0200 (Tue, 07 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/xstream.h Work around missing RPC definition under CYGWIN. ------------------------------------------------------------------------ -r4492 | jcbowman | 2009-07-06 17:23:08 -0600 (Mon, 06 Jul 2009) | 2 lines +r4492 | jcbowman | 2009-07-07 01:23:08 +0200 (Tue, 07 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Simplify code. ------------------------------------------------------------------------ -r4491 | jcbowman | 2009-07-06 15:29:09 -0600 (Mon, 06 Jul 2009) | 2 lines +r4491 | jcbowman | 2009-07-06 23:29:09 +0200 (Mon, 06 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Update asymptote.info in install-prebuilt because of version.texi dependency. ------------------------------------------------------------------------ -r4490 | jcbowman | 2009-07-06 14:49:09 -0600 (Mon, 06 Jul 2009) | 2 lines +r4490 | jcbowman | 2009-07-06 22:49:09 +0200 (Mon, 06 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/errormsg.cc @@ -1044,7 +1446,7 @@ Changed paths: Optionally inform user how to ignore a warning. ------------------------------------------------------------------------ -r4489 | jcbowman | 2009-07-06 13:43:30 -0600 (Mon, 06 Jul 2009) | 6 lines +r4489 | jcbowman | 2009-07-06 21:43:30 +0200 (Mon, 06 Jul 2009) | 6 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -1061,7 +1463,7 @@ Add warn(string) and nowarn(string) functions, along with settings.warnings Change "PATH" to "LOCATION" in error message. ------------------------------------------------------------------------ -r4488 | jcbowman | 2009-07-05 23:02:24 -0600 (Sun, 05 Jul 2009) | 4 lines +r4488 | jcbowman | 2009-07-06 07:02:24 +0200 (Mon, 06 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -1070,21 +1472,21 @@ Mention psview as a better (and free) alternative to gsview for MSDOS users. Update documentation. ------------------------------------------------------------------------ -r4487 | jcbowman | 2009-07-05 22:05:56 -0600 (Sun, 05 Jul 2009) | 2 lines +r4487 | jcbowman | 2009-07-06 06:05:56 +0200 (Mon, 06 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Remove obsolete CYGWIN code. ------------------------------------------------------------------------ -r4486 | jcbowman | 2009-07-05 19:49:35 -0600 (Sun, 05 Jul 2009) | 2 lines +r4486 | jcbowman | 2009-07-06 03:49:35 +0200 (Mon, 06 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Work around u_quad_t conversion conflict. ------------------------------------------------------------------------ -r4485 | jcbowman | 2009-07-05 10:29:05 -0600 (Sun, 05 Jul 2009) | 5 lines +r4485 | jcbowman | 2009-07-05 18:29:05 +0200 (Sun, 05 Jul 2009) | 5 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/builtin.h @@ -1101,14 +1503,14 @@ signed to files. Simplify single precision and signed interface routines. ------------------------------------------------------------------------ -r4484 | jcbowman | 2009-07-05 10:10:35 -0600 (Sun, 05 Jul 2009) | 2 lines +r4484 | jcbowman | 2009-07-05 18:10:35 +0200 (Sun, 05 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/lmfit.asy Add comments. ------------------------------------------------------------------------ -r4483 | jcbowman | 2009-07-04 20:39:50 -0600 (Sat, 04 Jul 2009) | 2 lines +r4483 | jcbowman | 2009-07-05 04:39:50 +0200 (Sun, 05 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/animation.asy @@ -1116,7 +1518,7 @@ Changed paths: Fix animations with global=false. ------------------------------------------------------------------------ -r4482 | jcbowman | 2009-07-04 15:39:12 -0600 (Sat, 04 Jul 2009) | 2 lines +r4482 | jcbowman | 2009-07-04 23:39:12 +0200 (Sat, 04 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/main.cc @@ -1124,7 +1526,7 @@ Changed paths: Use pthread_join instead of pthread_kill. ------------------------------------------------------------------------ -r4481 | jcbowman | 2009-07-04 14:29:24 -0600 (Sat, 04 Jul 2009) | 2 lines +r4481 | jcbowman | 2009-07-04 22:29:24 +0200 (Sat, 04 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/helix.asy M /trunk/asymptote/examples/filesurface.asy @@ -1132,21 +1534,21 @@ Changed paths: Minor simplifications. ------------------------------------------------------------------------ -r4480 | jcbowman | 2009-07-04 13:05:54 -0600 (Sat, 04 Jul 2009) | 2 lines +r4480 | jcbowman | 2009-07-04 21:05:54 +0200 (Sat, 04 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/fftw++.h Update to version 1.04. ------------------------------------------------------------------------ -r4479 | jcbowman | 2009-07-04 12:20:09 -0600 (Sat, 04 Jul 2009) | 2 lines +r4479 | jcbowman | 2009-07-04 20:20:09 +0200 (Sat, 04 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Initialize lighting only in home(). ------------------------------------------------------------------------ -r4478 | jcbowman | 2009-07-04 12:08:30 -0600 (Sat, 04 Jul 2009) | 4 lines +r4478 | jcbowman | 2009-07-04 20:08:30 +0200 (Sat, 04 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -1157,14 +1559,14 @@ Don't use POSIX timers by default due to portability issues. Call home() before quit to return to idle state and reset parameters. ------------------------------------------------------------------------ -r4477 | jcbowman | 2009-07-04 12:05:07 -0600 (Sat, 04 Jul 2009) | 2 lines +r4477 | jcbowman | 2009-07-04 20:05:07 +0200 (Sat, 04 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/main.cc Exit GUI gracefully. ------------------------------------------------------------------------ -r4476 | jcbowman | 2009-07-04 01:53:43 -0600 (Sat, 04 Jul 2009) | 4 lines +r4476 | jcbowman | 2009-07-04 09:53:43 +0200 (Sat, 04 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -1175,7 +1577,7 @@ Force zoom/menu to be unmodified. Update documentation. ------------------------------------------------------------------------ -r4475 | jcbowman | 2009-07-04 01:32:54 -0600 (Sat, 04 Jul 2009) | 9 lines +r4475 | jcbowman | 2009-07-04 09:32:54 +0200 (Sat, 04 Jul 2009) | 9 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -1191,14 +1593,14 @@ Improve doubleclick emulation by adding a timeout (default 200ms). Re-instate default zoom/menu right-button assignment. ------------------------------------------------------------------------ -r4474 | jcbowman | 2009-07-03 16:43:19 -0600 (Fri, 03 Jul 2009) | 2 lines +r4474 | jcbowman | 2009-07-04 00:43:19 +0200 (Sat, 04 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Enable all warnings when debugging. ------------------------------------------------------------------------ -r4473 | jcbowman | 2009-07-03 16:28:54 -0600 (Fri, 03 Jul 2009) | 3 lines +r4473 | jcbowman | 2009-07-04 00:28:54 +0200 (Sat, 04 Jul 2009) | 3 lines Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/settings.h @@ -1208,7 +1610,7 @@ Add setting warn that allows one to enable or disable warnings like writeoverloaded. ------------------------------------------------------------------------ -r4472 | jcbowman | 2009-07-03 01:39:13 -0600 (Fri, 03 Jul 2009) | 4 lines +r4472 | jcbowman | 2009-07-03 09:39:13 +0200 (Fri, 03 Jul 2009) | 4 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/doc/asymptote.texi @@ -1223,20 +1625,20 @@ unused x argument, distinguishing the integer case with a new bool signedint argument before the file. ------------------------------------------------------------------------ -r4471 | jcbowman | 2009-07-02 11:39:13 -0600 (Thu, 02 Jul 2009) | 2 lines +r4471 | jcbowman | 2009-07-02 19:39:13 +0200 (Thu, 02 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fix TeXLive docdir. ------------------------------------------------------------------------ -r4470 | jcbowman | 2009-07-02 01:54:52 -0600 (Thu, 02 Jul 2009) | 1 line +r4470 | jcbowman | 2009-07-02 09:54:52 +0200 (Thu, 02 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.80svn. ------------------------------------------------------------------------ -r4469 | jcbowman | 2009-07-02 00:26:57 -0600 (Thu, 02 Jul 2009) | 2 lines +r4469 | jcbowman | 2009-07-02 08:26:57 +0200 (Thu, 02 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -1244,7 +1646,7 @@ Changed paths: Change default right mouse button assignment from zoom/menu to zoom. ------------------------------------------------------------------------ -r4468 | jcbowman | 2009-07-01 22:00:57 -0600 (Wed, 01 Jul 2009) | 2 lines +r4468 | jcbowman | 2009-07-02 06:00:57 +0200 (Thu, 02 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/settings.cc @@ -1252,13 +1654,13 @@ Changed paths: Fix docdir under TeXLive. ------------------------------------------------------------------------ -r4467 | jcbowman | 2009-07-01 18:23:47 -0600 (Wed, 01 Jul 2009) | 1 line +r4467 | jcbowman | 2009-07-02 02:23:47 +0200 (Thu, 02 Jul 2009) | 1 line Changed paths: M /trunk/asymptote/settings.cc Remove unused code. ------------------------------------------------------------------------ -r4466 | jcbowman | 2009-07-01 16:32:52 -0600 (Wed, 01 Jul 2009) | 2 lines +r4466 | jcbowman | 2009-07-02 00:32:52 +0200 (Thu, 02 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -1267,14 +1669,14 @@ Changed paths: Add viewportshift support for orthographic projections. ------------------------------------------------------------------------ -r4465 | jcbowman | 2009-07-01 02:49:09 -0600 (Wed, 01 Jul 2009) | 2 lines +r4465 | jcbowman | 2009-07-01 10:49:09 +0200 (Wed, 01 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/pipeintersection.asy Improve lighting. ------------------------------------------------------------------------ -r4464 | jcbowman | 2009-07-01 02:31:58 -0600 (Wed, 01 Jul 2009) | 2 lines +r4464 | jcbowman | 2009-07-01 10:31:58 +0200 (Wed, 01 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/glrender.cc @@ -1282,7 +1684,7 @@ Changed paths: Revert orthographic projection and lastzoom changes. ------------------------------------------------------------------------ -r4463 | jcbowman | 2009-07-01 01:06:52 -0600 (Wed, 01 Jul 2009) | 18 lines +r4463 | jcbowman | 2009-07-01 09:06:52 +0200 (Wed, 01 Jul 2009) | 18 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -1314,7 +1716,7 @@ Remove unused code. Remove viewportpadding in favour of viewportmargin. ------------------------------------------------------------------------ -r4462 | jcbowman | 2009-07-01 00:41:37 -0600 (Wed, 01 Jul 2009) | 2 lines +r4462 | jcbowman | 2009-07-01 08:41:37 +0200 (Wed, 01 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -1323,7 +1725,7 @@ Changed paths: Add operator != for 2D arithmetic arrays. ------------------------------------------------------------------------ -r4461 | jcbowman | 2009-07-01 00:32:48 -0600 (Wed, 01 Jul 2009) | 2 lines +r4461 | jcbowman | 2009-07-01 08:32:48 +0200 (Wed, 01 Jul 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy M /trunk/asymptote/examples/odetest.asy @@ -1331,14 +1733,14 @@ Changed paths: Change integrate routines to output all computed values. ------------------------------------------------------------------------ -r4460 | jcbowman | 2009-06-27 01:01:04 -0600 (Sat, 27 Jun 2009) | 2 lines +r4460 | jcbowman | 2009-06-27 09:01:04 +0200 (Sat, 27 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix perp vector calculation. ------------------------------------------------------------------------ -r4459 | jcbowman | 2009-06-26 19:21:52 -0600 (Fri, 26 Jun 2009) | 2 lines +r4459 | jcbowman | 2009-06-27 03:21:52 +0200 (Sat, 27 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -1346,7 +1748,7 @@ Changed paths: Reset mouse motion function. ------------------------------------------------------------------------ -r4458 | jcbowman | 2009-06-26 15:52:42 -0600 (Fri, 26 Jun 2009) | 4 lines +r4458 | jcbowman | 2009-06-26 23:52:42 +0200 (Fri, 26 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -1357,14 +1759,14 @@ Fix segmentation fault in operator == (real[][], real[][]). Add operator == (T[][], T[][]) for all builtin arithmetic types. ------------------------------------------------------------------------ -r4457 | jcbowman | 2009-06-26 00:19:00 -0600 (Fri, 26 Jun 2009) | 2 lines +r4457 | jcbowman | 2009-06-26 08:19:00 +0200 (Fri, 26 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Use $TEXMFCONFIG/asymptote for configuration directory under TeXLive. ------------------------------------------------------------------------ -r4456 | jcbowman | 2009-06-25 23:42:49 -0600 (Thu, 25 Jun 2009) | 2 lines +r4456 | jcbowman | 2009-06-26 07:42:49 +0200 (Fri, 26 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -1372,14 +1774,14 @@ Changed paths: Remove unused code. ------------------------------------------------------------------------ -r4455 | jcbowman | 2009-06-25 02:51:31 -0600 (Thu, 25 Jun 2009) | 2 lines +r4455 | jcbowman | 2009-06-25 10:51:31 +0200 (Thu, 25 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.nsi Remove etc/fstab kludge for cygwin 1.7 since it is no longer needed. ------------------------------------------------------------------------ -r4454 | jcbowman | 2009-06-25 01:27:33 -0600 (Thu, 25 Jun 2009) | 4 lines +r4454 | jcbowman | 2009-06-25 09:27:33 +0200 (Thu, 25 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/base/ode.asy @@ -1388,13 +1790,13 @@ Add E_RK2, E_PC, E_RK3BS exponential integrators. Fix dynamic timestepping; simplify logic. ------------------------------------------------------------------------ -r4453 | jcbowman | 2009-06-24 16:03:23 -0600 (Wed, 24 Jun 2009) | 1 line +r4453 | jcbowman | 2009-06-25 00:03:23 +0200 (Thu, 25 Jun 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.79svn. ------------------------------------------------------------------------ -r4452 | jcbowman | 2009-06-24 13:16:28 -0600 (Wed, 24 Jun 2009) | 2 lines +r4452 | jcbowman | 2009-06-24 21:16:28 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/glrender.cc @@ -1402,7 +1804,7 @@ Changed paths: Fix title message (assuming zoom/menu button is unmodified). ------------------------------------------------------------------------ -r4451 | jcbowman | 2009-06-24 12:26:15 -0600 (Wed, 24 Jun 2009) | 2 lines +r4451 | jcbowman | 2009-06-24 20:26:15 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -1412,7 +1814,7 @@ Changed paths: Fix align. ------------------------------------------------------------------------ -r4450 | jcbowman | 2009-06-24 12:11:02 -0600 (Wed, 24 Jun 2009) | 2 lines +r4450 | jcbowman | 2009-06-24 20:11:02 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/loggraph.asy @@ -1420,7 +1822,7 @@ Changed paths: Update documentation. ------------------------------------------------------------------------ -r4449 | jcbowman | 2009-06-24 11:24:54 -0600 (Wed, 24 Jun 2009) | 2 lines +r4449 | jcbowman | 2009-06-24 19:24:54 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/base/asy-kate.sh @@ -1429,21 +1831,21 @@ Changed paths: Add support for generating syntax highlighting for the KDE editor Kate. ------------------------------------------------------------------------ -r4448 | jcbowman | 2009-06-24 11:17:55 -0600 (Wed, 24 Jun 2009) | 2 lines +r4448 | jcbowman | 2009-06-24 19:17:55 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/png/Makefile.in Remove redundant redundancy. ------------------------------------------------------------------------ -r4447 | jcbowman | 2009-06-24 11:04:49 -0600 (Wed, 24 Jun 2009) | 2 lines +r4447 | jcbowman | 2009-06-24 19:04:49 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.nsi Change exit to exit /b (end currently executing batch file). ------------------------------------------------------------------------ -r4446 | jcbowman | 2009-06-24 01:54:43 -0600 (Wed, 24 Jun 2009) | 2 lines +r4446 | jcbowman | 2009-06-24 09:54:43 +0200 (Wed, 24 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -1453,21 +1855,21 @@ Changed paths: Implement customizable mouse bindings. ------------------------------------------------------------------------ -r4445 | jcbowman | 2009-06-23 10:15:33 -0600 (Tue, 23 Jun 2009) | 2 lines +r4445 | jcbowman | 2009-06-23 18:15:33 +0200 (Tue, 23 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/png/Makefile.in Use --no-warn option for portability. ------------------------------------------------------------------------ -r4444 | jcbowman | 2009-06-23 03:12:03 -0600 (Tue, 23 Jun 2009) | 2 lines +r4444 | jcbowman | 2009-06-23 11:12:03 +0200 (Tue, 23 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix interactive exports. ------------------------------------------------------------------------ -r4443 | jcbowman | 2009-06-22 21:23:59 -0600 (Mon, 22 Jun 2009) | 2 lines +r4443 | jcbowman | 2009-06-23 05:23:59 +0200 (Tue, 23 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/label3.asy M /trunk/asymptote/examples/label3ribbon.asy @@ -1477,14 +1879,14 @@ Changed paths: Increase textwidth and textheight. ------------------------------------------------------------------------ -r4442 | jcbowman | 2009-06-22 13:31:48 -0600 (Mon, 22 Jun 2009) | 2 lines +r4442 | jcbowman | 2009-06-22 21:31:48 +0200 (Mon, 22 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fix configure --disable-gc. ------------------------------------------------------------------------ -r4441 | jcbowman | 2009-06-22 11:48:21 -0600 (Mon, 22 Jun 2009) | 2 lines +r4441 | jcbowman | 2009-06-22 19:48:21 +0200 (Mon, 22 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/main.cc @@ -1494,21 +1896,21 @@ Changed paths: Fix thread locking. ------------------------------------------------------------------------ -r4440 | jcbowman | 2009-06-22 07:59:23 -0600 (Mon, 22 Jun 2009) | 2 lines +r4440 | jcbowman | 2009-06-22 15:59:23 +0200 (Mon, 22 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Make the install-prebuilt target omit texhash. ------------------------------------------------------------------------ -r4439 | jcbowman | 2009-06-22 01:27:24 -0600 (Mon, 22 Jun 2009) | 2 lines +r4439 | jcbowman | 2009-06-22 09:27:24 +0200 (Mon, 22 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/patches/freeglut-cygwin.patch Clean up patch. ------------------------------------------------------------------------ -r4438 | jcbowman | 2009-06-22 01:21:28 -0600 (Mon, 22 Jun 2009) | 2 lines +r4438 | jcbowman | 2009-06-22 09:21:28 +0200 (Mon, 22 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/patches/README A /trunk/asymptote/patches/freeglut-cygwin.patch @@ -1516,7 +1918,7 @@ Changed paths: Add patch to allow version 2.6.0-rc1 of freeglut.dll to be built under CYGWIN. ------------------------------------------------------------------------ -r4437 | jcbowman | 2009-06-22 00:08:19 -0600 (Mon, 22 Jun 2009) | 7 lines +r4437 | jcbowman | 2009-06-22 08:08:19 +0200 (Mon, 22 Jun 2009) | 7 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py M /trunk/asymptote/asymptote.nsi @@ -1534,35 +1936,35 @@ Remove obsolete patches. Delete obsolete _imagingtk.pyd file. ------------------------------------------------------------------------ -r4436 | jcbowman | 2009-06-21 21:24:26 -0600 (Sun, 21 Jun 2009) | 2 lines +r4436 | jcbowman | 2009-06-22 05:24:26 +0200 (Mon, 22 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Prebuilt png files are not included in the CTAN distribution. ------------------------------------------------------------------------ -r4435 | jcbowman | 2009-06-21 12:26:28 -0600 (Sun, 21 Jun 2009) | 2 lines +r4435 | jcbowman | 2009-06-21 20:26:28 +0200 (Sun, 21 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/pen.h Add missing miterlimit defaults. ------------------------------------------------------------------------ -r4434 | jcbowman | 2009-06-19 17:00:10 -0600 (Fri, 19 Jun 2009) | 2 lines +r4434 | jcbowman | 2009-06-20 01:00:10 +0200 (Sat, 20 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix mesh mode. ------------------------------------------------------------------------ -r4433 | jcbowman | 2009-06-19 14:39:49 -0600 (Fri, 19 Jun 2009) | 2 lines +r4433 | jcbowman | 2009-06-19 22:39:49 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Add constructors to derived class example. ------------------------------------------------------------------------ -r4432 | jcbowman | 2009-06-19 14:38:37 -0600 (Fri, 19 Jun 2009) | 4 lines +r4432 | jcbowman | 2009-06-19 22:38:37 +0200 (Fri, 19 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/base/ode.asy @@ -1571,7 +1973,7 @@ Turn off fsal when dynamic=false. Implement E_Euler. ------------------------------------------------------------------------ -r4431 | jcbowman | 2009-06-19 09:42:23 -0600 (Fri, 19 Jun 2009) | 2 lines +r4431 | jcbowman | 2009-06-19 17:42:23 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -1580,27 +1982,27 @@ Changed paths: Respect linegranularity. ------------------------------------------------------------------------ -r4430 | jcbowman | 2009-06-19 09:41:23 -0600 (Fri, 19 Jun 2009) | 2 lines +r4430 | jcbowman | 2009-06-19 17:41:23 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Swap patch and wireframe modes. ------------------------------------------------------------------------ -r4429 | jcbowman | 2009-06-19 02:37:44 -0600 (Fri, 19 Jun 2009) | 1 line +r4429 | jcbowman | 2009-06-19 10:37:44 +0200 (Fri, 19 Jun 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.78svn. ------------------------------------------------------------------------ -r4428 | jcbowman | 2009-06-19 00:53:54 -0600 (Fri, 19 Jun 2009) | 2 lines +r4428 | jcbowman | 2009-06-19 08:53:54 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document the ode module. ------------------------------------------------------------------------ -r4427 | jcbowman | 2009-06-19 00:47:08 -0600 (Fri, 19 Jun 2009) | 4 lines +r4427 | jcbowman | 2009-06-19 08:47:08 +0200 (Fri, 19 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -1611,7 +2013,7 @@ Set viewportmargin=(1,1) in asymptote.sty. Reinstate ceil. ------------------------------------------------------------------------ -r4426 | jcbowman | 2009-06-19 00:45:07 -0600 (Fri, 19 Jun 2009) | 2 lines +r4426 | jcbowman | 2009-06-19 08:45:07 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/torusanimation.asy A /trunk/asymptote/examples/soccerball.asy @@ -1619,7 +2021,7 @@ Changed paths: Update examples. ------------------------------------------------------------------------ -r4425 | jcbowman | 2009-06-18 23:30:24 -0600 (Thu, 18 Jun 2009) | 2 lines +r4425 | jcbowman | 2009-06-19 07:30:24 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/splinetype.asy @@ -1641,28 +2043,28 @@ Changed paths: Implement splined parametric surfaces, based on contribution of Olivier Guibe. ------------------------------------------------------------------------ -r4424 | jcbowman | 2009-06-18 22:14:48 -0600 (Thu, 18 Jun 2009) | 2 lines +r4424 | jcbowman | 2009-06-19 06:14:48 +0200 (Fri, 19 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Move SIGQUIT earlier. ------------------------------------------------------------------------ -r4423 | jcbowman | 2009-06-18 13:48:59 -0600 (Thu, 18 Jun 2009) | 2 lines +r4423 | jcbowman | 2009-06-18 21:48:59 +0200 (Thu, 18 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/splinetype.asy Remove periodicity check. ------------------------------------------------------------------------ -r4422 | jcbowman | 2009-06-18 13:47:22 -0600 (Thu, 18 Jun 2009) | 2 lines +r4422 | jcbowman | 2009-06-18 21:47:22 +0200 (Thu, 18 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Allow different splinetypes in x and y directions. ------------------------------------------------------------------------ -r4421 | jcbowman | 2009-06-18 13:41:12 -0600 (Thu, 18 Jun 2009) | 2 lines +r4421 | jcbowman | 2009-06-18 21:41:12 +0200 (Thu, 18 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy M /trunk/asymptote/examples/odetest.asy @@ -1670,7 +2072,7 @@ Changed paths: Implement FSAL. ------------------------------------------------------------------------ -r4420 | jcbowman | 2009-06-18 11:28:41 -0600 (Thu, 18 Jun 2009) | 2 lines +r4420 | jcbowman | 2009-06-18 19:28:41 +0200 (Thu, 18 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy M /trunk/asymptote/examples/odetest.asy @@ -1678,55 +2080,55 @@ Changed paths: Implement dynamic time stepping in ode solver. ------------------------------------------------------------------------ -r4419 | jcbowman | 2009-06-17 21:01:13 -0600 (Wed, 17 Jun 2009) | 2 lines +r4419 | jcbowman | 2009-06-18 05:01:13 +0200 (Thu, 18 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Rename --enable-tetex-build to --enable-texlive-build. ------------------------------------------------------------------------ -r4418 | jcbowman | 2009-06-17 11:48:42 -0600 (Wed, 17 Jun 2009) | 2 lines +r4418 | jcbowman | 2009-06-17 19:48:42 +0200 (Wed, 17 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix autoformat. ------------------------------------------------------------------------ -r4417 | jcbowman | 2009-06-15 05:06:13 -0600 (Mon, 15 Jun 2009) | 2 lines +r4417 | jcbowman | 2009-06-15 13:06:13 +0200 (Mon, 15 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Simplify sysdir code. ------------------------------------------------------------------------ -r4416 | jcbowman | 2009-06-13 20:54:06 -0600 (Sat, 13 Jun 2009) | 1 line +r4416 | jcbowman | 2009-06-14 04:54:06 +0200 (Sun, 14 Jun 2009) | 1 line Changed paths: M /trunk/asymptote/settings.cc Strip both LF and CR from kpsewhich ------------------------------------------------------------------------ -r4415 | jcbowman | 2009-06-11 20:04:26 -0600 (Thu, 11 Jun 2009) | 2 lines +r4415 | jcbowman | 2009-06-12 04:04:26 +0200 (Fri, 12 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Reinstate viewportfactor. ------------------------------------------------------------------------ -r4414 | jcbowman | 2009-06-11 19:57:21 -0600 (Thu, 11 Jun 2009) | 2 lines +r4414 | jcbowman | 2009-06-12 03:57:21 +0200 (Fri, 12 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy Autogenerate default steps. ------------------------------------------------------------------------ -r4413 | jcbowman | 2009-06-10 23:41:31 -0600 (Wed, 10 Jun 2009) | 2 lines +r4413 | jcbowman | 2009-06-11 07:41:31 +0200 (Thu, 11 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Set default viewportmargin back to (0,0). ------------------------------------------------------------------------ -r4412 | jcbowman | 2009-06-10 22:45:06 -0600 (Wed, 10 Jun 2009) | 2 lines +r4412 | jcbowman | 2009-06-11 06:45:06 +0200 (Thu, 11 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/settings.cc @@ -1734,7 +2136,7 @@ Changed paths: Rename textoutputtype to textoutformat for consistency. ------------------------------------------------------------------------ -r4411 | jcbowman | 2009-06-10 22:43:53 -0600 (Wed, 10 Jun 2009) | 2 lines +r4411 | jcbowman | 2009-06-11 06:43:53 +0200 (Thu, 11 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/examples/slidedemo.asy @@ -1743,7 +2145,7 @@ Changed paths: Fix reference sizing. ------------------------------------------------------------------------ -r4410 | jcbowman | 2009-06-10 09:42:13 -0600 (Wed, 10 Jun 2009) | 2 lines +r4410 | jcbowman | 2009-06-10 17:42:13 +0200 (Wed, 10 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy M /trunk/asymptote/base/three_surface.asy @@ -1751,34 +2153,34 @@ Changed paths: Fix path3 label alignment. ------------------------------------------------------------------------ -r4409 | jcbowman | 2009-06-10 08:04:35 -0600 (Wed, 10 Jun 2009) | 2 lines +r4409 | jcbowman | 2009-06-10 16:04:35 +0200 (Wed, 10 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix path3 label alignment. ------------------------------------------------------------------------ -r4408 | jcbowman | 2009-06-09 22:16:39 -0600 (Tue, 09 Jun 2009) | 2 lines +r4408 | jcbowman | 2009-06-10 06:16:39 +0200 (Wed, 10 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Package asy-faq.info.gz. ------------------------------------------------------------------------ -r4407 | jcbowman | 2009-06-09 21:59:58 -0600 (Tue, 09 Jun 2009) | 1 line +r4407 | jcbowman | 2009-06-10 05:59:58 +0200 (Wed, 10 Jun 2009) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r4406 | jcbowman | 2009-06-09 21:37:17 -0600 (Tue, 09 Jun 2009) | 2 lines +r4406 | jcbowman | 2009-06-10 05:37:17 +0200 (Wed, 10 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy Fix Jacobian. ------------------------------------------------------------------------ -r4405 | jcbowman | 2009-06-09 21:18:19 -0600 (Tue, 09 Jun 2009) | 4 lines +r4405 | jcbowman | 2009-06-10 05:18:19 +0200 (Wed, 10 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/ode.asy @@ -1789,7 +2191,7 @@ Move real[]*real[][] to C++ code. Simplify ode module. ------------------------------------------------------------------------ -r4404 | jcbowman | 2009-06-09 15:12:29 -0600 (Tue, 09 Jun 2009) | 2 lines +r4404 | jcbowman | 2009-06-09 23:12:29 +0200 (Tue, 09 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy A /trunk/asymptote/examples/odetest.asy @@ -1797,14 +2199,14 @@ Changed paths: Update ode module; extract example. ------------------------------------------------------------------------ -r4403 | jcbowman | 2009-06-09 15:10:59 -0600 (Tue, 09 Jun 2009) | 2 lines +r4403 | jcbowman | 2009-06-09 23:10:59 +0200 (Tue, 09 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Fix bug found by Olivier in surface(real[][] f, real[] x, real[] y). ------------------------------------------------------------------------ -r4402 | jcbowman | 2009-06-07 21:53:40 -0600 (Sun, 07 Jun 2009) | 4 lines +r4402 | jcbowman | 2009-06-08 05:53:40 +0200 (Mon, 08 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/examples/slidedemo.asy @@ -1814,28 +2216,28 @@ Uninstall asy-keywords.el. Update slidedemo. ------------------------------------------------------------------------ -r4401 | jcbowman | 2009-06-07 21:32:37 -0600 (Sun, 07 Jun 2009) | 2 lines +r4401 | jcbowman | 2009-06-08 05:32:37 +0200 (Mon, 08 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Fix build error. ------------------------------------------------------------------------ -r4400 | jcbowman | 2009-06-07 20:53:31 -0600 (Sun, 07 Jun 2009) | 2 lines +r4400 | jcbowman | 2009-06-08 04:53:31 +0200 (Mon, 08 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Fix spec file. ------------------------------------------------------------------------ -r4399 | jcbowman | 2009-06-07 20:36:06 -0600 (Sun, 07 Jun 2009) | 2 lines +r4399 | jcbowman | 2009-06-08 04:36:06 +0200 (Mon, 08 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Update info location. ------------------------------------------------------------------------ -r4398 | jcbowman | 2009-06-07 20:11:06 -0600 (Sun, 07 Jun 2009) | 3 lines +r4398 | jcbowman | 2009-06-08 04:11:06 +0200 (Mon, 08 Jun 2009) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -1847,7 +2249,7 @@ Clean up info installation: make install installs info files without png images, make install-all installs info files with png files. ------------------------------------------------------------------------ -r4397 | jcbowman | 2009-06-07 16:51:01 -0600 (Sun, 07 Jun 2009) | 2 lines +r4397 | jcbowman | 2009-06-08 00:51:01 +0200 (Mon, 08 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -1856,7 +2258,7 @@ Changed paths: Install png files with asymptote.info in directory info/asymptote. ------------------------------------------------------------------------ -r4396 | jcbowman | 2009-06-07 14:36:36 -0600 (Sun, 07 Jun 2009) | 3 lines +r4396 | jcbowman | 2009-06-07 22:36:36 +0200 (Sun, 07 Jun 2009) | 3 lines Changed paths: M /trunk/asymptote/doc/Makefile.in @@ -1864,14 +2266,14 @@ Install asymptote.info before asy-faq.info so that info asy accesses asymptote.info. ------------------------------------------------------------------------ -r4395 | jcbowman | 2009-06-07 07:52:49 -0600 (Sun, 07 Jun 2009) | 2 lines +r4395 | jcbowman | 2009-06-07 15:52:49 +0200 (Sun, 07 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Resolve ambiguity. ------------------------------------------------------------------------ -r4394 | jcbowman | 2009-06-07 07:31:41 -0600 (Sun, 07 Jun 2009) | 2 lines +r4394 | jcbowman | 2009-06-07 15:31:41 +0200 (Sun, 07 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -1879,7 +2281,7 @@ Changed paths: Fix mintimes and maxtimes for arbitrary length paths. ------------------------------------------------------------------------ -r4393 | jcbowman | 2009-06-07 07:11:07 -0600 (Sun, 07 Jun 2009) | 2 lines +r4393 | jcbowman | 2009-06-07 15:11:07 +0200 (Sun, 07 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -1888,7 +2290,7 @@ Changed paths: Make format return TeX compatible output only in math mode. ------------------------------------------------------------------------ -r4392 | jcbowman | 2009-06-07 06:18:43 -0600 (Sun, 07 Jun 2009) | 3 lines +r4392 | jcbowman | 2009-06-07 14:18:43 +0200 (Sun, 07 Jun 2009) | 3 lines Changed paths: A /trunk/asymptote/base/lmfit.asy @@ -1896,7 +2298,7 @@ Add Levenberg-Marquardt nonlinear fitting routine, contributed by Philipp Stephani. ------------------------------------------------------------------------ -r4391 | jcbowman | 2009-06-07 06:10:56 -0600 (Sun, 07 Jun 2009) | 2 lines +r4391 | jcbowman | 2009-06-07 14:10:56 +0200 (Sun, 07 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -1905,14 +2307,14 @@ Changed paths: Fix maxtimes for paths where maximum occurs at the endpoint. ------------------------------------------------------------------------ -r4390 | jcbowman | 2009-06-06 19:09:43 -0600 (Sat, 06 Jun 2009) | 2 lines +r4390 | jcbowman | 2009-06-07 03:09:43 +0200 (Sun, 07 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Improve viewport padding. ------------------------------------------------------------------------ -r4389 | jcbowman | 2009-06-06 09:26:30 -0600 (Sat, 06 Jun 2009) | 2 lines +r4389 | jcbowman | 2009-06-06 17:26:30 +0200 (Sat, 06 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/util.cc @@ -1920,21 +2322,21 @@ Changed paths: Add links to manual in error message. ------------------------------------------------------------------------ -r4388 | jcbowman | 2009-06-06 07:52:40 -0600 (Sat, 06 Jun 2009) | 2 lines +r4388 | jcbowman | 2009-06-06 15:52:40 +0200 (Sat, 06 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/ode.asy Add preliminary ode module (untested). ------------------------------------------------------------------------ -r4387 | jcbowman | 2009-06-05 23:47:42 -0600 (Fri, 05 Jun 2009) | 1 line +r4387 | jcbowman | 2009-06-06 07:47:42 +0200 (Sat, 06 Jun 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.77svn. ------------------------------------------------------------------------ -r4386 | jcbowman | 2009-06-05 21:23:37 -0600 (Fri, 05 Jun 2009) | 2 lines +r4386 | jcbowman | 2009-06-06 05:23:37 +0200 (Sat, 06 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/drawclipend.h M /trunk/asymptote/drawfill.cc @@ -1945,7 +2347,7 @@ Changed paths: Remove texunits (not required). ------------------------------------------------------------------------ -r4385 | jcbowman | 2009-06-05 21:06:43 -0600 (Fri, 05 Jun 2009) | 2 lines +r4385 | jcbowman | 2009-06-06 05:06:43 +0200 (Sat, 06 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/png/Makefile.in @@ -1953,7 +2355,7 @@ Changed paths: Don't split info files. ------------------------------------------------------------------------ -r4384 | jcbowman | 2009-06-05 20:45:25 -0600 (Fri, 05 Jun 2009) | 3 lines +r4384 | jcbowman | 2009-06-06 04:45:25 +0200 (Sat, 06 Jun 2009) | 3 lines Changed paths: M /trunk/asymptote/base/bezulate.asy @@ -1961,21 +2363,21 @@ Fix bezulate bug: determine the number of intersections of a path with a line segment directly from the intersections routine. ------------------------------------------------------------------------ -r4383 | jcbowman | 2009-06-05 07:36:55 -0600 (Fri, 05 Jun 2009) | 2 lines +r4383 | jcbowman | 2009-06-05 15:36:55 +0200 (Fri, 05 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r4382 | jcbowman | 2009-06-05 07:06:37 -0600 (Fri, 05 Jun 2009) | 2 lines +r4382 | jcbowman | 2009-06-05 15:06:37 +0200 (Fri, 05 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/teapot.asy Restore example. ------------------------------------------------------------------------ -r4381 | jcbowman | 2009-06-04 10:42:35 -0600 (Thu, 04 Jun 2009) | 2 lines +r4381 | jcbowman | 2009-06-04 18:42:35 +0200 (Thu, 04 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -1983,14 +2385,14 @@ Changed paths: Rename inside(int,pen) to interior(int,pen). ------------------------------------------------------------------------ -r4380 | jcbowman | 2009-06-04 10:41:19 -0600 (Thu, 04 Jun 2009) | 2 lines +r4380 | jcbowman | 2009-06-04 18:41:19 +0200 (Thu, 04 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Suppress "cannot find an interior point" warning for degenerate paths. ------------------------------------------------------------------------ -r4379 | jcbowman | 2009-06-03 23:19:05 -0600 (Wed, 03 Jun 2009) | 2 lines +r4379 | jcbowman | 2009-06-04 07:19:05 +0200 (Thu, 04 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -1998,7 +2400,7 @@ Changed paths: Implement addAllViews function to exhibit all six standard 3D views. ------------------------------------------------------------------------ -r4378 | jcbowman | 2009-06-03 21:36:49 -0600 (Wed, 03 Jun 2009) | 5 lines +r4378 | jcbowman | 2009-06-04 05:36:49 +0200 (Thu, 04 Jun 2009) | 5 lines Changed paths: M /trunk/asymptote/base/three_light.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -2016,14 +2418,14 @@ Add ambient light to Headlamp (other parameters in PDF32000-1:2008 appear to be incorrect). ------------------------------------------------------------------------ -r4377 | jcbowman | 2009-06-03 12:55:50 -0600 (Wed, 03 Jun 2009) | 2 lines +r4377 | jcbowman | 2009-06-03 20:55:50 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Turn off light in certain examples to avoid confusion. ------------------------------------------------------------------------ -r4376 | jcbowman | 2009-06-03 12:48:50 -0600 (Wed, 03 Jun 2009) | 4 lines +r4376 | jcbowman | 2009-06-03 20:48:50 +0200 (Wed, 03 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -2033,35 +2435,35 @@ Fix filename for attach=true mode. Add hiresbb option to includegraphics. ------------------------------------------------------------------------ -r4375 | jcbowman | 2009-06-03 12:21:11 -0600 (Wed, 03 Jun 2009) | 2 lines +r4375 | jcbowman | 2009-06-03 20:21:11 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Improve texpath resolution by preshifting. ------------------------------------------------------------------------ -r4374 | jcbowman | 2009-06-03 12:02:54 -0600 (Wed, 03 Jun 2009) | 2 lines +r4374 | jcbowman | 2009-06-03 20:02:54 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/fontsize.asy Make fontsize package conditional on latex(). ------------------------------------------------------------------------ -r4373 | jcbowman | 2009-06-03 12:02:29 -0600 (Wed, 03 Jun 2009) | 2 lines +r4373 | jcbowman | 2009-06-03 20:02:29 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Improve texpath caching. ------------------------------------------------------------------------ -r4372 | jcbowman | 2009-06-03 12:01:42 -0600 (Wed, 03 Jun 2009) | 2 lines +r4372 | jcbowman | 2009-06-03 20:01:42 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix degenerate transform3. ------------------------------------------------------------------------ -r4371 | jcbowman | 2009-06-03 01:50:28 -0600 (Wed, 03 Jun 2009) | 3 lines +r4371 | jcbowman | 2009-06-03 09:50:28 +0200 (Wed, 03 Jun 2009) | 3 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/drawlabel.h @@ -2075,42 +2477,42 @@ Add real[] texsize(string, pen=currentpen) command returning raw TeX dimensions {width,height,depth}. ------------------------------------------------------------------------ -r4370 | jcbowman | 2009-06-03 01:46:42 -0600 (Wed, 03 Jun 2009) | 2 lines +r4370 | jcbowman | 2009-06-03 09:46:42 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/pen.h Add missing ps2tex scaling. ------------------------------------------------------------------------ -r4369 | jcbowman | 2009-06-03 01:45:14 -0600 (Wed, 03 Jun 2009) | 2 lines +r4369 | jcbowman | 2009-06-03 09:45:14 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Make texpath aware of baseline for PDF tex engines. ------------------------------------------------------------------------ -r4368 | jcbowman | 2009-06-03 01:42:23 -0600 (Wed, 03 Jun 2009) | 2 lines +r4368 | jcbowman | 2009-06-03 09:42:23 +0200 (Wed, 03 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/labelpath3.asy Simplify alignment. ------------------------------------------------------------------------ -r4367 | jcbowman | 2009-06-02 12:02:03 -0600 (Tue, 02 Jun 2009) | 2 lines +r4367 | jcbowman | 2009-06-02 20:02:03 +0200 (Tue, 02 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/labelpath3.asy Remove unwanted assignments. ------------------------------------------------------------------------ -r4366 | jcbowman | 2009-06-02 11:33:59 -0600 (Tue, 02 Jun 2009) | 2 lines +r4366 | jcbowman | 2009-06-02 19:33:59 +0200 (Tue, 02 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_light.asy Tune headlamp parameters. ------------------------------------------------------------------------ -r4365 | jcbowman | 2009-06-02 11:33:38 -0600 (Tue, 02 Jun 2009) | 4 lines +r4365 | jcbowman | 2009-06-02 19:33:38 +0200 (Tue, 02 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -2119,14 +2521,14 @@ Tune alignment between rendered and PRC images for perspective projections. Fix angle for absolute projection rendering. ------------------------------------------------------------------------ -r4364 | jcbowman | 2009-06-02 10:26:20 -0600 (Tue, 02 Jun 2009) | 2 lines +r4364 | jcbowman | 2009-06-02 18:26:20 +0200 (Tue, 02 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_light.asy Add headlamp light that approximates 3Dlights=Headlamp. ------------------------------------------------------------------------ -r4363 | jcbowman | 2009-06-02 01:28:17 -0600 (Tue, 02 Jun 2009) | 4 lines +r4363 | jcbowman | 2009-06-02 09:28:17 +0200 (Tue, 02 Jun 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -2135,21 +2537,21 @@ Add hiresbb option to graphic. Remove 2 pixel offset. ------------------------------------------------------------------------ -r4362 | jcbowman | 2009-06-02 00:37:23 -0600 (Tue, 02 Jun 2009) | 2 lines +r4362 | jcbowman | 2009-06-02 08:37:23 +0200 (Tue, 02 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Improve rendered and PRC alignment. ------------------------------------------------------------------------ -r4361 | jcbowman | 2009-06-01 21:57:28 -0600 (Mon, 01 Jun 2009) | 2 lines +r4361 | jcbowman | 2009-06-02 05:57:28 +0200 (Tue, 02 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Handle holes in surface constructor for superpaths when planar=true. ------------------------------------------------------------------------ -r4360 | jcbowman | 2009-06-01 17:18:19 -0600 (Mon, 01 Jun 2009) | 2 lines +r4360 | jcbowman | 2009-06-02 01:18:19 +0200 (Tue, 02 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/plain_pens.asy @@ -2160,13 +2562,13 @@ Changed paths: Add support for OCG layers. ------------------------------------------------------------------------ -r4359 | jcbowman | 2009-06-01 02:43:51 -0600 (Mon, 01 Jun 2009) | 1 line +r4359 | jcbowman | 2009-06-01 10:43:51 +0200 (Mon, 01 Jun 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.76svn. ------------------------------------------------------------------------ -r4358 | jcbowman | 2009-06-01 00:04:03 -0600 (Mon, 01 Jun 2009) | 2 lines +r4358 | jcbowman | 2009-06-01 08:04:03 +0200 (Mon, 01 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/Makefile M /trunk/asymptote/doc/Makefile.in @@ -2174,14 +2576,14 @@ Changed paths: Fix target. ------------------------------------------------------------------------ -r4357 | jcbowman | 2009-05-31 23:35:47 -0600 (Sun, 31 May 2009) | 2 lines +r4357 | jcbowman | 2009-06-01 07:35:47 +0200 (Mon, 01 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/arrows3.asy Update example. ------------------------------------------------------------------------ -r4356 | jcbowman | 2009-05-31 23:06:06 -0600 (Sun, 31 May 2009) | 2 lines +r4356 | jcbowman | 2009-06-01 07:06:06 +0200 (Mon, 01 Jun 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -2191,21 +2593,21 @@ Changed paths: Add install-prebuilt target for CTAN distribution. ------------------------------------------------------------------------ -r4355 | jcbowman | 2009-05-31 13:15:28 -0600 (Sun, 31 May 2009) | 2 lines +r4355 | jcbowman | 2009-05-31 21:15:28 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Increase fuzz. ------------------------------------------------------------------------ -r4354 | jcbowman | 2009-05-31 12:01:15 -0600 (Sun, 31 May 2009) | 2 lines +r4354 | jcbowman | 2009-05-31 20:01:15 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex Revert inadvertent commit. ------------------------------------------------------------------------ -r4353 | jcbowman | 2009-05-31 11:59:17 -0600 (Sun, 31 May 2009) | 2 lines +r4353 | jcbowman | 2009-05-31 19:59:17 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/runtime.in @@ -2214,7 +2616,7 @@ Changed paths: Fix missing documentclass when texpath is used in inlinetex mode. ------------------------------------------------------------------------ -r4352 | jcbowman | 2009-05-31 11:11:40 -0600 (Sun, 31 May 2009) | 3 lines +r4352 | jcbowman | 2009-05-31 19:11:40 +0200 (Sun, 31 May 2009) | 3 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/settings.cc @@ -2225,7 +2627,7 @@ Workaround missing -output-directory option in ConTeXt (current directory must be writeable). ------------------------------------------------------------------------ -r4351 | jcbowman | 2009-05-31 10:20:19 -0600 (Sun, 31 May 2009) | 3 lines +r4351 | jcbowman | 2009-05-31 18:20:19 +0200 (Sun, 31 May 2009) | 3 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/pen.h @@ -2234,14 +2636,14 @@ Implement alternative workaround, suggested by Hans Hagen, for ConTeXt switchtobodyfont alignment bug in TeXLive 2008. ------------------------------------------------------------------------ -r4350 | jcbowman | 2009-05-31 10:09:14 -0600 (Sun, 31 May 2009) | 2 lines +r4350 | jcbowman | 2009-05-31 18:09:14 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Add --disable-readline and --disable-fftw. ------------------------------------------------------------------------ -r4349 | jcbowman | 2009-05-31 09:59:40 -0600 (Sun, 31 May 2009) | 2 lines +r4349 | jcbowman | 2009-05-31 17:59:40 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/examples/contextfonts.asy @@ -2249,7 +2651,7 @@ Changed paths: Remove font encodings by default. ------------------------------------------------------------------------ -r4348 | jcbowman | 2009-05-31 01:25:55 -0600 (Sun, 31 May 2009) | 3 lines +r4348 | jcbowman | 2009-05-31 09:25:55 +0200 (Sun, 31 May 2009) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -2257,7 +2659,7 @@ Remove troublesome --purgeall context option (ignored in TeXLive 2008; leads to bad argument #1 to 'match' error with ConTeXT Minimals). ------------------------------------------------------------------------ -r4347 | jcbowman | 2009-05-31 01:14:21 -0600 (Sun, 31 May 2009) | 2 lines +r4347 | jcbowman | 2009-05-31 09:14:21 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/texfile.cc @@ -2265,7 +2667,7 @@ Changed paths: Clean up epilogue. ------------------------------------------------------------------------ -r4346 | jcbowman | 2009-05-31 01:13:23 -0600 (Sun, 31 May 2009) | 4 lines +r4346 | jcbowman | 2009-05-31 09:13:23 +0200 (Sun, 31 May 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -2274,27 +2676,27 @@ Fix aspect ratio calculation; tighten anglefactor. Improve viewportmargin handling. ------------------------------------------------------------------------ -r4345 | jcbowman | 2009-05-31 00:46:12 -0600 (Sun, 31 May 2009) | 2 lines +r4345 | jcbowman | 2009-05-31 08:46:12 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Remove GCLIB_CHECK. ------------------------------------------------------------------------ -r4344 | jcbowman | 2009-05-31 00:33:09 -0600 (Sun, 31 May 2009) | 2 lines +r4344 | jcbowman | 2009-05-31 08:33:09 +0200 (Sun, 31 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Handle cusps. ------------------------------------------------------------------------ -r4343 | jcbowman | 2009-05-30 21:54:39 -0600 (Sat, 30 May 2009) | 1 line +r4343 | jcbowman | 2009-05-31 05:54:39 +0200 (Sun, 31 May 2009) | 1 line Changed paths: D /trunk/asymptote/.cvsignore Remove unused file. ------------------------------------------------------------------------ -r4342 | jcbowman | 2009-05-30 10:47:00 -0600 (Sat, 30 May 2009) | 4 lines +r4342 | jcbowman | 2009-05-30 18:47:00 +0200 (Sat, 30 May 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three_surface.asy @@ -2303,21 +2705,21 @@ Return a sorted array from intersections(path3, surface). Add intersectionpoints(path3, patch) routine. ------------------------------------------------------------------------ -r4341 | jcbowman | 2009-05-30 10:37:10 -0600 (Sat, 30 May 2009) | 2 lines +r4341 | jcbowman | 2009-05-30 18:37:10 +0200 (Sat, 30 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix intrapatch duplicate point removal in intersections(path,surface). ------------------------------------------------------------------------ -r4340 | jcbowman | 2009-05-29 09:20:50 -0600 (Fri, 29 May 2009) | 2 lines +r4340 | jcbowman | 2009-05-29 17:20:50 +0200 (Fri, 29 May 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Remove unused interface. ------------------------------------------------------------------------ -r4339 | jcbowman | 2009-05-29 09:14:39 -0600 (Fri, 29 May 2009) | 4 lines +r4339 | jcbowman | 2009-05-29 17:14:39 +0200 (Fri, 29 May 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/runtime.in @@ -2328,20 +2730,20 @@ Add usetypescript[modern] to texpath. Adjust anglefactor. ------------------------------------------------------------------------ -r4338 | jcbowman | 2009-05-28 22:36:28 -0600 (Thu, 28 May 2009) | 2 lines +r4338 | jcbowman | 2009-05-29 06:36:28 +0200 (Fri, 29 May 2009) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Add missing brace for context miniprologue used by texpath. ------------------------------------------------------------------------ -r4337 | jcbowman | 2009-05-28 03:26:53 -0600 (Thu, 28 May 2009) | 1 line +r4337 | jcbowman | 2009-05-28 11:26:53 +0200 (Thu, 28 May 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.75svn. ------------------------------------------------------------------------ -r4336 | jcbowman | 2009-05-28 01:57:37 -0600 (Thu, 28 May 2009) | 1 line +r4336 | jcbowman | 2009-05-28 09:57:37 +0200 (Thu, 28 May 2009) | 1 line Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/settings.h @@ -2349,28 +2751,28 @@ Changed paths: Fix help command under MSWindows ------------------------------------------------------------------------ -r4335 | jcbowman | 2009-05-28 00:56:30 -0600 (Thu, 28 May 2009) | 2 lines +r4335 | jcbowman | 2009-05-28 08:56:30 +0200 (Thu, 28 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex Improve appearance of cube example. ------------------------------------------------------------------------ -r4334 | jcbowman | 2009-05-28 00:33:43 -0600 (Thu, 28 May 2009) | 2 lines +r4334 | jcbowman | 2009-05-28 08:33:43 +0200 (Thu, 28 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Increase anglefactor. ------------------------------------------------------------------------ -r4333 | jcbowman | 2009-05-28 00:14:35 -0600 (Thu, 28 May 2009) | 2 lines +r4333 | jcbowman | 2009-05-28 08:14:35 +0200 (Thu, 28 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Fix assert; increase fuzz. ------------------------------------------------------------------------ -r4332 | jcbowman | 2009-05-28 00:00:27 -0600 (Thu, 28 May 2009) | 3 lines +r4332 | jcbowman | 2009-05-28 08:00:27 +0200 (Thu, 28 May 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -2378,7 +2780,7 @@ Disable PRC output when using ConTeXt engine (due to lack of movie15 equivalent). ------------------------------------------------------------------------ -r4331 | jcbowman | 2009-05-27 23:37:13 -0600 (Wed, 27 May 2009) | 4 lines +r4331 | jcbowman | 2009-05-28 07:37:13 +0200 (Thu, 28 May 2009) | 4 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/three.asy @@ -2396,28 +2798,28 @@ Fix incorrect auxiliary control point in surface bounding box routines. Add path/surface intersections and intersectionpoints routines. ------------------------------------------------------------------------ -r4330 | jcbowman | 2009-05-27 10:16:32 -0600 (Wed, 27 May 2009) | 2 lines +r4330 | jcbowman | 2009-05-27 18:16:32 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Fix packaging. ------------------------------------------------------------------------ -r4329 | jcbowman | 2009-05-27 09:47:32 -0600 (Wed, 27 May 2009) | 2 lines +r4329 | jcbowman | 2009-05-27 17:47:32 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Package conTeXt files. ------------------------------------------------------------------------ -r4328 | jcbowman | 2009-05-27 09:30:15 -0600 (Wed, 27 May 2009) | 2 lines +r4328 | jcbowman | 2009-05-27 17:30:15 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Revert r4303; ensure consistency of circle and arc. ------------------------------------------------------------------------ -r4327 | jcbowman | 2009-05-27 08:44:56 -0600 (Wed, 27 May 2009) | 2 lines +r4327 | jcbowman | 2009-05-27 16:44:56 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -2425,7 +2827,7 @@ Changed paths: Fix RPM build. ------------------------------------------------------------------------ -r4326 | jcbowman | 2009-05-26 23:21:51 -0600 (Tue, 26 May 2009) | 2 lines +r4326 | jcbowman | 2009-05-27 07:21:51 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/picture.cc @@ -2433,7 +2835,7 @@ Changed paths: Fix diagnostics. ------------------------------------------------------------------------ -r4325 | jcbowman | 2009-05-26 22:56:39 -0600 (Tue, 26 May 2009) | 2 lines +r4325 | jcbowman | 2009-05-27 06:56:39 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -2441,14 +2843,14 @@ Changed paths: Remove ambiguity in font commands. ------------------------------------------------------------------------ -r4324 | jcbowman | 2009-05-26 22:55:34 -0600 (Tue, 26 May 2009) | 2 lines +r4324 | jcbowman | 2009-05-27 06:55:34 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Increase duplicate fuzz to work around font errors. ------------------------------------------------------------------------ -r4323 | jcbowman | 2009-05-26 17:57:11 -0600 (Tue, 26 May 2009) | 2 lines +r4323 | jcbowman | 2009-05-27 01:57:11 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/settings.cc @@ -2456,28 +2858,28 @@ Changed paths: Add portability fix. ------------------------------------------------------------------------ -r4322 | jcbowman | 2009-05-26 17:46:56 -0600 (Tue, 26 May 2009) | 2 lines +r4322 | jcbowman | 2009-05-27 01:46:56 +0200 (Wed, 27 May 2009) | 2 lines Changed paths: M /trunk/asymptote/algebra3.h Remove unused enums. ------------------------------------------------------------------------ -r4321 | jcbowman | 2009-05-26 08:23:49 -0600 (Tue, 26 May 2009) | 2 lines +r4321 | jcbowman | 2009-05-26 16:23:49 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/algebra3.h Fix enum. ------------------------------------------------------------------------ -r4320 | jcbowman | 2009-05-26 08:21:02 -0600 (Tue, 26 May 2009) | 2 lines +r4320 | jcbowman | 2009-05-26 16:21:02 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fix preprocessor command. ------------------------------------------------------------------------ -r4319 | jcbowman | 2009-05-26 02:52:25 -0600 (Tue, 26 May 2009) | 2 lines +r4319 | jcbowman | 2009-05-26 10:52:25 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/embed.asy @@ -2485,7 +2887,7 @@ Changed paths: Enable non-PRC 3D context support. ------------------------------------------------------------------------ -r4318 | jcbowman | 2009-05-26 02:25:39 -0600 (Tue, 26 May 2009) | 2 lines +r4318 | jcbowman | 2009-05-26 10:25:39 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.in @@ -2494,35 +2896,35 @@ Changed paths: Support context engine in _texpath; clean up files. ------------------------------------------------------------------------ -r4317 | jcbowman | 2009-05-26 01:30:46 -0600 (Tue, 26 May 2009) | 2 lines +r4317 | jcbowman | 2009-05-26 09:30:46 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Cleanup temporary context files. ------------------------------------------------------------------------ -r4316 | jcbowman | 2009-05-26 01:12:05 -0600 (Tue, 26 May 2009) | 2 lines +r4316 | jcbowman | 2009-05-26 09:12:05 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Normalize direction. ------------------------------------------------------------------------ -r4315 | jcbowman | 2009-05-26 00:16:53 -0600 (Tue, 26 May 2009) | 2 lines +r4315 | jcbowman | 2009-05-26 08:16:53 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Workaround possibly broken header file on i386-solaris with g++ 3.4.3. ------------------------------------------------------------------------ -r4314 | jcbowman | 2009-05-25 23:58:24 -0600 (Mon, 25 May 2009) | 2 lines +r4314 | jcbowman | 2009-05-26 07:58:24 +0200 (Tue, 26 May 2009) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Force child to exit when pipe is closed. ------------------------------------------------------------------------ -r4313 | jcbowman | 2009-05-25 11:01:50 -0600 (Mon, 25 May 2009) | 4 lines +r4313 | jcbowman | 2009-05-25 19:01:50 +0200 (Mon, 25 May 2009) | 4 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/runtime.in @@ -2534,14 +2936,14 @@ Prevent double waiting in pipeclose(). Support PDF tex engines in texpath. ------------------------------------------------------------------------ -r4312 | jcbowman | 2009-05-25 07:18:45 -0600 (Mon, 25 May 2009) | 2 lines +r4312 | jcbowman | 2009-05-25 15:18:45 +0200 (Mon, 25 May 2009) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Don't issue \usemodule[pictex] in inlinetex mode. ------------------------------------------------------------------------ -r4311 | jcbowman | 2009-05-24 22:25:12 -0600 (Sun, 24 May 2009) | 5 lines +r4311 | jcbowman | 2009-05-25 06:25:12 +0200 (Mon, 25 May 2009) | 5 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/runtime.in @@ -2553,7 +2955,7 @@ whether the child process has terminated. Simplify, _texpath, textpath, and _strokepath. ------------------------------------------------------------------------ -r4310 | jcbowman | 2009-05-23 22:47:30 -0600 (Sat, 23 May 2009) | 9 lines +r4310 | jcbowman | 2009-05-24 06:47:30 +0200 (Sun, 24 May 2009) | 9 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/examples/contextfonts.asy @@ -2571,14 +2973,14 @@ misalignment if font is not found. Improve description of -v option. ------------------------------------------------------------------------ -r4309 | jcbowman | 2009-05-23 22:44:43 -0600 (Sat, 23 May 2009) | 2 lines +r4309 | jcbowman | 2009-05-24 06:44:43 +0200 (Sun, 24 May 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/floor.asy Fix ylabel rotation. ------------------------------------------------------------------------ -r4308 | jcbowman | 2009-05-23 21:07:40 -0600 (Sat, 23 May 2009) | 5 lines +r4308 | jcbowman | 2009-05-24 05:07:40 +0200 (Sun, 24 May 2009) | 5 lines Changed paths: M /trunk/asymptote/picture.cc @@ -2588,14 +2990,14 @@ does not rely on the existence of a null.tex file. Use context-style command-line options. ------------------------------------------------------------------------ -r4307 | jcbowman | 2009-05-23 11:18:01 -0600 (Sat, 23 May 2009) | 2 lines +r4307 | jcbowman | 2009-05-23 19:18:01 +0200 (Sat, 23 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Fix man page generator. ------------------------------------------------------------------------ -r4306 | jcbowman | 2009-05-23 08:11:52 -0600 (Sat, 23 May 2009) | 4 lines +r4306 | jcbowman | 2009-05-23 16:11:52 +0200 (Sat, 23 May 2009) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -2606,7 +3008,7 @@ Add colo-asy.tex file (contributed by Mojca Miklavec). Remove base/asy-keywords.el in favour of asy-keywords.el. ------------------------------------------------------------------------ -r4305 | jcbowman | 2009-05-22 18:24:14 -0600 (Fri, 22 May 2009) | 2 lines +r4305 | jcbowman | 2009-05-23 02:24:14 +0200 (Sat, 23 May 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/unitoctant.asy M /trunk/asymptote/path.cc @@ -2615,28 +3017,28 @@ Changed paths: Add unitoctant example. ------------------------------------------------------------------------ -r4304 | jcbowman | 2009-05-22 14:20:05 -0600 (Fri, 22 May 2009) | 2 lines +r4304 | jcbowman | 2009-05-22 22:20:05 +0200 (Fri, 22 May 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Allow draw(nullpath3,linewidth(0)). ------------------------------------------------------------------------ -r4303 | jcbowman | 2009-05-22 14:09:15 -0600 (Fri, 22 May 2009) | 2 lines +r4303 | jcbowman | 2009-05-22 22:09:15 +0200 (Fri, 22 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Use only 2 nodes for arcs of no more than 90 degress. ------------------------------------------------------------------------ -r4302 | jcbowman | 2009-05-22 09:05:16 -0600 (Fri, 22 May 2009) | 2 lines +r4302 | jcbowman | 2009-05-22 17:05:16 +0200 (Fri, 22 May 2009) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Remove unneeded \bye in context support. ------------------------------------------------------------------------ -r4301 | jcbowman | 2009-05-21 13:40:02 -0600 (Thu, 21 May 2009) | 3 lines +r4301 | jcbowman | 2009-05-21 21:40:02 +0200 (Thu, 21 May 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -2647,14 +3049,14 @@ Add LeftView, RightView, FrontView, BackView, BottomView, TopView, along with addViews function. ------------------------------------------------------------------------ -r4300 | jcbowman | 2009-05-21 01:01:24 -0600 (Thu, 21 May 2009) | 2 lines +r4300 | jcbowman | 2009-05-21 09:01:24 +0200 (Thu, 21 May 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/basealign.asy Add example of baseline alignment. ------------------------------------------------------------------------ -r4299 | jcbowman | 2009-05-21 00:32:14 -0600 (Thu, 21 May 2009) | 2 lines +r4299 | jcbowman | 2009-05-21 08:32:14 +0200 (Thu, 21 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/base/plain_strings.asy @@ -2673,7 +3075,7 @@ Changed paths: Add support for ConTeXt tex engine. ------------------------------------------------------------------------ -r4298 | jcbowman | 2009-05-20 19:24:38 -0600 (Wed, 20 May 2009) | 2 lines +r4298 | jcbowman | 2009-05-21 03:24:38 +0200 (Thu, 21 May 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -2683,7 +3085,7 @@ Changed paths: Updates to facilitate TeXLive builds. ------------------------------------------------------------------------ -r4297 | jcbowman | 2009-05-20 00:48:02 -0600 (Wed, 20 May 2009) | 2 lines +r4297 | jcbowman | 2009-05-20 08:48:02 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/threeviews.asy (from /trunk/asymptote/examples/twoviews.asy:4296) D /trunk/asymptote/examples/twoviews.asy @@ -2691,21 +3093,21 @@ Changed paths: Update example. ------------------------------------------------------------------------ -r4296 | jcbowman | 2009-05-20 00:03:34 -0600 (Wed, 20 May 2009) | 2 lines +r4296 | jcbowman | 2009-05-20 08:03:34 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/twoviews.asy Add example showing how to render multiple views of the same picture. ------------------------------------------------------------------------ -r4295 | jcbowman | 2009-05-19 23:53:39 -0600 (Tue, 19 May 2009) | 2 lines +r4295 | jcbowman | 2009-05-20 07:53:39 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Simplify code. ------------------------------------------------------------------------ -r4294 | jcbowman | 2009-05-19 23:49:09 -0600 (Tue, 19 May 2009) | 2 lines +r4294 | jcbowman | 2009-05-20 07:49:09 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/three_surface.asy @@ -2713,14 +3115,14 @@ Changed paths: Remove dependence on currentprojection in label(Label, path3). ------------------------------------------------------------------------ -r4293 | jcbowman | 2009-05-19 23:36:08 -0600 (Tue, 19 May 2009) | 2 lines +r4293 | jcbowman | 2009-05-20 07:36:08 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix another BUILD problem. ------------------------------------------------------------------------ -r4292 | jcbowman | 2009-05-19 22:50:14 -0600 (Tue, 19 May 2009) | 2 lines +r4292 | jcbowman | 2009-05-20 06:50:14 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -2728,7 +3130,7 @@ Changed paths: Fix build problem. ------------------------------------------------------------------------ -r4291 | jcbowman | 2009-05-19 21:29:58 -0600 (Tue, 19 May 2009) | 2 lines +r4291 | jcbowman | 2009-05-20 05:29:58 +0200 (Wed, 20 May 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in R /trunk/asymptote/doc/FAQ/install-sh @@ -2738,7 +3140,7 @@ Changed paths: Remove symbolic links from source distribution. ------------------------------------------------------------------------ -r4290 | jcbowman | 2009-05-18 23:08:58 -0600 (Mon, 18 May 2009) | 4 lines +r4290 | jcbowman | 2009-05-19 07:08:58 +0200 (Tue, 19 May 2009) | 4 lines Changed paths: M /trunk/asymptote/configure.ac @@ -2747,7 +3149,7 @@ Add enable-gsl[=yes] and enable-gl[=yes] options. Use AS_HELP_STRING. ------------------------------------------------------------------------ -r4289 | jcbowman | 2009-05-18 22:47:55 -0600 (Mon, 18 May 2009) | 2 lines +r4289 | jcbowman | 2009-05-19 06:47:55 +0200 (Tue, 19 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in M /trunk/asymptote/doc/png/Makefile.in @@ -2755,41 +3157,41 @@ Changed paths: Fix distclean. ------------------------------------------------------------------------ -r4288 | jcbowman | 2009-05-18 11:08:59 -0600 (Mon, 18 May 2009) | 2 lines +r4288 | jcbowman | 2009-05-18 19:08:59 +0200 (Mon, 18 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.74svn. ------------------------------------------------------------------------ -r4287 | jcbowman | 2009-05-18 11:08:23 -0600 (Mon, 18 May 2009) | 2 lines +r4287 | jcbowman | 2009-05-18 19:08:23 +0200 (Mon, 18 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Revert last change. ------------------------------------------------------------------------ -r4286 | jcbowman | 2009-05-18 11:06:44 -0600 (Mon, 18 May 2009) | 2 lines +r4286 | jcbowman | 2009-05-18 19:06:44 +0200 (Mon, 18 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fix version number. ------------------------------------------------------------------------ -r4285 | jcbowman | 2009-05-18 02:02:35 -0600 (Mon, 18 May 2009) | 2 lines +r4285 | jcbowman | 2009-05-18 10:02:35 +0200 (Mon, 18 May 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Allow sysdir to be overridden on the command line. ------------------------------------------------------------------------ -r4284 | jcbowman | 2009-05-18 00:52:28 -0600 (Mon, 18 May 2009) | 1 line +r4284 | jcbowman | 2009-05-18 08:52:28 +0200 (Mon, 18 May 2009) | 1 line Changed paths: M /trunk/asymptote/settings.cc Fix texlive build under MSWindows ------------------------------------------------------------------------ -r4283 | jcbowman | 2009-05-17 23:10:36 -0600 (Sun, 17 May 2009) | 3 lines +r4283 | jcbowman | 2009-05-18 07:10:36 +0200 (Mon, 18 May 2009) | 3 lines Changed paths: M /trunk/asymptote/base/plain_boxes.asy M /trunk/asymptote/base/three.asy @@ -2807,7 +3209,7 @@ Support user-specified background color in OpenGL renderer via light constructor. ------------------------------------------------------------------------ -r4282 | jcbowman | 2009-05-17 21:18:17 -0600 (Sun, 17 May 2009) | 2 lines +r4282 | jcbowman | 2009-05-18 05:18:17 +0200 (Mon, 18 May 2009) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/settings.cc @@ -2815,7 +3217,7 @@ Changed paths: Add textinitialfont environment variable. ------------------------------------------------------------------------ -r4281 | jcbowman | 2009-05-17 11:41:49 -0600 (Sun, 17 May 2009) | 2 lines +r4281 | jcbowman | 2009-05-17 19:41:49 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc M /trunk/asymptote/psfile.cc @@ -2823,7 +3225,7 @@ Changed paths: Call reportFatal in psfile.close(). ------------------------------------------------------------------------ -r4280 | jcbowman | 2009-05-17 11:22:56 -0600 (Sun, 17 May 2009) | 2 lines +r4280 | jcbowman | 2009-05-17 19:22:56 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc M /trunk/asymptote/psfile.cc @@ -2831,7 +3233,7 @@ Changed paths: Don't return after reportError. ------------------------------------------------------------------------ -r4279 | jcbowman | 2009-05-17 11:08:10 -0600 (Sun, 17 May 2009) | 2 lines +r4279 | jcbowman | 2009-05-17 19:08:10 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -2839,14 +3241,14 @@ Changed paths: Add warn=true arguments to polar, azimuth, colatitude, and latitude. ------------------------------------------------------------------------ -r4278 | jcbowman | 2009-05-17 01:18:07 -0600 (Sun, 17 May 2009) | 2 lines +r4278 | jcbowman | 2009-05-17 09:18:07 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/pen.h Set default font to groff 12pt Times Roman when settings.tex="none". ------------------------------------------------------------------------ -r4277 | jcbowman | 2009-05-17 00:52:19 -0600 (Sun, 17 May 2009) | 2 lines +r4277 | jcbowman | 2009-05-17 08:52:19 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy A /trunk/asymptote/examples/textpath.asy @@ -2856,14 +3258,14 @@ Changed paths: Add pen support to textpath and example. ------------------------------------------------------------------------ -r4276 | jcbowman | 2009-05-17 00:49:39 -0600 (Sun, 17 May 2009) | 2 lines +r4276 | jcbowman | 2009-05-17 08:49:39 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Fix segmentation fault after mode error. ------------------------------------------------------------------------ -r4275 | jcbowman | 2009-05-16 23:10:29 -0600 (Sat, 16 May 2009) | 2 lines +r4275 | jcbowman | 2009-05-17 07:10:29 +0200 (Sun, 17 May 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/plain_Label.asy @@ -2873,7 +3275,7 @@ Changed paths: Add textpath command, contributed by Michail Vidiassov. ------------------------------------------------------------------------ -r4274 | jcbowman | 2009-05-16 15:21:49 -0600 (Sat, 16 May 2009) | 2 lines +r4274 | jcbowman | 2009-05-16 23:21:49 +0200 (Sat, 16 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/condor.asy @@ -2881,32 +3283,32 @@ Changed paths: Update links. ------------------------------------------------------------------------ -r4273 | jcbowman | 2009-05-16 10:16:47 -0600 (Sat, 16 May 2009) | 2 lines +r4273 | jcbowman | 2009-05-16 18:16:47 +0200 (Sat, 16 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/flowchartdemo.asy Restore example. ------------------------------------------------------------------------ -r4272 | pivaldi | 2009-05-16 08:04:32 -0600 (Sat, 16 May 2009) | 1 line +r4272 | pivaldi | 2009-05-16 16:04:32 +0200 (Sat, 16 May 2009) | 1 line Changed paths: M /trunk/asymptote/base/trembling.asy trembling.asy: change licence GPL to LGPL. ------------------------------------------------------------------------ -r4271 | pivaldi | 2009-05-16 05:07:49 -0600 (Sat, 16 May 2009) | 1 line +r4271 | pivaldi | 2009-05-16 13:07:49 +0200 (Sat, 16 May 2009) | 1 line Changed paths: M /trunk/asymptote/base/geometry.asy geometry.asy: put the compatibility routines ------------------------------------------------------------------------ -r4270 | pivaldi | 2009-05-16 04:52:59 -0600 (Sat, 16 May 2009) | 1 line +r4270 | pivaldi | 2009-05-16 12:52:59 +0200 (Sat, 16 May 2009) | 1 line Changed paths: M /trunk/asymptote/base/geometry.asy Fix minor bugs in geometry.asy. Change licence GPL to LGPL. ------------------------------------------------------------------------ -r4269 | jcbowman | 2009-05-16 01:23:23 -0600 (Sat, 16 May 2009) | 6 lines +r4269 | jcbowman | 2009-05-16 09:23:23 +0200 (Sat, 16 May 2009) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -2925,7 +3327,7 @@ Improve vectorfield routines. Update documentation and FAQ. ------------------------------------------------------------------------ -r4268 | jcbowman | 2009-05-15 14:32:28 -0600 (Fri, 15 May 2009) | 6 lines +r4268 | jcbowman | 2009-05-15 22:32:28 +0200 (Fri, 15 May 2009) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -2940,62 +3342,62 @@ Remove autoadjust parameter from orthographic projections. Center target by default, unless autoadjust=false. ------------------------------------------------------------------------ -r4267 | jcbowman | 2009-05-15 08:55:36 -0600 (Fri, 15 May 2009) | 2 lines +r4267 | jcbowman | 2009-05-15 16:55:36 +0200 (Fri, 15 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation of shipout. ------------------------------------------------------------------------ -r4266 | jcbowman | 2009-05-15 08:31:21 -0600 (Fri, 15 May 2009) | 2 lines +r4266 | jcbowman | 2009-05-15 16:31:21 +0200 (Fri, 15 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.73svn. ------------------------------------------------------------------------ -r4265 | jcbowman | 2009-05-14 17:26:51 -0600 (Thu, 14 May 2009) | 1 line +r4265 | jcbowman | 2009-05-15 01:26:51 +0200 (Fri, 15 May 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec Increment version to 1.73svn. ------------------------------------------------------------------------ -r4264 | jcbowman | 2009-05-14 16:03:48 -0600 (Thu, 14 May 2009) | 2 lines +r4264 | jcbowman | 2009-05-15 00:03:48 +0200 (Fri, 15 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.72svn. ------------------------------------------------------------------------ -r4263 | jcbowman | 2009-05-14 15:59:18 -0600 (Thu, 14 May 2009) | 2 lines +r4263 | jcbowman | 2009-05-14 23:59:18 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Re-introduce portable zombie-free fork. ------------------------------------------------------------------------ -r4262 | jcbowman | 2009-05-14 15:05:21 -0600 (Thu, 14 May 2009) | 2 lines +r4262 | jcbowman | 2009-05-14 23:05:21 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Detect degenerate paths. ------------------------------------------------------------------------ -r4261 | jcbowman | 2009-05-14 15:04:56 -0600 (Thu, 14 May 2009) | 2 lines +r4261 | jcbowman | 2009-05-14 23:04:56 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix ambiguity in extrude. ------------------------------------------------------------------------ -r4260 | jcbowman | 2009-05-14 12:52:03 -0600 (Thu, 14 May 2009) | 2 lines +r4260 | jcbowman | 2009-05-14 20:52:03 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Force HAVE_LIBGLUT on darwin. ------------------------------------------------------------------------ -r4259 | jcbowman | 2009-05-14 11:57:53 -0600 (Thu, 14 May 2009) | 3 lines +r4259 | jcbowman | 2009-05-14 19:57:53 +0200 (Thu, 14 May 2009) | 3 lines Changed paths: M /trunk/asymptote/patches/README A /trunk/asymptote/patches/movie15_20090323.patch @@ -3004,19 +3406,19 @@ Add patch to workaround problem that shows up in the 2009/03/23 version of movie15.sty. ------------------------------------------------------------------------ -r4258 | jcbowman | 2009-05-14 10:17:15 -0600 (Thu, 14 May 2009) | 1 line +r4258 | jcbowman | 2009-05-14 18:17:15 +0200 (Thu, 14 May 2009) | 1 line Changed paths: M /trunk/asymptote/glrender.cc Fix spurious zooms due to menu interaction. ------------------------------------------------------------------------ -r4257 | jcbowman | 2009-05-14 09:33:06 -0600 (Thu, 14 May 2009) | 1 line +r4257 | jcbowman | 2009-05-14 17:33:06 +0200 (Thu, 14 May 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Detect libGLU. ------------------------------------------------------------------------ -r4256 | jcbowman | 2009-05-14 01:47:25 -0600 (Thu, 14 May 2009) | 2 lines +r4256 | jcbowman | 2009-05-14 09:47:25 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -3025,7 +3427,7 @@ Changed paths: Change label3 to a routine extrude that returns a surface. ------------------------------------------------------------------------ -r4255 | jcbowman | 2009-05-14 01:19:29 -0600 (Thu, 14 May 2009) | 2 lines +r4255 | jcbowman | 2009-05-14 09:19:29 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/tr.cc @@ -3034,7 +3436,7 @@ Changed paths: Work around old LGPLv2 license covering tr.h and tr.cc. ------------------------------------------------------------------------ -r4254 | jcbowman | 2009-05-14 01:00:37 -0600 (Thu, 14 May 2009) | 2 lines +r4254 | jcbowman | 2009-05-14 09:00:37 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawpath3.h @@ -3046,7 +3448,7 @@ Changed paths: Report up and target camera parameters. ------------------------------------------------------------------------ -r4253 | jcbowman | 2009-05-13 23:21:33 -0600 (Wed, 13 May 2009) | 6 lines +r4253 | jcbowman | 2009-05-14 07:21:33 +0200 (Thu, 14 May 2009) | 6 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/base/three_surface.asy @@ -3060,7 +3462,7 @@ Implement label3 for drawing 3D solid labels (illustrated in label3solid.asy). Remove extra call to bezulate. ------------------------------------------------------------------------ -r4252 | jcbowman | 2009-05-13 23:18:57 -0600 (Wed, 13 May 2009) | 2 lines +r4252 | jcbowman | 2009-05-14 07:18:57 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/plain_constants.asy @@ -3068,14 +3470,14 @@ Changed paths: Define mantissaBits. ------------------------------------------------------------------------ -r4251 | jcbowman | 2009-05-13 23:17:50 -0600 (Wed, 13 May 2009) | 2 lines +r4251 | jcbowman | 2009-05-14 07:17:50 +0200 (Thu, 14 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy Limit recursion. ------------------------------------------------------------------------ -r4250 | jcbowman | 2009-05-13 11:40:56 -0600 (Wed, 13 May 2009) | 2 lines +r4250 | jcbowman | 2009-05-13 19:40:56 +0200 (Wed, 13 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -3088,13 +3490,13 @@ Changed paths: Add menu item (c) Camera to output camera position. ------------------------------------------------------------------------ -r4249 | jcbowman | 2009-05-12 14:24:34 -0600 (Tue, 12 May 2009) | 1 line +r4249 | jcbowman | 2009-05-12 22:24:34 +0200 (Tue, 12 May 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.nsi Make asy.bat respect all command-line arguments. ------------------------------------------------------------------------ -r4248 | jcbowman | 2009-05-12 14:07:54 -0600 (Tue, 12 May 2009) | 2 lines +r4248 | jcbowman | 2009-05-12 22:07:54 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/grid3xyz.asy @@ -3103,14 +3505,14 @@ Changed paths: Fix axis label alignment. ------------------------------------------------------------------------ -r4247 | jcbowman | 2009-05-12 11:21:38 -0600 (Tue, 12 May 2009) | 2 lines +r4247 | jcbowman | 2009-05-12 19:21:38 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/grid3.asy Update call to ticks. ------------------------------------------------------------------------ -r4246 | jcbowman | 2009-05-12 11:15:49 -0600 (Tue, 12 May 2009) | 2 lines +r4246 | jcbowman | 2009-05-12 19:15:49 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -3118,7 +3520,7 @@ Changed paths: Support optional margins for axes arrows. ------------------------------------------------------------------------ -r4245 | jcbowman | 2009-05-12 10:49:58 -0600 (Tue, 12 May 2009) | 2 lines +r4245 | jcbowman | 2009-05-12 18:49:58 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: A /trunk/asymptote/base/trembling.asy M /trunk/asymptote/doc/asymptote.texi @@ -3127,21 +3529,21 @@ Changed paths: Add trembling module, courtesy of Philippe Ivaldi. ------------------------------------------------------------------------ -r4244 | jcbowman | 2009-05-12 10:44:28 -0600 (Tue, 12 May 2009) | 2 lines +r4244 | jcbowman | 2009-05-12 18:44:28 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Fix rotated path label alignments. ------------------------------------------------------------------------ -r4243 | jcbowman | 2009-05-12 02:17:46 -0600 (Tue, 12 May 2009) | 2 lines +r4243 | jcbowman | 2009-05-12 10:17:46 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy Update comments. ------------------------------------------------------------------------ -r4242 | jcbowman | 2009-05-12 02:01:22 -0600 (Tue, 12 May 2009) | 2 lines +r4242 | jcbowman | 2009-05-12 10:01:22 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/doc/asymptote.texi @@ -3149,7 +3551,7 @@ Changed paths: Merge in Philippe Ivaldi's geometry module. ------------------------------------------------------------------------ -r4241 | jcbowman | 2009-05-11 22:28:04 -0600 (Mon, 11 May 2009) | 2 lines +r4241 | jcbowman | 2009-05-12 06:28:04 +0200 (Tue, 12 May 2009) | 2 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/doc/asymptote.texi @@ -3157,21 +3559,21 @@ Changed paths: Update license. ------------------------------------------------------------------------ -r4240 | jcbowman | 2009-05-11 15:37:12 -0600 (Mon, 11 May 2009) | 2 lines +r4240 | jcbowman | 2009-05-11 23:37:12 +0200 (Mon, 11 May 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Respect store argument of saveline. ------------------------------------------------------------------------ -r4239 | jcbowman | 2009-05-11 12:59:15 -0600 (Mon, 11 May 2009) | 2 lines +r4239 | jcbowman | 2009-05-11 20:59:15 +0200 (Mon, 11 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Update Ticks3. ------------------------------------------------------------------------ -r4238 | jcbowman | 2009-05-11 12:55:54 -0600 (Mon, 11 May 2009) | 4 lines +r4238 | jcbowman | 2009-05-11 20:55:54 +0200 (Mon, 11 May 2009) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_strings.asy @@ -3181,7 +3583,7 @@ Implement signedtrailingzero. Fix left-justified trailingzero alignment. ------------------------------------------------------------------------ -r4237 | jcbowman | 2009-05-11 11:39:52 -0600 (Mon, 11 May 2009) | 2 lines +r4237 | jcbowman | 2009-05-11 19:39:52 +0200 (Mon, 11 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/examples/functionshading.asy @@ -3189,7 +3591,7 @@ Changed paths: Resolve ambiguity. ------------------------------------------------------------------------ -r4236 | jcbowman | 2009-05-11 10:39:04 -0600 (Mon, 11 May 2009) | 4 lines +r4236 | jcbowman | 2009-05-11 18:39:04 +0200 (Mon, 11 May 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -3206,21 +3608,21 @@ Implement PostScript calculcator function shading and example. Add default fillrule arguments to frame shading routines. ------------------------------------------------------------------------ -r4235 | jcbowman | 2009-05-08 03:12:28 -0600 (Fri, 08 May 2009) | 2 lines +r4235 | jcbowman | 2009-05-08 11:12:28 +0200 (Fri, 08 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Continue splitting when radius of curvature is zero. ------------------------------------------------------------------------ -r4234 | jcbowman | 2009-05-08 02:59:30 -0600 (Fri, 08 May 2009) | 2 lines +r4234 | jcbowman | 2009-05-08 10:59:30 +0200 (Fri, 08 May 2009) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Add Philipp Stephani's GSL updates. ------------------------------------------------------------------------ -r4233 | jcbowman | 2009-05-08 02:11:46 -0600 (Fri, 08 May 2009) | 2 lines +r4233 | jcbowman | 2009-05-08 10:11:46 +0200 (Fri, 08 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -3228,7 +3630,7 @@ Changed paths: Fix link; add missing index entries. ------------------------------------------------------------------------ -r4232 | jcbowman | 2009-05-08 01:22:22 -0600 (Fri, 08 May 2009) | 2 lines +r4232 | jcbowman | 2009-05-08 09:22:22 +0200 (Fri, 08 May 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_arrows.asy @@ -3237,56 +3639,56 @@ Changed paths: Fix endpoint detection. ------------------------------------------------------------------------ -r4231 | jcbowman | 2009-05-05 15:44:20 -0600 (Tue, 05 May 2009) | 2 lines +r4231 | jcbowman | 2009-05-05 23:44:20 +0200 (Tue, 05 May 2009) | 2 lines Changed paths: M /trunk/asymptote/pen.h Fix write(pen). ------------------------------------------------------------------------ -r4230 | jcbowman | 2009-05-01 14:42:31 -0600 (Fri, 01 May 2009) | 2 lines +r4230 | jcbowman | 2009-05-01 22:42:31 +0200 (Fri, 01 May 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve documentation of shipout. ------------------------------------------------------------------------ -r4229 | jcbowman | 2009-04-30 11:52:51 -0600 (Thu, 30 Apr 2009) | 2 lines +r4229 | jcbowman | 2009-04-30 19:52:51 +0200 (Thu, 30 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/strokepath.asy Fix bounds. ------------------------------------------------------------------------ -r4228 | jcbowman | 2009-04-30 11:46:33 -0600 (Thu, 30 Apr 2009) | 2 lines +r4228 | jcbowman | 2009-04-30 19:46:33 +0200 (Thu, 30 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/strokepath.asy Fix comment. ------------------------------------------------------------------------ -r4227 | jcbowman | 2009-04-30 11:45:51 -0600 (Thu, 30 Apr 2009) | 2 lines +r4227 | jcbowman | 2009-04-30 19:45:51 +0200 (Thu, 30 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/strokepath.asy Improve example. ------------------------------------------------------------------------ -r4226 | jcbowman | 2009-04-30 11:44:10 -0600 (Thu, 30 Apr 2009) | 2 lines +r4226 | jcbowman | 2009-04-30 19:44:10 +0200 (Thu, 30 Apr 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/strokepath.asy Add strokepath example. ------------------------------------------------------------------------ -r4225 | jcbowman | 2009-04-30 09:32:36 -0600 (Thu, 30 Apr 2009) | 2 lines +r4225 | jcbowman | 2009-04-30 17:32:36 +0200 (Thu, 30 Apr 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/twistedtubes.asy Add twisted tubes example. ------------------------------------------------------------------------ -r4224 | jcbowman | 2009-04-29 16:44:55 -0600 (Wed, 29 Apr 2009) | 2 lines +r4224 | jcbowman | 2009-04-30 00:44:55 +0200 (Thu, 30 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/drawfill.cc M /trunk/asymptote/drawfill.h @@ -3297,14 +3699,14 @@ Changed paths: Implement functionshade primitive. ------------------------------------------------------------------------ -r4223 | jcbowman | 2009-04-27 22:14:04 -0600 (Mon, 27 Apr 2009) | 2 lines +r4223 | jcbowman | 2009-04-28 06:14:04 +0200 (Tue, 28 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Fix numerical resolution problem in label alignment. ------------------------------------------------------------------------ -r4222 | jcbowman | 2009-04-27 19:13:42 -0600 (Mon, 27 Apr 2009) | 6 lines +r4222 | jcbowman | 2009-04-28 03:13:42 +0200 (Tue, 28 Apr 2009) | 6 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/settings.cc @@ -3316,14 +3718,14 @@ Support automatic determination of sysdir from kpsewhich, if sysdir="". Add configure option --enable-tetex-build to force sysdir="". ------------------------------------------------------------------------ -r4221 | jcbowman | 2009-04-27 11:42:19 -0600 (Mon, 27 Apr 2009) | 2 lines +r4221 | jcbowman | 2009-04-27 19:42:19 +0200 (Mon, 27 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix effective camera positions for oblique projections. ------------------------------------------------------------------------ -r4220 | jcbowman | 2009-04-24 11:41:49 -0600 (Fri, 24 Apr 2009) | 2 lines +r4220 | jcbowman | 2009-04-24 19:41:49 +0200 (Fri, 24 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc M /trunk/asymptote/camperror.h @@ -3334,14 +3736,14 @@ Changed paths: Abort on write to pipe failed error. ------------------------------------------------------------------------ -r4219 | jcbowman | 2009-04-24 10:55:49 -0600 (Fri, 24 Apr 2009) | 2 lines +r4219 | jcbowman | 2009-04-24 18:55:49 +0200 (Fri, 24 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/slidemovies.asy Generate wheel.mpg earlier. ------------------------------------------------------------------------ -r4218 | jcbowman | 2009-04-24 10:25:53 -0600 (Fri, 24 Apr 2009) | 2 lines +r4218 | jcbowman | 2009-04-24 18:25:53 +0200 (Fri, 24 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/configure.ac @@ -3359,14 +3761,14 @@ Changed paths: Explicitly check for libGLU. ------------------------------------------------------------------------ -r4217 | jcbowman | 2009-04-24 01:59:54 -0600 (Fri, 24 Apr 2009) | 2 lines +r4217 | jcbowman | 2009-04-24 09:59:54 +0200 (Fri, 24 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Minor optimizations. ------------------------------------------------------------------------ -r4216 | jcbowman | 2009-04-24 01:52:12 -0600 (Fri, 24 Apr 2009) | 2 lines +r4216 | jcbowman | 2009-04-24 09:52:12 +0200 (Fri, 24 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc M /trunk/asymptote/psfile.h @@ -3374,7 +3776,7 @@ Changed paths: Simplify dealiasing code. ------------------------------------------------------------------------ -r4215 | jcbowman | 2009-04-24 00:35:32 -0600 (Fri, 24 Apr 2009) | 2 lines +r4215 | jcbowman | 2009-04-24 08:35:32 +0200 (Fri, 24 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc M /trunk/asymptote/psfile.h @@ -3382,14 +3784,14 @@ Changed paths: Optimize dealiasing of 3D rendered non-RGB images. ------------------------------------------------------------------------ -r4214 | jcbowman | 2009-04-22 11:42:32 -0600 (Wed, 22 Apr 2009) | 2 lines +r4214 | jcbowman | 2009-04-22 19:42:32 +0200 (Wed, 22 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Rename test member function. ------------------------------------------------------------------------ -r4213 | jcbowman | 2009-04-22 11:33:48 -0600 (Wed, 22 Apr 2009) | 2 lines +r4213 | jcbowman | 2009-04-22 19:33:48 +0200 (Wed, 22 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -3400,14 +3802,14 @@ Changed paths: Add example of defining a builtin asy struct. ------------------------------------------------------------------------ -r4212 | jcbowman | 2009-04-22 10:52:30 -0600 (Wed, 22 Apr 2009) | 2 lines +r4212 | jcbowman | 2009-04-22 18:52:30 +0200 (Wed, 22 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Implement value-based addVariable routine. ------------------------------------------------------------------------ -r4211 | jcbowman | 2009-04-19 13:56:00 -0600 (Sun, 19 Apr 2009) | 2 lines +r4211 | jcbowman | 2009-04-19 21:56:00 +0200 (Sun, 19 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/path.h @@ -3416,14 +3818,14 @@ Changed paths: Check recursion depth. ------------------------------------------------------------------------ -r4210 | jcbowman | 2009-04-19 10:34:12 -0600 (Sun, 19 Apr 2009) | 2 lines +r4210 | jcbowman | 2009-04-19 18:34:12 +0200 (Sun, 19 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Continue subdivision tests if zero radius of curvature is encountered. ------------------------------------------------------------------------ -r4209 | jcbowman | 2009-04-18 23:52:51 -0600 (Sat, 18 Apr 2009) | 3 lines +r4209 | jcbowman | 2009-04-19 07:52:51 +0200 (Sun, 19 Apr 2009) | 3 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/plain_Label.asy @@ -3434,21 +3836,21 @@ Change basealign so that "ace" and "acg" are always typeset at the same location. ------------------------------------------------------------------------ -r4208 | jcbowman | 2009-04-18 16:57:05 -0600 (Sat, 18 Apr 2009) | 2 lines +r4208 | jcbowman | 2009-04-19 00:57:05 +0200 (Sun, 19 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Handle more degenerate cases. ------------------------------------------------------------------------ -r4207 | jcbowman | 2009-04-18 15:42:21 -0600 (Sat, 18 Apr 2009) | 2 lines +r4207 | jcbowman | 2009-04-18 23:42:21 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Handle degenerate paths. ------------------------------------------------------------------------ -r4206 | jcbowman | 2009-04-18 15:28:41 -0600 (Sat, 18 Apr 2009) | 2 lines +r4206 | jcbowman | 2009-04-18 23:28:41 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -3461,7 +3863,7 @@ Changed paths: Improve adaptive algorithm used for rendering thick lines and tubes. ------------------------------------------------------------------------ -r4205 | jcbowman | 2009-04-18 06:56:28 -0600 (Sat, 18 Apr 2009) | 2 lines +r4205 | jcbowman | 2009-04-18 14:56:28 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -3470,28 +3872,28 @@ Changed paths: Fix circle ambiguity. ------------------------------------------------------------------------ -r4204 | jcbowman | 2009-04-17 22:15:06 -0600 (Fri, 17 Apr 2009) | 2 lines +r4204 | jcbowman | 2009-04-18 06:15:06 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/condor.asy Change perspective. ------------------------------------------------------------------------ -r4203 | jcbowman | 2009-04-17 22:07:43 -0600 (Fri, 17 Apr 2009) | 2 lines +r4203 | jcbowman | 2009-04-18 06:07:43 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/condor.asy Fix URL. ------------------------------------------------------------------------ -r4202 | jcbowman | 2009-04-17 22:05:46 -0600 (Fri, 17 Apr 2009) | 2 lines +r4202 | jcbowman | 2009-04-18 06:05:46 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/condor.asy Use parametric mesh. ------------------------------------------------------------------------ -r4201 | jcbowman | 2009-04-17 21:28:45 -0600 (Fri, 17 Apr 2009) | 2 lines +r4201 | jcbowman | 2009-04-18 05:28:45 +0200 (Sat, 18 Apr 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/condor.asy (from /trunk/asymptote/examples/stealthdragon.asy:4200) D /trunk/asymptote/examples/stealthdragon.asy @@ -3499,7 +3901,7 @@ Changed paths: Rename example; use smooth coloring. ------------------------------------------------------------------------ -r4200 | jcbowman | 2009-04-15 23:35:07 -0600 (Wed, 15 Apr 2009) | 2 lines +r4200 | jcbowman | 2009-04-16 07:35:07 +0200 (Thu, 16 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/extrudedcontour.asy A /trunk/asymptote/examples/stealthdragon.asy @@ -3507,7 +3909,7 @@ Changed paths: Add example. ------------------------------------------------------------------------ -r4199 | jcbowman | 2009-04-15 23:28:57 -0600 (Wed, 15 Apr 2009) | 3 lines +r4199 | jcbowman | 2009-04-16 07:28:57 +0200 (Thu, 16 Apr 2009) | 3 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/examples/partialsurface.asy @@ -3516,7 +3918,7 @@ Make boolean condition suppress function evaluation for linearly interpolated surfaces. ------------------------------------------------------------------------ -r4198 | jcbowman | 2009-04-13 08:48:38 -0600 (Mon, 13 Apr 2009) | 2 lines +r4198 | jcbowman | 2009-04-13 16:48:38 +0200 (Mon, 13 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/examples/animations/earthmoon.asy @@ -3525,48 +3927,48 @@ Changed paths: Add operator +(pen, pen[]) and operator +(pen[], pen) and example. ------------------------------------------------------------------------ -r4197 | jcbowman | 2009-04-12 23:04:57 -0600 (Sun, 12 Apr 2009) | 2 lines +r4197 | jcbowman | 2009-04-13 07:04:57 +0200 (Mon, 13 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/earthmoon.asy Generate mpg file. ------------------------------------------------------------------------ -r4196 | jcbowman | 2009-04-12 21:32:34 -0600 (Sun, 12 Apr 2009) | 2 lines +r4196 | jcbowman | 2009-04-13 05:32:34 +0200 (Mon, 13 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/earthmoon.asy Produce an animated gif rather than an inline PDF movie (about 1/4 as big). ------------------------------------------------------------------------ -r4195 | jcbowman | 2009-04-12 17:11:56 -0600 (Sun, 12 Apr 2009) | 2 lines +r4195 | jcbowman | 2009-04-13 01:11:56 +0200 (Mon, 13 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Avoid nullpath3 has no points error when label is given nullpath3. ------------------------------------------------------------------------ -r4194 | jcbowman | 2009-04-11 01:32:31 -0600 (Sat, 11 Apr 2009) | 2 lines +r4194 | jcbowman | 2009-04-11 09:32:31 +0200 (Sat, 11 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/cube.asy Set dotgranularity=0 in cube example to force dots to be rendered as spheres. ------------------------------------------------------------------------ -r4193 | jcbowman | 2009-04-10 22:03:19 -0600 (Fri, 10 Apr 2009) | 2 lines +r4193 | jcbowman | 2009-04-11 06:03:19 +0200 (Sat, 11 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/torusanimation.asy Improve example to use a better (smooth) approximation to a torus. ------------------------------------------------------------------------ -r4192 | jcbowman | 2009-04-10 15:10:27 -0600 (Fri, 10 Apr 2009) | 1 line +r4192 | jcbowman | 2009-04-10 23:10:27 +0200 (Fri, 10 Apr 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.71svn. ------------------------------------------------------------------------ -r4191 | jcbowman | 2009-04-10 12:57:02 -0600 (Fri, 10 Apr 2009) | 2 lines +r4191 | jcbowman | 2009-04-10 20:57:02 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -3574,21 +3976,21 @@ Changed paths: Add node. ------------------------------------------------------------------------ -r4190 | jcbowman | 2009-04-10 11:35:11 -0600 (Fri, 10 Apr 2009) | 2 lines +r4190 | jcbowman | 2009-04-10 19:35:11 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Optimize and improve valid range of choose(int n, int k). ------------------------------------------------------------------------ -r4189 | jcbowman | 2009-04-10 10:48:31 -0600 (Fri, 10 Apr 2009) | 2 lines +r4189 | jcbowman | 2009-04-10 18:48:31 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/torusanimation.asy Update example. ------------------------------------------------------------------------ -r4188 | jcbowman | 2009-04-10 09:52:28 -0600 (Fri, 10 Apr 2009) | 4 lines +r4188 | jcbowman | 2009-04-10 17:52:28 +0200 (Fri, 10 Apr 2009) | 4 lines Changed paths: M /trunk/asymptote/base/animation.asy @@ -3597,21 +3999,21 @@ Handle spaces in incoming prefix. Add prefix arguments to fit function. ------------------------------------------------------------------------ -r4187 | jcbowman | 2009-04-10 09:40:07 -0600 (Fri, 10 Apr 2009) | 2 lines +r4187 | jcbowman | 2009-04-10 17:40:07 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Handle spaces in filenames when using pdflatex. ------------------------------------------------------------------------ -r4186 | jcbowman | 2009-04-10 00:27:03 -0600 (Fri, 10 Apr 2009) | 2 lines +r4186 | jcbowman | 2009-04-10 08:27:03 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy Work around animation problems with spaces in filenames. ------------------------------------------------------------------------ -r4185 | jcbowman | 2009-04-09 23:57:44 -0600 (Thu, 09 Apr 2009) | 2 lines +r4185 | jcbowman | 2009-04-10 07:57:44 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_light.asy M /trunk/asymptote/base/three_margins.asy @@ -3621,7 +4023,7 @@ Changed paths: Add PenMargin2, etc., for planar arrowhead types like DefaultHead2. ------------------------------------------------------------------------ -r4184 | jcbowman | 2009-04-09 17:57:52 -0600 (Thu, 09 Apr 2009) | 3 lines +r4184 | jcbowman | 2009-04-10 01:57:52 +0200 (Fri, 10 Apr 2009) | 3 lines Changed paths: A /trunk/asymptote/base/labelpath3.asy M /trunk/asymptote/doc/asymptote.texi @@ -3631,14 +4033,14 @@ Add labelpath3 module for typesetting curved labels in 3D and example, courtesy of Jens Schwaiger. ------------------------------------------------------------------------ -r4183 | jcbowman | 2009-04-09 16:32:17 -0600 (Thu, 09 Apr 2009) | 2 lines +r4183 | jcbowman | 2009-04-10 00:32:17 +0200 (Fri, 10 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/teapot.asy Center target of teapot. ------------------------------------------------------------------------ -r4182 | jcbowman | 2009-04-09 16:30:01 -0600 (Thu, 09 Apr 2009) | 3 lines +r4182 | jcbowman | 2009-04-10 00:30:01 +0200 (Fri, 10 Apr 2009) | 3 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -3652,42 +4054,42 @@ Add bool center=false parameter to projections to allow one to automatically center the target within the bounding volume. ------------------------------------------------------------------------ -r4181 | jcbowman | 2009-04-07 21:05:53 -0600 (Tue, 07 Apr 2009) | 2 lines +r4181 | jcbowman | 2009-04-08 05:05:53 +0200 (Wed, 08 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fix clipping example. ------------------------------------------------------------------------ -r4180 | jcbowman | 2009-04-07 16:02:10 -0600 (Tue, 07 Apr 2009) | 2 lines +r4180 | jcbowman | 2009-04-08 00:02:10 +0200 (Wed, 08 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Minor update. ------------------------------------------------------------------------ -r4179 | jcbowman | 2009-04-07 16:00:46 -0600 (Tue, 07 Apr 2009) | 2 lines +r4179 | jcbowman | 2009-04-08 00:00:46 +0200 (Wed, 08 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Use locale. ------------------------------------------------------------------------ -r4178 | jcbowman | 2009-04-07 15:46:44 -0600 (Tue, 07 Apr 2009) | 2 lines +r4178 | jcbowman | 2009-04-07 23:46:44 +0200 (Tue, 07 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn More updates. ------------------------------------------------------------------------ -r4177 | jcbowman | 2009-04-07 15:41:08 -0600 (Tue, 07 Apr 2009) | 2 lines +r4177 | jcbowman | 2009-04-07 23:41:08 +0200 (Tue, 07 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fix typos. ------------------------------------------------------------------------ -r4176 | jcbowman | 2009-04-06 15:55:08 -0600 (Mon, 06 Apr 2009) | 3 lines +r4176 | jcbowman | 2009-04-06 23:55:08 +0200 (Mon, 06 Apr 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/examples/BezierPatch.asy @@ -3696,35 +4098,35 @@ Reserve surface(triple[][] P) for graphing a surface described by a matrix; use surface(patch(P)) instead. ------------------------------------------------------------------------ -r4175 | jcbowman | 2009-04-06 03:39:14 -0600 (Mon, 06 Apr 2009) | 2 lines +r4175 | jcbowman | 2009-04-06 11:39:14 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Work around old compiler bug. ------------------------------------------------------------------------ -r4174 | jcbowman | 2009-04-06 03:37:42 -0600 (Mon, 06 Apr 2009) | 1 line +r4174 | jcbowman | 2009-04-06 11:37:42 +0200 (Mon, 06 Apr 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.70svn. ------------------------------------------------------------------------ -r4173 | jcbowman | 2009-04-06 02:02:44 -0600 (Mon, 06 Apr 2009) | 2 lines +r4173 | jcbowman | 2009-04-06 10:02:44 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/animations/torusanimation.asy Add torus animation. ------------------------------------------------------------------------ -r4172 | jcbowman | 2009-04-06 01:53:38 -0600 (Mon, 06 Apr 2009) | 2 lines +r4172 | jcbowman | 2009-04-06 09:53:38 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/sphere.asy Reduce memory usage. ------------------------------------------------------------------------ -r4171 | jcbowman | 2009-04-06 01:07:52 -0600 (Mon, 06 Apr 2009) | 2 lines +r4171 | jcbowman | 2009-04-06 09:07:52 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/examples/animations/heatequation.asy @@ -3732,7 +4134,7 @@ Changed paths: Force outformat="pdf" when producing PDF animations. ------------------------------------------------------------------------ -r4170 | jcbowman | 2009-04-06 00:30:10 -0600 (Mon, 06 Apr 2009) | 2 lines +r4170 | jcbowman | 2009-04-06 08:30:10 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/three.asy @@ -3741,7 +4143,7 @@ Changed paths: Change - delimiter to + for animation frames and preview images. ------------------------------------------------------------------------ -r4169 | jcbowman | 2009-04-05 23:36:07 -0600 (Sun, 05 Apr 2009) | 2 lines +r4169 | jcbowman | 2009-04-06 07:36:07 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/plain_constants.asy @@ -3753,21 +4155,21 @@ Changed paths: Move extension routine and infinity constant to C++ code. ------------------------------------------------------------------------ -r4168 | jcbowman | 2009-04-05 22:50:15 -0600 (Sun, 05 Apr 2009) | 2 lines +r4168 | jcbowman | 2009-04-06 06:50:15 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/embed.asy Work around hyperref option clash. ------------------------------------------------------------------------ -r4167 | jcbowman | 2009-04-05 21:26:41 -0600 (Sun, 05 Apr 2009) | 2 lines +r4167 | jcbowman | 2009-04-06 05:26:41 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc Catch handled_errors (e.g. from ~psfile()) during throw handled_error(). ------------------------------------------------------------------------ -r4166 | jcbowman | 2009-04-05 17:08:33 -0600 (Sun, 05 Apr 2009) | 2 lines +r4166 | jcbowman | 2009-04-06 01:08:33 +0200 (Mon, 06 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain_boxes.asy @@ -3781,7 +4183,7 @@ Changed paths: Fix more animation prefix issues. ------------------------------------------------------------------------ -r4165 | jcbowman | 2009-04-05 14:19:38 -0600 (Sun, 05 Apr 2009) | 2 lines +r4165 | jcbowman | 2009-04-05 22:19:38 +0200 (Sun, 05 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/examples/animations/inlinemovie.tex @@ -3790,7 +4192,7 @@ Changed paths: Keep keep flag. ------------------------------------------------------------------------ -r4164 | jcbowman | 2009-04-05 13:21:13 -0600 (Sun, 05 Apr 2009) | 2 lines +r4164 | jcbowman | 2009-04-05 21:21:13 +0200 (Sun, 05 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain_arrows.asy @@ -3801,7 +4203,7 @@ Changed paths: Move 3D code out of animation.asy. ------------------------------------------------------------------------ -r4163 | jcbowman | 2009-04-05 12:02:17 -0600 (Sun, 05 Apr 2009) | 6 lines +r4163 | jcbowman | 2009-04-05 20:02:17 +0200 (Sun, 05 Apr 2009) | 6 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain_shipout.asy @@ -3818,21 +4220,21 @@ Fix global scaling of 3D animations. Add heatequation and earthmoon examples. ------------------------------------------------------------------------ -r4162 | jcbowman | 2009-04-04 14:26:55 -0600 (Sat, 04 Apr 2009) | 2 lines +r4162 | jcbowman | 2009-04-04 22:26:55 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Minor optimization. ------------------------------------------------------------------------ -r4161 | jcbowman | 2009-04-04 14:24:31 -0600 (Sat, 04 Apr 2009) | 2 lines +r4161 | jcbowman | 2009-04-04 22:24:31 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Use a lookup table to compute factorial(int n). ------------------------------------------------------------------------ -r4160 | jcbowman | 2009-04-04 12:50:14 -0600 (Sat, 04 Apr 2009) | 2 lines +r4160 | jcbowman | 2009-04-04 20:50:14 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -3843,7 +4245,7 @@ Changed paths: Implement miterlimit. ------------------------------------------------------------------------ -r4159 | jcbowman | 2009-04-04 11:26:43 -0600 (Sat, 04 Apr 2009) | 2 lines +r4159 | jcbowman | 2009-04-04 19:26:43 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -3851,35 +4253,35 @@ Changed paths: Fix use of baseline. ------------------------------------------------------------------------ -r4158 | jcbowman | 2009-04-04 10:44:00 -0600 (Sat, 04 Apr 2009) | 2 lines +r4158 | jcbowman | 2009-04-04 18:44:00 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Disable old lights for multiple exports. ------------------------------------------------------------------------ -r4157 | jcbowman | 2009-04-04 08:44:15 -0600 (Sat, 04 Apr 2009) | 2 lines +r4157 | jcbowman | 2009-04-04 16:44:15 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fix warning message. ------------------------------------------------------------------------ -r4156 | jcbowman | 2009-04-04 08:41:58 -0600 (Sat, 04 Apr 2009) | 2 lines +r4156 | jcbowman | 2009-04-04 16:41:58 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Add missing conditional. ------------------------------------------------------------------------ -r4155 | jcbowman | 2009-04-04 00:31:39 -0600 (Sat, 04 Apr 2009) | 2 lines +r4155 | jcbowman | 2009-04-04 08:31:39 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/trefoilknot.asy Improve example. ------------------------------------------------------------------------ -r4154 | jcbowman | 2009-04-04 00:24:39 -0600 (Sat, 04 Apr 2009) | 2 lines +r4154 | jcbowman | 2009-04-04 08:24:39 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/symbol.cc M /trunk/asymptote/symbol.h @@ -3887,7 +4289,7 @@ Changed paths: Remove unnecessary parameter. ------------------------------------------------------------------------ -r4153 | jcbowman | 2009-04-04 00:22:37 -0600 (Sat, 04 Apr 2009) | 4 lines +r4153 | jcbowman | 2009-04-04 08:22:37 +0200 (Sat, 04 Apr 2009) | 4 lines Changed paths: M /trunk/asymptote/process.cc M /trunk/asymptote/runtime.in @@ -3899,14 +4301,14 @@ divisor=0 means to use the previously set divisor (which defaults to 2, or the value specified on the command line with the -divisor option). ------------------------------------------------------------------------ -r4152 | jcbowman | 2009-04-03 22:06:22 -0600 (Fri, 03 Apr 2009) | 2 lines +r4152 | jcbowman | 2009-04-04 06:06:22 +0200 (Sat, 04 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Increase orthographic viewportfactor. ------------------------------------------------------------------------ -r4151 | jcbowman | 2009-04-02 00:05:50 -0600 (Thu, 02 Apr 2009) | 6 lines +r4151 | jcbowman | 2009-04-02 08:05:50 +0200 (Thu, 02 Apr 2009) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -3920,14 +4322,14 @@ Increase nsamples to 32. Remove nonselfintersecting restriction. ------------------------------------------------------------------------ -r4150 | jcbowman | 2009-04-01 02:38:09 -0600 (Wed, 01 Apr 2009) | 2 lines +r4150 | jcbowman | 2009-04-01 10:38:09 +0200 (Wed, 01 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix splitting. ------------------------------------------------------------------------ -r4149 | jcbowman | 2009-03-31 20:31:48 -0600 (Tue, 31 Mar 2009) | 2 lines +r4149 | jcbowman | 2009-04-01 04:31:48 +0200 (Wed, 01 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -3935,28 +4337,28 @@ Changed paths: Increase fuzz; use static dxmin. ------------------------------------------------------------------------ -r4148 | jcbowman | 2009-03-31 17:32:16 -0600 (Tue, 31 Mar 2009) | 2 lines +r4148 | jcbowman | 2009-04-01 01:32:16 +0200 (Wed, 01 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Reorder tests. ------------------------------------------------------------------------ -r4147 | jcbowman | 2009-03-31 17:27:53 -0600 (Tue, 31 Mar 2009) | 2 lines +r4147 | jcbowman | 2009-04-01 01:27:53 +0200 (Wed, 01 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Check for triangles first. ------------------------------------------------------------------------ -r4146 | jcbowman | 2009-03-31 16:54:09 -0600 (Tue, 31 Mar 2009) | 2 lines +r4146 | jcbowman | 2009-04-01 00:54:09 +0200 (Wed, 01 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Split randomly to avoid returning a degenerate patch. ------------------------------------------------------------------------ -r4145 | jcbowman | 2009-03-31 16:21:13 -0600 (Tue, 31 Mar 2009) | 2 lines +r4145 | jcbowman | 2009-04-01 00:21:13 +0200 (Wed, 01 Apr 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/picture.cc @@ -3964,21 +4366,21 @@ Changed paths: Fix interactive rendering. ------------------------------------------------------------------------ -r4144 | jcbowman | 2009-03-31 02:32:14 -0600 (Tue, 31 Mar 2009) | 2 lines +r4144 | jcbowman | 2009-03-31 10:32:14 +0200 (Tue, 31 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Once an internal degeneracy is found, don't check any more boundary cases. ------------------------------------------------------------------------ -r4143 | jcbowman | 2009-03-31 01:45:23 -0600 (Tue, 31 Mar 2009) | 2 lines +r4143 | jcbowman | 2009-03-31 09:45:23 +0200 (Tue, 31 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Increase nsamples. ------------------------------------------------------------------------ -r4142 | jcbowman | 2009-03-31 00:39:32 -0600 (Tue, 31 Mar 2009) | 2 lines +r4142 | jcbowman | 2009-03-31 08:39:32 +0200 (Tue, 31 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/base/three_surface.asy @@ -3986,7 +4388,7 @@ Changed paths: Split at the worst boundary degeneracy. ------------------------------------------------------------------------ -r4141 | jcbowman | 2009-03-30 12:29:10 -0600 (Mon, 30 Mar 2009) | 2 lines +r4141 | jcbowman | 2009-03-30 20:29:10 +0200 (Mon, 30 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/embed.asy M /trunk/asymptote/base/external.asy @@ -3994,14 +4396,14 @@ Changed paths: Add unicode option to make new versions of hyperref happy. ------------------------------------------------------------------------ -r4140 | jcbowman | 2009-03-30 08:44:30 -0600 (Mon, 30 Mar 2009) | 2 lines +r4140 | jcbowman | 2009-03-30 16:44:30 +0200 (Mon, 30 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy Pass animate the correct file name. ------------------------------------------------------------------------ -r4139 | jcbowman | 2009-03-29 23:39:56 -0600 (Sun, 29 Mar 2009) | 2 lines +r4139 | jcbowman | 2009-03-30 07:39:56 +0200 (Mon, 30 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -4009,7 +4411,7 @@ Changed paths: Fix floating point exception caused by attempt to split paths of length 0. ------------------------------------------------------------------------ -r4138 | jcbowman | 2009-03-29 23:07:13 -0600 (Sun, 29 Mar 2009) | 2 lines +r4138 | jcbowman | 2009-03-30 07:07:13 +0200 (Mon, 30 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/plain_paths.asy @@ -4018,14 +4420,14 @@ Changed paths: Move inside(path, pen fillrule=currentpen) to plain_paths.asy. ------------------------------------------------------------------------ -r4137 | jcbowman | 2009-03-29 20:57:00 -0600 (Sun, 29 Mar 2009) | 2 lines +r4137 | jcbowman | 2009-03-30 04:57:00 +0200 (Mon, 30 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/pen.h Fix defaultpen(evenodd). ------------------------------------------------------------------------ -r4136 | jcbowman | 2009-03-29 17:00:07 -0600 (Sun, 29 Mar 2009) | 3 lines +r4136 | jcbowman | 2009-03-30 01:00:07 +0200 (Mon, 30 Mar 2009) | 3 lines Changed paths: M /trunk/asymptote/path.cc @@ -4033,14 +4435,14 @@ Fix spurious "undefined" (on curve) return values from windingnumber; optimize handling of straight segments. ------------------------------------------------------------------------ -r4135 | jcbowman | 2009-03-29 14:45:08 -0600 (Sun, 29 Mar 2009) | 2 lines +r4135 | jcbowman | 2009-03-29 22:45:08 +0200 (Sun, 29 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Always define glthread. ------------------------------------------------------------------------ -r4134 | jcbowman | 2009-03-29 10:06:33 -0600 (Sun, 29 Mar 2009) | 2 lines +r4134 | jcbowman | 2009-03-29 18:06:33 +0200 (Sun, 29 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -4048,7 +4450,7 @@ Changed paths: Release version 1.06 of asymptote.sty to fix undefined \ASYbox bug. ------------------------------------------------------------------------ -r4133 | jcbowman | 2009-03-29 00:30:53 -0600 (Sun, 29 Mar 2009) | 5 lines +r4133 | jcbowman | 2009-03-29 08:30:53 +0200 (Sun, 29 Mar 2009) | 5 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -4060,7 +4462,7 @@ bezulate. An array of independent surfaces can still be constructed from a path array using a loop. ------------------------------------------------------------------------ -r4132 | jcbowman | 2009-03-29 00:05:54 -0600 (Sun, 29 Mar 2009) | 2 lines +r4132 | jcbowman | 2009-03-29 08:05:54 +0200 (Sun, 29 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/plain_pens.asy @@ -4068,14 +4470,14 @@ Changed paths: Fix inside(path,pen). ------------------------------------------------------------------------ -r4131 | jcbowman | 2009-03-28 23:35:26 -0600 (Sat, 28 Mar 2009) | 2 lines +r4131 | jcbowman | 2009-03-29 07:35:26 +0200 (Sun, 29 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Add Orest's connect patch to fix nesting. ------------------------------------------------------------------------ -r4130 | jcbowman | 2009-03-28 23:11:34 -0600 (Sat, 28 Mar 2009) | 2 lines +r4130 | jcbowman | 2009-03-29 07:11:34 +0200 (Sun, 29 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/three_surface.asy @@ -4083,14 +4485,14 @@ Changed paths: Specify zerowindingnumber rule. ------------------------------------------------------------------------ -r4129 | jcbowman | 2009-03-28 23:09:13 -0600 (Sat, 28 Mar 2009) | 2 lines +r4129 | jcbowman | 2009-03-29 07:09:13 +0200 (Sun, 29 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Improve inside(pair); add fillrule argument. ------------------------------------------------------------------------ -r4128 | jcbowman | 2009-03-28 14:21:05 -0600 (Sat, 28 Mar 2009) | 4 lines +r4128 | jcbowman | 2009-03-28 21:21:05 +0100 (Sat, 28 Mar 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three_surface.asy @@ -4099,7 +4501,7 @@ Remove internal patch degeneracies by splitting. Compute subpatches directly from control points. ------------------------------------------------------------------------ -r4127 | jcbowman | 2009-03-28 12:24:17 -0600 (Sat, 28 Mar 2009) | 2 lines +r4127 | jcbowman | 2009-03-28 19:24:17 +0100 (Sat, 28 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -4107,7 +4509,7 @@ Changed paths: Implement factorial and choose functions. ------------------------------------------------------------------------ -r4126 | jcbowman | 2009-03-28 12:18:16 -0600 (Sat, 28 Mar 2009) | 2 lines +r4126 | jcbowman | 2009-03-28 19:18:16 +0100 (Sat, 28 Mar 2009) | 2 lines Changed paths: D /trunk/asymptote/examples/intersectingpipes.asy A /trunk/asymptote/examples/pipeintersection.asy (from /trunk/asymptote/examples/intersectingpipes.asy:4121) @@ -4115,14 +4517,14 @@ Changed paths: Rename example; use orthographic projection. ------------------------------------------------------------------------ -r4125 | jcbowman | 2009-03-28 12:15:09 -0600 (Sat, 28 Mar 2009) | 2 lines +r4125 | jcbowman | 2009-03-28 19:15:09 +0100 (Sat, 28 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Make path(path3, pair(triple)) preserve straight flag. ------------------------------------------------------------------------ -r4124 | jcbowman | 2009-03-28 12:08:55 -0600 (Sat, 28 Mar 2009) | 2 lines +r4124 | jcbowman | 2009-03-28 19:08:55 +0100 (Sat, 28 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/picture.cc @@ -4130,20 +4532,20 @@ Changed paths: Fix quit deadlock. ------------------------------------------------------------------------ -r4123 | jcbowman | 2009-03-28 00:11:09 -0600 (Sat, 28 Mar 2009) | 2 lines +r4123 | jcbowman | 2009-03-28 07:11:09 +0100 (Sat, 28 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Increase fuzz to accomodate italic "k". ------------------------------------------------------------------------ -r4122 | oshardt | 2009-03-27 21:56:17 -0600 (Fri, 27 Mar 2009) | 1 line +r4122 | oshardt | 2009-03-28 04:56:17 +0100 (Sat, 28 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/base/bezulate.asy Fix connect() to ensure that removed regions do not contain an inner curve. Add fuzz to intersections(). ------------------------------------------------------------------------ -r4121 | jcbowman | 2009-03-24 21:47:57 -0600 (Tue, 24 Mar 2009) | 2 lines +r4121 | jcbowman | 2009-03-25 04:47:57 +0100 (Wed, 25 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/examples/intersectingpipes.asy @@ -4151,7 +4553,7 @@ Changed paths: Add surface constructor for multiple surfaces. ------------------------------------------------------------------------ -r4120 | jcbowman | 2009-03-24 21:32:54 -0600 (Tue, 24 Mar 2009) | 4 lines +r4120 | jcbowman | 2009-03-25 04:32:54 +0100 (Wed, 25 Mar 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn A /trunk/asymptote/examples/intersectingpipes.asy @@ -4161,13 +4563,13 @@ Add intersecting pipes example. Update FAQ. ------------------------------------------------------------------------ -r4119 | jcbowman | 2009-03-23 03:23:19 -0600 (Mon, 23 Mar 2009) | 1 line +r4119 | jcbowman | 2009-03-23 10:23:19 +0100 (Mon, 23 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.69svn. ------------------------------------------------------------------------ -r4118 | jcbowman | 2009-03-23 02:07:01 -0600 (Mon, 23 Mar 2009) | 2 lines +r4118 | jcbowman | 2009-03-23 09:07:01 +0100 (Mon, 23 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/examples/logo3.asy @@ -4175,21 +4577,21 @@ Changed paths: Update example. ------------------------------------------------------------------------ -r4117 | jcbowman | 2009-03-23 01:45:58 -0600 (Mon, 23 Mar 2009) | 2 lines +r4117 | jcbowman | 2009-03-23 08:45:58 +0100 (Mon, 23 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/filesurface.asy Illustrate automated camera and target computation. ------------------------------------------------------------------------ -r4116 | jcbowman | 2009-03-23 01:37:23 -0600 (Mon, 23 Mar 2009) | 2 lines +r4116 | jcbowman | 2009-03-23 08:37:23 +0100 (Mon, 23 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/inlinemovie.tex Remove unnecessary index. ------------------------------------------------------------------------ -r4115 | jcbowman | 2009-03-23 01:34:42 -0600 (Mon, 23 Mar 2009) | 8 lines +r4115 | jcbowman | 2009-03-23 08:34:42 +0100 (Mon, 23 Mar 2009) | 8 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/animation.asy @@ -4208,7 +4610,7 @@ Force multipage=true in inlinetex mode. Update definition of ASYanimategraphics. ------------------------------------------------------------------------ -r4114 | jcbowman | 2009-03-23 00:31:06 -0600 (Mon, 23 Mar 2009) | 2 lines +r4114 | jcbowman | 2009-03-23 07:31:06 +0100 (Mon, 23 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/glrender.h @@ -4218,21 +4620,21 @@ Changed paths: Fix export deadlock. ------------------------------------------------------------------------ -r4113 | jcbowman | 2009-03-22 21:42:52 -0600 (Sun, 22 Mar 2009) | 2 lines +r4113 | jcbowman | 2009-03-23 04:42:52 +0100 (Mon, 23 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Don't automatically move camera with target. ------------------------------------------------------------------------ -r4112 | jcbowman | 2009-03-22 12:12:52 -0600 (Sun, 22 Mar 2009) | 2 lines +r4112 | jcbowman | 2009-03-22 19:12:52 +0100 (Sun, 22 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/filesurface.asy Update example. ------------------------------------------------------------------------ -r4111 | jcbowman | 2009-03-22 12:11:41 -0600 (Sun, 22 Mar 2009) | 2 lines +r4111 | jcbowman | 2009-03-22 19:11:41 +0100 (Sun, 22 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -4241,21 +4643,21 @@ Changed paths: Fix camera adjustment. ------------------------------------------------------------------------ -r4110 | jcbowman | 2009-03-21 23:54:54 -0600 (Sat, 21 Mar 2009) | 2 lines +r4110 | jcbowman | 2009-03-22 06:54:54 +0100 (Sun, 22 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Allow \par in a label. ------------------------------------------------------------------------ -r4109 | jcbowman | 2009-03-21 23:49:23 -0600 (Sat, 21 Mar 2009) | 2 lines +r4109 | jcbowman | 2009-03-22 06:49:23 +0100 (Sun, 22 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation. ------------------------------------------------------------------------ -r4108 | jcbowman | 2009-03-21 23:07:42 -0600 (Sat, 21 Mar 2009) | 2 lines +r4108 | jcbowman | 2009-03-22 06:07:42 +0100 (Sun, 22 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -4265,21 +4667,21 @@ Changed paths: Improve and generalize baseline. ------------------------------------------------------------------------ -r4107 | jcbowman | 2009-03-20 23:26:20 -0600 (Fri, 20 Mar 2009) | 2 lines +r4107 | jcbowman | 2009-03-21 06:26:20 +0100 (Sat, 21 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Look for exact intersections also when fuzz=0. ------------------------------------------------------------------------ -r4106 | jcbowman | 2009-03-20 22:42:10 -0600 (Fri, 20 Mar 2009) | 2 lines +r4106 | jcbowman | 2009-03-21 05:42:10 +0100 (Sat, 21 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Suppress spurious space. ------------------------------------------------------------------------ -r4105 | jcbowman | 2009-03-20 22:28:18 -0600 (Fri, 20 Mar 2009) | 2 lines +r4105 | jcbowman | 2009-03-21 05:28:18 +0100 (Sat, 21 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/bsp.asy @@ -4298,14 +4700,14 @@ Changed paths: Standardize sqrtEpsilon. ------------------------------------------------------------------------ -r4104 | jcbowman | 2009-03-20 22:15:40 -0600 (Fri, 20 Mar 2009) | 2 lines +r4104 | jcbowman | 2009-03-21 05:15:40 +0100 (Sat, 21 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Remove unused line. ------------------------------------------------------------------------ -r4103 | jcbowman | 2009-03-20 22:14:19 -0600 (Fri, 20 Mar 2009) | 2 lines +r4103 | jcbowman | 2009-03-21 05:14:19 +0100 (Sat, 21 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -4316,27 +4718,27 @@ Changed paths: Improve handling of intersection fuzz. ------------------------------------------------------------------------ -r4102 | jcbowman | 2009-03-20 14:57:34 -0600 (Fri, 20 Mar 2009) | 2 lines +r4102 | jcbowman | 2009-03-20 21:57:34 +0100 (Fri, 20 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_light.asy Handle invisible material. ------------------------------------------------------------------------ -r4101 | jcbowman | 2009-03-20 14:28:23 -0600 (Fri, 20 Mar 2009) | 2 lines +r4101 | jcbowman | 2009-03-20 21:28:23 +0100 (Fri, 20 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Respect user-specified step value. ------------------------------------------------------------------------ -r4100 | jcbowman | 2009-03-19 02:59:14 -0600 (Thu, 19 Mar 2009) | 1 line +r4100 | jcbowman | 2009-03-19 09:59:14 +0100 (Thu, 19 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.68svn. ------------------------------------------------------------------------ -r4099 | jcbowman | 2009-03-19 01:33:53 -0600 (Thu, 19 Mar 2009) | 2 lines +r4099 | jcbowman | 2009-03-19 08:33:53 +0100 (Thu, 19 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/animation.asy @@ -4344,35 +4746,35 @@ Changed paths: Fix 3D animations with render > 0. ------------------------------------------------------------------------ -r4098 | jcbowman | 2009-03-19 00:40:40 -0600 (Thu, 19 Mar 2009) | 1 line +r4098 | jcbowman | 2009-03-19 07:40:40 +0100 (Thu, 19 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.nsi Don't force C:\Documents and Settings\bowman in asy.bat ------------------------------------------------------------------------ -r4097 | jcbowman | 2009-03-18 14:18:11 -0600 (Wed, 18 Mar 2009) | 2 lines +r4097 | jcbowman | 2009-03-18 21:18:11 +0100 (Wed, 18 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Remove normal fuzz. ------------------------------------------------------------------------ -r4096 | jcbowman | 2009-03-18 02:51:53 -0600 (Wed, 18 Mar 2009) | 2 lines +r4096 | jcbowman | 2009-03-18 09:51:53 +0100 (Wed, 18 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix overlap detection internal control points for short paths. ------------------------------------------------------------------------ -r4095 | jcbowman | 2009-03-18 01:23:56 -0600 (Wed, 18 Mar 2009) | 2 lines +r4095 | jcbowman | 2009-03-18 08:23:56 +0100 (Wed, 18 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add file missed from last revision. ------------------------------------------------------------------------ -r4094 | jcbowman | 2009-03-18 01:01:08 -0600 (Wed, 18 Mar 2009) | 2 lines +r4094 | jcbowman | 2009-03-18 08:01:08 +0100 (Wed, 18 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -4381,28 +4783,28 @@ Changed paths: Make intersection routines respect fuzz. ------------------------------------------------------------------------ -r4093 | jcbowman | 2009-03-15 17:20:04 -0600 (Sun, 15 Mar 2009) | 2 lines +r4093 | jcbowman | 2009-03-16 00:20:04 +0100 (Mon, 16 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Simplify normal calculation slightly. ------------------------------------------------------------------------ -r4092 | jcbowman | 2009-03-15 15:32:07 -0600 (Sun, 15 Mar 2009) | 2 lines +r4092 | jcbowman | 2009-03-15 22:32:07 +0100 (Sun, 15 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Reduce Fuzz. ------------------------------------------------------------------------ -r4091 | jcbowman | 2009-03-15 15:01:04 -0600 (Sun, 15 Mar 2009) | 2 lines +r4091 | jcbowman | 2009-03-15 22:01:04 +0100 (Sun, 15 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/smoothelevation.asy Allow prc output if render > 0. ------------------------------------------------------------------------ -r4090 | jcbowman | 2009-03-15 00:09:54 -0600 (Sun, 15 Mar 2009) | 3 lines +r4090 | jcbowman | 2009-03-15 07:09:54 +0100 (Sun, 15 Mar 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/settings.cc @@ -4411,14 +4813,14 @@ Implement settings.auto3D (default true) so that one can disable the poster option of movie15.sty. ------------------------------------------------------------------------ -r4089 | jcbowman | 2009-03-15 00:05:14 -0600 (Sun, 15 Mar 2009) | 2 lines +r4089 | jcbowman | 2009-03-15 07:05:14 +0100 (Sun, 15 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Increase fuzz. ------------------------------------------------------------------------ -r4088 | jcbowman | 2009-03-14 23:23:00 -0600 (Sat, 14 Mar 2009) | 3 lines +r4088 | jcbowman | 2009-03-15 06:23:00 +0100 (Sun, 15 Mar 2009) | 3 lines Changed paths: M /trunk/asymptote/base/three_surface.asy @@ -4426,14 +4828,14 @@ Detect and fix remaining cases of patch overlap due to normal reversal, using Rolle's theorem and a quartic root solve. ------------------------------------------------------------------------ -r4087 | jcbowman | 2009-03-14 23:09:29 -0600 (Sat, 14 Mar 2009) | 2 lines +r4087 | jcbowman | 2009-03-15 06:09:29 +0100 (Sun, 15 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Detect numerical roots at infinity; increase Fuzz. ------------------------------------------------------------------------ -r4086 | jcbowman | 2009-03-14 23:00:31 -0600 (Sat, 14 Mar 2009) | 7 lines +r4086 | jcbowman | 2009-03-15 06:00:31 +0100 (Sun, 15 Mar 2009) | 7 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/path.cc @@ -4449,7 +4851,7 @@ path is already cyclic. Implement pair versions of Bezier functions. ------------------------------------------------------------------------ -r4085 | jcbowman | 2009-03-14 15:25:45 -0600 (Sat, 14 Mar 2009) | 2 lines +r4085 | jcbowman | 2009-03-14 22:25:45 +0100 (Sat, 14 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/flatguide.h M /trunk/asymptote/guide.h @@ -4458,13 +4860,13 @@ Changed paths: Fix segmentation faults with operations on guide g=cycle. ------------------------------------------------------------------------ -r4084 | oshardt | 2009-03-14 11:49:45 -0600 (Sat, 14 Mar 2009) | 1 line +r4084 | oshardt | 2009-03-14 18:49:45 +0100 (Sat, 14 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/base/bezulate.asy Speed up curve sorting. ------------------------------------------------------------------------ -r4083 | jcbowman | 2009-03-13 15:02:45 -0600 (Fri, 13 Mar 2009) | 2 lines +r4083 | jcbowman | 2009-03-13 22:02:45 +0100 (Fri, 13 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/base/plain_paths.asy @@ -4472,41 +4874,41 @@ Changed paths: Fix buildcycle endpoints. ------------------------------------------------------------------------ -r4082 | oshardt | 2009-03-11 21:44:52 -0600 (Wed, 11 Mar 2009) | 1 line +r4082 | oshardt | 2009-03-12 04:44:52 +0100 (Thu, 12 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/base/bezulate.asy Use bounding box size to determine whether points are duplicates. ------------------------------------------------------------------------ -r4081 | jcbowman | 2009-03-11 01:47:57 -0600 (Wed, 11 Mar 2009) | 2 lines +r4081 | jcbowman | 2009-03-11 08:47:57 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Force planar flag for arrow construction. ------------------------------------------------------------------------ -r4080 | jcbowman | 2009-03-11 01:33:51 -0600 (Wed, 11 Mar 2009) | 2 lines +r4080 | jcbowman | 2009-03-11 08:33:51 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Remove another degenerate segment. ------------------------------------------------------------------------ -r4079 | jcbowman | 2009-03-11 01:25:36 -0600 (Wed, 11 Mar 2009) | 2 lines +r4079 | jcbowman | 2009-03-11 08:25:36 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Work around bezulate bug by removing degeneracy. ------------------------------------------------------------------------ -r4078 | jcbowman | 2009-03-11 00:18:34 -0600 (Wed, 11 Mar 2009) | 2 lines +r4078 | jcbowman | 2009-03-11 07:18:34 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix planar surfaces. ------------------------------------------------------------------------ -r4077 | jcbowman | 2009-03-10 23:45:25 -0600 (Tue, 10 Mar 2009) | 2 lines +r4077 | jcbowman | 2009-03-11 06:45:25 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -4514,7 +4916,7 @@ Changed paths: Simplify surface constructors; update documentation. ------------------------------------------------------------------------ -r4076 | jcbowman | 2009-03-10 22:23:19 -0600 (Tue, 10 Mar 2009) | 2 lines +r4076 | jcbowman | 2009-03-11 05:23:19 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/extra/intro.asy @@ -4530,21 +4932,21 @@ Changed paths: Update examples. ------------------------------------------------------------------------ -r4075 | jcbowman | 2009-03-10 22:06:09 -0600 (Tue, 10 Mar 2009) | 2 lines +r4075 | jcbowman | 2009-03-11 05:06:09 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Enable poster mode only when there is no rendered preview image. ------------------------------------------------------------------------ -r4074 | jcbowman | 2009-03-10 21:34:37 -0600 (Tue, 10 Mar 2009) | 2 lines +r4074 | jcbowman | 2009-03-11 04:34:37 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Add termination tests. ------------------------------------------------------------------------ -r4073 | jcbowman | 2009-03-10 21:34:12 -0600 (Tue, 10 Mar 2009) | 2 lines +r4073 | jcbowman | 2009-03-11 04:34:12 +0100 (Wed, 11 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/three.asy @@ -4552,7 +4954,7 @@ Changed paths: Increase bezulate fuzz; add termination tests. ------------------------------------------------------------------------ -r4072 | jcbowman | 2009-03-10 14:04:32 -0600 (Tue, 10 Mar 2009) | 2 lines +r4072 | jcbowman | 2009-03-10 21:04:32 +0100 (Tue, 10 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/base/pstoedit.asy @@ -4561,7 +4963,7 @@ Changed paths: Add Align constant. ------------------------------------------------------------------------ -r4071 | jcbowman | 2009-03-10 02:54:16 -0600 (Tue, 10 Mar 2009) | 2 lines +r4071 | jcbowman | 2009-03-10 09:54:16 +0100 (Tue, 10 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -4569,7 +4971,7 @@ Changed paths: Fix most instances of selfoverlapping patches. ------------------------------------------------------------------------ -r4070 | jcbowman | 2009-03-09 21:38:52 -0600 (Mon, 09 Mar 2009) | 2 lines +r4070 | jcbowman | 2009-03-10 04:38:52 +0100 (Tue, 10 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/drawfill.cc M /trunk/asymptote/pen.h @@ -4579,14 +4981,14 @@ Changed paths: Make axial and radial shading respect -gray, etc. ------------------------------------------------------------------------ -r4069 | jcbowman | 2009-03-09 00:07:48 -0600 (Mon, 09 Mar 2009) | 2 lines +r4069 | jcbowman | 2009-03-09 07:07:48 +0100 (Mon, 09 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix texpath control points for cyclic segments; respect straight flag. ------------------------------------------------------------------------ -r4068 | jcbowman | 2009-03-08 16:11:51 -0600 (Sun, 08 Mar 2009) | 2 lines +r4068 | jcbowman | 2009-03-08 23:11:51 +0100 (Sun, 08 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -4597,7 +4999,7 @@ Changed paths: Slightly simplify normal calculation. ------------------------------------------------------------------------ -r4067 | jcbowman | 2009-03-08 12:03:26 -0600 (Sun, 08 Mar 2009) | 4 lines +r4067 | jcbowman | 2009-03-08 19:03:26 +0100 (Sun, 08 Mar 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -4608,7 +5010,7 @@ Make default viewportwidth \the\linewidth in inline mode and 0 in attached mode. Document asy environment options in asymptote.sty version 1.04. ------------------------------------------------------------------------ -r4066 | jcbowman | 2009-03-08 09:23:09 -0600 (Sun, 08 Mar 2009) | 2 lines +r4066 | jcbowman | 2009-03-08 16:23:09 +0100 (Sun, 08 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/examples/filesurface.asy @@ -4616,7 +5018,7 @@ Changed paths: Simplify tick calculation. ------------------------------------------------------------------------ -r4065 | jcbowman | 2009-03-08 01:18:52 -0700 (Sun, 08 Mar 2009) | 2 lines +r4065 | jcbowman | 2009-03-08 09:18:52 +0100 (Sun, 08 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/examples/filesurface.asy @@ -4624,21 +5026,21 @@ Changed paths: Improve tick selection. ------------------------------------------------------------------------ -r4064 | jcbowman | 2009-03-08 00:02:42 -0700 (Sun, 08 Mar 2009) | 2 lines +r4064 | jcbowman | 2009-03-08 08:02:42 +0100 (Sun, 08 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/filesurface.asy Colorize example. ------------------------------------------------------------------------ -r4063 | jcbowman | 2009-03-07 20:17:56 -0700 (Sat, 07 Mar 2009) | 2 lines +r4063 | jcbowman | 2009-03-08 04:17:56 +0100 (Sun, 08 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/100d.views Reinstate original views. ------------------------------------------------------------------------ -r4062 | jcbowman | 2009-03-07 20:10:03 -0700 (Sat, 07 Mar 2009) | 2 lines +r4062 | jcbowman | 2009-03-08 04:10:03 +0100 (Sun, 08 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -4647,7 +5049,7 @@ Changed paths: Fix camera adjustment. ------------------------------------------------------------------------ -r4061 | jcbowman | 2009-03-07 15:23:58 -0700 (Sat, 07 Mar 2009) | 7 lines +r4061 | jcbowman | 2009-03-07 23:23:58 +0100 (Sat, 07 Mar 2009) | 7 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -4663,7 +5065,7 @@ Remove obsolete asyattach environment. Move viewportsize to plain_picture.asy to support asymptote.sty. ------------------------------------------------------------------------ -r4060 | jcbowman | 2009-03-07 11:14:05 -0700 (Sat, 07 Mar 2009) | 2 lines +r4060 | jcbowman | 2009-03-07 19:14:05 +0100 (Sat, 07 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -4671,14 +5073,14 @@ Changed paths: Better fix for unextended axes limits. ------------------------------------------------------------------------ -r4059 | jcbowman | 2009-03-07 09:10:37 -0700 (Sat, 07 Mar 2009) | 2 lines +r4059 | jcbowman | 2009-03-07 17:10:37 +0100 (Sat, 07 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation of crop. ------------------------------------------------------------------------ -r4058 | jcbowman | 2009-03-07 01:46:18 -0700 (Sat, 07 Mar 2009) | 2 lines +r4058 | jcbowman | 2009-03-07 09:46:18 +0100 (Sat, 07 Mar 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/filesurface.asy A /trunk/asymptote/examples/filesurface.dat @@ -4686,7 +5088,7 @@ Changed paths: Add example of a surface drawn using irregular data read from a file. ------------------------------------------------------------------------ -r4057 | jcbowman | 2009-03-07 01:23:39 -0700 (Sat, 07 Mar 2009) | 2 lines +r4057 | jcbowman | 2009-03-07 09:23:39 +0100 (Sat, 07 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -4694,7 +5096,7 @@ Changed paths: Revert last change. ------------------------------------------------------------------------ -r4056 | jcbowman | 2009-03-07 00:07:03 -0700 (Sat, 07 Mar 2009) | 2 lines +r4056 | jcbowman | 2009-03-07 08:07:03 +0100 (Sat, 07 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -4702,7 +5104,7 @@ Changed paths: Fix unextended axes limits and tick generation. ------------------------------------------------------------------------ -r4055 | jcbowman | 2009-03-06 23:45:35 -0700 (Fri, 06 Mar 2009) | 4 lines +r4055 | jcbowman | 2009-03-07 07:45:35 +0100 (Sat, 07 Mar 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -4713,14 +5115,14 @@ Avoid redundant camera adjustment messages. Increase camerafactor to 2 again. ------------------------------------------------------------------------ -r4054 | jcbowman | 2009-03-06 23:19:49 -0700 (Fri, 06 Mar 2009) | 2 lines +r4054 | jcbowman | 2009-03-07 07:19:49 +0100 (Sat, 07 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Check crop argument. ------------------------------------------------------------------------ -r4053 | jcbowman | 2009-03-06 22:52:12 -0700 (Fri, 06 Mar 2009) | 4 lines +r4053 | jcbowman | 2009-03-07 06:52:12 +0100 (Sat, 07 Mar 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -4730,7 +5132,7 @@ the bounding box, if it lies outside, and reposition camera when aspect ratio is not preserved. ------------------------------------------------------------------------ -r4052 | jcbowman | 2009-03-06 00:14:45 -0700 (Fri, 06 Mar 2009) | 2 lines +r4052 | jcbowman | 2009-03-06 08:14:45 +0100 (Fri, 06 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -4739,14 +5141,14 @@ Changed paths: Allow the user to specify a minimum viewportsize. ------------------------------------------------------------------------ -r4051 | jcbowman | 2009-03-06 00:06:16 -0700 (Fri, 06 Mar 2009) | 2 lines +r4051 | jcbowman | 2009-03-06 08:06:16 +0100 (Fri, 06 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Use a single call to clip in limits. ------------------------------------------------------------------------ -r4050 | jcbowman | 2009-03-05 23:56:25 -0700 (Thu, 05 Mar 2009) | 2 lines +r4050 | jcbowman | 2009-03-06 07:56:25 +0100 (Fri, 06 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_picture.asy @@ -4754,14 +5156,14 @@ Changed paths: Fix behaviour of xlimits(Crop) and ylimits(Crop) under picture transformation. ------------------------------------------------------------------------ -r4049 | jcbowman | 2009-03-04 02:44:31 -0700 (Wed, 04 Mar 2009) | 2 lines +r4049 | jcbowman | 2009-03-04 10:44:31 +0100 (Wed, 04 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Increase camerafactor. ------------------------------------------------------------------------ -r4048 | jcbowman | 2009-03-04 02:18:49 -0700 (Wed, 04 Mar 2009) | 2 lines +r4048 | jcbowman | 2009-03-04 10:18:49 +0100 (Wed, 04 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -4773,14 +5175,14 @@ Changed paths: Improve automatic camera adjustment. ------------------------------------------------------------------------ -r4047 | jcbowman | 2009-03-04 01:09:19 -0700 (Wed, 04 Mar 2009) | 2 lines +r4047 | jcbowman | 2009-03-04 09:09:19 +0100 (Wed, 04 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Work around intermittent hang on exit. ------------------------------------------------------------------------ -r4046 | jcbowman | 2009-03-03 01:19:52 -0700 (Tue, 03 Mar 2009) | 2 lines +r4046 | jcbowman | 2009-03-03 09:19:52 +0100 (Tue, 03 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.sty @@ -4790,7 +5192,7 @@ Changed paths: Make attached images printable. ------------------------------------------------------------------------ -r4045 | jcbowman | 2009-03-02 18:03:03 -0700 (Mon, 02 Mar 2009) | 6 lines +r4045 | jcbowman | 2009-03-03 02:03:03 +0100 (Tue, 03 Mar 2009) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -4801,7 +5203,7 @@ Fix viewportmargin. Remove unwanted camera rescaling. ------------------------------------------------------------------------ -r4044 | jcbowman | 2009-03-02 17:49:36 -0700 (Mon, 02 Mar 2009) | 5 lines +r4044 | jcbowman | 2009-03-03 01:49:36 +0100 (Tue, 03 Mar 2009) | 5 lines Changed paths: M /trunk/asymptote/base/embed.asy @@ -4811,7 +5213,7 @@ movie15.sty. The now widely available 2008/10/08 version of movie15.sty is now compulsory. ------------------------------------------------------------------------ -r4043 | jcbowman | 2009-03-02 14:45:00 -0700 (Mon, 02 Mar 2009) | 2 lines +r4043 | jcbowman | 2009-03-02 22:45:00 +0100 (Mon, 02 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -4819,54 +5221,54 @@ Changed paths: Fix slanted ticks. ------------------------------------------------------------------------ -r4042 | jcbowman | 2009-03-01 22:58:58 -0700 (Sun, 01 Mar 2009) | 1 line +r4042 | jcbowman | 2009-03-02 06:58:58 +0100 (Mon, 02 Mar 2009) | 1 line Changed paths: M /trunk/asymptote/base/animation.asy Fix animation prefix. ------------------------------------------------------------------------ -r4041 | jcbowman | 2009-03-01 16:32:54 -0700 (Sun, 01 Mar 2009) | 2 lines +r4041 | jcbowman | 2009-03-02 00:32:54 +0100 (Mon, 02 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Fix planar arrows for 2D projections. ------------------------------------------------------------------------ -r4040 | jcbowman | 2009-03-01 16:01:58 -0700 (Sun, 01 Mar 2009) | 2 lines +r4040 | jcbowman | 2009-03-02 00:01:58 +0100 (Mon, 02 Mar 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Allow one to disable poster option. ------------------------------------------------------------------------ -r4039 | jcbowman | 2009-02-27 16:32:54 -0700 (Fri, 27 Feb 2009) | 2 lines +r4039 | jcbowman | 2009-02-28 00:32:54 +0100 (Sat, 28 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/arrows3.asy Resize example. ------------------------------------------------------------------------ -r4038 | jcbowman | 2009-02-27 14:43:51 -0700 (Fri, 27 Feb 2009) | 2 lines +r4038 | jcbowman | 2009-02-27 22:43:51 +0100 (Fri, 27 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Don't hide convert errors. ------------------------------------------------------------------------ -r4037 | jcbowman | 2009-02-26 22:09:51 -0700 (Thu, 26 Feb 2009) | 2 lines +r4037 | jcbowman | 2009-02-27 06:09:51 +0100 (Fri, 27 Feb 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/fin.asy Add example (contributed by Orest Shardt). ------------------------------------------------------------------------ -r4036 | jcbowman | 2009-02-26 16:23:44 -0700 (Thu, 26 Feb 2009) | 1 line +r4036 | jcbowman | 2009-02-27 00:23:44 +0100 (Fri, 27 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.67svn. ------------------------------------------------------------------------ -r4035 | jcbowman | 2009-02-26 15:00:38 -0700 (Thu, 26 Feb 2009) | 2 lines +r4035 | jcbowman | 2009-02-26 23:00:38 +0100 (Thu, 26 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/animation.asy @@ -4874,7 +5276,7 @@ Changed paths: Fix outprefix. ------------------------------------------------------------------------ -r4034 | jcbowman | 2009-02-26 09:01:58 -0700 (Thu, 26 Feb 2009) | 4 lines +r4034 | jcbowman | 2009-02-26 17:01:58 +0100 (Thu, 26 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/runtime.in @@ -4884,7 +5286,7 @@ Remove animation optimization by default. Under MSWindows, suppress call to animate since it requires XWindows. ------------------------------------------------------------------------ -r4033 | jcbowman | 2009-02-26 07:50:25 -0700 (Thu, 26 Feb 2009) | 2 lines +r4033 | jcbowman | 2009-02-26 15:50:25 +0100 (Thu, 26 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/three_arrows.asy @@ -4895,35 +5297,35 @@ Changed paths: Add optional direction argument to three-dimensional bars. ------------------------------------------------------------------------ -r4032 | jcbowman | 2009-02-26 07:45:58 -0700 (Thu, 26 Feb 2009) | 2 lines +r4032 | jcbowman | 2009-02-26 15:45:58 +0100 (Thu, 26 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Avoid division by zero when NColors=1. ------------------------------------------------------------------------ -r4031 | jcbowman | 2009-02-26 05:45:26 -0700 (Thu, 26 Feb 2009) | 2 lines +r4031 | jcbowman | 2009-02-26 13:45:26 +0100 (Thu, 26 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Fix alignment bug under pdflatex due to missing %. ------------------------------------------------------------------------ -r4030 | jcbowman | 2009-02-25 22:04:31 -0700 (Wed, 25 Feb 2009) | 2 lines +r4030 | jcbowman | 2009-02-26 06:04:31 +0100 (Thu, 26 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/tvgen.asy Change guides into paths; update to LGPL. ------------------------------------------------------------------------ -r4029 | jcbowman | 2009-02-25 16:21:27 -0700 (Wed, 25 Feb 2009) | 2 lines +r4029 | jcbowman | 2009-02-26 00:21:27 +0100 (Thu, 26 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy Use integer division. ------------------------------------------------------------------------ -r4028 | jcbowman | 2009-02-25 16:07:20 -0700 (Wed, 25 Feb 2009) | 4 lines +r4028 | jcbowman | 2009-02-26 00:07:20 +0100 (Thu, 26 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -4933,14 +5335,14 @@ it discourages the use of named arguments and detracts from the usefulness of the -d option. ------------------------------------------------------------------------ -r4027 | jcbowman | 2009-02-25 15:06:21 -0700 (Wed, 25 Feb 2009) | 2 lines +r4027 | jcbowman | 2009-02-25 23:06:21 +0100 (Wed, 25 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Revert to interpolating function at midpoints. ------------------------------------------------------------------------ -r4026 | jcbowman | 2009-02-24 09:51:11 -0700 (Tue, 24 Feb 2009) | 2 lines +r4026 | jcbowman | 2009-02-24 17:51:11 +0100 (Tue, 24 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/doc/asymptote.texi @@ -4949,14 +5351,14 @@ Changed paths: Add optional normal argument to DefaultHead2, HookHead2, and TeXHead2. ------------------------------------------------------------------------ -r4025 | jcbowman | 2009-02-24 00:47:00 -0700 (Tue, 24 Feb 2009) | 2 lines +r4025 | jcbowman | 2009-02-24 08:47:00 +0100 (Tue, 24 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Fix Arrow3(TeXHead2). ------------------------------------------------------------------------ -r4024 | jcbowman | 2009-02-24 00:35:08 -0700 (Tue, 24 Feb 2009) | 2 lines +r4024 | jcbowman | 2009-02-24 08:35:08 +0100 (Tue, 24 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/three_arrows.asy @@ -4965,14 +5367,14 @@ Changed paths: Fix alignment of DefaultHead2, HookHead2, and TeXHead2 arrowheads. ------------------------------------------------------------------------ -r4023 | jcbowman | 2009-02-23 00:36:02 -0700 (Mon, 23 Feb 2009) | 2 lines +r4023 | jcbowman | 2009-02-23 08:36:02 +0100 (Mon, 23 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Improve thin 3D arrow handling. ------------------------------------------------------------------------ -r4022 | jcbowman | 2009-02-22 23:01:42 -0700 (Sun, 22 Feb 2009) | 7 lines +r4022 | jcbowman | 2009-02-23 07:01:42 +0100 (Mon, 23 Feb 2009) | 7 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/markers.asy @@ -4993,21 +5395,21 @@ with curved paths); standardize their usage with their 2D counterparts. Fix MidArcArrow(TeXHead) sizing. ------------------------------------------------------------------------ -r4021 | jcbowman | 2009-02-22 20:32:38 -0700 (Sun, 22 Feb 2009) | 2 lines +r4021 | jcbowman | 2009-02-23 04:32:38 +0100 (Mon, 23 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Untabify. ------------------------------------------------------------------------ -r4020 | jcbowman | 2009-02-21 20:30:41 -0700 (Sat, 21 Feb 2009) | 2 lines +r4020 | jcbowman | 2009-02-22 04:30:41 +0100 (Sun, 22 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Upgrade license to LPGL, as per email from Philippe. ------------------------------------------------------------------------ -r4019 | jcbowman | 2009-02-21 16:39:27 -0700 (Sat, 21 Feb 2009) | 2 lines +r4019 | jcbowman | 2009-02-22 00:39:27 +0100 (Sun, 22 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/examples/arrows3.asy @@ -5015,7 +5417,7 @@ Changed paths: Retune 3D arrow parameters. ------------------------------------------------------------------------ -r4018 | jcbowman | 2009-02-21 16:03:22 -0700 (Sat, 21 Feb 2009) | 3 lines +r4018 | jcbowman | 2009-02-22 00:03:22 +0100 (Sun, 22 Feb 2009) | 3 lines Changed paths: A /trunk/asymptote/LICENSE.LESSER (from /trunk/asymptote/prc/LICENSE.LESSER:4016) M /trunk/asymptote/fftw++.h @@ -5028,7 +5430,7 @@ Upgrade global license from GPL to LPGL (except as noted within individual files). ------------------------------------------------------------------------ -r4017 | jcbowman | 2009-02-21 15:37:09 -0700 (Sat, 21 Feb 2009) | 2 lines +r4017 | jcbowman | 2009-02-21 23:37:09 +0100 (Sat, 21 Feb 2009) | 2 lines Changed paths: D /trunk/asymptote/base/featpost3D.asy M /trunk/asymptote/doc/asymptote.texi @@ -5036,7 +5438,7 @@ Changed paths: Remove obsolete featpost3D.asy module. ------------------------------------------------------------------------ -r4016 | jcbowman | 2009-02-21 14:56:33 -0700 (Sat, 21 Feb 2009) | 2 lines +r4016 | jcbowman | 2009-02-21 22:56:33 +0100 (Sat, 21 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -5045,14 +5447,14 @@ Changed paths: Add bool autoadjust=true argument to perspective projection constructors. ------------------------------------------------------------------------ -r4015 | jcbowman | 2009-02-21 12:26:15 -0700 (Sat, 21 Feb 2009) | 2 lines +r4015 | jcbowman | 2009-02-21 20:26:15 +0100 (Sat, 21 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Fix TeXHead alignment for curved arrows along with endpoint appearance. ------------------------------------------------------------------------ -r4014 | jcbowman | 2009-02-21 10:46:29 -0700 (Sat, 21 Feb 2009) | 3 lines +r4014 | jcbowman | 2009-02-21 18:46:29 +0100 (Sat, 21 Feb 2009) | 3 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -5061,7 +5463,7 @@ Add autoadjust flag to projections to disable automatic camera adjustment (for experts only). ------------------------------------------------------------------------ -r4013 | jcbowman | 2009-02-21 10:28:25 -0700 (Sat, 21 Feb 2009) | 7 lines +r4013 | jcbowman | 2009-02-21 18:28:25 +0100 (Sat, 21 Feb 2009) | 7 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/solids.asy @@ -5074,14 +5476,14 @@ Always notify user if camera is moved, as transverse and longitudinal slices will have to be (manually) recomputed using the new camera position. ------------------------------------------------------------------------ -r4012 | jcbowman | 2009-02-21 03:05:32 -0700 (Sat, 21 Feb 2009) | 2 lines +r4012 | jcbowman | 2009-02-21 11:05:32 +0100 (Sat, 21 Feb 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/arrows3.asy Add 3D arrows example. ------------------------------------------------------------------------ -r4011 | jcbowman | 2009-02-21 02:21:58 -0700 (Sat, 21 Feb 2009) | 6 lines +r4011 | jcbowman | 2009-02-21 10:21:58 +0100 (Sat, 21 Feb 2009) | 6 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -5093,7 +5495,7 @@ Fix alignment of DefaultHead2, HookHead2, and TeXHead2 arrows. Pass arrowheadpen to 2D arrow routines when settings.render=0. ------------------------------------------------------------------------ -r4010 | jcbowman | 2009-02-20 17:30:32 -0700 (Fri, 20 Feb 2009) | 4 lines +r4010 | jcbowman | 2009-02-21 01:30:32 +0100 (Sat, 21 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -5104,27 +5506,27 @@ Use abs(camera-target) rather than just the z component for camera adjustment. Add showtarget parameter to projections. ------------------------------------------------------------------------ -r4009 | oshardt | 2009-02-19 20:14:42 -0700 (Thu, 19 Feb 2009) | 1 line +r4009 | oshardt | 2009-02-20 04:14:42 +0100 (Fri, 20 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/base/three_arrows.asy Improve selecton of perpendicular vector. ------------------------------------------------------------------------ -r4008 | jcbowman | 2009-02-19 16:46:20 -0700 (Thu, 19 Feb 2009) | 2 lines +r4008 | jcbowman | 2009-02-20 00:46:20 +0100 (Fri, 20 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r4007 | jcbowman | 2009-02-19 11:00:11 -0700 (Thu, 19 Feb 2009) | 1 line +r4007 | jcbowman | 2009-02-19 19:00:11 +0100 (Thu, 19 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.66svn. ------------------------------------------------------------------------ -r4006 | jcbowman | 2009-02-19 09:33:22 -0700 (Thu, 19 Feb 2009) | 6 lines +r4006 | jcbowman | 2009-02-19 17:33:22 +0100 (Thu, 19 Feb 2009) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawclipend.h @@ -5139,13 +5541,13 @@ Implement xelatex engine. Fix xelatex alignment. ------------------------------------------------------------------------ -r4005 | jcbowman | 2009-02-19 01:19:28 -0700 (Thu, 19 Feb 2009) | 1 line +r4005 | jcbowman | 2009-02-19 09:19:28 +0100 (Thu, 19 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.65svn ------------------------------------------------------------------------ -r4004 | jcbowman | 2009-02-19 00:24:03 -0700 (Thu, 19 Feb 2009) | 4 lines +r4004 | jcbowman | 2009-02-19 08:24:03 +0100 (Thu, 19 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/plain_shipout.asy @@ -5155,7 +5557,7 @@ Force shipped=true also for pictures. Install *.view files. ------------------------------------------------------------------------ -r4003 | jcbowman | 2009-02-18 23:13:31 -0700 (Wed, 18 Feb 2009) | 2 lines +r4003 | jcbowman | 2009-02-19 07:13:31 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/slide.asy @@ -5163,7 +5565,7 @@ Changed paths: Change default value of ysize parameter of asyinclude. ------------------------------------------------------------------------ -r4002 | jcbowman | 2009-02-18 23:08:44 -0700 (Wed, 18 Feb 2009) | 2 lines +r4002 | jcbowman | 2009-02-19 07:08:44 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/examples/100d.views @@ -5173,21 +5575,21 @@ Changed paths: Add Protein Data Bank example that illustrates how to set predefined views. ------------------------------------------------------------------------ -r4001 | jcbowman | 2009-02-18 22:13:48 -0700 (Wed, 18 Feb 2009) | 2 lines +r4001 | jcbowman | 2009-02-19 06:13:48 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Change dots to underscores in movie15.sty file names. ------------------------------------------------------------------------ -r4000 | jcbowman | 2009-02-18 21:03:22 -0700 (Wed, 18 Feb 2009) | 2 lines +r4000 | jcbowman | 2009-02-19 05:03:22 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: A /trunk/asymptote/prc/LICENSE.LESSER Add text of LGPL license for PRC code; LICENSE is in parent directory. ------------------------------------------------------------------------ -r3999 | jcbowman | 2009-02-18 21:01:08 -0700 (Wed, 18 Feb 2009) | 2 lines +r3999 | jcbowman | 2009-02-19 05:01:08 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/prc/PRCTools/bitData.cc M /trunk/asymptote/prc/PRCTools/bitData.h @@ -5214,21 +5616,21 @@ Changed paths: Upgrade license of PRC code from GPL to LGPL (agreed to by Orest). ------------------------------------------------------------------------ -r3998 | jcbowman | 2009-02-18 20:27:47 -0700 (Wed, 18 Feb 2009) | 2 lines +r3998 | jcbowman | 2009-02-19 04:27:47 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Update FAQ. ------------------------------------------------------------------------ -r3997 | jcbowman | 2009-02-18 19:38:33 -0700 (Wed, 18 Feb 2009) | 2 lines +r3997 | jcbowman | 2009-02-19 03:38:33 +0100 (Thu, 19 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/extra/intro.asy Fix file path. ------------------------------------------------------------------------ -r3996 | jcbowman | 2009-02-18 19:32:41 -0700 (Wed, 18 Feb 2009) | 4 lines +r3996 | jcbowman | 2009-02-19 03:32:41 +0100 (Thu, 19 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/GaussianSurface.asy @@ -5240,7 +5642,7 @@ Add interactive 3D examples to intro.asy. Make GaussianSurface smooth. ------------------------------------------------------------------------ -r3995 | jcbowman | 2009-02-18 15:06:16 -0700 (Wed, 18 Feb 2009) | 4 lines +r3995 | jcbowman | 2009-02-18 23:06:16 +0100 (Wed, 18 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/animation.asy @@ -5249,34 +5651,34 @@ Strip directory from animation prefix. Don't delete generated animation.pdf file. ------------------------------------------------------------------------ -r3994 | jcbowman | 2009-02-18 07:58:32 -0700 (Wed, 18 Feb 2009) | 2 lines +r3994 | jcbowman | 2009-02-18 15:58:32 +0100 (Wed, 18 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Add support for xelatex pdf specials, using the "literal" keyword. ------------------------------------------------------------------------ -r3993 | jcbowman | 2009-02-18 07:38:48 -0700 (Wed, 18 Feb 2009) | 2 lines +r3993 | jcbowman | 2009-02-18 15:38:48 +0100 (Wed, 18 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/slidedemo.asy Generate PythagoreanTree if needed. ------------------------------------------------------------------------ -r3992 | jcbowman | 2009-02-17 21:34:10 -0700 (Tue, 17 Feb 2009) | 2 lines +r3992 | jcbowman | 2009-02-18 05:34:10 +0100 (Wed, 18 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Don't force target to be part of control volume for absolute projections. ------------------------------------------------------------------------ -r3991 | jcbowman | 2009-02-17 21:25:41 -0700 (Tue, 17 Feb 2009) | 1 line +r3991 | jcbowman | 2009-02-18 05:25:41 +0100 (Wed, 18 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.64svn. ------------------------------------------------------------------------ -r3990 | jcbowman | 2009-02-17 19:51:20 -0700 (Tue, 17 Feb 2009) | 4 lines +r3990 | jcbowman | 2009-02-18 03:51:20 +0100 (Wed, 18 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -5285,14 +5687,14 @@ Force the target position to be inside the bounding volume. Remove duplicate definition of rectify(triple). ------------------------------------------------------------------------ -r3989 | jcbowman | 2009-02-17 16:37:06 -0700 (Tue, 17 Feb 2009) | 2 lines +r3989 | jcbowman | 2009-02-18 00:37:06 +0100 (Wed, 18 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix handling of invisible surfaces. ------------------------------------------------------------------------ -r3988 | jcbowman | 2009-02-17 09:07:42 -0700 (Tue, 17 Feb 2009) | 2 lines +r3988 | jcbowman | 2009-02-17 17:07:42 +0100 (Tue, 17 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/picture.cc @@ -5300,7 +5702,7 @@ Changed paths: Fix synchronization of interactive rendering. ------------------------------------------------------------------------ -r3987 | jcbowman | 2009-02-17 01:05:33 -0700 (Tue, 17 Feb 2009) | 7 lines +r3987 | jcbowman | 2009-02-17 09:05:33 +0100 (Tue, 17 Feb 2009) | 7 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/embed.asy @@ -5320,14 +5722,14 @@ Add patched version of movie15.sty for xelatex users' convenience. Simplify embed.asy. ------------------------------------------------------------------------ -r3986 | jcbowman | 2009-02-17 00:30:54 -0700 (Tue, 17 Feb 2009) | 2 lines +r3986 | jcbowman | 2009-02-17 08:30:54 +0100 (Tue, 17 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Improve guide collection for non-midpoint case. ------------------------------------------------------------------------ -r3985 | jcbowman | 2009-02-15 12:20:10 -0700 (Sun, 15 Feb 2009) | 6 lines +r3985 | jcbowman | 2009-02-15 20:20:10 +0100 (Sun, 15 Feb 2009) | 6 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/contour3.asy @@ -5340,14 +5742,14 @@ Avoid need for interpolating function at cell midpoint; use 2 triangles instead. Use nmesh instead of (poorly named) ncell parameter for 3D contours. ------------------------------------------------------------------------ -r3984 | jcbowman | 2009-02-15 12:13:24 -0700 (Sun, 15 Feb 2009) | 2 lines +r3984 | jcbowman | 2009-02-15 20:13:24 +0100 (Sun, 15 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Handle degenerate and nondegenerate rendering consistently. ------------------------------------------------------------------------ -r3983 | jcbowman | 2009-02-14 11:22:48 -0700 (Sat, 14 Feb 2009) | 4 lines +r3983 | jcbowman | 2009-02-14 19:22:48 +0100 (Sat, 14 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/gamma3.asy @@ -5359,14 +5761,14 @@ Implement complex gamma function in C++ code. Add interactive 3D surface of revolution example to slidedemo. ------------------------------------------------------------------------ -r3982 | jcbowman | 2009-02-14 09:58:01 -0700 (Sat, 14 Feb 2009) | 2 lines +r3982 | jcbowman | 2009-02-14 17:58:01 +0100 (Sat, 14 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Disable graphic generation when view=true. ------------------------------------------------------------------------ -r3981 | jcbowman | 2009-02-13 00:10:23 -0700 (Fri, 13 Feb 2009) | 2 lines +r3981 | jcbowman | 2009-02-13 08:10:23 +0100 (Fri, 13 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/embed.asy M /trunk/asymptote/patches/README @@ -5375,21 +5777,21 @@ Changed paths: Add 3D (and other multimedia) support for xelatex. ------------------------------------------------------------------------ -r3980 | jcbowman | 2009-02-12 23:54:37 -0700 (Thu, 12 Feb 2009) | 2 lines +r3980 | jcbowman | 2009-02-13 07:54:37 +0100 (Fri, 13 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Improve pdf format detection. ------------------------------------------------------------------------ -r3979 | jcbowman | 2009-02-12 23:49:37 -0700 (Thu, 12 Feb 2009) | 2 lines +r3979 | jcbowman | 2009-02-13 07:49:37 +0100 (Fri, 13 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix preview generation. ------------------------------------------------------------------------ -r3978 | jcbowman | 2009-02-12 22:42:05 -0700 (Thu, 12 Feb 2009) | 2 lines +r3978 | jcbowman | 2009-02-13 06:42:05 +0100 (Fri, 13 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/base/three.asy @@ -5397,14 +5799,14 @@ Changed paths: Automatically include rendered images when fitting nonprc pictures. ------------------------------------------------------------------------ -r3977 | jcbowman | 2009-02-11 23:24:54 -0700 (Wed, 11 Feb 2009) | 2 lines +r3977 | jcbowman | 2009-02-12 07:24:54 +0100 (Thu, 12 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/patches/pstoedit-3.45asy.patch Patch compilation errors in pstoedit-3.45. ------------------------------------------------------------------------ -r3976 | jcbowman | 2009-02-11 23:16:52 -0700 (Wed, 11 Feb 2009) | 2 lines +r3976 | jcbowman | 2009-02-12 07:16:52 +0100 (Thu, 12 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_arrows.asy @@ -5419,7 +5821,7 @@ Changed paths: Replace old-style constructors with operator init. ------------------------------------------------------------------------ -r3975 | jcbowman | 2009-02-11 22:01:19 -0700 (Wed, 11 Feb 2009) | 4 lines +r3975 | jcbowman | 2009-02-12 06:01:19 +0100 (Thu, 12 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/log2graph.asy @@ -5430,7 +5832,7 @@ Add electromagnetic spectrum. Make minor ticks work properly with custom logarithmic axes. ------------------------------------------------------------------------ -r3974 | jcbowman | 2009-02-11 16:17:38 -0700 (Wed, 11 Feb 2009) | 2 lines +r3974 | jcbowman | 2009-02-12 00:17:38 +0100 (Thu, 12 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/doc/filegraph.dat @@ -5438,14 +5840,14 @@ Changed paths: Don't report error on eof after reading 0 values from file. ------------------------------------------------------------------------ -r3973 | jcbowman | 2009-02-11 15:55:26 -0700 (Wed, 11 Feb 2009) | 2 lines +r3973 | jcbowman | 2009-02-11 23:55:26 +0100 (Wed, 11 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy Handle one-column legends correctly (patch contributed by Martin Wiebusch). ------------------------------------------------------------------------ -r3972 | jcbowman | 2009-02-11 15:33:45 -0700 (Wed, 11 Feb 2009) | 2 lines +r3972 | jcbowman | 2009-02-11 23:33:45 +0100 (Wed, 11 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/pstoedit.asy A /trunk/asymptote/examples/RiemannSurface.asy @@ -5454,14 +5856,14 @@ Changed paths: Fix pstoedit support: remove duplicate beginclip/endclip functions. ------------------------------------------------------------------------ -r3971 | jcbowman | 2009-02-11 00:29:52 -0700 (Wed, 11 Feb 2009) | 2 lines +r3971 | jcbowman | 2009-02-11 08:29:52 +0100 (Wed, 11 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update unicode documentation. ------------------------------------------------------------------------ -r3970 | jcbowman | 2009-02-10 23:22:23 -0700 (Tue, 10 Feb 2009) | 4 lines +r3970 | jcbowman | 2009-02-11 07:22:23 +0100 (Wed, 11 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/texfile.cc M /trunk/asymptote/texfile.h @@ -5471,14 +5873,14 @@ support pdf specials (required for label clipping and label transforms) or the movie15 package (required for 3D PDF files). ------------------------------------------------------------------------ -r3969 | jcbowman | 2009-02-09 00:16:59 -0700 (Mon, 09 Feb 2009) | 1 line +r3969 | jcbowman | 2009-02-09 08:16:59 +0100 (Mon, 09 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.63svn. ------------------------------------------------------------------------ -r3968 | jcbowman | 2009-02-08 23:00:12 -0700 (Sun, 08 Feb 2009) | 3 lines +r3968 | jcbowman | 2009-02-09 07:00:12 +0100 (Mon, 09 Feb 2009) | 3 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -5487,7 +5889,7 @@ Implement a pen rgb(string s) routine that returns a pen corresponding to a given 6-character RGB hexidecimal string. ------------------------------------------------------------------------ -r3967 | jcbowman | 2009-02-08 22:14:02 -0700 (Sun, 08 Feb 2009) | 2 lines +r3967 | jcbowman | 2009-02-09 06:14:02 +0100 (Mon, 09 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -5592,7 +5994,7 @@ Changed paths: Reformat C++ files. ------------------------------------------------------------------------ -r3966 | jcbowman | 2009-02-08 21:22:15 -0700 (Sun, 08 Feb 2009) | 2 lines +r3966 | jcbowman | 2009-02-09 05:22:15 +0100 (Mon, 09 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/CAD.asy M /trunk/asymptote/base/animation.asy @@ -5619,7 +6021,7 @@ Changed paths: Reformat and untabify base files. ------------------------------------------------------------------------ -r3965 | jcbowman | 2009-02-08 10:19:04 -0700 (Sun, 08 Feb 2009) | 2 lines +r3965 | jcbowman | 2009-02-08 18:19:04 +0100 (Sun, 08 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/base/plain_paths.asy @@ -5628,7 +6030,7 @@ Changed paths: Add Label arguments to more of the dot routines. ------------------------------------------------------------------------ -r3964 | jcbowman | 2009-02-07 13:08:26 -0700 (Sat, 07 Feb 2009) | 2 lines +r3964 | jcbowman | 2009-02-07 21:08:26 +0100 (Sat, 07 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -5637,7 +6039,7 @@ Changed paths: Add parametric version of markuniform. ------------------------------------------------------------------------ -r3963 | jcbowman | 2009-02-06 23:41:46 -0700 (Fri, 06 Feb 2009) | 3 lines +r3963 | jcbowman | 2009-02-07 07:41:46 +0100 (Sat, 07 Feb 2009) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -5646,34 +6048,34 @@ Implement int hex(string s) function that casts a hexidecimal string to an integer. ------------------------------------------------------------------------ -r3962 | jcbowman | 2009-02-06 19:04:56 -0700 (Fri, 06 Feb 2009) | 2 lines +r3962 | jcbowman | 2009-02-07 03:04:56 +0100 (Sat, 07 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy Add default picture argument. ------------------------------------------------------------------------ -r3961 | jcbowman | 2009-02-05 02:38:31 -0700 (Thu, 05 Feb 2009) | 2 lines +r3961 | jcbowman | 2009-02-05 10:38:31 +0100 (Thu, 05 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix asy -f pdf -o temp/venn. ------------------------------------------------------------------------ -r3960 | jcbowman | 2009-02-05 02:36:16 -0700 (Thu, 05 Feb 2009) | 1 line +r3960 | jcbowman | 2009-02-05 10:36:16 +0100 (Thu, 05 Feb 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.62svn. ------------------------------------------------------------------------ -r3959 | jcbowman | 2009-02-05 01:35:32 -0700 (Thu, 05 Feb 2009) | 2 lines +r3959 | jcbowman | 2009-02-05 09:35:32 +0100 (Thu, 05 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/venn.asy Prevent multiple shipouts in venn example. ------------------------------------------------------------------------ -r3958 | jcbowman | 2009-02-04 22:43:29 -0700 (Wed, 04 Feb 2009) | 4 lines +r3958 | jcbowman | 2009-02-05 06:43:29 +0100 (Thu, 05 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/base/nopapersize.ps M /trunk/asymptote/picture.cc @@ -5683,14 +6085,14 @@ MiKTeX version of dvips, which does not support the DVIPSRC environment variable. ------------------------------------------------------------------------ -r3957 | jcbowman | 2009-02-04 22:14:53 -0700 (Wed, 04 Feb 2009) | 2 lines +r3957 | jcbowman | 2009-02-05 06:14:53 +0100 (Thu, 05 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Indent. ------------------------------------------------------------------------ -r3956 | jcbowman | 2009-02-04 22:13:24 -0700 (Wed, 04 Feb 2009) | 2 lines +r3956 | jcbowman | 2009-02-05 06:13:24 +0100 (Thu, 05 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/shellsqrtx01.asy M /trunk/asymptote/glrender.cc @@ -5698,42 +6100,42 @@ Changed paths: Fix aspect ratio on re-entry. ------------------------------------------------------------------------ -r3955 | jcbowman | 2009-02-04 19:04:07 -0700 (Wed, 04 Feb 2009) | 2 lines +r3955 | jcbowman | 2009-02-05 03:04:07 +0100 (Thu, 05 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy Add Pentype function to return a pen of increasing colour and linetype. ------------------------------------------------------------------------ -r3954 | jcbowman | 2009-02-04 17:50:25 -0700 (Wed, 04 Feb 2009) | 2 lines +r3954 | jcbowman | 2009-02-05 01:50:25 +0100 (Thu, 05 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/galleon.asy Fix typo in URL. ------------------------------------------------------------------------ -r3953 | jcbowman | 2009-02-04 08:57:55 -0700 (Wed, 04 Feb 2009) | 2 lines +r3953 | jcbowman | 2009-02-04 16:57:55 +0100 (Wed, 04 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Re-enable freeglut extensions to support user-specified multisampling again. ------------------------------------------------------------------------ -r3952 | jcbowman | 2009-02-04 08:47:24 -0700 (Wed, 04 Feb 2009) | 2 lines +r3952 | jcbowman | 2009-02-04 16:47:24 +0100 (Wed, 04 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Destroy any existing export window before entering View mode. ------------------------------------------------------------------------ -r3951 | jcbowman | 2009-02-03 23:46:20 -0700 (Tue, 03 Feb 2009) | 2 lines +r3951 | jcbowman | 2009-02-04 07:46:20 +0100 (Wed, 04 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Remove spurious \phantom{+}. ------------------------------------------------------------------------ -r3950 | jcbowman | 2009-02-03 23:33:34 -0700 (Tue, 03 Feb 2009) | 4 lines +r3950 | jcbowman | 2009-02-04 07:33:34 +0100 (Wed, 04 Feb 2009) | 4 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/latexusage.tex @@ -5748,28 +6150,28 @@ Fix asydir(); under CYGWIN. Add missing CYGWIN prototype. ------------------------------------------------------------------------ -r3949 | jcbowman | 2009-02-03 22:53:23 -0700 (Tue, 03 Feb 2009) | 2 lines +r3949 | jcbowman | 2009-02-04 06:53:23 +0100 (Wed, 04 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/patches/dvipdf Remove -P pdf as this breaks file attachments. ------------------------------------------------------------------------ -r3948 | jcbowman | 2009-02-03 22:32:40 -0700 (Tue, 03 Feb 2009) | 2 lines +r3948 | jcbowman | 2009-02-04 06:32:40 +0100 (Wed, 04 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix segmentation fault due to spurious window creation in export loop. ------------------------------------------------------------------------ -r3947 | jcbowman | 2009-02-03 22:27:54 -0700 (Tue, 03 Feb 2009) | 2 lines +r3947 | jcbowman | 2009-02-04 06:27:54 +0100 (Wed, 04 Feb 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy Add string[] to int[] ecast. ------------------------------------------------------------------------ -r3946 | jcbowman | 2009-01-31 11:49:19 -0700 (Sat, 31 Jan 2009) | 4 lines +r3946 | jcbowman | 2009-01-31 19:49:19 +0100 (Sat, 31 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/picture.cc @@ -5778,28 +6180,28 @@ Fix dvipsOptions. Don't allow dvipsOptions to override -tnopapersize. ------------------------------------------------------------------------ -r3945 | jcbowman | 2009-01-31 10:18:22 -0700 (Sat, 31 Jan 2009) | 2 lines +r3945 | jcbowman | 2009-01-31 18:18:22 +0100 (Sat, 31 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/patches/dvipdf Update dvipdf to correspond to the latest ghostscript svn source. ------------------------------------------------------------------------ -r3944 | jcbowman | 2009-01-31 08:29:42 -0700 (Sat, 31 Jan 2009) | 2 lines +r3944 | jcbowman | 2009-01-31 16:29:42 +0100 (Sat, 31 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Warn that silhouette routine is intended only for 2d projections. ------------------------------------------------------------------------ -r3943 | jcbowman | 2009-01-30 23:22:51 -0700 (Fri, 30 Jan 2009) | 2 lines +r3943 | jcbowman | 2009-01-31 07:22:51 +0100 (Sat, 31 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Enforce the same zerowinding fillrule used by dvips. ------------------------------------------------------------------------ -r3942 | jcbowman | 2009-01-30 23:07:10 -0700 (Fri, 30 Jan 2009) | 2 lines +r3942 | jcbowman | 2009-01-31 07:07:10 +0100 (Sat, 31 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/nopapersize.ps M /trunk/asymptote/picture.cc @@ -5807,7 +6209,7 @@ Changed paths: Rename nosize to nopapersize for clarity. ------------------------------------------------------------------------ -r3941 | jcbowman | 2009-01-30 22:58:28 -0700 (Fri, 30 Jan 2009) | 4 lines +r3941 | jcbowman | 2009-01-31 06:58:28 +0100 (Sat, 31 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/base/nopapersize.ps @@ -5820,7 +6222,7 @@ distributions) that introduces unwanted %%BeginPaperSize commands into the EPS output. ------------------------------------------------------------------------ -r3940 | jcbowman | 2009-01-30 16:26:56 -0700 (Fri, 30 Jan 2009) | 4 lines +r3940 | jcbowman | 2009-01-31 00:26:56 +0100 (Sat, 31 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/base/asymptote.py M /trunk/asymptote/process.cc @@ -5831,7 +6233,7 @@ Reinstate -q (-quiet) option. Update asymptote.py to use -interactive option. ------------------------------------------------------------------------ -r3939 | jcbowman | 2009-01-27 14:38:53 -0700 (Tue, 27 Jan 2009) | 3 lines +r3939 | jcbowman | 2009-01-27 22:38:53 +0100 (Tue, 27 Jan 2009) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -5839,7 +6241,7 @@ Work around dvips configuration errors on some systems by enforcing no paper type comments. ------------------------------------------------------------------------ -r3938 | jcbowman | 2009-01-27 08:40:48 -0700 (Tue, 27 Jan 2009) | 2 lines +r3938 | jcbowman | 2009-01-27 16:40:48 +0100 (Tue, 27 Jan 2009) | 2 lines Changed paths: D /trunk/asymptote/examples/1overx.asy A /trunk/asymptote/examples/oneoverx.asy (from /trunk/asymptote/examples/1overx.asy:3937) @@ -5847,41 +6249,41 @@ Changed paths: Rename file. ------------------------------------------------------------------------ -r3937 | jcbowman | 2009-01-26 22:17:28 -0700 (Mon, 26 Jan 2009) | 1 line +r3937 | jcbowman | 2009-01-27 06:17:28 +0100 (Tue, 27 Jan 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.61svn. ------------------------------------------------------------------------ -r3936 | jcbowman | 2009-01-26 21:01:00 -0700 (Mon, 26 Jan 2009) | 2 lines +r3936 | jcbowman | 2009-01-27 05:01:00 +0100 (Tue, 27 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Fix surface condition type. ------------------------------------------------------------------------ -r3935 | jcbowman | 2009-01-26 17:58:00 -0700 (Mon, 26 Jan 2009) | 2 lines +r3935 | jcbowman | 2009-01-27 01:58:00 +0100 (Tue, 27 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/floor.asy Simplify notation. ------------------------------------------------------------------------ -r3934 | jcbowman | 2009-01-26 17:12:17 -0700 (Mon, 26 Jan 2009) | 2 lines +r3934 | jcbowman | 2009-01-27 01:12:17 +0100 (Tue, 27 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/floor.asy Remove diagnostics. ------------------------------------------------------------------------ -r3933 | jcbowman | 2009-01-26 17:11:23 -0700 (Mon, 26 Jan 2009) | 2 lines +r3933 | jcbowman | 2009-01-27 01:11:23 +0100 (Tue, 27 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/floor.asy Improved marker alignment. ------------------------------------------------------------------------ -r3932 | jcbowman | 2009-01-26 16:48:24 -0700 (Mon, 26 Jan 2009) | 3 lines +r3932 | jcbowman | 2009-01-27 00:48:24 +0100 (Tue, 27 Jan 2009) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -5894,35 +6296,35 @@ Force a new guide after omitting points in conditional graphs; avoid spurious empty guides. ------------------------------------------------------------------------ -r3931 | jcbowman | 2009-01-26 16:00:49 -0700 (Mon, 26 Jan 2009) | 2 lines +r3931 | jcbowman | 2009-01-27 00:00:49 +0100 (Tue, 27 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/floor.asy Improve axis label. ------------------------------------------------------------------------ -r3930 | jcbowman | 2009-01-26 15:59:40 -0700 (Mon, 26 Jan 2009) | 2 lines +r3930 | jcbowman | 2009-01-26 23:59:40 +0100 (Mon, 26 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/floor.asy Simplify example. ------------------------------------------------------------------------ -r3929 | jcbowman | 2009-01-26 15:56:55 -0700 (Mon, 26 Jan 2009) | 2 lines +r3929 | jcbowman | 2009-01-26 23:56:55 +0100 (Mon, 26 Jan 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/floor.asy Add floor example. ------------------------------------------------------------------------ -r3928 | jcbowman | 2009-01-26 12:54:20 -0700 (Mon, 26 Jan 2009) | 2 lines +r3928 | jcbowman | 2009-01-26 20:54:20 +0100 (Mon, 26 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Fix read from pipe failed error under MSDOS. ------------------------------------------------------------------------ -r3927 | jcbowman | 2009-01-25 23:18:19 -0700 (Sun, 25 Jan 2009) | 3 lines +r3927 | jcbowman | 2009-01-26 07:18:19 +0100 (Mon, 26 Jan 2009) | 3 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/asymptote.spec @@ -5931,21 +6333,21 @@ Allow xasy to be run from a write-protected directory under UNIX again by implementing broken (8.3) format tempdir workaround only for MSWindows. ------------------------------------------------------------------------ -r3926 | jcbowman | 2009-01-25 08:58:27 -0700 (Sun, 25 Jan 2009) | 2 lines +r3926 | jcbowman | 2009-01-25 16:58:27 +0100 (Sun, 25 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Catch out of memory errors. ------------------------------------------------------------------------ -r3925 | jcbowman | 2009-01-24 21:05:45 -0700 (Sat, 24 Jan 2009) | 2 lines +r3925 | jcbowman | 2009-01-25 05:05:45 +0100 (Sun, 25 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Remove LocalWords from FAQ. ------------------------------------------------------------------------ -r3924 | jcbowman | 2009-01-24 17:46:47 -0700 (Sat, 24 Jan 2009) | 3 lines +r3924 | jcbowman | 2009-01-25 01:46:47 +0100 (Sun, 25 Jan 2009) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -5953,7 +6355,7 @@ Recommend svn version of freeglut only for UNIX systems with graphics cards that support multisampling. ------------------------------------------------------------------------ -r3923 | jcbowman | 2009-01-24 17:29:36 -0700 (Sat, 24 Jan 2009) | 2 lines +r3923 | jcbowman | 2009-01-25 01:29:36 +0100 (Sun, 25 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/psfile.cc @@ -5962,14 +6364,14 @@ Changed paths: Catch unhandled exception when exporting to write-protected directory. ------------------------------------------------------------------------ -r3922 | jcbowman | 2009-01-24 15:21:27 -0700 (Sat, 24 Jan 2009) | 2 lines +r3922 | jcbowman | 2009-01-24 23:21:27 +0100 (Sat, 24 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Modify yum instructions for obtaining most recent version of Asymptote. ------------------------------------------------------------------------ -r3921 | jcbowman | 2009-01-24 14:57:49 -0700 (Sat, 24 Jan 2009) | 8 lines +r3921 | jcbowman | 2009-01-24 22:57:49 +0100 (Sat, 24 Jan 2009) | 8 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -5987,14 +6389,14 @@ Add more bool3 support functions. Reformat base files. ------------------------------------------------------------------------ -r3920 | jcbowman | 2009-01-24 12:34:04 -0700 (Sat, 24 Jan 2009) | 2 lines +r3920 | jcbowman | 2009-01-24 20:34:04 +0100 (Sat, 24 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Work around inability of movie15.sty package to handle spaces in filenames. ------------------------------------------------------------------------ -r3919 | jcbowman | 2009-01-24 11:07:14 -0700 (Sat, 24 Jan 2009) | 2 lines +r3919 | jcbowman | 2009-01-24 19:07:14 +0100 (Sat, 24 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -6002,14 +6404,14 @@ Changed paths: Add gettriple routine. ------------------------------------------------------------------------ -r3918 | jcbowman | 2009-01-24 11:04:57 -0700 (Sat, 24 Jan 2009) | 2 lines +r3918 | jcbowman | 2009-01-24 19:04:57 +0100 (Sat, 24 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Don't regenerate asy-keywords.el with make install-asy. ------------------------------------------------------------------------ -r3917 | jcbowman | 2009-01-24 10:30:30 -0700 (Sat, 24 Jan 2009) | 3 lines +r3917 | jcbowman | 2009-01-24 18:30:30 +0100 (Sat, 24 Jan 2009) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -6017,7 +6419,7 @@ Emphasize that settings.outformat="pdf" must be set before three.asy (or graph3.asy) is imported. ------------------------------------------------------------------------ -r3916 | jcbowman | 2009-01-24 10:05:21 -0700 (Sat, 24 Jan 2009) | 2 lines +r3916 | jcbowman | 2009-01-24 18:05:21 +0100 (Sat, 24 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -6025,7 +6427,7 @@ Changed paths: Document and standardize usage of bool3 type. ------------------------------------------------------------------------ -r3915 | jcbowman | 2009-01-23 22:38:32 -0700 (Fri, 23 Jan 2009) | 6 lines +r3915 | jcbowman | 2009-01-24 06:38:32 +0100 (Sat, 24 Jan 2009) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -6043,21 +6445,21 @@ distinguish between points that should not be plotted and points belonging to a new branch of the graph. ------------------------------------------------------------------------ -r3914 | jcbowman | 2009-01-22 10:13:15 -0700 (Thu, 22 Jan 2009) | 2 lines +r3914 | jcbowman | 2009-01-22 18:13:15 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/1overx.asy Simplify example. ------------------------------------------------------------------------ -r3913 | jcbowman | 2009-01-22 10:06:32 -0700 (Thu, 22 Jan 2009) | 2 lines +r3913 | jcbowman | 2009-01-22 18:06:32 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/1overx.asy Improve branch test. ------------------------------------------------------------------------ -r3912 | jcbowman | 2009-01-21 23:00:55 -0700 (Wed, 21 Jan 2009) | 7 lines +r3912 | jcbowman | 2009-01-22 07:00:55 +0100 (Thu, 22 Jan 2009) | 7 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -6073,42 +6475,42 @@ respectively. Add 1/x disconnected graph example. ------------------------------------------------------------------------ -r3911 | jcbowman | 2009-01-21 21:31:18 -0700 (Wed, 21 Jan 2009) | 2 lines +r3911 | jcbowman | 2009-01-22 05:31:18 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/quaternion.cc Avoid warning message. ------------------------------------------------------------------------ -r3910 | jcbowman | 2009-01-21 21:24:26 -0700 (Wed, 21 Jan 2009) | 2 lines +r3910 | jcbowman | 2009-01-22 05:24:26 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/colors.asy Use cmyk function. ------------------------------------------------------------------------ -r3909 | jcbowman | 2009-01-21 21:22:08 -0700 (Wed, 21 Jan 2009) | 2 lines +r3909 | jcbowman | 2009-01-22 05:22:08 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Fix default condition arguments. ------------------------------------------------------------------------ -r3908 | jcbowman | 2009-01-21 19:26:12 -0700 (Wed, 21 Jan 2009) | 2 lines +r3908 | jcbowman | 2009-01-22 03:26:12 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Remove obsolete +cmyk construct. ------------------------------------------------------------------------ -r3907 | jcbowman | 2009-01-21 17:33:26 -0700 (Wed, 21 Jan 2009) | 2 lines +r3907 | jcbowman | 2009-01-22 01:33:26 +0100 (Thu, 22 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/main.cc Improve stack overflow diagnostics. ------------------------------------------------------------------------ -r3906 | jcbowman | 2009-01-21 12:42:46 -0700 (Wed, 21 Jan 2009) | 2 lines +r3906 | jcbowman | 2009-01-21 20:42:46 +0100 (Wed, 21 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -6119,7 +6521,7 @@ Changed paths: In interp, first promote pens to the same colorspace. ------------------------------------------------------------------------ -r3905 | jcbowman | 2009-01-20 00:06:34 -0700 (Tue, 20 Jan 2009) | 2 lines +r3905 | jcbowman | 2009-01-20 08:06:34 +0100 (Tue, 20 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -6128,13 +6530,13 @@ Changed paths: Add optional bool cond(real)=null to 2D and 3D graph routines for functions. ------------------------------------------------------------------------ -r3904 | jcbowman | 2009-01-19 00:08:52 -0700 (Mon, 19 Jan 2009) | 1 line +r3904 | jcbowman | 2009-01-19 08:08:52 +0100 (Mon, 19 Jan 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.60svn. ------------------------------------------------------------------------ -r3903 | jcbowman | 2009-01-18 22:40:04 -0700 (Sun, 18 Jan 2009) | 4 lines +r3903 | jcbowman | 2009-01-19 06:40:04 +0100 (Mon, 19 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/picture.cc @@ -6145,7 +6547,7 @@ Clean up aux files. Fix aux conflicts in slide.asy. ------------------------------------------------------------------------ -r3902 | jcbowman | 2009-01-18 22:05:29 -0700 (Sun, 18 Jan 2009) | 4 lines +r3902 | jcbowman | 2009-01-19 06:05:29 +0100 (Mon, 19 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/picture.cc @@ -6154,21 +6556,21 @@ Unlink texput files from proper directory. Remove any old texput.aux file before creating TeX pipe. ------------------------------------------------------------------------ -r3901 | jcbowman | 2009-01-18 21:20:57 -0700 (Sun, 18 Jan 2009) | 2 lines +r3901 | jcbowman | 2009-01-19 05:20:57 +0100 (Mon, 19 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Fix defaultfilename in asy(string). ------------------------------------------------------------------------ -r3900 | jcbowman | 2009-01-18 15:59:34 -0700 (Sun, 18 Jan 2009) | 2 lines +r3900 | jcbowman | 2009-01-18 23:59:34 +0100 (Sun, 18 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/roundedpath.asy Handle nonintersecting paths. ------------------------------------------------------------------------ -r3899 | jcbowman | 2009-01-18 14:54:15 -0700 (Sun, 18 Jan 2009) | 2 lines +r3899 | jcbowman | 2009-01-18 22:54:15 +0100 (Sun, 18 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/settings.cc @@ -6176,7 +6578,7 @@ Changed paths: Add missing final long_opt entry. ------------------------------------------------------------------------ -r3898 | jcbowman | 2009-01-18 12:59:10 -0700 (Sun, 18 Jan 2009) | 4 lines +r3898 | jcbowman | 2009-01-18 20:59:10 +0100 (Sun, 18 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/main.cc @@ -6188,14 +6590,14 @@ Fix mixed export/View rendering. Wait for pid to finish with -nothreads. ------------------------------------------------------------------------ -r3897 | jcbowman | 2009-01-17 12:33:51 -0700 (Sat, 17 Jan 2009) | 2 lines +r3897 | jcbowman | 2009-01-17 20:33:51 +0100 (Sat, 17 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/near_earth.asy Simplify example. ------------------------------------------------------------------------ -r3896 | jcbowman | 2009-01-17 11:39:15 -0700 (Sat, 17 Jan 2009) | 2 lines +r3896 | jcbowman | 2009-01-17 19:39:15 +0100 (Sat, 17 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/pen.h @@ -6204,55 +6606,55 @@ Changed paths: Fix plain tex font scaling. ------------------------------------------------------------------------ -r3895 | jcbowman | 2009-01-13 08:25:51 -0700 (Tue, 13 Jan 2009) | 2 lines +r3895 | jcbowman | 2009-01-13 16:25:51 +0100 (Tue, 13 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo in manual. ------------------------------------------------------------------------ -r3894 | jcbowman | 2009-01-13 08:23:56 -0700 (Tue, 13 Jan 2009) | 2 lines +r3894 | jcbowman | 2009-01-13 16:23:56 +0100 (Tue, 13 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Transform margin paths. ------------------------------------------------------------------------ -r3893 | jcbowman | 2009-01-13 08:14:11 -0700 (Tue, 13 Jan 2009) | 2 lines +r3893 | jcbowman | 2009-01-13 16:14:11 +0100 (Tue, 13 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Add missing filltype option for projected 2D arrowheads. ------------------------------------------------------------------------ -r3892 | jcbowman | 2009-01-12 00:49:48 -0700 (Mon, 12 Jan 2009) | 2 lines +r3892 | jcbowman | 2009-01-12 08:49:48 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/png/Makefile.in Clean up html files. ------------------------------------------------------------------------ -r3891 | jcbowman | 2009-01-12 00:48:36 -0700 (Mon, 12 Jan 2009) | 2 lines +r3891 | jcbowman | 2009-01-12 08:48:36 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/png/Makefile.in Generate html files into doc/png. ------------------------------------------------------------------------ -r3890 | jcbowman | 2009-01-12 00:09:38 -0700 (Mon, 12 Jan 2009) | 2 lines +r3890 | jcbowman | 2009-01-12 08:09:38 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/asymptote.nsi Set "Start in" directory for xasy to %USERPROFILE%. ------------------------------------------------------------------------ -r3889 | jcbowman | 2009-01-12 00:02:03 -0700 (Mon, 12 Jan 2009) | 1 line +r3889 | jcbowman | 2009-01-12 08:02:03 +0100 (Mon, 12 Jan 2009) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.59svn. ------------------------------------------------------------------------ -r3888 | jcbowman | 2009-01-11 22:38:42 -0700 (Sun, 11 Jan 2009) | 2 lines +r3888 | jcbowman | 2009-01-12 06:38:42 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/doc/GaussianSurface.asy @@ -6260,21 +6662,21 @@ Changed paths: Draw 2D arrowheads when projecting to 2D. ------------------------------------------------------------------------ -r3887 | jcbowman | 2009-01-11 18:06:17 -0700 (Sun, 11 Jan 2009) | 2 lines +r3887 | jcbowman | 2009-01-12 02:06:17 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Cache asy.list. ------------------------------------------------------------------------ -r3886 | jcbowman | 2009-01-11 17:55:54 -0700 (Sun, 11 Jan 2009) | 2 lines +r3886 | jcbowman | 2009-01-12 01:55:54 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix include order. ------------------------------------------------------------------------ -r3885 | jcbowman | 2009-01-11 17:30:14 -0700 (Sun, 11 Jan 2009) | 2 lines +r3885 | jcbowman | 2009-01-12 01:30:14 +0100 (Mon, 12 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/glrender.cc @@ -6282,28 +6684,28 @@ Changed paths: Work around incompatibility of latex with DOS directory names. ------------------------------------------------------------------------ -r3884 | jcbowman | 2009-01-11 13:00:17 -0700 (Sun, 11 Jan 2009) | 2 lines +r3884 | jcbowman | 2009-01-11 21:00:17 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Port to latest version of CYGWIN glut.h header file. ------------------------------------------------------------------------ -r3883 | jcbowman | 2009-01-11 10:14:54 -0700 (Sun, 11 Jan 2009) | 2 lines +r3883 | jcbowman | 2009-01-11 18:14:54 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/hyperboloidsilhouette.asy Disable PRC for silhouette examples. ------------------------------------------------------------------------ -r3882 | jcbowman | 2009-01-11 10:03:18 -0700 (Sun, 11 Jan 2009) | 2 lines +r3882 | jcbowman | 2009-01-11 18:03:18 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Remove temporary asyinclude file. ------------------------------------------------------------------------ -r3881 | jcbowman | 2009-01-11 08:42:47 -0700 (Sun, 11 Jan 2009) | 4 lines +r3881 | jcbowman | 2009-01-11 16:42:47 +0100 (Sun, 11 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/examples/spheresilhouette.asy @@ -6313,14 +6715,14 @@ Draw a central transverse slice when m=1. Simplify spheresilhouette example. ------------------------------------------------------------------------ -r3880 | jcbowman | 2009-01-10 23:11:57 -0700 (Sat, 10 Jan 2009) | 2 lines +r3880 | jcbowman | 2009-01-11 07:11:57 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/spheresilhouette.asy Increase example size. ------------------------------------------------------------------------ -r3879 | jcbowman | 2009-01-10 23:09:42 -0700 (Sat, 10 Jan 2009) | 2 lines +r3879 | jcbowman | 2009-01-11 07:09:42 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: A /trunk/asymptote/examples/hyperboloidsilhouette.asy A /trunk/asymptote/examples/spheresilhouette.asy @@ -6328,7 +6730,7 @@ Changed paths: Add silhouette examples. ------------------------------------------------------------------------ -r3878 | jcbowman | 2009-01-10 18:06:20 -0700 (Sat, 10 Jan 2009) | 2 lines +r3878 | jcbowman | 2009-01-11 02:06:20 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/examples/hyperboloid.asy @@ -6336,7 +6738,7 @@ Changed paths: Fix silhouette routine. ------------------------------------------------------------------------ -r3877 | jcbowman | 2009-01-10 16:08:00 -0700 (Sat, 10 Jan 2009) | 2 lines +r3877 | jcbowman | 2009-01-11 00:08:00 +0100 (Sun, 11 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/solids.asy @@ -6344,28 +6746,28 @@ Changed paths: Fix magnitude of pair axes label alignments. ------------------------------------------------------------------------ -r3876 | jcbowman | 2009-01-10 11:32:02 -0700 (Sat, 10 Jan 2009) | 2 lines +r3876 | jcbowman | 2009-01-10 19:32:02 +0100 (Sat, 10 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Remove broken axis label alignment adjustment code. ------------------------------------------------------------------------ -r3875 | jcbowman | 2009-01-09 22:43:57 -0700 (Fri, 09 Jan 2009) | 2 lines +r3875 | jcbowman | 2009-01-10 06:43:57 +0100 (Sat, 10 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Address nullpath issues. ------------------------------------------------------------------------ -r3874 | jcbowman | 2009-01-08 22:31:58 -0700 (Thu, 08 Jan 2009) | 2 lines +r3874 | jcbowman | 2009-01-09 06:31:58 +0100 (Fri, 09 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/examples/gamma3.asy Indicate real values with red. ------------------------------------------------------------------------ -r3873 | jcbowman | 2009-01-08 22:00:07 -0700 (Thu, 08 Jan 2009) | 2 lines +r3873 | jcbowman | 2009-01-09 06:00:07 +0100 (Fri, 09 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -6374,14 +6776,14 @@ Changed paths: Add Wheel palette and example of complex Gamma function. ------------------------------------------------------------------------ -r3872 | jcbowman | 2009-01-08 00:14:48 -0700 (Thu, 08 Jan 2009) | 2 lines +r3872 | jcbowman | 2009-01-08 08:14:48 +0100 (Thu, 08 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Fix conflict with breqn package. ------------------------------------------------------------------------ -r3871 | jcbowman | 2009-01-06 22:02:00 -0700 (Tue, 06 Jan 2009) | 2 lines +r3871 | jcbowman | 2009-01-07 06:02:00 +0100 (Wed, 07 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/doc/asymptote.texi @@ -6390,7 +6792,7 @@ Changed paths: Implement ArcArrow3, etc. ------------------------------------------------------------------------ -r3870 | jcbowman | 2009-01-05 22:09:35 -0700 (Mon, 05 Jan 2009) | 4 lines +r3870 | jcbowman | 2009-01-06 06:09:35 +0100 (Tue, 06 Jan 2009) | 4 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -6402,7 +6804,7 @@ Fix interp(pen,pen,real) by reverting to standard pen addition. Fix cmyk(rgb(black)). ------------------------------------------------------------------------ -r3869 | hammera | 2009-01-04 13:47:12 -0700 (Sun, 04 Jan 2009) | 2 lines +r3869 | hammera | 2009-01-04 21:47:12 +0100 (Sun, 04 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -6410,14 +6812,14 @@ Changed paths: Report errors of arguments in illegal function call. ------------------------------------------------------------------------ -r3868 | jcbowman | 2009-01-01 11:34:19 -0700 (Thu, 01 Jan 2009) | 2 lines +r3868 | jcbowman | 2009-01-01 19:34:19 +0100 (Thu, 01 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Add missing file. ------------------------------------------------------------------------ -r3867 | hammera | 2008-12-31 21:44:59 -0700 (Wed, 31 Dec 2008) | 2 lines +r3867 | hammera | 2009-01-01 05:44:59 +0100 (Thu, 01 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -6430,7 +6832,7 @@ Changed paths: Added support for open function signatures. ------------------------------------------------------------------------ -r3866 | jcbowman | 2008-12-31 16:29:27 -0700 (Wed, 31 Dec 2008) | 2 lines +r3866 | jcbowman | 2009-01-01 00:29:27 +0100 (Thu, 01 Jan 2009) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/interact.cc @@ -6439,7 +6841,7 @@ Changed paths: Exit interactive mode on EOF, unless exitonEOF=false. ------------------------------------------------------------------------ -r3865 | jcbowman | 2008-12-31 15:10:39 -0700 (Wed, 31 Dec 2008) | 2 lines +r3865 | jcbowman | 2008-12-31 23:10:39 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/doc/asymptote.texi @@ -6447,7 +6849,7 @@ Changed paths: Add copy constructor TODO entry. ------------------------------------------------------------------------ -r3864 | jcbowman | 2008-12-31 10:01:44 -0700 (Wed, 31 Dec 2008) | 2 lines +r3864 | jcbowman | 2008-12-31 18:01:44 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/scaledgraph.asy @@ -6455,7 +6857,7 @@ Changed paths: Add example of factoring out an axis scaling. ------------------------------------------------------------------------ -r3863 | jcbowman | 2008-12-31 09:32:10 -0700 (Wed, 31 Dec 2008) | 2 lines +r3863 | jcbowman | 2008-12-31 17:32:10 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -6464,7 +6866,7 @@ Changed paths: Change VERSION from a function to a constant. ------------------------------------------------------------------------ -r3862 | jcbowman | 2008-12-31 08:19:16 -0700 (Wed, 31 Dec 2008) | 2 lines +r3862 | jcbowman | 2008-12-31 16:19:16 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/picture.cc @@ -6472,7 +6874,7 @@ Changed paths: Allow compilation without HAVE_LIBGLUT. ------------------------------------------------------------------------ -r3861 | jcbowman | 2008-12-30 22:19:29 -0700 (Tue, 30 Dec 2008) | 2 lines +r3861 | jcbowman | 2008-12-31 06:19:29 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/FAQ/Makefile @@ -6482,7 +6884,7 @@ Changed paths: Clean up texput files. ------------------------------------------------------------------------ -r3860 | jcbowman | 2008-12-30 22:10:19 -0700 (Tue, 30 Dec 2008) | 3 lines +r3860 | jcbowman | 2008-12-31 06:10:19 +0100 (Wed, 31 Dec 2008) | 3 lines Changed paths: M /trunk/asymptote/pen.h @@ -6490,28 +6892,28 @@ Revert previous pen changes; make operator + on grayscale pens a maximum operator. ------------------------------------------------------------------------ -r3859 | jcbowman | 2008-12-30 16:46:26 -0700 (Tue, 30 Dec 2008) | 2 lines +r3859 | jcbowman | 2008-12-31 00:46:26 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: A /trunk/asymptote/doc/png/Makefile.in Add missing file. ------------------------------------------------------------------------ -r3858 | jcbowman | 2008-12-30 16:43:13 -0700 (Tue, 30 Dec 2008) | 2 lines +r3858 | jcbowman | 2008-12-31 00:43:13 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Add dependency. ------------------------------------------------------------------------ -r3857 | jcbowman | 2008-12-30 16:31:36 -0700 (Tue, 30 Dec 2008) | 2 lines +r3857 | jcbowman | 2008-12-31 00:31:36 +0100 (Wed, 31 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/pen.h Fix pen addition involving colorless pens. ------------------------------------------------------------------------ -r3856 | jcbowman | 2008-12-30 16:13:45 -0700 (Tue, 30 Dec 2008) | 7 lines +r3856 | jcbowman | 2008-12-31 00:13:45 +0100 (Wed, 31 Dec 2008) | 7 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/Makefile.in @@ -6528,34 +6930,34 @@ Center images in manual. Update modified dvipdf. ------------------------------------------------------------------------ -r3855 | jcbowman | 2008-12-30 08:37:34 -0700 (Tue, 30 Dec 2008) | 2 lines +r3855 | jcbowman | 2008-12-30 16:37:34 +0100 (Tue, 30 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/pen.h Make pen arithmetic consistent across colorspaces. ------------------------------------------------------------------------ -r3854 | jcbowman | 2008-12-26 14:29:53 -0700 (Fri, 26 Dec 2008) | 2 lines +r3854 | jcbowman | 2008-12-26 22:29:53 +0100 (Fri, 26 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix error message. ------------------------------------------------------------------------ -r3853 | jcbowman | 2008-12-14 21:07:10 -0700 (Sun, 14 Dec 2008) | 2 lines +r3853 | jcbowman | 2008-12-15 05:07:10 +0100 (Mon, 15 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Improve tick adjustment. ------------------------------------------------------------------------ -r3852 | jcbowman | 2008-12-14 00:17:54 -0700 (Sun, 14 Dec 2008) | 1 line +r3852 | jcbowman | 2008-12-14 08:17:54 +0100 (Sun, 14 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.58svn. ------------------------------------------------------------------------ -r3851 | jcbowman | 2008-12-13 23:53:35 -0700 (Sat, 13 Dec 2008) | 2 lines +r3851 | jcbowman | 2008-12-14 07:53:35 +0100 (Sun, 14 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.nsi M /trunk/asymptote/asymptote.spec @@ -6563,21 +6965,21 @@ Changed paths: Use asy.bat instead of asy.exe in MSWindows start menu link. ------------------------------------------------------------------------ -r3850 | jcbowman | 2008-12-13 23:01:18 -0700 (Sat, 13 Dec 2008) | 2 lines +r3850 | jcbowman | 2008-12-14 07:01:18 +0100 (Sun, 14 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Resolve ambiguity. ------------------------------------------------------------------------ -r3849 | jcbowman | 2008-12-13 22:50:31 -0700 (Sat, 13 Dec 2008) | 2 lines +r3849 | jcbowman | 2008-12-14 06:50:31 +0100 (Sun, 14 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Fix picture sizing with beginclip/endclip. ------------------------------------------------------------------------ -r3848 | jcbowman | 2008-12-13 22:12:21 -0700 (Sat, 13 Dec 2008) | 2 lines +r3848 | jcbowman | 2008-12-14 06:12:21 +0100 (Sun, 14 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/runtime.in @@ -6585,7 +6987,7 @@ Changed paths: Add beginclip(picture) and endclip(picture) functions. ------------------------------------------------------------------------ -r3847 | jcbowman | 2008-12-13 21:55:58 -0700 (Sat, 13 Dec 2008) | 2 lines +r3847 | jcbowman | 2008-12-14 05:55:58 +0100 (Sun, 14 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/drawclipend.h @@ -6597,21 +6999,21 @@ Changed paths: Allow clipping across page boundaries. ------------------------------------------------------------------------ -r3846 | jcbowman | 2008-12-13 12:04:41 -0700 (Sat, 13 Dec 2008) | 2 lines +r3846 | jcbowman | 2008-12-13 20:04:41 +0100 (Sat, 13 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/alignbox.asy Simplify example. ------------------------------------------------------------------------ -r3845 | jcbowman | 2008-12-13 12:02:09 -0700 (Sat, 13 Dec 2008) | 2 lines +r3845 | jcbowman | 2008-12-13 20:02:09 +0100 (Sat, 13 Dec 2008) | 2 lines Changed paths: A /trunk/asymptote/examples/alignbox.asy Add example of aligned objects and envelopes. ------------------------------------------------------------------------ -r3844 | jcbowman | 2008-12-13 12:00:20 -0700 (Sat, 13 Dec 2008) | 4 lines +r3844 | jcbowman | 2008-12-13 20:00:20 +0100 (Sat, 13 Dec 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_boxes.asy @@ -6621,7 +7023,7 @@ Add object(Label, envelope, ...) constructor. Support object transformation and alignment. ------------------------------------------------------------------------ -r3843 | jcbowman | 2008-12-12 21:31:00 -0700 (Fri, 12 Dec 2008) | 2 lines +r3843 | jcbowman | 2008-12-13 05:31:00 +0100 (Sat, 13 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/drawlabel.cc @@ -6632,14 +7034,14 @@ Changed paths: Fix plain tex font size. ------------------------------------------------------------------------ -r3842 | jcbowman | 2008-12-11 22:19:17 -0700 (Thu, 11 Dec 2008) | 2 lines +r3842 | jcbowman | 2008-12-12 06:19:17 +0100 (Fri, 12 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Improve axis coverage calculation. ------------------------------------------------------------------------ -r3841 | jcbowman | 2008-12-10 10:02:14 -0700 (Wed, 10 Dec 2008) | 2 lines +r3841 | jcbowman | 2008-12-10 18:02:14 +0100 (Wed, 10 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -6647,21 +7049,21 @@ Changed paths: Simplify font(string name, real size). ------------------------------------------------------------------------ -r3840 | hammera | 2008-12-10 09:43:09 -0700 (Wed, 10 Dec 2008) | 2 lines +r3840 | hammera | 2008-12-10 17:43:09 +0100 (Wed, 10 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Handle empty history in get/setLastHistoryLine. ------------------------------------------------------------------------ -r3839 | jcbowman | 2008-12-09 02:06:46 -0700 (Tue, 09 Dec 2008) | 2 lines +r3839 | jcbowman | 2008-12-09 10:06:46 +0100 (Tue, 09 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Use defaultfilename in asy(string). ------------------------------------------------------------------------ -r3838 | jcbowman | 2008-12-09 01:19:06 -0700 (Tue, 09 Dec 2008) | 7 lines +r3838 | jcbowman | 2008-12-09 09:19:06 +0100 (Tue, 09 Dec 2008) | 7 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain.asy @@ -6682,28 +7084,28 @@ Make outname a read-only setting. Check if the output directory is writeable. ------------------------------------------------------------------------ -r3837 | jcbowman | 2008-12-08 20:44:52 -0700 (Mon, 08 Dec 2008) | 2 lines +r3837 | jcbowman | 2008-12-09 04:44:52 +0100 (Tue, 09 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add diagnostic. ------------------------------------------------------------------------ -r3836 | jcbowman | 2008-12-08 20:44:17 -0700 (Mon, 08 Dec 2008) | 2 lines +r3836 | jcbowman | 2008-12-09 04:44:17 +0100 (Tue, 09 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.nsi Make default MSDOS "start-in" directory %USERPROFILE%. ------------------------------------------------------------------------ -r3835 | jcbowman | 2008-12-08 20:43:28 -0700 (Mon, 08 Dec 2008) | 2 lines +r3835 | jcbowman | 2008-12-09 04:43:28 +0100 (Tue, 09 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Fix diagnostic. ------------------------------------------------------------------------ -r3834 | jcbowman | 2008-12-08 19:47:47 -0700 (Mon, 08 Dec 2008) | 2 lines +r3834 | jcbowman | 2008-12-09 03:47:47 +0100 (Tue, 09 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -6711,7 +7113,7 @@ Changed paths: Add optional basesize parameter to font. ------------------------------------------------------------------------ -r3833 | jcbowman | 2008-12-08 17:15:06 -0700 (Mon, 08 Dec 2008) | 3 lines +r3833 | jcbowman | 2008-12-09 01:15:06 +0100 (Tue, 09 Dec 2008) | 3 lines Changed paths: M /trunk/asymptote/doc/CDlabel.asy M /trunk/asymptote/texfile.cc @@ -6720,42 +7122,42 @@ Fix pdflatex texengine; abandon xelatex support since xelatex does not support pdf specials anyway. ------------------------------------------------------------------------ -r3832 | oshardt | 2008-12-08 15:44:46 -0700 (Mon, 08 Dec 2008) | 1 line +r3832 | oshardt | 2008-12-08 23:44:46 +0100 (Mon, 08 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyCodeEditor.py M /trunk/asymptote/GUI/xasyMainWin.py Handle failure to lauch external editor cleanly. ------------------------------------------------------------------------ -r3831 | jcbowman | 2008-12-07 13:57:02 -0700 (Sun, 07 Dec 2008) | 2 lines +r3831 | jcbowman | 2008-12-07 21:57:02 +0100 (Sun, 07 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/BUGS Update link. ------------------------------------------------------------------------ -r3830 | jcbowman | 2008-12-06 22:28:51 -0700 (Sat, 06 Dec 2008) | 2 lines +r3830 | jcbowman | 2008-12-07 06:28:51 +0100 (Sun, 07 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation of xasy installation. ------------------------------------------------------------------------ -r3829 | jcbowman | 2008-12-05 21:46:08 -0700 (Fri, 05 Dec 2008) | 1 line +r3829 | jcbowman | 2008-12-06 05:46:08 +0100 (Sat, 06 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.57svn. ------------------------------------------------------------------------ -r3828 | jcbowman | 2008-12-05 18:33:56 -0700 (Fri, 05 Dec 2008) | 2 lines +r3828 | jcbowman | 2008-12-06 02:33:56 +0100 (Sat, 06 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/grid3.asy Fix documentation of grid3. ------------------------------------------------------------------------ -r3827 | jcbowman | 2008-12-05 18:24:27 -0700 (Fri, 05 Dec 2008) | 2 lines +r3827 | jcbowman | 2008-12-06 02:24:27 +0100 (Sat, 06 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/grid3.asy M /trunk/asymptote/examples/smoothelevation.asy @@ -6763,7 +7165,7 @@ Changed paths: Add examples of using grid3 with scale(true). ------------------------------------------------------------------------ -r3826 | jcbowman | 2008-12-05 18:24:04 -0700 (Fri, 05 Dec 2008) | 3 lines +r3826 | jcbowman | 2008-12-06 02:24:04 +0100 (Sat, 06 Dec 2008) | 3 lines Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/texfile.h @@ -6772,14 +7174,14 @@ Fix bounding box bug by clearing \ASYbox dimensions for latex as well as for pdflatex. ------------------------------------------------------------------------ -r3825 | jcbowman | 2008-12-05 18:21:06 -0700 (Fri, 05 Dec 2008) | 2 lines +r3825 | jcbowman | 2008-12-06 02:21:06 +0100 (Sat, 06 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy Round font scaling to the nearest integer. ------------------------------------------------------------------------ -r3824 | jcbowman | 2008-12-05 10:27:49 -0700 (Fri, 05 Dec 2008) | 4 lines +r3824 | jcbowman | 2008-12-05 18:27:49 +0100 (Fri, 05 Dec 2008) | 4 lines Changed paths: M /trunk/asymptote/base/grid3.asy M /trunk/asymptote/base/slide.asy @@ -6792,33 +7194,33 @@ Add asyinclude function for including 3D PRC graphs in slides. Update grid3 documentation. ------------------------------------------------------------------------ -r3823 | pivaldi | 2008-12-05 02:45:16 -0700 (Fri, 05 Dec 2008) | 1 line +r3823 | pivaldi | 2008-12-05 10:45:16 +0100 (Fri, 05 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Fix version ------------------------------------------------------------------------ -r3822 | pivaldi | 2008-12-05 02:36:20 -0700 (Fri, 05 Dec 2008) | 1 line +r3822 | pivaldi | 2008-12-05 10:36:20 +0100 (Fri, 05 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Fix handling the environment asydef within lasy-mode. ------------------------------------------------------------------------ -r3821 | jcbowman | 2008-12-04 09:26:58 -0700 (Thu, 04 Dec 2008) | 2 lines +r3821 | jcbowman | 2008-12-04 17:26:58 +0100 (Thu, 04 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix shipout(wait=true). ------------------------------------------------------------------------ -r3820 | jcbowman | 2008-12-02 03:24:02 -0700 (Tue, 02 Dec 2008) | 1 line +r3820 | jcbowman | 2008-12-02 11:24:02 +0100 (Tue, 02 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.56svn. ------------------------------------------------------------------------ -r3819 | jcbowman | 2008-12-02 00:15:16 -0700 (Tue, 02 Dec 2008) | 2 lines +r3819 | jcbowman | 2008-12-02 08:15:16 +0100 (Tue, 02 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -6826,7 +7228,7 @@ Changed paths: Remove obsolete field of view factor. ------------------------------------------------------------------------ -r3818 | jcbowman | 2008-12-02 00:03:58 -0700 (Tue, 02 Dec 2008) | 6 lines +r3818 | jcbowman | 2008-12-02 08:03:58 +0100 (Tue, 02 Dec 2008) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -6839,7 +7241,7 @@ Add triple invert(pair z, projection P=currentprojection) routine that inverts a pair z onto the projection plane. ------------------------------------------------------------------------ -r3817 | jcbowman | 2008-12-01 23:41:41 -0700 (Mon, 01 Dec 2008) | 4 lines +r3817 | jcbowman | 2008-12-02 07:41:41 +0100 (Tue, 02 Dec 2008) | 4 lines Changed paths: M /trunk/asymptote/flatguide.cc M /trunk/asymptote/flatguide.h @@ -6851,21 +7253,21 @@ Fix more guide to path problems. Update guide tests. ------------------------------------------------------------------------ -r3816 | jcbowman | 2008-12-01 11:47:38 -0700 (Mon, 01 Dec 2008) | 2 lines +r3816 | jcbowman | 2008-12-01 19:47:38 +0100 (Mon, 01 Dec 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Fix drawing of paths of length 0. ------------------------------------------------------------------------ -r3815 | jcbowman | 2008-11-30 20:00:12 -0700 (Sun, 30 Nov 2008) | 1 line +r3815 | jcbowman | 2008-12-01 04:00:12 +0100 (Mon, 01 Dec 2008) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.55svn. ------------------------------------------------------------------------ -r3814 | jcbowman | 2008-11-30 17:19:15 -0700 (Sun, 30 Nov 2008) | 3 lines +r3814 | jcbowman | 2008-12-01 01:19:15 +0100 (Mon, 01 Dec 2008) | 3 lines Changed paths: M /trunk/asymptote/doc/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -6874,7 +7276,7 @@ Document need to remove latexusage_.pre along with latexusage-* and latexusage.aux when switching between latex and pdflatex usage. ------------------------------------------------------------------------ -r3813 | jcbowman | 2008-11-30 16:42:36 -0700 (Sun, 30 Nov 2008) | 6 lines +r3813 | jcbowman | 2008-12-01 00:42:36 +0100 (Mon, 01 Dec 2008) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/flatguide.h @@ -6889,7 +7291,7 @@ Fix reverse(guide3). Control points should trump direction specifiers. ------------------------------------------------------------------------ -r3812 | jcbowman | 2008-11-30 14:07:10 -0700 (Sun, 30 Nov 2008) | 2 lines +r3812 | jcbowman | 2008-11-30 22:07:10 +0100 (Sun, 30 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/settings.cc @@ -6897,14 +7299,14 @@ Changed paths: Add threads setting (default is true except under MSDOS). ------------------------------------------------------------------------ -r3811 | jcbowman | 2008-11-30 00:17:47 -0700 (Sun, 30 Nov 2008) | 2 lines +r3811 | jcbowman | 2008-11-30 08:17:47 +0100 (Sun, 30 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Fix curved cyclic paths of size 1. ------------------------------------------------------------------------ -r3810 | jcbowman | 2008-11-29 23:46:09 -0700 (Sat, 29 Nov 2008) | 6 lines +r3810 | jcbowman | 2008-11-30 07:46:09 +0100 (Sun, 30 Nov 2008) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -6917,7 +7319,7 @@ Fix reverse(guide). Add reverse(guide3). ------------------------------------------------------------------------ -r3809 | jcbowman | 2008-11-29 11:51:20 -0700 (Sat, 29 Nov 2008) | 3 lines +r3809 | jcbowman | 2008-11-29 19:51:20 +0100 (Sat, 29 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/settings.cc @@ -6925,7 +7327,7 @@ Fix multiple file batch mode under MSWindows: only query the MSWindows registry once. ------------------------------------------------------------------------ -r3808 | jcbowman | 2008-11-29 11:50:09 -0700 (Sat, 29 Nov 2008) | 4 lines +r3808 | jcbowman | 2008-11-29 19:50:09 +0100 (Sat, 29 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/picture.cc @@ -6935,7 +7337,7 @@ Fix compilation without HAVE_LIBPTHREAD. Call HideWindow under MSWindows when View=false. ------------------------------------------------------------------------ -r3807 | jcbowman | 2008-11-27 23:51:31 -0700 (Thu, 27 Nov 2008) | 2 lines +r3807 | jcbowman | 2008-11-28 07:51:31 +0100 (Fri, 28 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -6944,20 +7346,20 @@ Changed paths: Respect 3D Label filltype when render=0. ------------------------------------------------------------------------ -r3806 | jcbowman | 2008-11-27 15:08:09 -0700 (Thu, 27 Nov 2008) | 2 lines +r3806 | jcbowman | 2008-11-27 23:08:09 +0100 (Thu, 27 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Clarify that the native glut library is used instead of freeglut under MacOSX. ------------------------------------------------------------------------ -r3805 | jcbowman | 2008-11-27 12:49:29 -0700 (Thu, 27 Nov 2008) | 1 line +r3805 | jcbowman | 2008-11-27 20:49:29 +0100 (Thu, 27 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.54svn. ------------------------------------------------------------------------ -r3804 | jcbowman | 2008-11-27 11:39:54 -0700 (Thu, 27 Nov 2008) | 5 lines +r3804 | jcbowman | 2008-11-27 19:39:54 +0100 (Thu, 27 Nov 2008) | 5 lines Changed paths: M /trunk/asymptote/asymptote.nsi M /trunk/asymptote/asymptote.spec @@ -6969,21 +7371,21 @@ Note: this doesn't get uninstalled since it is the "right" default anyway. Rename asy-console.bat to asy.bat. ------------------------------------------------------------------------ -r3803 | jcbowman | 2008-11-27 00:14:49 -0700 (Thu, 27 Nov 2008) | 2 lines +r3803 | jcbowman | 2008-11-27 08:14:49 +0100 (Thu, 27 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Force CFLAGS="-g -O3" default again. ------------------------------------------------------------------------ -r3802 | jcbowman | 2008-11-27 00:01:41 -0700 (Thu, 27 Nov 2008) | 2 lines +r3802 | jcbowman | 2008-11-27 08:01:41 +0100 (Thu, 27 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/tvgen.asy Output diagnostics only if verbose > 1. ------------------------------------------------------------------------ -r3801 | jcbowman | 2008-11-26 23:58:03 -0700 (Wed, 26 Nov 2008) | 4 lines +r3801 | jcbowman | 2008-11-27 07:58:03 +0100 (Thu, 27 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -6993,14 +7395,14 @@ Add minblockwidth, minblockheight, and mincirclediameter parameters. Change Horizontal and Vertical to a nonboolean type flowdir. ------------------------------------------------------------------------ -r3800 | jcbowman | 2008-11-26 22:31:46 -0700 (Wed, 26 Nov 2008) | 2 lines +r3800 | jcbowman | 2008-11-27 06:31:46 +0100 (Thu, 27 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix PRC projection sizing when up != Z. ------------------------------------------------------------------------ -r3799 | jcbowman | 2008-11-26 21:15:36 -0700 (Wed, 26 Nov 2008) | 4 lines +r3799 | jcbowman | 2008-11-27 05:15:36 +0100 (Thu, 27 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/picture.cc @@ -7010,7 +7412,7 @@ Add missing wait. Fix aspect ratio in interactive mode. ------------------------------------------------------------------------ -r3798 | jcbowman | 2008-11-26 19:33:53 -0700 (Wed, 26 Nov 2008) | 2 lines +r3798 | jcbowman | 2008-11-27 03:33:53 +0100 (Thu, 27 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/main.cc @@ -7020,14 +7422,14 @@ Changed paths: Fix rendering logic. ------------------------------------------------------------------------ -r3797 | jcbowman | 2008-11-26 14:46:04 -0700 (Wed, 26 Nov 2008) | 2 lines +r3797 | jcbowman | 2008-11-26 22:46:04 +0100 (Wed, 26 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Minor optimizations. ------------------------------------------------------------------------ -r3796 | jcbowman | 2008-11-25 23:26:30 -0700 (Tue, 25 Nov 2008) | 4 lines +r3796 | jcbowman | 2008-11-26 07:26:30 +0100 (Wed, 26 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/tube.asy M /trunk/asymptote/doc/asymptote.texi @@ -7037,7 +7439,7 @@ Change cyclic flag in the routine where the array is actually constructed. Make minor edits to tube documentation. ------------------------------------------------------------------------ -r3795 | jcbowman | 2008-11-25 22:27:21 -0700 (Tue, 25 Nov 2008) | 2 lines +r3795 | jcbowman | 2008-11-26 06:27:21 +0100 (Wed, 26 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/latexusage.tex @@ -7045,7 +7447,7 @@ Changed paths: Enable the toolbar by default within the asyattach environment. ------------------------------------------------------------------------ -r3794 | jcbowman | 2008-11-25 21:13:39 -0700 (Tue, 25 Nov 2008) | 2 lines +r3794 | jcbowman | 2008-11-26 05:13:39 +0100 (Wed, 26 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.nsi M /trunk/asymptote/doc/latexusage.tex @@ -7054,14 +7456,14 @@ Changed paths: Set CYGWIN=nodosfilewarning in asy rather than in a batch file. ------------------------------------------------------------------------ -r3793 | jcbowman | 2008-11-25 21:12:13 -0700 (Tue, 25 Nov 2008) | 2 lines +r3793 | jcbowman | 2008-11-26 05:12:13 +0100 (Wed, 26 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Don't hang on exit from "Cannot execute latex" error. ------------------------------------------------------------------------ -r3792 | pivaldi | 2008-11-25 16:02:34 -0700 (Tue, 25 Nov 2008) | 1 line +r3792 | pivaldi | 2008-11-26 00:02:34 +0100 (Wed, 26 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/base/tube.asy M /trunk/asymptote/doc/asymptote.texi @@ -7069,7 +7471,7 @@ Changed paths: Replace step to relstep in tube.asy, add example of tube, document the package tube.asy ------------------------------------------------------------------------ -r3791 | jcbowman | 2008-11-25 14:20:36 -0700 (Tue, 25 Nov 2008) | 3 lines +r3791 | jcbowman | 2008-11-25 22:20:36 +0100 (Tue, 25 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_Label.asy @@ -7079,14 +7481,14 @@ Distinguish between defaulttransform and defaulttransform3, so that label(scale(10)*"text",O) is projected onto the initial viewing plane. ------------------------------------------------------------------------ -r3790 | jcbowman | 2008-11-25 13:44:44 -0700 (Tue, 25 Nov 2008) | 2 lines +r3790 | jcbowman | 2008-11-25 21:44:44 +0100 (Tue, 25 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Simplify freeglut svn-761 installation instructions. ------------------------------------------------------------------------ -r3789 | jcbowman | 2008-11-25 12:16:48 -0700 (Tue, 25 Nov 2008) | 2 lines +r3789 | jcbowman | 2008-11-25 20:16:48 +0100 (Tue, 25 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc M /trunk/asymptote/errormsg.h @@ -7096,7 +7498,7 @@ Changed paths: Catch out-of-memory errors in OpenGL renderer. ------------------------------------------------------------------------ -r3788 | jcbowman | 2008-11-25 09:09:56 -0700 (Tue, 25 Nov 2008) | 3 lines +r3788 | jcbowman | 2008-11-25 17:09:56 +0100 (Tue, 25 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/asymptote.nsi @@ -7104,13 +7506,13 @@ Disable DOS path syntax warning in version 20080327 of cygwin.dll (which supports pthreads). ------------------------------------------------------------------------ -r3787 | jcbowman | 2008-11-25 04:06:31 -0700 (Tue, 25 Nov 2008) | 1 line +r3787 | jcbowman | 2008-11-25 12:06:31 +0100 (Tue, 25 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.53svn ------------------------------------------------------------------------ -r3786 | jcbowman | 2008-11-25 00:02:46 -0700 (Tue, 25 Nov 2008) | 4 lines +r3786 | jcbowman | 2008-11-25 08:02:46 +0100 (Tue, 25 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/util.cc @@ -7120,7 +7522,7 @@ Use _exit instead of exit after fork as recommended by man page. Remove remaining piece of old fork wrapper code. ------------------------------------------------------------------------ -r3785 | jcbowman | 2008-11-24 23:09:26 -0700 (Mon, 24 Nov 2008) | 3 lines +r3785 | jcbowman | 2008-11-25 07:09:26 +0100 (Tue, 25 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -7131,7 +7533,7 @@ Make antialias an integer parameter (default 2). Values bigger than 2 are currently respected only when converting from EPS or PDF formats. ------------------------------------------------------------------------ -r3784 | jcbowman | 2008-11-24 22:30:57 -0700 (Mon, 24 Nov 2008) | 4 lines +r3784 | jcbowman | 2008-11-25 06:30:57 +0100 (Tue, 25 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/pipestream.h @@ -7142,14 +7544,14 @@ Don't call fitscreen() during interactive updates. Simplify forking in pipestream.h. ------------------------------------------------------------------------ -r3783 | jcbowman | 2008-11-24 02:16:55 -0700 (Mon, 24 Nov 2008) | 2 lines +r3783 | jcbowman | 2008-11-24 10:16:55 +0100 (Mon, 24 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix multiple file aspect ratio issues. ------------------------------------------------------------------------ -r3782 | jcbowman | 2008-11-24 01:57:28 -0700 (Mon, 24 Nov 2008) | 4 lines +r3782 | jcbowman | 2008-11-24 09:57:28 +0100 (Mon, 24 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/configure.ac @@ -7164,7 +7566,7 @@ Fix exporting with -noV. Support machines without working POSIX threads. ------------------------------------------------------------------------ -r3781 | jcbowman | 2008-11-23 17:19:34 -0700 (Sun, 23 Nov 2008) | 4 lines +r3781 | jcbowman | 2008-11-24 01:19:34 +0100 (Mon, 24 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/main.cc @@ -7180,7 +7582,7 @@ Define standard symbol WORDS_BIG_ENDIAN or WORDS_LITTLE_ENDIAN, as appropriate. Add Orest's patch to support PRC output on bigendian machines. ------------------------------------------------------------------------ -r3780 | jcbowman | 2008-11-23 15:47:28 -0700 (Sun, 23 Nov 2008) | 2 lines +r3780 | jcbowman | 2008-11-23 23:47:28 +0100 (Sun, 23 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/glrender.h @@ -7191,28 +7593,28 @@ Changed paths: Use gl::wait routine for thread synchronization. ------------------------------------------------------------------------ -r3779 | jcbowman | 2008-11-23 02:00:14 -0700 (Sun, 23 Nov 2008) | 2 lines +r3779 | jcbowman | 2008-11-23 10:00:14 +0100 (Sun, 23 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/tr.cc Support compilation again on systems without glut. ------------------------------------------------------------------------ -r3778 | jcbowman | 2008-11-23 00:53:41 -0700 (Sun, 23 Nov 2008) | 2 lines +r3778 | jcbowman | 2008-11-23 08:53:41 +0100 (Sun, 23 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/prc/PRCdouble.h Conditionally include config.h. ------------------------------------------------------------------------ -r3777 | jcbowman | 2008-11-23 00:53:05 -0700 (Sun, 23 Nov 2008) | 2 lines +r3777 | jcbowman | 2008-11-23 08:53:05 +0100 (Sun, 23 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Rename BIG_ENDIAN to IS_BIG_ENDIAN. ------------------------------------------------------------------------ -r3776 | jcbowman | 2008-11-23 00:43:57 -0700 (Sun, 23 Nov 2008) | 3 lines +r3776 | jcbowman | 2008-11-23 08:43:57 +0100 (Sun, 23 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/picture.cc @@ -7222,7 +7624,7 @@ Add preliminary support for bigendian machines (PRC output is not yet working though). ------------------------------------------------------------------------ -r3775 | jcbowman | 2008-11-23 00:12:57 -0700 (Sun, 23 Nov 2008) | 3 lines +r3775 | jcbowman | 2008-11-23 08:12:57 +0100 (Sun, 23 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/drawsurface.cc M /trunk/asymptote/glrender.cc @@ -7236,14 +7638,14 @@ Use the main thread for OpenGL rendering to make MacOS happy; run asy in a secondary thread. ------------------------------------------------------------------------ -r3774 | jcbowman | 2008-11-22 12:29:20 -0700 (Sat, 22 Nov 2008) | 2 lines +r3774 | jcbowman | 2008-11-22 20:29:20 +0100 (Sat, 22 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/prc/PRCbitStream.cc Add assert. ------------------------------------------------------------------------ -r3773 | jcbowman | 2008-11-22 11:03:14 -0700 (Sat, 22 Nov 2008) | 2 lines +r3773 | jcbowman | 2008-11-22 19:03:14 +0100 (Sat, 22 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/doc/asymptote.texi @@ -7251,33 +7653,33 @@ Changed paths: Update SVN instructions to not require SSL support. ------------------------------------------------------------------------ -r3772 | jcbowman | 2008-11-22 11:00:27 -0700 (Sat, 22 Nov 2008) | 2 lines +r3772 | jcbowman | 2008-11-22 19:00:27 +0100 (Sat, 22 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix bus error. ------------------------------------------------------------------------ -r3771 | pivaldi | 2008-11-21 16:13:24 -0700 (Fri, 21 Nov 2008) | 1 line +r3771 | pivaldi | 2008-11-22 00:13:24 +0100 (Sat, 22 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/base/tube.asy Fix calculation of angle. ------------------------------------------------------------------------ -r3770 | pivaldi | 2008-11-21 07:29:02 -0700 (Fri, 21 Nov 2008) | 1 line +r3770 | pivaldi | 2008-11-21 15:29:02 +0100 (Fri, 21 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el asy-mode.el: define asy keywords properly. ------------------------------------------------------------------------ -r3769 | jcbowman | 2008-11-21 00:55:51 -0700 (Fri, 21 Nov 2008) | 2 lines +r3769 | jcbowman | 2008-11-21 08:55:51 +0100 (Fri, 21 Nov 2008) | 2 lines Changed paths: A /trunk/asymptote/base/tube.asy Add Philippe's tube module. ------------------------------------------------------------------------ -r3768 | jcbowman | 2008-11-21 00:20:14 -0700 (Fri, 21 Nov 2008) | 4 lines +r3768 | jcbowman | 2008-11-21 08:20:14 +0100 (Fri, 21 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -7291,7 +7693,7 @@ Improve thread synchronization and diagonistics. Remove freeglut-2.4.0-svn759.patch in favour of fixed svn 761. ------------------------------------------------------------------------ -r3767 | jcbowman | 2008-11-20 01:40:24 -0700 (Thu, 20 Nov 2008) | 5 lines +r3767 | jcbowman | 2008-11-20 09:40:24 +0100 (Thu, 20 Nov 2008) | 5 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/configure.ac @@ -7306,7 +7708,7 @@ Update installation instructions to use the system GC by default, now that we require a multithreaded version. ------------------------------------------------------------------------ -r3766 | jcbowman | 2008-11-19 18:59:56 -0700 (Wed, 19 Nov 2008) | 3 lines +r3766 | jcbowman | 2008-11-20 02:59:56 +0100 (Thu, 20 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/glrender.cc @@ -7314,21 +7716,21 @@ Revert most of r3763 due to a reported segmentation fault and since glutGetModeValues isn't implemented for MSWindows anyway. ------------------------------------------------------------------------ -r3765 | jcbowman | 2008-11-19 16:35:07 -0700 (Wed, 19 Nov 2008) | 2 lines +r3765 | jcbowman | 2008-11-20 00:35:07 +0100 (Thu, 20 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Revert r3762. ------------------------------------------------------------------------ -r3764 | jcbowman | 2008-11-19 09:12:32 -0700 (Wed, 19 Nov 2008) | 2 lines +r3764 | jcbowman | 2008-11-19 17:12:32 +0100 (Wed, 19 Nov 2008) | 2 lines Changed paths: A /trunk/asymptote/examples/tvgen.asy Add television test pattern example. ------------------------------------------------------------------------ -r3763 | jcbowman | 2008-11-19 00:19:29 -0700 (Wed, 19 Nov 2008) | 4 lines +r3763 | jcbowman | 2008-11-19 08:19:29 +0100 (Wed, 19 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc @@ -7337,14 +7739,14 @@ Simplify multisample negotiation by using glutGetModeValues. Backport code to freeglut-2.4.0. ------------------------------------------------------------------------ -r3762 | jcbowman | 2008-11-18 23:20:29 -0700 (Tue, 18 Nov 2008) | 2 lines +r3762 | jcbowman | 2008-11-19 07:20:29 +0100 (Wed, 19 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Hide window again when View=false, even if iconify=false; ------------------------------------------------------------------------ -r3761 | jcbowman | 2008-11-18 23:08:27 -0700 (Tue, 18 Nov 2008) | 4 lines +r3761 | jcbowman | 2008-11-19 07:08:27 +0100 (Wed, 19 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/obj.asy M /trunk/asymptote/base/plain_constants.asy @@ -7355,14 +7757,14 @@ Add bool3 type that takes on one of the values true, false, or default. Add planar argument to surface. ------------------------------------------------------------------------ -r3760 | jcbowman | 2008-11-18 22:15:37 -0700 (Tue, 18 Nov 2008) | 2 lines +r3760 | jcbowman | 2008-11-19 06:15:37 +0100 (Wed, 19 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/drawsurface.cc Fix vertex shading order in planar case. ------------------------------------------------------------------------ -r3759 | jcbowman | 2008-11-18 21:43:51 -0700 (Tue, 18 Nov 2008) | 4 lines +r3759 | jcbowman | 2008-11-19 05:43:51 +0100 (Wed, 19 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/glrender.cc @@ -7374,7 +7776,7 @@ Avoid POSIX thread deadlock. Fix rpm latex install directory. ------------------------------------------------------------------------ -r3758 | jcbowman | 2008-11-18 13:46:51 -0700 (Tue, 18 Nov 2008) | 3 lines +r3758 | jcbowman | 2008-11-18 21:46:51 +0100 (Tue, 18 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/glrender.h @@ -7383,7 +7785,7 @@ Work around nonstandardized signature of gluNurbsCallback on various MacOS platforms. ------------------------------------------------------------------------ -r3757 | jcbowman | 2008-11-18 10:46:00 -0700 (Tue, 18 Nov 2008) | 5 lines +r3757 | jcbowman | 2008-11-18 18:46:00 +0100 (Tue, 18 Nov 2008) | 5 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_shipout.asy @@ -7402,28 +7804,28 @@ Make multisample an integer; if freeglut is used this parameter controls the multisampling width for screen images. ------------------------------------------------------------------------ -r3756 | jcbowman | 2008-11-18 07:58:27 -0700 (Tue, 18 Nov 2008) | 2 lines +r3756 | jcbowman | 2008-11-18 15:58:27 +0100 (Tue, 18 Nov 2008) | 2 lines Changed paths: D /trunk/asymptote/patches/freeglut-2.4.0multisample.patch Remove obsolete patch. ------------------------------------------------------------------------ -r3755 | jcbowman | 2008-11-17 12:12:46 -0700 (Mon, 17 Nov 2008) | 2 lines +r3755 | jcbowman | 2008-11-17 20:12:46 +0100 (Mon, 17 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Install asymptote.sty and asycolors.sty in $TEXMFLOCAL/tex/latex. ------------------------------------------------------------------------ -r3754 | jcbowman | 2008-11-16 17:08:46 -0700 (Sun, 16 Nov 2008) | 2 lines +r3754 | jcbowman | 2008-11-17 01:08:46 +0100 (Mon, 17 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Fix indentation after struct. ------------------------------------------------------------------------ -r3753 | jcbowman | 2008-11-16 16:36:38 -0700 (Sun, 16 Nov 2008) | 4 lines +r3753 | jcbowman | 2008-11-17 00:36:38 +0100 (Mon, 17 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/asy-mode.el @@ -7432,21 +7834,21 @@ Remove dependency on cc-mode.el source. Allow asy-mode.el to load even without asy-keywords.el. ------------------------------------------------------------------------ -r3752 | pivaldi | 2008-11-15 12:01:48 -0700 (Sat, 15 Nov 2008) | 1 line +r3752 | pivaldi | 2008-11-15 20:01:48 +0100 (Sat, 15 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/markers2.asy fix markangle orientation. ------------------------------------------------------------------------ -r3751 | jcbowman | 2008-11-15 09:28:48 -0700 (Sat, 15 Nov 2008) | 2 lines +r3751 | jcbowman | 2008-11-15 17:28:48 +0100 (Sat, 15 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Add missing sentence. ------------------------------------------------------------------------ -r3750 | jcbowman | 2008-11-15 09:14:20 -0700 (Sat, 15 Nov 2008) | 3 lines +r3750 | jcbowman | 2008-11-15 17:14:20 +0100 (Sat, 15 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -7455,21 +7857,21 @@ Add optional user=false argument to min(picture), max(picture), and size(picture). ------------------------------------------------------------------------ -r3749 | jcbowman | 2008-11-13 01:28:01 -0700 (Thu, 13 Nov 2008) | 2 lines +r3749 | jcbowman | 2008-11-13 09:28:01 +0100 (Thu, 13 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix degenerate thick line caps. ------------------------------------------------------------------------ -r3748 | jcbowman | 2008-11-12 16:51:01 -0700 (Wed, 12 Nov 2008) | 2 lines +r3748 | jcbowman | 2008-11-13 00:51:01 +0100 (Thu, 13 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Don't discard 2D size constraints in draw. ------------------------------------------------------------------------ -r3747 | jcbowman | 2008-11-12 13:59:16 -0700 (Wed, 12 Nov 2008) | 2 lines +r3747 | jcbowman | 2008-11-12 21:59:16 +0100 (Wed, 12 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -7478,48 +7880,48 @@ Changed paths: Reinstate freeglut-2.4.0-svn759.patch which to fix multisampling bugs. ------------------------------------------------------------------------ -r3746 | jcbowman | 2008-11-11 19:24:50 -0700 (Tue, 11 Nov 2008) | 2 lines +r3746 | jcbowman | 2008-11-12 03:24:50 +0100 (Wed, 12 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Hide window only if iconify is true. ------------------------------------------------------------------------ -r3745 | jcbowman | 2008-11-11 16:09:29 -0700 (Tue, 11 Nov 2008) | 2 lines +r3745 | jcbowman | 2008-11-12 00:09:29 +0100 (Wed, 12 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.h Fix logic in r3744. ------------------------------------------------------------------------ -r3744 | jcbowman | 2008-11-11 16:05:01 -0700 (Tue, 11 Nov 2008) | 2 lines +r3744 | jcbowman | 2008-11-12 00:05:01 +0100 (Wed, 12 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.h Combine both _GLUfuncptr MacOSX workarounds. ------------------------------------------------------------------------ -r3743 | jcbowman | 2008-11-11 12:45:14 -0700 (Tue, 11 Nov 2008) | 2 lines +r3743 | jcbowman | 2008-11-11 20:45:14 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.h Fix _GLUfuncptr detection. ------------------------------------------------------------------------ -r3742 | jcbowman | 2008-11-11 10:42:51 -0700 (Tue, 11 Nov 2008) | 2 lines +r3742 | jcbowman | 2008-11-11 18:42:51 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.h Support compilation under MacOSX 10.5. ------------------------------------------------------------------------ -r3741 | jcbowman | 2008-11-11 03:31:25 -0700 (Tue, 11 Nov 2008) | 1 line +r3741 | jcbowman | 2008-11-11 11:31:25 +0100 (Tue, 11 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.52svn. ------------------------------------------------------------------------ -r3740 | jcbowman | 2008-11-11 02:34:18 -0700 (Tue, 11 Nov 2008) | 2 lines +r3740 | jcbowman | 2008-11-11 10:34:18 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/picture.cc @@ -7527,7 +7929,7 @@ Changed paths: Wait for completion of rendering. ------------------------------------------------------------------------ -r3739 | jcbowman | 2008-11-11 01:26:45 -0700 (Tue, 11 Nov 2008) | 2 lines +r3739 | jcbowman | 2008-11-11 09:26:45 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: D /trunk/asymptote/patches/cygwin_freeglut-2.4.0.patch D /trunk/asymptote/patches/freeglut-2.4.0-svn759.patch @@ -7535,7 +7937,7 @@ Changed paths: Remove obsolete patches. ------------------------------------------------------------------------ -r3738 | jcbowman | 2008-11-11 01:25:59 -0700 (Tue, 11 Nov 2008) | 2 lines +r3738 | jcbowman | 2008-11-11 09:25:59 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -7544,14 +7946,14 @@ Changed paths: Use a more robust patch to enable multisampling in freeglut-2.4.0. ------------------------------------------------------------------------ -r3737 | jcbowman | 2008-11-11 01:03:48 -0700 (Tue, 11 Nov 2008) | 2 lines +r3737 | jcbowman | 2008-11-11 09:03:48 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix warning message. ------------------------------------------------------------------------ -r3736 | jcbowman | 2008-11-11 01:00:49 -0700 (Tue, 11 Nov 2008) | 2 lines +r3736 | jcbowman | 2008-11-11 09:00:49 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/picture.cc @@ -7559,7 +7961,7 @@ Changed paths: Change references to freeglut to glut. ------------------------------------------------------------------------ -r3735 | jcbowman | 2008-11-11 00:57:27 -0700 (Tue, 11 Nov 2008) | 6 lines +r3735 | jcbowman | 2008-11-11 08:57:27 +0100 (Tue, 11 Nov 2008) | 6 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/main.cc @@ -7572,7 +7974,7 @@ Don't solicit bug reports for segmentation faults caused by graphics driver bugs (e.g. on memory exhaustion). ------------------------------------------------------------------------ -r3734 | jcbowman | 2008-11-10 23:53:34 -0700 (Mon, 10 Nov 2008) | 4 lines +r3734 | jcbowman | 2008-11-11 07:53:34 +0100 (Tue, 11 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -7583,20 +7985,20 @@ Prevent multiple glInit calls. Use a separate multisample setting to control screen antialiasing. ------------------------------------------------------------------------ -r3733 | jcbowman | 2008-11-10 20:31:57 -0700 (Mon, 10 Nov 2008) | 2 lines +r3733 | jcbowman | 2008-11-11 04:31:57 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Turn multisampling on only when View is true. ------------------------------------------------------------------------ -r3732 | jcbowman | 2008-11-10 20:15:07 -0700 (Mon, 10 Nov 2008) | 1 line +r3732 | jcbowman | 2008-11-11 04:15:07 +0100 (Tue, 11 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.51svn. ------------------------------------------------------------------------ -r3731 | jcbowman | 2008-11-10 19:06:43 -0700 (Mon, 10 Nov 2008) | 2 lines +r3731 | jcbowman | 2008-11-11 03:06:43 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/patches/README A /trunk/asymptote/patches/cygwin_freeglut-2.4.0.patch @@ -7604,7 +8006,7 @@ Changed paths: Add multisampling patch for freeglut-2.4.0 under CYGWIN. ------------------------------------------------------------------------ -r3730 | jcbowman | 2008-11-10 17:39:40 -0700 (Mon, 10 Nov 2008) | 2 lines +r3730 | jcbowman | 2008-11-11 01:39:40 +0100 (Tue, 11 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/glrender.h @@ -7612,7 +8014,7 @@ Changed paths: Update CYGWIN port. ------------------------------------------------------------------------ -r3729 | jcbowman | 2008-11-09 23:46:21 -0700 (Sun, 09 Nov 2008) | 4 lines +r3729 | jcbowman | 2008-11-10 07:46:21 +0100 (Mon, 10 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -7624,7 +8026,7 @@ Control multisampling with antialias flag. Add patch to bring freeglut-2.4.0 up to date, with multisampling support. ------------------------------------------------------------------------ -r3728 | jcbowman | 2008-11-09 15:22:45 -0700 (Sun, 09 Nov 2008) | 4 lines +r3728 | jcbowman | 2008-11-09 23:22:45 +0100 (Sun, 09 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/drawsurface.cc M /trunk/asymptote/glrender.cc @@ -7634,7 +8036,7 @@ Support multisampling; this requires the latest svn version of freeglut. Support -iconic and mouse wheel with the latest svn version of freeglut. ------------------------------------------------------------------------ -r3727 | jcbowman | 2008-11-09 10:05:55 -0700 (Sun, 09 Nov 2008) | 2 lines +r3727 | jcbowman | 2008-11-09 18:05:55 +0100 (Sun, 09 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -7642,14 +8044,14 @@ Changed paths: Don't allow tile size to exceed current window size. ------------------------------------------------------------------------ -r3726 | jcbowman | 2008-11-09 01:02:17 -0700 (Sun, 09 Nov 2008) | 2 lines +r3726 | jcbowman | 2008-11-09 09:02:17 +0100 (Sun, 09 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Set default value of settings.render in asymptote.sty to 4. ------------------------------------------------------------------------ -r3725 | jcbowman | 2008-11-09 01:00:15 -0700 (Sun, 09 Nov 2008) | 6 lines +r3725 | jcbowman | 2008-11-09 09:00:15 +0100 (Sun, 09 Nov 2008) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/latexusage.tex @@ -7661,7 +8063,7 @@ Set the default value of settings.render in asymptote.sty to 4. Update documentation. ------------------------------------------------------------------------ -r3724 | jcbowman | 2008-11-09 00:21:06 -0700 (Sun, 09 Nov 2008) | 2 lines +r3724 | jcbowman | 2008-11-09 08:21:06 +0100 (Sun, 09 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -7669,7 +8071,7 @@ Changed paths: Add viewportmargin parameter. ------------------------------------------------------------------------ -r3723 | jcbowman | 2008-11-08 17:41:51 -0700 (Sat, 08 Nov 2008) | 6 lines +r3723 | jcbowman | 2008-11-09 01:41:51 +0100 (Sun, 09 Nov 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -7704,7 +8106,7 @@ Change put=Above to above=true and put=Below to above=false. Remove constants Above and Below. ------------------------------------------------------------------------ -r3722 | jcbowman | 2008-11-08 16:37:34 -0700 (Sat, 08 Nov 2008) | 8 lines +r3722 | jcbowman | 2008-11-09 00:37:34 +0100 (Sun, 09 Nov 2008) | 8 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.sty @@ -7722,7 +8124,7 @@ for embedding 3D PRC files in a LaTeX document. Add iconify option. ------------------------------------------------------------------------ -r3721 | jcbowman | 2008-11-07 16:49:58 -0700 (Fri, 07 Nov 2008) | 2 lines +r3721 | jcbowman | 2008-11-08 00:49:58 +0100 (Sat, 08 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -7730,7 +8132,7 @@ Changed paths: Set default maxtile to (0,0). ------------------------------------------------------------------------ -r3720 | jcbowman | 2008-11-07 15:42:12 -0700 (Fri, 07 Nov 2008) | 4 lines +r3720 | jcbowman | 2008-11-07 23:42:12 +0100 (Fri, 07 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -7741,14 +8143,14 @@ Fix camera roll. Fix divide by zero error. ------------------------------------------------------------------------ -r3719 | jcbowman | 2008-11-07 14:06:46 -0700 (Fri, 07 Nov 2008) | 2 lines +r3719 | jcbowman | 2008-11-07 22:06:46 +0100 (Fri, 07 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix rendering with -nofitscreen. ------------------------------------------------------------------------ -r3718 | jcbowman | 2008-11-07 09:10:11 -0700 (Fri, 07 Nov 2008) | 2 lines +r3718 | jcbowman | 2008-11-07 17:10:11 +0100 (Fri, 07 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/sqrtx01.asy @@ -7756,7 +8158,7 @@ Changed paths: Fix PRC up vector. ------------------------------------------------------------------------ -r3717 | jcbowman | 2008-11-07 06:26:34 -0700 (Fri, 07 Nov 2008) | 2 lines +r3717 | jcbowman | 2008-11-07 14:26:34 +0100 (Fri, 07 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -7765,21 +8167,21 @@ Changed paths: Fix glut.h path under MacOS. ------------------------------------------------------------------------ -r3716 | jcbowman | 2008-11-07 06:17:41 -0700 (Fri, 07 Nov 2008) | 2 lines +r3716 | jcbowman | 2008-11-07 14:17:41 +0100 (Fri, 07 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fix detection of MacOS. ------------------------------------------------------------------------ -r3715 | jcbowman | 2008-11-07 05:59:21 -0700 (Fri, 07 Nov 2008) | 2 lines +r3715 | jcbowman | 2008-11-07 13:59:21 +0100 (Fri, 07 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve documentation of add(picture). ------------------------------------------------------------------------ -r3714 | jcbowman | 2008-11-06 23:51:09 -0700 (Thu, 06 Nov 2008) | 2 lines +r3714 | jcbowman | 2008-11-07 07:51:09 +0100 (Fri, 07 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/glrender.h @@ -7789,7 +8191,7 @@ Changed paths: Add glut compilation support for MacOSX. ------------------------------------------------------------------------ -r3713 | jcbowman | 2008-11-06 15:18:18 -0700 (Thu, 06 Nov 2008) | 2 lines +r3713 | jcbowman | 2008-11-06 23:18:18 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -7797,21 +8199,21 @@ Changed paths: Initialize window to the maximum tile dimensions again. ------------------------------------------------------------------------ -r3712 | jcbowman | 2008-11-06 15:07:51 -0700 (Thu, 06 Nov 2008) | 2 lines +r3712 | jcbowman | 2008-11-06 23:07:51 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Change default value of maxtile to (800,800). ------------------------------------------------------------------------ -r3711 | jcbowman | 2008-11-06 10:59:16 -0700 (Thu, 06 Nov 2008) | 2 lines +r3711 | jcbowman | 2008-11-06 18:59:16 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Recommend glOptions += " -iconic" for UNIX systems that support this. ------------------------------------------------------------------------ -r3710 | jcbowman | 2008-11-06 10:36:15 -0700 (Thu, 06 Nov 2008) | 4 lines +r3710 | jcbowman | 2008-11-06 18:36:15 +0100 (Thu, 06 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -7821,21 +8223,21 @@ Add interface to runtime view() function. Document use of glOptions=-iconic for UNIX systems. ------------------------------------------------------------------------ -r3709 | jcbowman | 2008-11-06 10:05:59 -0700 (Thu, 06 Nov 2008) | 2 lines +r3709 | jcbowman | 2008-11-06 18:05:59 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Support -glOptions=-iconic for drivers that allow this. ------------------------------------------------------------------------ -r3708 | jcbowman | 2008-11-06 09:27:46 -0700 (Thu, 06 Nov 2008) | 2 lines +r3708 | jcbowman | 2008-11-06 17:27:46 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Avoid rendering problems caused by iconic option. ------------------------------------------------------------------------ -r3707 | jcbowman | 2008-11-06 08:17:16 -0700 (Thu, 06 Nov 2008) | 3 lines +r3707 | jcbowman | 2008-11-06 16:17:16 +0100 (Thu, 06 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -7844,28 +8246,28 @@ Change default value of maxtile to (0,0), which now means to use the screen dimensions. ------------------------------------------------------------------------ -r3706 | jcbowman | 2008-11-06 07:52:25 -0700 (Thu, 06 Nov 2008) | 2 lines +r3706 | jcbowman | 2008-11-06 15:52:25 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Use opaque value in glClearColor. ------------------------------------------------------------------------ -r3705 | jcbowman | 2008-11-05 22:00:49 -0700 (Wed, 05 Nov 2008) | 2 lines +r3705 | jcbowman | 2008-11-06 06:00:49 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/near_earth.asy Add PenMargin3 to example. ------------------------------------------------------------------------ -r3704 | jcbowman | 2008-11-05 17:21:12 -0700 (Wed, 05 Nov 2008) | 2 lines +r3704 | jcbowman | 2008-11-06 01:21:12 +0100 (Thu, 06 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc With -noV, initialize the window to maxtile. ------------------------------------------------------------------------ -r3703 | jcbowman | 2008-11-05 00:43:18 -0700 (Wed, 05 Nov 2008) | 4 lines +r3703 | jcbowman | 2008-11-05 08:43:18 +0100 (Wed, 05 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/base/three_margins.asy @@ -7879,7 +8281,7 @@ Avoid glDisable(GL_LIGHTING) due to race condition. Improve Margin3. ------------------------------------------------------------------------ -r3702 | jcbowman | 2008-11-04 23:07:04 -0700 (Tue, 04 Nov 2008) | 2 lines +r3702 | jcbowman | 2008-11-05 07:07:04 +0100 (Wed, 05 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -7891,14 +8293,14 @@ Changed paths: Add support for three-dimensional dimension bars. ------------------------------------------------------------------------ -r3701 | jcbowman | 2008-11-04 22:58:18 -0700 (Tue, 04 Nov 2008) | 2 lines +r3701 | jcbowman | 2008-11-05 06:58:18 +0100 (Wed, 05 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Simplify window initialization code. ------------------------------------------------------------------------ -r3700 | jcbowman | 2008-11-04 15:43:44 -0700 (Tue, 04 Nov 2008) | 6 lines +r3700 | jcbowman | 2008-11-04 23:43:44 +0100 (Tue, 04 Nov 2008) | 6 lines Changed paths: M /trunk/asymptote/base/three_margins.asy M /trunk/asymptote/base/three_surface.asy @@ -7912,14 +8314,14 @@ Make dotsize consistent for pictures and frames. Reinstate wedge example. ------------------------------------------------------------------------ -r3699 | jcbowman | 2008-11-04 13:34:48 -0700 (Tue, 04 Nov 2008) | 2 lines +r3699 | jcbowman | 2008-11-04 21:34:48 +0100 (Tue, 04 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex Update hyperref documentation. ------------------------------------------------------------------------ -r3698 | jcbowman | 2008-11-04 11:40:54 -0700 (Tue, 04 Nov 2008) | 2 lines +r3698 | jcbowman | 2008-11-04 19:40:54 +0100 (Tue, 04 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/base/three.asy @@ -7927,7 +8329,7 @@ Changed paths: Standardize triple perp(triple); fix numerical precision issue. ------------------------------------------------------------------------ -r3697 | jcbowman | 2008-11-03 23:50:49 -0700 (Mon, 03 Nov 2008) | 2 lines +r3697 | jcbowman | 2008-11-04 07:50:49 +0100 (Tue, 04 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/obj.asy M /trunk/asymptote/base/three_light.asy @@ -7937,35 +8339,35 @@ Changed paths: Fix more normal problems. ------------------------------------------------------------------------ -r3696 | jcbowman | 2008-11-03 23:17:51 -0700 (Mon, 03 Nov 2008) | 2 lines +r3696 | jcbowman | 2008-11-04 07:17:51 +0100 (Tue, 04 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Use right-handed transformation. ------------------------------------------------------------------------ -r3695 | jcbowman | 2008-11-03 02:25:16 -0700 (Mon, 03 Nov 2008) | 2 lines +r3695 | jcbowman | 2008-11-03 10:25:16 +0100 (Mon, 03 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Decrement version to 1.50svn. ------------------------------------------------------------------------ -r3694 | jcbowman | 2008-11-03 02:15:44 -0700 (Mon, 03 Nov 2008) | 1 line +r3694 | jcbowman | 2008-11-03 10:15:44 +0100 (Mon, 03 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.51svn. ------------------------------------------------------------------------ -r3693 | jcbowman | 2008-11-03 01:12:27 -0700 (Mon, 03 Nov 2008) | 2 lines +r3693 | jcbowman | 2008-11-03 09:12:27 +0100 (Mon, 03 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/projectrevolution.asy Make example look better with render=0. ------------------------------------------------------------------------ -r3692 | jcbowman | 2008-11-03 01:10:44 -0700 (Mon, 03 Nov 2008) | 4 lines +r3692 | jcbowman | 2008-11-03 09:10:44 +0100 (Mon, 03 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/runtime.in @@ -7975,14 +8377,14 @@ Fix example; texpath currently only handles standard font sizes. Fix handling of keep flag in texpath and strokepath. ------------------------------------------------------------------------ -r3691 | jcbowman | 2008-11-03 00:43:59 -0700 (Mon, 03 Nov 2008) | 2 lines +r3691 | jcbowman | 2008-11-03 08:43:59 +0100 (Mon, 03 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/washermethod.asy Improve example. ------------------------------------------------------------------------ -r3690 | jcbowman | 2008-11-03 00:38:07 -0700 (Mon, 03 Nov 2008) | 6 lines +r3690 | jcbowman | 2008-11-03 08:38:07 +0100 (Mon, 03 Nov 2008) | 6 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/three.asy @@ -7997,14 +8399,14 @@ Add patch reverse(patch) function. Improve normal(path3); add normal(triple[]) for polygons. ------------------------------------------------------------------------ -r3689 | jcbowman | 2008-11-02 18:52:42 -0700 (Sun, 02 Nov 2008) | 2 lines +r3689 | jcbowman | 2008-11-03 02:52:42 +0100 (Mon, 03 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Add missing transform of normal vector. ------------------------------------------------------------------------ -r3688 | jcbowman | 2008-11-02 13:50:09 -0700 (Sun, 02 Nov 2008) | 2 lines +r3688 | jcbowman | 2008-11-02 21:50:09 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -8012,7 +8414,7 @@ Changed paths: Document glOptions=-indirect. ------------------------------------------------------------------------ -r3687 | jcbowman | 2008-11-02 10:17:56 -0700 (Sun, 02 Nov 2008) | 4 lines +r3687 | jcbowman | 2008-11-02 18:17:56 +0100 (Sun, 02 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy @@ -8021,7 +8423,7 @@ Change mean(pen[]) to take a more useful opacity function. Add opacity argument to mean(pen[][]). ------------------------------------------------------------------------ -r3686 | jcbowman | 2008-11-02 09:33:08 -0700 (Sun, 02 Nov 2008) | 5 lines +r3686 | jcbowman | 2008-11-02 17:33:08 +0100 (Sun, 02 Nov 2008) | 5 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/base/three_surface.asy @@ -8033,14 +8435,14 @@ Make mean(pen[]) return by default an interpolated pen with the minimum opacity of all given pens. ------------------------------------------------------------------------ -r3685 | jcbowman | 2008-11-02 01:45:39 -0600 (Sun, 02 Nov 2008) | 2 lines +r3685 | jcbowman | 2008-11-02 08:45:39 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/projectelevation.asy Use vertex shading. ------------------------------------------------------------------------ -r3684 | jcbowman | 2008-11-02 01:33:49 -0600 (Sun, 02 Nov 2008) | 2 lines +r3684 | jcbowman | 2008-11-02 08:33:49 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/parametricelevation.asy M /trunk/asymptote/examples/projectrevolution.asy @@ -8048,61 +8450,61 @@ Changed paths: Update examples. ------------------------------------------------------------------------ -r3683 | jcbowman | 2008-11-02 01:20:19 -0600 (Sun, 02 Nov 2008) | 2 lines +r3683 | jcbowman | 2008-11-02 08:20:19 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/projectelevation.asy Fix example. ------------------------------------------------------------------------ -r3682 | jcbowman | 2008-11-02 01:15:59 -0600 (Sun, 02 Nov 2008) | 1 line +r3682 | jcbowman | 2008-11-02 08:15:59 +0100 (Sun, 02 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.49svn. ------------------------------------------------------------------------ -r3681 | jcbowman | 2008-11-01 23:49:11 -0600 (Sat, 01 Nov 2008) | 2 lines +r3681 | jcbowman | 2008-11-02 06:49:11 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document how to draw surfaces with patch-dependent or vertex-dependent colors. ------------------------------------------------------------------------ -r3680 | jcbowman | 2008-11-01 22:44:33 -0600 (Sat, 01 Nov 2008) | 2 lines +r3680 | jcbowman | 2008-11-02 05:44:33 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Remove old fitscreen code. ------------------------------------------------------------------------ -r3679 | jcbowman | 2008-11-01 22:24:42 -0600 (Sat, 01 Nov 2008) | 2 lines +r3679 | jcbowman | 2008-11-02 05:24:42 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document surface tube(path3 g, real width). ------------------------------------------------------------------------ -r3678 | jcbowman | 2008-11-01 22:15:11 -0600 (Sat, 01 Nov 2008) | 2 lines +r3678 | jcbowman | 2008-11-02 05:15:11 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fix incorrect precontrol output in write(path) introduced in r3554. ------------------------------------------------------------------------ -r3677 | jcbowman | 2008-11-01 21:54:00 -0600 (Sat, 01 Nov 2008) | 2 lines +r3677 | jcbowman | 2008-11-02 04:54:00 +0100 (Sun, 02 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/drawsurface.cc Account for perspective scaling in planar test. ------------------------------------------------------------------------ -r3676 | oshardt | 2008-11-01 14:52:41 -0600 (Sat, 01 Nov 2008) | 1 line +r3676 | oshardt | 2008-11-01 21:52:41 +0100 (Sat, 01 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Use unstraighten() to obtain control points of straight segments. ------------------------------------------------------------------------ -r3675 | jcbowman | 2008-11-01 14:13:16 -0600 (Sat, 01 Nov 2008) | 3 lines +r3675 | jcbowman | 2008-11-01 21:13:16 +0100 (Sat, 01 Nov 2008) | 3 lines Changed paths: M /trunk/asymptote/path.h M /trunk/asymptote/runtime.in @@ -8111,7 +8513,7 @@ Implement path unstraighten(path), which returns a copy of the path with the straight flag turned off. ------------------------------------------------------------------------ -r3674 | jcbowman | 2008-11-01 13:36:29 -0600 (Sat, 01 Nov 2008) | 2 lines +r3674 | jcbowman | 2008-11-01 20:36:29 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path3.cc @@ -8119,21 +8521,21 @@ Changed paths: Specify an angle precision for centering perspective drawings. ------------------------------------------------------------------------ -r3673 | jcbowman | 2008-11-01 11:52:48 -0600 (Sat, 01 Nov 2008) | 2 lines +r3673 | jcbowman | 2008-11-01 18:52:48 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Increase angleiterations to 4. ------------------------------------------------------------------------ -r3672 | jcbowman | 2008-11-01 11:35:33 -0600 (Sat, 01 Nov 2008) | 2 lines +r3672 | jcbowman | 2008-11-01 18:35:33 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Allow odd sized tiles again. ------------------------------------------------------------------------ -r3671 | jcbowman | 2008-11-01 10:47:26 -0600 (Sat, 01 Nov 2008) | 2 lines +r3671 | jcbowman | 2008-11-01 17:47:26 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/drawsurface.cc M /trunk/asymptote/glrender.cc @@ -8141,7 +8543,7 @@ Changed paths: Set surface normals whenever light is on. ------------------------------------------------------------------------ -r3670 | jcbowman | 2008-11-01 10:02:28 -0600 (Sat, 01 Nov 2008) | 4 lines +r3670 | jcbowman | 2008-11-01 17:02:28 +0100 (Sat, 01 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/base/three_surface.asy @@ -8154,20 +8556,20 @@ Transpose surface.corners() and surface.map(). Use mean corner pen for patch shading. ------------------------------------------------------------------------ -r3669 | jcbowman | 2008-11-01 08:58:09 -0600 (Sat, 01 Nov 2008) | 2 lines +r3669 | jcbowman | 2008-11-01 15:58:09 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Increase angleiterations. ------------------------------------------------------------------------ -r3668 | pivaldi | 2008-11-01 03:43:57 -0600 (Sat, 01 Nov 2008) | 1 line +r3668 | pivaldi | 2008-11-01 10:43:57 +0100 (Sat, 01 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/examples/projectelevation.asy update examples/projectelevation.asy ------------------------------------------------------------------------ -r3667 | jcbowman | 2008-11-01 02:29:24 -0600 (Sat, 01 Nov 2008) | 4 lines +r3667 | jcbowman | 2008-11-01 09:29:24 +0100 (Sat, 01 Nov 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/examples/elevation.asy @@ -8179,7 +8581,7 @@ Rename cornermap to map and cornermean to mapmean. Add triple[][] corner() and triple[] cornermean(). ------------------------------------------------------------------------ -r3666 | jcbowman | 2008-11-01 01:39:32 -0600 (Sat, 01 Nov 2008) | 10 lines +r3666 | jcbowman | 2008-11-01 08:39:32 +0100 (Sat, 01 Nov 2008) | 10 lines Changed paths: M /trunk/asymptote/base/obj.asy M /trunk/asymptote/base/plain_pens.asy @@ -8204,14 +8606,14 @@ Move rgba pen packing and unpacking functions to plain_pens.asy. Implement pen mean(pen[]). ------------------------------------------------------------------------ -r3665 | jcbowman | 2008-10-31 21:48:25 -0600 (Fri, 31 Oct 2008) | 2 lines +r3665 | jcbowman | 2008-11-01 04:48:25 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Force tile size to be even. ------------------------------------------------------------------------ -r3664 | jcbowman | 2008-10-31 17:48:33 -0600 (Fri, 31 Oct 2008) | 2 lines +r3664 | jcbowman | 2008-11-01 00:48:33 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -8220,13 +8622,13 @@ Changed paths: Make maxviewport and maxtile pairs. ------------------------------------------------------------------------ -r3663 | pivaldi | 2008-10-31 17:29:36 -0600 (Fri, 31 Oct 2008) | 1 line +r3663 | pivaldi | 2008-11-01 00:29:36 +0100 (Sat, 01 Nov 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el asy-mode: warn cc-mode.el dependency. ------------------------------------------------------------------------ -r3662 | jcbowman | 2008-10-31 17:18:14 -0600 (Fri, 31 Oct 2008) | 2 lines +r3662 | jcbowman | 2008-11-01 00:18:14 +0100 (Sat, 01 Nov 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/glrender.cc @@ -8236,14 +8638,14 @@ Changed paths: Support compilation under standard glut for systems without freeglut. ------------------------------------------------------------------------ -r3661 | jcbowman | 2008-10-31 15:39:00 -0600 (Fri, 31 Oct 2008) | 2 lines +r3661 | jcbowman | 2008-10-31 22:39:00 +0100 (Fri, 31 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix fitscreen toggling. ------------------------------------------------------------------------ -r3660 | jcbowman | 2008-10-31 15:34:07 -0600 (Fri, 31 Oct 2008) | 2 lines +r3660 | jcbowman | 2008-10-31 22:34:07 +0100 (Fri, 31 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/glrender.cc @@ -8252,20 +8654,20 @@ Changed paths: Add tilesize parameter to limit the maximum rendering tile size. ------------------------------------------------------------------------ -r3659 | jcbowman | 2008-10-31 08:48:04 -0600 (Fri, 31 Oct 2008) | 2 lines +r3659 | jcbowman | 2008-10-31 15:48:04 +0100 (Fri, 31 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Revert last change, which breaks tabbing after struct{}. ------------------------------------------------------------------------ -r3658 | pivaldi | 2008-10-31 07:36:39 -0600 (Fri, 31 Oct 2008) | 1 line +r3658 | pivaldi | 2008-10-31 14:36:39 +0100 (Fri, 31 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el asy-mode: fix cc-mode code source dependency. ------------------------------------------------------------------------ -r3657 | jcbowman | 2008-10-31 01:12:53 -0600 (Fri, 31 Oct 2008) | 4 lines +r3657 | jcbowman | 2008-10-31 08:12:53 +0100 (Fri, 31 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/base/three_surface.asy @@ -8279,7 +8681,7 @@ Simplify construction of elevation-colored surfaces. Add facility for vertex-shaded elevation surfaces. ------------------------------------------------------------------------ -r3656 | jcbowman | 2008-10-30 23:42:55 -0600 (Thu, 30 Oct 2008) | 4 lines +r3656 | jcbowman | 2008-10-31 06:42:55 +0100 (Fri, 31 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc @@ -8288,14 +8690,14 @@ Fix initialization and translation issues. Remove unneeded CYGWIN restrictions. ------------------------------------------------------------------------ -r3655 | jcbowman | 2008-10-30 22:04:53 -0600 (Thu, 30 Oct 2008) | 2 lines +r3655 | jcbowman | 2008-10-31 05:04:53 +0100 (Fri, 31 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix orthographic exports. ------------------------------------------------------------------------ -r3654 | jcbowman | 2008-10-30 21:48:52 -0600 (Thu, 30 Oct 2008) | 7 lines +r3654 | jcbowman | 2008-10-31 04:48:52 +0100 (Fri, 31 Oct 2008) | 7 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -8319,14 +8721,14 @@ Add antialias setting (default true). Change convert to use default antialias setting. ------------------------------------------------------------------------ -r3653 | jcbowman | 2008-10-30 21:16:31 -0600 (Thu, 30 Oct 2008) | 2 lines +r3653 | jcbowman | 2008-10-31 04:16:31 +0100 (Fri, 31 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_boxes.asy Add roundbox envelope routine. ------------------------------------------------------------------------ -r3652 | jcbowman | 2008-10-29 22:22:06 -0600 (Wed, 29 Oct 2008) | 6 lines +r3652 | jcbowman | 2008-10-30 05:22:06 +0100 (Thu, 30 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/obj.asy M /trunk/asymptote/base/plain_markers.asy @@ -8341,7 +8743,7 @@ Force straight flag for all obj faces to avoid subdivision cracks. Make normal(path3) return immediately for nonplanar paths. ------------------------------------------------------------------------ -r3651 | jcbowman | 2008-10-29 19:39:28 -0600 (Wed, 29 Oct 2008) | 5 lines +r3651 | jcbowman | 2008-10-30 02:39:28 +0100 (Thu, 30 Oct 2008) | 5 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -8352,14 +8754,14 @@ allow a return value in PostScript coordinates. Remove framepoint in favour of truepoint(picture, pair, user=false). ------------------------------------------------------------------------ -r3650 | jcbowman | 2008-10-29 17:10:25 -0600 (Wed, 29 Oct 2008) | 2 lines +r3650 | jcbowman | 2008-10-30 00:10:25 +0100 (Thu, 30 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy Add maxheight, hstretch, and vstretch parameters to legend. ------------------------------------------------------------------------ -r3649 | jcbowman | 2008-10-29 11:48:12 -0600 (Wed, 29 Oct 2008) | 2 lines +r3649 | jcbowman | 2008-10-29 18:48:12 +0100 (Wed, 29 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/doc/asymptote.texi @@ -8367,13 +8769,13 @@ Changed paths: Add defaultbackpen. ------------------------------------------------------------------------ -r3648 | pivaldi | 2008-10-29 03:42:28 -0600 (Wed, 29 Oct 2008) | 1 line +r3648 | pivaldi | 2008-10-29 10:42:28 +0100 (Wed, 29 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.sty Add TeX versioning ------------------------------------------------------------------------ -r3647 | jcbowman | 2008-10-29 01:28:12 -0600 (Wed, 29 Oct 2008) | 2 lines +r3647 | jcbowman | 2008-10-29 08:28:12 +0100 (Wed, 29 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/drawsurface.cc M /trunk/asymptote/drawsurface.h @@ -8382,7 +8784,7 @@ Changed paths: Support transparency in vertex shading. ------------------------------------------------------------------------ -r3646 | jcbowman | 2008-10-29 00:50:50 -0600 (Wed, 29 Oct 2008) | 2 lines +r3646 | jcbowman | 2008-10-29 07:50:50 +0100 (Wed, 29 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -8395,7 +8797,7 @@ Changed paths: Support vertex shading in OpenGL renderer. ------------------------------------------------------------------------ -r3645 | jcbowman | 2008-10-28 17:40:42 -0600 (Tue, 28 Oct 2008) | 4 lines +r3645 | jcbowman | 2008-10-29 00:40:42 +0100 (Wed, 29 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/three_light.asy @@ -8406,7 +8808,7 @@ Use centroid rather than the first vertex for splitting surfaces. Rename unpack to real[] rgba(pen) and add inverse function pen rgb(real[]). ------------------------------------------------------------------------ -r3644 | jcbowman | 2008-10-28 01:42:51 -0600 (Tue, 28 Oct 2008) | 6 lines +r3644 | jcbowman | 2008-10-28 08:42:51 +0100 (Tue, 28 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/obj.asy @@ -8425,7 +8827,7 @@ should now only be used for nonconvex paths. Update examples. ------------------------------------------------------------------------ -r3643 | jcbowman | 2008-10-28 00:53:18 -0600 (Tue, 28 Oct 2008) | 6 lines +r3643 | jcbowman | 2008-10-28 07:53:18 +0100 (Tue, 28 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/doc/asymptote.texi @@ -8437,54 +8839,54 @@ Add optional filltype argument to HookHead2. Reduce adaptive thick line constant. ------------------------------------------------------------------------ -r3642 | pivaldi | 2008-10-27 07:32:59 -0600 (Mon, 27 Oct 2008) | 1 line +r3642 | pivaldi | 2008-10-27 14:32:59 +0100 (Mon, 27 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/examples/parametricelevation.asy add size to parametricelevation.asy ------------------------------------------------------------------------ -r3641 | pivaldi | 2008-10-26 17:53:47 -0600 (Sun, 26 Oct 2008) | 1 line +r3641 | pivaldi | 2008-10-27 00:53:47 +0100 (Mon, 27 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/glrender.cc revert wrong commit of glrender.cc ------------------------------------------------------------------------ -r3640 | pivaldi | 2008-10-26 17:46:53 -0600 (Sun, 26 Oct 2008) | 1 line +r3640 | pivaldi | 2008-10-27 00:46:53 +0100 (Mon, 27 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/examples/sphericalharmonic.asy M /trunk/asymptote/glrender.cc add size to sphericalharmonic.asy. ------------------------------------------------------------------------ -r3639 | jcbowman | 2008-10-26 17:37:14 -0600 (Sun, 26 Oct 2008) | 2 lines +r3639 | jcbowman | 2008-10-27 00:37:14 +0100 (Mon, 27 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Further adaptive thick line improvements. ------------------------------------------------------------------------ -r3638 | jcbowman | 2008-10-26 15:52:26 -0600 (Sun, 26 Oct 2008) | 2 lines +r3638 | jcbowman | 2008-10-26 22:52:26 +0100 (Sun, 26 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Improve thick line adaptive step routine. ------------------------------------------------------------------------ -r3637 | jcbowman | 2008-10-26 14:35:58 -0600 (Sun, 26 Oct 2008) | 2 lines +r3637 | jcbowman | 2008-10-26 21:35:58 +0100 (Sun, 26 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Increase 3D margins. ------------------------------------------------------------------------ -r3636 | jcbowman | 2008-10-25 22:46:42 -0600 (Sat, 25 Oct 2008) | 2 lines +r3636 | jcbowman | 2008-10-26 05:46:42 +0100 (Sun, 26 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/obj.asy Work around Adobe Reader rendering bugs. ------------------------------------------------------------------------ -r3635 | jcbowman | 2008-10-25 21:57:23 -0600 (Sat, 25 Oct 2008) | 4 lines +r3635 | jcbowman | 2008-10-26 04:57:23 +0100 (Sun, 26 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_markers.asy @@ -8494,7 +8896,7 @@ Support 2D alignment of 3D axis labels. Use more efficient size(pic) routine in legend(). ------------------------------------------------------------------------ -r3634 | jcbowman | 2008-10-25 13:01:28 -0600 (Sat, 25 Oct 2008) | 6 lines +r3634 | jcbowman | 2008-10-25 21:01:28 +0200 (Sat, 25 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/base/three_surface.asy @@ -8508,7 +8910,7 @@ Add Gradient palette that varies linearly over a specified range of pens. Add spherical harmonic example. ------------------------------------------------------------------------ -r3633 | jcbowman | 2008-10-25 11:16:48 -0600 (Sat, 25 Oct 2008) | 4 lines +r3633 | jcbowman | 2008-10-25 19:16:48 +0200 (Sat, 25 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -8520,20 +8922,20 @@ Standardize argument names of dir and expi. Add parametric surface with elevation-dependent colouring and no light effects. ------------------------------------------------------------------------ -r3632 | jcbowman | 2008-10-24 08:31:50 -0600 (Fri, 24 Oct 2008) | 2 lines +r3632 | jcbowman | 2008-10-24 16:31:50 +0200 (Fri, 24 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix a numerical precision issue. ------------------------------------------------------------------------ -r3631 | jcbowman | 2008-10-23 02:18:43 -0600 (Thu, 23 Oct 2008) | 1 line +r3631 | jcbowman | 2008-10-23 10:18:43 +0200 (Thu, 23 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.48svn. ------------------------------------------------------------------------ -r3630 | jcbowman | 2008-10-23 00:48:28 -0600 (Thu, 23 Oct 2008) | 2 lines +r3630 | jcbowman | 2008-10-23 08:48:28 +0200 (Thu, 23 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -8541,7 +8943,7 @@ Changed paths: Add another draw routine for surfaces. ------------------------------------------------------------------------ -r3629 | jcbowman | 2008-10-23 00:39:14 -0600 (Thu, 23 Oct 2008) | 7 lines +r3629 | jcbowman | 2008-10-23 08:39:14 +0200 (Thu, 23 Oct 2008) | 7 lines Changed paths: M /trunk/asymptote/base/obj.asy M /trunk/asymptote/base/three.asy @@ -8558,28 +8960,28 @@ Handle nonplanar obj faces. Add triceratops example. ------------------------------------------------------------------------ -r3628 | jcbowman | 2008-10-22 17:40:56 -0600 (Wed, 22 Oct 2008) | 2 lines +r3628 | jcbowman | 2008-10-23 01:40:56 +0200 (Thu, 23 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Re-enable high-resolution rendering. ------------------------------------------------------------------------ -r3627 | jcbowman | 2008-10-22 16:59:21 -0600 (Wed, 22 Oct 2008) | 2 lines +r3627 | jcbowman | 2008-10-23 00:59:21 +0200 (Thu, 23 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Remove diagnostic. ------------------------------------------------------------------------ -r3626 | jcbowman | 2008-10-22 14:52:20 -0600 (Wed, 22 Oct 2008) | 2 lines +r3626 | jcbowman | 2008-10-22 22:52:20 +0200 (Wed, 22 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Fix strokepath(nullpath). ------------------------------------------------------------------------ -r3625 | jcbowman | 2008-10-22 14:49:43 -0600 (Wed, 22 Oct 2008) | 2 lines +r3625 | jcbowman | 2008-10-22 22:49:43 +0200 (Wed, 22 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/stats.asy @@ -8588,14 +8990,14 @@ Changed paths: Fix strokepath. ------------------------------------------------------------------------ -r3624 | jcbowman | 2008-10-22 01:55:06 -0600 (Wed, 22 Oct 2008) | 2 lines +r3624 | jcbowman | 2008-10-22 09:55:06 +0200 (Wed, 22 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Bypass bezulate for paths of length 4. ------------------------------------------------------------------------ -r3623 | jcbowman | 2008-10-21 21:05:17 -0600 (Tue, 21 Oct 2008) | 2 lines +r3623 | jcbowman | 2008-10-22 05:05:17 +0200 (Wed, 22 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -8603,7 +9005,7 @@ Changed paths: Use unit normal in planar. ------------------------------------------------------------------------ -r3622 | jcbowman | 2008-10-21 20:50:31 -0600 (Tue, 21 Oct 2008) | 2 lines +r3622 | jcbowman | 2008-10-22 04:50:31 +0200 (Wed, 22 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -8611,7 +9013,7 @@ Changed paths: Fix cyclic path bugs in write(path) and write(path3) introduced in r3554. ------------------------------------------------------------------------ -r3621 | jcbowman | 2008-10-21 17:49:30 -0600 (Tue, 21 Oct 2008) | 14 lines +r3621 | jcbowman | 2008-10-22 01:49:30 +0200 (Wed, 22 Oct 2008) | 14 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -8634,14 +9036,14 @@ Use tighter values for the margin parameters viewportfactor and anglefactor. Reduce angleiterations to 2. ------------------------------------------------------------------------ -r3620 | jcbowman | 2008-10-21 13:36:45 -0600 (Tue, 21 Oct 2008) | 2 lines +r3620 | jcbowman | 2008-10-21 21:36:45 +0200 (Tue, 21 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fit to screen by default. ------------------------------------------------------------------------ -r3619 | jcbowman | 2008-10-21 11:52:54 -0600 (Tue, 21 Oct 2008) | 4 lines +r3619 | jcbowman | 2008-10-21 19:52:54 +0200 (Tue, 21 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/plain_picture.asy @@ -8656,21 +9058,21 @@ Don't generate spurious "camera too close" errors for projections from infinity. Always use currentlight by default for drawing arrowheads. ------------------------------------------------------------------------ -r3618 | jcbowman | 2008-10-21 09:02:46 -0600 (Tue, 21 Oct 2008) | 2 lines +r3618 | jcbowman | 2008-10-21 17:02:46 +0200 (Tue, 21 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/CDlabel.asy Change text on sample CD label to something more Asymptote related. ------------------------------------------------------------------------ -r3617 | jcbowman | 2008-10-21 01:52:33 -0600 (Tue, 21 Oct 2008) | 2 lines +r3617 | jcbowman | 2008-10-21 09:52:33 +0200 (Tue, 21 Oct 2008) | 2 lines Changed paths: A /trunk/asymptote/base/three_margins.asy Add missing file. ------------------------------------------------------------------------ -r3616 | jcbowman | 2008-10-21 01:22:40 -0600 (Tue, 21 Oct 2008) | 2 lines +r3616 | jcbowman | 2008-10-21 09:22:40 +0200 (Tue, 21 Oct 2008) | 2 lines Changed paths: A /trunk/asymptote/base/obj.asy M /trunk/asymptote/base/three_surface.asy @@ -8679,7 +9081,7 @@ Changed paths: Add module for reading obj files and example. ------------------------------------------------------------------------ -r3615 | jcbowman | 2008-10-20 23:05:56 -0600 (Mon, 20 Oct 2008) | 4 lines +r3615 | jcbowman | 2008-10-21 07:05:56 +0200 (Tue, 21 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -8690,7 +9092,7 @@ Allow an array of meshpens when drawing surfaces. Update documentation. ------------------------------------------------------------------------ -r3614 | jcbowman | 2008-10-20 21:48:12 -0600 (Mon, 20 Oct 2008) | 6 lines +r3614 | jcbowman | 2008-10-21 05:48:12 +0200 (Tue, 21 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/three.asy @@ -8704,14 +9106,14 @@ Add bool warn=true to planar and normal(path3). Check incoming width and height parameters. ------------------------------------------------------------------------ -r3613 | jcbowman | 2008-10-20 16:31:26 -0600 (Mon, 20 Oct 2008) | 2 lines +r3613 | jcbowman | 2008-10-21 00:31:26 +0200 (Tue, 21 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix prefix again. ------------------------------------------------------------------------ -r3612 | jcbowman | 2008-10-20 16:19:41 -0600 (Mon, 20 Oct 2008) | 2 lines +r3612 | jcbowman | 2008-10-21 00:19:41 +0200 (Tue, 21 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -8720,14 +9122,14 @@ Changed paths: Implement 3D margins. ------------------------------------------------------------------------ -r3611 | hammera | 2008-10-20 12:25:25 -0600 (Mon, 20 Oct 2008) | 2 lines +r3611 | hammera | 2008-10-20 20:25:25 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/syzygy.asy Fixed watch() and unwatch() to use atupdate(). ------------------------------------------------------------------------ -r3610 | jcbowman | 2008-10-20 01:36:47 -0600 (Mon, 20 Oct 2008) | 2 lines +r3610 | jcbowman | 2008-10-20 09:36:47 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/glrender.cc @@ -8735,14 +9137,14 @@ Changed paths: Add surface constructors for triangles. ------------------------------------------------------------------------ -r3609 | jcbowman | 2008-10-19 20:54:46 -0600 (Sun, 19 Oct 2008) | 2 lines +r3609 | jcbowman | 2008-10-20 04:54:46 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Add missing transform for projected 3D mesh lines. ------------------------------------------------------------------------ -r3608 | jcbowman | 2008-10-19 19:47:40 -0600 (Sun, 19 Oct 2008) | 2 lines +r3608 | jcbowman | 2008-10-20 03:47:40 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/examples/elevation.asy @@ -8750,21 +9152,21 @@ Changed paths: Use cornermean instead of center. ------------------------------------------------------------------------ -r3607 | jcbowman | 2008-10-19 19:26:02 -0600 (Sun, 19 Oct 2008) | 2 lines +r3607 | jcbowman | 2008-10-20 03:26:02 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/grid3.asy Add missing put argument. ------------------------------------------------------------------------ -r3606 | jcbowman | 2008-10-19 17:43:03 -0600 (Sun, 19 Oct 2008) | 2 lines +r3606 | jcbowman | 2008-10-20 01:43:03 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix range check in both places; consolidate PostScript code. ------------------------------------------------------------------------ -r3605 | jcbowman | 2008-10-19 17:27:37 -0600 (Sun, 19 Oct 2008) | 2 lines +r3605 | jcbowman | 2008-10-20 01:27:37 +0200 (Mon, 20 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/settings.cc @@ -8772,7 +9174,7 @@ Changed paths: Fix range check in strokepath (and potentially texpath). ------------------------------------------------------------------------ -r3604 | jcbowman | 2008-10-19 16:32:44 -0600 (Sun, 19 Oct 2008) | 5 lines +r3604 | jcbowman | 2008-10-20 00:32:44 +0200 (Mon, 20 Oct 2008) | 5 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -8784,7 +9186,7 @@ palette. Add elevation example. ------------------------------------------------------------------------ -r3603 | jcbowman | 2008-10-19 15:22:09 -0600 (Sun, 19 Oct 2008) | 2 lines +r3603 | jcbowman | 2008-10-19 23:22:09 +0200 (Sun, 19 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/three_light.asy @@ -8795,7 +9197,7 @@ Changed paths: Add support for using a different surfacepen for each patch. ------------------------------------------------------------------------ -r3602 | jcbowman | 2008-10-19 13:17:34 -0600 (Sun, 19 Oct 2008) | 2 lines +r3602 | jcbowman | 2008-10-19 21:17:34 +0200 (Sun, 19 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/epix.asy @@ -8803,7 +9205,7 @@ Changed paths: Document default pen argument of strokepath. ------------------------------------------------------------------------ -r3601 | jcbowman | 2008-10-19 10:31:51 -0600 (Sun, 19 Oct 2008) | 3 lines +r3601 | jcbowman | 2008-10-19 18:31:51 +0200 (Sun, 19 Oct 2008) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -8812,13 +9214,13 @@ Implement path[] strokepath(path g, pen p), which returns the path array that PostScript would fill in drawing path g with pen p. ------------------------------------------------------------------------ -r3600 | jcbowman | 2008-10-18 13:53:43 -0600 (Sat, 18 Oct 2008) | 1 line +r3600 | jcbowman | 2008-10-18 21:53:43 +0200 (Sat, 18 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.47svn. ------------------------------------------------------------------------ -r3599 | jcbowman | 2008-10-18 12:36:00 -0600 (Sat, 18 Oct 2008) | 2 lines +r3599 | jcbowman | 2008-10-18 20:36:00 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/doc/Makefile.in @@ -8827,7 +9229,7 @@ Changed paths: Allow one to disable embedding of inline PRC files within LaTeX. ------------------------------------------------------------------------ -r3598 | jcbowman | 2008-10-18 11:48:45 -0600 (Sat, 18 Oct 2008) | 2 lines +r3598 | jcbowman | 2008-10-18 19:48:45 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/Makefile.in @@ -8835,7 +9237,7 @@ Changed paths: Try to produce a preview image of latexusage for the manual. ------------------------------------------------------------------------ -r3597 | jcbowman | 2008-10-18 11:01:22 -0600 (Sat, 18 Oct 2008) | 4 lines +r3597 | jcbowman | 2008-10-18 19:01:22 +0200 (Sat, 18 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/examples/animations/sphere.asy @@ -8846,7 +9248,7 @@ Signal an error if the user tries to render an image without freeglut. Support embedding of 3D PRC files when -render=0. ------------------------------------------------------------------------ -r3596 | jcbowman | 2008-10-18 02:48:43 -0600 (Sat, 18 Oct 2008) | 2 lines +r3596 | jcbowman | 2008-10-18 10:48:43 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/Klein.asy M /trunk/asymptote/examples/animations/sphere.asy @@ -8854,20 +9256,20 @@ Changed paths: Update examples. ------------------------------------------------------------------------ -r3595 | jcbowman | 2008-10-18 02:35:15 -0600 (Sat, 18 Oct 2008) | 2 lines +r3595 | jcbowman | 2008-10-18 10:35:15 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/sphere.asy Update example. ------------------------------------------------------------------------ -r3594 | jcbowman | 2008-10-18 02:30:53 -0600 (Sat, 18 Oct 2008) | 1 line +r3594 | jcbowman | 2008-10-18 10:30:53 +0200 (Sat, 18 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.46svn. ------------------------------------------------------------------------ -r3593 | jcbowman | 2008-10-18 00:46:29 -0600 (Sat, 18 Oct 2008) | 2 lines +r3593 | jcbowman | 2008-10-18 08:46:29 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -8876,7 +9278,7 @@ Changed paths: Add planeproject routines, courtesy of Philippe Ivaldi. ------------------------------------------------------------------------ -r3592 | jcbowman | 2008-10-17 23:44:47 -0600 (Fri, 17 Oct 2008) | 2 lines +r3592 | jcbowman | 2008-10-18 07:44:47 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/Makefile.in @@ -8885,28 +9287,28 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r3591 | jcbowman | 2008-10-17 21:12:11 -0600 (Fri, 17 Oct 2008) | 2 lines +r3591 | jcbowman | 2008-10-18 05:12:11 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix fitting issues. ------------------------------------------------------------------------ -r3590 | jcbowman | 2008-10-17 16:55:36 -0600 (Fri, 17 Oct 2008) | 2 lines +r3590 | jcbowman | 2008-10-18 00:55:36 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix handling of minimumsize. ------------------------------------------------------------------------ -r3589 | jcbowman | 2008-10-17 16:07:48 -0600 (Fri, 17 Oct 2008) | 2 lines +r3589 | jcbowman | 2008-10-18 00:07:48 +0200 (Sat, 18 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Increase tolerance of normal(path3). ------------------------------------------------------------------------ -r3588 | jcbowman | 2008-10-17 14:11:32 -0600 (Fri, 17 Oct 2008) | 2 lines +r3588 | jcbowman | 2008-10-17 22:11:32 +0200 (Fri, 17 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -8914,14 +9316,14 @@ Changed paths: Standardize embed options; fix labels. ------------------------------------------------------------------------ -r3587 | jcbowman | 2008-10-17 13:25:17 -0600 (Fri, 17 Oct 2008) | 2 lines +r3587 | jcbowman | 2008-10-17 21:25:17 +0200 (Fri, 17 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Add link to PRC specification. ------------------------------------------------------------------------ -r3586 | jcbowman | 2008-10-17 11:52:14 -0600 (Fri, 17 Oct 2008) | 4 lines +r3586 | jcbowman | 2008-10-17 19:52:14 +0200 (Fri, 17 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -8935,21 +9337,21 @@ Fix dir normalizations. Ignore spurious warnings from degrees. ------------------------------------------------------------------------ -r3585 | jcbowman | 2008-10-17 11:20:47 -0600 (Fri, 17 Oct 2008) | 2 lines +r3585 | jcbowman | 2008-10-17 19:20:47 +0200 (Fri, 17 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex Illustrate use of global TeX macro. ------------------------------------------------------------------------ -r3584 | jcbowman | 2008-10-17 01:26:45 -0600 (Fri, 17 Oct 2008) | 2 lines +r3584 | jcbowman | 2008-10-17 09:26:45 +0200 (Fri, 17 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document direction invert routine. ------------------------------------------------------------------------ -r3583 | jcbowman | 2008-10-17 01:19:46 -0600 (Fri, 17 Oct 2008) | 4 lines +r3583 | jcbowman | 2008-10-17 09:19:46 +0200 (Fri, 17 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/base/three_arrows.asy @@ -8960,7 +9362,7 @@ Fix DefaultHead3 size. Update documentation. ------------------------------------------------------------------------ -r3582 | jcbowman | 2008-10-16 22:32:10 -0600 (Thu, 16 Oct 2008) | 2 lines +r3582 | jcbowman | 2008-10-17 06:32:10 +0200 (Fri, 17 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.h @@ -8969,7 +9371,7 @@ Changed paths: Add 2D versions of accel and radius of curvature functions. ------------------------------------------------------------------------ -r3581 | jcbowman | 2008-10-16 21:48:08 -0600 (Thu, 16 Oct 2008) | 2 lines +r3581 | jcbowman | 2008-10-17 05:48:08 +0200 (Fri, 17 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/drawsurface.cc @@ -8980,14 +9382,14 @@ Changed paths: Fix radius and non-normalized dir functions. ------------------------------------------------------------------------ -r3580 | jcbowman | 2008-10-16 11:37:26 -0600 (Thu, 16 Oct 2008) | 2 lines +r3580 | jcbowman | 2008-10-16 19:37:26 +0200 (Thu, 16 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix numerical resolution issue. ------------------------------------------------------------------------ -r3579 | jcbowman | 2008-10-16 01:08:49 -0600 (Thu, 16 Oct 2008) | 8 lines +r3579 | jcbowman | 2008-10-16 09:08:49 +0200 (Thu, 16 Oct 2008) | 8 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -9005,14 +9407,14 @@ Add option to suppress normalization of dir functions. Remove secondary camera adjustment call. ------------------------------------------------------------------------ -r3578 | jcbowman | 2008-10-15 18:12:14 -0600 (Wed, 15 Oct 2008) | 2 lines +r3578 | jcbowman | 2008-10-16 02:12:14 +0200 (Thu, 16 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Minor optimization. ------------------------------------------------------------------------ -r3577 | jcbowman | 2008-10-15 18:03:05 -0600 (Wed, 15 Oct 2008) | 2 lines +r3577 | jcbowman | 2008-10-16 02:03:05 +0200 (Thu, 16 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/three_arrows.asy @@ -9020,7 +9422,7 @@ Changed paths: Fix arrow3 sizing. ------------------------------------------------------------------------ -r3576 | jcbowman | 2008-10-15 00:14:19 -0600 (Wed, 15 Oct 2008) | 4 lines +r3576 | jcbowman | 2008-10-15 08:14:19 +0200 (Wed, 15 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -9031,7 +9433,7 @@ Implement triple invert(pair dir, triple v, projection P=currentprojection). Add a 3D arrow routine that accepts a pair direction. ------------------------------------------------------------------------ -r3575 | jcbowman | 2008-10-14 23:42:35 -0600 (Tue, 14 Oct 2008) | 2 lines +r3575 | jcbowman | 2008-10-15 07:42:35 +0200 (Wed, 15 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/solids.asy @@ -9041,7 +9443,7 @@ Changed paths: Add HookHead3 and TeXHead3 arrowhead styles. ------------------------------------------------------------------------ -r3574 | jcbowman | 2008-10-14 17:16:17 -0600 (Tue, 14 Oct 2008) | 2 lines +r3574 | jcbowman | 2008-10-15 01:16:17 +0200 (Wed, 15 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -9049,14 +9451,14 @@ Changed paths: Optimize 2D arclength calculation for straight segments. ------------------------------------------------------------------------ -r3573 | jcbowman | 2008-10-14 17:15:31 -0600 (Tue, 14 Oct 2008) | 2 lines +r3573 | jcbowman | 2008-10-15 01:15:31 +0200 (Wed, 15 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix degenerate perp vector workaround. ------------------------------------------------------------------------ -r3572 | jcbowman | 2008-10-14 17:14:27 -0600 (Tue, 14 Oct 2008) | 2 lines +r3572 | jcbowman | 2008-10-15 01:14:27 +0200 (Wed, 15 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/path3.cc M /trunk/asymptote/path3.h @@ -9064,14 +9466,14 @@ Changed paths: Optimize arclength calculation for straight segments. ------------------------------------------------------------------------ -r3571 | jcbowman | 2008-10-14 15:24:08 -0600 (Tue, 14 Oct 2008) | 2 lines +r3571 | jcbowman | 2008-10-14 23:24:08 +0200 (Tue, 14 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix degenerate perp vectors. ------------------------------------------------------------------------ -r3570 | jcbowman | 2008-10-14 14:21:57 -0600 (Tue, 14 Oct 2008) | 4 lines +r3570 | jcbowman | 2008-10-14 22:21:57 +0200 (Tue, 14 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/plain_picture.asy @@ -9084,7 +9486,7 @@ Fix nullpath and nullpath3 issues. Use user coordinates in camera diagnostics. ------------------------------------------------------------------------ -r3569 | jcbowman | 2008-10-14 11:01:52 -0600 (Tue, 14 Oct 2008) | 6 lines +r3569 | jcbowman | 2008-10-14 19:01:52 +0200 (Tue, 14 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/solids.asy @@ -9098,14 +9500,14 @@ Add surface constructor planar(path3). Add path(path3, pair P(triple)=xypart) constructor. ------------------------------------------------------------------------ -r3568 | jcbowman | 2008-10-13 22:40:10 -0600 (Mon, 13 Oct 2008) | 2 lines +r3568 | jcbowman | 2008-10-14 06:40:10 +0200 (Tue, 14 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix degenerate perp vectors. ------------------------------------------------------------------------ -r3567 | jcbowman | 2008-10-13 21:49:53 -0600 (Mon, 13 Oct 2008) | 2 lines +r3567 | jcbowman | 2008-10-14 05:49:53 +0200 (Tue, 14 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -9113,7 +9515,7 @@ Changed paths: Improve automatic camera adjustment. ------------------------------------------------------------------------ -r3566 | jcbowman | 2008-10-13 20:36:06 -0600 (Mon, 13 Oct 2008) | 6 lines +r3566 | jcbowman | 2008-10-14 04:36:06 +0200 (Tue, 14 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/base/three_surface.asy @@ -9132,7 +9534,7 @@ Fix handling of currentlight=nolight. Change default light for mesh lines to surface light. ------------------------------------------------------------------------ -r3565 | jcbowman | 2008-10-13 13:28:07 -0600 (Mon, 13 Oct 2008) | 4 lines +r3565 | jcbowman | 2008-10-13 21:28:07 +0200 (Mon, 13 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/drawsurface.cc M /trunk/asymptote/glrender.cc @@ -9142,14 +9544,14 @@ Fix window sizing problems. Tweak constant. ------------------------------------------------------------------------ -r3564 | jcbowman | 2008-10-13 10:00:22 -0600 (Mon, 13 Oct 2008) | 2 lines +r3564 | jcbowman | 2008-10-13 18:00:22 +0200 (Mon, 13 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Install externalprc.tex. ------------------------------------------------------------------------ -r3563 | jcbowman | 2008-10-13 01:26:29 -0600 (Mon, 13 Oct 2008) | 4 lines +r3563 | jcbowman | 2008-10-13 09:26:29 +0200 (Mon, 13 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/examples/sphereskeleton.asy @@ -9160,14 +9562,14 @@ Avoid cracks in thick lines. Add connector sphere for cyclic paths. ------------------------------------------------------------------------ -r3562 | jcbowman | 2008-10-13 00:44:45 -0600 (Mon, 13 Oct 2008) | 2 lines +r3562 | jcbowman | 2008-10-13 08:44:45 +0200 (Mon, 13 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Enable linetype offset. ------------------------------------------------------------------------ -r3561 | jcbowman | 2008-10-12 23:39:48 -0600 (Sun, 12 Oct 2008) | 4 lines +r3561 | jcbowman | 2008-10-13 07:39:48 +0200 (Mon, 13 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/three_surface.asy @@ -9180,7 +9582,7 @@ Transform computed surface normals. Reduce planar normal constant for accurate rendering. ------------------------------------------------------------------------ -r3560 | jcbowman | 2008-10-12 21:13:04 -0600 (Sun, 12 Oct 2008) | 2 lines +r3560 | jcbowman | 2008-10-13 05:13:04 +0200 (Mon, 13 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/drawsurface.cc @@ -9188,7 +9590,7 @@ Changed paths: Add Orest's patch to make short connections before longer ones. ------------------------------------------------------------------------ -r3559 | jcbowman | 2008-10-12 13:35:26 -0600 (Sun, 12 Oct 2008) | 2 lines +r3559 | jcbowman | 2008-10-12 21:35:26 +0200 (Sun, 12 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/three_surface.asy @@ -9203,21 +9605,21 @@ Changed paths: Fix rendering of planar surfaces. ------------------------------------------------------------------------ -r3558 | jcbowman | 2008-10-12 11:33:24 -0600 (Sun, 12 Oct 2008) | 2 lines +r3558 | jcbowman | 2008-10-12 19:33:24 +0200 (Sun, 12 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix settings.render=0. ------------------------------------------------------------------------ -r3557 | jcbowman | 2008-10-12 00:29:13 -0600 (Sun, 12 Oct 2008) | 2 lines +r3557 | jcbowman | 2008-10-12 08:29:13 +0200 (Sun, 12 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Fix freeglut dependency. ------------------------------------------------------------------------ -r3556 | jcbowman | 2008-10-11 23:59:50 -0600 (Sat, 11 Oct 2008) | 2 lines +r3556 | jcbowman | 2008-10-12 07:59:50 +0200 (Sun, 12 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/util.h @@ -9225,7 +9627,7 @@ Changed paths: Remove texhash dependency from RPM spec file. ------------------------------------------------------------------------ -r3555 | jcbowman | 2008-10-11 23:10:17 -0600 (Sat, 11 Oct 2008) | 2 lines +r3555 | jcbowman | 2008-10-12 07:10:17 +0200 (Sun, 12 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/drawpath3.cc @@ -9238,7 +9640,7 @@ Changed paths: Speed up rendering of straight surfaces. ------------------------------------------------------------------------ -r3554 | jcbowman | 2008-10-11 22:02:50 -0600 (Sat, 11 Oct 2008) | 4 lines +r3554 | jcbowman | 2008-10-12 06:02:50 +0200 (Sun, 12 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/base/plain_paths.asy @@ -9251,14 +9653,14 @@ Treat duplicate nodes as straight segments. Make write(path) indicate straight segments, consistent with write(path3). ------------------------------------------------------------------------ -r3553 | jcbowman | 2008-10-11 14:48:32 -0600 (Sat, 11 Oct 2008) | 2 lines +r3553 | jcbowman | 2008-10-11 22:48:32 +0200 (Sat, 11 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Size 2D and 3D objects consistently when render=0. ------------------------------------------------------------------------ -r3552 | jcbowman | 2008-10-11 11:09:55 -0600 (Sat, 11 Oct 2008) | 2 lines +r3552 | jcbowman | 2008-10-11 19:09:55 +0200 (Sat, 11 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_shipout.asy @@ -9267,14 +9669,14 @@ Changed paths: Respect prefix and format arguments. ------------------------------------------------------------------------ -r3551 | jcbowman | 2008-10-11 00:14:43 -0600 (Sat, 11 Oct 2008) | 2 lines +r3551 | jcbowman | 2008-10-11 08:14:43 +0200 (Sat, 11 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix normal for degenerate paths. ------------------------------------------------------------------------ -r3550 | jcbowman | 2008-10-10 23:38:12 -0600 (Fri, 10 Oct 2008) | 4 lines +r3550 | jcbowman | 2008-10-11 07:38:12 +0200 (Sat, 11 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/runtime.in @@ -9284,7 +9686,7 @@ Resolve ambiguity. Optimize normal. ------------------------------------------------------------------------ -r3549 | jcbowman | 2008-10-10 23:09:04 -0600 (Fri, 10 Oct 2008) | 5 lines +r3549 | jcbowman | 2008-10-11 07:09:04 +0200 (Sat, 11 Oct 2008) | 5 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -9297,7 +9699,7 @@ Draw a sphere if path3 has length 0 with roundcap but not squarecap or extendcap, consistent with the behaviour of PostScript in 2D. ------------------------------------------------------------------------ -r3548 | jcbowman | 2008-10-10 21:40:24 -0600 (Fri, 10 Oct 2008) | 4 lines +r3548 | jcbowman | 2008-10-11 05:40:24 +0200 (Sat, 11 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -9307,7 +9709,7 @@ Remove -unsafe option in favour of -nosafe setting. Remove unused code. ------------------------------------------------------------------------ -r3547 | hammera | 2008-10-10 19:47:52 -0600 (Fri, 10 Oct 2008) | 2 lines +r3547 | hammera | 2008-10-11 03:47:52 +0200 (Sat, 11 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/errortest.asy @@ -9315,7 +9717,7 @@ Changed paths: Added testing of permissions. ------------------------------------------------------------------------ -r3546 | hammera | 2008-10-10 18:47:43 -0600 (Fri, 10 Oct 2008) | 2 lines +r3546 | hammera | 2008-10-11 02:47:43 +0200 (Sat, 11 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/errortest.asy @@ -9326,7 +9728,7 @@ Changed paths: Added secure options as read-only settings. ------------------------------------------------------------------------ -r3545 | hammera | 2008-10-10 17:42:54 -0600 (Fri, 10 Oct 2008) | 2 lines +r3545 | hammera | 2008-10-11 01:42:54 +0200 (Sat, 11 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -9334,7 +9736,7 @@ Changed paths: Added optional tests to audit the type and application caching. ------------------------------------------------------------------------ -r3544 | jcbowman | 2008-10-10 17:35:57 -0600 (Fri, 10 Oct 2008) | 4 lines +r3544 | jcbowman | 2008-10-11 01:35:57 +0200 (Sat, 11 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -9345,28 +9747,28 @@ Document texpath. Standardize write(path3) formatting. ------------------------------------------------------------------------ -r3543 | jcbowman | 2008-10-10 09:27:34 -0600 (Fri, 10 Oct 2008) | 2 lines +r3543 | jcbowman | 2008-10-10 17:27:34 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/equilchord.asy Fix example. ------------------------------------------------------------------------ -r3542 | jcbowman | 2008-10-10 09:24:00 -0600 (Fri, 10 Oct 2008) | 2 lines +r3542 | jcbowman | 2008-10-10 17:24:00 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix compilation error. ------------------------------------------------------------------------ -r3541 | jcbowman | 2008-10-10 09:22:09 -0600 (Fri, 10 Oct 2008) | 2 lines +r3541 | jcbowman | 2008-10-10 17:22:09 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add missing return value. ------------------------------------------------------------------------ -r3540 | jcbowman | 2008-10-10 09:10:00 -0600 (Fri, 10 Oct 2008) | 4 lines +r3540 | jcbowman | 2008-10-10 17:10:00 +0200 (Fri, 10 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/teapot.asy @@ -9377,7 +9779,7 @@ Document convert, animate, and system; add args option to animate. Fix segmentation fault in system. ------------------------------------------------------------------------ -r3539 | jcbowman | 2008-10-10 08:18:48 -0600 (Fri, 10 Oct 2008) | 2 lines +r3539 | jcbowman | 2008-10-10 16:18:48 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_light.asy M /trunk/asymptote/doc/GaussianSurface.asy @@ -9386,7 +9788,7 @@ Changed paths: Add files missing from last revision. ------------------------------------------------------------------------ -r3538 | jcbowman | 2008-10-10 02:45:32 -0600 (Fri, 10 Oct 2008) | 13 lines +r3538 | jcbowman | 2008-10-10 10:45:32 +0200 (Fri, 10 Oct 2008) | 13 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_constants.asy @@ -9412,7 +9814,7 @@ Use linecap(0) by default for meshlines. Don't draw thin line if opacity of pen is less than 1. ------------------------------------------------------------------------ -r3537 | jcbowman | 2008-10-10 00:58:16 -0600 (Fri, 10 Oct 2008) | 2 lines +r3537 | jcbowman | 2008-10-10 08:58:16 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -9421,7 +9823,7 @@ Changed paths: Add min and max arguments to axes and axes3. ------------------------------------------------------------------------ -r3536 | jcbowman | 2008-10-10 00:52:48 -0600 (Fri, 10 Oct 2008) | 2 lines +r3536 | jcbowman | 2008-10-10 08:52:48 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/xxsq01.asy M /trunk/asymptote/examples/xxsq01x-1.asy @@ -9430,7 +9832,7 @@ Changed paths: Simplify paths. ------------------------------------------------------------------------ -r3535 | jcbowman | 2008-10-09 22:12:26 -0600 (Thu, 09 Oct 2008) | 3 lines +r3535 | jcbowman | 2008-10-10 06:12:26 +0200 (Fri, 10 Oct 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/three.asy @@ -9441,20 +9843,20 @@ Allow the specification of fuzz=0 in intersection routines (the new default, fuzz=-1, specifies a fixed multiple of the machine precision). ------------------------------------------------------------------------ -r3534 | jcbowman | 2008-10-09 21:34:15 -0600 (Thu, 09 Oct 2008) | 2 lines +r3534 | jcbowman | 2008-10-10 05:34:15 +0200 (Fri, 10 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Fix division by zero error. ------------------------------------------------------------------------ -r3533 | oshardt | 2008-10-09 19:23:43 -0600 (Thu, 09 Oct 2008) | 1 line +r3533 | oshardt | 2008-10-10 03:23:43 +0200 (Fri, 10 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/base/bezulate.asy Improve splitting of triangular patches. ------------------------------------------------------------------------ -r3532 | jcbowman | 2008-10-09 01:23:49 -0600 (Thu, 09 Oct 2008) | 19 lines +r3532 | jcbowman | 2008-10-09 09:23:49 +0200 (Thu, 09 Oct 2008) | 19 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_picture.asy @@ -9487,7 +9889,7 @@ Increase fuzz in 3D arc and Arc routines. Update cone radix in solids.asy. ------------------------------------------------------------------------ -r3531 | jcbowman | 2008-10-08 21:57:16 -0600 (Wed, 08 Oct 2008) | 2 lines +r3531 | jcbowman | 2008-10-09 05:57:16 +0200 (Thu, 09 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -9495,7 +9897,7 @@ Changed paths: Fix arctime for cyclic paths of zero arclength. ------------------------------------------------------------------------ -r3530 | jcbowman | 2008-10-07 15:50:10 -0600 (Tue, 07 Oct 2008) | 8 lines +r3530 | jcbowman | 2008-10-07 23:50:10 +0200 (Tue, 07 Oct 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/three_arrows.asy @@ -9511,42 +9913,42 @@ Improve appearance of straight arrows. Increase fuzz in arrow end tests. ------------------------------------------------------------------------ -r3529 | jcbowman | 2008-10-07 14:27:36 -0600 (Tue, 07 Oct 2008) | 2 lines +r3529 | jcbowman | 2008-10-07 22:27:36 +0200 (Tue, 07 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Add arrow to NoTicks. ------------------------------------------------------------------------ -r3528 | jcbowman | 2008-10-07 13:57:30 -0600 (Tue, 07 Oct 2008) | 2 lines +r3528 | jcbowman | 2008-10-07 21:57:30 +0200 (Tue, 07 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix transverse slices. ------------------------------------------------------------------------ -r3527 | jcbowman | 2008-10-07 12:00:47 -0600 (Tue, 07 Oct 2008) | 2 lines +r3527 | jcbowman | 2008-10-07 20:00:47 +0200 (Tue, 07 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Give user control over slice Arc accuracy. ------------------------------------------------------------------------ -r3526 | jcbowman | 2008-10-07 11:32:08 -0600 (Tue, 07 Oct 2008) | 2 lines +r3526 | jcbowman | 2008-10-07 19:32:08 +0200 (Tue, 07 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Increase longitudinal epsilon. ------------------------------------------------------------------------ -r3525 | jcbowman | 2008-10-06 16:49:30 -0600 (Mon, 06 Oct 2008) | 2 lines +r3525 | jcbowman | 2008-10-07 00:49:30 +0200 (Tue, 07 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document need for version 2008/01/16 or later of the movie15 package. ------------------------------------------------------------------------ -r3524 | jcbowman | 2008-10-06 16:19:50 -0600 (Mon, 06 Oct 2008) | 4 lines +r3524 | jcbowman | 2008-10-07 00:19:50 +0200 (Tue, 07 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/three.asy @@ -9558,34 +9960,34 @@ Fix incorrect cast. Resolve ambiguities. ------------------------------------------------------------------------ -r3523 | jcbowman | 2008-10-06 12:26:16 -0600 (Mon, 06 Oct 2008) | 2 lines +r3523 | jcbowman | 2008-10-06 20:26:16 +0200 (Mon, 06 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation. ------------------------------------------------------------------------ -r3522 | jcbowman | 2008-10-06 12:05:43 -0600 (Mon, 06 Oct 2008) | 2 lines +r3522 | jcbowman | 2008-10-06 20:05:43 +0200 (Mon, 06 Oct 2008) | 2 lines Changed paths: A /trunk/asymptote/doc/reloadpdf.tex Add utility for forcing Adobe Reader to update all currently loaded documents. ------------------------------------------------------------------------ -r3521 | jcbowman | 2008-10-06 11:24:49 -0600 (Mon, 06 Oct 2008) | 2 lines +r3521 | jcbowman | 2008-10-06 19:24:49 +0200 (Mon, 06 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Use NUL instead of /dev/null under MSWindows. ------------------------------------------------------------------------ -r3520 | jcbowman | 2008-10-06 05:36:07 -0600 (Mon, 06 Oct 2008) | 1 line +r3520 | jcbowman | 2008-10-06 13:36:07 +0200 (Mon, 06 Oct 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.45svn. ------------------------------------------------------------------------ -r3519 | jcbowman | 2008-10-06 03:48:54 -0600 (Mon, 06 Oct 2008) | 2 lines +r3519 | jcbowman | 2008-10-06 11:48:54 +0200 (Mon, 06 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -9599,7 +10001,7 @@ Changed paths: Update documentation. ------------------------------------------------------------------------ -r3518 | jcbowman | 2008-10-06 01:09:53 -0600 (Mon, 06 Oct 2008) | 7 lines +r3518 | jcbowman | 2008-10-06 09:09:53 +0200 (Mon, 06 Oct 2008) | 7 lines Changed paths: M /trunk/asymptote/base/embed.asy D /trunk/asymptote/base/embedding.asy @@ -9615,14 +10017,14 @@ Generalize movie15 patch to pdflatex; restore @ catcode to its previous value. Reduce size of manual. ------------------------------------------------------------------------ -r3517 | jcbowman | 2008-10-05 21:20:57 -0600 (Sun, 05 Oct 2008) | 2 lines +r3517 | jcbowman | 2008-10-06 05:20:57 +0200 (Mon, 06 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/embedding.asy Fix missing BBox bug in movie15 version 2008/01/16. ------------------------------------------------------------------------ -r3516 | jcbowman | 2008-10-05 03:33:08 -0600 (Sun, 05 Oct 2008) | 6 lines +r3516 | jcbowman | 2008-10-05 11:33:08 +0200 (Sun, 05 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_picture.asy @@ -9645,14 +10047,14 @@ Fix manual build problems. Update examples and documentation. ------------------------------------------------------------------------ -r3515 | jcbowman | 2008-10-04 23:13:48 -0600 (Sat, 04 Oct 2008) | 2 lines +r3515 | jcbowman | 2008-10-05 07:13:48 +0200 (Sun, 05 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix absolute viewpoints. ------------------------------------------------------------------------ -r3514 | jcbowman | 2008-10-04 19:18:49 -0600 (Sat, 04 Oct 2008) | 2 lines +r3514 | jcbowman | 2008-10-05 03:18:49 +0200 (Sun, 05 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/externalprc.tex M /trunk/asymptote/examples/washermethod.asy @@ -9660,7 +10062,7 @@ Changed paths: Fix example. ------------------------------------------------------------------------ -r3513 | jcbowman | 2008-10-04 18:18:00 -0600 (Sat, 04 Oct 2008) | 2 lines +r3513 | jcbowman | 2008-10-05 02:18:00 +0200 (Sun, 05 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/cones.asy M /trunk/asymptote/examples/epix.asy @@ -9671,14 +10073,14 @@ Changed paths: Fix examples. ------------------------------------------------------------------------ -r3512 | jcbowman | 2008-10-04 17:12:05 -0600 (Sat, 04 Oct 2008) | 2 lines +r3512 | jcbowman | 2008-10-05 01:12:05 +0200 (Sun, 05 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add file missing from last revision. ------------------------------------------------------------------------ -r3511 | jcbowman | 2008-10-04 17:11:37 -0600 (Sat, 04 Oct 2008) | 4 lines +r3511 | jcbowman | 2008-10-05 01:11:37 +0200 (Sun, 05 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_xasy.asy M /trunk/asymptote/base/solids.asy @@ -9690,14 +10092,14 @@ Improve definition of unitcone. Make xasy work again with 3D pictures. ------------------------------------------------------------------------ -r3510 | jcbowman | 2008-10-04 14:53:47 -0600 (Sat, 04 Oct 2008) | 2 lines +r3510 | jcbowman | 2008-10-04 22:53:47 +0200 (Sat, 04 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Remove interp(int,int,real). ------------------------------------------------------------------------ -r3509 | jcbowman | 2008-10-04 11:45:14 -0600 (Sat, 04 Oct 2008) | 4 lines +r3509 | jcbowman | 2008-10-04 19:45:14 +0200 (Sat, 04 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/base/three.asy @@ -9709,7 +10111,7 @@ Handle degenerate point in cone. Tweak parameter in thick lines. ------------------------------------------------------------------------ -r3508 | jcbowman | 2008-10-04 01:15:46 -0600 (Sat, 04 Oct 2008) | 6 lines +r3508 | jcbowman | 2008-10-04 09:15:46 +0200 (Sat, 04 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain_picture.asy @@ -9735,21 +10137,21 @@ Fix projection and clipping. Fix 3D animations. ------------------------------------------------------------------------ -r3507 | jcbowman | 2008-10-03 17:21:00 -0600 (Fri, 03 Oct 2008) | 2 lines +r3507 | jcbowman | 2008-10-04 01:21:00 +0200 (Sat, 04 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Force -noprc during documentation builds. ------------------------------------------------------------------------ -r3506 | hammera | 2008-10-03 17:07:00 -0600 (Fri, 03 Oct 2008) | 2 lines +r3506 | hammera | 2008-10-04 01:07:00 +0200 (Sat, 04 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/application.cc Fixed matching of defaults for functions with rest arguments. ------------------------------------------------------------------------ -r3505 | jcbowman | 2008-10-03 16:32:10 -0600 (Fri, 03 Oct 2008) | 2 lines +r3505 | jcbowman | 2008-10-04 00:32:10 +0200 (Sat, 04 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/doc/latexusage.tex @@ -9759,7 +10161,7 @@ Changed paths: Make latexusage produce a rendered image by default. ------------------------------------------------------------------------ -r3504 | jcbowman | 2008-10-03 15:49:34 -0600 (Fri, 03 Oct 2008) | 2 lines +r3504 | jcbowman | 2008-10-03 23:49:34 +0200 (Fri, 03 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/doc/latexusage.tex @@ -9767,14 +10169,14 @@ Changed paths: Respect -noprc. ------------------------------------------------------------------------ -r3503 | jcbowman | 2008-10-03 04:09:58 -0600 (Fri, 03 Oct 2008) | 2 lines +r3503 | jcbowman | 2008-10-03 12:09:58 +0200 (Fri, 03 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Remove references to obsolete modules. ------------------------------------------------------------------------ -r3502 | jcbowman | 2008-10-03 03:43:53 -0600 (Fri, 03 Oct 2008) | 8 lines +r3502 | jcbowman | 2008-10-03 11:43:53 +0200 (Fri, 03 Oct 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/three.asy @@ -9800,7 +10202,7 @@ Update examples. Make preliminary documentation updates. ------------------------------------------------------------------------ -r3501 | jcbowman | 2008-10-03 01:01:09 -0600 (Fri, 03 Oct 2008) | 2 lines +r3501 | jcbowman | 2008-10-03 09:01:09 +0200 (Fri, 03 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/helix.asy @@ -9810,7 +10212,7 @@ Changed paths: Use a better default for tick and axis label selection. ------------------------------------------------------------------------ -r3500 | jcbowman | 2008-10-03 00:02:26 -0600 (Fri, 03 Oct 2008) | 4 lines +r3500 | jcbowman | 2008-10-03 08:02:26 +0200 (Fri, 03 Oct 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -9832,14 +10234,14 @@ Return a zero scaling when unbounded (revert r3371); see generalaxis3. Rename LeftTicks3 to InTicks, RightTicks3 to OutTicks, and Ticks3 to InOutTicks. ------------------------------------------------------------------------ -r3499 | jcbowman | 2008-10-02 16:47:12 -0600 (Thu, 02 Oct 2008) | 2 lines +r3499 | jcbowman | 2008-10-03 00:47:12 +0200 (Fri, 03 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Remove unused code. ------------------------------------------------------------------------ -r3498 | jcbowman | 2008-10-02 16:43:22 -0600 (Thu, 02 Oct 2008) | 2 lines +r3498 | jcbowman | 2008-10-03 00:43:22 +0200 (Fri, 03 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/doc/asymptote.sty @@ -9849,7 +10251,7 @@ Changed paths: Support PRC images even when inlinetex=false. ------------------------------------------------------------------------ -r3497 | jcbowman | 2008-10-02 02:40:10 -0600 (Thu, 02 Oct 2008) | 2 lines +r3497 | jcbowman | 2008-10-02 10:40:10 +0200 (Thu, 02 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_light.asy @@ -9862,7 +10264,7 @@ Changed paths: Support PRC, with optional rendered preview, in inlinetex mode. ------------------------------------------------------------------------ -r3496 | jcbowman | 2008-10-01 23:50:15 -0600 (Wed, 01 Oct 2008) | 2 lines +r3496 | jcbowman | 2008-10-02 07:50:15 +0200 (Thu, 02 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/latexusage.tex @@ -9871,21 +10273,21 @@ Changed paths: Work around degenerate up vectors. ------------------------------------------------------------------------ -r3495 | jcbowman | 2008-10-01 22:45:06 -0600 (Wed, 01 Oct 2008) | 2 lines +r3495 | jcbowman | 2008-10-02 06:45:06 +0200 (Thu, 02 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix perspective projections and clipping. ------------------------------------------------------------------------ -r3494 | jcbowman | 2008-10-01 21:34:38 -0600 (Wed, 01 Oct 2008) | 2 lines +r3494 | jcbowman | 2008-10-02 05:34:38 +0200 (Thu, 02 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix reference vector indices. ------------------------------------------------------------------------ -r3493 | jcbowman | 2008-10-01 20:56:14 -0600 (Wed, 01 Oct 2008) | 6 lines +r3493 | jcbowman | 2008-10-02 04:56:14 +0200 (Thu, 02 Oct 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/plain_shipout.asy @@ -9901,7 +10303,7 @@ Fix light transforms. Use sequence for array loops. ------------------------------------------------------------------------ -r3492 | jcbowman | 2008-10-01 14:07:53 -0600 (Wed, 01 Oct 2008) | 2 lines +r3492 | jcbowman | 2008-10-01 22:07:53 +0200 (Wed, 01 Oct 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/runtime.in @@ -9911,7 +10313,7 @@ Changed paths: Support texpath in inlinetex mode. ------------------------------------------------------------------------ -r3491 | jcbowman | 2008-10-01 03:45:46 -0600 (Wed, 01 Oct 2008) | 7 lines +r3491 | jcbowman | 2008-10-01 11:45:46 +0200 (Wed, 01 Oct 2008) | 7 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -9938,70 +10340,70 @@ Use an accurate projected path3 bound for picture sizing. Optimize projection routines. ------------------------------------------------------------------------ -r3490 | jcbowman | 2008-09-30 11:58:22 -0600 (Tue, 30 Sep 2008) | 2 lines +r3490 | jcbowman | 2008-09-30 19:58:22 +0200 (Tue, 30 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Don't cache projected bounds. ------------------------------------------------------------------------ -r3489 | jcbowman | 2008-09-30 10:59:03 -0600 (Tue, 30 Sep 2008) | 2 lines +r3489 | jcbowman | 2008-09-30 18:59:03 +0200 (Tue, 30 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix rendering from an absolute viewpoint. ------------------------------------------------------------------------ -r3488 | jcbowman | 2008-09-30 03:53:15 -0600 (Tue, 30 Sep 2008) | 2 lines +r3488 | jcbowman | 2008-09-30 11:53:15 +0200 (Tue, 30 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix picture sizing and clipping plane. ------------------------------------------------------------------------ -r3487 | jcbowman | 2008-09-30 02:14:12 -0600 (Tue, 30 Sep 2008) | 2 lines +r3487 | jcbowman | 2008-09-30 10:14:12 +0200 (Tue, 30 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Use a separate frame for preview rendering. ------------------------------------------------------------------------ -r3486 | jcbowman | 2008-09-29 19:01:39 -0600 (Mon, 29 Sep 2008) | 2 lines +r3486 | jcbowman | 2008-09-30 03:01:39 +0200 (Tue, 30 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Minor optimizations. ------------------------------------------------------------------------ -r3485 | jcbowman | 2008-09-29 03:39:09 -0600 (Mon, 29 Sep 2008) | 2 lines +r3485 | jcbowman | 2008-09-29 11:39:09 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Limit window to physical screen size under MSWindows due to OS limitations. ------------------------------------------------------------------------ -r3484 | jcbowman | 2008-09-29 02:08:52 -0600 (Mon, 29 Sep 2008) | 2 lines +r3484 | jcbowman | 2008-09-29 10:08:52 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix window size checks. ------------------------------------------------------------------------ -r3483 | jcbowman | 2008-09-29 01:41:25 -0600 (Mon, 29 Sep 2008) | 2 lines +r3483 | jcbowman | 2008-09-29 09:41:25 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawpath3.cc Use gluEndCurve not gluEndSurface. ------------------------------------------------------------------------ -r3482 | jcbowman | 2008-09-29 01:09:16 -0600 (Mon, 29 Sep 2008) | 2 lines +r3482 | jcbowman | 2008-09-29 09:09:16 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Allocate image rather than putting it on the stack. ------------------------------------------------------------------------ -r3481 | jcbowman | 2008-09-29 00:47:41 -0600 (Mon, 29 Sep 2008) | 2 lines +r3481 | jcbowman | 2008-09-29 08:47:41 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/examples/cones.asy @@ -10009,21 +10411,21 @@ Changed paths: Optimize solids.asy. ------------------------------------------------------------------------ -r3480 | jcbowman | 2008-09-28 23:01:01 -0600 (Sun, 28 Sep 2008) | 2 lines +r3480 | jcbowman | 2008-09-29 07:01:01 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Fix shrink (- or _) and expand (+ or =) keys. ------------------------------------------------------------------------ -r3479 | jcbowman | 2008-09-28 22:25:20 -0600 (Sun, 28 Sep 2008) | 2 lines +r3479 | jcbowman | 2008-09-29 06:25:20 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Remove unneeded bzero. ------------------------------------------------------------------------ -r3478 | jcbowman | 2008-09-28 22:22:19 -0600 (Sun, 28 Sep 2008) | 2 lines +r3478 | jcbowman | 2008-09-29 06:22:19 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/join3.asy M /trunk/asymptote/glrender.cc @@ -10031,14 +10433,14 @@ Changed paths: Port to cygwin. ------------------------------------------------------------------------ -r3477 | jcbowman | 2008-09-28 21:46:48 -0600 (Sun, 28 Sep 2008) | 2 lines +r3477 | jcbowman | 2008-09-29 05:46:48 +0200 (Mon, 29 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fix cygwin configuration. ------------------------------------------------------------------------ -r3476 | jcbowman | 2008-09-28 12:58:51 -0600 (Sun, 28 Sep 2008) | 2 lines +r3476 | jcbowman | 2008-09-28 20:58:51 +0200 (Sun, 28 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/glrender.cc @@ -10047,14 +10449,14 @@ Changed paths: Support CYGWIN freeglut configuration. ------------------------------------------------------------------------ -r3475 | jcbowman | 2008-09-28 11:56:33 -0600 (Sun, 28 Sep 2008) | 2 lines +r3475 | jcbowman | 2008-09-28 19:56:33 +0200 (Sun, 28 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Avoid redundant transformation for infinite projections. ------------------------------------------------------------------------ -r3474 | jcbowman | 2008-09-28 11:47:50 -0600 (Sun, 28 Sep 2008) | 4 lines +r3474 | jcbowman | 2008-09-28 19:47:50 +0200 (Sun, 28 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -10064,7 +10466,7 @@ Preserve aspect ratio on export. Work around viewport size driver bugs. ------------------------------------------------------------------------ -r3473 | jcbowman | 2008-09-28 03:27:07 -0600 (Sun, 28 Sep 2008) | 10 lines +r3473 | jcbowman | 2008-09-28 11:27:07 +0200 (Sun, 28 Sep 2008) | 10 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/glrender.cc @@ -10083,7 +10485,7 @@ Fix export segmentation fault. Fix mesh mode. ------------------------------------------------------------------------ -r3472 | jcbowman | 2008-09-27 10:37:38 -0600 (Sat, 27 Sep 2008) | 6 lines +r3472 | jcbowman | 2008-09-27 18:37:38 +0200 (Sat, 27 Sep 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -10098,7 +10500,7 @@ Remove unusual handling of negative radii. Update arc and Arc documentation. ------------------------------------------------------------------------ -r3471 | jcbowman | 2008-09-27 03:17:06 -0600 (Sat, 27 Sep 2008) | 8 lines +r3471 | jcbowman | 2008-09-27 11:17:06 +0200 (Sat, 27 Sep 2008) | 8 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_arcs.asy @@ -10116,7 +10518,7 @@ Simplify arc and Arc routines. Check for invalid normal vectors in 3D arc and Arc. ------------------------------------------------------------------------ -r3470 | jcbowman | 2008-09-27 00:29:16 -0600 (Sat, 27 Sep 2008) | 2 lines +r3470 | jcbowman | 2008-09-27 08:29:16 +0200 (Sat, 27 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/glrender.cc @@ -10124,14 +10526,14 @@ Changed paths: Preliminary changes to support CYGWIN. ------------------------------------------------------------------------ -r3469 | jcbowman | 2008-09-27 00:18:48 -0600 (Sat, 27 Sep 2008) | 2 lines +r3469 | jcbowman | 2008-09-27 08:18:48 +0200 (Sat, 27 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Remove psimage code. ------------------------------------------------------------------------ -r3468 | jcbowman | 2008-09-26 23:38:00 -0600 (Fri, 26 Sep 2008) | 2 lines +r3468 | jcbowman | 2008-09-27 07:38:00 +0200 (Sat, 27 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in D /trunk/asymptote/base/silentPrint.js @@ -10141,7 +10543,7 @@ Changed paths: Remove obsolete psimage feature (use -render=n instead). ------------------------------------------------------------------------ -r3467 | jcbowman | 2008-09-26 23:33:09 -0600 (Fri, 26 Sep 2008) | 17 lines +r3467 | jcbowman | 2008-09-27 07:33:09 +0200 (Sat, 27 Sep 2008) | 17 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/arrayop.h @@ -10186,14 +10588,14 @@ Update examples. Remove unused lights.js file. ------------------------------------------------------------------------ -r3466 | jcbowman | 2008-09-26 12:53:55 -0600 (Fri, 26 Sep 2008) | 2 lines +r3466 | jcbowman | 2008-09-26 20:53:55 +0200 (Fri, 26 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy Make object argument optional in flowchart routines. ------------------------------------------------------------------------ -r3465 | jcbowman | 2008-09-25 00:31:50 -0600 (Thu, 25 Sep 2008) | 8 lines +r3465 | jcbowman | 2008-09-25 08:31:50 +0200 (Thu, 25 Sep 2008) | 8 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/array.h @@ -10217,7 +10619,7 @@ Communicate non-viewport lights to embedded PRC files. Add +/- expand/shrink keyboard shortcuts. ------------------------------------------------------------------------ -r3464 | jcbowman | 2008-09-24 03:34:35 -0600 (Wed, 24 Sep 2008) | 9 lines +r3464 | jcbowman | 2008-09-24 11:34:35 +0200 (Wed, 24 Sep 2008) | 9 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/base/lights.js @@ -10242,7 +10644,7 @@ Support custom embedded javascript files via a script option to shipout; add lights.js example. ------------------------------------------------------------------------ -r3463 | jcbowman | 2008-09-24 03:25:34 -0600 (Wed, 24 Sep 2008) | 3 lines +r3463 | jcbowman | 2008-09-24 11:25:34 +0200 (Wed, 24 Sep 2008) | 3 lines Changed paths: M /trunk/asymptote/pen.h @@ -10250,7 +10652,7 @@ Set the opacity of the sum of two pens to be the larger of the two opacities, adopting the blending mode of the second pen. ------------------------------------------------------------------------ -r3462 | jcbowman | 2008-09-23 02:18:57 -0600 (Tue, 23 Sep 2008) | 4 lines +r3462 | jcbowman | 2008-09-23 10:18:57 +0200 (Tue, 23 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_light.asy @@ -10263,7 +10665,7 @@ Fix more material vs. pen problems. Improve degenerate normal test. ------------------------------------------------------------------------ -r3461 | jcbowman | 2008-09-22 23:16:10 -0600 (Mon, 22 Sep 2008) | 11 lines +r3461 | jcbowman | 2008-09-23 07:16:10 +0200 (Tue, 23 Sep 2008) | 11 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/graph3.asy @@ -10286,7 +10688,7 @@ Fix line colors. Provide an optimized patch constructor for quadrilaterals. ------------------------------------------------------------------------ -r3460 | jcbowman | 2008-09-22 17:24:11 -0600 (Mon, 22 Sep 2008) | 9 lines +r3460 | jcbowman | 2008-09-23 01:24:11 +0200 (Tue, 23 Sep 2008) | 9 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_shipout.asy @@ -10305,7 +10707,7 @@ original picture was 2D or 3D and reloading acroread is slow. Spurious shipouts arising from cameralink are now suppressed. ------------------------------------------------------------------------ -r3459 | jcbowman | 2008-09-22 14:51:56 -0600 (Mon, 22 Sep 2008) | 2 lines +r3459 | jcbowman | 2008-09-22 22:51:56 +0200 (Mon, 22 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -10315,7 +10717,7 @@ Changed paths: Add option -preview to render 3D preview image. ------------------------------------------------------------------------ -r3458 | jcbowman | 2008-09-22 11:52:56 -0600 (Mon, 22 Sep 2008) | 2 lines +r3458 | jcbowman | 2008-09-22 19:52:56 +0200 (Mon, 22 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -10324,28 +10726,28 @@ Changed paths: Remove obsolete outward flag. ------------------------------------------------------------------------ -r3457 | jcbowman | 2008-09-22 09:05:17 -0600 (Mon, 22 Sep 2008) | 2 lines +r3457 | jcbowman | 2008-09-22 17:05:17 +0200 (Mon, 22 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Revert last change. ------------------------------------------------------------------------ -r3456 | jcbowman | 2008-09-22 09:03:50 -0600 (Mon, 22 Sep 2008) | 2 lines +r3456 | jcbowman | 2008-09-22 17:03:50 +0200 (Mon, 22 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Suppress another unnecessary warning. ------------------------------------------------------------------------ -r3455 | jcbowman | 2008-09-22 08:45:44 -0600 (Mon, 22 Sep 2008) | 2 lines +r3455 | jcbowman | 2008-09-22 16:45:44 +0200 (Mon, 22 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Suppress unnecessary warnings from automatic picture sizing. ------------------------------------------------------------------------ -r3454 | jcbowman | 2008-09-22 03:05:03 -0600 (Mon, 22 Sep 2008) | 6 lines +r3454 | jcbowman | 2008-09-22 11:05:03 +0200 (Mon, 22 Sep 2008) | 6 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/three.asy @@ -10360,20 +10762,20 @@ Fix definition of emissive. Transform currentlight correctly in shipout3. ------------------------------------------------------------------------ -r3453 | jcbowman | 2008-09-21 14:43:48 -0600 (Sun, 21 Sep 2008) | 2 lines +r3453 | jcbowman | 2008-09-21 22:43:48 +0200 (Sun, 21 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix orthographic and oblique clipping. ------------------------------------------------------------------------ -r3452 | oshardt | 2008-09-21 14:10:34 -0600 (Sun, 21 Sep 2008) | 1 line +r3452 | oshardt | 2008-09-21 22:10:34 +0200 (Sun, 21 Sep 2008) | 1 line Changed paths: M /trunk/asymptote/glrender.cc Fix z rotation. ------------------------------------------------------------------------ -r3451 | jcbowman | 2008-09-21 13:34:37 -0600 (Sun, 21 Sep 2008) | 2 lines +r3451 | jcbowman | 2008-09-21 21:34:37 +0200 (Sun, 21 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawsurface.cc M /trunk/asymptote/picture.h @@ -10382,14 +10784,14 @@ Changed paths: Support compilation without freeglut. ------------------------------------------------------------------------ -r3450 | jcbowman | 2008-09-21 11:33:45 -0600 (Sun, 21 Sep 2008) | 2 lines +r3450 | jcbowman | 2008-09-21 19:33:45 +0200 (Sun, 21 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix normal0. ------------------------------------------------------------------------ -r3449 | jcbowman | 2008-09-21 11:32:55 -0600 (Sun, 21 Sep 2008) | 4 lines +r3449 | jcbowman | 2008-09-21 19:32:55 +0200 (Sun, 21 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/three_arrows.asy @@ -10400,7 +10802,7 @@ Add optimized vertex normal routines. Add fuzz to arrow position test. ------------------------------------------------------------------------ -r3448 | jcbowman | 2008-09-21 00:57:00 -0600 (Sun, 21 Sep 2008) | 2 lines +r3448 | jcbowman | 2008-09-21 08:57:00 +0200 (Sun, 21 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawpath3.cc M /trunk/asymptote/glrender.cc @@ -10408,7 +10810,7 @@ Changed paths: Fix includes. ------------------------------------------------------------------------ -r3447 | jcbowman | 2008-09-21 00:52:01 -0600 (Sun, 21 Sep 2008) | 2 lines +r3447 | jcbowman | 2008-09-21 08:52:01 +0200 (Sun, 21 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/parametricsurface.asy @@ -10417,7 +10819,7 @@ Changed paths: Fix glOrtho parameters. ------------------------------------------------------------------------ -r3446 | jcbowman | 2008-09-20 23:59:37 -0600 (Sat, 20 Sep 2008) | 4 lines +r3446 | jcbowman | 2008-09-21 07:59:37 +0200 (Sun, 21 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/bbox.h @@ -10439,14 +10841,14 @@ Improve surface culling. Use GLUnurb for rendering a path3 (unless it is piecewise straight). ------------------------------------------------------------------------ -r3445 | oshardt | 2008-09-20 14:20:06 -0600 (Sat, 20 Sep 2008) | 1 line +r3445 | oshardt | 2008-09-20 22:20:06 +0200 (Sat, 20 Sep 2008) | 1 line Changed paths: D /trunk/asymptote/examples/animatations A /trunk/asymptote/examples/slidemovies.asy (from /trunk/asymptote/examples/animatations:3444) Undo renaming of slidemovies.asy. ------------------------------------------------------------------------ -r3444 | jcbowman | 2008-09-19 22:55:58 -0600 (Fri, 19 Sep 2008) | 2 lines +r3444 | jcbowman | 2008-09-20 06:55:58 +0200 (Sat, 20 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/picture.cc @@ -10454,7 +10856,7 @@ Changed paths: Adjust rendering constants. ------------------------------------------------------------------------ -r3443 | jcbowman | 2008-09-19 22:36:16 -0600 (Fri, 19 Sep 2008) | 2 lines +r3443 | jcbowman | 2008-09-20 06:36:16 +0200 (Sat, 20 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -10465,7 +10867,7 @@ Changed paths: Update convert options; add convertOptions setting. ------------------------------------------------------------------------ -r3442 | jcbowman | 2008-09-19 14:58:20 -0600 (Fri, 19 Sep 2008) | 4 lines +r3442 | jcbowman | 2008-09-19 22:58:20 +0200 (Fri, 19 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/drawelement.h @@ -10482,7 +10884,7 @@ Allow compilation without freeglut library. Fix width and height sizing. ------------------------------------------------------------------------ -r3441 | jcbowman | 2008-09-19 13:36:35 -0600 (Fri, 19 Sep 2008) | 2 lines +r3441 | jcbowman | 2008-09-19 21:36:35 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/picture.cc @@ -10491,14 +10893,14 @@ Changed paths: Use render setting for convert. ------------------------------------------------------------------------ -r3440 | jcbowman | 2008-09-19 13:08:14 -0600 (Fri, 19 Sep 2008) | 2 lines +r3440 | jcbowman | 2008-09-19 21:08:14 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Add antialias=false option to image routines. ------------------------------------------------------------------------ -r3439 | jcbowman | 2008-09-19 12:44:53 -0600 (Fri, 19 Sep 2008) | 2 lines +r3439 | jcbowman | 2008-09-19 20:44:53 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/settings.cc @@ -10506,21 +10908,21 @@ Changed paths: Improve configuration diagnostics. ------------------------------------------------------------------------ -r3438 | jcbowman | 2008-09-19 01:59:23 -0600 (Fri, 19 Sep 2008) | 2 lines +r3438 | jcbowman | 2008-09-19 09:59:23 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Don't dealias last column of pixels. ------------------------------------------------------------------------ -r3437 | jcbowman | 2008-09-19 01:55:18 -0600 (Fri, 19 Sep 2008) | 2 lines +r3437 | jcbowman | 2008-09-19 09:55:18 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Fix segmentation fault: don't dealias the top row of pixels. ------------------------------------------------------------------------ -r3436 | jcbowman | 2008-09-19 01:20:05 -0600 (Fri, 19 Sep 2008) | 2 lines +r3436 | jcbowman | 2008-09-19 09:20:05 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawimage.h @@ -10530,7 +10932,7 @@ Changed paths: Support antialiasing of all images. ------------------------------------------------------------------------ -r3435 | jcbowman | 2008-09-19 01:10:51 -0600 (Fri, 19 Sep 2008) | 2 lines +r3435 | jcbowman | 2008-09-19 09:10:51 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawimage.h M /trunk/asymptote/psfile.cc @@ -10539,7 +10941,7 @@ Changed paths: Support inline antialiasing. ------------------------------------------------------------------------ -r3434 | jcbowman | 2008-09-18 23:18:41 -0600 (Thu, 18 Sep 2008) | 2 lines +r3434 | jcbowman | 2008-09-19 07:18:41 +0200 (Fri, 19 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/three.asy @@ -10549,14 +10951,14 @@ Changed paths: Improve rendering options. ------------------------------------------------------------------------ -r3433 | jcbowman | 2008-09-18 12:25:57 -0600 (Thu, 18 Sep 2008) | 2 lines +r3433 | jcbowman | 2008-09-18 20:25:57 +0200 (Thu, 18 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Antialias export images. ------------------------------------------------------------------------ -r3432 | jcbowman | 2008-09-18 12:11:57 -0600 (Thu, 18 Sep 2008) | 2 lines +r3432 | jcbowman | 2008-09-18 20:11:57 +0200 (Thu, 18 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/glrender.cc @@ -10564,7 +10966,7 @@ Changed paths: Fix export. ------------------------------------------------------------------------ -r3431 | jcbowman | 2008-09-18 03:47:05 -0600 (Thu, 18 Sep 2008) | 2 lines +r3431 | jcbowman | 2008-09-18 11:47:05 +0200 (Thu, 18 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/drawpath3.cc @@ -10578,7 +10980,7 @@ Changed paths: Simplify and optimize surface rendering. ------------------------------------------------------------------------ -r3430 | jcbowman | 2008-09-18 02:23:07 -0600 (Thu, 18 Sep 2008) | 3 lines +r3430 | jcbowman | 2008-09-18 10:23:07 +0200 (Thu, 18 Sep 2008) | 3 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/three_surface.asy @@ -10590,7 +10992,7 @@ Always use nurb rendering algorithm (with callback) for degenerate patches when the light is on. ------------------------------------------------------------------------ -r3429 | jcbowman | 2008-09-18 00:17:53 -0600 (Thu, 18 Sep 2008) | 4 lines +r3429 | jcbowman | 2008-09-18 08:17:53 +0200 (Thu, 18 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -10609,7 +11011,7 @@ Fix rendering artifacts at degenerate control points. Improve unitcone. ------------------------------------------------------------------------ -r3428 | jcbowman | 2008-09-17 08:55:44 -0600 (Wed, 17 Sep 2008) | 2 lines +r3428 | jcbowman | 2008-09-17 16:55:44 +0200 (Wed, 17 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -10617,7 +11019,7 @@ Changed paths: Add a maxviewport setting for working around direct rendering driver bugs. ------------------------------------------------------------------------ -r3427 | jcbowman | 2008-09-16 23:47:20 -0600 (Tue, 16 Sep 2008) | 2 lines +r3427 | jcbowman | 2008-09-17 07:47:20 +0200 (Wed, 17 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawpath3.cc M /trunk/asymptote/drawsurface.cc @@ -10630,7 +11032,7 @@ Changed paths: Retune rendering parameters. ------------------------------------------------------------------------ -r3426 | jcbowman | 2008-09-16 22:28:11 -0600 (Tue, 16 Sep 2008) | 2 lines +r3426 | jcbowman | 2008-09-17 06:28:11 +0200 (Wed, 17 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/drawelement.h @@ -10647,7 +11049,7 @@ Changed paths: Add mesh mode menu. ------------------------------------------------------------------------ -r3425 | jcbowman | 2008-09-16 19:34:29 -0600 (Tue, 16 Sep 2008) | 2 lines +r3425 | jcbowman | 2008-09-17 03:34:29 +0200 (Wed, 17 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/glrender.cc @@ -10655,7 +11057,7 @@ Changed paths: Force a minimum rendering window size. ------------------------------------------------------------------------ -r3424 | jcbowman | 2008-09-16 19:06:42 -0600 (Tue, 16 Sep 2008) | 3 lines +r3424 | jcbowman | 2008-09-17 03:06:42 +0200 (Wed, 17 Sep 2008) | 3 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/three.asy @@ -10669,7 +11071,7 @@ Allow explicit surface normals to be specified (currently only respected when render=0). ------------------------------------------------------------------------ -r3423 | jcbowman | 2008-09-16 17:42:33 -0600 (Tue, 16 Sep 2008) | 4 lines +r3423 | jcbowman | 2008-09-17 01:42:33 +0200 (Wed, 17 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -10679,7 +11081,7 @@ Work around direct rendering segmentation faults. Improve full screen mode. ------------------------------------------------------------------------ -r3422 | jcbowman | 2008-09-16 13:29:55 -0600 (Tue, 16 Sep 2008) | 2 lines +r3422 | jcbowman | 2008-09-16 21:29:55 +0200 (Tue, 16 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -10687,7 +11089,7 @@ Changed paths: Use fullscreen rendering by default. ------------------------------------------------------------------------ -r3421 | jcbowman | 2008-09-16 09:21:24 -0600 (Tue, 16 Sep 2008) | 2 lines +r3421 | jcbowman | 2008-09-16 17:21:24 +0200 (Tue, 16 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawpath3.cc M /trunk/asymptote/drawpath3.h @@ -10698,7 +11100,7 @@ Changed paths: Remove broken bounding box test optimization. ------------------------------------------------------------------------ -r3420 | jcbowman | 2008-09-16 02:08:38 -0600 (Tue, 16 Sep 2008) | 7 lines +r3420 | jcbowman | 2008-09-16 10:08:38 +0200 (Tue, 16 Sep 2008) | 7 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -10721,7 +11123,7 @@ Remove localsub option. Rename int path3quality back to bool thick. ------------------------------------------------------------------------ -r3419 | jcbowman | 2008-09-15 23:13:09 -0600 (Mon, 15 Sep 2008) | 4 lines +r3419 | jcbowman | 2008-09-16 07:13:09 +0200 (Tue, 16 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc @@ -10730,14 +11132,14 @@ Add toggle fullscreen menu option. Add further keycodes. ------------------------------------------------------------------------ -r3418 | jcbowman | 2008-09-15 17:31:58 -0600 (Mon, 15 Sep 2008) | 2 lines +r3418 | jcbowman | 2008-09-16 01:31:58 +0200 (Tue, 16 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Initialize timer before spinning. ------------------------------------------------------------------------ -r3417 | jcbowman | 2008-09-15 17:21:28 -0600 (Mon, 15 Sep 2008) | 4 lines +r3417 | jcbowman | 2008-09-16 01:21:28 +0200 (Tue, 16 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc @@ -10746,7 +11148,7 @@ Improve spin/arcball interaction. Make the Home menu item reset the zoom. ------------------------------------------------------------------------ -r3416 | jcbowman | 2008-09-15 08:49:52 -0600 (Mon, 15 Sep 2008) | 2 lines +r3416 | jcbowman | 2008-09-15 16:49:52 +0200 (Mon, 15 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/Makefile.in @@ -10754,7 +11156,7 @@ Changed paths: Use -render=0 instead of -norender. ------------------------------------------------------------------------ -r3415 | jcbowman | 2008-09-14 22:03:32 -0600 (Sun, 14 Sep 2008) | 4 lines +r3415 | jcbowman | 2008-09-15 06:03:32 +0200 (Mon, 15 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/path.h @@ -10765,7 +11167,7 @@ Use a better reference value in path and path3 dir functions. Fix zoom/rotate synchronization. ------------------------------------------------------------------------ -r3414 | jcbowman | 2008-09-14 20:53:45 -0600 (Sun, 14 Sep 2008) | 4 lines +r3414 | jcbowman | 2008-09-15 04:53:45 +0200 (Mon, 15 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/path.h M /trunk/asymptote/path3.h @@ -10775,7 +11177,7 @@ Simplify dir(path, real) and dir(path3, real) computations. Fix accel(path3, real). ------------------------------------------------------------------------ -r3413 | jcbowman | 2008-09-14 09:56:50 -0600 (Sun, 14 Sep 2008) | 3 lines +r3413 | jcbowman | 2008-09-14 17:56:50 +0200 (Sun, 14 Sep 2008) | 3 lines Changed paths: M /trunk/asymptote/glrender.cc M /trunk/asymptote/settings.cc @@ -10784,7 +11186,7 @@ Add position parameter to specify initial rendering screen position (negative components indicate relative to screen width or height). ------------------------------------------------------------------------ -r3412 | jcbowman | 2008-09-14 09:23:08 -0600 (Sun, 14 Sep 2008) | 2 lines +r3412 | jcbowman | 2008-09-14 17:23:08 +0200 (Sun, 14 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/parametricsurface.asy @@ -10794,14 +11196,14 @@ Changed paths: Add Export and Quit menu items. ------------------------------------------------------------------------ -r3411 | jcbowman | 2008-09-14 03:05:29 -0600 (Sun, 14 Sep 2008) | 2 lines +r3411 | jcbowman | 2008-09-14 11:05:29 +0200 (Sun, 14 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove remaining scale3D factor; retune adaptive constants. ------------------------------------------------------------------------ -r3410 | jcbowman | 2008-09-14 02:44:01 -0600 (Sun, 14 Sep 2008) | 2 lines +r3410 | jcbowman | 2008-09-14 10:44:01 +0200 (Sun, 14 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/base/three.asy @@ -10819,7 +11221,7 @@ Changed paths: Move PRC cm scaling to a more sensible place. ------------------------------------------------------------------------ -r3409 | jcbowman | 2008-09-14 01:10:13 -0600 (Sun, 14 Sep 2008) | 4 lines +r3409 | jcbowman | 2008-09-14 09:10:13 +0200 (Sun, 14 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/arcball.h M /trunk/asymptote/base/plain_picture.asy @@ -10837,14 +11239,14 @@ Fix oblique transformations. Rename linequality to path3quality. ------------------------------------------------------------------------ -r3408 | jcbowman | 2008-09-13 22:18:15 -0600 (Sat, 13 Sep 2008) | 2 lines +r3408 | jcbowman | 2008-09-14 06:18:15 +0200 (Sun, 14 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Add menu (middle mouse button) with Home and Spin options. ------------------------------------------------------------------------ -r3407 | jcbowman | 2008-09-13 17:57:35 -0600 (Sat, 13 Sep 2008) | 4 lines +r3407 | jcbowman | 2008-09-14 01:57:35 +0200 (Sun, 14 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_shipout.asy @@ -10863,7 +11265,7 @@ Support interactive rendering. Remove obsolete Wait and NoWait keywords. ------------------------------------------------------------------------ -r3406 | jcbowman | 2008-09-13 13:14:55 -0600 (Sat, 13 Sep 2008) | 2 lines +r3406 | jcbowman | 2008-09-13 21:14:55 +0200 (Sat, 13 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/glrender.cc @@ -10873,7 +11275,7 @@ Changed paths: Add linequality and twosided settings. ------------------------------------------------------------------------ -r3405 | jcbowman | 2008-09-13 09:43:03 -0600 (Sat, 13 Sep 2008) | 5 lines +r3405 | jcbowman | 2008-09-13 17:43:03 +0200 (Sat, 13 Sep 2008) | 5 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/bbox3.h @@ -10894,7 +11296,7 @@ Speed up rendering by drawing only the surfaces and paths within the field of view. ------------------------------------------------------------------------ -r3404 | jcbowman | 2008-09-12 21:48:33 -0600 (Fri, 12 Sep 2008) | 4 lines +r3404 | jcbowman | 2008-09-13 05:48:33 +0200 (Sat, 13 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/glrender.cc @@ -10903,28 +11305,28 @@ Fix mouse button zoom. Improve mouse bindings. ------------------------------------------------------------------------ -r3403 | jcbowman | 2008-09-12 17:04:16 -0600 (Fri, 12 Sep 2008) | 2 lines +r3403 | jcbowman | 2008-09-13 01:04:16 +0200 (Sat, 13 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc More zoom improvements. ------------------------------------------------------------------------ -r3402 | jcbowman | 2008-09-12 16:23:47 -0600 (Fri, 12 Sep 2008) | 2 lines +r3402 | jcbowman | 2008-09-13 00:23:47 +0200 (Sat, 13 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/glrender.cc Zoom on center of window; improve resizing. ------------------------------------------------------------------------ -r3401 | jcbowman | 2008-09-12 00:42:43 -0600 (Fri, 12 Sep 2008) | 2 lines +r3401 | jcbowman | 2008-09-12 08:42:43 +0200 (Fri, 12 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Account for field of view factor of 0.6 (from javascript). ------------------------------------------------------------------------ -r3400 | jcbowman | 2008-09-10 01:45:00 -0600 (Wed, 10 Sep 2008) | 2 lines +r3400 | jcbowman | 2008-09-10 09:45:00 +0200 (Wed, 10 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/drawimage.h @@ -10938,14 +11340,14 @@ Changed paths: Compress all images and encode them with ASCII85. ------------------------------------------------------------------------ -r3399 | jcbowman | 2008-09-09 10:56:31 -0600 (Tue, 09 Sep 2008) | 2 lines +r3399 | jcbowman | 2008-09-09 18:56:31 +0200 (Tue, 09 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Force use of new c-lang-defconst for proper indentation after struct. ------------------------------------------------------------------------ -r3398 | jcbowman | 2008-09-09 02:57:38 -0600 (Tue, 09 Sep 2008) | 2 lines +r3398 | jcbowman | 2008-09-09 10:57:38 +0200 (Tue, 09 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/three.asy @@ -10953,7 +11355,7 @@ Changed paths: Fix add. ------------------------------------------------------------------------ -r3397 | jcbowman | 2008-09-09 02:38:47 -0600 (Tue, 09 Sep 2008) | 2 lines +r3397 | jcbowman | 2008-09-09 10:38:47 +0200 (Tue, 09 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc M /trunk/asymptote/psfile.h @@ -10961,7 +11363,7 @@ Changed paths: Compress rendered images with zlib. ------------------------------------------------------------------------ -r3396 | jcbowman | 2008-09-09 00:42:32 -0600 (Tue, 09 Sep 2008) | 2 lines +r3396 | jcbowman | 2008-09-09 08:42:32 +0200 (Tue, 09 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/drawimage.h M /trunk/asymptote/picture.cc @@ -10971,7 +11373,7 @@ Changed paths: Support rendering into other colorspaces. ------------------------------------------------------------------------ -r3395 | jcbowman | 2008-09-08 23:51:16 -0600 (Mon, 08 Sep 2008) | 4 lines +r3395 | jcbowman | 2008-09-09 07:51:16 +0200 (Tue, 09 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/three.asy @@ -10982,7 +11384,7 @@ Fix zoom-dependence of arcball radius. Fix rendering problems with mixed 2D+3D drawings (ignore 2D drawing). ------------------------------------------------------------------------ -r3394 | jcbowman | 2008-09-08 23:19:00 -0600 (Mon, 08 Sep 2008) | 10 lines +r3394 | jcbowman | 2008-09-09 07:19:00 +0200 (Tue, 09 Sep 2008) | 10 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -11007,7 +11409,7 @@ Use two-sided lighting model. Fix handling of transparency. ------------------------------------------------------------------------ -r3393 | jcbowman | 2008-09-08 02:54:29 -0600 (Mon, 08 Sep 2008) | 2 lines +r3393 | jcbowman | 2008-09-08 10:54:29 +0200 (Mon, 08 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/GaussianSurface.asy @@ -11016,7 +11418,7 @@ Changed paths: Disable rendering during builds. ------------------------------------------------------------------------ -r3392 | jcbowman | 2008-09-08 02:14:24 -0600 (Mon, 08 Sep 2008) | 2 lines +r3392 | jcbowman | 2008-09-08 10:14:24 +0200 (Mon, 08 Sep 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/algebra3.cc @@ -11065,7 +11467,7 @@ Changed paths: Implement openGL-based adaptive-mesh renderer. ------------------------------------------------------------------------ -r3391 | jcbowman | 2008-09-04 22:57:07 -0600 (Thu, 04 Sep 2008) | 4 lines +r3391 | jcbowman | 2008-09-05 06:57:07 +0200 (Fri, 05 Sep 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph3.asy @@ -11074,7 +11476,7 @@ Fix surface orientations. Optimizations array references. ------------------------------------------------------------------------ -r3390 | jcbowman | 2008-08-29 21:53:57 -0600 (Fri, 29 Aug 2008) | 2 lines +r3390 | jcbowman | 2008-08-30 05:53:57 +0200 (Sat, 30 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/three.asy @@ -11083,14 +11485,14 @@ Changed paths: Allow 2D drawings under 3D drawings. ------------------------------------------------------------------------ -r3389 | jcbowman | 2008-08-29 20:17:36 -0600 (Fri, 29 Aug 2008) | 2 lines +r3389 | jcbowman | 2008-08-30 04:17:36 +0200 (Sat, 30 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Use consistent notation for control points. ------------------------------------------------------------------------ -r3388 | jcbowman | 2008-08-29 20:16:18 -0600 (Fri, 29 Aug 2008) | 4 lines +r3388 | jcbowman | 2008-08-30 04:16:18 +0200 (Sat, 30 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -11101,7 +11503,7 @@ Turn off default graph autoscaling. Set extend=false by default for 3D axes. ------------------------------------------------------------------------ -r3387 | jcbowman | 2008-08-29 20:14:29 -0600 (Fri, 29 Aug 2008) | 2 lines +r3387 | jcbowman | 2008-08-30 04:14:29 +0200 (Sat, 30 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/path3.cc @@ -11110,28 +11512,28 @@ Changed paths: Rename Bezier/BezierP to bezier/bezierP. ------------------------------------------------------------------------ -r3386 | jcbowman | 2008-08-29 12:36:21 -0600 (Fri, 29 Aug 2008) | 2 lines +r3386 | jcbowman | 2008-08-29 20:36:21 +0200 (Fri, 29 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Don't allow curve to reach surface of tube. ------------------------------------------------------------------------ -r3385 | jcbowman | 2008-08-29 12:35:00 -0600 (Fri, 29 Aug 2008) | 2 lines +r3385 | jcbowman | 2008-08-29 20:35:00 +0200 (Fri, 29 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix overflow problem. ------------------------------------------------------------------------ -r3384 | jcbowman | 2008-08-29 10:12:37 -0600 (Fri, 29 Aug 2008) | 2 lines +r3384 | jcbowman | 2008-08-29 18:12:37 +0200 (Fri, 29 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc Re-enable adjustdash for paths. ------------------------------------------------------------------------ -r3383 | jcbowman | 2008-08-29 01:50:34 -0600 (Fri, 29 Aug 2008) | 7 lines +r3383 | jcbowman | 2008-08-29 09:50:34 +0200 (Fri, 29 Aug 2008) | 7 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -11145,34 +11547,34 @@ Simplify arrow definition. Move supplementary 3D routines from plain_picture.asy to three.asy. ------------------------------------------------------------------------ -r3382 | jcbowman | 2008-08-29 01:02:27 -0600 (Fri, 29 Aug 2008) | 2 lines +r3382 | jcbowman | 2008-08-29 09:02:27 +0200 (Fri, 29 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add pen bounds to arrow routine. ------------------------------------------------------------------------ -r3381 | jcbowman | 2008-08-29 00:54:30 -0600 (Fri, 29 Aug 2008) | 2 lines +r3381 | jcbowman | 2008-08-29 08:54:30 +0200 (Fri, 29 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Uninstall pixel.pdf. ------------------------------------------------------------------------ -r3380 | jcbowman | 2008-08-28 09:00:49 -0600 (Thu, 28 Aug 2008) | 1 line +r3380 | jcbowman | 2008-08-28 17:00:49 +0200 (Thu, 28 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/Makefile.in Fix typo ------------------------------------------------------------------------ -r3379 | jcbowman | 2008-08-28 09:00:30 -0600 (Thu, 28 Aug 2008) | 2 lines +r3379 | jcbowman | 2008-08-28 17:00:30 +0200 (Thu, 28 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix file location. ------------------------------------------------------------------------ -r3378 | jcbowman | 2008-08-28 01:13:22 -0600 (Thu, 28 Aug 2008) | 10 lines +r3378 | jcbowman | 2008-08-28 09:13:22 +0200 (Thu, 28 Aug 2008) | 10 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/graph3.asy @@ -11200,14 +11602,14 @@ Update examples. Delete gc-7.1FreeBSD.patch as it isn't required any more under 7.0-RELEASE-p2. ------------------------------------------------------------------------ -r3377 | jcbowman | 2008-08-27 23:11:31 -0600 (Wed, 27 Aug 2008) | 2 lines +r3377 | jcbowman | 2008-08-28 07:11:31 +0200 (Thu, 28 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc Fix segmentation fault. ------------------------------------------------------------------------ -r3376 | jcbowman | 2008-08-27 21:58:08 -0600 (Wed, 27 Aug 2008) | 8 lines +r3376 | jcbowman | 2008-08-28 05:58:08 +0200 (Thu, 28 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/graph3.asy @@ -11226,7 +11628,7 @@ Install pixel.pdf in examples directory. Install silentPrint.js and reload.js in base directory. ------------------------------------------------------------------------ -r3375 | jcbowman | 2008-08-27 21:28:11 -0600 (Wed, 27 Aug 2008) | 3 lines +r3375 | jcbowman | 2008-08-28 05:28:11 +0200 (Thu, 28 Aug 2008) | 3 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/splinetype.asy @@ -11240,14 +11642,14 @@ Add surface bicubic spline code (based on code contributed by Oliver Guibe and the method use in Scilab). ------------------------------------------------------------------------ -r3374 | jcbowman | 2008-08-27 16:35:04 -0600 (Wed, 27 Aug 2008) | 2 lines +r3374 | jcbowman | 2008-08-28 00:35:04 +0200 (Thu, 28 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Improve the appearance of arrows on cyclic paths. ------------------------------------------------------------------------ -r3373 | jcbowman | 2008-08-27 16:28:11 -0600 (Wed, 27 Aug 2008) | 6 lines +r3373 | jcbowman | 2008-08-28 00:28:11 +0200 (Thu, 28 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/three.asy @@ -11266,27 +11668,27 @@ Add missing begingroup3/endgroup3. Fix texengine vs. texcommand confusion. ------------------------------------------------------------------------ -r3372 | jcbowman | 2008-08-27 15:39:43 -0600 (Wed, 27 Aug 2008) | 2 lines +r3372 | jcbowman | 2008-08-27 23:39:43 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Check for division by 0. ------------------------------------------------------------------------ -r3371 | jcbowman | 2008-08-27 15:11:48 -0600 (Wed, 27 Aug 2008) | 2 lines +r3371 | jcbowman | 2008-08-27 23:11:48 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Return a unit scaling again when unbounded. ------------------------------------------------------------------------ -r3370 | oshardt | 2008-08-27 14:38:39 -0600 (Wed, 27 Aug 2008) | 1 line +r3370 | oshardt | 2008-08-27 22:38:39 +0200 (Wed, 27 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRC.h Add header for uint32_t. ------------------------------------------------------------------------ -r3369 | jcbowman | 2008-08-27 02:44:35 -0600 (Wed, 27 Aug 2008) | 4 lines +r3369 | jcbowman | 2008-08-27 10:44:35 +0200 (Wed, 27 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -11300,14 +11702,14 @@ Optimize projection routines. Update cube animation. ------------------------------------------------------------------------ -r3368 | jcbowman | 2008-08-27 01:43:40 -0600 (Wed, 27 Aug 2008) | 2 lines +r3368 | jcbowman | 2008-08-27 09:43:40 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/grid3.asy Rename keyword. ------------------------------------------------------------------------ -r3367 | jcbowman | 2008-08-27 01:32:48 -0600 (Wed, 27 Aug 2008) | 2 lines +r3367 | jcbowman | 2008-08-27 09:32:48 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/helix.asy M /trunk/asymptote/examples/sinc.asy @@ -11316,7 +11718,7 @@ Changed paths: Update examples. ------------------------------------------------------------------------ -r3366 | jcbowman | 2008-08-27 00:59:16 -0600 (Wed, 27 Aug 2008) | 6 lines +r3366 | jcbowman | 2008-08-27 08:59:16 +0200 (Wed, 27 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -11328,7 +11730,7 @@ Fix tick directions. Set axis types explicitly since axis members are volatile. ------------------------------------------------------------------------ -r3365 | jcbowman | 2008-08-26 19:36:34 -0600 (Tue, 26 Aug 2008) | 4 lines +r3365 | jcbowman | 2008-08-27 03:36:34 +0200 (Wed, 27 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -11338,7 +11740,7 @@ Fix path labels. Remove filltype argument from 3D functions. ------------------------------------------------------------------------ -r3364 | jcbowman | 2008-08-26 18:48:43 -0600 (Tue, 26 Aug 2008) | 2 lines +r3364 | jcbowman | 2008-08-27 02:48:43 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/drawpath.cc @@ -11348,7 +11750,7 @@ Changed paths: Implement 3D dash length adjustment. ------------------------------------------------------------------------ -r3363 | jcbowman | 2008-08-26 17:20:16 -0600 (Tue, 26 Aug 2008) | 2 lines +r3363 | jcbowman | 2008-08-27 01:20:16 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy M /trunk/asymptote/base/three_light.asy @@ -11357,14 +11759,14 @@ Changed paths: Fix granularity; add arrowheadlight(). ------------------------------------------------------------------------ -r3362 | jcbowman | 2008-08-26 17:18:35 -0600 (Tue, 26 Aug 2008) | 2 lines +r3362 | jcbowman | 2008-08-27 01:18:35 +0200 (Wed, 27 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Make arrowheadlight=nolight by default for non-PRC drawings. ------------------------------------------------------------------------ -r3361 | jcbowman | 2008-08-26 13:41:28 -0600 (Tue, 26 Aug 2008) | 14 lines +r3361 | jcbowman | 2008-08-26 21:41:28 +0200 (Tue, 26 Aug 2008) | 14 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_arrows.asy @@ -11394,14 +11796,14 @@ Check all array pointers. Add operators == and != for pen arrays. ------------------------------------------------------------------------ -r3360 | jcbowman | 2008-08-26 09:08:01 -0600 (Tue, 26 Aug 2008) | 2 lines +r3360 | jcbowman | 2008-08-26 17:08:01 +0200 (Tue, 26 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Turn off prc flag for documentation builds. ------------------------------------------------------------------------ -r3359 | jcbowman | 2008-08-26 08:52:08 -0600 (Tue, 26 Aug 2008) | 6 lines +r3359 | jcbowman | 2008-08-26 16:52:08 +0200 (Tue, 26 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/three_arrows.asy @@ -11417,7 +11819,7 @@ Update examples. Check for nullsurface in three_arrows. ------------------------------------------------------------------------ -r3358 | jcbowman | 2008-08-26 08:15:38 -0600 (Tue, 26 Aug 2008) | 2 lines +r3358 | jcbowman | 2008-08-26 16:15:38 +0200 (Tue, 26 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/GaussianSurface.asy @@ -11426,7 +11828,7 @@ Changed paths: Update example. ------------------------------------------------------------------------ -r3357 | jcbowman | 2008-08-26 08:00:19 -0600 (Tue, 26 Aug 2008) | 2 lines +r3357 | jcbowman | 2008-08-26 16:00:19 +0200 (Tue, 26 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/helix.asy A /trunk/asymptote/path3.h @@ -11434,7 +11836,7 @@ Changed paths: Add missing file. ------------------------------------------------------------------------ -r3356 | jcbowman | 2008-08-26 02:07:26 -0600 (Tue, 26 Aug 2008) | 6 lines +r3356 | jcbowman | 2008-08-26 10:07:26 +0200 (Tue, 26 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/bsp.asy M /trunk/asymptote/base/graph3.asy @@ -11462,34 +11864,34 @@ Fix 3D bounding box bugs. Remove remaining references to obsolete bbox3 structure. ------------------------------------------------------------------------ -r3355 | jcbowman | 2008-08-26 01:38:13 -0600 (Tue, 26 Aug 2008) | 2 lines +r3355 | jcbowman | 2008-08-26 09:38:13 +0200 (Tue, 26 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Check all three coordinates in path3.bounds(). ------------------------------------------------------------------------ -r3354 | oshardt | 2008-08-25 20:45:07 -0600 (Mon, 25 Aug 2008) | 1 line +r3354 | oshardt | 2008-08-26 04:45:07 +0200 (Tue, 26 Aug 2008) | 1 line Changed paths: A /trunk/asymptote/examples/cyclohexane.asy Add cyclohexane example. ------------------------------------------------------------------------ -r3353 | jcbowman | 2008-08-25 13:52:20 -0600 (Mon, 25 Aug 2008) | 2 lines +r3353 | jcbowman | 2008-08-25 21:52:20 +0200 (Mon, 25 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/array.h Initialize cycle flag. ------------------------------------------------------------------------ -r3352 | jcbowman | 2008-08-25 10:58:46 -0600 (Mon, 25 Aug 2008) | 2 lines +r3352 | jcbowman | 2008-08-25 18:58:46 +0200 (Mon, 25 Aug 2008) | 2 lines Changed paths: D /trunk/asymptote/doc/logo3.asy Remove duplicate file. ------------------------------------------------------------------------ -r3351 | jcbowman | 2008-08-25 10:04:46 -0600 (Mon, 25 Aug 2008) | 6 lines +r3351 | jcbowman | 2008-08-25 18:04:46 +0200 (Mon, 25 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/three.asy @@ -11504,14 +11906,14 @@ Don't force a mesh to be drawn when nolight is specified. Add Orest's 3D implementation of the Asymptote logo. ------------------------------------------------------------------------ -r3350 | jcbowman | 2008-08-25 10:01:38 -0600 (Mon, 25 Aug 2008) | 2 lines +r3350 | jcbowman | 2008-08-25 18:01:38 +0200 (Mon, 25 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/lineargraph.asy Use truepoint to attach legend in lineargraph.asy. ------------------------------------------------------------------------ -r3349 | jcbowman | 2008-08-25 03:01:16 -0600 (Mon, 25 Aug 2008) | 2 lines +r3349 | jcbowman | 2008-08-25 11:01:16 +0200 (Mon, 25 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -11519,7 +11921,7 @@ Changed paths: Set both axis types; use symbolic values. ------------------------------------------------------------------------ -r3348 | jcbowman | 2008-08-25 01:59:44 -0600 (Mon, 25 Aug 2008) | 4 lines +r3348 | jcbowman | 2008-08-25 09:59:44 +0200 (Mon, 25 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/grid3.asy M /trunk/asymptote/doc/grid3xyz.asy @@ -11529,7 +11931,7 @@ Update grid3 to handle Arrow3. Use limits in grid3xyz. ------------------------------------------------------------------------ -r3347 | jcbowman | 2008-08-25 01:11:07 -0600 (Mon, 25 Aug 2008) | 2 lines +r3347 | jcbowman | 2008-08-25 09:11:07 +0200 (Mon, 25 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy M /trunk/asymptote/runtime.in @@ -11537,14 +11939,14 @@ Changed paths: Use all control points to compute normal vector of surfaces. ------------------------------------------------------------------------ -r3346 | jcbowman | 2008-08-24 20:28:36 -0600 (Sun, 24 Aug 2008) | 2 lines +r3346 | jcbowman | 2008-08-25 04:28:36 +0200 (Mon, 25 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_arrows.asy Remove unused code. ------------------------------------------------------------------------ -r3345 | jcbowman | 2008-08-24 14:44:13 -0600 (Sun, 24 Aug 2008) | 8 lines +r3345 | jcbowman | 2008-08-24 22:44:13 +0200 (Sun, 24 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/plain_picture.asy @@ -11560,7 +11962,7 @@ Retune anglefactor for RPC angle calculation. Pass the correct size information to scale and scale3 when resizing. ------------------------------------------------------------------------ -r3344 | jcbowman | 2008-08-23 13:58:27 -0600 (Sat, 23 Aug 2008) | 2 lines +r3344 | jcbowman | 2008-08-23 21:58:27 +0200 (Sat, 23 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -11568,7 +11970,7 @@ Changed paths: Implement unitdisk and linecap(0) and linecap(2). ------------------------------------------------------------------------ -r3343 | jcbowman | 2008-08-23 12:21:52 -0600 (Sat, 23 Aug 2008) | 4 lines +r3343 | jcbowman | 2008-08-23 20:21:52 +0200 (Sat, 23 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/solids.asy @@ -11579,7 +11981,7 @@ Support linecap(1) in 3D. Fix PRC mode. ------------------------------------------------------------------------ -r3342 | jcbowman | 2008-08-23 03:46:16 -0600 (Sat, 23 Aug 2008) | 6 lines +r3342 | jcbowman | 2008-08-23 11:46:16 +0200 (Sat, 23 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_picture.asy @@ -11595,14 +11997,14 @@ Set uptodate=false in picture.add. Implement better workaround for missing movie15.sty. ------------------------------------------------------------------------ -r3341 | jcbowman | 2008-08-23 00:51:45 -0600 (Sat, 23 Aug 2008) | 2 lines +r3341 | jcbowman | 2008-08-23 08:51:45 +0200 (Sat, 23 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/cube.asy Update example. ------------------------------------------------------------------------ -r3340 | jcbowman | 2008-08-23 00:46:57 -0600 (Sat, 23 Aug 2008) | 7 lines +r3340 | jcbowman | 2008-08-23 08:46:57 +0200 (Sat, 23 Aug 2008) | 7 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -11615,7 +12017,7 @@ Rename unitcube to unitbox. Define surfaces unitplane and unitcube. ------------------------------------------------------------------------ -r3339 | jcbowman | 2008-08-22 23:59:35 -0600 (Fri, 22 Aug 2008) | 8 lines +r3339 | jcbowman | 2008-08-23 07:59:35 +0200 (Sat, 23 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/base/solids.asy @@ -11631,32 +12033,32 @@ Generalize revolution constructor based on a graph. Use operator .. in hyperboloid example. ------------------------------------------------------------------------ -r3338 | oshardt | 2008-08-22 17:47:12 -0600 (Fri, 22 Aug 2008) | 1 line +r3338 | oshardt | 2008-08-23 01:47:12 +0200 (Sat, 23 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/doc/logo3.asy Fix logo3. ------------------------------------------------------------------------ -r3337 | oshardt | 2008-08-22 17:44:20 -0600 (Fri, 22 Aug 2008) | 1 line +r3337 | oshardt | 2008-08-23 01:44:20 +0200 (Sat, 23 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/doc/logo3.asy Fix logo3. ------------------------------------------------------------------------ -r3336 | oshardt | 2008-08-22 15:44:28 -0600 (Fri, 22 Aug 2008) | 1 line +r3336 | oshardt | 2008-08-22 23:44:28 +0200 (Fri, 22 Aug 2008) | 1 line Changed paths: A /trunk/asymptote/doc/logo3.asy Add 3D logo. ------------------------------------------------------------------------ -r3335 | oshardt | 2008-08-22 14:21:48 -0600 (Fri, 22 Aug 2008) | 1 line +r3335 | oshardt | 2008-08-22 22:21:48 +0200 (Fri, 22 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRCTools/bitData.cc M /trunk/asymptote/prc/PRCTools/describePRC.cc Improve debugging output. ------------------------------------------------------------------------ -r3334 | jcbowman | 2008-08-22 12:35:50 -0600 (Fri, 22 Aug 2008) | 8 lines +r3334 | jcbowman | 2008-08-22 20:35:50 +0200 (Fri, 22 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/solids.asy @@ -11679,20 +12081,20 @@ Fix determinant of align and transform3. Use larger sphere fuzz in tube. ------------------------------------------------------------------------ -r3333 | pivaldi | 2008-08-22 08:28:54 -0600 (Fri, 22 Aug 2008) | 1 line +r3333 | pivaldi | 2008-08-22 16:28:54 +0200 (Fri, 22 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/base/grid3.asy grid3.asy: set default value axis in routine (x/y/z)axis3. ------------------------------------------------------------------------ -r3332 | pivaldi | 2008-08-22 08:18:27 -0600 (Fri, 22 Aug 2008) | 2 lines +r3332 | pivaldi | 2008-08-22 16:18:27 +0200 (Fri, 22 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/grid3.asy grid3.asy: Renames (Left/Right)Ticks (Left/Right)Ticks3 for consistency. Remove an unnecessary parameter. ------------------------------------------------------------------------ -r3331 | jcbowman | 2008-08-22 01:40:52 -0600 (Fri, 22 Aug 2008) | 4 lines +r3331 | jcbowman | 2008-08-22 09:40:52 +0200 (Fri, 22 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph3.asy @@ -11701,7 +12103,7 @@ Fix yaxis3 placement. Fix 3D Arc and Circle. ------------------------------------------------------------------------ -r3330 | jcbowman | 2008-08-21 21:09:26 -0600 (Thu, 21 Aug 2008) | 4 lines +r3330 | jcbowman | 2008-08-22 05:09:26 +0200 (Fri, 22 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/prc/PRC.h M /trunk/asymptote/prc/oPRCFile.cc @@ -11712,13 +12114,13 @@ Add PRCVersion. Work around compiler bug in gcc-3.3.5. ------------------------------------------------------------------------ -r3329 | oshardt | 2008-08-21 18:54:51 -0600 (Thu, 21 Aug 2008) | 1 line +r3329 | oshardt | 2008-08-22 02:54:51 +0200 (Fri, 22 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/base/three_arrows.asy Add test for straightness. ------------------------------------------------------------------------ -r3328 | jcbowman | 2008-08-21 09:54:29 -0600 (Thu, 21 Aug 2008) | 2 lines +r3328 | jcbowman | 2008-08-21 17:54:29 +0200 (Thu, 21 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/three.asy @@ -11726,7 +12128,7 @@ Changed paths: Use unit normals in circle and Circle. ------------------------------------------------------------------------ -r3327 | jcbowman | 2008-08-21 09:44:34 -0600 (Thu, 21 Aug 2008) | 3 lines +r3327 | jcbowman | 2008-08-21 17:44:34 +0200 (Thu, 21 Aug 2008) | 3 lines Changed paths: M /trunk/asymptote/texfile.cc @@ -11734,14 +12136,14 @@ Suppress page numbers for TeX engine; also suppress hoffset and voffset in inlinetex mode. ------------------------------------------------------------------------ -r3326 | jcbowman | 2008-08-21 09:43:15 -0600 (Thu, 21 Aug 2008) | 2 lines +r3326 | jcbowman | 2008-08-21 17:43:15 +0200 (Thu, 21 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Set straight only if no internal patch points are given. ------------------------------------------------------------------------ -r3325 | jcbowman | 2008-08-21 03:48:06 -0600 (Thu, 21 Aug 2008) | 12 lines +r3325 | jcbowman | 2008-08-21 11:48:06 +0200 (Thu, 21 Aug 2008) | 12 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/solids.asy @@ -11772,13 +12174,13 @@ Speed up thick line drawing by optimizing straight case. Optimize align(triple) and implement its inverse, called transform3(triple). ------------------------------------------------------------------------ -r3324 | oshardt | 2008-08-20 22:12:16 -0600 (Wed, 20 Aug 2008) | 1 line +r3324 | oshardt | 2008-08-21 06:12:16 +0200 (Thu, 21 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/base/three_arrows.asy Add check for -X direction. ------------------------------------------------------------------------ -r3323 | jcbowman | 2008-08-20 20:31:24 -0600 (Wed, 20 Aug 2008) | 2 lines +r3323 | jcbowman | 2008-08-21 04:31:24 +0200 (Thu, 21 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_arrows.asy @@ -11788,7 +12190,7 @@ Changed paths: Add hook for thick line PRC support. ------------------------------------------------------------------------ -r3322 | jcbowman | 2008-08-20 17:30:04 -0600 (Wed, 20 Aug 2008) | 6 lines +r3322 | jcbowman | 2008-08-21 01:30:04 +0200 (Thu, 21 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_arcs.asy M /trunk/asymptote/base/plain_pens.asy @@ -11805,7 +12207,7 @@ Redefine nullpen to linewidth(0)+invisible. Remove duplicate code. ------------------------------------------------------------------------ -r3321 | jcbowman | 2008-08-20 15:45:25 -0600 (Wed, 20 Aug 2008) | 8 lines +r3321 | jcbowman | 2008-08-20 23:45:25 +0200 (Wed, 20 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/graph.asy @@ -11824,7 +12226,7 @@ Fix transverse skeleton when angle2-angle1 < 360. Make contour3 return a surface. ------------------------------------------------------------------------ -r3320 | jcbowman | 2008-08-20 10:06:35 -0600 (Wed, 20 Aug 2008) | 2 lines +r3320 | jcbowman | 2008-08-20 18:06:35 +0200 (Wed, 20 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -11834,13 +12236,13 @@ Changed paths: Fix Circle and Arc so that they are consistent with circle and arc. ------------------------------------------------------------------------ -r3319 | oshardt | 2008-08-20 09:50:53 -0600 (Wed, 20 Aug 2008) | 1 line +r3319 | oshardt | 2008-08-20 17:50:53 +0200 (Wed, 20 Aug 2008) | 1 line Changed paths: A /trunk/asymptote/base/three_arrows.asy Add 3d support for thick lines and arrows. ------------------------------------------------------------------------ -r3318 | jcbowman | 2008-08-20 03:52:42 -0600 (Wed, 20 Aug 2008) | 26 lines +r3318 | jcbowman | 2008-08-20 11:52:42 +0200 (Wed, 20 Aug 2008) | 26 lines Changed paths: A /trunk/asymptote/base/bsp.asy M /trunk/asymptote/base/contour3.asy @@ -11900,49 +12302,49 @@ Move binary space partition code out of three.asy and into bsp.asy. Add operators == and != for real[][] and path3. ------------------------------------------------------------------------ -r3317 | jcbowman | 2008-08-18 01:39:15 -0600 (Mon, 18 Aug 2008) | 2 lines +r3317 | jcbowman | 2008-08-18 09:39:15 +0200 (Mon, 18 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Fix align.is3D flag. ------------------------------------------------------------------------ -r3316 | jcbowman | 2008-08-18 01:03:08 -0600 (Mon, 18 Aug 2008) | 2 lines +r3316 | jcbowman | 2008-08-18 09:03:08 +0200 (Mon, 18 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Fix Label diagnostic. ------------------------------------------------------------------------ -r3315 | jcbowman | 2008-08-16 12:43:32 -0600 (Sat, 16 Aug 2008) | 2 lines +r3315 | jcbowman | 2008-08-16 20:43:32 +0200 (Sat, 16 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/process.cc Use settings::outname instead of "out". ------------------------------------------------------------------------ -r3314 | jcbowman | 2008-08-15 15:08:27 -0600 (Fri, 15 Aug 2008) | 2 lines +r3314 | jcbowman | 2008-08-15 23:08:27 +0200 (Fri, 15 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Fix 3D label sizing. ------------------------------------------------------------------------ -r3313 | jcbowman | 2008-08-15 14:57:09 -0600 (Fri, 15 Aug 2008) | 2 lines +r3313 | jcbowman | 2008-08-15 22:57:09 +0200 (Fri, 15 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add operators == and != for path3. ------------------------------------------------------------------------ -r3312 | jcbowman | 2008-08-15 01:13:17 -0600 (Fri, 15 Aug 2008) | 2 lines +r3312 | jcbowman | 2008-08-15 09:13:17 +0200 (Fri, 15 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Use currentprojection by default in min3(picture) and max3(picture). ------------------------------------------------------------------------ -r3311 | jcbowman | 2008-08-15 01:02:58 -0600 (Fri, 15 Aug 2008) | 7 lines +r3311 | jcbowman | 2008-08-15 09:02:58 +0200 (Fri, 15 Aug 2008) | 7 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_shipout.asy @@ -11957,7 +12359,7 @@ to pic.fit3(). Add embed options to shipout. ------------------------------------------------------------------------ -r3310 | jcbowman | 2008-08-14 12:12:57 -0600 (Thu, 14 Aug 2008) | 6 lines +r3310 | jcbowman | 2008-08-14 20:12:57 +0200 (Thu, 14 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/stats.asy @@ -11971,7 +12373,7 @@ Make randompath(n) return a path of length n. Fix and optimize camera transforms. ------------------------------------------------------------------------ -r3309 | jcbowman | 2008-08-14 01:42:05 -0600 (Thu, 14 Aug 2008) | 2 lines +r3309 | jcbowman | 2008-08-14 09:42:05 +0200 (Thu, 14 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -11979,14 +12381,14 @@ Changed paths: Remove remaining "camera too close" messages (no longer needed). ------------------------------------------------------------------------ -r3308 | jcbowman | 2008-08-14 01:28:15 -0600 (Thu, 14 Aug 2008) | 2 lines +r3308 | jcbowman | 2008-08-14 09:28:15 +0200 (Thu, 14 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Reinstate add(drawer d) function. ------------------------------------------------------------------------ -r3307 | jcbowman | 2008-08-14 01:12:24 -0600 (Thu, 14 Aug 2008) | 8 lines +r3307 | jcbowman | 2008-08-14 09:12:24 +0200 (Thu, 14 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/plain_arrows.asy @@ -12004,7 +12406,7 @@ Add projection argument to shipout. Add min3(pic) and max3(pic) functions. ------------------------------------------------------------------------ -r3306 | jcbowman | 2008-08-13 08:32:00 -0600 (Wed, 13 Aug 2008) | 6 lines +r3306 | jcbowman | 2008-08-13 16:32:00 +0200 (Wed, 13 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/plain_picture.asy @@ -12021,13 +12423,13 @@ Fix duplicate calls to tensorshade. Re-enable surface transparency. ------------------------------------------------------------------------ -r3305 | oshardt | 2008-08-12 12:47:25 -0600 (Tue, 12 Aug 2008) | 1 line +r3305 | oshardt | 2008-08-12 20:47:25 +0200 (Tue, 12 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/base/three.asy Optimize 3d reflection routine. ------------------------------------------------------------------------ -r3304 | jcbowman | 2008-08-12 09:50:14 -0600 (Tue, 12 Aug 2008) | 12 lines +r3304 | jcbowman | 2008-08-12 17:50:14 +0200 (Tue, 12 Aug 2008) | 12 lines Changed paths: M /trunk/asymptote/base/graph_settings.asy M /trunk/asymptote/base/plain_Label.asy @@ -12052,7 +12454,7 @@ Allow align parameter of Label to be a triple. Make size(picture) return max(pic)-min(pic), as with frames. ------------------------------------------------------------------------ -r3303 | jcbowman | 2008-08-10 10:48:32 -0600 (Sun, 10 Aug 2008) | 2 lines +r3303 | jcbowman | 2008-08-10 18:48:32 +0200 (Sun, 10 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -12061,28 +12463,28 @@ Changed paths: Add general T[] sort(T[] a, bool compare(T i, T j)) function. ------------------------------------------------------------------------ -r3302 | jcbowman | 2008-08-09 08:40:53 -0600 (Sat, 09 Aug 2008) | 2 lines +r3302 | jcbowman | 2008-08-09 16:40:53 +0200 (Sat, 09 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Don't call surface mesh if meshpen == invisible. ------------------------------------------------------------------------ -r3301 | jcbowman | 2008-08-09 00:04:52 -0600 (Sat, 09 Aug 2008) | 2 lines +r3301 | jcbowman | 2008-08-09 08:04:52 +0200 (Sat, 09 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/path3.cc Increase fuzz in min(surface,projection) routine. ------------------------------------------------------------------------ -r3300 | jcbowman | 2008-08-08 20:01:30 -0600 (Fri, 08 Aug 2008) | 2 lines +r3300 | jcbowman | 2008-08-09 04:01:30 +0200 (Sat, 09 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Fix picture min/max functions. ------------------------------------------------------------------------ -r3299 | jcbowman | 2008-08-08 19:53:22 -0600 (Fri, 08 Aug 2008) | 8 lines +r3299 | jcbowman | 2008-08-09 03:53:22 +0200 (Sat, 09 Aug 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -12099,7 +12501,7 @@ Fix empty picture check in max/min. Move default 3d embedding settings to defaultembed3options variable. ------------------------------------------------------------------------ -r3298 | jcbowman | 2008-08-08 02:24:25 -0600 (Fri, 08 Aug 2008) | 4 lines +r3298 | jcbowman | 2008-08-08 10:24:25 +0200 (Fri, 08 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -12109,7 +12511,7 @@ Fix empty tests in picture min and max routines. Fix projection in draw(surface). ------------------------------------------------------------------------ -r3297 | jcbowman | 2008-08-08 01:57:04 -0600 (Fri, 08 Aug 2008) | 6 lines +r3297 | jcbowman | 2008-08-08 09:57:04 +0200 (Fri, 08 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -12121,27 +12523,27 @@ Support lens angle in viewpoint. Simplify embedprc options. ------------------------------------------------------------------------ -r3296 | jcbowman | 2008-08-08 01:40:15 -0600 (Fri, 08 Aug 2008) | 2 lines +r3296 | jcbowman | 2008-08-08 09:40:15 +0200 (Fri, 08 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy Fix handling of null deliminted entries in split. ------------------------------------------------------------------------ -r3295 | jcbowman | 2008-08-07 23:28:33 -0600 (Thu, 07 Aug 2008) | 2 lines +r3295 | jcbowman | 2008-08-08 07:28:33 +0200 (Fri, 08 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Fix scale and scale3. ------------------------------------------------------------------------ -r3294 | oshardt | 2008-08-07 11:54:41 -0600 (Thu, 07 Aug 2008) | 1 line +r3294 | oshardt | 2008-08-07 19:54:41 +0200 (Thu, 07 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/base/three.asy Optimize routine for rotation of axes. ------------------------------------------------------------------------ -r3293 | jcbowman | 2008-08-06 14:55:45 -0600 (Wed, 06 Aug 2008) | 4 lines +r3293 | jcbowman | 2008-08-06 22:55:45 +0200 (Wed, 06 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/three.asy @@ -12152,14 +12554,14 @@ Support meshpen in PRC mode. Avoid duplicate drawing due to inexact bounds. ------------------------------------------------------------------------ -r3292 | jcbowman | 2008-08-06 12:46:50 -0600 (Wed, 06 Aug 2008) | 2 lines +r3292 | jcbowman | 2008-08-06 20:46:50 +0200 (Wed, 06 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Fix supplementary scaling routines. ------------------------------------------------------------------------ -r3291 | jcbowman | 2008-08-06 12:45:43 -0600 (Wed, 06 Aug 2008) | 2 lines +r3291 | jcbowman | 2008-08-06 20:45:43 +0200 (Wed, 06 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/base/three_surface.asy @@ -12169,41 +12571,41 @@ Changed paths: Fix projection transformations. ------------------------------------------------------------------------ -r3290 | oshardt | 2008-08-06 09:53:23 -0600 (Wed, 06 Aug 2008) | 1 line +r3290 | oshardt | 2008-08-06 17:53:23 +0200 (Wed, 06 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/prc/writePRC.cc Fix uint32_t cast. ------------------------------------------------------------------------ -r3289 | jcbowman | 2008-08-06 08:51:30 -0600 (Wed, 06 Aug 2008) | 2 lines +r3289 | jcbowman | 2008-08-06 16:51:30 +0200 (Wed, 06 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Cache return values of texpath. ------------------------------------------------------------------------ -r3288 | jcbowman | 2008-08-06 08:16:37 -0600 (Wed, 06 Aug 2008) | 2 lines +r3288 | jcbowman | 2008-08-06 16:16:37 +0200 (Wed, 06 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/drawtree.asy Apply submitted drawtree patches (Bug IDs 2031338,2031368, and 2031511). ------------------------------------------------------------------------ -r3287 | jcbowman | 2008-08-06 00:57:49 -0600 (Wed, 06 Aug 2008) | 2 lines +r3287 | jcbowman | 2008-08-06 08:57:49 +0200 (Wed, 06 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/grid3xyz.asy Remove obsolete call to aspect. ------------------------------------------------------------------------ -r3286 | jcbowman | 2008-08-06 00:47:52 -0600 (Wed, 06 Aug 2008) | 2 lines +r3286 | jcbowman | 2008-08-06 08:47:52 +0200 (Wed, 06 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/axis3.asy Temporarily revert change to allow svn builds. ------------------------------------------------------------------------ -r3285 | jcbowman | 2008-08-06 00:36:59 -0600 (Wed, 06 Aug 2008) | 20 lines +r3285 | jcbowman | 2008-08-06 08:36:59 +0200 (Wed, 06 Aug 2008) | 20 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/math.asy @@ -12245,7 +12647,7 @@ Fully implement drawerBound3 routines. Fix transform3 initialization in Label. ------------------------------------------------------------------------ -r3284 | oshardt | 2008-08-05 19:09:40 -0600 (Tue, 05 Aug 2008) | 1 line +r3284 | oshardt | 2008-08-06 03:09:40 +0200 (Wed, 06 Aug 2008) | 1 line Changed paths: M /trunk/asymptote/prc/oPRCFile.cc M /trunk/asymptote/prc/oPRCFile.h @@ -12253,7 +12655,7 @@ Changed paths: Add support for materials in prc. ------------------------------------------------------------------------ -r3283 | jcbowman | 2008-08-05 11:12:08 -0600 (Tue, 05 Aug 2008) | 4 lines +r3283 | jcbowman | 2008-08-05 19:12:08 +0200 (Tue, 05 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/reload.js M /trunk/asymptote/silentPrint.js @@ -12263,7 +12665,7 @@ Make reload load the document if not already active. Improve documentation. ------------------------------------------------------------------------ -r3282 | jcbowman | 2008-08-05 10:48:27 -0600 (Tue, 05 Aug 2008) | 3 lines +r3282 | jcbowman | 2008-08-05 18:48:27 +0200 (Tue, 05 Aug 2008) | 3 lines Changed paths: M /trunk/asymptote/prc/oPRCFile.cc @@ -12271,7 +12673,7 @@ Avoid arbitrary default values; set line width to zero since that appears to be the only value implemented by Adobe Reader 8.1.2 and 9.0. ------------------------------------------------------------------------ -r3281 | jcbowman | 2008-08-03 19:50:06 -0600 (Sun, 03 Aug 2008) | 2 lines +r3281 | jcbowman | 2008-08-04 03:50:06 +0200 (Mon, 04 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc M /trunk/asymptote/texfile.h @@ -12279,7 +12681,7 @@ Changed paths: Support ASYbase in texpath. ------------------------------------------------------------------------ -r3280 | jcbowman | 2008-08-03 01:26:56 -0600 (Sun, 03 Aug 2008) | 4 lines +r3280 | jcbowman | 2008-08-03 09:26:56 +0200 (Sun, 03 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/picture.cc @@ -12289,28 +12691,28 @@ Remove quotes from viewerOptions. Optimize piecewisestraight. ------------------------------------------------------------------------ -r3279 | jcbowman | 2008-08-02 22:49:09 -0600 (Sat, 02 Aug 2008) | 2 lines +r3279 | jcbowman | 2008-08-03 06:49:09 +0200 (Sun, 03 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix straight flag in drawprc. ------------------------------------------------------------------------ -r3278 | jcbowman | 2008-08-02 22:37:56 -0600 (Sat, 02 Aug 2008) | 2 lines +r3278 | jcbowman | 2008-08-03 06:37:56 +0200 (Sun, 03 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Set straight flag on transformation. ------------------------------------------------------------------------ -r3277 | jcbowman | 2008-08-02 20:34:36 -0600 (Sat, 02 Aug 2008) | 2 lines +r3277 | jcbowman | 2008-08-03 04:34:36 +0200 (Sun, 03 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Automatically embed option defaults into descriptions. ------------------------------------------------------------------------ -r3276 | jcbowman | 2008-08-02 18:01:40 -0600 (Sat, 02 Aug 2008) | 3 lines +r3276 | jcbowman | 2008-08-03 02:01:40 +0200 (Sun, 03 Aug 2008) | 3 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/settings.cc @@ -12319,14 +12721,14 @@ Only attempt reload if acroread process is already running; add reloaddelay parameter. ------------------------------------------------------------------------ -r3275 | jcbowman | 2008-08-02 16:18:12 -0600 (Sat, 02 Aug 2008) | 2 lines +r3275 | jcbowman | 2008-08-03 00:18:12 +0200 (Sun, 03 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Add unitcylinder. ------------------------------------------------------------------------ -r3274 | jcbowman | 2008-08-02 14:19:23 -0600 (Sat, 02 Aug 2008) | 6 lines +r3274 | jcbowman | 2008-08-02 22:19:23 +0200 (Sat, 02 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/picture.h @@ -12343,21 +12745,21 @@ settings.reload=true (requires manual installation of reload.js in Add psviewerOptions and pdfviewerOptions. ------------------------------------------------------------------------ -r3273 | jcbowman | 2008-08-02 14:11:23 -0600 (Sat, 02 Aug 2008) | 2 lines +r3273 | jcbowman | 2008-08-02 22:11:23 +0200 (Sat, 02 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/prc/oPRCFile.cc Simplify solid line pattern. ------------------------------------------------------------------------ -r3272 | jcbowman | 2008-08-01 16:59:59 -0600 (Fri, 01 Aug 2008) | 2 lines +r3272 | jcbowman | 2008-08-02 00:59:59 +0200 (Sat, 02 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Fix -psimage -tex pdflatex. ------------------------------------------------------------------------ -r3271 | jcbowman | 2008-08-01 15:10:30 -0600 (Fri, 01 Aug 2008) | 2 lines +r3271 | jcbowman | 2008-08-01 23:10:30 +0200 (Fri, 01 Aug 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/picture.cc @@ -12365,7 +12767,7 @@ Changed paths: Remove interfering comments; change psimage timeout to 60 seconds. ------------------------------------------------------------------------ -r3270 | jcbowman | 2008-08-01 10:36:55 -0600 (Fri, 01 Aug 2008) | 7 lines +r3270 | jcbowman | 2008-08-01 18:36:55 +0200 (Fri, 01 Aug 2008) | 7 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy D /trunk/asymptote/print.js @@ -12380,7 +12782,7 @@ Check whether silentPrint is defined. Fix texengine(true). ------------------------------------------------------------------------ -r3269 | jcbowman | 2008-08-01 01:58:03 -0600 (Fri, 01 Aug 2008) | 4 lines +r3269 | jcbowman | 2008-08-01 09:58:03 +0200 (Fri, 01 Aug 2008) | 4 lines Changed paths: M /trunk/asymptote/picture.cc A /trunk/asymptote/print.js @@ -12390,7 +12792,7 @@ Add print.js; this should be put in ~/.adobe/Acrobat/8.0/JavaScripts/. Make -psimage give up on waiting for Adobe Reader to finish after 30 seconds. ------------------------------------------------------------------------ -r3268 | jcbowman | 2008-08-01 01:43:50 -0600 (Fri, 01 Aug 2008) | 7 lines +r3268 | jcbowman | 2008-08-01 09:43:50 +0200 (Fri, 01 Aug 2008) | 7 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain_shipout.asy @@ -12412,7 +12814,7 @@ add texdvicommand to specify an alternative latex/tex to dvi program. Use correct output prefix for intermediate PRC files. ------------------------------------------------------------------------ -r3267 | jcbowman | 2008-07-31 22:23:29 -0600 (Thu, 31 Jul 2008) | 6 lines +r3267 | jcbowman | 2008-08-01 06:23:29 +0200 (Fri, 01 Aug 2008) | 6 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_picture.asy @@ -12425,21 +12827,21 @@ Implement nolight with boolean variable. Fix sizing of transformed 3D pictures. ------------------------------------------------------------------------ -r3266 | jcbowman | 2008-07-30 13:14:02 -0600 (Wed, 30 Jul 2008) | 2 lines +r3266 | jcbowman | 2008-07-30 21:14:02 +0200 (Wed, 30 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyOptionsDialog.py Use portable constructor for BooleanVar. ------------------------------------------------------------------------ -r3265 | jcbowman | 2008-07-30 12:59:23 -0600 (Wed, 30 Jul 2008) | 2 lines +r3265 | jcbowman | 2008-07-30 20:59:23 +0200 (Wed, 30 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyOptions.py Move xasy.conf into ~/.asy directory. ------------------------------------------------------------------------ -r3264 | jcbowman | 2008-07-30 11:02:46 -0600 (Wed, 30 Jul 2008) | 7 lines +r3264 | jcbowman | 2008-07-30 19:02:46 +0200 (Wed, 30 Jul 2008) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/plain_picture.asy @@ -12457,7 +12859,7 @@ ratio and also the width and height of the final projected picture. Remove obsolete cycle3 variable. ------------------------------------------------------------------------ -r3263 | jcbowman | 2008-07-29 16:56:42 -0600 (Tue, 29 Jul 2008) | 8 lines +r3263 | jcbowman | 2008-07-30 00:56:42 +0200 (Wed, 30 Jul 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_picture.asy @@ -12477,46 +12879,46 @@ Add transform3(triple u, triple v) that maps (X,Y) to (u,v). Add solidcone. ------------------------------------------------------------------------ -r3262 | oshardt | 2008-07-29 14:47:55 -0600 (Tue, 29 Jul 2008) | 1 line +r3262 | oshardt | 2008-07-29 22:47:55 +0200 (Tue, 29 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyGUIIcons.py Use cleaner icons. ------------------------------------------------------------------------ -r3261 | oshardt | 2008-07-29 12:40:49 -0600 (Tue, 29 Jul 2008) | 1 line +r3261 | oshardt | 2008-07-29 20:40:49 +0200 (Tue, 29 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/Delaunay.cc Fix typo. ------------------------------------------------------------------------ -r3260 | oshardt | 2008-07-29 12:38:40 -0600 (Tue, 29 Jul 2008) | 1 line +r3260 | oshardt | 2008-07-29 20:38:40 +0200 (Tue, 29 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRCTools/describePRC.cc M /trunk/asymptote/prc/PRCTools/describePRC.h Describe scene display parameters. ------------------------------------------------------------------------ -r3259 | oshardt | 2008-07-29 10:30:42 -0600 (Tue, 29 Jul 2008) | 1 line +r3259 | oshardt | 2008-07-29 18:30:42 +0200 (Tue, 29 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Do not freeze while waiting for external editor to close. ------------------------------------------------------------------------ -r3258 | jcbowman | 2008-07-28 23:53:30 -0600 (Mon, 28 Jul 2008) | 2 lines +r3258 | jcbowman | 2008-07-29 07:53:30 +0200 (Tue, 29 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/path3.cc Fix hang in surface bbox routines. ------------------------------------------------------------------------ -r3257 | jcbowman | 2008-07-28 23:04:58 -0600 (Mon, 28 Jul 2008) | 2 lines +r3257 | jcbowman | 2008-07-29 07:04:58 +0200 (Tue, 29 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three_surface.asy Add unit cone. ------------------------------------------------------------------------ -r3256 | jcbowman | 2008-07-28 07:47:31 -0600 (Mon, 28 Jul 2008) | 2 lines +r3256 | jcbowman | 2008-07-28 15:47:31 +0200 (Mon, 28 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/three.asy @@ -12528,14 +12930,14 @@ Changed paths: Add support for path3 Labels. ------------------------------------------------------------------------ -r3255 | jcbowman | 2008-07-27 23:09:39 -0600 (Sun, 27 Jul 2008) | 2 lines +r3255 | jcbowman | 2008-07-28 07:09:39 +0200 (Mon, 28 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix generation of asy-keywords.el. ------------------------------------------------------------------------ -r3254 | jcbowman | 2008-07-27 22:57:25 -0600 (Sun, 27 Jul 2008) | 8 lines +r3254 | jcbowman | 2008-07-28 06:57:25 +0200 (Mon, 28 Jul 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_picture.asy @@ -12554,7 +12956,7 @@ Add missing tensorshade functions. Add casts from object to label and object to frame. ------------------------------------------------------------------------ -r3253 | jcbowman | 2008-07-27 21:30:54 -0600 (Sun, 27 Jul 2008) | 8 lines +r3253 | jcbowman | 2008-07-28 05:30:54 +0200 (Mon, 28 Jul 2008) | 8 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/patterns.asy @@ -12572,7 +12974,7 @@ Add string(int) function. Fix locale issues. ------------------------------------------------------------------------ -r3252 | jcbowman | 2008-07-27 16:02:26 -0600 (Sun, 27 Jul 2008) | 2 lines +r3252 | jcbowman | 2008-07-28 00:02:26 +0200 (Mon, 28 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/castop.h @@ -12582,7 +12984,7 @@ Changed paths: Make string(real, int digits=realDigits) use fixed notation. ------------------------------------------------------------------------ -r3251 | jcbowman | 2008-07-27 00:12:38 -0600 (Sun, 27 Jul 2008) | 7 lines +r3251 | jcbowman | 2008-07-27 08:12:38 +0200 (Sun, 27 Jul 2008) | 7 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_picture.asy @@ -12600,7 +13002,7 @@ origin). Remove three-dimensional add functions in favour of embed. ------------------------------------------------------------------------ -r3250 | jcbowman | 2008-07-26 18:22:39 -0600 (Sat, 26 Jul 2008) | 2 lines +r3250 | jcbowman | 2008-07-27 02:22:39 +0200 (Sun, 27 Jul 2008) | 2 lines Changed paths: D /trunk/asymptote/base/light.asy D /trunk/asymptote/base/surface.asy @@ -12611,7 +13013,7 @@ Changed paths: Rename surface.asy to three_surface.asy and light.asy to three_light.asy. ------------------------------------------------------------------------ -r3249 | jcbowman | 2008-07-26 18:15:03 -0600 (Sat, 26 Jul 2008) | 14 lines +r3249 | jcbowman | 2008-07-27 02:15:03 +0200 (Sun, 27 Jul 2008) | 14 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/graph3.asy @@ -12647,13 +13049,13 @@ Remove casts from triple to pair and triple[][] to patch. Fix surface normals. ------------------------------------------------------------------------ -r3248 | oshardt | 2008-07-26 08:14:27 -0600 (Sat, 26 Jul 2008) | 1 line +r3248 | oshardt | 2008-07-26 16:14:27 +0200 (Sat, 26 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/base/bezulate.asy Preserve original path's direction for each new region created. ------------------------------------------------------------------------ -r3247 | jcbowman | 2008-07-25 16:53:29 -0600 (Fri, 25 Jul 2008) | 4 lines +r3247 | jcbowman | 2008-07-26 00:53:29 +0200 (Sat, 26 Jul 2008) | 4 lines Changed paths: M /trunk/asymptote/base/bezulate.asy @@ -12662,14 +13064,14 @@ Fix removeDuplicates. Simplify uncycle. ------------------------------------------------------------------------ -r3246 | jcbowman | 2008-07-25 15:38:43 -0600 (Fri, 25 Jul 2008) | 2 lines +r3246 | jcbowman | 2008-07-25 23:38:43 +0200 (Fri, 25 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/bezulate.asy Use DBL_MANT_DIG for recursion depth limit. ------------------------------------------------------------------------ -r3245 | jcbowman | 2008-07-23 02:16:40 -0600 (Wed, 23 Jul 2008) | 9 lines +r3245 | jcbowman | 2008-07-23 10:16:40 +0200 (Wed, 23 Jul 2008) | 9 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -12699,21 +13101,21 @@ Implement simpler, faster surface bounding box routines. Add -prc setting (temporarily set to false) to enable prc output. ------------------------------------------------------------------------ -r3244 | jcbowman | 2008-07-23 02:09:52 -0600 (Wed, 23 Jul 2008) | 2 lines +r3244 | jcbowman | 2008-07-23 10:09:52 +0200 (Wed, 23 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Add randompath function. ------------------------------------------------------------------------ -r3243 | jcbowman | 2008-07-23 02:02:59 -0600 (Wed, 23 Jul 2008) | 2 lines +r3243 | jcbowman | 2008-07-23 10:02:59 +0200 (Wed, 23 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/embedding.asy Fix height and width units. ------------------------------------------------------------------------ -r3242 | jcbowman | 2008-07-07 00:43:29 -0600 (Mon, 07 Jul 2008) | 2 lines +r3242 | jcbowman | 2008-07-07 08:43:29 +0200 (Mon, 07 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/bbox.h M /trunk/asymptote/path.cc @@ -12721,14 +13123,14 @@ Changed paths: Use bounding box rather than less efficient convex hull test in inside. ------------------------------------------------------------------------ -r3241 | jcbowman | 2008-07-06 22:52:29 -0600 (Sun, 06 Jul 2008) | 2 lines +r3241 | jcbowman | 2008-07-07 06:52:29 +0200 (Mon, 07 Jul 2008) | 2 lines Changed paths: D /trunk/asymptote/xasy3 Remove obsolete file. ------------------------------------------------------------------------ -r3240 | jcbowman | 2008-07-06 17:23:42 -0600 (Sun, 06 Jul 2008) | 2 lines +r3240 | jcbowman | 2008-07-07 01:23:42 +0200 (Mon, 07 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/patches/README @@ -12737,27 +13139,27 @@ Changed paths: Support compilation of gc-7.1 with gcc-4.3.1 on FreeBSD 4.10-RELEASE-p2. ------------------------------------------------------------------------ -r3239 | pivaldi | 2008-07-06 14:40:28 -0600 (Sun, 06 Jul 2008) | 1 line +r3239 | pivaldi | 2008-07-06 22:40:28 +0200 (Sun, 06 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix the documentation of quarticroots. ------------------------------------------------------------------------ -r3238 | jcbowman | 2008-07-05 22:21:50 -0600 (Sat, 05 Jul 2008) | 2 lines +r3238 | jcbowman | 2008-07-06 06:21:50 +0200 (Sun, 06 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Minor optimization. ------------------------------------------------------------------------ -r3237 | jcbowman | 2008-07-05 22:11:36 -0600 (Sat, 05 Jul 2008) | 2 lines +r3237 | jcbowman | 2008-07-06 06:11:36 +0200 (Sun, 06 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Remove HAVE_TRIANGLE configuration. ------------------------------------------------------------------------ -r3236 | jcbowman | 2008-07-05 22:05:42 -0600 (Sat, 05 Jul 2008) | 2 lines +r3236 | jcbowman | 2008-07-06 06:05:42 +0200 (Sun, 06 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/prc/oPRCFile.cc M /trunk/asymptote/prc/writePRC.cc @@ -12766,42 +13168,42 @@ Changed paths: Port prc code to cygwin. ------------------------------------------------------------------------ -r3235 | jcbowman | 2008-07-05 14:11:53 -0600 (Sat, 05 Jul 2008) | 2 lines +r3235 | jcbowman | 2008-07-05 22:11:53 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Port version changes to msdos. ------------------------------------------------------------------------ -r3234 | jcbowman | 2008-07-05 13:47:51 -0600 (Sat, 05 Jul 2008) | 2 lines +r3234 | jcbowman | 2008-07-05 21:47:51 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in More version fixes. ------------------------------------------------------------------------ -r3233 | jcbowman | 2008-07-05 13:32:18 -0600 (Sat, 05 Jul 2008) | 2 lines +r3233 | jcbowman | 2008-07-05 21:32:18 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix version.texi; cleanup temporary files. ------------------------------------------------------------------------ -r3232 | jcbowman | 2008-07-05 12:54:47 -0600 (Sat, 05 Jul 2008) | 2 lines +r3232 | jcbowman | 2008-07-05 20:54:47 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Add prc dependency. ------------------------------------------------------------------------ -r3231 | jcbowman | 2008-07-05 12:52:54 -0600 (Sat, 05 Jul 2008) | 2 lines +r3231 | jcbowman | 2008-07-05 20:52:54 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Create empty svnrevision.cc by default to force update. ------------------------------------------------------------------------ -r3230 | jcbowman | 2008-07-05 12:42:22 -0600 (Sat, 05 Jul 2008) | 3 lines +r3230 | jcbowman | 2008-07-05 20:42:22 +0200 (Sat, 05 Jul 2008) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -12813,7 +13215,7 @@ Remove support for external triangle.shar.gz package now that Delaunay.cc is fixed. ------------------------------------------------------------------------ -r3229 | jcbowman | 2008-07-05 12:26:50 -0600 (Sat, 05 Jul 2008) | 2 lines +r3229 | jcbowman | 2008-07-05 20:26:50 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: D /trunk/asymptote/GUI/xasyVersion.py.in M /trunk/asymptote/Makefile.in @@ -12829,14 +13231,14 @@ Changed paths: Include svn revision in version strings. ------------------------------------------------------------------------ -r3228 | jcbowman | 2008-07-05 11:08:28 -0600 (Sat, 05 Jul 2008) | 2 lines +r3228 | jcbowman | 2008-07-05 19:08:28 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Fix supertriangle computation. ------------------------------------------------------------------------ -r3227 | jcbowman | 2008-07-05 01:32:21 -0600 (Sat, 05 Jul 2008) | 4 lines +r3227 | jcbowman | 2008-07-05 09:32:21 +0200 (Sat, 05 Jul 2008) | 4 lines Changed paths: A /trunk/asymptote/base/bezulate.asy M /trunk/asymptote/base/surface.asy @@ -12848,14 +13250,14 @@ Add bezier triangulation routines (developed by Orest Shardt). Add support for filled fonts. ------------------------------------------------------------------------ -r3226 | jcbowman | 2008-07-05 00:37:42 -0600 (Sat, 05 Jul 2008) | 2 lines +r3226 | jcbowman | 2008-07-05 08:37:42 +0200 (Sat, 05 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/surface.asy Fix surface constructor to handle all four intersection cases. ------------------------------------------------------------------------ -r3225 | jcbowman | 2008-07-04 15:35:03 -0600 (Fri, 04 Jul 2008) | 2 lines +r3225 | jcbowman | 2008-07-04 23:35:03 +0200 (Fri, 04 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/surface.asy M /trunk/asymptote/doc/asymptote.texi @@ -12863,7 +13265,7 @@ Changed paths: Generalize planar surface constructor to handle a single interior intersection. ------------------------------------------------------------------------ -r3224 | jcbowman | 2008-07-04 11:29:01 -0600 (Fri, 04 Jul 2008) | 2 lines +r3224 | jcbowman | 2008-07-04 19:29:01 +0200 (Fri, 04 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/surface.asy M /trunk/asymptote/path.cc @@ -12871,13 +13273,13 @@ Changed paths: Fix check in windingnumber for points on path. ------------------------------------------------------------------------ -r3223 | oshardt | 2008-07-04 09:56:19 -0600 (Fri, 04 Jul 2008) | 1 line +r3223 | oshardt | 2008-07-04 17:56:19 +0200 (Fri, 04 Jul 2008) | 1 line Changed paths: M /trunk/asymptote/prc/oPRCFile.cc Fix parameterization interval of PRCline. ------------------------------------------------------------------------ -r3222 | jcbowman | 2008-07-04 01:09:09 -0600 (Fri, 04 Jul 2008) | 3 lines +r3222 | jcbowman | 2008-07-04 09:09:09 +0200 (Fri, 04 Jul 2008) | 3 lines Changed paths: M /trunk/asymptote/base/surface.asy @@ -12885,14 +13287,14 @@ Add constructor for a (possibly) nonconvex cyclic path that returns an array of surfaces. ------------------------------------------------------------------------ -r3221 | jcbowman | 2008-07-03 23:55:01 -0600 (Thu, 03 Jul 2008) | 2 lines +r3221 | jcbowman | 2008-07-04 07:55:01 +0200 (Fri, 04 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Suppress output by size when picture is empty. ------------------------------------------------------------------------ -r3220 | jcbowman | 2008-07-03 23:25:31 -0600 (Thu, 03 Jul 2008) | 7 lines +r3220 | jcbowman | 2008-07-04 07:25:31 +0200 (Fri, 04 Jul 2008) | 7 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/base/plain_paths.asy @@ -12907,7 +13309,7 @@ windingnumber for points on the path). Update documentation. ------------------------------------------------------------------------ -r3219 | jcbowman | 2008-07-03 15:46:32 -0600 (Thu, 03 Jul 2008) | 4 lines +r3219 | jcbowman | 2008-07-03 23:46:32 +0200 (Thu, 03 Jul 2008) | 4 lines Changed paths: M /trunk/asymptote/path.cc @@ -12916,7 +13318,7 @@ Make windingnumber(g,z) return the largest odd integer when z lies on path g. Make inside return true for points on the boundary. ------------------------------------------------------------------------ -r3218 | jcbowman | 2008-07-02 15:03:55 -0600 (Wed, 02 Jul 2008) | 3 lines +r3218 | jcbowman | 2008-07-02 23:03:55 +0200 (Wed, 02 Jul 2008) | 3 lines Changed paths: M /trunk/asymptote/path.cc @@ -12924,28 +13326,28 @@ Revert to original version of cubicroots to handle the case where one of the first two roots is near zero. ------------------------------------------------------------------------ -r3217 | jcbowman | 2008-07-02 12:57:21 -0600 (Wed, 02 Jul 2008) | 2 lines +r3217 | jcbowman | 2008-07-02 20:57:21 +0200 (Wed, 02 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/advection.asy Update example. ------------------------------------------------------------------------ -r3216 | jcbowman | 2008-07-01 22:29:10 -0600 (Tue, 01 Jul 2008) | 2 lines +r3216 | jcbowman | 2008-07-02 06:29:10 +0200 (Wed, 02 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Minor simplification. ------------------------------------------------------------------------ -r3215 | jcbowman | 2008-07-01 20:27:06 -0600 (Tue, 01 Jul 2008) | 2 lines +r3215 | jcbowman | 2008-07-02 04:27:06 +0200 (Wed, 02 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Fix AsyPDF flag. ------------------------------------------------------------------------ -r3214 | jcbowman | 2008-07-01 20:11:33 -0600 (Tue, 01 Jul 2008) | 2 lines +r3214 | jcbowman | 2008-07-02 04:11:33 +0200 (Wed, 02 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/drawclipbegin.h @@ -12958,14 +13360,14 @@ Changed paths: Support clipping with tex and pdftex TeX engines again (broken since r2785). ------------------------------------------------------------------------ -r3213 | jcbowman | 2008-07-01 20:08:52 -0600 (Tue, 01 Jul 2008) | 2 lines +r3213 | jcbowman | 2008-07-02 04:08:52 +0200 (Wed, 02 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Support xelatex. ------------------------------------------------------------------------ -r3212 | jcbowman | 2008-07-01 00:19:54 -0600 (Tue, 01 Jul 2008) | 3 lines +r3212 | jcbowman | 2008-07-01 08:19:54 +0200 (Tue, 01 Jul 2008) | 3 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/path.cc @@ -12975,7 +13377,7 @@ Leave cubic root refinement to the user, to avoid potential root interchange problems. ------------------------------------------------------------------------ -r3211 | jcbowman | 2008-06-30 22:27:13 -0600 (Mon, 30 Jun 2008) | 3 lines +r3211 | jcbowman | 2008-07-01 06:27:13 +0200 (Tue, 01 Jul 2008) | 3 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/path.cc @@ -12988,7 +13390,7 @@ Implement robust inside algorithm based on conditional subdivision and robust orient2d predicate. ------------------------------------------------------------------------ -r3210 | jcbowman | 2008-06-30 17:51:39 -0600 (Mon, 30 Jun 2008) | 2 lines +r3210 | jcbowman | 2008-07-01 01:51:39 +0200 (Tue, 01 Jul 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/latexusage.tex @@ -12996,28 +13398,28 @@ Changed paths: Add option to force PDF output. ------------------------------------------------------------------------ -r3209 | jcbowman | 2008-06-30 08:51:03 -0600 (Mon, 30 Jun 2008) | 2 lines +r3209 | jcbowman | 2008-06-30 16:51:03 +0200 (Mon, 30 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add side and incircle functions. ------------------------------------------------------------------------ -r3208 | jcbowman | 2008-06-29 17:57:25 -0600 (Sun, 29 Jun 2008) | 2 lines +r3208 | jcbowman | 2008-06-30 01:57:25 +0200 (Mon, 30 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Minor optimizations. ------------------------------------------------------------------------ -r3207 | jcbowman | 2008-06-29 16:33:57 -0600 (Sun, 29 Jun 2008) | 2 lines +r3207 | jcbowman | 2008-06-30 00:33:57 +0200 (Mon, 30 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Correct typo. ------------------------------------------------------------------------ -r3206 | jcbowman | 2008-06-29 16:30:53 -0600 (Sun, 29 Jun 2008) | 4 lines +r3206 | jcbowman | 2008-06-30 00:30:53 +0200 (Mon, 30 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -13033,7 +13435,7 @@ Fix segmentation fault in default Delaunay triangulation routine. Use Shewcuk's exact predicates in Delaunay triangulation. ------------------------------------------------------------------------ -r3205 | jcbowman | 2008-06-28 23:16:00 -0600 (Sat, 28 Jun 2008) | 3 lines +r3205 | jcbowman | 2008-06-29 07:16:00 +0200 (Sun, 29 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/doc/triangulate.asy @@ -13043,7 +13445,7 @@ Fix incorrect array size documentation of Delaunay.cc that can lead to a segmentation fault. ------------------------------------------------------------------------ -r3204 | jcbowman | 2008-06-26 00:01:50 -0600 (Thu, 26 Jun 2008) | 2 lines +r3204 | jcbowman | 2008-06-26 08:01:50 +0200 (Thu, 26 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/tests/arith/roots.asy @@ -13051,21 +13453,21 @@ Changed paths: Minor optimization. ------------------------------------------------------------------------ -r3203 | jcbowman | 2008-06-25 23:19:25 -0600 (Wed, 25 Jun 2008) | 2 lines +r3203 | jcbowman | 2008-06-26 07:19:25 +0200 (Thu, 26 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Try to refine calculated cubic roots with Newton-Raphson iteration. ------------------------------------------------------------------------ -r3202 | jcbowman | 2008-06-25 22:40:12 -0600 (Wed, 25 Jun 2008) | 2 lines +r3202 | jcbowman | 2008-06-26 06:40:12 +0200 (Thu, 26 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Simplify cubicroots. ------------------------------------------------------------------------ -r3201 | jcbowman | 2008-06-25 17:00:22 -0600 (Wed, 25 Jun 2008) | 2 lines +r3201 | jcbowman | 2008-06-26 01:00:22 +0200 (Thu, 26 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/bbox.h @@ -13077,56 +13479,56 @@ Changed paths: Replace ytimes by real[] mintimes(path) and real[] maxtimes(path). ------------------------------------------------------------------------ -r3200 | jcbowman | 2008-06-25 16:24:22 -0600 (Wed, 25 Jun 2008) | 2 lines +r3200 | jcbowman | 2008-06-26 00:24:22 +0200 (Thu, 26 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Generalize last fix to an arbitrary axis. ------------------------------------------------------------------------ -r3199 | jcbowman | 2008-06-25 15:04:03 -0600 (Wed, 25 Jun 2008) | 2 lines +r3199 | jcbowman | 2008-06-25 23:04:03 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Handle degenerate cases. ------------------------------------------------------------------------ -r3198 | jcbowman | 2008-06-25 00:38:12 -0600 (Wed, 25 Jun 2008) | 2 lines +r3198 | jcbowman | 2008-06-25 08:38:12 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Increase fuzz. ------------------------------------------------------------------------ -r3197 | jcbowman | 2008-06-25 00:27:11 -0600 (Wed, 25 Jun 2008) | 2 lines +r3197 | jcbowman | 2008-06-25 08:27:11 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fix numerical resolution problem in windingnumber. ------------------------------------------------------------------------ -r3196 | jcbowman | 2008-06-24 23:45:50 -0600 (Tue, 24 Jun 2008) | 2 lines +r3196 | jcbowman | 2008-06-25 07:45:50 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fix relative vs. absolute fuzz. ------------------------------------------------------------------------ -r3195 | jcbowman | 2008-06-24 23:03:37 -0600 (Tue, 24 Jun 2008) | 2 lines +r3195 | jcbowman | 2008-06-25 07:03:37 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Adjust fuzz to fix remaining resolutions problems in windingnumber. ------------------------------------------------------------------------ -r3194 | jcbowman | 2008-06-24 22:36:22 -0600 (Tue, 24 Jun 2008) | 2 lines +r3194 | jcbowman | 2008-06-25 06:36:22 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Reinstate deleted function. ------------------------------------------------------------------------ -r3193 | jcbowman | 2008-06-24 22:31:12 -0600 (Tue, 24 Jun 2008) | 2 lines +r3193 | jcbowman | 2008-06-25 06:31:12 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -13134,7 +13536,7 @@ Changed paths: Remove dir(path,real,int) since it is only needed internally. ------------------------------------------------------------------------ -r3192 | jcbowman | 2008-06-24 22:20:09 -0600 (Tue, 24 Jun 2008) | 2 lines +r3192 | jcbowman | 2008-06-25 06:20:09 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -13142,14 +13544,14 @@ Changed paths: Reinstate old inside function. ------------------------------------------------------------------------ -r3191 | jcbowman | 2008-06-24 17:53:38 -0600 (Tue, 24 Jun 2008) | 2 lines +r3191 | jcbowman | 2008-06-25 01:53:38 +0200 (Wed, 25 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Use lineintersections routine to implement inside. ------------------------------------------------------------------------ -r3190 | jcbowman | 2008-06-24 10:35:12 -0600 (Tue, 24 Jun 2008) | 4 lines +r3190 | jcbowman | 2008-06-24 18:35:12 +0200 (Tue, 24 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -13161,7 +13563,7 @@ Fix windingnumber by using robust predir and postdir functions. Expose dir(path,real,int). ------------------------------------------------------------------------ -r3189 | jcbowman | 2008-06-23 23:42:18 -0600 (Mon, 23 Jun 2008) | 3 lines +r3189 | jcbowman | 2008-06-24 07:42:18 +0200 (Tue, 24 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/solids.asy @@ -13174,7 +13576,7 @@ Add real[] ytimes(path g) function to return times at which path g reaches its minimum and maximum y extents. ------------------------------------------------------------------------ -r3188 | jcbowman | 2008-06-23 22:40:14 -0600 (Mon, 23 Jun 2008) | 2 lines +r3188 | jcbowman | 2008-06-24 06:40:14 +0200 (Tue, 24 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -13182,7 +13584,7 @@ Changed paths: Consolidate bounding box code. ------------------------------------------------------------------------ -r3187 | oshardt | 2008-06-23 18:04:57 -0600 (Mon, 23 Jun 2008) | 1 line +r3187 | oshardt | 2008-06-24 02:04:57 +0200 (Tue, 24 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRC.h M /trunk/asymptote/prc/PRCTools/describePRC.cc @@ -13190,7 +13592,7 @@ Changed paths: Correct handling of uncompressed files. Add enums to PRC.h ------------------------------------------------------------------------ -r3186 | jcbowman | 2008-06-23 17:48:23 -0600 (Mon, 23 Jun 2008) | 2 lines +r3186 | jcbowman | 2008-06-24 01:48:23 +0200 (Tue, 24 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -13199,21 +13601,21 @@ Changed paths: Increase minimal fuzz in intersections. ------------------------------------------------------------------------ -r3185 | jcbowman | 2008-06-23 15:03:49 -0600 (Mon, 23 Jun 2008) | 2 lines +r3185 | jcbowman | 2008-06-23 23:03:49 +0200 (Mon, 23 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/path.cc Increase fuzz to improve detection of roots at numerical infinity. ------------------------------------------------------------------------ -r3184 | jcbowman | 2008-06-23 11:18:40 -0600 (Mon, 23 Jun 2008) | 2 lines +r3184 | jcbowman | 2008-06-23 19:18:40 +0200 (Mon, 23 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in User -dSAFER also for deconstruction into png format. ------------------------------------------------------------------------ -r3183 | jcbowman | 2008-06-23 11:00:40 -0600 (Mon, 23 Jun 2008) | 2 lines +r3183 | jcbowman | 2008-06-23 19:00:40 +0200 (Mon, 23 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/memory.h @@ -13223,7 +13625,7 @@ Changed paths: By default run gs with -dSAFER. ------------------------------------------------------------------------ -r3182 | jcbowman | 2008-06-23 00:41:43 -0600 (Mon, 23 Jun 2008) | 2 lines +r3182 | jcbowman | 2008-06-23 08:41:43 +0200 (Mon, 23 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -13231,14 +13633,14 @@ Changed paths: Fix typo. ------------------------------------------------------------------------ -r3181 | jcbowman | 2008-06-23 00:31:13 -0600 (Mon, 23 Jun 2008) | 2 lines +r3181 | jcbowman | 2008-06-23 08:31:13 +0200 (Mon, 23 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Update link. ------------------------------------------------------------------------ -r3180 | jcbowman | 2008-06-22 23:26:30 -0600 (Sun, 22 Jun 2008) | 8 lines +r3180 | jcbowman | 2008-06-23 07:26:30 +0200 (Mon, 23 Jun 2008) | 8 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/plain_arcs.asy @@ -13260,14 +13662,14 @@ to return all intersection times of path p with the (infinite) line through points a and b. ------------------------------------------------------------------------ -r3179 | jcbowman | 2008-06-21 19:24:45 -0600 (Sat, 21 Jun 2008) | 2 lines +r3179 | jcbowman | 2008-06-22 03:24:45 +0200 (Sun, 22 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/process.cc Fix -listvariables. ------------------------------------------------------------------------ -r3178 | jcbowman | 2008-06-21 14:46:23 -0600 (Sat, 21 Jun 2008) | 2 lines +r3178 | jcbowman | 2008-06-21 22:46:23 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/math.asy @@ -13280,7 +13682,7 @@ Changed paths: Use new intersection routines; handle degenerate cases. ------------------------------------------------------------------------ -r3177 | jcbowman | 2008-06-21 14:36:53 -0600 (Sat, 21 Jun 2008) | 2 lines +r3177 | jcbowman | 2008-06-21 22:36:53 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/process.h @@ -13289,49 +13691,49 @@ Changed paths: Use a process-specific currentpen. ------------------------------------------------------------------------ -r3176 | jcbowman | 2008-06-21 12:24:39 -0600 (Sat, 21 Jun 2008) | 2 lines +r3176 | jcbowman | 2008-06-21 20:24:39 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/Gouraudcontour.asy Update example. ------------------------------------------------------------------------ -r3175 | jcbowman | 2008-06-20 22:49:58 -0600 (Fri, 20 Jun 2008) | 2 lines +r3175 | jcbowman | 2008-06-21 06:49:58 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix roll parameter. ------------------------------------------------------------------------ -r3174 | jcbowman | 2008-06-20 19:34:56 -0600 (Fri, 20 Jun 2008) | 2 lines +r3174 | jcbowman | 2008-06-21 03:34:56 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Rename intersectionsline to lineintersections. ------------------------------------------------------------------------ -r3173 | jcbowman | 2008-06-20 16:56:05 -0600 (Fri, 20 Jun 2008) | 2 lines +r3173 | jcbowman | 2008-06-21 00:56:05 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Fix and standardize new intersection routines. ------------------------------------------------------------------------ -r3172 | jcbowman | 2008-06-20 16:12:09 -0600 (Fri, 20 Jun 2008) | 2 lines +r3172 | jcbowman | 2008-06-21 00:12:09 +0200 (Sat, 21 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Improve intersection routines. ------------------------------------------------------------------------ -r3171 | jcbowman | 2008-06-20 12:04:45 -0600 (Fri, 20 Jun 2008) | 2 lines +r3171 | jcbowman | 2008-06-20 20:04:45 +0200 (Fri, 20 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix front/back detection when rotating about a point. ------------------------------------------------------------------------ -r3170 | jcbowman | 2008-06-20 10:41:31 -0600 (Fri, 20 Jun 2008) | 2 lines +r3170 | jcbowman | 2008-06-20 18:41:31 +0200 (Fri, 20 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/stats.asy @@ -13343,7 +13745,7 @@ Changed paths: Move unitrand to C++ code to avoid dependency on stats.asy. ------------------------------------------------------------------------ -r3169 | jcbowman | 2008-06-20 10:23:21 -0600 (Fri, 20 Jun 2008) | 3 lines +r3169 | jcbowman | 2008-06-20 18:23:21 +0200 (Fri, 20 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy @@ -13351,7 +13753,7 @@ Implement improved version of intersections(point, pair p, pair q) that returns all intersection times with the (infinite) line through p and q. ------------------------------------------------------------------------ -r3168 | jcbowman | 2008-06-20 01:44:26 -0600 (Fri, 20 Jun 2008) | 2 lines +r3168 | jcbowman | 2008-06-20 09:44:26 +0200 (Fri, 20 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/plain_paths.asy @@ -13359,7 +13761,7 @@ Changed paths: Add routine to compute the intersection times of a path and a line segment. ------------------------------------------------------------------------ -r3167 | jcbowman | 2008-06-20 00:38:55 -0600 (Fri, 20 Jun 2008) | 5 lines +r3167 | jcbowman | 2008-06-20 08:38:55 +0200 (Fri, 20 Jun 2008) | 5 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/embed.asy @@ -13381,14 +13783,14 @@ exitfunction (used to clean up intermediate files). Don't force settings.outformat="pdf" in three.asy. ------------------------------------------------------------------------ -r3166 | jcbowman | 2008-06-20 00:07:38 -0600 (Fri, 20 Jun 2008) | 2 lines +r3166 | jcbowman | 2008-06-20 08:07:38 +0200 (Fri, 20 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Simplify nodes(int). ------------------------------------------------------------------------ -r3165 | jcbowman | 2008-06-19 23:42:32 -0600 (Thu, 19 Jun 2008) | 6 lines +r3165 | jcbowman | 2008-06-20 07:42:32 +0200 (Fri, 20 Jun 2008) | 6 lines Changed paths: M /trunk/asymptote/base/surface.asy M /trunk/asymptote/base/three.asy @@ -13401,21 +13803,21 @@ Add constructors to surface.asy. Add example of 3D extruded label contributed by Philippe Ivaldi. ------------------------------------------------------------------------ -r3164 | jcbowman | 2008-06-19 22:38:42 -0600 (Thu, 19 Jun 2008) | 2 lines +r3164 | jcbowman | 2008-06-20 06:38:42 +0200 (Fri, 20 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/prc/oPRCFile.cc Remove granularity for improved rendering. ------------------------------------------------------------------------ -r3163 | jcbowman | 2008-06-19 15:43:45 -0600 (Thu, 19 Jun 2008) | 2 lines +r3163 | jcbowman | 2008-06-19 23:43:45 +0200 (Thu, 19 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/logo.asy Replace axis call by explicit draw commands. ------------------------------------------------------------------------ -r3162 | oshardt | 2008-06-19 15:04:04 -0600 (Thu, 19 Jun 2008) | 1 line +r3162 | oshardt | 2008-06-19 23:04:04 +0200 (Thu, 19 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRCbitStream.cc M /trunk/asymptote/prc/PRCbitStream.h @@ -13424,13 +13826,13 @@ Changed paths: Fix PRCbitStream::getSize(). ------------------------------------------------------------------------ -r3161 | oshardt | 2008-06-19 14:33:11 -0600 (Thu, 19 Jun 2008) | 1 line +r3161 | oshardt | 2008-06-19 22:33:11 +0200 (Thu, 19 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRCTools/inflation.cc Fix decompress(). ------------------------------------------------------------------------ -r3160 | jcbowman | 2008-06-19 00:24:51 -0600 (Thu, 19 Jun 2008) | 4 lines +r3160 | jcbowman | 2008-06-19 08:24:51 +0200 (Thu, 19 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -13439,7 +13841,7 @@ Fix prc file count issue. Add preliminary support for 3d fonts. ------------------------------------------------------------------------ -r3159 | jcbowman | 2008-06-18 22:31:55 -0600 (Wed, 18 Jun 2008) | 2 lines +r3159 | jcbowman | 2008-06-19 06:31:55 +0200 (Thu, 19 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -13448,7 +13850,7 @@ Changed paths: Fix projection units. ------------------------------------------------------------------------ -r3158 | jcbowman | 2008-06-18 22:12:40 -0600 (Wed, 18 Jun 2008) | 2 lines +r3158 | jcbowman | 2008-06-19 06:12:40 +0200 (Thu, 19 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_pens.asy @@ -13458,7 +13860,7 @@ Changed paths: Add texpath support for alignment and transforms. ------------------------------------------------------------------------ -r3157 | jcbowman | 2008-06-18 22:10:43 -0600 (Wed, 18 Jun 2008) | 2 lines +r3157 | jcbowman | 2008-06-19 06:10:43 +0200 (Thu, 19 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/process.cc @@ -13466,20 +13868,20 @@ Changed paths: Simplify reset. ------------------------------------------------------------------------ -r3156 | oshardt | 2008-06-18 21:00:40 -0600 (Wed, 18 Jun 2008) | 1 line +r3156 | oshardt | 2008-06-19 05:00:40 +0200 (Thu, 19 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/examples/teapot.asy Fix teapot example ------------------------------------------------------------------------ -r3155 | jcbowman | 2008-06-18 15:17:02 -0600 (Wed, 18 Jun 2008) | 2 lines +r3155 | jcbowman | 2008-06-18 23:17:02 +0200 (Wed, 18 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Avoid opening up an X11 window in texpath; use epswrite device instead. ------------------------------------------------------------------------ -r3154 | jcbowman | 2008-06-18 14:56:22 -0600 (Wed, 18 Jun 2008) | 2 lines +r3154 | jcbowman | 2008-06-18 22:56:22 +0200 (Wed, 18 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -13487,7 +13889,7 @@ Changed paths: Add erase(frame) function. ------------------------------------------------------------------------ -r3153 | jcbowman | 2008-06-18 13:02:13 -0600 (Wed, 18 Jun 2008) | 4 lines +r3153 | jcbowman | 2008-06-18 21:02:13 +0200 (Wed, 18 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/texfile.cc @@ -13498,28 +13900,28 @@ Make texpath work also with sqrt, fractions, and arrows. Add pen argument to texpath. ------------------------------------------------------------------------ -r3152 | oshardt | 2008-06-18 12:51:32 -0600 (Wed, 18 Jun 2008) | 1 line +r3152 | oshardt | 2008-06-18 20:51:32 +0200 (Wed, 18 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/teapot.asy Use cm as units of camera properties. ------------------------------------------------------------------------ -r3151 | oshardt | 2008-06-18 11:05:14 -0600 (Wed, 18 Jun 2008) | 1 line +r3151 | oshardt | 2008-06-18 19:05:14 +0200 (Wed, 18 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/prc/oPRCFile.cc M /trunk/asymptote/prc/writePRC.cc In PRC, always write at least 1 bit of user data. ------------------------------------------------------------------------ -r3150 | jcbowman | 2008-06-18 10:20:19 -0600 (Wed, 18 Jun 2008) | 2 lines +r3150 | jcbowman | 2008-06-18 18:20:19 +0200 (Wed, 18 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/graphmarkers.asy Fix formatting. ------------------------------------------------------------------------ -r3149 | jcbowman | 2008-06-18 10:18:11 -0600 (Wed, 18 Jun 2008) | 2 lines +r3149 | jcbowman | 2008-06-18 18:18:11 +0200 (Wed, 18 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/graphmarkers.asy @@ -13527,14 +13929,14 @@ Changed paths: Add example of custom mark routine. ------------------------------------------------------------------------ -r3148 | jcbowman | 2008-06-18 09:45:35 -0600 (Wed, 18 Jun 2008) | 2 lines +r3148 | jcbowman | 2008-06-18 17:45:35 +0200 (Wed, 18 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Move default currentpen argument to C++ code. ------------------------------------------------------------------------ -r3147 | jcbowman | 2008-06-17 22:45:59 -0600 (Tue, 17 Jun 2008) | 3 lines +r3147 | jcbowman | 2008-06-18 06:45:59 +0200 (Wed, 18 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy M /trunk/asymptote/base/plain_picture.asy @@ -13555,7 +13957,7 @@ Add boolean stroke parameter to shading (and clipping) routines to shading of (and clipping to) stroked paths. ------------------------------------------------------------------------ -r3146 | jcbowman | 2008-06-17 22:08:40 -0600 (Tue, 17 Jun 2008) | 3 lines +r3146 | jcbowman | 2008-06-18 06:08:40 +0200 (Wed, 18 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/BezierSurface.asy @@ -13564,13 +13966,13 @@ Add routine projection perspective(string s) routine to extract current camera parameters from cameralink (Viewpoint). ------------------------------------------------------------------------ -r3145 | oshardt | 2008-06-17 13:02:33 -0600 (Tue, 17 Jun 2008) | 1 line +r3145 | oshardt | 2008-06-17 21:02:33 +0200 (Tue, 17 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/examples/teapot.asy Resize and give the teapot a bottom. ------------------------------------------------------------------------ -r3144 | oshardt | 2008-06-17 12:09:30 -0600 (Tue, 17 Jun 2008) | 1 line +r3144 | oshardt | 2008-06-17 20:09:30 +0200 (Tue, 17 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyCodeEditor.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -13579,13 +13981,13 @@ Changed paths: Use external editor to edit code. ------------------------------------------------------------------------ -r3143 | oshardt | 2008-06-16 17:21:07 -0600 (Mon, 16 Jun 2008) | 1 line +r3143 | oshardt | 2008-06-17 01:21:07 +0200 (Tue, 17 Jun 2008) | 1 line Changed paths: A /trunk/asymptote/prc/PRCTools/makePRC.cc Remove unnecessary casts. ------------------------------------------------------------------------ -r3142 | oshardt | 2008-06-16 17:19:44 -0600 (Mon, 16 Jun 2008) | 1 line +r3142 | oshardt | 2008-06-17 01:19:44 +0200 (Tue, 17 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/prc/PRCTools/Makefile M /trunk/asymptote/prc/oPRCFile.cc @@ -13593,7 +13995,7 @@ Changed paths: Remove unnecessary casts. ------------------------------------------------------------------------ -r3141 | jcbowman | 2008-06-16 13:29:25 -0600 (Mon, 16 Jun 2008) | 2 lines +r3141 | jcbowman | 2008-06-16 21:29:25 +0200 (Mon, 16 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/texfile.cc @@ -13602,14 +14004,14 @@ Changed paths: Fix and simplify texpath. ------------------------------------------------------------------------ -r3140 | jcbowman | 2008-06-16 11:11:55 -0600 (Mon, 16 Jun 2008) | 2 lines +r3140 | jcbowman | 2008-06-16 19:11:55 +0200 (Mon, 16 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Use C locale for formatting embed arguments. ------------------------------------------------------------------------ -r3139 | jcbowman | 2008-06-16 11:08:31 -0600 (Mon, 16 Jun 2008) | 3 lines +r3139 | jcbowman | 2008-06-16 19:08:31 +0200 (Mon, 16 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/picture.h @@ -13621,49 +14023,49 @@ Add path[][] texpath(string s) routine to convert string into the paths that TeX would fill. ------------------------------------------------------------------------ -r3138 | jcbowman | 2008-06-16 11:06:41 -0600 (Mon, 16 Jun 2008) | 2 lines +r3138 | jcbowman | 2008-06-16 19:06:41 +0200 (Mon, 16 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/BezierSurface.asy Add camera view link. ------------------------------------------------------------------------ -r3137 | jcbowman | 2008-06-16 01:12:34 -0600 (Mon, 16 Jun 2008) | 2 lines +r3137 | jcbowman | 2008-06-16 09:12:34 +0200 (Mon, 16 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Implement better fix for basealign bounding box bug. ------------------------------------------------------------------------ -r3136 | jcbowman | 2008-06-15 17:08:11 -0600 (Sun, 15 Jun 2008) | 2 lines +r3136 | jcbowman | 2008-06-16 01:08:11 +0200 (Mon, 16 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Fix bounding box with basealign pen. ------------------------------------------------------------------------ -r3135 | jcbowman | 2008-06-15 10:32:44 -0600 (Sun, 15 Jun 2008) | 2 lines +r3135 | jcbowman | 2008-06-15 18:32:44 +0200 (Sun, 15 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Use static constant. ------------------------------------------------------------------------ -r3134 | jcbowman | 2008-06-15 10:30:17 -0600 (Sun, 15 Jun 2008) | 2 lines +r3134 | jcbowman | 2008-06-15 18:30:17 +0200 (Sun, 15 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy For orthographic/oblique projections, move camera further from origin. ------------------------------------------------------------------------ -r3133 | jcbowman | 2008-06-14 10:12:59 -0600 (Sat, 14 Jun 2008) | 2 lines +r3133 | jcbowman | 2008-06-14 18:12:59 +0200 (Sat, 14 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Minor diagnostic improvements. ------------------------------------------------------------------------ -r3132 | jcbowman | 2008-06-14 10:04:27 -0600 (Sat, 14 Jun 2008) | 2 lines +r3132 | jcbowman | 2008-06-14 18:04:27 +0200 (Sat, 14 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/base/three.asy @@ -13671,14 +14073,14 @@ Changed paths: Avoid dereferencing null function. ------------------------------------------------------------------------ -r3131 | jcbowman | 2008-06-14 09:34:00 -0600 (Sat, 14 Jun 2008) | 2 lines +r3131 | jcbowman | 2008-06-14 17:34:00 +0200 (Sat, 14 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix bug in face routines for orthographic and oblique projections. ------------------------------------------------------------------------ -r3130 | oshardt | 2008-06-13 17:54:42 -0600 (Fri, 13 Jun 2008) | 1 line +r3130 | oshardt | 2008-06-14 01:54:42 +0200 (Sat, 14 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/examples/teapot.asy M /trunk/asymptote/prc/oPRCFile.cc @@ -13686,14 +14088,14 @@ Changed paths: Fix IDs in PRC files. ------------------------------------------------------------------------ -r3129 | jcbowman | 2008-06-13 16:12:17 -0600 (Fri, 13 Jun 2008) | 2 lines +r3129 | jcbowman | 2008-06-14 00:12:17 +0200 (Sat, 14 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Get PRC initial camera settings from projection. ------------------------------------------------------------------------ -r3128 | jcbowman | 2008-06-13 08:15:38 -0600 (Fri, 13 Jun 2008) | 2 lines +r3128 | jcbowman | 2008-06-13 16:15:38 +0200 (Fri, 13 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/base/three.asy @@ -13701,21 +14103,21 @@ Changed paths: Clean up temporary files. ------------------------------------------------------------------------ -r3127 | hammera | 2008-06-13 00:16:39 -0600 (Fri, 13 Jun 2008) | 2 lines +r3127 | hammera | 2008-06-13 08:16:39 +0200 (Fri, 13 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/tests/types/shadow.asy Added semicolons. ------------------------------------------------------------------------ -r3126 | hammera | 2008-06-12 22:56:47 -0600 (Thu, 12 Jun 2008) | 2 lines +r3126 | hammera | 2008-06-13 06:56:47 +0200 (Fri, 13 Jun 2008) | 2 lines Changed paths: A /trunk/asymptote/tests/types/shadow.asy Test access of shadowed variables by higher-order functions. ------------------------------------------------------------------------ -r3125 | jcbowman | 2008-06-12 22:53:27 -0600 (Thu, 12 Jun 2008) | 2 lines +r3125 | jcbowman | 2008-06-13 06:53:27 +0200 (Fri, 13 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/array.h @@ -13743,14 +14145,14 @@ Changed paths: Add support for basic PRC operations (drawpath3 and drawsurface). ------------------------------------------------------------------------ -r3124 | jcbowman | 2008-06-12 22:50:22 -0600 (Thu, 12 Jun 2008) | 2 lines +r3124 | jcbowman | 2008-06-13 06:50:22 +0200 (Fri, 13 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Wait for pdfviewer to exit before restarting it. ------------------------------------------------------------------------ -r3123 | oshardt | 2008-06-12 21:01:36 -0600 (Thu, 12 Jun 2008) | 1 line +r3123 | oshardt | 2008-06-13 05:01:36 +0200 (Fri, 13 Jun 2008) | 1 line Changed paths: A /trunk/asymptote/prc A /trunk/asymptote/prc/Makefile @@ -13782,7 +14184,7 @@ Changed paths: Import code that implements support for saving 3D content to PRC files. ------------------------------------------------------------------------ -r3122 | jcbowman | 2008-06-12 18:10:31 -0600 (Thu, 12 Jun 2008) | 3 lines +r3122 | jcbowman | 2008-06-13 02:10:31 +0200 (Fri, 13 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -13790,34 +14192,34 @@ Since Adobe Acrobat doesn't yet have a file-watching capability, kill a running pdfviewer so that a file can be redrawn in interactive mode. ------------------------------------------------------------------------ -r3121 | jcbowman | 2008-06-12 10:00:47 -0600 (Thu, 12 Jun 2008) | 2 lines +r3121 | jcbowman | 2008-06-12 18:00:47 +0200 (Thu, 12 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Make asymptote.sty work with the hebrew babel package. ------------------------------------------------------------------------ -r3120 | jcbowman | 2008-06-12 09:16:07 -0600 (Thu, 12 Jun 2008) | 2 lines +r3120 | jcbowman | 2008-06-12 17:16:07 +0200 (Thu, 12 Jun 2008) | 2 lines Changed paths: A /trunk/asymptote/examples/logdown.asy Add example of downward-pointing logarithmic axis. ------------------------------------------------------------------------ -r3119 | jcbowman | 2008-06-12 03:23:19 -0600 (Thu, 12 Jun 2008) | 1 line +r3119 | jcbowman | 2008-06-12 11:23:19 +0200 (Thu, 12 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.44svn. ------------------------------------------------------------------------ -r3118 | jcbowman | 2008-06-12 01:26:49 -0600 (Thu, 12 Jun 2008) | 2 lines +r3118 | jcbowman | 2008-06-12 09:26:49 +0200 (Thu, 12 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Use international inch also in C++ code. ------------------------------------------------------------------------ -r3117 | jcbowman | 2008-06-12 00:54:14 -0600 (Thu, 12 Jun 2008) | 4 lines +r3117 | jcbowman | 2008-06-12 08:54:14 +0200 (Thu, 12 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/runtime.in @@ -13826,7 +14228,7 @@ Fix potential segmentation fault in store_history. Move uptodate=true back to the beginning of shipout to avoid a race condition. ------------------------------------------------------------------------ -r3116 | jcbowman | 2008-06-12 00:14:14 -0600 (Thu, 12 Jun 2008) | 3 lines +r3116 | jcbowman | 2008-06-12 08:14:14 +0200 (Thu, 12 Jun 2008) | 3 lines Changed paths: A /trunk/asymptote/base/size10.asy A /trunk/asymptote/base/size11.asy @@ -13835,21 +14237,21 @@ Add modules to redefine LaTeX named fontsizes to correspond to \documentclass[10pt]{article} and \documentclass[11pt]{article}, respectively. ------------------------------------------------------------------------ -r3115 | jcbowman | 2008-06-11 15:45:16 -0600 (Wed, 11 Jun 2008) | 2 lines +r3115 | jcbowman | 2008-06-11 23:45:16 +0200 (Wed, 11 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy Use international inch conversion factor. ------------------------------------------------------------------------ -r3114 | jcbowman | 2008-06-10 08:14:59 -0600 (Tue, 10 Jun 2008) | 2 lines +r3114 | jcbowman | 2008-06-10 16:14:59 +0200 (Tue, 10 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add missing path3[] operator * (transform3 t, path3[] p). ------------------------------------------------------------------------ -r3113 | jcbowman | 2008-06-09 00:59:31 -0600 (Mon, 09 Jun 2008) | 2 lines +r3113 | jcbowman | 2008-06-09 08:59:31 +0200 (Mon, 09 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -13861,7 +14263,7 @@ Changed paths: Add optional support for Jonathan Shewchuk's more robust triangulation routines. ------------------------------------------------------------------------ -r3112 | jcbowman | 2008-06-08 22:56:41 -0600 (Sun, 08 Jun 2008) | 2 lines +r3112 | jcbowman | 2008-06-09 06:56:41 +0200 (Mon, 09 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/contour3.asy @@ -13871,7 +14273,7 @@ Changed paths: Add interface for drawing contours on arbitrary nonoverlapping meshes. ------------------------------------------------------------------------ -r3111 | jcbowman | 2008-06-07 22:36:27 -0600 (Sat, 07 Jun 2008) | 3 lines +r3111 | jcbowman | 2008-06-08 06:36:27 +0200 (Sun, 08 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -13880,7 +14282,7 @@ Remove transform return value from add functions in favour of user-supplied add routine. ------------------------------------------------------------------------ -r3110 | jcbowman | 2008-06-07 10:49:54 -0600 (Sat, 07 Jun 2008) | 2 lines +r3110 | jcbowman | 2008-06-07 18:49:54 +0200 (Sat, 07 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -13889,20 +14291,20 @@ Changed paths: Move draw(path[], pen[]) to plain_picture.asy. ------------------------------------------------------------------------ -r3109 | pivaldi | 2008-06-07 10:02:20 -0600 (Sat, 07 Jun 2008) | 1 line +r3109 | pivaldi | 2008-06-07 18:02:20 +0200 (Sat, 07 Jun 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el asy-mode.el: add asy to regexp matching environments with indentation at col 0 for begin/end. ------------------------------------------------------------------------ -r3108 | jcbowman | 2008-06-06 12:18:07 -0600 (Fri, 06 Jun 2008) | 2 lines +r3108 | jcbowman | 2008-06-06 20:18:07 +0200 (Fri, 06 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Remove "paths in concatenation do not meet" also from three.asy. ------------------------------------------------------------------------ -r3107 | jcbowman | 2008-06-06 10:59:22 -0600 (Fri, 06 Jun 2008) | 3 lines +r3107 | jcbowman | 2008-06-06 18:59:22 +0200 (Fri, 06 Jun 2008) | 3 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -13911,7 +14313,7 @@ Return the transform that maps source coordinates to destination coordinates in add and attach. ------------------------------------------------------------------------ -r3106 | jcbowman | 2008-06-06 10:56:10 -0600 (Fri, 06 Jun 2008) | 4 lines +r3106 | jcbowman | 2008-06-06 18:56:10 +0200 (Fri, 06 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/base/plain_shipout.asy @@ -13922,28 +14324,28 @@ Move uptodate=true to runtime. Improve diagnostics about incompatible array lengths. ------------------------------------------------------------------------ -r3105 | jcbowman | 2008-06-06 09:52:43 -0600 (Fri, 06 Jun 2008) | 2 lines +r3105 | jcbowman | 2008-06-06 17:52:43 +0200 (Fri, 06 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/process.cc Make interrupts set uptodate=true to avoid spurious shipouts. ------------------------------------------------------------------------ -r3104 | jcbowman | 2008-06-06 09:51:37 -0600 (Fri, 06 Jun 2008) | 2 lines +r3104 | jcbowman | 2008-06-06 17:51:37 +0200 (Fri, 06 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix secondary axis tick selection when automin=false. ------------------------------------------------------------------------ -r3103 | hammera | 2008-06-05 15:45:47 -0600 (Thu, 05 Jun 2008) | 2 lines +r3103 | hammera | 2008-06-05 23:45:47 +0200 (Thu, 05 Jun 2008) | 2 lines Changed paths: A /trunk/asymptote/doc/external-proposal.html A preliminary proposal for how to defined Asymptote modules in C++. ------------------------------------------------------------------------ -r3102 | jcbowman | 2008-06-05 08:58:18 -0600 (Thu, 05 Jun 2008) | 4 lines +r3102 | jcbowman | 2008-06-05 16:58:18 +0200 (Thu, 05 Jun 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.h @@ -13956,21 +14358,21 @@ Allow precision setting to be queried. Write paths to the specified precision setting for a file. ------------------------------------------------------------------------ -r3101 | jcbowman | 2008-06-05 08:35:35 -0600 (Thu, 05 Jun 2008) | 2 lines +r3101 | jcbowman | 2008-06-05 16:35:35 +0200 (Thu, 05 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Add expm1 function. ------------------------------------------------------------------------ -r3100 | jcbowman | 2008-06-05 08:34:21 -0600 (Thu, 05 Jun 2008) | 2 lines +r3100 | jcbowman | 2008-06-05 16:34:21 +0200 (Thu, 05 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/triads.asy Add labels to example. ------------------------------------------------------------------------ -r3099 | jcbowman | 2008-06-04 22:28:22 -0600 (Wed, 04 Jun 2008) | 2 lines +r3099 | jcbowman | 2008-06-05 06:28:22 +0200 (Thu, 05 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -13980,14 +14382,14 @@ Changed paths: Always draw 2D axes below picture by default. ------------------------------------------------------------------------ -r3098 | jcbowman | 2008-06-04 21:00:36 -0600 (Wed, 04 Jun 2008) | 2 lines +r3098 | jcbowman | 2008-06-05 05:00:36 +0200 (Thu, 05 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Simplify font variable definitions. ------------------------------------------------------------------------ -r3097 | jcbowman | 2008-06-04 20:34:59 -0600 (Wed, 04 Jun 2008) | 2 lines +r3097 | jcbowman | 2008-06-05 04:34:59 +0200 (Thu, 05 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/texfile.h @@ -13995,14 +14397,14 @@ Changed paths: Restore to correct initial font. ------------------------------------------------------------------------ -r3096 | jcbowman | 2008-06-04 14:50:26 -0600 (Wed, 04 Jun 2008) | 2 lines +r3096 | jcbowman | 2008-06-04 22:50:26 +0200 (Wed, 04 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/memory.h Add missing # sign. ------------------------------------------------------------------------ -r3095 | hammera | 2008-06-03 21:54:04 -0600 (Tue, 03 Jun 2008) | 2 lines +r3095 | hammera | 2008-06-04 05:54:04 +0200 (Wed, 04 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/entry.h M /trunk/asymptote/env.cc @@ -14015,14 +14417,14 @@ Changed paths: Removed matchCache entirely. ------------------------------------------------------------------------ -r3094 | jcbowman | 2008-06-03 20:14:07 -0600 (Tue, 03 Jun 2008) | 2 lines +r3094 | jcbowman | 2008-06-04 04:14:07 +0200 (Wed, 04 Jun 2008) | 2 lines Changed paths: M /trunk/asymptote/memory.h Handle undefined __GNU_C_PREREQ macros. ------------------------------------------------------------------------ -r3093 | hammera | 2008-05-31 05:55:05 -0600 (Sat, 31 May 2008) | 2 lines +r3093 | hammera | 2008-05-31 13:55:05 +0200 (Sat, 31 May 2008) | 2 lines Changed paths: M /trunk/asymptote/exp.cc A /trunk/asymptote/tests/types/resolve.asy @@ -14030,14 +14432,14 @@ Changed paths: Disabled matchCaching dur to improperly handled cases. ------------------------------------------------------------------------ -r3092 | hammera | 2008-05-31 05:54:24 -0600 (Sat, 31 May 2008) | 2 lines +r3092 | hammera | 2008-05-31 13:54:24 +0200 (Sat, 31 May 2008) | 2 lines Changed paths: M /trunk/asymptote/TODO Ideas about unicode. ------------------------------------------------------------------------ -r3091 | jcbowman | 2008-05-27 00:36:08 -0600 (Tue, 27 May 2008) | 2 lines +r3091 | jcbowman | 2008-05-27 08:36:08 +0200 (Tue, 27 May 2008) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/memory.h @@ -14046,7 +14448,7 @@ Changed paths: Work around broken gcc-4.1.2 tr1 headers. ------------------------------------------------------------------------ -r3090 | jcbowman | 2008-05-26 23:41:28 -0600 (Mon, 26 May 2008) | 1 line +r3090 | jcbowman | 2008-05-27 07:41:28 +0200 (Tue, 27 May 2008) | 1 line Changed paths: M /trunk/asymptote/Delaunay.h M /trunk/asymptote/entry.h @@ -14061,14 +14463,14 @@ Changed paths: Port to gcc-4.3.0. ------------------------------------------------------------------------ -r3089 | jcbowman | 2008-05-26 15:09:53 -0600 (Mon, 26 May 2008) | 2 lines +r3089 | jcbowman | 2008-05-26 23:09:53 +0200 (Mon, 26 May 2008) | 2 lines Changed paths: A /trunk/asymptote/base/ode.asy Add beginnings of an ode package. ------------------------------------------------------------------------ -r3088 | jcbowman | 2008-05-22 01:02:23 -0600 (Thu, 22 May 2008) | 3 lines +r3088 | jcbowman | 2008-05-22 09:02:23 +0200 (Thu, 22 May 2008) | 3 lines Changed paths: M /trunk/asymptote/base/math.asy @@ -14076,7 +14478,7 @@ Make partialsum return an array of the same length as its argument (this is a backwards incompatible change). ------------------------------------------------------------------------ -r3087 | jcbowman | 2008-05-07 22:52:35 -0600 (Wed, 07 May 2008) | 2 lines +r3087 | jcbowman | 2008-05-08 06:52:35 +0200 (Thu, 08 May 2008) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/asymptote.spec @@ -14086,14 +14488,14 @@ Changed paths: Update to gc-7.1. ------------------------------------------------------------------------ -r3086 | jcbowman | 2008-05-07 22:50:36 -0600 (Wed, 07 May 2008) | 2 lines +r3086 | jcbowman | 2008-05-08 06:50:36 +0200 (Thu, 08 May 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Return immediately for negative sleep arguments. ------------------------------------------------------------------------ -r3085 | jcbowman | 2008-05-07 22:49:52 -0600 (Wed, 07 May 2008) | 2 lines +r3085 | jcbowman | 2008-05-08 06:49:52 +0200 (Thu, 08 May 2008) | 2 lines Changed paths: D /trunk/asymptote/examples/cardiod.asy A /trunk/asymptote/examples/cardioid.asy (from /trunk/asymptote/examples/cardiod.asy:3080) @@ -14101,34 +14503,34 @@ Changed paths: Fix spelling of cardioid. ------------------------------------------------------------------------ -r3084 | jcbowman | 2008-05-07 22:49:21 -0600 (Wed, 07 May 2008) | 2 lines +r3084 | jcbowman | 2008-05-08 06:49:21 +0200 (Thu, 08 May 2008) | 2 lines Changed paths: M /trunk/asymptote/base/embed.asy Update URL. ------------------------------------------------------------------------ -r3083 | oshardt | 2008-04-28 17:39:58 -0600 (Mon, 28 Apr 2008) | 1 line +r3083 | oshardt | 2008-04-29 01:39:58 +0200 (Tue, 29 Apr 2008) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Update links to TeX resources. ------------------------------------------------------------------------ -r3082 | jcbowman | 2008-03-29 17:18:30 -0600 (Sat, 29 Mar 2008) | 2 lines +r3082 | jcbowman | 2008-03-30 00:18:30 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/generalaxis3.asy Temporary fix for tick directions. ------------------------------------------------------------------------ -r3081 | jcbowman | 2008-03-29 17:17:47 -0600 (Sat, 29 Mar 2008) | 2 lines +r3081 | jcbowman | 2008-03-30 00:17:47 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Add missing index entry for array. ------------------------------------------------------------------------ -r3080 | jcbowman | 2008-03-29 17:10:46 -0600 (Sat, 29 Mar 2008) | 2 lines +r3080 | jcbowman | 2008-03-30 00:10:46 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/multicontour.asy M /trunk/asymptote/examples/gamma.asy @@ -14136,49 +14538,49 @@ Changed paths: Simplfify examples. ------------------------------------------------------------------------ -r3079 | jcbowman | 2008-03-29 17:08:57 -0600 (Sat, 29 Mar 2008) | 2 lines +r3079 | jcbowman | 2008-03-30 00:08:57 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/castop.h Improve bad string cast diagnostics. ------------------------------------------------------------------------ -r3078 | jcbowman | 2008-03-29 17:08:34 -0600 (Sat, 29 Mar 2008) | 2 lines +r3078 | jcbowman | 2008-03-30 00:08:34 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Add drawing routines for guide[] g. ------------------------------------------------------------------------ -r3077 | jcbowman | 2008-03-29 17:06:54 -0600 (Sat, 29 Mar 2008) | 2 lines +r3077 | jcbowman | 2008-03-30 00:06:54 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Add path[] operator cast(guide[] g) cast. ------------------------------------------------------------------------ -r3076 | jcbowman | 2008-03-29 17:06:20 -0600 (Sat, 29 Mar 2008) | 2 lines +r3076 | jcbowman | 2008-03-30 00:06:20 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy Add draw(frame f, guide[] g, pen p=currentpen) routine. ------------------------------------------------------------------------ -r3075 | jcbowman | 2008-03-29 17:04:45 -0600 (Sat, 29 Mar 2008) | 2 lines +r3075 | jcbowman | 2008-03-30 00:04:45 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy Simplify definition of endl. ------------------------------------------------------------------------ -r3074 | jcbowman | 2008-03-29 17:03:50 -0600 (Sat, 29 Mar 2008) | 2 lines +r3074 | jcbowman | 2008-03-30 00:03:50 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Move title down slightly. ------------------------------------------------------------------------ -r3073 | jcbowman | 2008-03-29 17:02:59 -0600 (Sat, 29 Mar 2008) | 2 lines +r3073 | jcbowman | 2008-03-30 00:02:59 +0100 (Sun, 30 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -14186,14 +14588,14 @@ Changed paths: Add void beep() function; document flush output suffix. ------------------------------------------------------------------------ -r3072 | jcbowman | 2008-03-29 16:59:31 -0600 (Sat, 29 Mar 2008) | 2 lines +r3072 | jcbowman | 2008-03-29 23:59:31 +0100 (Sat, 29 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy Add real[] operator ecast(string[] a). ------------------------------------------------------------------------ -r3071 | jcbowman | 2008-03-26 21:35:28 -0600 (Wed, 26 Mar 2008) | 4 lines +r3071 | jcbowman | 2008-03-27 04:35:28 +0100 (Thu, 27 Mar 2008) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -14202,7 +14604,7 @@ Make tickmin a multiple of Step when automin=false. Don't override put=Above default for extended axes. ------------------------------------------------------------------------ -r3070 | hammera | 2008-03-21 21:45:32 -0600 (Fri, 21 Mar 2008) | 2 lines +r3070 | hammera | 2008-03-22 04:45:32 +0100 (Sat, 22 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/array.cc M /trunk/asymptote/array.h @@ -14215,7 +14617,7 @@ Changed paths: Added array(n, value) function for making arrays of duplicates. ------------------------------------------------------------------------ -r3069 | jcbowman | 2008-03-21 09:56:10 -0600 (Fri, 21 Mar 2008) | 3 lines +r3069 | jcbowman | 2008-03-21 16:56:10 +0100 (Fri, 21 Mar 2008) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -14223,21 +14625,21 @@ Force the default -D 600 dvips setting for proper label alignment (should have no other effect since we are not using bitmapped fonts). ------------------------------------------------------------------------ -r3068 | oshardt | 2008-03-11 21:58:22 -0600 (Tue, 11 Mar 2008) | 1 line +r3068 | oshardt | 2008-03-12 04:58:22 +0100 (Wed, 12 Mar 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyBezierEditor.py M /trunk/asymptote/GUI/xasyMainWin.py Fix handling of undo/redo while in bezier editing mode. ------------------------------------------------------------------------ -r3067 | jcbowman | 2008-03-11 08:45:01 -0600 (Tue, 11 Mar 2008) | 2 lines +r3067 | jcbowman | 2008-03-11 15:45:01 +0100 (Tue, 11 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Force setdash when offset changes. ------------------------------------------------------------------------ -r3066 | jcbowman | 2008-03-02 16:19:55 -0700 (Sun, 02 Mar 2008) | 5 lines +r3066 | jcbowman | 2008-03-03 00:19:55 +0100 (Mon, 03 Mar 2008) | 5 lines Changed paths: M /trunk/asymptote/base/asy-mode.el @@ -14247,27 +14649,27 @@ second-guessing user's intentions. Remove erroneous "Compilation errors,..." message generated by killed processes. ------------------------------------------------------------------------ -r3065 | pivaldi | 2008-03-02 04:29:55 -0700 (Sun, 02 Mar 2008) | 1 line +r3065 | pivaldi | 2008-03-02 12:29:55 +0100 (Sun, 02 Mar 2008) | 1 line Changed paths: M /trunk/asymptote/doc/penimage.asy Remove useless code in penimage.asy ------------------------------------------------------------------------ -r3064 | jcbowman | 2008-03-01 23:55:37 -0700 (Sat, 01 Mar 2008) | 2 lines +r3064 | jcbowman | 2008-03-02 07:55:37 +0100 (Sun, 02 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/vectorfield3.asy Fix gradient. ------------------------------------------------------------------------ -r3063 | jcbowman | 2008-03-01 23:53:08 -0700 (Sat, 01 Mar 2008) | 2 lines +r3063 | jcbowman | 2008-03-02 07:53:08 +0100 (Sun, 02 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/vectorfield3.asy Remove unused import. ------------------------------------------------------------------------ -r3062 | jcbowman | 2008-03-01 23:49:23 -0700 (Sat, 01 Mar 2008) | 5 lines +r3062 | jcbowman | 2008-03-02 07:49:23 +0100 (Sun, 02 Mar 2008) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -14283,14 +14685,14 @@ incompatible). Support two-dimensional and three-dimensional vector fields. ------------------------------------------------------------------------ -r3061 | jcbowman | 2008-03-01 17:14:38 -0700 (Sat, 01 Mar 2008) | 2 lines +r3061 | jcbowman | 2008-03-02 01:14:38 +0100 (Sun, 02 Mar 2008) | 2 lines Changed paths: A /trunk/asymptote/examples/partialsurface.asy Add example of conditional surface and transparent splitting plane. ------------------------------------------------------------------------ -r3060 | jcbowman | 2008-03-01 15:38:14 -0700 (Sat, 01 Mar 2008) | 2 lines +r3060 | jcbowman | 2008-03-01 23:38:14 +0100 (Sat, 01 Mar 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi @@ -14298,26 +14700,26 @@ Changed paths: Implement conditional drawing of surfaces meshes over box(a,b). ------------------------------------------------------------------------ -r3059 | pivaldi | 2008-02-28 04:42:32 -0700 (Thu, 28 Feb 2008) | 1 line +r3059 | pivaldi | 2008-02-28 12:42:32 +0100 (Thu, 28 Feb 2008) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Update asy-mode-version value. ------------------------------------------------------------------------ -r3058 | pivaldi | 2008-02-28 04:40:49 -0700 (Thu, 28 Feb 2008) | 2 lines +r3058 | pivaldi | 2008-02-28 12:40:49 +0100 (Thu, 28 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Fix critical bug in asy-mode.el: a new Asymptote compilation when a process was running erased the contents of some buffers. ------------------------------------------------------------------------ -r3057 | jcbowman | 2008-02-27 00:25:25 -0700 (Wed, 27 Feb 2008) | 1 line +r3057 | jcbowman | 2008-02-27 08:25:25 +0100 (Wed, 27 Feb 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.43svn. ------------------------------------------------------------------------ -r3056 | jcbowman | 2008-02-26 22:57:08 -0700 (Tue, 26 Feb 2008) | 2 lines +r3056 | jcbowman | 2008-02-27 06:57:08 +0100 (Wed, 27 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/animations/cube.asy @@ -14325,14 +14727,14 @@ Changed paths: Project labels onto cube faces. ------------------------------------------------------------------------ -r3055 | jcbowman | 2008-02-24 09:32:50 -0700 (Sun, 24 Feb 2008) | 2 lines +r3055 | jcbowman | 2008-02-24 17:32:50 +0100 (Sun, 24 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Don't set sticky bit when creating ~/.asy directory. ------------------------------------------------------------------------ -r3054 | jcbowman | 2008-02-24 01:18:00 -0700 (Sun, 24 Feb 2008) | 2 lines +r3054 | jcbowman | 2008-02-24 09:18:00 +0100 (Sun, 24 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/slopefield.asy M /trunk/asymptote/doc/asymptote.texi @@ -14341,7 +14743,7 @@ Changed paths: Add optional arrows to slopefield routines. ------------------------------------------------------------------------ -r3053 | jcbowman | 2008-02-22 14:47:40 -0700 (Fri, 22 Feb 2008) | 5 lines +r3053 | jcbowman | 2008-02-22 22:47:40 +0100 (Fri, 22 Feb 2008) | 5 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/base/three.asy @@ -14354,14 +14756,14 @@ dot(picture pic=currentpicture, pair[] x, pair[] y, pen p=currentpen, filltype filltype=Fill); ------------------------------------------------------------------------ -r3052 | jcbowman | 2008-02-22 14:11:07 -0700 (Fri, 22 Feb 2008) | 2 lines +r3052 | jcbowman | 2008-02-22 22:11:07 +0100 (Fri, 22 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Remove ambiguity in scale. ------------------------------------------------------------------------ -r3051 | jcbowman | 2008-02-22 12:12:12 -0700 (Fri, 22 Feb 2008) | 10 lines +r3051 | jcbowman | 2008-02-22 20:12:12 +0100 (Fri, 22 Feb 2008) | 10 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/base/three.asy @@ -14379,7 +14781,7 @@ Add dot(real[] a, real[] b) routine returning the dot product of two vectors. Update documentation. ------------------------------------------------------------------------ -r3050 | jcbowman | 2008-02-20 13:35:14 -0700 (Wed, 20 Feb 2008) | 2 lines +r3050 | jcbowman | 2008-02-20 21:35:14 +0100 (Wed, 20 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/extra/intro.asy M /trunk/asymptote/doc/generalaxis.asy @@ -14413,35 +14815,35 @@ Changed paths: More guide to path changes. ------------------------------------------------------------------------ -r3049 | jcbowman | 2008-02-20 13:30:54 -0700 (Wed, 20 Feb 2008) | 2 lines +r3049 | jcbowman | 2008-02-20 21:30:54 +0100 (Wed, 20 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Minor optimization. ------------------------------------------------------------------------ -r3048 | jcbowman | 2008-02-20 10:05:24 -0700 (Wed, 20 Feb 2008) | 2 lines +r3048 | jcbowman | 2008-02-20 18:05:24 +0100 (Wed, 20 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy Minor optimization. ------------------------------------------------------------------------ -r3047 | jcbowman | 2008-02-20 09:53:48 -0700 (Wed, 20 Feb 2008) | 2 lines +r3047 | jcbowman | 2008-02-20 17:53:48 +0100 (Wed, 20 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy Simplify code. ------------------------------------------------------------------------ -r3046 | jcbowman | 2008-02-18 13:19:42 -0700 (Mon, 18 Feb 2008) | 2 lines +r3046 | jcbowman | 2008-02-18 21:19:42 +0100 (Mon, 18 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animation.asy Add fit argument also for nonglobal animations. ------------------------------------------------------------------------ -r3045 | jcbowman | 2008-02-18 11:07:11 -0700 (Mon, 18 Feb 2008) | 5 lines +r3045 | jcbowman | 2008-02-18 19:07:11 +0100 (Mon, 18 Feb 2008) | 5 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/base/plain_shipout.asy @@ -14454,21 +14856,21 @@ bounding box to each movie frame. Add newpage(frame) function. ------------------------------------------------------------------------ -r3044 | jcbowman | 2008-02-18 09:54:28 -0700 (Mon, 18 Feb 2008) | 2 lines +r3044 | jcbowman | 2008-02-18 17:54:28 +0100 (Mon, 18 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Remove unused shipout predeclaration. ------------------------------------------------------------------------ -r3043 | jcbowman | 2008-02-17 22:29:37 -0700 (Sun, 17 Feb 2008) | 2 lines +r3043 | jcbowman | 2008-02-18 06:29:37 +0100 (Mon, 18 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add missing explicit qualifier. ------------------------------------------------------------------------ -r3042 | jcbowman | 2008-02-17 22:22:15 -0700 (Sun, 17 Feb 2008) | 4 lines +r3042 | jcbowman | 2008-02-18 06:22:15 +0100 (Mon, 18 Feb 2008) | 4 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/plain_pens.asy @@ -14482,7 +14884,7 @@ Move definition of currentpen to C++ code. Add int inside(path p, path q, pen fillrule=currentpen) routine. ------------------------------------------------------------------------ -r3041 | jcbowman | 2008-02-16 22:17:40 -0700 (Sat, 16 Feb 2008) | 2 lines +r3041 | jcbowman | 2008-02-17 06:17:40 +0100 (Sun, 17 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/three.asy @@ -14490,7 +14892,7 @@ Changed paths: Add routine for projecting a Label onto a given plane. ------------------------------------------------------------------------ -r3040 | jcbowman | 2008-02-15 09:43:04 -0700 (Fri, 15 Feb 2008) | 2 lines +r3040 | jcbowman | 2008-02-15 17:43:04 +0100 (Fri, 15 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/extra/intro.asy M /trunk/asymptote/texfile.h @@ -14498,14 +14900,14 @@ Changed paths: Fix missing ASYbase declaration. ------------------------------------------------------------------------ -r3039 | oshardt | 2008-02-13 19:21:00 -0700 (Wed, 13 Feb 2008) | 1 line +r3039 | oshardt | 2008-02-14 03:21:00 +0100 (Thu, 14 Feb 2008) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyBezierEditor.py M /trunk/asymptote/GUI/xasyMainWin.py Fix bug in cancellation of text addition. ------------------------------------------------------------------------ -r3038 | jcbowman | 2008-02-13 15:24:27 -0700 (Wed, 13 Feb 2008) | 2 lines +r3038 | jcbowman | 2008-02-13 23:24:27 +0100 (Wed, 13 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/texfile.cc @@ -14514,7 +14916,7 @@ Changed paths: Output TeX headers only when needed. ------------------------------------------------------------------------ -r3037 | jcbowman | 2008-02-13 15:21:32 -0700 (Wed, 13 Feb 2008) | 2 lines +r3037 | jcbowman | 2008-02-13 23:21:32 +0100 (Wed, 13 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/extra/intro.asy @@ -14522,14 +14924,14 @@ Changed paths: Mention that transforms can also be applied to Labels. ------------------------------------------------------------------------ -r3036 | jcbowman | 2008-02-11 14:19:08 -0700 (Mon, 11 Feb 2008) | 2 lines +r3036 | jcbowman | 2008-02-11 22:19:08 +0100 (Mon, 11 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Update two arrow example. ------------------------------------------------------------------------ -r3035 | jcbowman | 2008-02-11 13:49:15 -0700 (Mon, 11 Feb 2008) | 4 lines +r3035 | jcbowman | 2008-02-11 21:49:15 +0100 (Mon, 11 Feb 2008) | 4 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/examples/dimension.asy @@ -14539,14 +14941,14 @@ Update documentation of arrowhead styles. Change guides to paths. ------------------------------------------------------------------------ -r3034 | jcbowman | 2008-02-11 13:15:19 -0700 (Mon, 11 Feb 2008) | 2 lines +r3034 | jcbowman | 2008-02-11 21:15:19 +0100 (Mon, 11 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Move documentation of colorless(pen) to a better place. ------------------------------------------------------------------------ -r3033 | jcbowman | 2008-02-11 03:14:56 -0700 (Mon, 11 Feb 2008) | 2 lines +r3033 | jcbowman | 2008-02-11 11:14:56 +0100 (Mon, 11 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/imagecontour.asy M /trunk/asymptote/examples/fillcontour.asy @@ -14554,35 +14956,35 @@ Changed paths: Simply and generalize contour value selection code. ------------------------------------------------------------------------ -r3032 | jcbowman | 2008-02-08 21:58:31 -0700 (Fri, 08 Feb 2008) | 2 lines +r3032 | jcbowman | 2008-02-09 05:58:31 +0100 (Sat, 09 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Make OmitTick do nothing when there are no major ticks. ------------------------------------------------------------------------ -r3031 | hammera | 2008-02-05 18:25:23 -0700 (Tue, 05 Feb 2008) | 2 lines +r3031 | hammera | 2008-02-06 02:25:23 +0100 (Wed, 06 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo in slice documentation. ------------------------------------------------------------------------ -r3030 | jcbowman | 2008-02-05 09:01:26 -0700 (Tue, 05 Feb 2008) | 2 lines +r3030 | jcbowman | 2008-02-05 17:01:26 +0100 (Tue, 05 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Avoid division by zero in uniform. ------------------------------------------------------------------------ -r3029 | jcbowman | 2008-02-03 16:19:39 -0700 (Sun, 03 Feb 2008) | 2 lines +r3029 | jcbowman | 2008-02-04 00:19:39 +0100 (Mon, 04 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation regarding ImageMagick convert. ------------------------------------------------------------------------ -r3028 | jcbowman | 2008-02-03 16:13:17 -0700 (Sun, 03 Feb 2008) | 4 lines +r3028 | jcbowman | 2008-02-04 00:13:17 +0100 (Mon, 04 Feb 2008) | 4 lines Changed paths: M /trunk/asymptote/base/animation.asy M /trunk/asymptote/examples/animations/inlinemovie.tex @@ -14592,14 +14994,14 @@ Make movie generate multipage pdf animations when format="pdf" and global=true. Insist on pdflatex in animation.pdf(). ------------------------------------------------------------------------ -r3027 | jcbowman | 2008-02-03 16:08:56 -0700 (Sun, 03 Feb 2008) | 2 lines +r3027 | jcbowman | 2008-02-04 00:08:56 +0100 (Mon, 04 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Catch bad casts. ------------------------------------------------------------------------ -r3026 | jcbowman | 2008-02-02 10:23:44 -0700 (Sat, 02 Feb 2008) | 2 lines +r3026 | jcbowman | 2008-02-02 18:23:44 +0100 (Sat, 02 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -14607,20 +15009,20 @@ Changed paths: Add casts between hsv structure and pens; reduce angle to [0,360). ------------------------------------------------------------------------ -r3025 | jcbowman | 2008-02-02 02:07:55 -0700 (Sat, 02 Feb 2008) | 1 line +r3025 | jcbowman | 2008-02-02 10:07:55 +0100 (Sat, 02 Feb 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.42svn. ------------------------------------------------------------------------ -r3024 | jcbowman | 2008-02-02 01:12:22 -0700 (Sat, 02 Feb 2008) | 2 lines +r3024 | jcbowman | 2008-02-02 09:12:22 +0100 (Sat, 02 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/array.cc Fix type conflict. ------------------------------------------------------------------------ -r3023 | jcbowman | 2008-02-02 00:05:46 -0700 (Sat, 02 Feb 2008) | 2 lines +r3023 | jcbowman | 2008-02-02 08:05:46 +0100 (Sat, 02 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -14628,14 +15030,14 @@ Changed paths: Add support for HSV colorspace. ------------------------------------------------------------------------ -r3022 | jcbowman | 2008-01-31 20:21:25 -0700 (Thu, 31 Jan 2008) | 2 lines +r3022 | jcbowman | 2008-02-01 04:21:25 +0100 (Fri, 01 Feb 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor edits. ------------------------------------------------------------------------ -r3021 | hammera | 2008-01-30 18:42:11 -0700 (Wed, 30 Jan 2008) | 2 lines +r3021 | hammera | 2008-01-31 02:42:11 +0100 (Thu, 31 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/doc/asymptote.texi @@ -14643,7 +15045,7 @@ Changed paths: Documented slices. ------------------------------------------------------------------------ -r3020 | hammera | 2008-01-30 13:28:01 -0700 (Wed, 30 Jan 2008) | 2 lines +r3020 | hammera | 2008-01-30 21:28:01 +0100 (Wed, 30 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/array.cc M /trunk/asymptote/tests/array/slice.asy @@ -14651,7 +15053,7 @@ Changed paths: Disallow A[5:2] and, for non-cyclic A, A[-1:] to play it safe. ------------------------------------------------------------------------ -r3019 | jcbowman | 2008-01-30 12:24:17 -0700 (Wed, 30 Jan 2008) | 3 lines +r3019 | jcbowman | 2008-01-30 20:24:17 +0100 (Wed, 30 Jan 2008) | 3 lines Changed paths: M /trunk/asymptote/arrayop.h @@ -14659,7 +15061,7 @@ Change write to output nothing for uninitialized values instead of producing an error. ------------------------------------------------------------------------ -r3018 | jcbowman | 2008-01-30 11:19:58 -0700 (Wed, 30 Jan 2008) | 5 lines +r3018 | jcbowman | 2008-01-30 19:19:58 +0100 (Wed, 30 Jan 2008) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -14671,14 +15073,14 @@ Add uniform(real a, real b, int n), which returns a uniform partition of Fix comment. ------------------------------------------------------------------------ -r3017 | jcbowman | 2008-01-29 17:53:40 -0700 (Tue, 29 Jan 2008) | 2 lines +r3017 | jcbowman | 2008-01-30 01:53:40 +0100 (Wed, 30 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Store history line immediately after input (as well at exit, after stifling). ------------------------------------------------------------------------ -r3016 | jcbowman | 2008-01-29 08:23:30 -0700 (Tue, 29 Jan 2008) | 2 lines +r3016 | jcbowman | 2008-01-29 16:23:30 +0100 (Tue, 29 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/integraltest.asy M /trunk/asymptote/runtime.in @@ -14686,21 +15088,21 @@ Changed paths: Add interface to simpson. ------------------------------------------------------------------------ -r3015 | jcbowman | 2008-01-28 12:12:37 -0700 (Mon, 28 Jan 2008) | 2 lines +r3015 | jcbowman | 2008-01-28 20:12:37 +0100 (Mon, 28 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Format. ------------------------------------------------------------------------ -r3014 | jcbowman | 2008-01-28 12:11:43 -0700 (Mon, 28 Jan 2008) | 2 lines +r3014 | jcbowman | 2008-01-28 20:11:43 +0100 (Mon, 28 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Move numerical routines to Mathematical functions section. ------------------------------------------------------------------------ -r3013 | jcbowman | 2008-01-28 11:38:09 -0700 (Mon, 28 Jan 2008) | 2 lines +r3013 | jcbowman | 2008-01-28 19:38:09 +0100 (Mon, 28 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/doc/asymptote.texi @@ -14708,21 +15110,21 @@ Changed paths: Make buildcycle return nullpath if less than two paths are specified. ------------------------------------------------------------------------ -r3012 | jcbowman | 2008-01-28 10:56:44 -0700 (Mon, 28 Jan 2008) | 2 lines +r3012 | jcbowman | 2008-01-28 18:56:44 +0100 (Mon, 28 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo in documentation of complement. ------------------------------------------------------------------------ -r3011 | jcbowman | 2008-01-28 10:35:52 -0700 (Mon, 28 Jan 2008) | 2 lines +r3011 | jcbowman | 2008-01-28 18:35:52 +0100 (Mon, 28 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix formatting. ------------------------------------------------------------------------ -r3010 | hammera | 2008-01-27 11:05:40 -0700 (Sun, 27 Jan 2008) | 2 lines +r3010 | hammera | 2008-01-27 19:05:40 +0100 (Sun, 27 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/array.cc M /trunk/asymptote/array.h @@ -14734,7 +15136,7 @@ Changed paths: Implemented assignment to slices. ------------------------------------------------------------------------ -r3009 | jcbowman | 2008-01-26 16:11:28 -0700 (Sat, 26 Jan 2008) | 2 lines +r3009 | jcbowman | 2008-01-27 00:11:28 +0100 (Sun, 27 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/pipestream.h @@ -14742,7 +15144,7 @@ Changed paths: Shred TeX transcripts after each call to drawLabel::wait. ------------------------------------------------------------------------ -r3008 | jcbowman | 2008-01-26 15:57:21 -0700 (Sat, 26 Jan 2008) | 2 lines +r3008 | jcbowman | 2008-01-26 23:57:21 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/pipestream.h @@ -14750,7 +15152,7 @@ Changed paths: Output complete TeX diagnostics. ------------------------------------------------------------------------ -r3007 | jcbowman | 2008-01-26 15:30:24 -0700 (Sat, 26 Jan 2008) | 2 lines +r3007 | jcbowman | 2008-01-26 23:30:24 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/tests/Makefile M /trunk/asymptote/tests/TestLib.asy @@ -14758,21 +15160,21 @@ Changed paths: Add blank lines between tests. ------------------------------------------------------------------------ -r3006 | hammera | 2008-01-26 15:02:48 -0700 (Sat, 26 Jan 2008) | 2 lines +r3006 | hammera | 2008-01-26 23:02:48 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Added null check for array slices. ------------------------------------------------------------------------ -r3005 | jcbowman | 2008-01-26 14:57:19 -0700 (Sat, 26 Jan 2008) | 2 lines +r3005 | jcbowman | 2008-01-26 22:57:19 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Add array. ------------------------------------------------------------------------ -r3004 | jcbowman | 2008-01-26 14:52:05 -0700 (Sat, 26 Jan 2008) | 2 lines +r3004 | jcbowman | 2008-01-26 22:52:05 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -14781,7 +15183,7 @@ Changed paths: Define complex exp, log, sin, and cos functions. ------------------------------------------------------------------------ -r3003 | hammera | 2008-01-26 14:13:57 -0700 (Sat, 26 Jan 2008) | 2 lines +r3003 | hammera | 2008-01-26 22:13:57 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/TODO A /trunk/asymptote/array.cc @@ -14795,14 +15197,14 @@ Changed paths: Added array slices. ------------------------------------------------------------------------ -r3002 | jcbowman | 2008-01-26 10:19:22 -0700 (Sat, 26 Jan 2008) | 2 lines +r3002 | jcbowman | 2008-01-26 18:19:22 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/slidemovies.asy Fix file paths. ------------------------------------------------------------------------ -r3001 | jcbowman | 2008-01-26 10:14:03 -0700 (Sat, 26 Jan 2008) | 3 lines +r3001 | jcbowman | 2008-01-26 18:14:03 +0100 (Sat, 26 Jan 2008) | 3 lines Changed paths: M /trunk/asymptote/base/animate.asy A /trunk/asymptote/base/animation.asy @@ -14816,7 +15218,7 @@ Remove dependence of non-PDF animations on animate.sty package by renaming animate.sty to animation.sty (PDF animations still need to import animate.sty). ------------------------------------------------------------------------ -r3000 | hammera | 2008-01-26 09:18:56 -0700 (Sat, 26 Jan 2008) | 2 lines +r3000 | hammera | 2008-01-26 17:18:56 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/fundec.cc @@ -14824,7 +15226,7 @@ Changed paths: Report on error for rest args with default arguments. ------------------------------------------------------------------------ -r2999 | hammera | 2008-01-26 09:07:52 -0700 (Sat, 26 Jan 2008) | 2 lines +r2999 | hammera | 2008-01-26 17:07:52 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/builtin.cc @@ -14835,7 +15237,7 @@ Changed paths: Added virtual field A.keys for arrays. concat now take a rest arg. ------------------------------------------------------------------------ -r2998 | jcbowman | 2008-01-25 22:47:18 -0700 (Fri, 25 Jan 2008) | 2 lines +r2998 | jcbowman | 2008-01-26 06:47:18 +0100 (Sat, 26 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/transparency.asy M /trunk/asymptote/picture.cc @@ -14847,7 +15249,7 @@ Changed paths: Make xasy respect transparency with png xformat. ------------------------------------------------------------------------ -r2997 | jcbowman | 2008-01-25 19:51:26 -0700 (Fri, 25 Jan 2008) | 4 lines +r2997 | jcbowman | 2008-01-26 03:51:26 +0100 (Sat, 26 Jan 2008) | 4 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/plain_arrows.asy @@ -14859,7 +15261,7 @@ Add drawpen argument to FillDraw. Handle nullpen when drawing arrows. ------------------------------------------------------------------------ -r2996 | jcbowman | 2008-01-20 11:58:45 -0700 (Sun, 20 Jan 2008) | 12 lines +r2996 | jcbowman | 2008-01-20 19:58:45 +0100 (Sun, 20 Jan 2008) | 12 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/base/plain_Label.asy @@ -14882,21 +15284,21 @@ Add dir(explicit pair z) function so that dir(E) is a synonym for E. Update documentation. ------------------------------------------------------------------------ -r2995 | jcbowman | 2008-01-19 21:28:43 -0700 (Sat, 19 Jan 2008) | 2 lines +r2995 | jcbowman | 2008-01-20 05:28:43 +0100 (Sun, 20 Jan 2008) | 2 lines Changed paths: A /trunk/asymptote/examples/gamma.asy Add gamma function example. ------------------------------------------------------------------------ -r2994 | jcbowman | 2008-01-19 18:03:13 -0700 (Sat, 19 Jan 2008) | 2 lines +r2994 | jcbowman | 2008-01-20 02:03:13 +0100 (Sun, 20 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r2993 | jcbowman | 2008-01-19 18:02:16 -0700 (Sat, 19 Jan 2008) | 5 lines +r2993 | jcbowman | 2008-01-20 02:02:16 +0100 (Sun, 20 Jan 2008) | 5 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/doc/asymptote.texi @@ -14908,7 +15310,7 @@ Avoid numerical resolution issues by removing the "paths in concatenation do not meet" error. ------------------------------------------------------------------------ -r2992 | jcbowman | 2008-01-17 16:29:08 -0700 (Thu, 17 Jan 2008) | 2 lines +r2992 | jcbowman | 2008-01-18 00:29:08 +0100 (Fri, 18 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/plain_paths.asy @@ -14917,20 +15319,20 @@ Changed paths: Add intersection count to node and value routines. ------------------------------------------------------------------------ -r2991 | jcbowman | 2008-01-17 16:24:27 -0700 (Thu, 17 Jan 2008) | 2 lines +r2991 | jcbowman | 2008-01-18 00:24:27 +0100 (Fri, 18 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/doc/flowchartdemo.asy Update example to show how to specify all pen colours. ------------------------------------------------------------------------ -r2990 | pivaldi | 2008-01-12 10:53:17 -0700 (Sat, 12 Jan 2008) | 1 line +r2990 | pivaldi | 2008-01-12 18:53:17 +0100 (Sat, 12 Jan 2008) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo ------------------------------------------------------------------------ -r2989 | jcbowman | 2008-01-11 21:59:03 -0700 (Fri, 11 Jan 2008) | 2 lines +r2989 | jcbowman | 2008-01-12 05:59:03 +0100 (Sat, 12 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/doc/asymptote.texi @@ -14938,21 +15340,21 @@ Changed paths: Determine whether unsplit slices are should be drawn as front or back slices. ------------------------------------------------------------------------ -r2988 | jcbowman | 2008-01-05 11:59:42 -0700 (Sat, 05 Jan 2008) | 1 line +r2988 | jcbowman | 2008-01-05 19:59:42 +0100 (Sat, 05 Jan 2008) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.41svn. ------------------------------------------------------------------------ -r2987 | jcbowman | 2008-01-05 11:02:27 -0700 (Sat, 05 Jan 2008) | 2 lines +r2987 | jcbowman | 2008-01-05 19:02:27 +0100 (Sat, 05 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix nurb-related bug in solid shading. ------------------------------------------------------------------------ -r2986 | jcbowman | 2008-01-05 10:40:31 -0700 (Sat, 05 Jan 2008) | 3 lines +r2986 | jcbowman | 2008-01-05 18:40:31 +0100 (Sat, 05 Jan 2008) | 3 lines Changed paths: M /trunk/asymptote/psfile.cc @@ -14960,28 +15362,28 @@ Fix PDF hatch width by disabling dynamics line width adjustment when producing pdf format. ------------------------------------------------------------------------ -r2985 | jcbowman | 2008-01-05 09:50:59 -0700 (Sat, 05 Jan 2008) | 2 lines +r2985 | jcbowman | 2008-01-05 17:50:59 +0100 (Sat, 05 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/inlinemovie.tex Omit control panel for second movie. ------------------------------------------------------------------------ -r2984 | jcbowman | 2008-01-04 21:08:35 -0700 (Fri, 04 Jan 2008) | 1 line +r2984 | jcbowman | 2008-01-05 05:08:35 +0100 (Sat, 05 Jan 2008) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.40svn. ------------------------------------------------------------------------ -r2983 | jcbowman | 2008-01-04 19:48:57 -0700 (Fri, 04 Jan 2008) | 2 lines +r2983 | jcbowman | 2008-01-05 03:48:57 +0100 (Sat, 05 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/inlinemovie.tex Fix inline embedded PDF animations. ------------------------------------------------------------------------ -r2982 | jcbowman | 2008-01-04 19:28:04 -0700 (Fri, 04 Jan 2008) | 2 lines +r2982 | jcbowman | 2008-01-05 03:28:04 +0100 (Sat, 05 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.texi @@ -14989,7 +15391,7 @@ Changed paths: Delete intermediate animation file unless keep=true. ------------------------------------------------------------------------ -r2981 | jcbowman | 2008-01-04 17:53:32 -0700 (Fri, 04 Jan 2008) | 2 lines +r2981 | jcbowman | 2008-01-05 01:53:32 +0100 (Sat, 05 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/examples/animations/inlinemovie.tex @@ -14997,20 +15399,20 @@ Changed paths: Use constructor to initialize animation. ------------------------------------------------------------------------ -r2980 | jcbowman | 2008-01-04 17:23:54 -0700 (Fri, 04 Jan 2008) | 1 line +r2980 | jcbowman | 2008-01-05 01:23:54 +0100 (Sat, 05 Jan 2008) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.39svn. ------------------------------------------------------------------------ -r2979 | jcbowman | 2008-01-04 13:09:26 -0700 (Fri, 04 Jan 2008) | 2 lines +r2979 | jcbowman | 2008-01-04 21:09:26 +0100 (Fri, 04 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Patch to support gcc-4.3. ------------------------------------------------------------------------ -r2978 | jcbowman | 2008-01-04 12:53:56 -0700 (Fri, 04 Jan 2008) | 2 lines +r2978 | jcbowman | 2008-01-04 20:53:56 +0100 (Fri, 04 Jan 2008) | 2 lines Changed paths: D /trunk/asymptote/examples/animations/inlinemovie.asy A /trunk/asymptote/examples/animations/inlinemovie.tex (from /trunk/asymptote/examples/inlinemovie.tex:2977) @@ -15019,7 +15421,7 @@ Changed paths: Move inlinemove.tex to animations directory. ------------------------------------------------------------------------ -r2977 | jcbowman | 2008-01-04 12:52:04 -0700 (Fri, 04 Jan 2008) | 4 lines +r2977 | jcbowman | 2008-01-04 20:52:04 +0100 (Fri, 04 Jan 2008) | 4 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.sty @@ -15034,14 +15436,14 @@ Add argument global to animate constructor. Fix and illustrate inline animations. ------------------------------------------------------------------------ -r2976 | jcbowman | 2008-01-03 21:13:31 -0700 (Thu, 03 Jan 2008) | 2 lines +r2976 | jcbowman | 2008-01-04 05:13:31 +0100 (Fri, 04 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix ambiguous call to dot(triple[]). ------------------------------------------------------------------------ -r2975 | jcbowman | 2008-01-03 20:15:16 -0700 (Thu, 03 Jan 2008) | 5 lines +r2975 | jcbowman | 2008-01-04 04:15:16 +0100 (Fri, 04 Jan 2008) | 5 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.sty @@ -15054,7 +15456,7 @@ Support and illustrate embedding of inline pdf files even in absence of Use multipage mode by default in animate.pdf(). ------------------------------------------------------------------------ -r2974 | jcbowman | 2008-01-03 17:06:40 -0700 (Thu, 03 Jan 2008) | 4 lines +r2974 | jcbowman | 2008-01-04 01:06:40 +0100 (Fri, 04 Jan 2008) | 4 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.texi @@ -15064,20 +15466,20 @@ Add constructor for animate. Update inline pdf movie documentation. ------------------------------------------------------------------------ -r2973 | jcbowman | 2008-01-03 16:44:30 -0700 (Thu, 03 Jan 2008) | 2 lines +r2973 | jcbowman | 2008-01-04 00:44:30 +0100 (Fri, 04 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy Support multipage and inline pdf movies. ------------------------------------------------------------------------ -r2972 | pivaldi | 2008-01-03 06:59:26 -0700 (Thu, 03 Jan 2008) | 1 line +r2972 | pivaldi | 2008-01-03 14:59:26 +0100 (Thu, 03 Jan 2008) | 1 line Changed paths: M /trunk/asymptote/base/plain_arrows.asy Fix TeXHead path. ------------------------------------------------------------------------ -r2971 | jcbowman | 2008-01-02 23:17:36 -0700 (Wed, 02 Jan 2008) | 8 lines +r2971 | jcbowman | 2008-01-03 07:17:36 +0100 (Thu, 03 Jan 2008) | 8 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/doc/asymptote.texi @@ -15091,27 +15493,27 @@ Add defaultfilltype to arrowhead. Fix direction bug in TeXhead. ------------------------------------------------------------------------ -r2970 | pivaldi | 2008-01-02 19:12:25 -0700 (Wed, 02 Jan 2008) | 1 line +r2970 | pivaldi | 2008-01-03 03:12:25 +0100 (Thu, 03 Jan 2008) | 1 line Changed paths: M /trunk/asymptote/base/plain_arrows.asy Provide Computer Modern arrow head. ------------------------------------------------------------------------ -r2969 | jcbowman | 2008-01-01 15:17:29 -0700 (Tue, 01 Jan 2008) | 2 lines +r2969 | jcbowman | 2008-01-01 23:17:29 +0100 (Tue, 01 Jan 2008) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Fix degenerate arrows. ------------------------------------------------------------------------ -r2968 | jcbowman | 2007-12-30 23:57:24 -0700 (Sun, 30 Dec 2007) | 2 lines +r2968 | jcbowman | 2007-12-31 07:57:24 +0100 (Mon, 31 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Add arrowhookfactor. ------------------------------------------------------------------------ -r2967 | jcbowman | 2007-12-30 23:50:21 -0700 (Sun, 30 Dec 2007) | 4 lines +r2967 | jcbowman | 2007-12-31 07:50:21 +0100 (Mon, 31 Dec 2007) | 4 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy @@ -15120,14 +15522,14 @@ Support alternative arrowhead styles. Add SimpleHead and HookHead arrow styles (courtesy of Philippe Ivaldi). ------------------------------------------------------------------------ -r2966 | jcbowman | 2007-12-30 23:46:56 -0700 (Sun, 30 Dec 2007) | 2 lines +r2966 | jcbowman | 2007-12-31 07:46:56 +0100 (Mon, 31 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy Automatically reduce FillDraw to Draw for noncyclic paths. ------------------------------------------------------------------------ -r2965 | jcbowman | 2007-12-29 10:37:13 -0700 (Sat, 29 Dec 2007) | 8 lines +r2965 | jcbowman | 2007-12-29 18:37:13 +0100 (Sat, 29 Dec 2007) | 8 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/plain_paths.asy @@ -15149,21 +15551,21 @@ Update constructors in three.asy. ------------------------------------------------------------------------ -r2964 | jcbowman | 2007-12-28 11:20:30 -0700 (Fri, 28 Dec 2007) | 2 lines +r2964 | jcbowman | 2007-12-28 19:20:30 +0100 (Fri, 28 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy In autoformat, try to add an extra digit of precision. ------------------------------------------------------------------------ -r2963 | jcbowman | 2007-12-24 09:42:05 -0700 (Mon, 24 Dec 2007) | 2 lines +r2963 | jcbowman | 2007-12-24 17:42:05 +0100 (Mon, 24 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Handle output from xasy scripts. ------------------------------------------------------------------------ -r2962 | jcbowman | 2007-12-24 09:06:39 -0700 (Mon, 24 Dec 2007) | 2 lines +r2962 | jcbowman | 2007-12-24 17:06:39 +0100 (Mon, 24 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in D /trunk/asymptote/xasy @@ -15171,14 +15573,14 @@ Changed paths: Have Makefile create symbolic link xasy. ------------------------------------------------------------------------ -r2961 | oshardt | 2007-12-22 20:34:02 -0700 (Sat, 22 Dec 2007) | 1 line +r2961 | oshardt | 2007-12-23 04:34:02 +0100 (Sun, 23 Dec 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py Remove need for access to GUI widgets from threads other than main thread. ------------------------------------------------------------------------ -r2960 | jcbowman | 2007-12-11 19:01:47 -0700 (Tue, 11 Dec 2007) | 2 lines +r2960 | jcbowman | 2007-12-12 03:01:47 +0100 (Wed, 12 Dec 2007) | 2 lines Changed paths: A /trunk/asymptote/doc/Hobbycontrol.asy A /trunk/asymptote/doc/Hobbydir.asy @@ -15187,7 +15589,7 @@ Changed paths: Add missing figures; remove duplicate line. ------------------------------------------------------------------------ -r2959 | hammera | 2007-12-10 11:29:34 -0700 (Mon, 10 Dec 2007) | 2 lines +r2959 | hammera | 2007-12-10 19:29:34 +0100 (Mon, 10 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/env.cc M /trunk/asymptote/env.h @@ -15197,7 +15599,7 @@ Changed paths: Clear the matchCatch after translating a module, for a modest speed-up. ------------------------------------------------------------------------ -r2958 | jcbowman | 2007-12-09 22:37:42 -0700 (Sun, 09 Dec 2007) | 9 lines +r2958 | jcbowman | 2007-12-10 06:37:42 +0100 (Mon, 10 Dec 2007) | 9 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -15213,14 +15615,14 @@ Document axes. Untabify graph3.asy and graph.asy. ------------------------------------------------------------------------ -r2957 | jcbowman | 2007-12-09 20:25:55 -0700 (Sun, 09 Dec 2007) | 2 lines +r2957 | jcbowman | 2007-12-10 04:25:55 +0100 (Mon, 10 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Remove unused import. ------------------------------------------------------------------------ -r2956 | jcbowman | 2007-12-09 16:47:07 -0700 (Sun, 09 Dec 2007) | 2 lines +r2956 | jcbowman | 2007-12-10 00:47:07 +0100 (Mon, 10 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -15230,14 +15632,14 @@ Changed paths: Improve graph and interpolation array length diagnostics. ------------------------------------------------------------------------ -r2955 | hammera | 2007-12-09 14:10:02 -0700 (Sun, 09 Dec 2007) | 2 lines +r2955 | hammera | 2007-12-09 22:10:02 +0100 (Sun, 09 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/stm.cc Resolve ambiguous expressions during interactiveWrite (with a warning). ------------------------------------------------------------------------ -r2954 | jcbowman | 2007-12-09 12:15:32 -0700 (Sun, 09 Dec 2007) | 2 lines +r2954 | jcbowman | 2007-12-09 20:15:32 +0100 (Sun, 09 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -15249,7 +15651,7 @@ Changed paths: Implement -c (command) option and exit() command. ------------------------------------------------------------------------ -r2953 | jcbowman | 2007-12-09 10:49:08 -0700 (Sun, 09 Dec 2007) | 2 lines +r2953 | jcbowman | 2007-12-09 18:49:08 +0100 (Sun, 09 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/fileio.h @@ -15257,21 +15659,21 @@ Changed paths: Make read1, read2, and read3 effective only for the current array read. ------------------------------------------------------------------------ -r2952 | jcbowman | 2007-12-08 19:22:01 -0700 (Sat, 08 Dec 2007) | 2 lines +r2952 | jcbowman | 2007-12-09 03:22:01 +0100 (Sun, 09 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Output deconstruction errors to Asymptote Console window. ------------------------------------------------------------------------ -r2951 | jcbowman | 2007-12-08 18:16:19 -0700 (Sat, 08 Dec 2007) | 2 lines +r2951 | jcbowman | 2007-12-09 02:16:19 +0100 (Sun, 09 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Handle unclosed begingroups in deconstruct. ------------------------------------------------------------------------ -r2950 | jcbowman | 2007-12-08 16:37:22 -0700 (Sat, 08 Dec 2007) | 2 lines +r2950 | jcbowman | 2007-12-09 00:37:22 +0100 (Sun, 09 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -15280,42 +15682,42 @@ Changed paths: Add patch to fix several problems with Asymptote backend for pstoedit-3.45. ------------------------------------------------------------------------ -r2949 | jcbowman | 2007-12-08 14:17:13 -0700 (Sat, 08 Dec 2007) | 2 lines +r2949 | jcbowman | 2007-12-08 22:17:13 +0100 (Sat, 08 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Ignore unclosed begingroups (to work around pstoedit problems). ------------------------------------------------------------------------ -r2948 | jcbowman | 2007-12-08 14:13:07 -0700 (Sat, 08 Dec 2007) | 2 lines +r2948 | jcbowman | 2007-12-08 22:13:07 +0100 (Sat, 08 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/bbox.h Fix empty clipping bbox. ------------------------------------------------------------------------ -r2947 | jcbowman | 2007-12-08 10:43:45 -0700 (Sat, 08 Dec 2007) | 2 lines +r2947 | jcbowman | 2007-12-08 18:43:45 +0100 (Sat, 08 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/slidedemo.asy Show how to put a header on every page. ------------------------------------------------------------------------ -r2946 | jcbowman | 2007-12-02 16:29:34 -0700 (Sun, 02 Dec 2007) | 2 lines +r2946 | jcbowman | 2007-12-03 00:29:34 +0100 (Mon, 03 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Improve system gc detection. ------------------------------------------------------------------------ -r2945 | jcbowman | 2007-12-02 10:58:15 -0700 (Sun, 02 Dec 2007) | 2 lines +r2945 | jcbowman | 2007-12-02 18:58:15 +0100 (Sun, 02 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document \\ -> \\ mapping of double-quoted strings. ------------------------------------------------------------------------ -r2944 | jcbowman | 2007-12-01 15:30:13 -0700 (Sat, 01 Dec 2007) | 2 lines +r2944 | jcbowman | 2007-12-01 23:30:13 +0100 (Sat, 01 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -15323,7 +15725,7 @@ Changed paths: Add default value of (0,0) to center. ------------------------------------------------------------------------ -r2943 | jcbowman | 2007-12-01 15:24:03 -0700 (Sat, 01 Dec 2007) | 2 lines +r2943 | jcbowman | 2007-12-01 23:24:03 +0100 (Sat, 01 Dec 2007) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -15332,13 +15734,13 @@ Changed paths: Add pen arguments to flowchart block routines. ------------------------------------------------------------------------ -r2942 | jcbowman | 2007-11-28 01:28:22 -0700 (Wed, 28 Nov 2007) | 1 line +r2942 | jcbowman | 2007-11-28 09:28:22 +0100 (Wed, 28 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.38svn. ------------------------------------------------------------------------ -r2941 | jcbowman | 2007-11-28 00:37:17 -0700 (Wed, 28 Nov 2007) | 2 lines +r2941 | jcbowman | 2007-11-28 08:37:17 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -15349,14 +15751,14 @@ Changed paths: Final Windows tweaks. ------------------------------------------------------------------------ -r2940 | jcbowman | 2007-11-27 23:05:09 -0700 (Tue, 27 Nov 2007) | 2 lines +r2940 | jcbowman | 2007-11-28 07:05:09 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Remove min since intersections returns a sorted array. ------------------------------------------------------------------------ -r2939 | jcbowman | 2007-11-27 22:41:59 -0700 (Tue, 27 Nov 2007) | 2 lines +r2939 | jcbowman | 2007-11-28 06:41:59 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/xasy.1x @@ -15364,55 +15766,55 @@ Changed paths: Document the -x option of xasy. ------------------------------------------------------------------------ -r2938 | jcbowman | 2007-11-27 22:30:09 -0700 (Tue, 27 Nov 2007) | 2 lines +r2938 | jcbowman | 2007-11-28 06:30:09 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Remove debugging test modification. ------------------------------------------------------------------------ -r2937 | jcbowman | 2007-11-27 22:28:13 -0700 (Tue, 27 Nov 2007) | 2 lines +r2937 | jcbowman | 2007-11-28 06:28:13 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update GUI installation documentation. ------------------------------------------------------------------------ -r2936 | jcbowman | 2007-11-27 22:17:19 -0700 (Tue, 27 Nov 2007) | 2 lines +r2936 | jcbowman | 2007-11-28 06:17:19 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Require Python 2.5 for MSWindows. ------------------------------------------------------------------------ -r2935 | jcbowman | 2007-11-27 22:10:43 -0700 (Tue, 27 Nov 2007) | 2 lines +r2935 | jcbowman | 2007-11-28 06:10:43 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: A /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6msdos.patch Add version of PIL-1.1.6 patch used for MSDOS. ------------------------------------------------------------------------ -r2934 | jcbowman | 2007-11-27 21:51:27 -0700 (Tue, 27 Nov 2007) | 2 lines +r2934 | jcbowman | 2007-11-28 05:51:27 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Output diagnostics from Asymptote in separate Tk window. ------------------------------------------------------------------------ -r2933 | jcbowman | 2007-11-27 21:50:28 -0700 (Tue, 27 Nov 2007) | 2 lines +r2933 | jcbowman | 2007-11-28 05:50:28 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Fix active Color button foreground. ------------------------------------------------------------------------ -r2932 | oshardt | 2007-11-27 17:16:40 -0700 (Tue, 27 Nov 2007) | 1 line +r2932 | oshardt | 2007-11-28 01:16:40 +0100 (Wed, 28 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Correct acquisition of lock for colour change. ------------------------------------------------------------------------ -r2931 | jcbowman | 2007-11-27 16:23:59 -0700 (Tue, 27 Nov 2007) | 2 lines +r2931 | jcbowman | 2007-11-28 00:23:59 +0100 (Wed, 28 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.cc @@ -15422,7 +15824,7 @@ Changed paths: Add 's' scrolling option. ------------------------------------------------------------------------ -r2930 | jcbowman | 2007-11-27 01:01:27 -0700 (Tue, 27 Nov 2007) | 2 lines +r2930 | jcbowman | 2007-11-27 09:01:27 +0100 (Tue, 27 Nov 2007) | 2 lines Changed paths: D /trunk/asymptote/GUI/xasyVersion.py A /trunk/asymptote/GUI/xasyVersion.py.in (from /trunk/asymptote/GUI/xasyVersion.py:2920) @@ -15431,14 +15833,14 @@ Changed paths: Configure xasy version. ------------------------------------------------------------------------ -r2929 | jcbowman | 2007-11-27 01:00:47 -0700 (Tue, 27 Nov 2007) | 2 lines +r2929 | jcbowman | 2007-11-27 09:00:47 +0100 (Tue, 27 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Turn off scrolling when not a tty. ------------------------------------------------------------------------ -r2928 | jcbowman | 2007-11-26 22:22:08 -0700 (Mon, 26 Nov 2007) | 2 lines +r2928 | jcbowman | 2007-11-27 06:22:08 +0100 (Tue, 27 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy M /trunk/asymptote/doc/histogram.asy @@ -15446,14 +15848,14 @@ Changed paths: Add function to calculate "optimal" number of histogram bins. ------------------------------------------------------------------------ -r2927 | jcbowman | 2007-11-26 17:54:59 -0700 (Mon, 26 Nov 2007) | 2 lines +r2927 | jcbowman | 2007-11-27 01:54:59 +0100 (Tue, 27 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/annotation.asy Force outformat="pdf". ------------------------------------------------------------------------ -r2926 | jcbowman | 2007-11-26 17:54:03 -0700 (Mon, 26 Nov 2007) | 3 lines +r2926 | jcbowman | 2007-11-27 01:54:03 +0100 (Tue, 27 Nov 2007) | 3 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy @@ -15461,7 +15863,7 @@ When determining base points of arrows, always choose the closest intersection points (in terms of arclength) to the apex. ------------------------------------------------------------------------ -r2925 | jcbowman | 2007-11-25 21:47:55 -0700 (Sun, 25 Nov 2007) | 7 lines +r2925 | jcbowman | 2007-11-26 05:47:55 +0100 (Mon, 26 Nov 2007) | 7 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyActions.py @@ -15479,7 +15881,7 @@ even after a deconstruct() (or by manual editing of the output code). Show asy diagnostics in console window. ------------------------------------------------------------------------ -r2924 | jcbowman | 2007-11-24 23:23:19 -0700 (Sat, 24 Nov 2007) | 2 lines +r2924 | jcbowman | 2007-11-25 07:23:19 +0100 (Sun, 25 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/fileio.cc @@ -15490,7 +15892,7 @@ Changed paths: Fix scrolling. ------------------------------------------------------------------------ -r2923 | jcbowman | 2007-11-24 23:03:07 -0700 (Sat, 24 Nov 2007) | 2 lines +r2923 | jcbowman | 2007-11-25 07:03:07 +0100 (Sun, 25 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/helix.asy @@ -15498,28 +15900,28 @@ Changed paths: Improve 3d tick default directions. ------------------------------------------------------------------------ -r2922 | jcbowman | 2007-11-24 06:42:14 -0700 (Sat, 24 Nov 2007) | 2 lines +r2922 | jcbowman | 2007-11-24 14:42:14 +0100 (Sat, 24 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Return empty secondary axis picture without warning. ------------------------------------------------------------------------ -r2921 | jcbowman | 2007-11-22 08:57:42 -0700 (Thu, 22 Nov 2007) | 2 lines +r2921 | jcbowman | 2007-11-22 16:57:42 +0100 (Thu, 22 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Use unsigned long constant. ------------------------------------------------------------------------ -r2920 | jcbowman | 2007-11-21 22:03:02 -0700 (Wed, 21 Nov 2007) | 2 lines +r2920 | jcbowman | 2007-11-22 06:03:02 +0100 (Thu, 22 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Move existing releaseLock code, catching exceptions. ------------------------------------------------------------------------ -r2919 | jcbowman | 2007-11-21 17:56:01 -0700 (Wed, 21 Nov 2007) | 11 lines +r2919 | jcbowman | 2007-11-22 01:56:01 +0100 (Thu, 22 Nov 2007) | 11 lines Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/base/plain_arcs.asy @@ -15543,7 +15945,7 @@ Update documentation. ------------------------------------------------------------------------ -r2918 | jcbowman | 2007-11-20 23:09:32 -0700 (Tue, 20 Nov 2007) | 2 lines +r2918 | jcbowman | 2007-11-21 07:09:32 +0100 (Wed, 21 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.in @@ -15551,34 +15953,34 @@ Changed paths: Work around ghostscript limitations. ------------------------------------------------------------------------ -r2917 | jcbowman | 2007-11-20 22:42:11 -0700 (Tue, 20 Nov 2007) | 2 lines +r2917 | jcbowman | 2007-11-21 06:42:11 +0100 (Wed, 21 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Ensure originalImage is always defined. ------------------------------------------------------------------------ -r2916 | jcbowman | 2007-11-20 22:41:00 -0700 (Tue, 20 Nov 2007) | 2 lines +r2916 | jcbowman | 2007-11-21 06:41:00 +0100 (Wed, 21 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Release lock before quitting to allow saving. ------------------------------------------------------------------------ -r2915 | oshardt | 2007-11-20 17:52:46 -0700 (Tue, 20 Nov 2007) | 1 line +r2915 | oshardt | 2007-11-21 01:52:46 +0100 (Wed, 21 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Switch to selection mode after adding script item. ------------------------------------------------------------------------ -r2914 | jcbowman | 2007-11-20 10:26:25 -0700 (Tue, 20 Nov 2007) | 2 lines +r2914 | jcbowman | 2007-11-20 18:26:25 +0100 (Tue, 20 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Re-enable local directory output check. ------------------------------------------------------------------------ -r2913 | jcbowman | 2007-11-19 23:00:56 -0700 (Mon, 19 Nov 2007) | 4 lines +r2913 | jcbowman | 2007-11-20 07:00:56 +0100 (Tue, 20 Nov 2007) | 4 lines Changed paths: M /trunk/asymptote/fileio.h @@ -15587,33 +15989,33 @@ Fix output(s,update=true) and boutput(s,update=true). Fix segmentation faults for attempted operations on closed files. ------------------------------------------------------------------------ -r2912 | oshardt | 2007-11-19 21:00:18 -0700 (Mon, 19 Nov 2007) | 1 line +r2912 | oshardt | 2007-11-20 05:00:18 +0100 (Tue, 20 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Change zoom selection method to an OptionMenu ------------------------------------------------------------------------ -r2911 | jcbowman | 2007-11-19 20:34:47 -0700 (Mon, 19 Nov 2007) | 2 lines +r2911 | jcbowman | 2007-11-20 04:34:47 +0100 (Tue, 20 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile.in Escape ^. ------------------------------------------------------------------------ -r2910 | oshardt | 2007-11-19 20:19:13 -0700 (Mon, 19 Nov 2007) | 1 line +r2910 | oshardt | 2007-11-20 04:19:13 +0100 (Tue, 20 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyActions.py Account for magnification during undo/redo of translations ------------------------------------------------------------------------ -r2909 | jcbowman | 2007-11-19 10:59:03 -0700 (Mon, 19 Nov 2007) | 2 lines +r2909 | jcbowman | 2007-11-19 18:59:03 +0100 (Mon, 19 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r2908 | jcbowman | 2007-11-19 00:22:35 -0700 (Mon, 19 Nov 2007) | 9 lines +r2908 | jcbowman | 2007-11-19 08:22:35 +0100 (Mon, 19 Nov 2007) | 9 lines Changed paths: M /trunk/asymptote/GUI/xasy.py M /trunk/asymptote/GUI/xasy2asy.py @@ -15630,7 +16032,7 @@ Move image file removal up one function level to avoid busy error under MSWindows. ------------------------------------------------------------------------ -r2907 | jcbowman | 2007-11-18 23:25:22 -0700 (Sun, 18 Nov 2007) | 2 lines +r2907 | jcbowman | 2007-11-19 07:25:22 +0100 (Mon, 19 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyActions.py @@ -15639,14 +16041,14 @@ Changed paths: Add Orest's latest fixes. ------------------------------------------------------------------------ -r2906 | jcbowman | 2007-11-18 19:29:19 -0700 (Sun, 18 Nov 2007) | 2 lines +r2906 | jcbowman | 2007-11-19 03:29:19 +0100 (Mon, 19 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Add informational message about use of system gc version. ------------------------------------------------------------------------ -r2905 | jcbowman | 2007-11-18 17:41:19 -0700 (Sun, 18 Nov 2007) | 3 lines +r2905 | jcbowman | 2007-11-19 01:41:19 +0100 (Mon, 19 Nov 2007) | 3 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -15656,14 +16058,14 @@ Make configure use a system version of Boehm GC if recommended local version of gc isn't present. ------------------------------------------------------------------------ -r2904 | jcbowman | 2007-11-18 17:28:22 -0700 (Sun, 18 Nov 2007) | 2 lines +r2904 | jcbowman | 2007-11-19 01:28:22 +0100 (Mon, 19 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/INSTALL Append generic configure instructions to INSTALL. ------------------------------------------------------------------------ -r2903 | jcbowman | 2007-11-18 10:02:49 -0700 (Sun, 18 Nov 2007) | 2 lines +r2903 | jcbowman | 2007-11-18 18:02:49 +0100 (Sun, 18 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/base/plain_xasy.asy @@ -15673,55 +16075,55 @@ Changed paths: Put deconstructed files in a temporary directory (removed on exit). ------------------------------------------------------------------------ -r2902 | jcbowman | 2007-11-18 08:54:43 -0700 (Sun, 18 Nov 2007) | 2 lines +r2902 | jcbowman | 2007-11-18 16:54:43 +0100 (Sun, 18 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Move workaround for broken curses.h file to proper place. ------------------------------------------------------------------------ -r2901 | jcbowman | 2007-11-17 22:59:59 -0700 (Sat, 17 Nov 2007) | 2 lines +r2901 | jcbowman | 2007-11-18 06:59:59 +0100 (Sun, 18 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix secondary axis bugs. ------------------------------------------------------------------------ -r2900 | jcbowman | 2007-11-17 17:03:34 -0700 (Sat, 17 Nov 2007) | 2 lines +r2900 | jcbowman | 2007-11-18 01:03:34 +0100 (Sun, 18 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy.py Fix ctrl-c. ------------------------------------------------------------------------ -r2899 | oshardt | 2007-11-17 11:47:31 -0700 (Sat, 17 Nov 2007) | 1 line +r2899 | oshardt | 2007-11-17 19:47:31 +0100 (Sat, 17 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy.py Provide a way to quickly close xasy from the command line. ------------------------------------------------------------------------ -r2898 | oshardt | 2007-11-17 11:24:42 -0700 (Sat, 17 Nov 2007) | 1 line +r2898 | oshardt | 2007-11-17 19:24:42 +0100 (Sat, 17 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyActions.py M /trunk/asymptote/GUI/xasyBezierEditor.py Fix bezier editor. Optimize undeletion of items from a script. ------------------------------------------------------------------------ -r2897 | jcbowman | 2007-11-16 23:12:28 -0700 (Fri, 16 Nov 2007) | 2 lines +r2897 | jcbowman | 2007-11-17 07:12:28 +0100 (Sat, 17 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py xasy scripts should put temporary files in current directory, just like asy. ------------------------------------------------------------------------ -r2896 | jcbowman | 2007-11-16 23:11:56 -0700 (Fri, 16 Nov 2007) | 2 lines +r2896 | jcbowman | 2007-11-17 07:11:56 +0100 (Sat, 17 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Remove temporary image files. ------------------------------------------------------------------------ -r2895 | jcbowman | 2007-11-16 22:20:39 -0700 (Fri, 16 Nov 2007) | 2 lines +r2895 | jcbowman | 2007-11-17 06:20:39 +0100 (Sat, 17 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -15730,27 +16132,27 @@ Changed paths: Limit maximum number of command-line arguments to ghostscript; render in blocks. ------------------------------------------------------------------------ -r2894 | oshardt | 2007-11-14 21:10:57 -0700 (Wed, 14 Nov 2007) | 1 line +r2894 | oshardt | 2007-11-15 05:10:57 +0100 (Thu, 15 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Improve handling of zoom slider. ------------------------------------------------------------------------ -r2893 | jcbowman | 2007-11-14 20:25:31 -0700 (Wed, 14 Nov 2007) | 2 lines +r2893 | jcbowman | 2007-11-15 04:25:31 +0100 (Thu, 15 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch Move declarations. ------------------------------------------------------------------------ -r2892 | jcbowman | 2007-11-14 17:52:35 -0700 (Wed, 14 Nov 2007) | 2 lines +r2892 | jcbowman | 2007-11-15 01:52:35 +0100 (Thu, 15 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch Remove unnecessary Tk_PhotoBlank call. ------------------------------------------------------------------------ -r2891 | jcbowman | 2007-11-13 23:53:42 -0700 (Tue, 13 Nov 2007) | 3 lines +r2891 | jcbowman | 2007-11-14 07:53:42 +0100 (Wed, 14 Nov 2007) | 3 lines Changed paths: M /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch @@ -15758,7 +16160,7 @@ Add PIL_BACKGROUND and PIL_MAX_ALPHA_AREA environment variables for efficient alpha channel rendering. ------------------------------------------------------------------------ -r2890 | jcbowman | 2007-11-13 20:03:45 -0700 (Tue, 13 Nov 2007) | 3 lines +r2890 | jcbowman | 2007-11-14 04:03:45 +0100 (Wed, 14 Nov 2007) | 3 lines Changed paths: M /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch @@ -15766,13 +16168,13 @@ Enable full alpha channel support only for objects of area < 10000 pixels, due to slow Tk alpha channel rendering. ------------------------------------------------------------------------ -r2889 | oshardt | 2007-11-13 11:48:04 -0700 (Tue, 13 Nov 2007) | 1 line +r2889 | oshardt | 2007-11-13 19:48:04 +0100 (Tue, 13 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Prevent redraw of canvas when zoom handler is invoked but magnification is not changed. ------------------------------------------------------------------------ -r2888 | jcbowman | 2007-11-13 01:20:36 -0700 (Tue, 13 Nov 2007) | 2 lines +r2888 | jcbowman | 2007-11-13 09:20:36 +0100 (Tue, 13 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/patches/README M /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch @@ -15780,27 +16182,27 @@ Changed paths: A much better fix for PIL antialiasing and transparency that renders quickly. ------------------------------------------------------------------------ -r2887 | oshardt | 2007-11-12 17:57:08 -0700 (Mon, 12 Nov 2007) | 1 line +r2887 | oshardt | 2007-11-13 01:57:08 +0100 (Tue, 13 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py Fix rotation to take into consideration the current magnification ------------------------------------------------------------------------ -r2886 | oshardt | 2007-11-12 15:22:05 -0700 (Mon, 12 Nov 2007) | 1 line +r2886 | oshardt | 2007-11-12 23:22:05 +0100 (Mon, 12 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Fix error in handling of magnification in scripts ------------------------------------------------------------------------ -r2885 | jcbowman | 2007-11-12 14:50:58 -0700 (Mon, 12 Nov 2007) | 2 lines +r2885 | jcbowman | 2007-11-12 22:50:58 +0100 (Mon, 12 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Use full precision constants. ------------------------------------------------------------------------ -r2884 | oshardt | 2007-11-12 14:35:20 -0700 (Mon, 12 Nov 2007) | 1 line +r2884 | oshardt | 2007-11-12 22:35:20 +0100 (Mon, 12 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy.py M /trunk/asymptote/GUI/xasy2asy.py @@ -15809,7 +16211,7 @@ Changed paths: Implement magnification option and zoom feature ------------------------------------------------------------------------ -r2883 | jcbowman | 2007-11-12 00:28:55 -0700 (Mon, 12 Nov 2007) | 2 lines +r2883 | jcbowman | 2007-11-12 08:28:55 +0100 (Mon, 12 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/lexical.h @@ -15817,7 +16219,7 @@ Changed paths: Replace locale-dependent call to atof() with locale-independent lexical::cast(). ------------------------------------------------------------------------ -r2882 | jcbowman | 2007-11-11 22:37:20 -0700 (Sun, 11 Nov 2007) | 4 lines +r2882 | jcbowman | 2007-11-12 06:37:20 +0100 (Mon, 12 Nov 2007) | 4 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/base/plain_xasy.asy @@ -15832,27 +16234,27 @@ Speed up GUI deconstruction. Make "png" the default value of xformat. ------------------------------------------------------------------------ -r2881 | oshardt | 2007-11-11 20:54:28 -0700 (Sun, 11 Nov 2007) | 1 line +r2881 | oshardt | 2007-11-12 04:54:28 +0100 (Mon, 12 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyActions.py Removed debugging information ------------------------------------------------------------------------ -r2880 | jcbowman | 2007-11-07 22:01:26 -0700 (Wed, 07 Nov 2007) | 2 lines +r2880 | jcbowman | 2007-11-08 06:01:26 +0100 (Thu, 08 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Update intersectionspoints. ------------------------------------------------------------------------ -r2879 | jcbowman | 2007-11-07 22:00:15 -0700 (Wed, 07 Nov 2007) | 2 lines +r2879 | jcbowman | 2007-11-08 06:00:15 +0100 (Thu, 08 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation. ------------------------------------------------------------------------ -r2878 | jcbowman | 2007-11-07 21:35:19 -0700 (Wed, 07 Nov 2007) | 4 lines +r2878 | jcbowman | 2007-11-08 05:35:19 +0100 (Thu, 08 Nov 2007) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -15863,7 +16265,7 @@ Fix bug in intersections. Add optional fuzz parameter to intersections and intersectionpoints. ------------------------------------------------------------------------ -r2877 | jcbowman | 2007-11-07 21:03:14 -0700 (Wed, 07 Nov 2007) | 2 lines +r2877 | jcbowman | 2007-11-08 05:03:14 +0100 (Thu, 08 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -15871,7 +16273,7 @@ Changed paths: Add string[] split(string s, string delimiter). ------------------------------------------------------------------------ -r2876 | jcbowman | 2007-11-04 21:25:35 -0700 (Sun, 04 Nov 2007) | 2 lines +r2876 | jcbowman | 2007-11-05 05:25:35 +0100 (Mon, 05 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/interact.h @@ -15881,14 +16283,14 @@ Changed paths: Disable readline history when reading from a pipe. ------------------------------------------------------------------------ -r2875 | jcbowman | 2007-11-04 20:23:02 -0700 (Sun, 04 Nov 2007) | 2 lines +r2875 | jcbowman | 2007-11-05 04:23:02 +0100 (Mon, 05 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update discussion of MSWindows configuration variables. ------------------------------------------------------------------------ -r2874 | jcbowman | 2007-11-04 20:13:34 -0700 (Sun, 04 Nov 2007) | 2 lines +r2874 | jcbowman | 2007-11-05 04:13:34 +0100 (Mon, 05 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in D /trunk/asymptote/asyconsole.bat @@ -15897,14 +16299,14 @@ Changed paths: More windows installation fixes. ------------------------------------------------------------------------ -r2873 | jcbowman | 2007-11-04 15:52:41 -0700 (Sun, 04 Nov 2007) | 2 lines +r2873 | jcbowman | 2007-11-04 23:52:41 +0100 (Sun, 04 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/main.cc Make interactive mode exit with a zero return code. ------------------------------------------------------------------------ -r2872 | jcbowman | 2007-11-04 15:27:28 -0700 (Sun, 04 Nov 2007) | 4 lines +r2872 | jcbowman | 2007-11-04 23:27:28 +0100 (Sun, 04 Nov 2007) | 4 lines Changed paths: M /trunk/asymptote/asyconsole.bat M /trunk/asymptote/asymptote.nsi @@ -15914,14 +16316,14 @@ Fix Windows uninstall. Remove hard-wired path. ------------------------------------------------------------------------ -r2871 | jcbowman | 2007-11-04 09:48:27 -0700 (Sun, 04 Nov 2007) | 2 lines +r2871 | jcbowman | 2007-11-04 17:48:27 +0100 (Sun, 04 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Add missing function. ------------------------------------------------------------------------ -r2870 | jcbowman | 2007-11-03 16:50:29 -0600 (Sat, 03 Nov 2007) | 2 lines +r2870 | jcbowman | 2007-11-03 23:50:29 +0100 (Sat, 03 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -15929,20 +16331,20 @@ Changed paths: Add real[] abs(pair[]) and real[] abs(triple[]) functions. ------------------------------------------------------------------------ -r2869 | oshardt | 2007-11-03 12:24:00 -0600 (Sat, 03 Nov 2007) | 1 line +r2869 | oshardt | 2007-11-03 19:24:00 +0100 (Sat, 03 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyExample.asy Revert change to example. ------------------------------------------------------------------------ -r2868 | oshardt | 2007-11-03 12:05:23 -0600 (Sat, 03 Nov 2007) | 1 line +r2868 | oshardt | 2007-11-03 19:05:23 +0100 (Sat, 03 Nov 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyExample.asy M /trunk/asymptote/GUI/xasyMainWin.py Prompt user before opening a file if current document was modified. ------------------------------------------------------------------------ -r2867 | jcbowman | 2007-11-02 23:09:45 -0600 (Fri, 02 Nov 2007) | 2 lines +r2867 | jcbowman | 2007-11-03 06:09:45 +0100 (Sat, 03 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asyconsole.bat @@ -15952,7 +16354,7 @@ Changed paths: Add windows installation fixes. ------------------------------------------------------------------------ -r2866 | jcbowman | 2007-11-02 16:13:23 -0600 (Fri, 02 Nov 2007) | 2 lines +r2866 | jcbowman | 2007-11-02 23:13:23 +0100 (Fri, 02 Nov 2007) | 2 lines Changed paths: A /trunk/asymptote/asyconsole.bat M /trunk/asymptote/asymptote.nsi @@ -15961,14 +16363,14 @@ Changed paths: Windows installation tweaks. ------------------------------------------------------------------------ -r2865 | jcbowman | 2007-11-02 10:48:05 -0600 (Fri, 02 Nov 2007) | 2 lines +r2865 | jcbowman | 2007-11-02 17:48:05 +0100 (Fri, 02 Nov 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Handle degenerate reference vectors. ------------------------------------------------------------------------ -r2864 | jcbowman | 2007-10-28 13:31:35 -0600 (Sun, 28 Oct 2007) | 3 lines +r2864 | jcbowman | 2007-10-28 20:31:35 +0100 (Sun, 28 Oct 2007) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -15976,7 +16378,7 @@ Project all reference contributions in direction of maximum contribution, for numerical robustness. ------------------------------------------------------------------------ -r2863 | jcbowman | 2007-10-28 12:16:24 -0600 (Sun, 28 Oct 2007) | 2 lines +r2863 | jcbowman | 2007-10-28 19:16:24 +0100 (Sun, 28 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/westnile.asy @@ -15984,7 +16386,7 @@ Changed paths: Improve reference vector calculation. ------------------------------------------------------------------------ -r2862 | jcbowman | 2007-10-26 11:29:19 -0600 (Fri, 26 Oct 2007) | 3 lines +r2862 | jcbowman | 2007-10-26 19:29:19 +0200 (Fri, 26 Oct 2007) | 3 lines Changed paths: M /trunk/asymptote/fileio.cc @@ -15992,14 +16394,14 @@ Respect comments and double quotation marks in whitespace mode (just like cvs mode). ------------------------------------------------------------------------ -r2861 | hammera | 2007-10-25 22:19:32 -0600 (Thu, 25 Oct 2007) | 2 lines +r2861 | hammera | 2007-10-26 06:19:32 +0200 (Fri, 26 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/fundec.cc Test for invalid defvals in rest parameters. ------------------------------------------------------------------------ -r2860 | hammera | 2007-10-25 22:01:21 -0600 (Thu, 25 Oct 2007) | 2 lines +r2860 | hammera | 2007-10-26 06:01:21 +0200 (Fri, 26 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/fundec.cc M /trunk/asymptote/fundec.h @@ -16007,7 +16409,7 @@ Changed paths: Removed unused code. ------------------------------------------------------------------------ -r2859 | jcbowman | 2007-10-22 10:38:21 -0600 (Mon, 22 Oct 2007) | 2 lines +r2859 | jcbowman | 2007-10-22 18:38:21 +0200 (Mon, 22 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -16015,14 +16417,14 @@ Changed paths: Re-enable automatic logarithmic axis coverage routine. ------------------------------------------------------------------------ -r2858 | jcbowman | 2007-10-19 22:55:13 -0600 (Fri, 19 Oct 2007) | 2 lines +r2858 | jcbowman | 2007-10-20 06:55:13 +0200 (Sat, 20 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Exit more gracefully under MSDOS when execvp fails. ------------------------------------------------------------------------ -r2857 | jcbowman | 2007-10-19 21:34:04 -0600 (Fri, 19 Oct 2007) | 7 lines +r2857 | jcbowman | 2007-10-20 05:34:04 +0200 (Sat, 20 Oct 2007) | 7 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/plain_paths.asy @@ -16038,7 +16440,7 @@ Increase the duplicate point detection fuzz. Automatically sort the array returned by intersections. ------------------------------------------------------------------------ -r2856 | jcbowman | 2007-10-18 15:03:38 -0600 (Thu, 18 Oct 2007) | 2 lines +r2856 | jcbowman | 2007-10-18 23:03:38 +0200 (Thu, 18 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/patches/README @@ -16047,7 +16449,7 @@ Changed paths: Add patch to avoid segmentation fault with gc-7.0 on out-of-memory error. ------------------------------------------------------------------------ -r2855 | jcbowman | 2007-10-18 14:15:53 -0600 (Thu, 18 Oct 2007) | 2 lines +r2855 | jcbowman | 2007-10-18 22:15:53 +0200 (Thu, 18 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -16055,7 +16457,7 @@ Changed paths: Make history() return the entire stored interactive history. ------------------------------------------------------------------------ -r2854 | hammera | 2007-10-17 20:04:02 -0600 (Wed, 17 Oct 2007) | 2 lines +r2854 | hammera | 2007-10-18 04:04:02 +0200 (Thu, 18 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/process.cc @@ -16063,14 +16465,14 @@ Changed paths: Fix adding of automatic semicolons to the history. ------------------------------------------------------------------------ -r2853 | hammera | 2007-10-17 19:59:11 -0600 (Wed, 17 Oct 2007) | 2 lines +r2853 | hammera | 2007-10-18 03:59:11 +0200 (Thu, 18 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO Fix default args for rest args. ------------------------------------------------------------------------ -r2852 | jcbowman | 2007-10-16 22:05:12 -0600 (Tue, 16 Oct 2007) | 4 lines +r2852 | jcbowman | 2007-10-17 06:05:12 +0200 (Wed, 17 Oct 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/interact.cc @@ -16082,14 +16484,14 @@ Add a routine history(int n=1) that returns the interactive history. Store auto-terminated lines in the interactive history. ------------------------------------------------------------------------ -r2851 | jcbowman | 2007-10-15 09:42:00 -0600 (Mon, 15 Oct 2007) | 2 lines +r2851 | jcbowman | 2007-10-15 17:42:00 +0200 (Mon, 15 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Try to use a smaller Step adjustment. ------------------------------------------------------------------------ -r2850 | jcbowman | 2007-10-15 00:12:30 -0600 (Mon, 15 Oct 2007) | 4 lines +r2850 | jcbowman | 2007-10-15 08:12:30 +0200 (Mon, 15 Oct 2007) | 4 lines Changed paths: M /trunk/asymptote/asymptote.nsi M /trunk/asymptote/asymptote.spec @@ -16100,14 +16502,14 @@ Fix Asymptote path for MSWindows. Make uninstall remove Xasy start menu shortcut. ------------------------------------------------------------------------ -r2849 | jcbowman | 2007-10-14 22:43:33 -0600 (Sun, 14 Oct 2007) | 2 lines +r2849 | jcbowman | 2007-10-15 06:43:33 +0200 (Mon, 15 Oct 2007) | 2 lines Changed paths: A /trunk/asymptote/asymptote.nsi Add Nullsoft installation script for MSWindows. ------------------------------------------------------------------------ -r2848 | jcbowman | 2007-10-14 22:35:13 -0600 (Sun, 14 Oct 2007) | 3 lines +r2848 | jcbowman | 2007-10-15 06:35:13 +0200 (Mon, 15 Oct 2007) | 3 lines Changed paths: M /trunk/asymptote/settings.cc @@ -16115,28 +16517,28 @@ Under MSWindows, look for asy files in installation path instead of in uninstall path. ------------------------------------------------------------------------ -r2847 | jcbowman | 2007-10-14 22:24:27 -0600 (Sun, 14 Oct 2007) | 2 lines +r2847 | jcbowman | 2007-10-15 06:24:27 +0200 (Mon, 15 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Try to use at least two major ticks. ------------------------------------------------------------------------ -r2846 | jcbowman | 2007-10-14 21:15:41 -0600 (Sun, 14 Oct 2007) | 2 lines +r2846 | jcbowman | 2007-10-15 05:15:41 +0200 (Mon, 15 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Fix title(""). ------------------------------------------------------------------------ -r2845 | jcbowman | 2007-10-11 12:22:12 -0600 (Thu, 11 Oct 2007) | 1 line +r2845 | jcbowman | 2007-10-11 20:22:12 +0200 (Thu, 11 Oct 2007) | 1 line Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac Increment version to 1.37svn. ------------------------------------------------------------------------ -r2844 | jcbowman | 2007-10-11 11:31:34 -0600 (Thu, 11 Oct 2007) | 2 lines +r2844 | jcbowman | 2007-10-11 19:31:34 +0200 (Thu, 11 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/drawgrestore.h M /trunk/asymptote/drawgsave.h @@ -16145,13 +16547,13 @@ Changed paths: Fix bugs in tex(), postscript(), gsave(), and grestore() commands. ------------------------------------------------------------------------ -r2843 | jcbowman | 2007-10-11 03:15:48 -0600 (Thu, 11 Oct 2007) | 1 line +r2843 | jcbowman | 2007-10-11 11:15:48 +0200 (Thu, 11 Oct 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.36svn. ------------------------------------------------------------------------ -r2842 | jcbowman | 2007-10-11 02:21:31 -0600 (Thu, 11 Oct 2007) | 2 lines +r2842 | jcbowman | 2007-10-11 10:21:31 +0200 (Thu, 11 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/drawpath.cc @@ -16160,21 +16562,21 @@ Changed paths: Fix numeric formatting of setdash arguments. ------------------------------------------------------------------------ -r2841 | jcbowman | 2007-10-11 01:21:58 -0600 (Thu, 11 Oct 2007) | 2 lines +r2841 | jcbowman | 2007-10-11 09:21:58 +0200 (Thu, 11 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Work around hang in intersect for nearly identical paths by adding some fuzz. ------------------------------------------------------------------------ -r2840 | jcbowman | 2007-10-11 00:44:58 -0600 (Thu, 11 Oct 2007) | 2 lines +r2840 | jcbowman | 2007-10-11 08:44:58 +0200 (Thu, 11 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.35svn. ------------------------------------------------------------------------ -r2839 | jcbowman | 2007-10-10 22:44:16 -0600 (Wed, 10 Oct 2007) | 2 lines +r2839 | jcbowman | 2007-10-11 06:44:16 +0200 (Thu, 11 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -16185,35 +16587,35 @@ Changed paths: Add Cygwin fixes. ------------------------------------------------------------------------ -r2838 | jcbowman | 2007-10-10 15:17:31 -0600 (Wed, 10 Oct 2007) | 2 lines +r2838 | jcbowman | 2007-10-10 23:17:31 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update GUI documentation. ------------------------------------------------------------------------ -r2837 | jcbowman | 2007-10-10 10:59:03 -0600 (Wed, 10 Oct 2007) | 2 lines +r2837 | jcbowman | 2007-10-10 18:59:03 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Make xasy a relative symbolic link. ------------------------------------------------------------------------ -r2836 | jcbowman | 2007-10-10 09:00:51 -0600 (Wed, 10 Oct 2007) | 2 lines +r2836 | jcbowman | 2007-10-10 17:00:51 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Update xasy file name. ------------------------------------------------------------------------ -r2835 | jcbowman | 2007-10-10 08:42:59 -0600 (Wed, 10 Oct 2007) | 2 lines +r2835 | jcbowman | 2007-10-10 16:42:59 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix typo. ------------------------------------------------------------------------ -r2834 | jcbowman | 2007-10-10 08:36:32 -0600 (Wed, 10 Oct 2007) | 2 lines +r2834 | jcbowman | 2007-10-10 16:36:32 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: D /trunk/asymptote/GUI/xasy A /trunk/asymptote/GUI/xasy.py (from /trunk/asymptote/GUI/xasy:2831) @@ -16224,21 +16626,21 @@ Changed paths: Install xasy and associated files. ------------------------------------------------------------------------ -r2833 | jcbowman | 2007-10-09 22:12:51 -0600 (Tue, 09 Oct 2007) | 2 lines +r2833 | jcbowman | 2007-10-10 06:12:51 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Update xasy location. ------------------------------------------------------------------------ -r2832 | jcbowman | 2007-10-09 22:00:32 -0600 (Tue, 09 Oct 2007) | 2 lines +r2832 | jcbowman | 2007-10-10 06:00:32 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/pstoedit.asy Remove obsolete reference to settings.deconstruct. ------------------------------------------------------------------------ -r2831 | jcbowman | 2007-10-09 21:43:53 -0600 (Tue, 09 Oct 2007) | 2 lines +r2831 | jcbowman | 2007-10-10 05:43:53 +0200 (Wed, 10 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/base/plain_xasy.asy @@ -16248,14 +16650,14 @@ Changed paths: Replace opendot with filltype argument of UnFill to dot routines. ------------------------------------------------------------------------ -r2830 | jcbowman | 2007-10-09 15:51:51 -0600 (Tue, 09 Oct 2007) | 2 lines +r2830 | jcbowman | 2007-10-09 23:51:51 +0200 (Tue, 09 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove intermediate eps files in inline pdf mode. ------------------------------------------------------------------------ -r2829 | jcbowman | 2007-10-09 15:05:23 -0600 (Tue, 09 Oct 2007) | 5 lines +r2829 | jcbowman | 2007-10-09 23:05:23 +0200 (Tue, 09 Oct 2007) | 5 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/three.asy @@ -16271,7 +16673,7 @@ Implement intersectionpoints in terms of a new more efficient and robust intersections routine. ------------------------------------------------------------------------ -r2828 | jcbowman | 2007-10-09 15:01:41 -0600 (Tue, 09 Oct 2007) | 2 lines +r2828 | jcbowman | 2007-10-09 23:01:41 +0200 (Tue, 09 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/histogram.asy M /trunk/asymptote/doc/legend.asy @@ -16280,7 +16682,7 @@ Changed paths: Add trailingzero tick format. ------------------------------------------------------------------------ -r2827 | jcbowman | 2007-10-07 11:00:47 -0600 (Sun, 07 Oct 2007) | 2 lines +r2827 | jcbowman | 2007-10-07 19:00:47 +0200 (Sun, 07 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/drawclipbegin.h M /trunk/asymptote/drawclipend.h @@ -16292,7 +16694,7 @@ Changed paths: Make r2785 changes work with deconstruct. ------------------------------------------------------------------------ -r2826 | jcbowman | 2007-10-05 21:03:57 -0600 (Fri, 05 Oct 2007) | 4 lines +r2826 | jcbowman | 2007-10-06 05:03:57 +0200 (Sat, 06 Oct 2007) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_strings.asy @@ -16305,28 +16707,28 @@ Adjust defaultformat for axes to make tick labels unique. Add general trailingzero format string; update examples. ------------------------------------------------------------------------ -r2825 | jcbowman | 2007-10-03 14:22:52 -0600 (Wed, 03 Oct 2007) | 2 lines +r2825 | jcbowman | 2007-10-03 22:22:52 +0200 (Wed, 03 Oct 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Improve autoscaling of graphs for close minimum and maximum values. ------------------------------------------------------------------------ -r2824 | jcbowman | 2007-09-28 12:31:44 -0600 (Fri, 28 Sep 2007) | 2 lines +r2824 | jcbowman | 2007-09-28 20:31:44 +0200 (Fri, 28 Sep 2007) | 2 lines Changed paths: A /trunk/asymptote/examples/jump.asy Add example of opendot. ------------------------------------------------------------------------ -r2823 | jcbowman | 2007-09-28 12:19:18 -0600 (Fri, 28 Sep 2007) | 2 lines +r2823 | jcbowman | 2007-09-28 20:19:18 +0200 (Fri, 28 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy Add opendot routines. ------------------------------------------------------------------------ -r2822 | hammera | 2007-09-24 21:11:00 -0600 (Mon, 24 Sep 2007) | 2 lines +r2822 | hammera | 2007-09-25 05:11:00 +0200 (Tue, 25 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.h M /trunk/asymptote/picture.cc @@ -16339,13 +16741,13 @@ Changed paths: Changed global.back()-> to processData(). ------------------------------------------------------------------------ -r2821 | pivaldi | 2007-09-24 11:20:27 -0600 (Mon, 24 Sep 2007) | 1 line +r2821 | pivaldi | 2007-09-24 19:20:27 +0200 (Mon, 24 Sep 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Defer hard coded commands and options to variables. ------------------------------------------------------------------------ -r2820 | jcbowman | 2007-09-23 10:45:41 -0600 (Sun, 23 Sep 2007) | 2 lines +r2820 | jcbowman | 2007-09-23 18:45:41 +0200 (Sun, 23 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.h M /trunk/asymptote/runtime.in @@ -16353,21 +16755,21 @@ Changed paths: Fix shipout bug. ------------------------------------------------------------------------ -r2819 | jcbowman | 2007-09-21 10:17:43 -0600 (Fri, 21 Sep 2007) | 2 lines +r2819 | jcbowman | 2007-09-21 18:17:43 +0200 (Fri, 21 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Remove obsolete -q option. ------------------------------------------------------------------------ -r2818 | jcbowman | 2007-09-20 22:27:59 -0600 (Thu, 20 Sep 2007) | 2 lines +r2818 | jcbowman | 2007-09-21 06:27:59 +0200 (Fri, 21 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/pen.h Change default LaTeX font to package-dependent setting. ------------------------------------------------------------------------ -r2817 | jcbowman | 2007-09-19 21:46:56 -0600 (Wed, 19 Sep 2007) | 2 lines +r2817 | jcbowman | 2007-09-20 05:46:56 +0200 (Thu, 20 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/settings.cc @@ -16375,7 +16777,7 @@ Changed paths: Add modification of ncurses patch from mvid. ------------------------------------------------------------------------ -r2816 | jcbowman | 2007-09-18 00:10:58 -0600 (Tue, 18 Sep 2007) | 2 lines +r2816 | jcbowman | 2007-09-18 08:10:58 +0200 (Tue, 18 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -16385,28 +16787,28 @@ Changed paths: Avoid nesting capacity overflows in arctime. ------------------------------------------------------------------------ -r2815 | jcbowman | 2007-09-16 20:57:35 -0600 (Sun, 16 Sep 2007) | 2 lines +r2815 | jcbowman | 2007-09-17 04:57:35 +0200 (Mon, 17 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add new magnification argument to shipout. ------------------------------------------------------------------------ -r2814 | jcbowman | 2007-09-16 20:48:23 -0600 (Sun, 16 Sep 2007) | 2 lines +r2814 | jcbowman | 2007-09-17 04:48:23 +0200 (Mon, 17 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc Make reportWarning generate a warning message only. ------------------------------------------------------------------------ -r2813 | jcbowman | 2007-09-16 20:42:53 -0600 (Sun, 16 Sep 2007) | 2 lines +r2813 | jcbowman | 2007-09-17 04:42:53 +0200 (Mon, 17 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Ignore spurious final blank line when reading strings. ------------------------------------------------------------------------ -r2812 | jcbowman | 2007-09-16 11:44:00 -0600 (Sun, 16 Sep 2007) | 2 lines +r2812 | jcbowman | 2007-09-16 19:44:00 +0200 (Sun, 16 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/fileio.h @@ -16414,28 +16816,28 @@ Changed paths: Fix string csv reads. ------------------------------------------------------------------------ -r2811 | jcbowman | 2007-09-15 22:12:21 -0600 (Sat, 15 Sep 2007) | 2 lines +r2811 | jcbowman | 2007-09-16 06:12:21 +0200 (Sun, 16 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Another comment fix for reading strings. ------------------------------------------------------------------------ -r2810 | jcbowman | 2007-09-15 02:42:12 -0600 (Sat, 15 Sep 2007) | 2 lines +r2810 | jcbowman | 2007-09-15 10:42:12 +0200 (Sat, 15 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fix example. ------------------------------------------------------------------------ -r2809 | jcbowman | 2007-09-15 02:40:06 -0600 (Sat, 15 Sep 2007) | 2 lines +r2809 | jcbowman | 2007-09-15 10:40:06 +0200 (Sat, 15 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fix typo. ------------------------------------------------------------------------ -r2808 | jcbowman | 2007-09-15 02:38:23 -0600 (Sat, 15 Sep 2007) | 2 lines +r2808 | jcbowman | 2007-09-15 10:38:23 +0200 (Sat, 15 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -16443,7 +16845,7 @@ Changed paths: Fix errors in documentation and FAQ. ------------------------------------------------------------------------ -r2807 | jcbowman | 2007-09-14 16:09:19 -0600 (Fri, 14 Sep 2007) | 4 lines +r2807 | jcbowman | 2007-09-15 00:09:19 +0200 (Sat, 15 Sep 2007) | 4 lines Changed paths: D /trunk/asymptote/doc/mosquito.csv M /trunk/asymptote/fileio.cc @@ -16453,14 +16855,14 @@ Support comments when reading strings in cvs mode. Remove unused file. ------------------------------------------------------------------------ -r2806 | jcbowman | 2007-09-12 19:42:40 -0600 (Wed, 12 Sep 2007) | 2 lines +r2806 | jcbowman | 2007-09-13 03:42:40 +0200 (Thu, 13 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Improve description of interativeWrite. ------------------------------------------------------------------------ -r2805 | hammera | 2007-09-08 11:48:06 -0600 (Sat, 08 Sep 2007) | 4 lines +r2805 | hammera | 2007-09-08 19:48:06 +0200 (Sat, 08 Sep 2007) | 4 lines Changed paths: M /trunk/asymptote/camp.y @@ -16469,7 +16871,7 @@ Fixed syntax to allow expressions such as (x); Based on a patch by Orest Shardt. ------------------------------------------------------------------------ -r2804 | hammera | 2007-09-05 16:53:51 -0600 (Wed, 05 Sep 2007) | 2 lines +r2804 | hammera | 2007-09-06 00:53:51 +0200 (Thu, 06 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/stm.cc @@ -16477,7 +16879,7 @@ Changed paths: Added interactiveWrite option. ------------------------------------------------------------------------ -r2803 | jcbowman | 2007-09-04 21:15:41 -0600 (Tue, 04 Sep 2007) | 4 lines +r2803 | jcbowman | 2007-09-05 05:15:41 +0200 (Wed, 05 Sep 2007) | 4 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/process.cc @@ -16488,14 +16890,14 @@ Remove --enable-cplusplus option. Remove unused quiet option. ------------------------------------------------------------------------ -r2802 | oshardt | 2007-09-03 12:01:42 -0600 (Mon, 03 Sep 2007) | 1 line +r2802 | oshardt | 2007-09-03 20:01:42 +0200 (Mon, 03 Sep 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py Implement pen validation ------------------------------------------------------------------------ -r2801 | jcbowman | 2007-09-02 23:36:10 -0600 (Sun, 02 Sep 2007) | 2 lines +r2801 | jcbowman | 2007-09-03 07:36:10 +0200 (Mon, 03 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/picture.h @@ -16504,14 +16906,14 @@ Changed paths: Make deconstruct close bboxout file. ------------------------------------------------------------------------ -r2800 | jcbowman | 2007-09-02 23:21:29 -0600 (Sun, 02 Sep 2007) | 2 lines +r2800 | jcbowman | 2007-09-03 07:21:29 +0200 (Mon, 03 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyExample.asy Use indexedTransform constructor. ------------------------------------------------------------------------ -r2799 | oshardt | 2007-09-02 21:01:09 -0600 (Sun, 02 Sep 2007) | 1 line +r2799 | oshardt | 2007-09-03 05:01:09 +0200 (Mon, 03 Sep 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyExample.asy @@ -16521,27 +16923,27 @@ Changed paths: Make various bug fixes and improvements. ------------------------------------------------------------------------ -r2798 | oshardt | 2007-09-02 18:07:55 -0600 (Sun, 02 Sep 2007) | 1 line +r2798 | oshardt | 2007-09-03 02:07:55 +0200 (Mon, 03 Sep 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py Fix documentation request. ------------------------------------------------------------------------ -r2797 | oshardt | 2007-09-02 17:59:21 -0600 (Sun, 02 Sep 2007) | 1 line +r2797 | oshardt | 2007-09-03 01:59:21 +0200 (Mon, 03 Sep 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Temporarily remove zoom control until feature is implemented. ------------------------------------------------------------------------ -r2796 | oshardt | 2007-09-02 17:46:34 -0600 (Sun, 02 Sep 2007) | 2 lines +r2796 | oshardt | 2007-09-03 01:46:34 +0200 (Mon, 03 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Improved text in dialogs. Made the loading and saving of files specified on the command line consistent. ------------------------------------------------------------------------ -r2795 | jcbowman | 2007-09-01 22:34:02 -0600 (Sat, 01 Sep 2007) | 6 lines +r2795 | jcbowman | 2007-09-02 06:34:02 +0200 (Sun, 02 Sep 2007) | 6 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_xasy.asy @@ -16559,7 +16961,7 @@ Add support for magnification. Remove unused code. ------------------------------------------------------------------------ -r2794 | hammera | 2007-08-31 20:16:17 -0600 (Fri, 31 Aug 2007) | 2 lines +r2794 | hammera | 2007-09-01 04:16:17 +0200 (Sat, 01 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/entry.cc M /trunk/asymptote/entry.h @@ -16567,7 +16969,7 @@ Changed paths: Fixed bug regarding permission lists of types. ------------------------------------------------------------------------ -r2793 | hammera | 2007-08-31 20:15:41 -0600 (Fri, 31 Aug 2007) | 3 lines +r2793 | hammera | 2007-09-01 04:15:41 +0200 (Sat, 01 Sep 2007) | 3 lines Changed paths: M /trunk/asymptote/dec.cc @@ -16575,7 +16977,7 @@ Corrected documentation. ------------------------------------------------------------------------ -r2792 | hammera | 2007-08-31 20:15:16 -0600 (Fri, 31 Aug 2007) | 2 lines +r2792 | hammera | 2007-09-01 04:15:16 +0200 (Sat, 01 Sep 2007) | 2 lines Changed paths: M /trunk/asymptote/parser.cc M /trunk/asymptote/parser.h @@ -16583,21 +16985,21 @@ Changed paths: Made parameter name more descriptive. ------------------------------------------------------------------------ -r2791 | jcbowman | 2007-08-31 08:35:08 -0600 (Fri, 31 Aug 2007) | 2 lines +r2791 | jcbowman | 2007-08-31 16:35:08 +0200 (Fri, 31 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Use unique keys. ------------------------------------------------------------------------ -r2790 | jcbowman | 2007-08-30 20:15:48 -0600 (Thu, 30 Aug 2007) | 2 lines +r2790 | jcbowman | 2007-08-31 04:15:48 +0200 (Fri, 31 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Check for libcurses only if libncurses is not found. ------------------------------------------------------------------------ -r2789 | jcbowman | 2007-08-29 13:56:57 -0600 (Wed, 29 Aug 2007) | 2 lines +r2789 | jcbowman | 2007-08-29 21:56:57 +0200 (Wed, 29 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyFile.py @@ -16607,7 +17009,7 @@ Changed paths: Use constructor for indexedTransform. ------------------------------------------------------------------------ -r2788 | jcbowman | 2007-08-29 11:22:33 -0600 (Wed, 29 Aug 2007) | 2 lines +r2788 | jcbowman | 2007-08-29 19:22:33 +0200 (Wed, 29 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/plain_xasy.asy @@ -16615,7 +17017,7 @@ Changed paths: Fix shipout when inXasyMode is true. ------------------------------------------------------------------------ -r2787 | oshardt | 2007-08-29 09:15:31 -0600 (Wed, 29 Aug 2007) | 2 lines +r2787 | oshardt | 2007-08-29 17:15:31 +0200 (Wed, 29 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/UndoRedoStack.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -16623,7 +17025,7 @@ Changed paths: Fix logic for recognizing modified files. Correct the logic for querying user about exporting modified files. ------------------------------------------------------------------------ -r2786 | jcbowman | 2007-08-29 08:54:00 -0600 (Wed, 29 Aug 2007) | 3 lines +r2786 | jcbowman | 2007-08-29 16:54:00 +0200 (Wed, 29 Aug 2007) | 3 lines Changed paths: M /trunk/asymptote/drawclipbegin.h M /trunk/asymptote/drawclipend.h @@ -16635,7 +17037,7 @@ Revert to gsave/grestore instead of clipsave/cliprestore due to pen caching assumptions. ------------------------------------------------------------------------ -r2785 | jcbowman | 2007-08-28 09:30:26 -0600 (Tue, 28 Aug 2007) | 2 lines +r2785 | jcbowman | 2007-08-28 17:30:26 +0200 (Tue, 28 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/drawclipbegin.h M /trunk/asymptote/drawclipend.h @@ -16644,27 +17046,27 @@ Changed paths: Enclose tex clip within picture environment to avoid unwanted page breaks. ------------------------------------------------------------------------ -r2784 | oshardt | 2007-08-27 15:48:38 -0600 (Mon, 27 Aug 2007) | 2 lines +r2784 | oshardt | 2007-08-27 23:48:38 +0200 (Mon, 27 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Prevent switching editing mode during incomplete drawing operation. Search for file with .asy extension if no .asy extension provided. ------------------------------------------------------------------------ -r2783 | pivaldi | 2007-08-27 15:33:06 -0600 (Mon, 27 Aug 2007) | 1 line +r2783 | pivaldi | 2007-08-27 23:33:06 +0200 (Mon, 27 Aug 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy markers.asy: compute golden mean in a static variable. ------------------------------------------------------------------------ -r2782 | oshardt | 2007-08-27 15:23:17 -0600 (Mon, 27 Aug 2007) | 1 line +r2782 | oshardt | 2007-08-27 23:23:17 +0200 (Mon, 27 Aug 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyExample.asy Remove unneeded whitespace. ------------------------------------------------------------------------ -r2781 | jcbowman | 2007-08-27 11:56:33 -0600 (Mon, 27 Aug 2007) | 6 lines +r2781 | jcbowman | 2007-08-27 19:56:33 +0200 (Mon, 27 Aug 2007) | 6 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py M /trunk/asymptote/base/patterns.asy @@ -16680,7 +17082,7 @@ Remove preamble option from shipout for consistency with xasy. Make explicit shipouts with options work with xasy. ------------------------------------------------------------------------ -r2780 | jcbowman | 2007-08-27 10:33:40 -0600 (Mon, 27 Aug 2007) | 2 lines +r2780 | jcbowman | 2007-08-27 18:33:40 +0200 (Mon, 27 Aug 2007) | 2 lines Changed paths: A /trunk/asymptote/GUI/xasy (from /trunk/asymptote/GUI/xasy.py:2778) D /trunk/asymptote/GUI/xasy.py @@ -16689,55 +17091,55 @@ Changed paths: Rename xasy.py to xasy. ------------------------------------------------------------------------ -r2779 | jcbowman | 2007-08-27 10:24:23 -0600 (Mon, 27 Aug 2007) | 2 lines +r2779 | jcbowman | 2007-08-27 18:24:23 +0200 (Mon, 27 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyExample.asy Update example. ------------------------------------------------------------------------ -r2778 | pivaldi | 2007-08-26 19:13:14 -0600 (Sun, 26 Aug 2007) | 1 line +r2778 | pivaldi | 2007-08-27 03:13:14 +0200 (Mon, 27 Aug 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy marker.asy: uniformize marker sizes and notation. ------------------------------------------------------------------------ -r2777 | jcbowman | 2007-08-26 15:40:25 -0600 (Sun, 26 Aug 2007) | 2 lines +r2777 | jcbowman | 2007-08-26 23:40:25 +0200 (Sun, 26 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Explain how map is a special case of sequence. ------------------------------------------------------------------------ -r2776 | jcbowman | 2007-08-26 13:28:09 -0600 (Sun, 26 Aug 2007) | 2 lines +r2776 | jcbowman | 2007-08-26 21:28:09 +0200 (Sun, 26 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix documentation of map. ------------------------------------------------------------------------ -r2775 | jcbowman | 2007-08-24 11:00:05 -0600 (Fri, 24 Aug 2007) | 2 lines +r2775 | jcbowman | 2007-08-24 19:00:05 +0200 (Fri, 24 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Simplify logic. ------------------------------------------------------------------------ -r2774 | jcbowman | 2007-08-24 10:59:42 -0600 (Fri, 24 Aug 2007) | 2 lines +r2774 | jcbowman | 2007-08-24 18:59:42 +0200 (Fri, 24 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc Make asy -o /dir/ file.asy output to /dir/file.eps. ------------------------------------------------------------------------ -r2773 | jcbowman | 2007-08-16 08:23:05 -0600 (Thu, 16 Aug 2007) | 2 lines +r2773 | jcbowman | 2007-08-16 16:23:05 +0200 (Thu, 16 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/extra/intro.asy Add discussion of 3D generalization of Hobby's algorithm. ------------------------------------------------------------------------ -r2772 | jcbowman | 2007-08-14 04:39:42 -0600 (Tue, 14 Aug 2007) | 2 lines +r2772 | jcbowman | 2007-08-14 12:39:42 +0200 (Tue, 14 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -16746,14 +17148,14 @@ Changed paths: Avoid evaluating function outside of [a,b] (due to finite numerical precision). ------------------------------------------------------------------------ -r2771 | jcbowman | 2007-08-14 02:15:00 -0600 (Tue, 14 Aug 2007) | 2 lines +r2771 | jcbowman | 2007-08-14 10:15:00 +0200 (Tue, 14 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix accent. ------------------------------------------------------------------------ -r2770 | jcbowman | 2007-08-11 04:01:15 -0600 (Sat, 11 Aug 2007) | 4 lines +r2770 | jcbowman | 2007-08-11 12:01:15 +0200 (Sat, 11 Aug 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -16763,21 +17165,21 @@ Use \PackageWarning instead of \message. Update list of contributors. ------------------------------------------------------------------------ -r2769 | oshardt | 2007-08-09 12:13:42 -0600 (Thu, 09 Aug 2007) | 2 lines +r2769 | oshardt | 2007-08-09 20:13:42 +0200 (Thu, 09 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Use askopenfilename() instead of askopenfile() Use asksaveasfilename() instead of asksaveasfile() ------------------------------------------------------------------------ -r2768 | oshardt | 2007-08-09 11:00:42 -0600 (Thu, 09 Aug 2007) | 2 lines +r2768 | oshardt | 2007-08-09 19:00:42 +0200 (Thu, 09 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Disabled tear-offs for improved crossplatform look and feel User is now asked about saving changes when closing a modified file ------------------------------------------------------------------------ -r2767 | jcbowman | 2007-08-09 02:59:28 -0600 (Thu, 09 Aug 2007) | 2 lines +r2767 | jcbowman | 2007-08-09 10:59:28 +0200 (Thu, 09 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/runtime.in @@ -16786,7 +17188,7 @@ Changed paths: Remove old GUI transform support. ------------------------------------------------------------------------ -r2766 | jcbowman | 2007-08-09 02:34:50 -0600 (Thu, 09 Aug 2007) | 8 lines +r2766 | jcbowman | 2007-08-09 10:34:50 +0200 (Thu, 09 Aug 2007) | 8 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy M /trunk/asymptote/drawclipbegin.h @@ -16809,7 +17211,7 @@ Optimize printer stack use by pruning unneeded clipsave/cliprestore commands. Avoid nesting of clipsave/cliprestore commands when using UnFill. ------------------------------------------------------------------------ -r2765 | oshardt | 2007-08-07 11:26:04 -0600 (Tue, 07 Aug 2007) | 1 line +r2765 | oshardt | 2007-08-07 19:26:04 +0200 (Tue, 07 Aug 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyActions.py @@ -16817,7 +17219,7 @@ Changed paths: Changing the current pen's properties affects selected items ------------------------------------------------------------------------ -r2764 | jcbowman | 2007-08-07 03:24:10 -0600 (Tue, 07 Aug 2007) | 2 lines +r2764 | jcbowman | 2007-08-07 11:24:10 +0200 (Tue, 07 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/mathop.h M /trunk/asymptote/runtime.in @@ -16825,7 +17227,7 @@ Changed paths: Compute pair^int by repeated multiplication, just like real^int. ------------------------------------------------------------------------ -r2763 | oshardt | 2007-08-01 09:39:08 -0600 (Wed, 01 Aug 2007) | 2 lines +r2763 | oshardt | 2007-08-01 17:39:08 +0200 (Wed, 01 Aug 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/base/plain_xasy.asy @@ -16835,7 +17237,7 @@ Changed paths: Removed signals for xasy Switched from GUIop to xformStack in shipout() ------------------------------------------------------------------------ -r2762 | oshardt | 2007-07-31 15:05:37 -0600 (Tue, 31 Jul 2007) | 8 lines +r2762 | oshardt | 2007-07-31 23:05:37 +0200 (Tue, 31 Jul 2007) | 8 lines Changed paths: M /trunk/asymptote/GUI/UndoRedoStack.py M /trunk/asymptote/GUI/xasy2asy.py @@ -16853,7 +17255,7 @@ Implemented undo/redo for clearing of an item's transforms Implemented undo/redo for drawing and deletion of a drawn item Implemented undo/redo for modification of a drawn item ------------------------------------------------------------------------ -r2761 | oshardt | 2007-07-30 15:09:11 -0600 (Mon, 30 Jul 2007) | 2 lines +r2761 | oshardt | 2007-07-30 23:09:11 +0200 (Mon, 30 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyActions.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -16861,7 +17263,7 @@ Changed paths: Added undo/redo for creation and editing of script items Added undo/redo for raising and lowering of items ------------------------------------------------------------------------ -r2760 | oshardt | 2007-07-30 12:12:29 -0600 (Mon, 30 Jul 2007) | 3 lines +r2760 | oshardt | 2007-07-30 20:12:29 +0200 (Mon, 30 Jul 2007) | 3 lines Changed paths: M /trunk/asymptote/GUI/xasy.py M /trunk/asymptote/GUI/xasyActions.py @@ -16877,13 +17279,13 @@ Updated headers Modified method for storing undo/redo information for translations Implemented undo/redo for addition and modification of labels ------------------------------------------------------------------------ -r2759 | jcbowman | 2007-07-29 17:22:45 -0600 (Sun, 29 Jul 2007) | 1 line +r2759 | jcbowman | 2007-07-30 01:22:45 +0200 (Mon, 30 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.34svn. ------------------------------------------------------------------------ -r2758 | jcbowman | 2007-07-29 10:25:12 -0600 (Sun, 29 Jul 2007) | 2 lines +r2758 | jcbowman | 2007-07-29 18:25:12 +0200 (Sun, 29 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/psfile.h @@ -16892,14 +17294,14 @@ Changed paths: Fix interactive viewing. ------------------------------------------------------------------------ -r2757 | jcbowman | 2007-07-29 03:29:03 -0600 (Sun, 29 Jul 2007) | 2 lines +r2757 | jcbowman | 2007-07-29 11:29:03 +0200 (Sun, 29 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Remove extraneous preprocessor definitions. ------------------------------------------------------------------------ -r2756 | jcbowman | 2007-07-29 02:36:43 -0600 (Sun, 29 Jul 2007) | 2 lines +r2756 | jcbowman | 2007-07-29 10:36:43 +0200 (Sun, 29 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/Makefile.in @@ -16908,28 +17310,28 @@ Changed paths: Add large file support. ------------------------------------------------------------------------ -r2755 | jcbowman | 2007-07-28 13:41:50 -0600 (Sat, 28 Jul 2007) | 2 lines +r2755 | jcbowman | 2007-07-28 21:41:50 +0200 (Sat, 28 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update list of contributors. ------------------------------------------------------------------------ -r2754 | jcbowman | 2007-07-28 09:53:06 -0600 (Sat, 28 Jul 2007) | 2 lines +r2754 | jcbowman | 2007-07-28 17:53:06 +0200 (Sat, 28 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Open input files in input-only mode. ------------------------------------------------------------------------ -r2753 | jcbowman | 2007-07-28 09:19:07 -0600 (Sat, 28 Jul 2007) | 2 lines +r2753 | jcbowman | 2007-07-28 17:19:07 +0200 (Sat, 28 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Allow multiple invocations of labelpath. ------------------------------------------------------------------------ -r2752 | oshardt | 2007-07-27 14:57:14 -0600 (Fri, 27 Jul 2007) | 2 lines +r2752 | oshardt | 2007-07-27 22:57:14 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -16937,19 +17339,19 @@ Changed paths: Handle case of script that produces no images. Remove keyboard bindings for main window when using script editor. ------------------------------------------------------------------------ -r2751 | oshardt | 2007-07-27 14:38:23 -0600 (Fri, 27 Jul 2007) | 1 line +r2751 | oshardt | 2007-07-27 22:38:23 +0200 (Fri, 27 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Raising and lowering of script items preserves drawing order of all items in script ------------------------------------------------------------------------ -r2750 | oshardt | 2007-07-27 14:23:57 -0600 (Fri, 27 Jul 2007) | 1 line +r2750 | oshardt | 2007-07-27 22:23:57 +0200 (Fri, 27 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Fixed handling of deleted items. ------------------------------------------------------------------------ -r2749 | jcbowman | 2007-07-27 14:05:08 -0600 (Fri, 27 Jul 2007) | 2 lines +r2749 | jcbowman | 2007-07-27 22:05:08 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/pair.h M /trunk/asymptote/path.cc @@ -16958,14 +17360,14 @@ Changed paths: Work around old broken compilers. ------------------------------------------------------------------------ -r2748 | jcbowman | 2007-07-27 13:13:41 -0600 (Fri, 27 Jul 2007) | 2 lines +r2748 | jcbowman | 2007-07-27 21:13:41 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/pstoedit.asy Fix conditional. ------------------------------------------------------------------------ -r2747 | oshardt | 2007-07-27 11:45:34 -0600 (Fri, 27 Jul 2007) | 1 line +r2747 | oshardt | 2007-07-27 19:45:34 +0200 (Fri, 27 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -16973,13 +17375,13 @@ Changed paths: Improved handling of missing asymptote executable on windows ------------------------------------------------------------------------ -r2746 | oshardt | 2007-07-27 10:37:56 -0600 (Fri, 27 Jul 2007) | 1 line +r2746 | oshardt | 2007-07-27 18:37:56 +0200 (Fri, 27 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Error fixed ------------------------------------------------------------------------ -r2745 | oshardt | 2007-07-27 10:23:52 -0600 (Fri, 27 Jul 2007) | 2 lines +r2745 | oshardt | 2007-07-27 18:23:52 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/GUI/xasyOptions.py M /trunk/asymptote/GUI/xasyOptionsDialog.py @@ -16987,7 +17389,7 @@ Changed paths: Check registry to find asy installation on windows. Add browse button for asy path selection ------------------------------------------------------------------------ -r2744 | jcbowman | 2007-07-27 10:02:28 -0600 (Fri, 27 Jul 2007) | 4 lines +r2744 | jcbowman | 2007-07-27 18:02:28 +0200 (Fri, 27 Jul 2007) | 4 lines Changed paths: M /trunk/asymptote/base/surface.asy A /trunk/asymptote/examples/teapot.asy @@ -16997,13 +17399,13 @@ Restrict projection bounding box recursion to a depth of 16. Add teapot example. ------------------------------------------------------------------------ -r2743 | oshardt | 2007-07-27 09:46:58 -0600 (Fri, 27 Jul 2007) | 1 line +r2743 | oshardt | 2007-07-27 17:46:58 +0200 (Fri, 27 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/pstoedit.asy Syntax fix ------------------------------------------------------------------------ -r2742 | jcbowman | 2007-07-27 05:24:13 -0600 (Fri, 27 Jul 2007) | 2 lines +r2742 | jcbowman | 2007-07-27 13:24:13 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/LICENSE M /trunk/asymptote/README @@ -17017,7 +17419,7 @@ Changed paths: Upgrade licence to GPL-3.0. ------------------------------------------------------------------------ -r2741 | jcbowman | 2007-07-27 03:50:46 -0600 (Fri, 27 Jul 2007) | 6 lines +r2741 | jcbowman | 2007-07-27 11:50:46 +0200 (Fri, 27 Jul 2007) | 6 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/doc/asymptote.texi @@ -17032,35 +17434,35 @@ Add quartic solver. Improve accuracy of cubicroots in degenerate cases. ------------------------------------------------------------------------ -r2740 | jcbowman | 2007-07-27 01:26:24 -0600 (Fri, 27 Jul 2007) | 2 lines +r2740 | jcbowman | 2007-07-27 09:26:24 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Make min and max return (0,0) for an empty picture. ------------------------------------------------------------------------ -r2739 | jcbowman | 2007-07-27 01:07:31 -0600 (Fri, 27 Jul 2007) | 2 lines +r2739 | jcbowman | 2007-07-27 09:07:31 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Add cast; standardize formatting. ------------------------------------------------------------------------ -r2738 | jcbowman | 2007-07-27 01:06:24 -0600 (Fri, 27 Jul 2007) | 2 lines +r2738 | jcbowman | 2007-07-27 09:06:24 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/pair.h Add pair sqrt(pair) function (principal branch). ------------------------------------------------------------------------ -r2737 | jcbowman | 2007-07-27 01:05:35 -0600 (Fri, 27 Jul 2007) | 2 lines +r2737 | jcbowman | 2007-07-27 09:05:35 +0200 (Fri, 27 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Fix picture scaling. ------------------------------------------------------------------------ -r2736 | hammera | 2007-07-26 09:17:38 -0600 (Thu, 26 Jul 2007) | 2 lines +r2736 | hammera | 2007-07-26 17:17:38 +0200 (Thu, 26 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/application.h M /trunk/asymptote/parser.cc @@ -17068,31 +17470,31 @@ Changed paths: Edited comments. ------------------------------------------------------------------------ -r2735 | oshardt | 2007-07-25 14:41:31 -0600 (Wed, 25 Jul 2007) | 1 line +r2735 | oshardt | 2007-07-25 22:41:31 +0200 (Wed, 25 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyOptions.py Removed unneeded message ------------------------------------------------------------------------ -r2734 | oshardt | 2007-07-25 12:50:30 -0600 (Wed, 25 Jul 2007) | 1 line +r2734 | oshardt | 2007-07-25 20:50:30 +0200 (Wed, 25 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Fixed rotation of multiple objects ------------------------------------------------------------------------ -r2733 | oshardt | 2007-07-25 12:43:59 -0600 (Wed, 25 Jul 2007) | 1 line +r2733 | oshardt | 2007-07-25 20:43:59 +0200 (Wed, 25 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Corrected divide-by-zero handling ------------------------------------------------------------------------ -r2732 | oshardt | 2007-07-25 12:27:37 -0600 (Wed, 25 Jul 2007) | 1 line +r2732 | oshardt | 2007-07-25 20:27:37 +0200 (Wed, 25 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Fixed button width ------------------------------------------------------------------------ -r2731 | oshardt | 2007-07-25 11:11:13 -0600 (Wed, 25 Jul 2007) | 1 line +r2731 | oshardt | 2007-07-25 19:11:13 +0200 (Wed, 25 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py @@ -17100,7 +17502,7 @@ Changed paths: Fixes for Windows support ------------------------------------------------------------------------ -r2730 | jcbowman | 2007-07-25 03:28:31 -0600 (Wed, 25 Jul 2007) | 4 lines +r2730 | jcbowman | 2007-07-25 11:28:31 +0200 (Wed, 25 Jul 2007) | 4 lines Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/base/plain_xasy.asy @@ -17113,7 +17515,7 @@ Remove deconstruct() and gui() in favour of settings.deconstruct. Rename deconstructpic to deconstruct; standardize arguments. ------------------------------------------------------------------------ -r2729 | jcbowman | 2007-07-25 03:07:20 -0600 (Wed, 25 Jul 2007) | 2 lines +r2729 | jcbowman | 2007-07-25 11:07:20 +0200 (Wed, 25 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -17121,13 +17523,13 @@ Changed paths: Revert r2722; update documentation. ------------------------------------------------------------------------ -r2728 | oshardt | 2007-07-24 15:24:08 -0600 (Tue, 24 Jul 2007) | 1 line +r2728 | oshardt | 2007-07-24 23:24:08 +0200 (Tue, 24 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py catch unnecessary exception ------------------------------------------------------------------------ -r2727 | oshardt | 2007-07-24 14:53:55 -0600 (Tue, 24 Jul 2007) | 1 line +r2727 | oshardt | 2007-07-24 22:53:55 +0200 (Tue, 24 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/UndoRedoStack.py M /trunk/asymptote/GUI/xasyActions.py @@ -17135,21 +17537,21 @@ Changed paths: Implemented undo and redo for shifts and rotations ------------------------------------------------------------------------ -r2726 | oshardt | 2007-07-24 11:59:29 -0600 (Tue, 24 Jul 2007) | 1 line +r2726 | oshardt | 2007-07-24 19:59:29 +0200 (Tue, 24 Jul 2007) | 1 line Changed paths: A /trunk/asymptote/GUI/UndoRedoStack.py A /trunk/asymptote/GUI/xasyActions.py Added skeleton for undo/redo operations ------------------------------------------------------------------------ -r2725 | oshardt | 2007-07-24 11:58:58 -0600 (Tue, 24 Jul 2007) | 1 line +r2725 | oshardt | 2007-07-24 19:58:58 +0200 (Tue, 24 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py Added accelerators for menu items ------------------------------------------------------------------------ -r2724 | oshardt | 2007-07-24 09:37:47 -0600 (Tue, 24 Jul 2007) | 1 line +r2724 | oshardt | 2007-07-24 17:37:47 +0200 (Tue, 24 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/CubicBezier.py M /trunk/asymptote/GUI/xasy.py @@ -17160,14 +17562,14 @@ Changed paths: Removed unneeded code; fixed export command ------------------------------------------------------------------------ -r2723 | jcbowman | 2007-07-24 08:40:27 -0600 (Tue, 24 Jul 2007) | 2 lines +r2723 | jcbowman | 2007-07-24 16:40:27 +0200 (Tue, 24 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Turn off readline editing when reading from a pipe. ------------------------------------------------------------------------ -r2722 | jcbowman | 2007-07-24 03:51:06 -0600 (Tue, 24 Jul 2007) | 2 lines +r2722 | jcbowman | 2007-07-24 11:51:06 +0200 (Tue, 24 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -17175,58 +17577,58 @@ Changed paths: List multiple cubic roots individually in all cases. ------------------------------------------------------------------------ -r2721 | oshardt | 2007-07-23 14:08:12 -0600 (Mon, 23 Jul 2007) | 1 line +r2721 | oshardt | 2007-07-23 22:08:12 +0200 (Mon, 23 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/plain_xasy.asy Additional parts for implementation of new deconstruction method ------------------------------------------------------------------------ -r2720 | oshardt | 2007-07-23 14:07:03 -0600 (Mon, 23 Jul 2007) | 1 line +r2720 | oshardt | 2007-07-23 22:07:03 +0200 (Mon, 23 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Implemented rotation of drawn and scripted items ------------------------------------------------------------------------ -r2719 | oshardt | 2007-07-23 14:06:28 -0600 (Mon, 23 Jul 2007) | 1 line +r2719 | oshardt | 2007-07-23 22:06:28 +0200 (Mon, 23 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyFile.py Better parsing for script items ------------------------------------------------------------------------ -r2718 | oshardt | 2007-07-23 14:05:38 -0600 (Mon, 23 Jul 2007) | 1 line +r2718 | oshardt | 2007-07-23 22:05:38 +0200 (Mon, 23 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Implemented new, cross-platform image deconstruction method ------------------------------------------------------------------------ -r2717 | oshardt | 2007-07-23 14:03:34 -0600 (Mon, 23 Jul 2007) | 1 line +r2717 | oshardt | 2007-07-23 22:03:34 +0200 (Mon, 23 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/runtime.in Added deconstructpic() for image deconstruction by GUI ------------------------------------------------------------------------ -r2716 | oshardt | 2007-07-23 10:31:28 -0600 (Mon, 23 Jul 2007) | 1 line +r2716 | oshardt | 2007-07-23 18:31:28 +0200 (Mon, 23 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyCodeEditor.py M /trunk/asymptote/GUI/xasyOptions.py Various improvements ------------------------------------------------------------------------ -r2715 | hammera | 2007-07-23 10:23:31 -0600 (Mon, 23 Jul 2007) | 2 lines +r2715 | hammera | 2007-07-23 18:23:31 +0200 (Mon, 23 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/camp.y Removed commented out code. ------------------------------------------------------------------------ -r2714 | jcbowman | 2007-07-23 04:06:01 -0600 (Mon, 23 Jul 2007) | 2 lines +r2714 | jcbowman | 2007-07-23 12:06:01 +0200 (Mon, 23 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc Change order of tests. ------------------------------------------------------------------------ -r2713 | jcbowman | 2007-07-23 04:04:25 -0600 (Mon, 23 Jul 2007) | 2 lines +r2713 | jcbowman | 2007-07-23 12:04:25 +0200 (Mon, 23 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/tests/arith/roots.asy @@ -17234,21 +17636,21 @@ Changed paths: Detect roots near zero in cubicroots. ------------------------------------------------------------------------ -r2712 | jcbowman | 2007-07-21 06:19:10 -0600 (Sat, 21 Jul 2007) | 2 lines +r2712 | jcbowman | 2007-07-21 14:19:10 +0200 (Sat, 21 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/surface.asy Add Radoslav's bbox and bbox3 code for surfaces. ------------------------------------------------------------------------ -r2711 | jcbowman | 2007-07-19 16:30:26 -0600 (Thu, 19 Jul 2007) | 2 lines +r2711 | jcbowman | 2007-07-20 00:30:26 +0200 (Fri, 20 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Avoid potential uninitialized warnings with -finline-limit=400. ------------------------------------------------------------------------ -r2710 | hammera | 2007-07-19 15:13:18 -0600 (Thu, 19 Jul 2007) | 2 lines +r2710 | hammera | 2007-07-19 23:13:18 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/callable.h @@ -17274,14 +17676,14 @@ Changed paths: Removed erroneous GC_DECLARE_PTRFREE specifiers. ------------------------------------------------------------------------ -r2709 | jcbowman | 2007-07-19 03:09:39 -0600 (Thu, 19 Jul 2007) | 1 line +r2709 | jcbowman | 2007-07-19 11:09:39 +0200 (Thu, 19 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/entry.h M /trunk/asymptote/xstream.h Fix cxx errors. ------------------------------------------------------------------------ -r2708 | jcbowman | 2007-07-19 02:51:23 -0600 (Thu, 19 Jul 2007) | 2 lines +r2708 | jcbowman | 2007-07-19 10:51:23 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -17291,7 +17693,7 @@ Changed paths: Workaround broken texi2dvi installations. ------------------------------------------------------------------------ -r2707 | jcbowman | 2007-07-19 02:17:03 -0600 (Thu, 19 Jul 2007) | 2 lines +r2707 | jcbowman | 2007-07-19 10:17:03 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/mathop.h @@ -17300,7 +17702,7 @@ Changed paths: Trap quotient(intMin,-1). ------------------------------------------------------------------------ -r2706 | hammera | 2007-07-18 22:28:58 -0600 (Wed, 18 Jul 2007) | 3 lines +r2706 | hammera | 2007-07-19 06:28:58 +0200 (Thu, 19 Jul 2007) | 3 lines Changed paths: M /trunk/asymptote/entry.cc M /trunk/asymptote/entry.h @@ -17309,7 +17711,7 @@ Made the NOHASH venv interface compatible with the optimized hashtable venv. ------------------------------------------------------------------------ -r2705 | hammera | 2007-07-18 21:37:52 -0600 (Wed, 18 Jul 2007) | 2 lines +r2705 | hammera | 2007-07-19 05:37:52 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/entry.cc M /trunk/asymptote/entry.h @@ -17326,28 +17728,28 @@ Changed paths: Added match caching and hashtable presizing optimizations. ------------------------------------------------------------------------ -r2704 | hammera | 2007-07-18 21:35:20 -0600 (Wed, 18 Jul 2007) | 2 lines +r2704 | hammera | 2007-07-19 05:35:20 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/envcompleter.cc Removed old code. ------------------------------------------------------------------------ -r2703 | jcbowman | 2007-07-18 17:13:02 -0600 (Wed, 18 Jul 2007) | 2 lines +r2703 | jcbowman | 2007-07-19 01:13:02 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Fix page numbering of slide presentations with -u stepping=true. ------------------------------------------------------------------------ -r2702 | jcbowman | 2007-07-18 17:01:58 -0600 (Wed, 18 Jul 2007) | 2 lines +r2702 | jcbowman | 2007-07-19 01:01:58 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Minor optimization. ------------------------------------------------------------------------ -r2701 | jcbowman | 2007-07-18 16:39:08 -0600 (Wed, 18 Jul 2007) | 2 lines +r2701 | jcbowman | 2007-07-19 00:39:08 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/fpu.h @@ -17356,7 +17758,7 @@ Changed paths: Remove further duplicate config.h imports. ------------------------------------------------------------------------ -r2700 | jcbowman | 2007-07-18 16:21:52 -0600 (Wed, 18 Jul 2007) | 2 lines +r2700 | jcbowman | 2007-07-19 00:21:52 +0200 (Thu, 19 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/common.h @@ -17370,7 +17772,7 @@ Changed paths: Eliminate multiple config.h includes. ------------------------------------------------------------------------ -r2699 | jcbowman | 2007-07-18 15:52:01 -0600 (Wed, 18 Jul 2007) | 1 line +r2699 | jcbowman | 2007-07-18 23:52:01 +0200 (Wed, 18 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/psfile.cc @@ -17380,7 +17782,7 @@ Changed paths: More cxx fixes. ------------------------------------------------------------------------ -r2698 | jcbowman | 2007-07-18 15:42:41 -0600 (Wed, 18 Jul 2007) | 2 lines +r2698 | jcbowman | 2007-07-18 23:42:41 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/drawlabel.cc @@ -17396,14 +17798,14 @@ Changed paths: Fix cxx warnings. ------------------------------------------------------------------------ -r2697 | jcbowman | 2007-07-18 15:18:25 -0600 (Wed, 18 Jul 2007) | 2 lines +r2697 | jcbowman | 2007-07-18 23:18:25 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/common.h Work around missing definitions of LONG_LONG_MAX, etc. ------------------------------------------------------------------------ -r2696 | jcbowman | 2007-07-18 14:41:30 -0600 (Wed, 18 Jul 2007) | 2 lines +r2696 | jcbowman | 2007-07-18 22:41:30 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/doc/asymptote.texi @@ -17413,35 +17815,35 @@ Changed paths: Move climits to proper place. ------------------------------------------------------------------------ -r2695 | hammera | 2007-07-18 14:04:29 -0600 (Wed, 18 Jul 2007) | 2 lines +r2695 | hammera | 2007-07-18 22:04:29 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/camp.y Removed unused OP token. ------------------------------------------------------------------------ -r2694 | hammera | 2007-07-18 13:29:57 -0600 (Wed, 18 Jul 2007) | 2 lines +r2694 | hammera | 2007-07-18 21:29:57 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Changed arrowsize typos in documentation. ------------------------------------------------------------------------ -r2693 | jcbowman | 2007-07-18 07:37:15 -0600 (Wed, 18 Jul 2007) | 2 lines +r2693 | jcbowman | 2007-07-18 15:37:15 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Avoid conflict with definitions in types.h. ------------------------------------------------------------------------ -r2692 | jcbowman | 2007-07-18 07:25:15 -0600 (Wed, 18 Jul 2007) | 2 lines +r2692 | jcbowman | 2007-07-18 15:25:15 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Work around quad_t vs. long long conflict on 64 bit machines. ------------------------------------------------------------------------ -r2691 | jcbowman | 2007-07-18 06:50:47 -0600 (Wed, 18 Jul 2007) | 4 lines +r2691 | jcbowman | 2007-07-18 14:50:47 +0200 (Wed, 18 Jul 2007) | 4 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/path.h @@ -17451,7 +17853,7 @@ Use LONG_LONG_MAX instead of LLONG_MAX. Add instructions for working around problems with old broken compilers. ------------------------------------------------------------------------ -r2690 | jcbowman | 2007-07-18 06:21:48 -0600 (Wed, 18 Jul 2007) | 2 lines +r2690 | jcbowman | 2007-07-18 14:21:48 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/common.h M /trunk/asymptote/runtime.in @@ -17459,7 +17861,7 @@ Changed paths: Further portability fixes. ------------------------------------------------------------------------ -r2689 | jcbowman | 2007-07-18 06:14:24 -0600 (Wed, 18 Jul 2007) | 2 lines +r2689 | jcbowman | 2007-07-18 14:14:24 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/common.h @@ -17469,7 +17871,7 @@ Changed paths: Portability fixes. ------------------------------------------------------------------------ -r2688 | jcbowman | 2007-07-18 05:50:11 -0600 (Wed, 18 Jul 2007) | 5 lines +r2688 | jcbowman | 2007-07-18 13:50:11 +0200 (Wed, 18 Jul 2007) | 5 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -17550,33 +17952,33 @@ Change integer type to Int, which is set default in common.h to long long Add support for reading and writing 64 bit integers in binary and XDR modes. ------------------------------------------------------------------------ -r2687 | jcbowman | 2007-07-18 05:09:44 -0600 (Wed, 18 Jul 2007) | 2 lines +r2687 | jcbowman | 2007-07-18 13:09:44 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/main.cc Don't call locateFile with an empty file name. ------------------------------------------------------------------------ -r2686 | jcbowman | 2007-07-18 04:47:45 -0600 (Wed, 18 Jul 2007) | 2 lines +r2686 | jcbowman | 2007-07-18 12:47:45 +0200 (Wed, 18 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/extra/intro.asy Fix code for Bezier example. ------------------------------------------------------------------------ -r2685 | pivaldi | 2007-07-17 15:18:50 -0600 (Tue, 17 Jul 2007) | 1 line +r2685 | pivaldi | 2007-07-17 23:18:50 +0200 (Tue, 17 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/grid3.asy grid3.asy: bug fix with perspective projection. ------------------------------------------------------------------------ -r2684 | oshardt | 2007-07-16 09:35:44 -0600 (Mon, 16 Jul 2007) | 1 line +r2684 | oshardt | 2007-07-16 17:35:44 +0200 (Mon, 16 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Fixed itemEdit index computation ------------------------------------------------------------------------ -r2683 | jcbowman | 2007-07-13 17:50:11 -0600 (Fri, 13 Jul 2007) | 6 lines +r2683 | jcbowman | 2007-07-14 01:50:11 +0200 (Sat, 14 Jul 2007) | 6 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/Makefile @@ -17590,31 +17992,31 @@ directory. Ignore user configuration files during installation. ------------------------------------------------------------------------ -r2682 | pivaldi | 2007-07-13 09:03:59 -0600 (Fri, 13 Jul 2007) | 1 line +r2682 | pivaldi | 2007-07-13 17:03:59 +0200 (Fri, 13 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Bug fix in lasy-tags routine. ------------------------------------------------------------------------ -r2681 | pivaldi | 2007-07-11 12:30:03 -0600 (Wed, 11 Jul 2007) | 1 line +r2681 | pivaldi | 2007-07-11 20:30:03 +0200 (Wed, 11 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Defer the copy of LaTeX-mode-map to lasy-mode-map after all personal configurations was loaded. ------------------------------------------------------------------------ -r2680 | oshardt | 2007-07-11 12:07:48 -0600 (Wed, 11 Jul 2007) | 1 line +r2680 | oshardt | 2007-07-11 20:07:48 +0200 (Wed, 11 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Fixed verification of asy pipe creationy ------------------------------------------------------------------------ -r2679 | pivaldi | 2007-07-11 08:25:31 -0600 (Wed, 11 Jul 2007) | 1 line +r2679 | pivaldi | 2007-07-11 16:25:31 +0200 (Wed, 11 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Provide real syntax highlighting support with two-mode-mode for lasy-mode ------------------------------------------------------------------------ -r2678 | oshardt | 2007-07-09 15:42:28 -0600 (Mon, 09 Jul 2007) | 1 line +r2678 | oshardt | 2007-07-09 23:42:28 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyFile.py @@ -17622,19 +18024,19 @@ Changed paths: Implemented pen parsing for label commands ------------------------------------------------------------------------ -r2677 | oshardt | 2007-07-09 11:55:18 -0600 (Mon, 09 Jul 2007) | 1 line +r2677 | oshardt | 2007-07-09 19:55:18 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Implemented raising and lowering of items ------------------------------------------------------------------------ -r2676 | oshardt | 2007-07-09 09:54:01 -0600 (Mon, 09 Jul 2007) | 1 line +r2676 | oshardt | 2007-07-09 17:54:01 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: D /trunk/asymptote/GUI/xasyPenEditor.py Remove unneeded module ------------------------------------------------------------------------ -r2675 | oshardt | 2007-07-09 09:31:46 -0600 (Mon, 09 Jul 2007) | 1 line +r2675 | oshardt | 2007-07-09 17:31:46 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyFile.py @@ -17642,14 +18044,14 @@ Changed paths: Fix interrupted system call error ------------------------------------------------------------------------ -r2674 | jcbowman | 2007-07-09 01:29:17 -0600 (Mon, 09 Jul 2007) | 1 line +r2674 | jcbowman | 2007-07-09 09:29:17 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/process.h Fix texstream destructor so that texput files are removed. ------------------------------------------------------------------------ -r2673 | jcbowman | 2007-07-09 00:51:17 -0600 (Mon, 09 Jul 2007) | 3 lines +r2673 | jcbowman | 2007-07-09 08:51:17 +0200 (Mon, 09 Jul 2007) | 3 lines Changed paths: M /trunk/asymptote/interact.cc @@ -17657,26 +18059,26 @@ Fix memory allocation incompatibility in workaround for old, broken readline libraries. ------------------------------------------------------------------------ -r2672 | oshardt | 2007-07-08 16:31:16 -0600 (Sun, 08 Jul 2007) | 1 line +r2672 | oshardt | 2007-07-09 00:31:16 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Fixed horizontal and vertical motion. ------------------------------------------------------------------------ -r2671 | jcbowman | 2007-07-08 16:02:53 -0600 (Sun, 08 Jul 2007) | 1 line +r2671 | jcbowman | 2007-07-09 00:02:53 +0200 (Mon, 09 Jul 2007) | 1 line Changed paths: A /trunk/asymptote/examples/rainbow.asy Add rainbow example. ------------------------------------------------------------------------ -r2670 | jcbowman | 2007-07-08 13:30:11 -0600 (Sun, 08 Jul 2007) | 2 lines +r2670 | jcbowman | 2007-07-08 21:30:11 +0200 (Sun, 08 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/tensor.asy Standardize argument names. ------------------------------------------------------------------------ -r2669 | jcbowman | 2007-07-08 13:28:58 -0600 (Sun, 08 Jul 2007) | 6 lines +r2669 | jcbowman | 2007-07-08 21:28:58 +0200 (Sun, 08 Jul 2007) | 6 lines Changed paths: M /trunk/asymptote/base/annotate.asy M /trunk/asymptote/base/binarytree.asy @@ -17696,40 +18098,40 @@ Add boolean argument to deferred drawing routines to allow optimization in cases where an exact picture size estimate is available. ------------------------------------------------------------------------ -r2668 | jcbowman | 2007-07-08 10:22:17 -0600 (Sun, 08 Jul 2007) | 2 lines +r2668 | jcbowman | 2007-07-08 18:22:17 +0200 (Sun, 08 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Allow writing to file specified with -o /dir/file.eps again. ------------------------------------------------------------------------ -r2667 | jcbowman | 2007-07-07 11:09:58 -0600 (Sat, 07 Jul 2007) | 2 lines +r2667 | jcbowman | 2007-07-07 19:09:58 +0200 (Sat, 07 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Don't reset options after reading configuration file. ------------------------------------------------------------------------ -r2666 | oshardt | 2007-07-06 21:38:51 -0600 (Fri, 06 Jul 2007) | 1 line +r2666 | oshardt | 2007-07-07 05:38:51 +0200 (Sat, 07 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyMainWin.py Improved selection mechanism ------------------------------------------------------------------------ -r2665 | oshardt | 2007-07-06 20:40:09 -0600 (Fri, 06 Jul 2007) | 1 line +r2665 | oshardt | 2007-07-07 04:40:09 +0200 (Sat, 07 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/plain_xasy.asy Shipouts inside a script no longer interfere with the rest of the document ------------------------------------------------------------------------ -r2664 | oshardt | 2007-07-06 18:23:04 -0600 (Fri, 06 Jul 2007) | 1 line +r2664 | oshardt | 2007-07-07 02:23:04 +0200 (Sat, 07 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyCodeEditor.py Rename menu entries. ------------------------------------------------------------------------ -r2663 | oshardt | 2007-07-06 11:10:24 -0600 (Fri, 06 Jul 2007) | 1 line +r2663 | oshardt | 2007-07-06 19:10:24 +0200 (Fri, 06 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyCodeEditor.py @@ -17739,25 +18141,25 @@ Changed paths: All labels now deconstructed. Dialogs improved. Fixed duplicate image reception. ------------------------------------------------------------------------ -r2662 | oshardt | 2007-07-05 15:59:40 -0600 (Thu, 05 Jul 2007) | 1 line +r2662 | oshardt | 2007-07-05 23:59:40 +0200 (Thu, 05 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyColorPicker.py Various improvements ------------------------------------------------------------------------ -r2661 | oshardt | 2007-07-05 15:58:43 -0600 (Thu, 05 Jul 2007) | 1 line +r2661 | oshardt | 2007-07-05 23:58:43 +0200 (Thu, 05 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyOptionsDialog.py Implemented validation for asy path ------------------------------------------------------------------------ -r2660 | pivaldi | 2007-07-05 08:36:39 -0600 (Thu, 05 Jul 2007) | 1 line +r2660 | pivaldi | 2007-07-05 16:36:39 +0200 (Thu, 05 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Minor edit. ------------------------------------------------------------------------ -r2659 | pivaldi | 2007-07-05 07:51:32 -0600 (Thu, 05 Jul 2007) | 3 lines +r2659 | pivaldi | 2007-07-05 15:51:32 +0200 (Thu, 05 Jul 2007) | 3 lines Changed paths: M /trunk/asymptote/base/asy-mode.el @@ -17765,7 +18167,7 @@ asydef environment content routine uses region instead regexp matcher. Cleaning code. ------------------------------------------------------------------------ -r2658 | jcbowman | 2007-07-04 21:47:39 -0600 (Wed, 04 Jul 2007) | 2 lines +r2658 | jcbowman | 2007-07-05 05:47:39 +0200 (Thu, 05 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/locate.cc M /trunk/asymptote/parser.h @@ -17775,19 +18177,19 @@ Changed paths: Add configuration file loading diagostic. ------------------------------------------------------------------------ -r2657 | oshardt | 2007-07-04 18:59:22 -0600 (Wed, 04 Jul 2007) | 1 line +r2657 | oshardt | 2007-07-05 02:59:22 +0200 (Thu, 05 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Improved handling of default pen ------------------------------------------------------------------------ -r2656 | oshardt | 2007-07-04 15:49:27 -0600 (Wed, 04 Jul 2007) | 1 line +r2656 | oshardt | 2007-07-04 23:49:27 +0200 (Wed, 04 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/CubicBezier.py Fixed docstring ------------------------------------------------------------------------ -r2655 | oshardt | 2007-07-04 15:48:42 -0600 (Wed, 04 Jul 2007) | 1 line +r2655 | oshardt | 2007-07-04 23:48:42 +0200 (Wed, 04 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py M /trunk/asymptote/GUI/xasyColorPicker.py @@ -17797,66 +18199,66 @@ Changed paths: Implemented storage and retrieval of user preferences ------------------------------------------------------------------------ -r2654 | pivaldi | 2007-07-04 15:36:24 -0600 (Wed, 04 Jul 2007) | 2 lines +r2654 | pivaldi | 2007-07-04 23:36:24 +0200 (Wed, 04 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Write temporary file with region instead of regexp matcher to avoid Stack overflow when compiling a long file within lasy-mode. ------------------------------------------------------------------------ -r2653 | jcbowman | 2007-07-04 06:44:17 -0600 (Wed, 04 Jul 2007) | 2 lines +r2653 | jcbowman | 2007-07-04 14:44:17 +0200 (Wed, 04 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO Remove completed item. ------------------------------------------------------------------------ -r2652 | oshardt | 2007-07-03 16:02:32 -0600 (Tue, 03 Jul 2007) | 1 line +r2652 | oshardt | 2007-07-04 00:02:32 +0200 (Wed, 04 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyMainWin.py Selecting an item clears the highlight box ------------------------------------------------------------------------ -r2651 | oshardt | 2007-07-03 16:00:01 -0600 (Tue, 03 Jul 2007) | 1 line +r2651 | oshardt | 2007-07-04 00:00:01 +0200 (Wed, 04 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyBezierEditor.py Improved handling of already-transformed shapes ------------------------------------------------------------------------ -r2650 | oshardt | 2007-07-03 15:25:22 -0600 (Tue, 03 Jul 2007) | 1 line +r2650 | oshardt | 2007-07-03 23:25:22 +0200 (Tue, 03 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyColorPicker.py Fixed incorrect entry in xasyColorPicker ------------------------------------------------------------------------ -r2649 | oshardt | 2007-07-03 15:21:36 -0600 (Tue, 03 Jul 2007) | 1 line +r2649 | oshardt | 2007-07-03 23:21:36 +0200 (Tue, 03 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasyBezierEditor.py M /trunk/asymptote/GUI/xasyMainWin.py Improved bezier editing and integration with xasyMainWin ------------------------------------------------------------------------ -r2648 | oshardt | 2007-07-03 14:39:42 -0600 (Tue, 03 Jul 2007) | 1 line +r2648 | oshardt | 2007-07-03 22:39:42 +0200 (Tue, 03 Jul 2007) | 1 line Changed paths: A /trunk/asymptote/GUI/xasyBezierEditor.py M /trunk/asymptote/GUI/xasyMainWin.py Added ability to graphically edit the nodes and control points of a bezier curve ------------------------------------------------------------------------ -r2647 | oshardt | 2007-07-03 14:38:15 -0600 (Tue, 03 Jul 2007) | 1 line +r2647 | oshardt | 2007-07-03 22:38:15 +0200 (Tue, 03 Jul 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/CubicBezier.py Faster computation of an upper bound for the bezier width ------------------------------------------------------------------------ -r2646 | jcbowman | 2007-07-03 10:25:49 -0600 (Tue, 03 Jul 2007) | 2 lines +r2646 | jcbowman | 2007-07-03 18:25:49 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fix --enable-gc-full-debug. ------------------------------------------------------------------------ -r2645 | jcbowman | 2007-07-03 10:13:53 -0600 (Tue, 03 Jul 2007) | 2 lines +r2645 | jcbowman | 2007-07-03 18:13:53 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/configure.ac @@ -17865,49 +18267,49 @@ Changed paths: Update to gc-7.0. ------------------------------------------------------------------------ -r2644 | jcbowman | 2007-07-03 10:06:04 -0600 (Tue, 03 Jul 2007) | 2 lines +r2644 | jcbowman | 2007-07-03 18:06:04 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Add reference to Java-style array iteration. ------------------------------------------------------------------------ -r2643 | jcbowman | 2007-07-03 09:56:07 -0600 (Tue, 03 Jul 2007) | 2 lines +r2643 | jcbowman | 2007-07-03 17:56:07 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor edits. ------------------------------------------------------------------------ -r2642 | jcbowman | 2007-07-03 02:24:02 -0600 (Tue, 03 Jul 2007) | 2 lines +r2642 | jcbowman | 2007-07-03 10:24:02 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Minor simplification. ------------------------------------------------------------------------ -r2641 | hammera | 2007-07-02 18:32:57 -0600 (Mon, 02 Jul 2007) | 2 lines +r2641 | hammera | 2007-07-03 02:32:57 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added brief comment on extended for loops. ------------------------------------------------------------------------ -r2640 | jcbowman | 2007-07-02 17:27:53 -0600 (Mon, 02 Jul 2007) | 2 lines +r2640 | jcbowman | 2007-07-03 01:27:53 +0200 (Tue, 03 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Minor solve optimizations. ------------------------------------------------------------------------ -r2639 | jcbowman | 2007-07-02 12:14:51 -0600 (Mon, 02 Jul 2007) | 2 lines +r2639 | jcbowman | 2007-07-02 20:14:51 +0200 (Mon, 02 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix memory leak in matrix multiply. ------------------------------------------------------------------------ -r2638 | hammera | 2007-07-02 07:11:48 -0600 (Mon, 02 Jul 2007) | 2 lines +r2638 | hammera | 2007-07-02 15:11:48 +0200 (Mon, 02 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/camp.y M /trunk/asymptote/stm.cc @@ -17916,7 +18318,7 @@ Changed paths: Simplify extended for loop syntax. ------------------------------------------------------------------------ -r2637 | jcbowman | 2007-07-01 23:57:51 -0600 (Sun, 01 Jul 2007) | 2 lines +r2637 | jcbowman | 2007-07-02 07:57:51 +0200 (Mon, 02 Jul 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -17925,7 +18327,7 @@ Changed paths: Update to gv-3.6.3. ------------------------------------------------------------------------ -r2636 | jcbowman | 2007-06-30 01:11:04 -0600 (Sat, 30 Jun 2007) | 2 lines +r2636 | jcbowman | 2007-06-30 09:11:04 +0200 (Sat, 30 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/drawclipbegin.h @@ -17944,13 +18346,13 @@ Changed paths: More garbage collection improvements. ------------------------------------------------------------------------ -r2635 | oshardt | 2007-06-29 15:37:09 -0600 (Fri, 29 Jun 2007) | 1 line +r2635 | oshardt | 2007-06-29 23:37:09 +0200 (Fri, 29 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/GUI/xasy2asy.py Fixed syntax ------------------------------------------------------------------------ -r2634 | oshardt | 2007-06-29 15:30:29 -0600 (Fri, 29 Jun 2007) | 1 line +r2634 | oshardt | 2007-06-29 23:30:29 +0200 (Fri, 29 Jun 2007) | 1 line Changed paths: A /trunk/asymptote/GUI A /trunk/asymptote/GUI/CubicBezier.py @@ -17968,40 +18370,40 @@ Changed paths: Checkin the code for the new GUI that is under development. ------------------------------------------------------------------------ -r2633 | oshardt | 2007-06-29 15:29:21 -0600 (Fri, 29 Jun 2007) | 1 line +r2633 | oshardt | 2007-06-29 23:29:21 +0200 (Fri, 29 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/plain_xasy.asy Improved the xformStack implementation ------------------------------------------------------------------------ -r2632 | jcbowman | 2007-06-29 12:45:00 -0600 (Fri, 29 Jun 2007) | 2 lines +r2632 | jcbowman | 2007-06-29 20:45:00 +0200 (Fri, 29 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix segmentation fault in complement. ------------------------------------------------------------------------ -r2631 | jcbowman | 2007-06-29 02:00:20 -0600 (Fri, 29 Jun 2007) | 1 line +r2631 | jcbowman | 2007-06-29 10:00:20 +0200 (Fri, 29 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.33svn. ------------------------------------------------------------------------ -r2630 | jcbowman | 2007-06-29 00:42:03 -0600 (Fri, 29 Jun 2007) | 2 lines +r2630 | jcbowman | 2007-06-29 08:42:03 +0200 (Fri, 29 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/callable.h More garbage collection tweaks. ------------------------------------------------------------------------ -r2629 | jcbowman | 2007-06-29 00:23:03 -0600 (Fri, 29 Jun 2007) | 2 lines +r2629 | jcbowman | 2007-06-29 08:23:03 +0200 (Fri, 29 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix dependency. ------------------------------------------------------------------------ -r2628 | jcbowman | 2007-06-29 00:04:58 -0600 (Fri, 29 Jun 2007) | 2 lines +r2628 | jcbowman | 2007-06-29 08:04:58 +0200 (Fri, 29 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/Makefile @@ -18009,21 +18411,21 @@ Changed paths: Fix make install-all. ------------------------------------------------------------------------ -r2627 | jcbowman | 2007-06-28 23:15:34 -0600 (Thu, 28 Jun 2007) | 2 lines +r2627 | jcbowman | 2007-06-29 07:15:34 +0200 (Fri, 29 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/drawverbatim.h Declare drawverbatim to be atomic. ------------------------------------------------------------------------ -r2626 | jcbowman | 2007-06-28 17:20:22 -0600 (Thu, 28 Jun 2007) | 2 lines +r2626 | jcbowman | 2007-06-29 01:20:22 +0200 (Fri, 29 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fix bug in subpath. ------------------------------------------------------------------------ -r2625 | jcbowman | 2007-06-28 12:13:02 -0600 (Thu, 28 Jun 2007) | 6 lines +r2625 | jcbowman | 2007-06-28 20:13:02 +0200 (Thu, 28 Jun 2007) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -18037,14 +18439,14 @@ Don't write cd path twice in interactive mode. Update diagnostics and documentation. ------------------------------------------------------------------------ -r2624 | jcbowman | 2007-06-27 12:09:17 -0600 (Wed, 27 Jun 2007) | 2 lines +r2624 | jcbowman | 2007-06-27 20:09:17 +0200 (Wed, 27 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix GC debugging. ------------------------------------------------------------------------ -r2623 | jcbowman | 2007-06-27 11:22:17 -0600 (Wed, 27 Jun 2007) | 2 lines +r2623 | jcbowman | 2007-06-27 19:22:17 +0200 (Wed, 27 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -18055,55 +18457,55 @@ Changed paths: More garbage collection tweaks/leak fixes. ------------------------------------------------------------------------ -r2622 | jcbowman | 2007-06-27 02:19:14 -0600 (Wed, 27 Jun 2007) | 1 line +r2622 | jcbowman | 2007-06-27 10:19:14 +0200 (Wed, 27 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.32svn. ------------------------------------------------------------------------ -r2621 | jcbowman | 2007-06-27 00:47:19 -0600 (Wed, 27 Jun 2007) | 2 lines +r2621 | jcbowman | 2007-06-27 08:47:19 +0200 (Wed, 27 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fix segmentation fault in options processing. ------------------------------------------------------------------------ -r2620 | jcbowman | 2007-06-27 00:31:52 -0600 (Wed, 27 Jun 2007) | 2 lines +r2620 | jcbowman | 2007-06-27 08:31:52 +0200 (Wed, 27 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Reinstate gc check. ------------------------------------------------------------------------ -r2619 | jcbowman | 2007-06-27 00:28:06 -0600 (Wed, 27 Jun 2007) | 2 lines +r2619 | jcbowman | 2007-06-27 08:28:06 +0200 (Wed, 27 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Avoid makefile loops. ------------------------------------------------------------------------ -r2618 | jcbowman | 2007-06-26 23:57:15 -0600 (Tue, 26 Jun 2007) | 2 lines +r2618 | jcbowman | 2007-06-27 07:57:15 +0200 (Wed, 27 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Fix g++ warning. ------------------------------------------------------------------------ -r2617 | jcbowman | 2007-06-26 15:35:03 -0600 (Tue, 26 Jun 2007) | 2 lines +r2617 | jcbowman | 2007-06-26 23:35:03 +0200 (Tue, 26 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/dec.h Fix cxx warnings. ------------------------------------------------------------------------ -r2616 | jcbowman | 2007-06-26 15:20:11 -0600 (Tue, 26 Jun 2007) | 2 lines +r2616 | jcbowman | 2007-06-26 23:20:11 +0200 (Tue, 26 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix nullpath3 min/max bugs. ------------------------------------------------------------------------ -r2615 | jcbowman | 2007-06-26 15:17:14 -0600 (Tue, 26 Jun 2007) | 2 lines +r2615 | jcbowman | 2007-06-26 23:17:14 +0200 (Tue, 26 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/drawpath.cc @@ -18113,7 +18515,7 @@ Changed paths: Fix nullpath max/min bugs. ------------------------------------------------------------------------ -r2614 | jcbowman | 2007-06-26 14:49:05 -0600 (Tue, 26 Jun 2007) | 2 lines +r2614 | jcbowman | 2007-06-26 22:49:05 +0200 (Tue, 26 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -18122,7 +18524,7 @@ Changed paths: Minor path optimizations. ------------------------------------------------------------------------ -r2613 | jcbowman | 2007-06-26 14:18:05 -0600 (Tue, 26 Jun 2007) | 9 lines +r2613 | jcbowman | 2007-06-26 22:18:05 +0200 (Tue, 26 Jun 2007) | 9 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/drawclipend.h @@ -18157,7 +18559,7 @@ longer be remembered (use the autoimport mechanism instead). Make the identity transform a constant. ------------------------------------------------------------------------ -r2612 | jcbowman | 2007-06-25 17:20:00 -0600 (Mon, 25 Jun 2007) | 3 lines +r2612 | jcbowman | 2007-06-26 01:20:00 +0200 (Tue, 26 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/knot.h M /trunk/asymptote/path.cc @@ -18168,14 +18570,14 @@ Avoid using a pointer in path class so that it can be allocated atomically by the garbage collector; this dramatically reduces memory usage. ------------------------------------------------------------------------ -r2611 | jcbowman | 2007-06-25 16:57:22 -0600 (Mon, 25 Jun 2007) | 2 lines +r2611 | jcbowman | 2007-06-26 00:57:22 +0200 (Tue, 26 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r2610 | jcbowman | 2007-06-25 16:41:37 -0600 (Mon, 25 Jun 2007) | 2 lines +r2610 | jcbowman | 2007-06-26 00:41:37 +0200 (Tue, 26 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/util.cc @@ -18183,28 +18585,28 @@ Changed paths: Fix runaway asy process that occurs when tex pipe cannnot start tex engine. ------------------------------------------------------------------------ -r2609 | jcbowman | 2007-06-25 13:41:06 -0600 (Mon, 25 Jun 2007) | 2 lines +r2609 | jcbowman | 2007-06-25 21:41:06 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix time without HAVE_STRFTIME. ------------------------------------------------------------------------ -r2608 | jcbowman | 2007-06-25 13:39:30 -0600 (Mon, 25 Jun 2007) | 2 lines +r2608 | jcbowman | 2007-06-25 21:39:30 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix default time and opacity arguments. ------------------------------------------------------------------------ -r2607 | jcbowman | 2007-06-25 11:21:36 -0600 (Mon, 25 Jun 2007) | 2 lines +r2607 | jcbowman | 2007-06-25 19:21:36 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix minor typos. ------------------------------------------------------------------------ -r2606 | hammera | 2007-06-25 09:49:15 -0600 (Mon, 25 Jun 2007) | 4 lines +r2606 | hammera | 2007-06-25 17:49:15 +0200 (Mon, 25 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/camp.y M /trunk/asymptote/dec.cc @@ -18218,7 +18620,7 @@ Added Java-style abbreviation for iterating over arrays. Arrays of functions still not fully supported. ------------------------------------------------------------------------ -r2605 | jcbowman | 2007-06-25 01:46:20 -0600 (Mon, 25 Jun 2007) | 2 lines +r2605 | jcbowman | 2007-06-25 09:46:20 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/picture.h @@ -18227,28 +18629,28 @@ Changed paths: Further garbage collection tweaks. ------------------------------------------------------------------------ -r2604 | jcbowman | 2007-06-25 01:37:20 -0600 (Mon, 25 Jun 2007) | 2 lines +r2604 | jcbowman | 2007-06-25 09:37:20 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/item.h Remove virtual destructor introduced in r2601 due to performance penalty. ------------------------------------------------------------------------ -r2603 | jcbowman | 2007-06-25 01:28:48 -0600 (Mon, 25 Jun 2007) | 2 lines +r2603 | jcbowman | 2007-06-25 09:28:48 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Simplify arrayDeleteHelper, removing unused variable. ------------------------------------------------------------------------ -r2602 | jcbowman | 2007-06-25 01:16:49 -0600 (Mon, 25 Jun 2007) | 2 lines +r2602 | jcbowman | 2007-06-25 09:16:49 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/memory.h Fix --disable-gc. ------------------------------------------------------------------------ -r2601 | jcbowman | 2007-06-25 01:05:39 -0600 (Mon, 25 Jun 2007) | 2 lines +r2601 | jcbowman | 2007-06-25 09:05:39 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/dec.h M /trunk/asymptote/fileio.h @@ -18261,28 +18663,28 @@ Changed paths: Fix warning messages. ------------------------------------------------------------------------ -r2600 | jcbowman | 2007-06-25 00:18:53 -0600 (Mon, 25 Jun 2007) | 2 lines +r2600 | jcbowman | 2007-06-25 08:18:53 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Add header for isatty. ------------------------------------------------------------------------ -r2599 | jcbowman | 2007-06-24 22:19:44 -0600 (Sun, 24 Jun 2007) | 2 lines +r2599 | jcbowman | 2007-06-25 06:19:44 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Revert r2598. ------------------------------------------------------------------------ -r2598 | jcbowman | 2007-06-24 22:16:40 -0600 (Sun, 24 Jun 2007) | 2 lines +r2598 | jcbowman | 2007-06-25 06:16:40 +0200 (Mon, 25 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Improve tex diagnostics. ------------------------------------------------------------------------ -r2597 | jcbowman | 2007-06-24 21:24:46 -0600 (Sun, 24 Jun 2007) | 4 lines +r2597 | jcbowman | 2007-06-25 05:24:46 +0200 (Mon, 25 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/examples/poster.asy M /trunk/asymptote/pipestream.h @@ -18292,21 +18694,21 @@ Leave deletion of string last to the garbage collector. Omit spurious call to background(); ------------------------------------------------------------------------ -r2596 | jcbowman | 2007-06-24 13:43:20 -0600 (Sun, 24 Jun 2007) | 2 lines +r2596 | jcbowman | 2007-06-24 21:43:20 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Avoid warning messages with -d. ------------------------------------------------------------------------ -r2595 | jcbowman | 2007-06-24 13:36:33 -0600 (Sun, 24 Jun 2007) | 2 lines +r2595 | jcbowman | 2007-06-24 21:36:33 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix GC preprocessor directives. ------------------------------------------------------------------------ -r2594 | jcbowman | 2007-06-24 01:55:10 -0600 (Sun, 24 Jun 2007) | 2 lines +r2594 | jcbowman | 2007-06-24 09:55:10 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/knot.h M /trunk/asymptote/settings.cc @@ -18314,14 +18716,14 @@ Changed paths: Further garbage collection tweaks; reinstate no_GCwarn. ------------------------------------------------------------------------ -r2593 | jcbowman | 2007-06-24 01:03:20 -0600 (Sun, 24 Jun 2007) | 2 lines +r2593 | jcbowman | 2007-06-24 09:03:20 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix dependencies. ------------------------------------------------------------------------ -r2592 | jcbowman | 2007-06-24 00:43:45 -0600 (Sun, 24 Jun 2007) | 3 lines +r2592 | jcbowman | 2007-06-24 08:43:45 +0200 (Sun, 24 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/configure.ac @@ -18329,7 +18731,7 @@ Don't link with libgccpp.a to increase speed, now that garbage collection has been carefully addressed. ------------------------------------------------------------------------ -r2591 | jcbowman | 2007-06-24 00:26:18 -0600 (Sun, 24 Jun 2007) | 2 lines +r2591 | jcbowman | 2007-06-24 08:26:18 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/memory.h M /trunk/asymptote/settings.cc @@ -18337,7 +18739,7 @@ Changed paths: Support ./configure --disable-gc again. ------------------------------------------------------------------------ -r2590 | jcbowman | 2007-06-24 00:08:47 -0600 (Sun, 24 Jun 2007) | 9 lines +r2590 | jcbowman | 2007-06-24 08:08:47 +0200 (Sun, 24 Jun 2007) | 9 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/configure.ac @@ -18355,7 +18757,7 @@ Change configure --enable-gc=VERSION so that VERSION now must include the Remove genv from gc. ------------------------------------------------------------------------ -r2589 | jcbowman | 2007-06-23 23:03:28 -0600 (Sat, 23 Jun 2007) | 2 lines +r2589 | jcbowman | 2007-06-24 07:03:28 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/process.cc @@ -18366,7 +18768,7 @@ Changed paths: Move ShipoutNumber into globalData. ------------------------------------------------------------------------ -r2588 | jcbowman | 2007-06-23 16:45:58 -0600 (Sat, 23 Jun 2007) | 2 lines +r2588 | jcbowman | 2007-06-24 00:45:58 +0200 (Sun, 24 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/fileio.h @@ -18384,7 +18786,7 @@ Changed paths: Use separate global variables for each process. ------------------------------------------------------------------------ -r2587 | jcbowman | 2007-06-23 12:42:05 -0600 (Sat, 23 Jun 2007) | 4 lines +r2587 | jcbowman | 2007-06-23 20:42:05 +0200 (Sat, 23 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -18398,7 +18800,7 @@ Deconstruct files on termination. Improve support for garbage collection debugging. ------------------------------------------------------------------------ -r2586 | jcbowman | 2007-06-23 00:58:28 -0600 (Sat, 23 Jun 2007) | 3 lines +r2586 | jcbowman | 2007-06-23 08:58:28 +0200 (Sat, 23 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/common.h @@ -18416,7 +18818,7 @@ Close any open files automatically at the end of each asy process (without relying on a finalizer). ------------------------------------------------------------------------ -r2585 | jcbowman | 2007-06-22 16:58:19 -0600 (Fri, 22 Jun 2007) | 2 lines +r2585 | jcbowman | 2007-06-23 00:58:19 +0200 (Sat, 23 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/envcompleter.cc M /trunk/asymptote/envcompleter.h @@ -18426,7 +18828,7 @@ Changed paths: Fix segmentation fault introduced in r2580. ------------------------------------------------------------------------ -r2584 | jcbowman | 2007-06-22 01:23:46 -0600 (Fri, 22 Jun 2007) | 5 lines +r2584 | jcbowman | 2007-06-22 09:23:46 +0200 (Fri, 22 Jun 2007) | 5 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/bbox.h @@ -18459,21 +18861,21 @@ vectors instead of deques everywhere. Change nullPos() to nullPos. ------------------------------------------------------------------------ -r2583 | jcbowman | 2007-06-21 23:41:19 -0600 (Thu, 21 Jun 2007) | 2 lines +r2583 | jcbowman | 2007-06-22 07:41:19 +0200 (Fri, 22 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document how arbitrary files can be imported in the configuration file. ------------------------------------------------------------------------ -r2582 | jcbowman | 2007-06-21 23:08:18 -0600 (Thu, 21 Jun 2007) | 2 lines +r2582 | jcbowman | 2007-06-22 07:08:18 +0200 (Fri, 22 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Improve LaTeX diagnostics. ------------------------------------------------------------------------ -r2581 | jcbowman | 2007-06-20 23:14:46 -0600 (Wed, 20 Jun 2007) | 2 lines +r2581 | jcbowman | 2007-06-21 07:14:46 +0200 (Thu, 21 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc M /trunk/asymptote/process.h @@ -18481,7 +18883,7 @@ Changed paths: Remove unused variable. ------------------------------------------------------------------------ -r2580 | jcbowman | 2007-06-20 17:52:58 -0600 (Wed, 20 Jun 2007) | 7 lines +r2580 | jcbowman | 2007-06-21 01:52:58 +0200 (Thu, 21 Jun 2007) | 7 lines Changed paths: M /trunk/asymptote/access.cc M /trunk/asymptote/access.h @@ -18528,13 +18930,13 @@ Fix minor memory leaks. Make em an errorstream rather than a pointer to one. ------------------------------------------------------------------------ -r2579 | oshardt | 2007-06-20 17:25:31 -0600 (Wed, 20 Jun 2007) | 1 line +r2579 | oshardt | 2007-06-21 01:25:31 +0200 (Thu, 21 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/settings.cc Added a new option to enable interactive mode on non-tty input streams. Made the signal option only affect the sending of signals without the side-effect of controlling interactive mode. ------------------------------------------------------------------------ -r2578 | oshardt | 2007-06-19 09:55:10 -0600 (Tue, 19 Jun 2007) | 6 lines +r2578 | oshardt | 2007-06-19 17:55:10 +0200 (Tue, 19 Jun 2007) | 6 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/picture.cc @@ -18547,20 +18949,20 @@ Modified handling of items deleted by GUI: bbox scaled by 0, file deleted, and signal sent. ------------------------------------------------------------------------ -r2577 | jcbowman | 2007-06-19 09:43:25 -0600 (Tue, 19 Jun 2007) | 2 lines +r2577 | jcbowman | 2007-06-19 17:43:25 +0200 (Tue, 19 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy Resolve purge ambiguity. ------------------------------------------------------------------------ -r2576 | pivaldi | 2007-06-19 03:44:43 -0600 (Tue, 19 Jun 2007) | 1 line +r2576 | pivaldi | 2007-06-19 11:44:43 +0200 (Tue, 19 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy Fix the filling path according to the margin in the routine markangle. ------------------------------------------------------------------------ -r2575 | jcbowman | 2007-06-18 22:27:00 -0600 (Mon, 18 Jun 2007) | 4 lines +r2575 | jcbowman | 2007-06-19 06:27:00 +0200 (Tue, 19 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_picture.asy @@ -18573,33 +18975,33 @@ elements of the array (not called clear to avoid the need for adding yet another type-dependent virtual function). ------------------------------------------------------------------------ -r2574 | pivaldi | 2007-06-18 16:44:27 -0600 (Mon, 18 Jun 2007) | 1 line +r2574 | pivaldi | 2007-06-19 00:44:27 +0200 (Tue, 19 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy fix typo. ------------------------------------------------------------------------ -r2573 | pivaldi | 2007-06-18 16:41:03 -0600 (Mon, 18 Jun 2007) | 1 line +r2573 | pivaldi | 2007-06-19 00:41:03 +0200 (Tue, 19 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy Add option filltype to markangle. ------------------------------------------------------------------------ -r2572 | jcbowman | 2007-06-18 16:01:22 -0600 (Mon, 18 Jun 2007) | 2 lines +r2572 | jcbowman | 2007-06-19 00:01:22 +0200 (Tue, 19 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/main.cc Handle exceptions in doUnrestirctedList. ------------------------------------------------------------------------ -r2571 | jcbowman | 2007-06-18 15:45:57 -0600 (Mon, 18 Jun 2007) | 2 lines +r2571 | jcbowman | 2007-06-18 23:45:57 +0200 (Mon, 18 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Declare shipout before importing plain_xasy. ------------------------------------------------------------------------ -r2570 | jcbowman | 2007-06-18 12:18:22 -0600 (Mon, 18 Jun 2007) | 4 lines +r2570 | jcbowman | 2007-06-18 20:18:22 +0200 (Mon, 18 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -18610,7 +19012,7 @@ Change the return type of the array virtual member delete to void. Allow A.delete(0,A.length-1) on empty arrays. ------------------------------------------------------------------------ -r2569 | jcbowman | 2007-06-18 11:59:33 -0600 (Mon, 18 Jun 2007) | 11 lines +r2569 | jcbowman | 2007-06-18 19:59:33 +0200 (Mon, 18 Jun 2007) | 11 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_picture.asy @@ -18635,13 +19037,13 @@ garbage collection. Implement a purge() function that forces a garbage collection. ------------------------------------------------------------------------ -r2568 | oshardt | 2007-06-18 11:10:53 -0600 (Mon, 18 Jun 2007) | 1 line +r2568 | oshardt | 2007-06-18 19:10:53 +0200 (Mon, 18 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/asymptote.py Updated to use Python's subprocess module. ------------------------------------------------------------------------ -r2567 | jcbowman | 2007-06-17 22:37:33 -0600 (Sun, 17 Jun 2007) | 3 lines +r2567 | jcbowman | 2007-06-18 06:37:33 +0200 (Mon, 18 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/transform.h @@ -18649,14 +19051,14 @@ Implement better workaround for uninitialized 'this.130' gcc-4.1.2 warning message (cf. r2186). ------------------------------------------------------------------------ -r2566 | jcbowman | 2007-06-14 17:47:22 -0600 (Thu, 14 Jun 2007) | 2 lines +r2566 | jcbowman | 2007-06-15 01:47:22 +0200 (Fri, 15 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Fix typo. ------------------------------------------------------------------------ -r2565 | jcbowman | 2007-06-14 17:39:46 -0600 (Thu, 14 Jun 2007) | 7 lines +r2565 | jcbowman | 2007-06-15 01:39:46 +0200 (Fri, 15 Jun 2007) | 7 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -18670,13 +19072,13 @@ Rename palette argument range to bounds to avoid confusion. Use an implicit bounds constructor. ------------------------------------------------------------------------ -r2564 | oshardt | 2007-06-14 15:05:19 -0600 (Thu, 14 Jun 2007) | 1 line +r2564 | oshardt | 2007-06-14 23:05:19 +0200 (Thu, 14 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/plain_xasy.asy Changed transform push(transform); to void push(transform); to remove output when called in interactive mode. ------------------------------------------------------------------------ -r2563 | jcbowman | 2007-06-14 14:19:13 -0600 (Thu, 14 Jun 2007) | 2 lines +r2563 | jcbowman | 2007-06-14 22:19:13 +0200 (Thu, 14 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/filegraph.asy @@ -18684,7 +19086,7 @@ Changed paths: Resolve ambiguity. ------------------------------------------------------------------------ -r2562 | jcbowman | 2007-06-14 13:16:25 -0600 (Thu, 14 Jun 2007) | 3 lines +r2562 | jcbowman | 2007-06-14 21:16:25 +0200 (Thu, 14 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/memory.h @@ -18694,7 +19096,7 @@ Don't call GC_collect under MacOS X, as this can cause bus errors and it doesn't seem to be necessary anyway on this platform. ------------------------------------------------------------------------ -r2561 | jcbowman | 2007-06-14 11:32:20 -0600 (Thu, 14 Jun 2007) | 4 lines +r2561 | jcbowman | 2007-06-14 19:32:20 +0200 (Thu, 14 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/runtime.in @@ -18704,7 +19106,7 @@ Remove unused line. Add reference. ------------------------------------------------------------------------ -r2560 | hammera | 2007-06-13 19:47:16 -0600 (Wed, 13 Jun 2007) | 2 lines +r2560 | hammera | 2007-06-14 03:47:16 +0200 (Thu, 14 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/fundec.cc @@ -18712,7 +19114,7 @@ Changed paths: Minor changes to comments. ------------------------------------------------------------------------ -r2559 | hammera | 2007-06-13 15:57:37 -0600 (Wed, 13 Jun 2007) | 2 lines +r2559 | hammera | 2007-06-13 23:57:37 +0200 (Wed, 13 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/graph.asy @@ -18725,19 +19127,19 @@ Changed paths: Fixed addOps to add fields when possible. ------------------------------------------------------------------------ -r2558 | pivaldi | 2007-06-13 03:10:21 -0600 (Wed, 13 Jun 2007) | 1 line +r2558 | pivaldi | 2007-06-13 11:10:21 +0200 (Wed, 13 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/examples/animations/sphere.asy Suppress useless code. ------------------------------------------------------------------------ -r2557 | jcbowman | 2007-06-13 01:42:21 -0600 (Wed, 13 Jun 2007) | 1 line +r2557 | jcbowman | 2007-06-13 09:42:21 +0200 (Wed, 13 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.31svn. ------------------------------------------------------------------------ -r2556 | jcbowman | 2007-06-12 23:30:11 -0600 (Tue, 12 Jun 2007) | 2 lines +r2556 | jcbowman | 2007-06-13 07:30:11 +0200 (Wed, 13 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -18745,7 +19147,7 @@ Changed paths: Add copy argument to allow one to disable data buffering. ------------------------------------------------------------------------ -r2555 | jcbowman | 2007-06-12 22:42:44 -0600 (Tue, 12 Jun 2007) | 6 lines +r2555 | jcbowman | 2007-06-13 06:42:44 +0200 (Wed, 13 Jun 2007) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -18759,21 +19161,21 @@ Optimize conditional graphs. Add modified sphere animation, courtesy of Olivier Guibe and Philippe Ivaldi. ------------------------------------------------------------------------ -r2554 | jcbowman | 2007-06-12 16:56:48 -0600 (Tue, 12 Jun 2007) | 2 lines +r2554 | jcbowman | 2007-06-13 00:56:48 +0200 (Wed, 13 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Remove unused filename. ------------------------------------------------------------------------ -r2553 | jcbowman | 2007-06-12 16:50:45 -0600 (Tue, 12 Jun 2007) | 2 lines +r2553 | jcbowman | 2007-06-13 00:50:45 +0200 (Wed, 13 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix dependency. ------------------------------------------------------------------------ -r2552 | jcbowman | 2007-06-12 16:25:57 -0600 (Tue, 12 Jun 2007) | 2 lines +r2552 | jcbowman | 2007-06-13 00:25:57 +0200 (Wed, 13 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -18784,21 +19186,21 @@ Changed paths: Make the implicit initializer for file variables null. ------------------------------------------------------------------------ -r2551 | jcbowman | 2007-06-12 15:57:18 -0600 (Tue, 12 Jun 2007) | 2 lines +r2551 | jcbowman | 2007-06-12 23:57:18 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Use a single box file. ------------------------------------------------------------------------ -r2550 | jcbowman | 2007-06-12 15:51:18 -0600 (Tue, 12 Jun 2007) | 2 lines +r2550 | jcbowman | 2007-06-12 23:51:18 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove unused box file entry. ------------------------------------------------------------------------ -r2549 | jcbowman | 2007-06-12 15:07:24 -0600 (Tue, 12 Jun 2007) | 2 lines +r2549 | jcbowman | 2007-06-12 23:07:24 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/main.cc @@ -18808,20 +19210,20 @@ Changed paths: Communicate to xasy via a single signal (SIGINT) and status file. ------------------------------------------------------------------------ -r2548 | hammera | 2007-06-12 13:52:42 -0600 (Tue, 12 Jun 2007) | 2 lines +r2548 | hammera | 2007-06-12 21:52:42 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/coder.h Fixed bug introduced by previous bug fix. ------------------------------------------------------------------------ -r2547 | pivaldi | 2007-06-12 13:42:19 -0600 (Tue, 12 Jun 2007) | 1 line +r2547 | pivaldi | 2007-06-12 21:42:19 +0200 (Tue, 12 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Update documentation. ------------------------------------------------------------------------ -r2546 | jcbowman | 2007-06-12 11:14:03 -0600 (Tue, 12 Jun 2007) | 2 lines +r2546 | jcbowman | 2007-06-12 19:14:03 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/graph_settings.asy @@ -18829,14 +19231,14 @@ Changed paths: Move definition of interpolate to graph_settings. ------------------------------------------------------------------------ -r2545 | jcbowman | 2007-06-12 02:23:08 -0600 (Tue, 12 Jun 2007) | 2 lines +r2545 | jcbowman | 2007-06-12 10:23:08 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Add cast of triple[] to guide3[]. ------------------------------------------------------------------------ -r2544 | jcbowman | 2007-06-12 01:42:32 -0600 (Tue, 12 Jun 2007) | 8 lines +r2544 | jcbowman | 2007-06-12 09:42:32 +0200 (Tue, 12 Jun 2007) | 8 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/Makefile @@ -18856,7 +19258,7 @@ Fix cxx errors. Document reverse(guide). ------------------------------------------------------------------------ -r2543 | jcbowman | 2007-06-12 00:08:25 -0600 (Tue, 12 Jun 2007) | 8 lines +r2543 | jcbowman | 2007-06-12 08:08:25 +0200 (Tue, 12 Jun 2007) | 8 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/plain_shipout.asy @@ -18876,14 +19278,14 @@ Add reverse(guide). Fix guide tests. ------------------------------------------------------------------------ -r2542 | jcbowman | 2007-06-11 23:49:48 -0600 (Mon, 11 Jun 2007) | 2 lines +r2542 | jcbowman | 2007-06-12 07:49:48 +0200 (Tue, 12 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Fix typos. ------------------------------------------------------------------------ -r2541 | jcbowman | 2007-06-11 13:18:47 -0600 (Mon, 11 Jun 2007) | 4 lines +r2541 | jcbowman | 2007-06-11 21:18:47 +0200 (Mon, 11 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/errormsg.h M /trunk/asymptote/interact.cc @@ -18896,7 +19298,7 @@ Exit interactive mode on eof when stdin is not a tty. If -signal is not set and stdin is not a tty, don't use interactive mode. ------------------------------------------------------------------------ -r2540 | pivaldi | 2007-06-11 08:01:51 -0600 (Mon, 11 Jun 2007) | 3 lines +r2540 | pivaldi | 2007-06-11 16:01:51 +0200 (Mon, 11 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/base/asy-mode.el @@ -18904,7 +19306,7 @@ Expand lasy-mode errors management (with Emacs 22 only). Defer all shell redirection to Emacs for supporting most shell. Compatibility running Windows. ------------------------------------------------------------------------ -r2539 | jcbowman | 2007-06-10 18:09:37 -0600 (Sun, 10 Jun 2007) | 2 lines +r2539 | jcbowman | 2007-06-11 02:09:37 +0200 (Mon, 11 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/examples/triangle.asy @@ -18912,14 +19314,14 @@ Changed paths: Update triangle example to use new simplified constructors. ------------------------------------------------------------------------ -r2538 | jcbowman | 2007-06-10 17:26:31 -0600 (Sun, 10 Jun 2007) | 2 lines +r2538 | jcbowman | 2007-06-11 01:26:31 +0200 (Mon, 11 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor edits. ------------------------------------------------------------------------ -r2537 | hammera | 2007-06-10 12:56:11 -0600 (Sun, 10 Jun 2007) | 4 lines +r2537 | hammera | 2007-06-10 20:56:11 +0200 (Sun, 10 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/TODO @@ -18945,7 +19347,7 @@ Added implicit constructors. Fixed bug with permissions in static methods. ------------------------------------------------------------------------ -r2536 | jcbowman | 2007-06-10 08:01:22 -0600 (Sun, 10 Jun 2007) | 2 lines +r2536 | jcbowman | 2007-06-10 16:01:22 +0200 (Sun, 10 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/tests/arith/roots.asy @@ -18953,14 +19355,14 @@ Changed paths: Add test for newton root solver; fix diagnostics. ------------------------------------------------------------------------ -r2535 | jcbowman | 2007-06-10 07:20:12 -0600 (Sun, 10 Jun 2007) | 2 lines +r2535 | jcbowman | 2007-06-10 15:20:12 +0200 (Sun, 10 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Optimize join. ------------------------------------------------------------------------ -r2534 | jcbowman | 2007-06-10 00:12:13 -0600 (Sun, 10 Jun 2007) | 2 lines +r2534 | jcbowman | 2007-06-10 08:12:13 +0200 (Sun, 10 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -18968,28 +19370,28 @@ Changed paths: Give preference to GPL over AFPL Ghostscript. ------------------------------------------------------------------------ -r2533 | jcbowman | 2007-06-09 23:25:19 -0600 (Sat, 09 Jun 2007) | 2 lines +r2533 | jcbowman | 2007-06-10 07:25:19 +0200 (Sun, 10 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Add Philippe's lasy-mode fixes, including support for tcsh. ------------------------------------------------------------------------ -r2532 | jcbowman | 2007-06-09 12:29:29 -0600 (Sat, 09 Jun 2007) | 2 lines +r2532 | jcbowman | 2007-06-09 20:29:29 +0200 (Sat, 09 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Add bool copy=true argument to picture routines that buffer data. ------------------------------------------------------------------------ -r2531 | jcbowman | 2007-06-09 04:10:23 -0600 (Sat, 09 Jun 2007) | 2 lines +r2531 | jcbowman | 2007-06-09 12:10:23 +0200 (Sat, 09 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc Improve garbage handling of multiple-file runs. ------------------------------------------------------------------------ -r2530 | jcbowman | 2007-06-09 02:57:12 -0600 (Sat, 09 Jun 2007) | 2 lines +r2530 | jcbowman | 2007-06-09 10:57:12 +0200 (Sat, 09 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/builtin.cc @@ -19001,20 +19403,20 @@ Changed paths: Remove default initializer for files. ------------------------------------------------------------------------ -r2529 | oshardt | 2007-06-08 15:05:15 -0600 (Fri, 08 Jun 2007) | 1 line +r2529 | oshardt | 2007-06-08 23:05:15 +0200 (Fri, 08 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/base/plain_xasy.asy switched xformStack from LIFO to FIFO ------------------------------------------------------------------------ -r2528 | jcbowman | 2007-06-06 13:09:28 -0600 (Wed, 06 Jun 2007) | 2 lines +r2528 | jcbowman | 2007-06-06 21:09:28 +0200 (Wed, 06 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Revert spurious asy-mode.el commit. ------------------------------------------------------------------------ -r2527 | jcbowman | 2007-06-06 13:01:46 -0600 (Wed, 06 Jun 2007) | 2 lines +r2527 | jcbowman | 2007-06-06 21:01:46 +0200 (Wed, 06 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/base/plain_debugger.asy @@ -19025,14 +19427,14 @@ Changed paths: Split readline functionality into readline and saveline. ------------------------------------------------------------------------ -r2526 | jcbowman | 2007-06-06 00:38:24 -0600 (Wed, 06 Jun 2007) | 2 lines +r2526 | jcbowman | 2007-06-06 08:38:24 +0200 (Wed, 06 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Allow xformat to be any format supported by convert. ------------------------------------------------------------------------ -r2525 | jcbowman | 2007-06-04 22:42:05 -0600 (Mon, 04 Jun 2007) | 2 lines +r2525 | jcbowman | 2007-06-05 06:42:05 +0200 (Tue, 05 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/runtime.in @@ -19040,7 +19442,7 @@ Changed paths: Fix parallel bison and lex processing. ------------------------------------------------------------------------ -r2524 | jcbowman | 2007-06-04 14:53:35 -0600 (Mon, 04 Jun 2007) | 2 lines +r2524 | jcbowman | 2007-06-04 22:53:35 +0200 (Mon, 04 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy A /trunk/asymptote/base/plain_xasy.asy (from /trunk/asymptote/base/xasy.asy:2523) @@ -19051,14 +19453,14 @@ Changed paths: Rename xasy.asy to plain_xasy.asy and revert other r2521 changes. ------------------------------------------------------------------------ -r2523 | jcbowman | 2007-06-03 22:15:09 -0600 (Sun, 03 Jun 2007) | 2 lines +r2523 | jcbowman | 2007-06-04 06:15:09 +0200 (Mon, 04 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve documentation. ------------------------------------------------------------------------ -r2522 | jcbowman | 2007-06-03 22:10:34 -0600 (Sun, 03 Jun 2007) | 2 lines +r2522 | jcbowman | 2007-06-04 06:10:34 +0200 (Mon, 04 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -19066,7 +19468,7 @@ Changed paths: Add Newton-Raphson iteration and Newton-Raphosn bisection routines. ------------------------------------------------------------------------ -r2521 | jcbowman | 2007-06-03 17:07:52 -0600 (Sun, 03 Jun 2007) | 2 lines +r2521 | jcbowman | 2007-06-04 01:07:52 +0200 (Mon, 04 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/slide.asy @@ -19076,7 +19478,7 @@ Changed paths: Add support for new GUI xformStack (under development). ------------------------------------------------------------------------ -r2520 | jcbowman | 2007-06-03 10:33:17 -0600 (Sun, 03 Jun 2007) | 3 lines +r2520 | jcbowman | 2007-06-03 18:33:17 +0200 (Sun, 03 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.texi @@ -19085,7 +19487,7 @@ Require version 2007/05/24 or later of animate.sty package; remove file name padding workaround. ------------------------------------------------------------------------ -r2519 | jcbowman | 2007-06-02 23:20:55 -0600 (Sat, 02 Jun 2007) | 2 lines +r2519 | jcbowman | 2007-06-03 07:20:55 +0200 (Sun, 03 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -19094,7 +19496,7 @@ Changed paths: Generalize history to return an array of the n most recent history values. ------------------------------------------------------------------------ -r2518 | jcbowman | 2007-06-02 22:39:49 -0600 (Sat, 02 Jun 2007) | 4 lines +r2518 | jcbowman | 2007-06-03 06:39:49 +0200 (Sun, 03 Jun 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -19105,28 +19507,28 @@ Add gsOptions configuration variable. Force embedding of all fonts in eps files. ------------------------------------------------------------------------ -r2517 | jcbowman | 2007-06-02 17:11:22 -0600 (Sat, 02 Jun 2007) | 2 lines +r2517 | jcbowman | 2007-06-03 01:11:22 +0200 (Sun, 03 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Force all fonts to be embedded in pdf files. ------------------------------------------------------------------------ -r2516 | jcbowman | 2007-06-02 12:00:40 -0600 (Sat, 02 Jun 2007) | 2 lines +r2516 | jcbowman | 2007-06-02 20:00:40 +0200 (Sat, 02 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Force fixed format for compatibility with pdflatex. ------------------------------------------------------------------------ -r2515 | jcbowman | 2007-06-02 01:30:15 -0600 (Sat, 02 Jun 2007) | 2 lines +r2515 | jcbowman | 2007-06-02 09:30:15 +0200 (Sat, 02 Jun 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Fix indentation when byte-compiled cc-mode.elc is used. ------------------------------------------------------------------------ -r2514 | jcbowman | 2007-06-01 18:08:13 -0600 (Fri, 01 Jun 2007) | 8 lines +r2514 | jcbowman | 2007-06-02 02:08:13 +0200 (Sat, 02 Jun 2007) | 8 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -19146,7 +19548,7 @@ Add initialized(int n) array virtual member to detect whether element n is initialized. ------------------------------------------------------------------------ -r2513 | jcbowman | 2007-06-01 11:04:43 -0600 (Fri, 01 Jun 2007) | 3 lines +r2513 | jcbowman | 2007-06-01 19:04:43 +0200 (Fri, 01 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -19156,13 +19558,13 @@ Split readline functionality into two routines: readline (with argument order now consistent with getstring) and history(string). ------------------------------------------------------------------------ -r2512 | oshardt | 2007-06-01 11:01:58 -0600 (Fri, 01 Jun 2007) | 1 line +r2512 | oshardt | 2007-06-01 19:01:58 +0200 (Fri, 01 Jun 2007) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo ------------------------------------------------------------------------ -r2511 | jcbowman | 2007-06-01 10:01:28 -0600 (Fri, 01 Jun 2007) | 3 lines +r2511 | jcbowman | 2007-06-01 18:01:28 +0200 (Fri, 01 Jun 2007) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -19170,7 +19572,7 @@ Implement NoZero and NoZeroFormat with more general OmitTick and OmitFormat routines. ------------------------------------------------------------------------ -r2510 | jcbowman | 2007-05-31 14:17:57 -0600 (Thu, 31 May 2007) | 2 lines +r2510 | jcbowman | 2007-05-31 22:17:57 +0200 (Thu, 31 May 2007) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/drawfill.h @@ -19181,7 +19583,7 @@ Changed paths: Avoid need to defer linewidth by moving setpen to the proper place. ------------------------------------------------------------------------ -r2509 | jcbowman | 2007-05-31 13:53:57 -0600 (Thu, 31 May 2007) | 4 lines +r2509 | jcbowman | 2007-05-31 21:53:57 +0200 (Thu, 31 May 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawelement.h @@ -19196,7 +19598,7 @@ Omit identity concat commands. Put dynamic linewidth code in /Setlinewidth. ------------------------------------------------------------------------ -r2508 | jcbowman | 2007-05-31 02:21:50 -0600 (Thu, 31 May 2007) | 4 lines +r2508 | jcbowman | 2007-05-31 10:21:50 +0200 (Thu, 31 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy M /trunk/asymptote/psfile.cc @@ -19207,14 +19609,14 @@ Fix linewidth. Fix division by zero. ------------------------------------------------------------------------ -r2507 | jcbowman | 2007-05-31 01:51:14 -0600 (Thu, 31 May 2007) | 2 lines +r2507 | jcbowman | 2007-05-31 09:51:14 +0200 (Thu, 31 May 2007) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Simplify linewidth deferral. ------------------------------------------------------------------------ -r2506 | jcbowman | 2007-05-30 23:25:59 -0600 (Wed, 30 May 2007) | 4 lines +r2506 | jcbowman | 2007-05-31 07:25:59 +0200 (Thu, 31 May 2007) | 4 lines Changed paths: M /trunk/asymptote/psfile.cc M /trunk/asymptote/psfile.h @@ -19224,27 +19626,27 @@ Defer dynamic linewidth until stroke time in case currentmatrix changes. Improve accuracy of dynamic linewidth calculation. ------------------------------------------------------------------------ -r2505 | jcbowman | 2007-05-30 23:18:10 -0600 (Wed, 30 May 2007) | 2 lines +r2505 | jcbowman | 2007-05-31 07:18:10 +0200 (Thu, 31 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Rename zerotick to zerotickfuzz for clarity. ------------------------------------------------------------------------ -r2504 | jcbowman | 2007-05-30 17:53:52 -0600 (Wed, 30 May 2007) | 2 lines +r2504 | jcbowman | 2007-05-31 01:53:52 +0200 (Thu, 31 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Make zero detection robust. ------------------------------------------------------------------------ -r2503 | pivaldi | 2007-05-30 13:48:10 -0600 (Wed, 30 May 2007) | 1 line +r2503 | pivaldi | 2007-05-30 21:48:10 +0200 (Wed, 30 May 2007) | 1 line Changed paths: M /trunk/asymptote/base/graph.asy Fix numerical precision in the routine NoZero ------------------------------------------------------------------------ -r2502 | jcbowman | 2007-05-30 13:04:08 -0600 (Wed, 30 May 2007) | 2 lines +r2502 | jcbowman | 2007-05-30 21:04:08 +0200 (Wed, 30 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/graph3.asy @@ -19253,20 +19655,20 @@ Changed paths: Fix orientation code. ------------------------------------------------------------------------ -r2501 | jcbowman | 2007-05-30 12:37:44 -0600 (Wed, 30 May 2007) | 2 lines +r2501 | jcbowman | 2007-05-30 20:37:44 +0200 (Wed, 30 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy Simplify and optimize normal calculation. ------------------------------------------------------------------------ -r2500 | rmarinov | 2007-05-30 11:37:58 -0600 (Wed, 30 May 2007) | 1 line +r2500 | rmarinov | 2007-05-30 19:37:58 +0200 (Wed, 30 May 2007) | 1 line Changed paths: M /trunk/asymptote/base/contour3.asy Changed the shading approach in base/contour3.asy . ------------------------------------------------------------------------ -r2499 | jcbowman | 2007-05-30 01:32:47 -0600 (Wed, 30 May 2007) | 4 lines +r2499 | jcbowman | 2007-05-30 09:32:47 +0200 (Wed, 30 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/base/graph3.asy @@ -19285,7 +19687,7 @@ Implement simplified (and slightly more efficient) gouraudshade interface. Reduce memory and CPU usage by avoiding duplicate buffering of picture data. ------------------------------------------------------------------------ -r2498 | jcbowman | 2007-05-29 22:04:36 -0600 (Tue, 29 May 2007) | 2 lines +r2498 | jcbowman | 2007-05-30 06:04:36 +0200 (Wed, 30 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -19293,7 +19695,7 @@ Changed paths: Add tickmodifier NoZero and ticklabel format NoZeroFormat. ------------------------------------------------------------------------ -r2497 | jcbowman | 2007-05-29 16:27:53 -0600 (Tue, 29 May 2007) | 2 lines +r2497 | jcbowman | 2007-05-30 00:27:53 +0200 (Wed, 30 May 2007) | 2 lines Changed paths: M /trunk/asymptote/tests/TestLib.asy A /trunk/asymptote/tests/array/transpose.asy @@ -19302,7 +19704,7 @@ Changed paths: New test routines. ------------------------------------------------------------------------ -r2496 | jcbowman | 2007-05-29 16:08:06 -0600 (Tue, 29 May 2007) | 4 lines +r2496 | jcbowman | 2007-05-30 00:08:06 +0200 (Wed, 30 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/graph.asy @@ -19319,35 +19721,35 @@ Move real[][] identity(int n) from math.asy to C++ code; add documentation. Avoid use of loops with join operator. ------------------------------------------------------------------------ -r2495 | jcbowman | 2007-05-29 16:04:44 -0600 (Tue, 29 May 2007) | 2 lines +r2495 | jcbowman | 2007-05-30 00:04:44 +0200 (Wed, 30 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy Minor optimization. ------------------------------------------------------------------------ -r2494 | jcbowman | 2007-05-29 15:54:23 -0600 (Tue, 29 May 2007) | 2 lines +r2494 | jcbowman | 2007-05-29 23:54:23 +0200 (Tue, 29 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy Cleaner optimization. ------------------------------------------------------------------------ -r2493 | jcbowman | 2007-05-28 18:14:29 -0600 (Mon, 28 May 2007) | 2 lines +r2493 | jcbowman | 2007-05-29 02:14:29 +0200 (Tue, 29 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy Remove extra loop variable. ------------------------------------------------------------------------ -r2492 | jcbowman | 2007-05-28 18:11:05 -0600 (Mon, 28 May 2007) | 2 lines +r2492 | jcbowman | 2007-05-29 02:11:05 +0200 (Tue, 29 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy Further optimizations. ------------------------------------------------------------------------ -r2491 | jcbowman | 2007-05-28 16:44:44 -0600 (Mon, 28 May 2007) | 2 lines +r2491 | jcbowman | 2007-05-29 00:44:44 +0200 (Tue, 29 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy M /trunk/asymptote/doc/asymptote.texi @@ -19355,7 +19757,7 @@ Changed paths: Optimize number of calls to project; change return type of contour. ------------------------------------------------------------------------ -r2490 | jcbowman | 2007-05-28 14:41:27 -0600 (Mon, 28 May 2007) | 6 lines +r2490 | jcbowman | 2007-05-28 22:41:27 +0200 (Mon, 28 May 2007) | 6 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/process.cc @@ -19367,7 +19769,7 @@ Reset scroll lines to zero. Don't exit on interrupt during module load in interactive mode. ------------------------------------------------------------------------ -r2489 | jcbowman | 2007-05-28 14:14:22 -0600 (Mon, 28 May 2007) | 4 lines +r2489 | jcbowman | 2007-05-28 22:14:22 +0200 (Mon, 28 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/contour3.asy @@ -19376,7 +19778,7 @@ Renamed particle to object. Minor optimization. ------------------------------------------------------------------------ -r2488 | jcbowman | 2007-05-28 11:14:18 -0600 (Mon, 28 May 2007) | 8 lines +r2488 | jcbowman | 2007-05-28 19:14:18 +0200 (Mon, 28 May 2007) | 8 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -19392,7 +19794,7 @@ Make cputime().change return parent+child times. Add write(cputime). ------------------------------------------------------------------------ -r2487 | jcbowman | 2007-05-27 22:29:01 -0600 (Sun, 27 May 2007) | 2 lines +r2487 | jcbowman | 2007-05-28 06:29:01 +0200 (Mon, 28 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -19400,14 +19802,14 @@ Changed paths: Added change.user and change.system fields to cputime(). ------------------------------------------------------------------------ -r2486 | jcbowman | 2007-05-27 22:25:31 -0600 (Sun, 27 May 2007) | 2 lines +r2486 | jcbowman | 2007-05-28 06:25:31 +0200 (Mon, 28 May 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Optimize real[][] * real[]. ------------------------------------------------------------------------ -r2485 | jcbowman | 2007-05-27 09:53:28 -0600 (Sun, 27 May 2007) | 2 lines +r2485 | jcbowman | 2007-05-27 17:53:28 +0200 (Sun, 27 May 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/light.asy @@ -19418,14 +19820,14 @@ Changed paths: Speed up 3D projection by moving matrix-matrix multipy to C++ code. ------------------------------------------------------------------------ -r2484 | jcbowman | 2007-05-27 01:08:58 -0600 (Sun, 27 May 2007) | 2 lines +r2484 | jcbowman | 2007-05-27 09:08:58 +0200 (Sun, 27 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor clarification. ------------------------------------------------------------------------ -r2483 | jcbowman | 2007-05-27 01:03:03 -0600 (Sun, 27 May 2007) | 2 lines +r2483 | jcbowman | 2007-05-27 09:03:03 +0200 (Sun, 27 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/three.asy @@ -19439,21 +19841,21 @@ Changed paths: Simplify, document, and port guide examination routines to three.asy. ------------------------------------------------------------------------ -r2482 | jcbowman | 2007-05-26 10:13:48 -0600 (Sat, 26 May 2007) | 2 lines +r2482 | jcbowman | 2007-05-26 18:13:48 +0200 (Sat, 26 May 2007) | 2 lines Changed paths: M /trunk/asymptote/guide.cc Fix potential uninitialized variable. ------------------------------------------------------------------------ -r2481 | jcbowman | 2007-05-24 02:07:53 -0600 (Thu, 24 May 2007) | 2 lines +r2481 | jcbowman | 2007-05-24 10:07:53 +0200 (Thu, 24 May 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add bool cyclic(guide) routine. ------------------------------------------------------------------------ -r2480 | jcbowman | 2007-05-24 01:53:03 -0600 (Thu, 24 May 2007) | 4 lines +r2480 | jcbowman | 2007-05-24 09:53:03 +0200 (Thu, 24 May 2007) | 4 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/flatguide.h @@ -19467,75 +19869,75 @@ Add routines to allow access to guide components. Add upcase and downcase routines. ------------------------------------------------------------------------ -r2479 | jcbowman | 2007-05-23 22:48:23 -0600 (Wed, 23 May 2007) | 2 lines +r2479 | jcbowman | 2007-05-24 06:48:23 +0200 (Thu, 24 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/extra/intro.asy Document bibtex usage. ------------------------------------------------------------------------ -r2478 | jcbowman | 2007-05-23 22:47:47 -0600 (Wed, 23 May 2007) | 2 lines +r2478 | jcbowman | 2007-05-24 06:47:47 +0200 (Thu, 24 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Install intro.asy. ------------------------------------------------------------------------ -r2477 | jcbowman | 2007-05-23 22:47:32 -0600 (Wed, 23 May 2007) | 2 lines +r2477 | jcbowman | 2007-05-24 06:47:32 +0200 (Thu, 24 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy Remove pdf() restriction. ------------------------------------------------------------------------ -r2476 | oshardt | 2007-05-23 15:43:59 -0600 (Wed, 23 May 2007) | 1 line +r2476 | oshardt | 2007-05-23 23:43:59 +0200 (Wed, 23 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3 Fixed docs about base64 ------------------------------------------------------------------------ -r2475 | jcbowman | 2007-05-21 21:16:42 -0600 (Mon, 21 May 2007) | 2 lines +r2475 | jcbowman | 2007-05-22 05:16:42 +0200 (Tue, 22 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour3.asy Use projection P; reduce number of calls to project. ------------------------------------------------------------------------ -r2474 | jcbowman | 2007-05-19 14:16:43 -0600 (Sat, 19 May 2007) | 2 lines +r2474 | jcbowman | 2007-05-19 22:16:43 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/magnetic.asy Reduce resolution. ------------------------------------------------------------------------ -r2473 | jcbowman | 2007-05-19 14:05:36 -0600 (Sat, 19 May 2007) | 1 line +r2473 | jcbowman | 2007-05-19 22:05:36 +0200 (Sat, 19 May 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.30svn. ------------------------------------------------------------------------ -r2472 | jcbowman | 2007-05-19 11:25:04 -0600 (Sat, 19 May 2007) | 2 lines +r2472 | jcbowman | 2007-05-19 19:25:04 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update LocalWords. ------------------------------------------------------------------------ -r2471 | jcbowman | 2007-05-19 11:16:54 -0600 (Sat, 19 May 2007) | 2 lines +r2471 | jcbowman | 2007-05-19 19:16:54 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve description of contour3. ------------------------------------------------------------------------ -r2470 | jcbowman | 2007-05-19 11:08:13 -0600 (Sat, 19 May 2007) | 2 lines +r2470 | jcbowman | 2007-05-19 19:08:13 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/xasy3 Speed up tick handler. ------------------------------------------------------------------------ -r2469 | jcbowman | 2007-05-19 10:44:24 -0600 (Sat, 19 May 2007) | 3 lines +r2469 | jcbowman | 2007-05-19 18:44:24 +0200 (Sat, 19 May 2007) | 3 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -19545,7 +19947,7 @@ Reinstate abbreviation q for quit, unless there exists a top-level variable of this name. ------------------------------------------------------------------------ -r2468 | jcbowman | 2007-05-19 02:02:28 -0600 (Sat, 19 May 2007) | 3 lines +r2468 | jcbowman | 2007-05-19 10:02:28 +0200 (Sat, 19 May 2007) | 3 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/base/embed.asy @@ -19563,7 +19965,7 @@ Use easier-to-use animate.sty package instead of interim pdfanim_temp.sty package for generating pdf animations. ------------------------------------------------------------------------ -r2467 | jcbowman | 2007-05-19 00:48:09 -0600 (Sat, 19 May 2007) | 2 lines +r2467 | jcbowman | 2007-05-19 08:48:09 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy A /trunk/asymptote/base/contour3.asy @@ -19579,7 +19981,7 @@ Changed paths: Add support for drawing zero-level sets of functions from R^3 to R. ------------------------------------------------------------------------ -r2466 | jcbowman | 2007-05-19 00:37:10 -0600 (Sat, 19 May 2007) | 2 lines +r2466 | jcbowman | 2007-05-19 08:37:10 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy M /trunk/asymptote/doc/histogram.asy @@ -19587,7 +19989,7 @@ Changed paths: Fill in potential gaps between histogram bars when bars=false. ------------------------------------------------------------------------ -r2465 | jcbowman | 2007-05-19 00:11:06 -0600 (Sat, 19 May 2007) | 2 lines +r2465 | jcbowman | 2007-05-19 08:11:06 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy M /trunk/asymptote/doc/histogram.asy @@ -19595,14 +19997,14 @@ Changed paths: Simplify histogram interface. ------------------------------------------------------------------------ -r2464 | jcbowman | 2007-05-19 00:09:42 -0600 (Sat, 19 May 2007) | 2 lines +r2464 | jcbowman | 2007-05-19 08:09:42 +0200 (Sat, 19 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy Fix FillDraw pens. ------------------------------------------------------------------------ -r2463 | hammera | 2007-05-18 13:35:20 -0600 (Fri, 18 May 2007) | 3 lines +r2463 | hammera | 2007-05-18 21:35:20 +0200 (Fri, 18 May 2007) | 3 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/newexp.cc @@ -19612,7 +20014,7 @@ Minor refactoring. ------------------------------------------------------------------------ -r2462 | hammera | 2007-05-18 13:34:40 -0600 (Fri, 18 May 2007) | 3 lines +r2462 | hammera | 2007-05-18 21:34:40 +0200 (Fri, 18 May 2007) | 3 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/fundec.cc @@ -19622,45 +20024,45 @@ Got rid of annoying "no default init for <error>" message. Fix a boolean flag mixup. ------------------------------------------------------------------------ -r2461 | oshardt | 2007-05-18 11:08:24 -0600 (Fri, 18 May 2007) | 1 line +r2461 | oshardt | 2007-05-18 19:08:24 +0200 (Fri, 18 May 2007) | 1 line Changed paths: M /trunk/asymptote/patches/README Acknowledged source of Imaging-1.1.6 patch ------------------------------------------------------------------------ -r2460 | oshardt | 2007-05-18 11:07:33 -0600 (Fri, 18 May 2007) | 1 line +r2460 | oshardt | 2007-05-18 19:07:33 +0200 (Fri, 18 May 2007) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented the enabling of PNG format in xasy ------------------------------------------------------------------------ -r2459 | jcbowman | 2007-05-17 21:51:53 -0600 (Thu, 17 May 2007) | 2 lines +r2459 | jcbowman | 2007-05-18 05:51:53 +0200 (Fri, 18 May 2007) | 2 lines Changed paths: D /trunk/asymptote/xasy3Imgs Remove unused directory. ------------------------------------------------------------------------ -r2458 | jcbowman | 2007-05-17 21:48:50 -0600 (Thu, 17 May 2007) | 2 lines +r2458 | jcbowman | 2007-05-18 05:48:50 +0200 (Fri, 18 May 2007) | 2 lines Changed paths: M /trunk/asymptote/fpu.h Add default argument. ------------------------------------------------------------------------ -r2457 | oshardt | 2007-05-17 14:47:36 -0600 (Thu, 17 May 2007) | 1 line +r2457 | oshardt | 2007-05-17 22:47:36 +0200 (Thu, 17 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3 Documented use of base64 ------------------------------------------------------------------------ -r2456 | oshardt | 2007-05-17 13:45:12 -0600 (Thu, 17 May 2007) | 1 line +r2456 | oshardt | 2007-05-17 21:45:12 +0200 (Thu, 17 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3 Provided ability to draw a selection box to select all items in the box. Added item scroll up/down feature. Embedded the toolbar icon images into the source code. ------------------------------------------------------------------------ -r2455 | oshardt | 2007-05-17 13:42:01 -0600 (Thu, 17 May 2007) | 1 line +r2455 | oshardt | 2007-05-17 21:42:01 +0200 (Thu, 17 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3Imgs/horizMove.gif M /trunk/asymptote/xasy3Imgs/move.gif @@ -19670,7 +20072,7 @@ Changed paths: Arrows in icons are now the same style as Asymptote arrows. Transparency of text.gif fixed. ------------------------------------------------------------------------ -r2454 | jcbowman | 2007-05-17 09:19:11 -0600 (Thu, 17 May 2007) | 2 lines +r2454 | jcbowman | 2007-05-17 17:19:11 +0200 (Thu, 17 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy M /trunk/asymptote/doc/histogram.asy @@ -19678,52 +20080,52 @@ Changed paths: Added support for fillpen, drawpen, and legend entries to histogram. ------------------------------------------------------------------------ -r2453 | jcbowman | 2007-05-17 09:12:11 -0600 (Thu, 17 May 2007) | 2 lines +r2453 | jcbowman | 2007-05-17 17:12:11 +0200 (Thu, 17 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy Adjust legendline length to account for marker size. ------------------------------------------------------------------------ -r2452 | jcbowman | 2007-05-17 09:10:53 -0600 (Thu, 17 May 2007) | 2 lines +r2452 | jcbowman | 2007-05-17 17:10:53 +0200 (Thu, 17 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Minor optimization. ------------------------------------------------------------------------ -r2451 | oshardt | 2007-05-16 17:28:12 -0600 (Wed, 16 May 2007) | 1 line +r2451 | oshardt | 2007-05-17 01:28:12 +0200 (Thu, 17 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3 Improved handling of highlighting when mouse enters and leaves an item. ------------------------------------------------------------------------ -r2450 | oshardt | 2007-05-16 15:09:06 -0600 (Wed, 16 May 2007) | 1 line +r2450 | oshardt | 2007-05-16 23:09:06 +0200 (Wed, 16 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3 Various improvements to xasy3 made including ability to select and move multiple objects, and fixed the ability to open additional files. ------------------------------------------------------------------------ -r2449 | oshardt | 2007-05-16 15:04:29 -0600 (Wed, 16 May 2007) | 1 line +r2449 | oshardt | 2007-05-16 23:04:29 +0200 (Wed, 16 May 2007) | 1 line Changed paths: A /trunk/asymptote/xasy3Imgs/select.gif Added new icon for xasy3 toolbar. ------------------------------------------------------------------------ -r2448 | oshardt | 2007-05-16 15:02:55 -0600 (Wed, 16 May 2007) | 1 line +r2448 | oshardt | 2007-05-16 23:02:55 +0200 (Wed, 16 May 2007) | 1 line Changed paths: M /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch Updated Imaging-1.1.6 patch to adhere to conventions of other patches. ------------------------------------------------------------------------ -r2447 | jcbowman | 2007-05-16 07:29:59 -0600 (Wed, 16 May 2007) | 2 lines +r2447 | jcbowman | 2007-05-16 15:29:59 +0200 (Wed, 16 May 2007) | 2 lines Changed paths: M /trunk/asymptote/xasy3 Speed up tickHandler; use default asy xformat. ------------------------------------------------------------------------ -r2446 | jcbowman | 2007-05-15 23:14:35 -0600 (Tue, 15 May 2007) | 4 lines +r2446 | jcbowman | 2007-05-16 07:14:35 +0200 (Wed, 16 May 2007) | 4 lines Changed paths: M /trunk/asymptote/patches/README M /trunk/asymptote/picture.cc @@ -19738,42 +20140,42 @@ Optionally support transparent png deconstruction. Work around half-pixel bounding box bug in Ghostscript pngalpha driver. ------------------------------------------------------------------------ -r2445 | oshardt | 2007-05-15 15:04:55 -0600 (Tue, 15 May 2007) | 1 line +r2445 | oshardt | 2007-05-15 23:04:55 +0200 (Tue, 15 May 2007) | 1 line Changed paths: M /trunk/asymptote/patches/README A /trunk/asymptote/patches/TkAlpha-Imaging-1.1.6.patch Provided a patch to allow better alpha support in the PIL's ImageTk for the new GUI ------------------------------------------------------------------------ -r2444 | jcbowman | 2007-05-15 15:00:09 -0600 (Tue, 15 May 2007) | 2 lines +r2444 | jcbowman | 2007-05-15 23:00:09 +0200 (Tue, 15 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix typo. ------------------------------------------------------------------------ -r2443 | jcbowman | 2007-05-15 10:37:32 -0600 (Tue, 15 May 2007) | 2 lines +r2443 | jcbowman | 2007-05-15 18:37:32 +0200 (Tue, 15 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fix typo. ------------------------------------------------------------------------ -r2442 | jcbowman | 2007-05-15 10:36:47 -0600 (Tue, 15 May 2007) | 2 lines +r2442 | jcbowman | 2007-05-15 18:36:47 +0200 (Tue, 15 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fixed comment. ------------------------------------------------------------------------ -r2441 | jcbowman | 2007-05-15 09:13:34 -0600 (Tue, 15 May 2007) | 2 lines +r2441 | jcbowman | 2007-05-15 17:13:34 +0200 (Tue, 15 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fix increasing(real[],true). ------------------------------------------------------------------------ -r2440 | jcbowman | 2007-05-15 08:53:40 -0600 (Tue, 15 May 2007) | 2 lines +r2440 | jcbowman | 2007-05-15 16:53:40 +0200 (Tue, 15 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/interpolate.asy M /trunk/asymptote/base/math.asy @@ -19781,7 +20183,7 @@ Changed paths: Check that array x is strictly increasing. ------------------------------------------------------------------------ -r2439 | jcbowman | 2007-05-14 13:20:48 -0600 (Mon, 14 May 2007) | 2 lines +r2439 | jcbowman | 2007-05-14 21:20:48 +0200 (Mon, 14 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/main.cc @@ -19796,7 +20198,7 @@ Changed paths: Implement bidirectional signal handling to new GUI (under development). ------------------------------------------------------------------------ -r2438 | jcbowman | 2007-05-13 10:07:35 -0600 (Sun, 13 May 2007) | 4 lines +r2438 | jcbowman | 2007-05-13 18:07:35 +0200 (Sun, 13 May 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -19806,21 +20208,21 @@ Generate begin and end figure comments. Documentation updates. ------------------------------------------------------------------------ -r2437 | jcbowman | 2007-05-12 23:02:04 -0600 (Sat, 12 May 2007) | 2 lines +r2437 | jcbowman | 2007-05-13 07:02:04 +0200 (Sun, 13 May 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Explicitly close EPS output file to avoid race condition with gv. ------------------------------------------------------------------------ -r2436 | jcbowman | 2007-05-12 17:12:57 -0600 (Sat, 12 May 2007) | 2 lines +r2436 | jcbowman | 2007-05-13 01:12:57 +0200 (Sun, 13 May 2007) | 2 lines Changed paths: M /trunk/asymptote/path.cc Increase arctime precision. ------------------------------------------------------------------------ -r2435 | jcbowman | 2007-05-12 11:59:20 -0600 (Sat, 12 May 2007) | 4 lines +r2435 | jcbowman | 2007-05-12 19:59:20 +0200 (Sat, 12 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -19832,14 +20234,14 @@ Fix remaining numerical resolution problems with dir. Avoid arctime error when goal == L. ------------------------------------------------------------------------ -r2434 | oshardt | 2007-05-12 09:34:16 -0600 (Sat, 12 May 2007) | 1 line +r2434 | oshardt | 2007-05-12 17:34:16 +0200 (Sat, 12 May 2007) | 1 line Changed paths: M /trunk/asymptote/xasy3 D /trunk/asymptote/xasy3Imgs/RESET Fixed images for xasy3 ------------------------------------------------------------------------ -r2433 | oshardt | 2007-05-12 09:31:20 -0600 (Sat, 12 May 2007) | 1 line +r2433 | oshardt | 2007-05-12 17:31:20 +0200 (Sat, 12 May 2007) | 1 line Changed paths: A /trunk/asymptote/xasy3Imgs A /trunk/asymptote/xasy3Imgs/RESET @@ -19861,13 +20263,13 @@ Changed paths: Images for xasy3 ------------------------------------------------------------------------ -r2432 | oshardt | 2007-05-12 09:25:40 -0600 (Sat, 12 May 2007) | 1 line +r2432 | oshardt | 2007-05-12 17:25:40 +0200 (Sat, 12 May 2007) | 1 line Changed paths: A /trunk/asymptote/xasy3 Added xasy3 - a new GUI ------------------------------------------------------------------------ -r2431 | jcbowman | 2007-05-11 17:23:02 -0600 (Fri, 11 May 2007) | 2 lines +r2431 | jcbowman | 2007-05-12 01:23:02 +0200 (Sat, 12 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/datagraph.asy @@ -19875,14 +20277,14 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r2430 | jcbowman | 2007-05-11 07:05:05 -0600 (Fri, 11 May 2007) | 2 lines +r2430 | jcbowman | 2007-05-11 15:05:05 +0200 (Fri, 11 May 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Suppress extra newline on standard EOF reads in absence of readline library. ------------------------------------------------------------------------ -r2429 | jcbowman | 2007-05-10 22:37:15 -0600 (Thu, 10 May 2007) | 2 lines +r2429 | jcbowman | 2007-05-11 06:37:15 +0200 (Fri, 11 May 2007) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/fileio.h @@ -19890,7 +20292,7 @@ Changed paths: Fix standard input of strings. ------------------------------------------------------------------------ -r2428 | jcbowman | 2007-05-10 14:45:56 -0600 (Thu, 10 May 2007) | 2 lines +r2428 | jcbowman | 2007-05-10 22:45:56 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.in @@ -19898,7 +20300,7 @@ Changed paths: Change SIGUSR to SIGINT and output a final box file to indicate end-of-sequence. ------------------------------------------------------------------------ -r2427 | jcbowman | 2007-05-10 14:44:57 -0600 (Thu, 10 May 2007) | 3 lines +r2427 | jcbowman | 2007-05-10 22:44:57 +0200 (Thu, 10 May 2007) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/process.cc @@ -19907,7 +20309,7 @@ Remove "q" as abbreviation for interactive "quit" command now that "write(q)" at the prompt can be written simply as "q". ------------------------------------------------------------------------ -r2426 | jcbowman | 2007-05-10 07:18:45 -0600 (Thu, 10 May 2007) | 2 lines +r2426 | jcbowman | 2007-05-10 15:18:45 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/spline.asy @@ -19915,7 +20317,7 @@ Changed paths: Document dot(picture,real[],real[],pen); ------------------------------------------------------------------------ -r2425 | jcbowman | 2007-05-10 07:10:00 -0600 (Thu, 10 May 2007) | 2 lines +r2425 | jcbowman | 2007-05-10 15:10:00 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/interpolate.asy M /trunk/asymptote/base/plain_markers.asy @@ -19926,7 +20328,7 @@ Changed paths: Add piecewise monotonic spline type and example. ------------------------------------------------------------------------ -r2424 | jcbowman | 2007-05-09 23:05:15 -0600 (Wed, 09 May 2007) | 2 lines +r2424 | jcbowman | 2007-05-10 07:05:15 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -19935,7 +20337,7 @@ Changed paths: Use subpath to implement robust dir(path, real) function. ------------------------------------------------------------------------ -r2423 | jcbowman | 2007-05-09 20:02:21 -0600 (Wed, 09 May 2007) | 2 lines +r2423 | jcbowman | 2007-05-10 04:02:21 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -19945,28 +20347,28 @@ Changed paths: Fix endpoint dir(path, real) calculation. ------------------------------------------------------------------------ -r2422 | jcbowman | 2007-05-09 18:16:54 -0600 (Wed, 09 May 2007) | 2 lines +r2422 | jcbowman | 2007-05-10 02:16:54 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Use datarootdir. ------------------------------------------------------------------------ -r2421 | jcbowman | 2007-05-09 18:15:43 -0600 (Wed, 09 May 2007) | 2 lines +r2421 | jcbowman | 2007-05-10 02:15:43 +0200 (Thu, 10 May 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Support --enable-gc=PREFIX. ------------------------------------------------------------------------ -r2420 | jcbowman | 2007-05-09 12:41:48 -0600 (Wed, 09 May 2007) | 2 lines +r2420 | jcbowman | 2007-05-09 20:41:48 +0200 (Wed, 09 May 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc When settings.signal=true, write a separate .box file for each object. ------------------------------------------------------------------------ -r2419 | jcbowman | 2007-05-09 11:58:15 -0600 (Wed, 09 May 2007) | 6 lines +r2419 | jcbowman | 2007-05-09 19:58:15 +0200 (Wed, 09 May 2007) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -19981,7 +20383,7 @@ Standardize argument names for point, precontrol, postcontrol, dir, and subpath. Avoid numerical overflows in three.asy solver. ------------------------------------------------------------------------ -r2418 | jcbowman | 2007-05-08 22:06:12 -0600 (Tue, 08 May 2007) | 4 lines +r2418 | jcbowman | 2007-05-09 06:06:12 +0200 (Wed, 09 May 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawpath.cc @@ -19994,41 +20396,41 @@ Fix definition of dir. Add optional final argument to dir specify incoming and outgoing directions. ------------------------------------------------------------------------ -r2417 | jcbowman | 2007-05-08 13:10:09 -0600 (Tue, 08 May 2007) | 2 lines +r2417 | jcbowman | 2007-05-08 21:10:09 +0200 (Tue, 08 May 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Swap xasy signals. ------------------------------------------------------------------------ -r2416 | jcbowman | 2007-05-08 13:06:40 -0600 (Tue, 08 May 2007) | 2 lines +r2416 | jcbowman | 2007-05-08 21:06:40 +0200 (Tue, 08 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fix URL formatting. ------------------------------------------------------------------------ -r2415 | jcbowman | 2007-05-08 04:08:38 -0600 (Tue, 08 May 2007) | 1 line +r2415 | jcbowman | 2007-05-08 12:08:38 +0200 (Tue, 08 May 2007) | 1 line Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.29svn ------------------------------------------------------------------------ -r2414 | jcbowman | 2007-05-08 03:16:55 -0600 (Tue, 08 May 2007) | 2 lines +r2414 | jcbowman | 2007-05-08 11:16:55 +0200 (Tue, 08 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy Force uptodate to be true just before call to C++ shipout routine. ------------------------------------------------------------------------ -r2413 | jcbowman | 2007-05-08 03:09:49 -0600 (Tue, 08 May 2007) | 2 lines +r2413 | jcbowman | 2007-05-08 11:09:49 +0200 (Tue, 08 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Swap gc library load order. ------------------------------------------------------------------------ -r2412 | jcbowman | 2007-05-07 23:38:33 -0600 (Mon, 07 May 2007) | 2 lines +r2412 | jcbowman | 2007-05-08 07:38:33 +0200 (Tue, 08 May 2007) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/fileio.h @@ -20037,7 +20439,7 @@ Changed paths: Purge standard input after reading in interactive mode. ------------------------------------------------------------------------ -r2411 | jcbowman | 2007-05-07 18:03:27 -0600 (Mon, 07 May 2007) | 3 lines +r2411 | jcbowman | 2007-05-08 02:03:27 +0200 (Tue, 08 May 2007) | 3 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/runtime.in @@ -20046,14 +20448,14 @@ Fix segmentation fault in readline() and runaway process on reading EOF from standard input in absence of readline library. ------------------------------------------------------------------------ -r2410 | jcbowman | 2007-05-07 17:32:17 -0600 (Mon, 07 May 2007) | 2 lines +r2410 | jcbowman | 2007-05-08 01:32:17 +0200 (Tue, 08 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Add GCPPLIB target. ------------------------------------------------------------------------ -r2409 | jcbowman | 2007-05-07 15:21:27 -0600 (Mon, 07 May 2007) | 2 lines +r2409 | jcbowman | 2007-05-07 23:21:27 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -20062,7 +20464,7 @@ Changed paths: Support parallel builds. ------------------------------------------------------------------------ -r2408 | jcbowman | 2007-05-07 14:36:53 -0600 (Mon, 07 May 2007) | 2 lines +r2408 | jcbowman | 2007-05-07 22:36:53 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.in @@ -20070,7 +20472,7 @@ Changed paths: Use SIGUSR1 and SIGUSR2 to communicate with new version of xasy. ------------------------------------------------------------------------ -r2407 | jcbowman | 2007-05-07 11:51:01 -0600 (Mon, 07 May 2007) | 2 lines +r2407 | jcbowman | 2007-05-07 19:51:01 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -20079,7 +20481,7 @@ Changed paths: Simplify and optimize xstream header. ------------------------------------------------------------------------ -r2406 | jcbowman | 2007-05-07 02:04:59 -0600 (Mon, 07 May 2007) | 2 lines +r2406 | jcbowman | 2007-05-07 10:04:59 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -20088,7 +20490,7 @@ Changed paths: Add dvipsOptions configuration variable. ------------------------------------------------------------------------ -r2405 | jcbowman | 2007-05-07 01:32:37 -0600 (Mon, 07 May 2007) | 2 lines +r2405 | jcbowman | 2007-05-07 09:32:37 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.h M /trunk/asymptote/xstream.h @@ -20096,7 +20498,7 @@ Changed paths: Fix bug in xinput. ------------------------------------------------------------------------ -r2404 | jcbowman | 2007-05-06 22:49:39 -0600 (Sun, 06 May 2007) | 2 lines +r2404 | jcbowman | 2007-05-07 06:49:39 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asymptote.texi @@ -20104,7 +20506,7 @@ Changed paths: Further parallel documentation build improvements. ------------------------------------------------------------------------ -r2403 | jcbowman | 2007-05-06 22:39:54 -0600 (Sun, 06 May 2007) | 2 lines +r2403 | jcbowman | 2007-05-07 06:39:54 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asymptote.texi @@ -20112,7 +20514,7 @@ Changed paths: Improve support for parallel documentation builds. ------------------------------------------------------------------------ -r2402 | jcbowman | 2007-05-06 22:03:35 -0600 (Sun, 06 May 2007) | 3 lines +r2402 | jcbowman | 2007-05-07 06:03:35 +0200 (Mon, 07 May 2007) | 3 lines Changed paths: M /trunk/asymptote/base/animate.asy @@ -20120,7 +20522,7 @@ Support nonglobal animations, where each frame is scaled and written to a file separately. ------------------------------------------------------------------------ -r2401 | jcbowman | 2007-05-06 21:38:48 -0600 (Sun, 06 May 2007) | 2 lines +r2401 | jcbowman | 2007-05-07 05:38:48 +0200 (Mon, 07 May 2007) | 2 lines Changed paths: M /trunk/asymptote/fftw++.h M /trunk/asymptote/item.h @@ -20128,21 +20530,21 @@ Changed paths: Support gcc version 4.3. ------------------------------------------------------------------------ -r2400 | jcbowman | 2007-05-06 14:10:08 -0600 (Sun, 06 May 2007) | 2 lines +r2400 | jcbowman | 2007-05-06 22:10:08 +0200 (Sun, 06 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documentation updates. ------------------------------------------------------------------------ -r2399 | jcbowman | 2007-05-06 13:53:36 -0600 (Sun, 06 May 2007) | 2 lines +r2399 | jcbowman | 2007-05-06 21:53:36 +0200 (Sun, 06 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Support parallel documentation builds. ------------------------------------------------------------------------ -r2398 | jcbowman | 2007-05-06 12:03:58 -0600 (Sun, 06 May 2007) | 2 lines +r2398 | jcbowman | 2007-05-06 20:03:58 +0200 (Sun, 06 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/Makefile @@ -20150,7 +20552,7 @@ Changed paths: Remove intro target to avoid problems under Fedora Core 5. ------------------------------------------------------------------------ -r2397 | jcbowman | 2007-05-06 11:31:08 -0600 (Sun, 06 May 2007) | 2 lines +r2397 | jcbowman | 2007-05-06 19:31:08 +0200 (Sun, 06 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/base/plain_shipout.asy @@ -20160,7 +20562,7 @@ Changed paths: Improve TeX error handling. ------------------------------------------------------------------------ -r2396 | jcbowman | 2007-05-05 21:53:16 -0600 (Sat, 05 May 2007) | 2 lines +r2396 | jcbowman | 2007-05-06 05:53:16 +0200 (Sun, 06 May 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/Makefile @@ -20168,35 +20570,35 @@ Changed paths: Minor makefile edits. ------------------------------------------------------------------------ -r2395 | jcbowman | 2007-05-05 10:54:13 -0600 (Sat, 05 May 2007) | 2 lines +r2395 | jcbowman | 2007-05-05 18:54:13 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Update URL. ------------------------------------------------------------------------ -r2394 | jcbowman | 2007-05-05 03:01:44 -0600 (Sat, 05 May 2007) | 2 lines +r2394 | jcbowman | 2007-05-05 11:01:44 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Clean up generated files. ------------------------------------------------------------------------ -r2393 | jcbowman | 2007-05-05 03:00:52 -0600 (Sat, 05 May 2007) | 2 lines +r2393 | jcbowman | 2007-05-05 11:00:52 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.28svn. ------------------------------------------------------------------------ -r2392 | jcbowman | 2007-05-05 01:49:44 -0600 (Sat, 05 May 2007) | 2 lines +r2392 | jcbowman | 2007-05-05 09:49:44 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix warning messages. ------------------------------------------------------------------------ -r2391 | jcbowman | 2007-05-05 01:35:45 -0600 (Sat, 05 May 2007) | 2 lines +r2391 | jcbowman | 2007-05-05 09:35:45 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.h M /trunk/asymptote/runtime.in @@ -20204,7 +20606,7 @@ Changed paths: Fix warning messages. ------------------------------------------------------------------------ -r2390 | jcbowman | 2007-05-05 00:47:58 -0600 (Sat, 05 May 2007) | 4 lines +r2390 | jcbowman | 2007-05-05 08:47:58 +0200 (Sat, 05 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/base/graph.asy @@ -20216,21 +20618,21 @@ Add example showing Hermite spline interpolation and filled cyclic crosses. Fix formatting. ------------------------------------------------------------------------ -r2389 | jcbowman | 2007-05-05 00:07:03 -0600 (Sat, 05 May 2007) | 2 lines +r2389 | jcbowman | 2007-05-05 08:07:03 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Optimize palette loops. ------------------------------------------------------------------------ -r2388 | jcbowman | 2007-05-04 23:43:14 -0600 (Fri, 04 May 2007) | 2 lines +r2388 | jcbowman | 2007-05-05 07:43:14 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Fix data cropping/scaling. ------------------------------------------------------------------------ -r2387 | jcbowman | 2007-05-04 23:37:08 -0600 (Fri, 04 May 2007) | 3 lines +r2387 | jcbowman | 2007-05-05 07:37:08 +0200 (Sat, 05 May 2007) | 3 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -20239,14 +20641,14 @@ Add modified version of Stefan Knorr's unit n-point cyclic cross, with optional end rounding. ------------------------------------------------------------------------ -r2386 | jcbowman | 2007-05-04 19:36:04 -0600 (Fri, 04 May 2007) | 2 lines +r2386 | jcbowman | 2007-05-05 03:36:04 +0200 (Sat, 05 May 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Add remaining fix for MSWindows version of TeXLive 2007. ------------------------------------------------------------------------ -r2385 | jcbowman | 2007-05-04 17:35:06 -0600 (Fri, 04 May 2007) | 3 lines +r2385 | jcbowman | 2007-05-05 01:35:06 +0200 (Sat, 05 May 2007) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty @@ -20254,7 +20656,7 @@ Work around jobname bug in MiKTeX 2.5 and 2.6: turn stars in file names (resulting from spaces, etc.) into underscores. ------------------------------------------------------------------------ -r2384 | jcbowman | 2007-05-04 10:39:03 -0600 (Fri, 04 May 2007) | 4 lines +r2384 | jcbowman | 2007-05-04 18:39:03 +0200 (Fri, 04 May 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawlabel.cc @@ -20268,7 +20670,7 @@ Simplify tex pipe handshaking and improve error detection. Support TeXLive 2007 under MSWindows. ------------------------------------------------------------------------ -r2383 | jcbowman | 2007-05-03 23:01:43 -0600 (Thu, 03 May 2007) | 6 lines +r2383 | jcbowman | 2007-05-04 07:01:43 +0200 (Fri, 04 May 2007) | 6 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/base/three.asy @@ -20280,28 +20682,28 @@ Ensure align always returns a right-handed transform (a rotation). Fix longitudinal skeleton detection when axis=-Z. ------------------------------------------------------------------------ -r2382 | jcbowman | 2007-05-03 21:47:55 -0600 (Thu, 03 May 2007) | 2 lines +r2382 | jcbowman | 2007-05-04 05:47:55 +0200 (Fri, 04 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Add routine to return a diagonal matrix. ------------------------------------------------------------------------ -r2381 | hammera | 2007-05-03 10:22:29 -0600 (Thu, 03 May 2007) | 2 lines +r2381 | hammera | 2007-05-03 18:22:29 +0200 (Thu, 03 May 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO Removed finished item. ------------------------------------------------------------------------ -r2380 | hammera | 2007-05-03 10:15:03 -0600 (Thu, 03 May 2007) | 2 lines +r2380 | hammera | 2007-05-03 18:15:03 +0200 (Thu, 03 May 2007) | 2 lines Changed paths: M /trunk/asymptote/primitives.h Fixed typo. ------------------------------------------------------------------------ -r2379 | hammera | 2007-05-03 10:11:22 -0600 (Thu, 03 May 2007) | 2 lines +r2379 | hammera | 2007-05-03 18:11:22 +0200 (Thu, 03 May 2007) | 2 lines Changed paths: M /trunk/asymptote/exp.h M /trunk/asymptote/stm.cc @@ -20309,7 +20711,7 @@ Changed paths: Assign expression are no longer written at the prompt. ------------------------------------------------------------------------ -r2378 | jcbowman | 2007-05-02 18:02:32 -0600 (Wed, 02 May 2007) | 2 lines +r2378 | jcbowman | 2007-05-03 02:02:32 +0200 (Thu, 03 May 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/settings.cc @@ -20317,7 +20719,7 @@ Changed paths: Add -signal option for signalling completion of shipout to xasy. ------------------------------------------------------------------------ -r2377 | jcbowman | 2007-05-02 09:57:30 -0600 (Wed, 02 May 2007) | 2 lines +r2377 | jcbowman | 2007-05-02 17:57:30 +0200 (Wed, 02 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/interpolate.asy @@ -20325,7 +20727,7 @@ Changed paths: Simplify use of join operator. ------------------------------------------------------------------------ -r2376 | jcbowman | 2007-05-02 09:56:36 -0600 (Wed, 02 May 2007) | 4 lines +r2376 | jcbowman | 2007-05-02 17:56:36 +0200 (Wed, 02 May 2007) | 4 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/doc/asymptote.texi @@ -20336,7 +20738,7 @@ compatibility and in case user wants to connect smoothly to external noncyclic contours. ------------------------------------------------------------------------ -r2375 | jcbowman | 2007-05-02 01:45:46 -0600 (Wed, 02 May 2007) | 11 lines +r2375 | jcbowman | 2007-05-02 09:45:46 +0200 (Wed, 02 May 2007) | 11 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/contour.asy @@ -20362,14 +20764,14 @@ Add bool increasing(real[] x) routine to math.asy. Optimize image scaling. ------------------------------------------------------------------------ -r2374 | jcbowman | 2007-05-02 01:38:41 -0600 (Wed, 02 May 2007) | 2 lines +r2374 | jcbowman | 2007-05-02 09:38:41 +0200 (Wed, 02 May 2007) | 2 lines Changed paths: M /trunk/asymptote/guide.h Make guide precision consistent with path precision in diagnostics. ------------------------------------------------------------------------ -r2373 | hammera | 2007-05-01 18:52:48 -0600 (Tue, 01 May 2007) | 2 lines +r2373 | hammera | 2007-05-02 02:52:48 +0200 (Wed, 02 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/three.asy @@ -20385,7 +20787,7 @@ Changed paths: Added curlSpecifier. Removed curl3. ------------------------------------------------------------------------ -r2372 | hammera | 2007-05-01 11:37:51 -0600 (Tue, 01 May 2007) | 2 lines +r2372 | hammera | 2007-05-01 19:37:51 +0200 (Tue, 01 May 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/base/three.asy @@ -20399,21 +20801,21 @@ Changed paths: Added the tensionSpecifier type. Removed tension3. ------------------------------------------------------------------------ -r2371 | jcbowman | 2007-04-30 21:18:41 -0600 (Mon, 30 Apr 2007) | 2 lines +r2371 | jcbowman | 2007-05-01 05:18:41 +0200 (Tue, 01 May 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation regarding change from cycle3 to cycle. ------------------------------------------------------------------------ -r2370 | hammera | 2007-04-30 00:22:30 -0600 (Mon, 30 Apr 2007) | 2 lines +r2370 | hammera | 2007-04-30 08:22:30 +0200 (Mon, 30 Apr 2007) | 2 lines Changed paths: A /trunk/asymptote/tests/types/spec.asy Test for the cycle keyword. ------------------------------------------------------------------------ -r2369 | hammera | 2007-04-29 22:47:46 -0600 (Sun, 29 Apr 2007) | 2 lines +r2369 | hammera | 2007-04-30 06:47:46 +0200 (Mon, 30 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/solids.asy @@ -20443,7 +20845,7 @@ Changed paths: Added the cycleToken type. Changed cycle3 to cycle. ------------------------------------------------------------------------ -r2368 | hammera | 2007-04-29 15:05:21 -0600 (Sun, 29 Apr 2007) | 2 lines +r2368 | hammera | 2007-04-29 23:05:21 +0200 (Sun, 29 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/builtin.cc @@ -20454,7 +20856,7 @@ Changed paths: Use an C Preprocessor X-Macro to create new primitive types. ------------------------------------------------------------------------ -r2367 | hammera | 2007-04-28 15:56:59 -0600 (Sat, 28 Apr 2007) | 3 lines +r2367 | hammera | 2007-04-28 23:56:59 +0200 (Sat, 28 Apr 2007) | 3 lines Changed paths: D /trunk/asymptote/cast.h @@ -20462,7 +20864,7 @@ Remove old, unused source file. ------------------------------------------------------------------------ -r2366 | jcbowman | 2007-04-28 11:39:37 -0600 (Sat, 28 Apr 2007) | 2 lines +r2366 | jcbowman | 2007-04-28 19:39:37 +0200 (Sat, 28 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/bezier2.asy @@ -20471,28 +20873,28 @@ Changed paths: Make Bezier curve solid and control lines dashed. ------------------------------------------------------------------------ -r2365 | jcbowman | 2007-04-28 01:15:13 -0600 (Sat, 28 Apr 2007) | 2 lines +r2365 | jcbowman | 2007-04-28 09:15:13 +0200 (Sat, 28 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/interpolate.asy Minor optimizations. ------------------------------------------------------------------------ -r2364 | jcbowman | 2007-04-28 00:37:32 -0600 (Sat, 28 Apr 2007) | 2 lines +r2364 | jcbowman | 2007-04-28 08:37:32 +0200 (Sat, 28 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/interpolate.asy Remove unused array. ------------------------------------------------------------------------ -r2363 | jcbowman | 2007-04-28 00:34:47 -0600 (Sat, 28 Apr 2007) | 2 lines +r2363 | jcbowman | 2007-04-28 08:34:47 +0200 (Sat, 28 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/interpolate.asy Use a simpler argument list for clamped splines. ------------------------------------------------------------------------ -r2362 | jcbowman | 2007-04-27 20:59:35 -0600 (Fri, 27 Apr 2007) | 2 lines +r2362 | jcbowman | 2007-04-28 04:59:35 +0200 (Sat, 28 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/Makefile @@ -20506,7 +20908,7 @@ Changed paths: Don't try to build intro.pdf with default install (due to eforms dependency). ------------------------------------------------------------------------ -r2361 | hammera | 2007-04-27 08:26:54 -0600 (Fri, 27 Apr 2007) | 3 lines +r2361 | hammera | 2007-04-27 16:26:54 +0200 (Fri, 27 Apr 2007) | 3 lines Changed paths: D /trunk/asymptote/cast.cc @@ -20514,7 +20916,7 @@ This file hasn't been used in ages ------------------------------------------------------------------------ -r2360 | hammera | 2007-04-26 07:03:57 -0600 (Thu, 26 Apr 2007) | 3 lines +r2360 | hammera | 2007-04-26 15:03:57 +0200 (Thu, 26 Apr 2007) | 3 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/types.cc @@ -20524,7 +20926,7 @@ Removed primArray. arrays are not primitive, and the type could only be only erroneously. ------------------------------------------------------------------------ -r2359 | jcbowman | 2007-04-23 11:09:51 -0600 (Mon, 23 Apr 2007) | 7 lines +r2359 | jcbowman | 2007-04-23 19:09:51 +0200 (Mon, 23 Apr 2007) | 7 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/doc/asymptote.texi @@ -20540,14 +20942,14 @@ Negative arguments to seek are relative to end of file. Add seekeof(file) to position file pointer to end-of-file. ------------------------------------------------------------------------ -r2358 | jcbowman | 2007-04-21 21:38:16 -0600 (Sat, 21 Apr 2007) | 2 lines +r2358 | jcbowman | 2007-04-22 05:38:16 +0200 (Sun, 22 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Fix dependencies. ------------------------------------------------------------------------ -r2357 | jcbowman | 2007-04-21 19:41:32 -0600 (Sat, 21 Apr 2007) | 2 lines +r2357 | jcbowman | 2007-04-22 03:41:32 +0200 (Sun, 22 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec A /trunk/asymptote/doc/pixel.pdf @@ -20556,7 +20958,7 @@ Changed paths: Distribute pixel.pdf rather than pixel.ps. ------------------------------------------------------------------------ -r2356 | jcbowman | 2007-04-21 18:00:10 -0600 (Sat, 21 Apr 2007) | 2 lines +r2356 | jcbowman | 2007-04-22 02:00:10 +0200 (Sun, 22 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.texi @@ -20564,7 +20966,7 @@ Changed paths: Add ability to load pdf animations from an external file (one frame/page). ------------------------------------------------------------------------ -r2355 | jcbowman | 2007-04-21 14:20:48 -0600 (Sat, 21 Apr 2007) | 2 lines +r2355 | jcbowman | 2007-04-21 22:20:48 +0200 (Sat, 21 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy M /trunk/asymptote/base/plain_picture.asy @@ -20573,7 +20975,7 @@ Changed paths: Make filloutside work with paths that extend beyond the current boundary. ------------------------------------------------------------------------ -r2354 | jcbowman | 2007-04-21 10:55:14 -0600 (Sat, 21 Apr 2007) | 2 lines +r2354 | jcbowman | 2007-04-21 18:55:14 +0200 (Sat, 21 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/pdfanim.asy @@ -20621,42 +21023,42 @@ Changed paths: Fix formatting. ------------------------------------------------------------------------ -r2353 | jcbowman | 2007-04-21 10:44:18 -0600 (Sat, 21 Apr 2007) | 2 lines +r2353 | jcbowman | 2007-04-21 18:44:18 +0200 (Sat, 21 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Fix top level indentation of braces. ------------------------------------------------------------------------ -r2352 | jcbowman | 2007-04-20 23:01:52 -0600 (Fri, 20 Apr 2007) | 2 lines +r2352 | jcbowman | 2007-04-21 07:01:52 +0200 (Sat, 21 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/intro.asy Simplify control panel. ------------------------------------------------------------------------ -r2351 | jcbowman | 2007-04-20 22:51:17 -0600 (Fri, 20 Apr 2007) | 2 lines +r2351 | jcbowman | 2007-04-21 06:51:17 +0200 (Sat, 21 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/intro.asy Added PDF rolling wheel animation. ------------------------------------------------------------------------ -r2350 | jcbowman | 2007-04-20 22:50:13 -0600 (Fri, 20 Apr 2007) | 2 lines +r2350 | jcbowman | 2007-04-21 06:50:13 +0200 (Sat, 21 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy Delete temporary .aux file. ------------------------------------------------------------------------ -r2349 | jcbowman | 2007-04-19 22:53:07 -0600 (Thu, 19 Apr 2007) | 2 lines +r2349 | jcbowman | 2007-04-20 06:53:07 +0200 (Fri, 20 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.27svn. ------------------------------------------------------------------------ -r2348 | jcbowman | 2007-04-19 21:36:54 -0600 (Thu, 19 Apr 2007) | 2 lines +r2348 | jcbowman | 2007-04-20 05:36:54 +0200 (Fri, 20 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/asymptote.spec @@ -20665,7 +21067,7 @@ Changed paths: Rename source and UNIX binary files for compatibility with releaseforge. ------------------------------------------------------------------------ -r2347 | jcbowman | 2007-04-19 18:22:10 -0600 (Thu, 19 Apr 2007) | 4 lines +r2347 | jcbowman | 2007-04-20 02:22:10 +0200 (Fri, 20 Apr 2007) | 4 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/three.asy @@ -20676,7 +21078,7 @@ Use a better camera-independent reference value for resolving path3 orientation. Check for negative curl values. ------------------------------------------------------------------------ -r2346 | jcbowman | 2007-04-18 18:58:56 -0600 (Wed, 18 Apr 2007) | 5 lines +r2346 | jcbowman | 2007-04-19 02:58:56 +0200 (Thu, 19 Apr 2007) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -20691,84 +21093,84 @@ security hole). Removed --nowatch option from call to gv. ------------------------------------------------------------------------ -r2345 | jcbowman | 2007-04-15 18:25:39 -0600 (Sun, 15 Apr 2007) | 2 lines +r2345 | jcbowman | 2007-04-16 02:25:39 +0200 (Mon, 16 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Remove unused (and unmatched) %%EndProlog line. ------------------------------------------------------------------------ -r2344 | jcbowman | 2007-04-14 10:56:19 -0600 (Sat, 14 Apr 2007) | 2 lines +r2344 | jcbowman | 2007-04-14 18:56:19 +0200 (Sat, 14 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Remove unneeded access settings. ------------------------------------------------------------------------ -r2343 | jcbowman | 2007-04-13 16:48:52 -0600 (Fri, 13 Apr 2007) | 2 lines +r2343 | jcbowman | 2007-04-14 00:48:52 +0200 (Sat, 14 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy Support pdflatex texengine. ------------------------------------------------------------------------ -r2342 | jcbowman | 2007-04-13 07:46:54 -0600 (Fri, 13 Apr 2007) | 2 lines +r2342 | jcbowman | 2007-04-13 15:46:54 +0200 (Fri, 13 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/integraltest.asy Improve example. ------------------------------------------------------------------------ -r2341 | jcbowman | 2007-04-13 07:46:38 -0600 (Fri, 13 Apr 2007) | 2 lines +r2341 | jcbowman | 2007-04-13 15:46:38 +0200 (Fri, 13 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix front/back transverse skeleton detection. ------------------------------------------------------------------------ -r2340 | jcbowman | 2007-04-12 06:16:58 -0600 (Thu, 12 Apr 2007) | 2 lines +r2340 | jcbowman | 2007-04-12 14:16:58 +0200 (Thu, 12 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO New item. ------------------------------------------------------------------------ -r2339 | jcbowman | 2007-04-11 21:21:57 -0600 (Wed, 11 Apr 2007) | 2 lines +r2339 | jcbowman | 2007-04-12 05:21:57 +0200 (Thu, 12 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO New item. ------------------------------------------------------------------------ -r2338 | jcbowman | 2007-04-10 17:30:34 -0600 (Tue, 10 Apr 2007) | 2 lines +r2338 | jcbowman | 2007-04-11 01:30:34 +0200 (Wed, 11 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Speed up detection code for old versions of gv. ------------------------------------------------------------------------ -r2337 | jcbowman | 2007-04-10 13:44:56 -0600 (Tue, 10 Apr 2007) | 2 lines +r2337 | jcbowman | 2007-04-10 21:44:56 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Add link to online example. ------------------------------------------------------------------------ -r2336 | jcbowman | 2007-04-10 13:29:11 -0600 (Tue, 10 Apr 2007) | 2 lines +r2336 | jcbowman | 2007-04-10 21:29:11 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Add acsc, asec, and acot functions. ------------------------------------------------------------------------ -r2335 | jcbowman | 2007-04-10 13:27:09 -0600 (Tue, 10 Apr 2007) | 2 lines +r2335 | jcbowman | 2007-04-10 21:27:09 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r2334 | jcbowman | 2007-04-10 13:14:17 -0600 (Tue, 10 Apr 2007) | 5 lines +r2334 | jcbowman | 2007-04-10 21:14:17 +0200 (Tue, 10 Apr 2007) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/Bode.asy @@ -20781,35 +21183,35 @@ tick generation. Support broken logarithmic axes. ------------------------------------------------------------------------ -r2333 | jcbowman | 2007-04-10 09:29:12 -0600 (Tue, 10 Apr 2007) | 2 lines +r2333 | jcbowman | 2007-04-10 17:29:12 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/brokenaxis.asy Autogenerate tick values. ------------------------------------------------------------------------ -r2332 | jcbowman | 2007-04-09 23:11:29 -0600 (Mon, 09 Apr 2007) | 2 lines +r2332 | jcbowman | 2007-04-10 07:11:29 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Update FAQ. ------------------------------------------------------------------------ -r2331 | jcbowman | 2007-04-09 23:02:39 -0600 (Mon, 09 Apr 2007) | 2 lines +r2331 | jcbowman | 2007-04-10 07:02:39 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: A /trunk/asymptote/examples/alignedaxis.asy Add aligned axes example. ------------------------------------------------------------------------ -r2330 | jcbowman | 2007-04-09 19:26:46 -0600 (Mon, 09 Apr 2007) | 2 lines +r2330 | jcbowman | 2007-04-10 03:26:46 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 1.26svn. ------------------------------------------------------------------------ -r2329 | jcbowman | 2007-04-09 16:43:17 -0600 (Mon, 09 Apr 2007) | 2 lines +r2329 | jcbowman | 2007-04-10 00:43:17 +0200 (Tue, 10 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/CAD.asy M /trunk/asymptote/base/animate.asy @@ -20848,14 +21250,14 @@ Changed paths: Untabified and standardized indentation of base files. ------------------------------------------------------------------------ -r2328 | jcbowman | 2007-04-09 14:34:45 -0600 (Mon, 09 Apr 2007) | 2 lines +r2328 | jcbowman | 2007-04-09 22:34:45 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation. ------------------------------------------------------------------------ -r2327 | jcbowman | 2007-04-09 14:27:36 -0600 (Mon, 09 Apr 2007) | 2 lines +r2327 | jcbowman | 2007-04-09 22:27:36 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/interpolate.asy M /trunk/asymptote/examples/interpolate1.asy @@ -20863,7 +21265,7 @@ Changed paths: Added spline interpolation routines. ------------------------------------------------------------------------ -r2326 | jcbowman | 2007-04-09 11:41:35 -0600 (Mon, 09 Apr 2007) | 4 lines +r2326 | jcbowman | 2007-04-09 19:41:35 +0200 (Mon, 09 Apr 2007) | 4 lines Changed paths: A /trunk/asymptote/base/interpolate.asy D /trunk/asymptote/doc/advection.asy @@ -20876,7 +21278,7 @@ Add Olivier Guibe's interpolation module and example. Remove long examples from the documentation. ------------------------------------------------------------------------ -r2325 | jcbowman | 2007-04-09 09:45:10 -0600 (Mon, 09 Apr 2007) | 2 lines +r2325 | jcbowman | 2007-04-09 17:45:10 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/syzygy.asy M /trunk/asymptote/doc/asymptote.texi @@ -20884,28 +21286,28 @@ Changed paths: Document syzygy module. ------------------------------------------------------------------------ -r2324 | jcbowman | 2007-04-09 09:35:49 -0600 (Mon, 09 Apr 2007) | 2 lines +r2324 | jcbowman | 2007-04-09 17:35:49 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/syzygy.asy Remove default initializers. ------------------------------------------------------------------------ -r2323 | jcbowman | 2007-04-09 09:30:08 -0600 (Mon, 09 Apr 2007) | 2 lines +r2323 | jcbowman | 2007-04-09 17:30:08 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fix surface lighting. ------------------------------------------------------------------------ -r2322 | jcbowman | 2007-04-09 00:27:58 -0600 (Mon, 09 Apr 2007) | 2 lines +r2322 | jcbowman | 2007-04-09 08:27:58 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation. ------------------------------------------------------------------------ -r2321 | jcbowman | 2007-04-09 00:26:01 -0600 (Mon, 09 Apr 2007) | 2 lines +r2321 | jcbowman | 2007-04-09 08:26:01 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi @@ -20915,21 +21317,21 @@ Changed paths: For parameterized surfaces, rename bool oriented=true to bool outward=false. ------------------------------------------------------------------------ -r2320 | jcbowman | 2007-04-08 23:54:01 -0600 (Sun, 08 Apr 2007) | 2 lines +r2320 | jcbowman | 2007-04-09 07:54:01 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve discussion of surface orientation. ------------------------------------------------------------------------ -r2319 | jcbowman | 2007-04-08 23:27:13 -0600 (Sun, 08 Apr 2007) | 2 lines +r2319 | jcbowman | 2007-04-09 07:27:13 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document oriented option for drawing surfaces. ------------------------------------------------------------------------ -r2318 | jcbowman | 2007-04-08 22:52:43 -0600 (Sun, 08 Apr 2007) | 2 lines +r2318 | jcbowman | 2007-04-09 06:52:43 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/examples/Klein.asy @@ -20937,7 +21339,7 @@ Changed paths: Choose locally outward surface normal only for nonorientable surfaces. ------------------------------------------------------------------------ -r2317 | jcbowman | 2007-04-08 21:41:35 -0600 (Sun, 08 Apr 2007) | 5 lines +r2317 | jcbowman | 2007-04-09 05:41:35 +0200 (Mon, 09 Apr 2007) | 5 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -20947,14 +21349,14 @@ routines. Remove spurious specifier when writing a guide3. ------------------------------------------------------------------------ -r2316 | jcbowman | 2007-04-08 17:43:53 -0600 (Sun, 08 Apr 2007) | 2 lines +r2316 | jcbowman | 2007-04-09 01:43:53 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document string array reads under line mode. ------------------------------------------------------------------------ -r2315 | jcbowman | 2007-04-08 17:31:00 -0600 (Sun, 08 Apr 2007) | 2 lines +r2315 | jcbowman | 2007-04-09 01:31:00 +0200 (Mon, 09 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.cc @@ -20964,7 +21366,7 @@ Changed paths: Add white-space string delimiter mode word(file, bool b=true). ------------------------------------------------------------------------ -r2314 | jcbowman | 2007-04-08 12:25:39 -0600 (Sun, 08 Apr 2007) | 3 lines +r2314 | jcbowman | 2007-04-08 20:25:39 +0200 (Sun, 08 Apr 2007) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -20972,14 +21374,14 @@ Explicitly write EPSF in output header rather than relying on dvips -E option (which doesn't work for even the first page of multipage documents). ------------------------------------------------------------------------ -r2313 | jcbowman | 2007-04-07 23:21:51 -0600 (Sat, 07 Apr 2007) | 2 lines +r2313 | jcbowman | 2007-04-08 07:21:51 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy More guide3 to path3 changes. ------------------------------------------------------------------------ -r2312 | jcbowman | 2007-04-07 19:40:01 -0600 (Sat, 07 Apr 2007) | 2 lines +r2312 | jcbowman | 2007-04-08 03:40:01 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/fileio.h @@ -20987,14 +21389,14 @@ Changed paths: Revert csv comment changes. ------------------------------------------------------------------------ -r2311 | jcbowman | 2007-04-07 19:37:09 -0600 (Sat, 07 Apr 2007) | 2 lines +r2311 | jcbowman | 2007-04-08 03:37:09 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Remove spurious diagnostic. ------------------------------------------------------------------------ -r2310 | jcbowman | 2007-04-07 18:43:10 -0600 (Sat, 07 Apr 2007) | 2 lines +r2310 | jcbowman | 2007-04-08 02:43:10 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/graph.asy @@ -21017,28 +21419,28 @@ Changed paths: Standardize path vs. guide. ------------------------------------------------------------------------ -r2309 | jcbowman | 2007-04-07 18:42:27 -0600 (Sat, 07 Apr 2007) | 2 lines +r2309 | jcbowman | 2007-04-08 02:42:27 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Update fixed graph size documentation. ------------------------------------------------------------------------ -r2308 | jcbowman | 2007-04-07 18:41:29 -0600 (Sat, 07 Apr 2007) | 2 lines +r2308 | jcbowman | 2007-04-08 02:41:29 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/filegraph.dat Added header comment line. ------------------------------------------------------------------------ -r2307 | jcbowman | 2007-04-07 18:40:09 -0600 (Sat, 07 Apr 2007) | 2 lines +r2307 | jcbowman | 2007-04-08 02:40:09 +0200 (Sun, 08 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/CAD.asy Standardized indentation. ------------------------------------------------------------------------ -r2306 | jcbowman | 2007-04-07 18:38:28 -0600 (Sat, 07 Apr 2007) | 4 lines +r2306 | jcbowman | 2007-04-08 02:38:28 +0200 (Sun, 08 Apr 2007) | 4 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/fileio.h @@ -21048,7 +21450,7 @@ Allow escaping of comment character in strings. Disable comment character when reading raw characters with getc(file). ------------------------------------------------------------------------ -r2305 | jcbowman | 2007-04-07 02:10:49 -0600 (Sat, 07 Apr 2007) | 3 lines +r2305 | jcbowman | 2007-04-07 10:10:49 +0200 (Sat, 07 Apr 2007) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -21056,7 +21458,7 @@ Added -E option to dvips to force it to denote the file as EPSF (we nevertheless discard the computed dvips bounding box information). ------------------------------------------------------------------------ -r2304 | jcbowman | 2007-04-06 16:25:57 -0600 (Fri, 06 Apr 2007) | 6 lines +r2304 | jcbowman | 2007-04-07 00:25:57 +0200 (Sat, 07 Apr 2007) | 6 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/plain_paths.asy @@ -21071,14 +21473,14 @@ Add 3D midpoint routine. Standardize path arguments names. ------------------------------------------------------------------------ -r2303 | jcbowman | 2007-04-06 00:31:29 -0600 (Fri, 06 Apr 2007) | 2 lines +r2303 | jcbowman | 2007-04-06 08:31:29 +0200 (Fri, 06 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Clean up _slide*_.aux files. ------------------------------------------------------------------------ -r2302 | jcbowman | 2007-04-06 00:19:31 -0600 (Fri, 06 Apr 2007) | 4 lines +r2302 | jcbowman | 2007-04-06 08:19:31 +0200 (Fri, 06 Apr 2007) | 4 lines Changed paths: M /trunk/asymptote/base/slide.asy A /trunk/asymptote/base/syzygy.asy @@ -21095,7 +21497,7 @@ Updated intro.asy to Andy's talk at the University of Alberta. Addded syzygy module and knots.asy example. ------------------------------------------------------------------------ -r2301 | jcbowman | 2007-04-04 09:16:45 -0600 (Wed, 04 Apr 2007) | 4 lines +r2301 | jcbowman | 2007-04-04 17:16:45 +0200 (Wed, 04 Apr 2007) | 4 lines Changed paths: M /trunk/asymptote/base/graph3.asy A /trunk/asymptote/examples/Klein.asy @@ -21105,7 +21507,7 @@ Choose correct surface normal when calculating lighting. Added Klein bottle example. ------------------------------------------------------------------------ -r2300 | jcbowman | 2007-04-03 23:14:18 -0600 (Tue, 03 Apr 2007) | 2 lines +r2300 | jcbowman | 2007-04-04 07:14:18 +0200 (Wed, 04 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/solids.asy @@ -21114,21 +21516,21 @@ Changed paths: Removed unused sign. ------------------------------------------------------------------------ -r2299 | jcbowman | 2007-04-03 09:22:21 -0600 (Tue, 03 Apr 2007) | 2 lines +r2299 | jcbowman | 2007-04-03 17:22:21 +0200 (Tue, 03 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Remove unused dependency on LaTeX "rotating" package. ------------------------------------------------------------------------ -r2298 | jcbowman | 2007-04-02 11:29:48 -0600 (Mon, 02 Apr 2007) | 2 lines +r2298 | jcbowman | 2007-04-02 19:29:48 +0200 (Mon, 02 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Clarify nonroot install instructions. ------------------------------------------------------------------------ -r2297 | jcbowman | 2007-04-01 13:48:00 -0600 (Sun, 01 Apr 2007) | 3 lines +r2297 | jcbowman | 2007-04-01 21:48:00 +0200 (Sun, 01 Apr 2007) | 3 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -21137,63 +21539,63 @@ Allow one to control the minimum width and height of flowchart blocks separately. ------------------------------------------------------------------------ -r2296 | jcbowman | 2007-04-01 03:16:23 -0600 (Sun, 01 Apr 2007) | 2 lines +r2296 | jcbowman | 2007-04-01 11:16:23 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.25svn. ------------------------------------------------------------------------ -r2295 | jcbowman | 2007-04-01 02:37:10 -0600 (Sun, 01 Apr 2007) | 2 lines +r2295 | jcbowman | 2007-04-01 10:37:10 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fix formatting. ------------------------------------------------------------------------ -r2294 | jcbowman | 2007-04-01 02:33:59 -0600 (Sun, 01 Apr 2007) | 2 lines +r2294 | jcbowman | 2007-04-01 10:33:59 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Simplify makefile. ------------------------------------------------------------------------ -r2293 | jcbowman | 2007-04-01 02:24:24 -0600 (Sun, 01 Apr 2007) | 2 lines +r2293 | jcbowman | 2007-04-01 10:24:24 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fix backslash. ------------------------------------------------------------------------ -r2292 | jcbowman | 2007-04-01 01:57:57 -0600 (Sun, 01 Apr 2007) | 2 lines +r2292 | jcbowman | 2007-04-01 09:57:57 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r2291 | jcbowman | 2007-04-01 01:51:53 -0600 (Sun, 01 Apr 2007) | 2 lines +r2291 | jcbowman | 2007-04-01 09:51:53 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fix __CYGWIN__ preprocessor test. ------------------------------------------------------------------------ -r2290 | jcbowman | 2007-04-01 01:36:06 -0600 (Sun, 01 Apr 2007) | 2 lines +r2290 | jcbowman | 2007-04-01 09:36:06 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix binary space partition camera positioning. ------------------------------------------------------------------------ -r2289 | jcbowman | 2007-03-31 22:19:34 -0600 (Sat, 31 Mar 2007) | 2 lines +r2289 | jcbowman | 2007-04-01 06:19:34 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Added 3D version of intersectionpoints routine. ------------------------------------------------------------------------ -r2288 | jcbowman | 2007-03-31 20:00:15 -0600 (Sat, 31 Mar 2007) | 2 lines +r2288 | jcbowman | 2007-04-01 04:00:15 +0200 (Sun, 01 Apr 2007) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -21201,7 +21603,7 @@ Changed paths: Add optional fixed block size specifiers. ------------------------------------------------------------------------ -r2287 | jcbowman | 2007-03-31 13:49:01 -0600 (Sat, 31 Mar 2007) | 2 lines +r2287 | jcbowman | 2007-03-31 21:49:01 +0200 (Sat, 31 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/graph3.asy @@ -21212,35 +21614,35 @@ Changed paths: Remove workarounds for real[1][] bug fixed in r2274. ------------------------------------------------------------------------ -r2286 | jcbowman | 2007-03-31 13:43:59 -0600 (Sat, 31 Mar 2007) | 2 lines +r2286 | jcbowman | 2007-03-31 21:43:59 +0200 (Sat, 31 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Reimplement display. ------------------------------------------------------------------------ -r2285 | jcbowman | 2007-03-31 10:40:17 -0600 (Sat, 31 Mar 2007) | 2 lines +r2285 | jcbowman | 2007-03-31 18:40:17 +0200 (Sat, 31 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/secondaryaxis.asy Change && to &. ------------------------------------------------------------------------ -r2284 | jcbowman | 2007-03-31 10:39:02 -0600 (Sat, 31 Mar 2007) | 2 lines +r2284 | jcbowman | 2007-03-31 18:39:02 +0200 (Sat, 31 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/secondaryaxis.asy Change && to &. ------------------------------------------------------------------------ -r2283 | jcbowman | 2007-03-31 10:35:47 -0600 (Sat, 31 Mar 2007) | 2 lines +r2283 | jcbowman | 2007-03-31 18:35:47 +0200 (Sat, 31 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/leastsquares.asy Change && to &. ------------------------------------------------------------------------ -r2282 | jcbowman | 2007-03-31 10:33:03 -0600 (Sat, 31 Mar 2007) | 2 lines +r2282 | jcbowman | 2007-03-31 18:33:03 +0200 (Sat, 31 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/fontsize.asy M /trunk/asymptote/doc/asymptote.texi @@ -21248,35 +21650,35 @@ Changed paths: Update fontsize to use fix-cm.sty instead of type1cm.sty. ------------------------------------------------------------------------ -r2281 | jcbowman | 2007-03-29 11:37:29 -0600 (Thu, 29 Mar 2007) | 2 lines +r2281 | jcbowman | 2007-03-29 19:37:29 +0200 (Thu, 29 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Clear errors encountered via debugging _eval. ------------------------------------------------------------------------ -r2280 | jcbowman | 2007-03-28 12:57:14 -0600 (Wed, 28 Mar 2007) | 2 lines +r2280 | jcbowman | 2007-03-28 20:57:14 +0200 (Wed, 28 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix default y tick values. ------------------------------------------------------------------------ -r2279 | jcbowman | 2007-03-28 08:52:23 -0600 (Wed, 28 Mar 2007) | 2 lines +r2279 | jcbowman | 2007-03-28 16:52:23 +0200 (Wed, 28 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update MacOS X binary URL. ------------------------------------------------------------------------ -r2278 | jcbowman | 2007-03-28 08:07:49 -0600 (Wed, 28 Mar 2007) | 2 lines +r2278 | jcbowman | 2007-03-28 16:07:49 +0200 (Wed, 28 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Make angle(rotate(x)) always return x (mod 360). ------------------------------------------------------------------------ -r2277 | jcbowman | 2007-03-27 12:17:00 -0600 (Tue, 27 Mar 2007) | 2 lines +r2277 | jcbowman | 2007-03-27 20:17:00 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/camp.y @@ -21286,28 +21688,28 @@ Changed paths: Remove spurious line break after syntax errors. ------------------------------------------------------------------------ -r2276 | jcbowman | 2007-03-27 09:41:53 -0600 (Tue, 27 Mar 2007) | 2 lines +r2276 | jcbowman | 2007-03-27 17:41:53 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Update URL. ------------------------------------------------------------------------ -r2275 | jcbowman | 2007-03-27 09:34:58 -0600 (Tue, 27 Mar 2007) | 2 lines +r2275 | jcbowman | 2007-03-27 17:34:58 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc Fix segmentation fault in Dumoulin's C++ port of Burke's Triangulation routine. ------------------------------------------------------------------------ -r2274 | jcbowman | 2007-03-27 08:05:53 -0600 (Tue, 27 Mar 2007) | 2 lines +r2274 | jcbowman | 2007-03-27 16:05:53 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/newexp.cc Fixed new real[1][] bug. ------------------------------------------------------------------------ -r2273 | jcbowman | 2007-03-27 07:36:38 -0600 (Tue, 27 Mar 2007) | 2 lines +r2273 | jcbowman | 2007-03-27 15:36:38 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -21315,21 +21717,21 @@ Changed paths: Added bitwise NOT function. ------------------------------------------------------------------------ -r2272 | jcbowman | 2007-03-27 06:54:12 -0600 (Tue, 27 Mar 2007) | 2 lines +r2272 | jcbowman | 2007-03-27 14:54:12 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Rename intersect arguments to correspond to documentation. ------------------------------------------------------------------------ -r2271 | jcbowman | 2007-03-27 06:53:31 -0600 (Tue, 27 Mar 2007) | 2 lines +r2271 | jcbowman | 2007-03-27 14:53:31 +0200 (Tue, 27 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Fix segmentation fault given real[n][0] data array. ------------------------------------------------------------------------ -r2270 | jcbowman | 2007-03-26 13:28:28 -0600 (Mon, 26 Mar 2007) | 4 lines +r2270 | jcbowman | 2007-03-26 21:28:28 +0200 (Mon, 26 Mar 2007) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy @@ -21338,14 +21740,14 @@ Added missing tensorshade picture arguments. Fixed ambiguity with "asy plain_picture.asy" test. ------------------------------------------------------------------------ -r2269 | jcbowman | 2007-03-26 13:21:56 -0600 (Mon, 26 Mar 2007) | 2 lines +r2269 | jcbowman | 2007-03-26 21:21:56 +0200 (Mon, 26 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Change array op && to &. ------------------------------------------------------------------------ -r2268 | jcbowman | 2007-03-26 07:41:10 -0600 (Mon, 26 Mar 2007) | 4 lines +r2268 | jcbowman | 2007-03-26 15:41:10 +0200 (Mon, 26 Mar 2007) | 4 lines Changed paths: M /trunk/asymptote/settings.cc @@ -21354,7 +21756,7 @@ calculating it from defaultmatrix, to support explicit post-scaling of eps figures (e.g. with \includegraphics). ------------------------------------------------------------------------ -r2267 | jcbowman | 2007-03-26 05:52:05 -0600 (Mon, 26 Mar 2007) | 2 lines +r2267 | jcbowman | 2007-03-26 13:52:05 +0200 (Mon, 26 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/doc/asymptote.texi @@ -21362,13 +21764,13 @@ Changed paths: Document multidimensional array initialization. ------------------------------------------------------------------------ -r2266 | hammera | 2007-03-25 22:56:55 -0600 (Sun, 25 Mar 2007) | 1 line +r2266 | hammera | 2007-03-26 06:56:55 +0200 (Mon, 26 Mar 2007) | 1 line Changed paths: M /trunk/asymptote/TODO ------------------------------------------------------------------------ -r2265 | hammera | 2007-03-25 22:10:05 -0600 (Sun, 25 Mar 2007) | 2 lines +r2265 | hammera | 2007-03-26 06:10:05 +0200 (Mon, 26 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/exp.cc @@ -21377,28 +21779,28 @@ Changed paths: Removed array checking from && and ||. ------------------------------------------------------------------------ -r2264 | jcbowman | 2007-03-25 01:24:51 -0600 (Sun, 25 Mar 2007) | 2 lines +r2264 | jcbowman | 2007-03-25 09:24:51 +0200 (Sun, 25 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Revert r2257. ------------------------------------------------------------------------ -r2263 | jcbowman | 2007-03-25 01:05:02 -0600 (Sun, 25 Mar 2007) | 2 lines +r2263 | jcbowman | 2007-03-25 09:05:02 +0200 (Sun, 25 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document null instances of structures. ------------------------------------------------------------------------ -r2262 | jcbowman | 2007-03-25 00:53:13 -0600 (Sun, 25 Mar 2007) | 2 lines +r2262 | jcbowman | 2007-03-25 08:53:13 +0200 (Sun, 25 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/binarytree.asy Use null initializer for binarytreeNode. ------------------------------------------------------------------------ -r2261 | jcbowman | 2007-03-25 00:23:46 -0600 (Sun, 25 Mar 2007) | 7 lines +r2261 | jcbowman | 2007-03-25 08:23:46 +0200 (Sun, 25 Mar 2007) | 7 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/camp.y @@ -21413,28 +21815,28 @@ Renamed array boolean operators && and || to & and |. Added AND, OR, and XOR bitwise functions of two integers. ------------------------------------------------------------------------ -r2260 | jcbowman | 2007-03-24 12:19:48 -0600 (Sat, 24 Mar 2007) | 2 lines +r2260 | jcbowman | 2007-03-24 19:19:48 +0100 (Sat, 24 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Fix intro.pdf target. ------------------------------------------------------------------------ -r2259 | jcbowman | 2007-03-24 11:28:46 -0600 (Sat, 24 Mar 2007) | 2 lines +r2259 | jcbowman | 2007-03-24 18:28:46 +0100 (Sat, 24 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Simplify and improve implementation of figure(). ------------------------------------------------------------------------ -r2258 | jcbowman | 2007-03-24 11:28:08 -0600 (Sat, 24 Mar 2007) | 2 lines +r2258 | jcbowman | 2007-03-24 18:28:08 +0100 (Sat, 24 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/intro.asy Use invisible figuremattpen for Asymptote logo. ------------------------------------------------------------------------ -r2257 | jcbowman | 2007-03-24 11:27:25 -0600 (Sat, 24 Mar 2007) | 2 lines +r2257 | jcbowman | 2007-03-24 18:27:25 +0100 (Sat, 24 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/settings.cc @@ -21442,7 +21844,7 @@ Changed paths: Enclose PostScript clipping code with gsave and grestore. ------------------------------------------------------------------------ -r2256 | jcbowman | 2007-03-24 11:25:52 -0600 (Sat, 24 Mar 2007) | 2 lines +r2256 | jcbowman | 2007-03-24 18:25:52 +0100 (Sat, 24 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/solids.asy @@ -21451,7 +21853,7 @@ Changed paths: Move camera for infinite projections. ------------------------------------------------------------------------ -r2255 | jcbowman | 2007-03-22 21:41:41 -0600 (Thu, 22 Mar 2007) | 3 lines +r2255 | jcbowman | 2007-03-23 04:41:41 +0100 (Fri, 23 Mar 2007) | 3 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -21461,7 +21863,7 @@ Allow | as binary operator. Remove || and && from list as they always expand to a ? true : b and a ? b : false. ------------------------------------------------------------------------ -r2254 | jcbowman | 2007-03-22 01:34:13 -0600 (Thu, 22 Mar 2007) | 2 lines +r2254 | jcbowman | 2007-03-22 08:34:13 +0100 (Thu, 22 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/surface.asy @@ -21471,7 +21873,7 @@ Changed paths: For infinite projections, move camera to outside of bounding box. ------------------------------------------------------------------------ -r2253 | jcbowman | 2007-03-21 06:42:18 -0600 (Wed, 21 Mar 2007) | 5 lines +r2253 | jcbowman | 2007-03-21 13:42:18 +0100 (Wed, 21 Mar 2007) | 5 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/base/three.asy @@ -21484,14 +21886,14 @@ orthographic). Generalize perspective projection to allow any target point. ------------------------------------------------------------------------ -r2252 | jcbowman | 2007-03-19 01:23:53 -0600 (Mon, 19 Mar 2007) | 2 lines +r2252 | jcbowman | 2007-03-19 08:23:53 +0100 (Mon, 19 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Use local projection consistently in binary space partition splitting. ------------------------------------------------------------------------ -r2251 | jcbowman | 2007-03-18 06:33:03 -0600 (Sun, 18 Mar 2007) | 2 lines +r2251 | jcbowman | 2007-03-18 13:33:03 +0100 (Sun, 18 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/knot.h @@ -21499,7 +21901,7 @@ Changed paths: Check for tension < 0.75. ------------------------------------------------------------------------ -r2250 | jcbowman | 2007-03-14 22:18:10 -0600 (Wed, 14 Mar 2007) | 6 lines +r2250 | jcbowman | 2007-03-15 05:18:10 +0100 (Thu, 15 Mar 2007) | 6 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/base/animate.asy @@ -21533,7 +21935,7 @@ Remove operator init() initializers that are no longer needed. Initialize Tension in three.asy with sensible defaults. ------------------------------------------------------------------------ -r2249 | jcbowman | 2007-03-14 00:47:33 -0600 (Wed, 14 Mar 2007) | 2 lines +r2249 | jcbowman | 2007-03-14 07:47:33 +0100 (Wed, 14 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.sty @@ -21543,7 +21945,7 @@ Changed paths: Support multiple pdf animations in inlinetex mode. ------------------------------------------------------------------------ -r2248 | jcbowman | 2007-03-14 00:46:44 -0600 (Wed, 14 Mar 2007) | 2 lines +r2248 | jcbowman | 2007-03-14 07:46:44 +0100 (Wed, 14 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/plain_constants.asy @@ -21553,14 +21955,14 @@ Changed paths: Minor reorganization. ------------------------------------------------------------------------ -r2247 | jcbowman | 2007-03-14 00:44:28 -0600 (Wed, 14 Mar 2007) | 2 lines +r2247 | jcbowman | 2007-03-14 07:44:28 +0100 (Wed, 14 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc Format. ------------------------------------------------------------------------ -r2246 | hammera | 2007-03-13 21:48:12 -0600 (Tue, 13 Mar 2007) | 2 lines +r2246 | hammera | 2007-03-14 04:48:12 +0100 (Wed, 14 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/dec.h @@ -21569,28 +21971,28 @@ Changed paths: Add automatic record initializers after the records are defined. ------------------------------------------------------------------------ -r2245 | hammera | 2007-03-13 21:37:27 -0600 (Tue, 13 Mar 2007) | 2 lines +r2245 | hammera | 2007-03-14 04:37:27 +0100 (Wed, 14 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/coder.h Added note about loop translation. ------------------------------------------------------------------------ -r2244 | jcbowman | 2007-03-13 01:23:43 -0600 (Tue, 13 Mar 2007) | 2 lines +r2244 | jcbowman | 2007-03-13 08:23:43 +0100 (Tue, 13 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Input LaTeX preamble only in inline mode. ------------------------------------------------------------------------ -r2243 | jcbowman | 2007-03-13 01:14:55 -0600 (Tue, 13 Mar 2007) | 2 lines +r2243 | jcbowman | 2007-03-13 08:14:55 +0100 (Tue, 13 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Work around pdflatex bug. ------------------------------------------------------------------------ -r2242 | jcbowman | 2007-03-13 00:34:06 -0600 (Tue, 13 Mar 2007) | 5 lines +r2242 | jcbowman | 2007-03-13 07:34:06 +0100 (Tue, 13 Mar 2007) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/latexusage.tex @@ -21602,7 +22004,7 @@ Remove asypreamble environment; corresponding Asymptote commands should now be put in the asydef environment. ------------------------------------------------------------------------ -r2241 | jcbowman | 2007-03-11 17:49:13 -0600 (Sun, 11 Mar 2007) | 2 lines +r2241 | jcbowman | 2007-03-12 00:49:13 +0100 (Mon, 12 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -21610,7 +22012,7 @@ Changed paths: Minor updates. ------------------------------------------------------------------------ -r2240 | jcbowman | 2007-03-11 12:23:17 -0600 (Sun, 11 Mar 2007) | 4 lines +r2240 | jcbowman | 2007-03-11 19:23:17 +0100 (Sun, 11 Mar 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -21620,14 +22022,14 @@ Make Ghostscript dependency explict for MSWindows. Check for GPL Ghostscript as well as AFPL Ghostscript. ------------------------------------------------------------------------ -r2239 | jcbowman | 2007-03-11 11:15:00 -0600 (Sun, 11 Mar 2007) | 2 lines +r2239 | jcbowman | 2007-03-11 18:15:00 +0100 (Sun, 11 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor clarifications. ------------------------------------------------------------------------ -r2238 | jcbowman | 2007-03-11 10:30:10 -0600 (Sun, 11 Mar 2007) | 2 lines +r2238 | jcbowman | 2007-03-11 17:30:10 +0100 (Sun, 11 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/util.cc @@ -21636,14 +22038,14 @@ Changed paths: Simplify MSWindows registry lookup. ------------------------------------------------------------------------ -r2237 | jcbowman | 2007-03-10 00:52:49 -0700 (Sat, 10 Mar 2007) | 2 lines +r2237 | jcbowman | 2007-03-10 08:52:49 +0100 (Sat, 10 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.24svn. ------------------------------------------------------------------------ -r2236 | jcbowman | 2007-03-10 00:13:56 -0700 (Sat, 10 Mar 2007) | 2 lines +r2236 | jcbowman | 2007-03-10 08:13:56 +0100 (Sat, 10 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/settings.cc @@ -21651,7 +22053,7 @@ Changed paths: Fix cxx warning. ------------------------------------------------------------------------ -r2235 | jcbowman | 2007-03-09 23:56:52 -0700 (Fri, 09 Mar 2007) | 3 lines +r2235 | jcbowman | 2007-03-10 07:56:52 +0100 (Sat, 10 Mar 2007) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -21660,42 +22062,42 @@ Autoconfigure under MSWindows by querying the registry, so that Asymptote and the applications it depends on may now be installed in any location. ------------------------------------------------------------------------ -r2234 | jcbowman | 2007-03-09 23:52:43 -0700 (Fri, 09 Mar 2007) | 2 lines +r2234 | jcbowman | 2007-03-10 07:52:43 +0100 (Sat, 10 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/util.cc Check if hint is set before accessing it. ------------------------------------------------------------------------ -r2233 | jcbowman | 2007-03-09 23:18:41 -0700 (Fri, 09 Mar 2007) | 2 lines +r2233 | jcbowman | 2007-03-10 07:18:41 +0100 (Sat, 10 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/genv.cc Fix import gsl under MSWindows. ------------------------------------------------------------------------ -r2232 | jcbowman | 2007-03-08 22:35:13 -0700 (Thu, 08 Mar 2007) | 2 lines +r2232 | jcbowman | 2007-03-09 06:35:13 +0100 (Fri, 09 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Simplify implementation of texpreamble environment. ------------------------------------------------------------------------ -r2231 | jcbowman | 2007-03-08 22:03:33 -0700 (Thu, 08 Mar 2007) | 2 lines +r2231 | jcbowman | 2007-03-09 06:03:33 +0100 (Fri, 09 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex Fix typo. ------------------------------------------------------------------------ -r2230 | jcbowman | 2007-03-08 21:59:11 -0700 (Thu, 08 Mar 2007) | 2 lines +r2230 | jcbowman | 2007-03-09 05:59:11 +0100 (Fri, 09 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Add empty postenvironment definitions. ------------------------------------------------------------------------ -r2229 | jcbowman | 2007-03-08 21:35:25 -0700 (Thu, 08 Mar 2007) | 3 lines +r2229 | jcbowman | 2007-03-09 05:35:25 +0100 (Fri, 09 Mar 2007) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/asymptote.texi @@ -21705,14 +22107,14 @@ Add texpreamble environment to contain the LaTeX preamble for both LaTeX and Asymptote. ------------------------------------------------------------------------ -r2228 | jcbowman | 2007-03-08 11:44:25 -0700 (Thu, 08 Mar 2007) | 2 lines +r2228 | jcbowman | 2007-03-08 19:44:25 +0100 (Thu, 08 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Remove unused line. ------------------------------------------------------------------------ -r2227 | jcbowman | 2007-03-07 23:43:48 -0700 (Wed, 07 Mar 2007) | 2 lines +r2227 | jcbowman | 2007-03-08 07:43:48 +0100 (Thu, 08 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -21721,14 +22123,14 @@ Changed paths: Add autoimport option. ------------------------------------------------------------------------ -r2226 | jcbowman | 2007-03-06 11:17:22 -0700 (Tue, 06 Mar 2007) | 2 lines +r2226 | jcbowman | 2007-03-06 19:17:22 +0100 (Tue, 06 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Allow shipout to write to other directories if and only if -global is true. ------------------------------------------------------------------------ -r2225 | jcbowman | 2007-03-06 00:25:30 -0700 (Tue, 06 Mar 2007) | 3 lines +r2225 | jcbowman | 2007-03-06 08:25:30 +0100 (Tue, 06 Mar 2007) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty @@ -21736,7 +22138,7 @@ Ensure colon is catcode other (12) so that TeX includes like \usepackage[frenchb]{babel} don't break inlinetex mode. ------------------------------------------------------------------------ -r2224 | jcbowman | 2007-03-05 15:05:53 -0700 (Mon, 05 Mar 2007) | 2 lines +r2224 | jcbowman | 2007-03-05 23:05:53 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/examples/poster.asy @@ -21744,49 +22146,49 @@ Changed paths: Fix background picture sizing. ------------------------------------------------------------------------ -r2223 | jcbowman | 2007-03-05 14:58:47 -0700 (Mon, 05 Mar 2007) | 2 lines +r2223 | jcbowman | 2007-03-05 22:58:47 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/poster.asy Set background size. ------------------------------------------------------------------------ -r2222 | jcbowman | 2007-03-05 02:51:51 -0700 (Mon, 05 Mar 2007) | 2 lines +r2222 | jcbowman | 2007-03-05 10:51:51 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.23svn. ------------------------------------------------------------------------ -r2221 | jcbowman | 2007-03-05 02:01:16 -0700 (Mon, 05 Mar 2007) | 2 lines +r2221 | jcbowman | 2007-03-05 10:01:16 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Added missing header. ------------------------------------------------------------------------ -r2220 | jcbowman | 2007-03-05 01:33:43 -0700 (Mon, 05 Mar 2007) | 2 lines +r2220 | jcbowman | 2007-03-05 09:33:43 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Support legends in both forms of 3D contour drawing routines. ------------------------------------------------------------------------ -r2219 | jcbowman | 2007-03-05 01:31:49 -0700 (Mon, 05 Mar 2007) | 2 lines +r2219 | jcbowman | 2007-03-05 09:31:49 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy Support legends in 3D contour drawing routines. ------------------------------------------------------------------------ -r2218 | jcbowman | 2007-03-05 00:58:37 -0700 (Mon, 05 Mar 2007) | 2 lines +r2218 | jcbowman | 2007-03-05 08:58:37 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Add discussion of icomma package. ------------------------------------------------------------------------ -r2217 | jcbowman | 2007-03-05 00:44:32 -0700 (Mon, 05 Mar 2007) | 2 lines +r2217 | jcbowman | 2007-03-05 08:44:32 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/runtime.in @@ -21794,7 +22196,7 @@ Changed paths: Fix format(-0.5) under locales with nonperiod decimal separator. ------------------------------------------------------------------------ -r2216 | jcbowman | 2007-03-05 00:17:12 -0700 (Mon, 05 Mar 2007) | 2 lines +r2216 | jcbowman | 2007-03-05 08:17:12 +0100 (Mon, 05 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/diatom.asy @@ -21802,7 +22204,7 @@ Changed paths: Mention link page, including user-written Asymptote tutorial. ------------------------------------------------------------------------ -r2215 | jcbowman | 2007-03-04 12:17:33 -0700 (Sun, 04 Mar 2007) | 2 lines +r2215 | jcbowman | 2007-03-04 20:17:33 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -21811,14 +22213,14 @@ Changed paths: Add predefined markers. ------------------------------------------------------------------------ -r2214 | jcbowman | 2007-03-04 11:18:45 -0700 (Sun, 04 Mar 2007) | 2 lines +r2214 | jcbowman | 2007-03-04 19:18:45 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor edits. ------------------------------------------------------------------------ -r2213 | jcbowman | 2007-03-04 11:10:23 -0700 (Sun, 04 Mar 2007) | 5 lines +r2213 | jcbowman | 2007-03-04 19:10:23 +0100 (Sun, 04 Mar 2007) | 5 lines Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -21831,14 +22233,14 @@ of frame f within uniformly space intervals in arclength along the path, optionally rotated by the angle of the local tangent. ------------------------------------------------------------------------ -r2212 | jcbowman | 2007-03-04 10:16:14 -0700 (Sun, 04 Mar 2007) | 2 lines +r2212 | jcbowman | 2007-03-04 18:16:14 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Explicitly list intro.asy dependencies. ------------------------------------------------------------------------ -r2211 | jcbowman | 2007-03-04 00:59:30 -0700 (Sun, 04 Mar 2007) | 2 lines +r2211 | jcbowman | 2007-03-04 08:59:30 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -21851,7 +22253,7 @@ Changed paths: Updated marker documentation. ------------------------------------------------------------------------ -r2210 | jcbowman | 2007-03-04 00:53:21 -0700 (Sun, 04 Mar 2007) | 2 lines +r2210 | jcbowman | 2007-03-04 08:53:21 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/base/plain_markers.asy @@ -21861,14 +22263,14 @@ Changed paths: Simplified/standardized markers interface. ------------------------------------------------------------------------ -r2209 | jcbowman | 2007-03-04 00:47:51 -0700 (Sun, 04 Mar 2007) | 2 lines +r2209 | jcbowman | 2007-03-04 08:47:51 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Formatting. ------------------------------------------------------------------------ -r2208 | jcbowman | 2007-03-04 00:47:38 -0700 (Sun, 04 Mar 2007) | 6 lines +r2208 | jcbowman | 2007-03-04 08:47:38 +0100 (Sun, 04 Mar 2007) | 6 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/intro.asy @@ -21880,63 +22282,63 @@ Add Asymptote logo to intro.asy. Change clearpage to eject to avoid extra page. ------------------------------------------------------------------------ -r2207 | jcbowman | 2007-03-04 00:45:34 -0700 (Sun, 04 Mar 2007) | 2 lines +r2207 | jcbowman | 2007-03-04 08:45:34 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Draw minor ticks below palette box. ------------------------------------------------------------------------ -r2206 | jcbowman | 2007-03-03 21:08:48 -0700 (Sat, 03 Mar 2007) | 2 lines +r2206 | jcbowman | 2007-03-04 05:08:48 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/intro.asy Add short description of slide presentation package. ------------------------------------------------------------------------ -r2205 | jcbowman | 2007-03-03 19:33:03 -0700 (Sat, 03 Mar 2007) | 2 lines +r2205 | jcbowman | 2007-03-04 03:33:03 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/intro.asy Remove directory qualifier. ------------------------------------------------------------------------ -r2204 | jcbowman | 2007-03-03 19:32:42 -0700 (Sat, 03 Mar 2007) | 2 lines +r2204 | jcbowman | 2007-03-04 03:32:42 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/pdfmovie.asy Import pdfanim. ------------------------------------------------------------------------ -r2203 | jcbowman | 2007-03-03 19:31:52 -0700 (Sat, 03 Mar 2007) | 2 lines +r2203 | jcbowman | 2007-03-04 03:31:52 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Check incoming array bounds. ------------------------------------------------------------------------ -r2202 | jcbowman | 2007-03-03 17:48:39 -0700 (Sat, 03 Mar 2007) | 2 lines +r2202 | jcbowman | 2007-03-04 01:48:39 +0100 (Sun, 04 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Show page numbers on subsequent bibliography pages. ------------------------------------------------------------------------ -r2201 | jcbowman | 2007-03-03 14:46:09 -0700 (Sat, 03 Mar 2007) | 2 lines +r2201 | jcbowman | 2007-03-03 22:46:09 +0100 (Sat, 03 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Number last page before bibliography. ------------------------------------------------------------------------ -r2200 | jcbowman | 2007-03-03 14:45:49 -0700 (Sat, 03 Mar 2007) | 2 lines +r2200 | jcbowman | 2007-03-03 22:45:49 +0100 (Sat, 03 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Revert temporary patch. ------------------------------------------------------------------------ -r2199 | jcbowman | 2007-03-03 13:37:29 -0700 (Sat, 03 Mar 2007) | 2 lines +r2199 | jcbowman | 2007-03-03 21:37:29 +0100 (Sat, 03 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/doc/asymptote.texi @@ -21944,7 +22346,7 @@ Changed paths: Add implicit pen initializer defaultpen. ------------------------------------------------------------------------ -r2198 | jcbowman | 2007-03-03 13:02:54 -0700 (Sat, 03 Mar 2007) | 2 lines +r2198 | jcbowman | 2007-03-03 21:02:54 +0100 (Sat, 03 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -21953,7 +22355,7 @@ Changed paths: Fix concatentation of nullpaths. ------------------------------------------------------------------------ -r2197 | jcbowman | 2007-03-03 12:32:32 -0700 (Sat, 03 Mar 2007) | 7 lines +r2197 | jcbowman | 2007-03-03 20:32:32 +0100 (Sat, 03 Mar 2007) | 7 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/doc/asymptote.texi @@ -21967,14 +22369,14 @@ Document workarounds for unimplemented "%Z" time zone specifier to seconds. Improve diagnostic. ------------------------------------------------------------------------ -r2196 | pivaldi | 2007-03-02 15:06:35 -0700 (Fri, 02 Mar 2007) | 1 line +r2196 | pivaldi | 2007-03-02 23:06:35 +0100 (Fri, 02 Mar 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/asymptote.texi Minor changes/updates. ------------------------------------------------------------------------ -r2195 | pivaldi | 2007-03-02 12:43:16 -0700 (Fri, 02 Mar 2007) | 2 lines +r2195 | pivaldi | 2007-03-02 20:43:16 +0100 (Fri, 02 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -21983,7 +22385,7 @@ Changed paths: Replacing the parameter 'frame markerframe=newframe' by 'marker marker=nomarker' in the routine 'markangle' of 'markers.asy'. ------------------------------------------------------------------------ -r2194 | jcbowman | 2007-03-02 00:16:21 -0700 (Fri, 02 Mar 2007) | 2 lines +r2194 | jcbowman | 2007-03-02 08:16:21 +0100 (Fri, 02 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/texfile.h @@ -21991,20 +22393,20 @@ Changed paths: Don't output texpreamble in inline mode. ------------------------------------------------------------------------ -r2193 | pivaldi | 2007-03-01 15:28:33 -0700 (Thu, 01 Mar 2007) | 1 line +r2193 | pivaldi | 2007-03-01 23:28:33 +0100 (Thu, 01 Mar 2007) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Correct typo. ------------------------------------------------------------------------ -r2192 | pivaldi | 2007-03-01 15:15:58 -0700 (Thu, 01 Mar 2007) | 1 line +r2192 | pivaldi | 2007-03-01 23:15:58 +0100 (Thu, 01 Mar 2007) | 1 line Changed paths: M /trunk/asymptote/base/markers.asy M /trunk/asymptote/doc/asymptote.texi Documentation of the package markers.asy. ------------------------------------------------------------------------ -r2191 | jcbowman | 2007-03-01 09:01:41 -0700 (Thu, 01 Mar 2007) | 2 lines +r2191 | jcbowman | 2007-03-01 17:01:41 +0100 (Thu, 01 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/graph3.asy @@ -22013,20 +22415,20 @@ Changed paths: Added routines to facilitate drawing 3d contours. ------------------------------------------------------------------------ -r2190 | pivaldi | 2007-03-01 08:37:30 -0700 (Thu, 01 Mar 2007) | 1 line +r2190 | pivaldi | 2007-03-01 16:37:30 +0100 (Thu, 01 Mar 2007) | 1 line Changed paths: A /trunk/asymptote/examples/markers1.asy A /trunk/asymptote/examples/markers2.asy Examples about the modules markers.asy ------------------------------------------------------------------------ -r2189 | pivaldi | 2007-03-01 08:12:30 -0700 (Thu, 01 Mar 2007) | 1 line +r2189 | pivaldi | 2007-03-01 16:12:30 +0100 (Thu, 01 Mar 2007) | 1 line Changed paths: A /trunk/asymptote/base/markers.asy Others mark routines and markers. ------------------------------------------------------------------------ -r2188 | jcbowman | 2007-02-28 22:55:57 -0700 (Wed, 28 Feb 2007) | 3 lines +r2188 | jcbowman | 2007-03-01 06:55:57 +0100 (Thu, 01 Mar 2007) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.h @@ -22036,21 +22438,21 @@ Implemented binput and boutput functions for reading and writing in the native (nonportable) machine binary format. ------------------------------------------------------------------------ -r2187 | jcbowman | 2007-02-28 17:54:28 -0700 (Wed, 28 Feb 2007) | 2 lines +r2187 | jcbowman | 2007-03-01 01:54:28 +0100 (Thu, 01 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/INSTALL Document local installation. ------------------------------------------------------------------------ -r2186 | jcbowman | 2007-02-28 17:29:42 -0700 (Wed, 28 Feb 2007) | 2 lines +r2186 | jcbowman | 2007-03-01 01:29:42 +0100 (Thu, 01 Mar 2007) | 2 lines Changed paths: M /trunk/asymptote/transform.h Fix uninitialized 'this.130' warning message from gcc 4.1.1 and 4.1.2. ------------------------------------------------------------------------ -r2185 | jcbowman | 2007-02-28 13:56:44 -0700 (Wed, 28 Feb 2007) | 4 lines +r2185 | jcbowman | 2007-02-28 21:56:44 +0100 (Wed, 28 Feb 2007) | 4 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/base/labelpath.asy @@ -22067,14 +22469,14 @@ Fix bool latex() and pdf(). Remove lscape dependency and need for autorotation in slide.asy. ------------------------------------------------------------------------ -r2184 | jcbowman | 2007-02-28 12:40:49 -0700 (Wed, 28 Feb 2007) | 2 lines +r2184 | jcbowman | 2007-02-28 20:40:49 +0100 (Wed, 28 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Reactive begingroup. ------------------------------------------------------------------------ -r2183 | jcbowman | 2007-02-28 00:35:32 -0700 (Wed, 28 Feb 2007) | 2 lines +r2183 | jcbowman | 2007-02-28 08:35:32 +0100 (Wed, 28 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc M /trunk/asymptote/runtime.in @@ -22082,21 +22484,21 @@ Changed paths: Fix cxx errors. ------------------------------------------------------------------------ -r2182 | jcbowman | 2007-02-28 00:28:39 -0700 (Wed, 28 Feb 2007) | 2 lines +r2182 | jcbowman | 2007-02-28 08:28:39 +0100 (Wed, 28 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Remove unused configuration variable AC_HEADER_STDBOOL. ------------------------------------------------------------------------ -r2181 | jcbowman | 2007-02-28 00:17:09 -0700 (Wed, 28 Feb 2007) | 2 lines +r2181 | jcbowman | 2007-02-28 08:17:09 +0100 (Wed, 28 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix cxx errors. ------------------------------------------------------------------------ -r2180 | jcbowman | 2007-02-27 23:58:30 -0700 (Tue, 27 Feb 2007) | 2 lines +r2180 | jcbowman | 2007-02-28 07:58:30 +0100 (Wed, 28 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -22128,7 +22530,7 @@ Changed paths: Move mem::list out of common.h due to ambiguities under old cxx compiler. ------------------------------------------------------------------------ -r2179 | jcbowman | 2007-02-27 23:09:49 -0700 (Tue, 27 Feb 2007) | 3 lines +r2179 | jcbowman | 2007-02-28 07:09:49 +0100 (Wed, 28 Feb 2007) | 3 lines Changed paths: M /trunk/asymptote/configure.ac @@ -22136,7 +22538,7 @@ Impose -finline-limit=400 on old (< 4.0.0) compilers to greatly speed up compilation. ------------------------------------------------------------------------ -r2178 | jcbowman | 2007-02-27 20:00:26 -0700 (Tue, 27 Feb 2007) | 2 lines +r2178 | jcbowman | 2007-02-28 04:00:26 +0100 (Wed, 28 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/absyn.cc M /trunk/asymptote/absyn.h @@ -22226,28 +22628,28 @@ Changed paths: Put global name space qualifications in new common.h file. ------------------------------------------------------------------------ -r2177 | jcbowman | 2007-02-27 10:08:33 -0700 (Tue, 27 Feb 2007) | 2 lines +r2177 | jcbowman | 2007-02-27 18:08:33 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Make tex pipe aware of a previously generated aux file. ------------------------------------------------------------------------ -r2176 | jcbowman | 2007-02-27 08:58:53 -0700 (Tue, 27 Feb 2007) | 2 lines +r2176 | jcbowman | 2007-02-27 16:58:53 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Fix makefile dependencies. ------------------------------------------------------------------------ -r2175 | hammera | 2007-02-27 07:42:56 -0700 (Tue, 27 Feb 2007) | 2 lines +r2175 | hammera | 2007-02-27 15:42:56 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/coder.h Fixed inTranslation to handle frames for loops. ------------------------------------------------------------------------ -r2174 | jcbowman | 2007-02-27 00:10:31 -0700 (Tue, 27 Feb 2007) | 2 lines +r2174 | jcbowman | 2007-02-27 08:10:31 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/Makefile @@ -22256,14 +22658,14 @@ Changed paths: Temporarily fix svn builds. ------------------------------------------------------------------------ -r2173 | jcbowman | 2007-02-26 23:50:54 -0700 (Mon, 26 Feb 2007) | 2 lines +r2173 | jcbowman | 2007-02-27 07:50:54 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Temporarily disable aux file input. ------------------------------------------------------------------------ -r2172 | jcbowman | 2007-02-26 23:40:30 -0700 (Mon, 26 Feb 2007) | 2 lines +r2172 | jcbowman | 2007-02-27 07:40:30 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -22289,7 +22691,7 @@ Changed paths: Fix further memory leaks. ------------------------------------------------------------------------ -r2171 | jcbowman | 2007-02-26 22:10:23 -0700 (Mon, 26 Feb 2007) | 2 lines +r2171 | jcbowman | 2007-02-27 06:10:23 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/util.cc @@ -22298,7 +22700,7 @@ Changed paths: Fixed segmentation fault. ------------------------------------------------------------------------ -r2170 | jcbowman | 2007-02-26 21:53:35 -0700 (Mon, 26 Feb 2007) | 2 lines +r2170 | jcbowman | 2007-02-27 05:53:35 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asymptote.texi @@ -22306,7 +22708,7 @@ Changed paths: Possible workaround for Makefile problem on Debian. ------------------------------------------------------------------------ -r2169 | jcbowman | 2007-02-26 21:37:06 -0700 (Mon, 26 Feb 2007) | 3 lines +r2169 | jcbowman | 2007-02-27 05:37:06 +0100 (Tue, 27 Feb 2007) | 3 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/absyn.cc @@ -22369,35 +22771,35 @@ Fix memory leaks by using mem::string, mem::istringstream, mem::ostringstream, and mem::stringbuf everywhere. ------------------------------------------------------------------------ -r2168 | hammera | 2007-02-26 19:03:46 -0700 (Mon, 26 Feb 2007) | 2 lines +r2168 | hammera | 2007-02-27 03:03:46 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Explained lifetime of loop variables. ------------------------------------------------------------------------ -r2167 | jcbowman | 2007-02-26 17:22:21 -0700 (Mon, 26 Feb 2007) | 2 lines +r2167 | jcbowman | 2007-02-27 01:22:21 +0100 (Tue, 27 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Update discussion of local variable allocation in loops. ------------------------------------------------------------------------ -r2166 | hammera | 2007-02-26 09:07:53 -0700 (Mon, 26 Feb 2007) | 2 lines +r2166 | hammera | 2007-02-26 17:07:53 +0100 (Mon, 26 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added documentation on static qualifiers in loops. ------------------------------------------------------------------------ -r2165 | hammera | 2007-02-26 08:41:28 -0700 (Mon, 26 Feb 2007) | 2 lines +r2165 | hammera | 2007-02-26 16:41:28 +0100 (Mon, 26 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO Removed completed TODO item. ------------------------------------------------------------------------ -r2164 | hammera | 2007-02-26 08:40:41 -0700 (Mon, 26 Feb 2007) | 2 lines +r2164 | hammera | 2007-02-26 16:40:41 +0100 (Mon, 26 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -22413,28 +22815,28 @@ Changed paths: Allocate variables in a loop iteration in their own frame. ------------------------------------------------------------------------ -r2163 | jcbowman | 2007-02-26 00:36:35 -0700 (Mon, 26 Feb 2007) | 2 lines +r2163 | jcbowman | 2007-02-26 08:36:35 +0100 (Mon, 26 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/embed.asy Force outputformat to "pdf". ------------------------------------------------------------------------ -r2162 | jcbowman | 2007-02-26 00:35:40 -0700 (Mon, 26 Feb 2007) | 2 lines +r2162 | jcbowman | 2007-02-26 08:35:40 +0100 (Mon, 26 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/pdfanim.asy Set outformat to pdf. ------------------------------------------------------------------------ -r2161 | jcbowman | 2007-02-26 00:34:34 -0700 (Mon, 26 Feb 2007) | 2 lines +r2161 | jcbowman | 2007-02-26 08:34:34 +0100 (Mon, 26 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove unwanted texput.pdf file. ------------------------------------------------------------------------ -r2160 | jcbowman | 2007-02-25 11:22:00 -0700 (Sun, 25 Feb 2007) | 2 lines +r2160 | jcbowman | 2007-02-25 19:22:00 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/asycolors.sty @@ -22443,14 +22845,14 @@ Changed paths: Load color package even for TeX pipe. ------------------------------------------------------------------------ -r2159 | jcbowman | 2007-02-25 11:12:13 -0700 (Sun, 25 Feb 2007) | 2 lines +r2159 | jcbowman | 2007-02-25 19:12:13 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy Formatted. ------------------------------------------------------------------------ -r2158 | jcbowman | 2007-02-25 11:01:12 -0700 (Sun, 25 Feb 2007) | 2 lines +r2158 | jcbowman | 2007-02-25 19:01:12 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/locate.cc @@ -22460,14 +22862,14 @@ Changed paths: Avoid duplicate .aux file inclusion (and duplicate labels). ------------------------------------------------------------------------ -r2157 | jcbowman | 2007-02-25 09:54:30 -0700 (Sun, 25 Feb 2007) | 2 lines +r2157 | jcbowman | 2007-02-25 17:54:30 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h Removed extra blank lines in tex pipe diagnostics. ------------------------------------------------------------------------ -r2156 | pivaldi | 2007-02-25 08:08:43 -0700 (Sun, 25 Feb 2007) | 2 lines +r2156 | pivaldi | 2007-02-25 16:08:43 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/plain_margins.asy @@ -22475,55 +22877,55 @@ Changed paths: Improve the function 'perpendicular' of geometry.asy. Add operator +(margin,margin) in plain_magin.asy. ------------------------------------------------------------------------ -r2155 | jcbowman | 2007-02-25 08:02:11 -0700 (Sun, 25 Feb 2007) | 2 lines +r2155 | jcbowman | 2007-02-25 16:02:11 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Simplified bullet command. ------------------------------------------------------------------------ -r2154 | jcbowman | 2007-02-24 19:47:11 -0700 (Sat, 24 Feb 2007) | 2 lines +r2154 | jcbowman | 2007-02-25 03:47:11 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Load correct base files. ------------------------------------------------------------------------ -r2153 | jcbowman | 2007-02-24 17:23:36 -0700 (Sat, 24 Feb 2007) | 2 lines +r2153 | jcbowman | 2007-02-25 01:23:36 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Simplify skeleton routine interface. ------------------------------------------------------------------------ -r2152 | jcbowman | 2007-02-24 17:15:39 -0700 (Sat, 24 Feb 2007) | 2 lines +r2152 | jcbowman | 2007-02-25 01:15:39 +0100 (Sun, 25 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Split skeleton routines to provide finer control. ------------------------------------------------------------------------ -r2151 | jcbowman | 2007-02-24 09:52:09 -0700 (Sat, 24 Feb 2007) | 2 lines +r2151 | jcbowman | 2007-02-24 17:52:09 +0100 (Sat, 24 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Turn off setlocale warnings when not debugging. ------------------------------------------------------------------------ -r2150 | jcbowman | 2007-02-24 09:51:43 -0700 (Sat, 24 Feb 2007) | 2 lines +r2150 | jcbowman | 2007-02-24 17:51:43 +0100 (Sat, 24 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Use namespace setitings. ------------------------------------------------------------------------ -r2149 | pivaldi | 2007-02-24 03:52:50 -0700 (Sat, 24 Feb 2007) | 1 line +r2149 | pivaldi | 2007-02-24 11:52:50 +0100 (Sat, 24 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Correction of ps/pdf-view-command documentation. ------------------------------------------------------------------------ -r2148 | jcbowman | 2007-02-22 13:21:01 -0700 (Thu, 22 Feb 2007) | 2 lines +r2148 | jcbowman | 2007-02-22 21:21:01 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asy.1.begin @@ -22531,28 +22933,28 @@ Changed paths: Fix hyphens and formatting in man page. ------------------------------------------------------------------------ -r2147 | jcbowman | 2007-02-22 13:06:48 -0700 (Thu, 22 Feb 2007) | 2 lines +r2147 | jcbowman | 2007-02-22 21:06:48 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Change autorotation to true. ------------------------------------------------------------------------ -r2146 | jcbowman | 2007-02-22 12:49:10 -0700 (Thu, 22 Feb 2007) | 2 lines +r2146 | jcbowman | 2007-02-22 20:49:10 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated Debian binary site. ------------------------------------------------------------------------ -r2145 | jcbowman | 2007-02-22 00:36:59 -0700 (Thu, 22 Feb 2007) | 2 lines +r2145 | jcbowman | 2007-02-22 08:36:59 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/intro.asy Generate more missing files. ------------------------------------------------------------------------ -r2144 | jcbowman | 2007-02-22 00:34:49 -0700 (Thu, 22 Feb 2007) | 2 lines +r2144 | jcbowman | 2007-02-22 08:34:49 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/intro.asy @@ -22560,28 +22962,28 @@ Changed paths: Autogenerate missing files. ------------------------------------------------------------------------ -r2143 | jcbowman | 2007-02-22 00:17:06 -0700 (Thu, 22 Feb 2007) | 2 lines +r2143 | jcbowman | 2007-02-22 08:17:06 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Make eof set fail bit. ------------------------------------------------------------------------ -r2142 | jcbowman | 2007-02-22 00:14:51 -0700 (Thu, 22 Feb 2007) | 2 lines +r2142 | jcbowman | 2007-02-22 08:14:51 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Make eof set fail(). ------------------------------------------------------------------------ -r2141 | jcbowman | 2007-02-21 23:45:12 -0700 (Wed, 21 Feb 2007) | 2 lines +r2141 | jcbowman | 2007-02-22 07:45:12 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Removed duplicate sentence. ------------------------------------------------------------------------ -r2140 | jcbowman | 2007-02-21 23:43:07 -0700 (Wed, 21 Feb 2007) | 6 lines +r2140 | jcbowman | 2007-02-22 07:43:07 +0100 (Thu, 22 Feb 2007) | 6 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/Makefile @@ -22602,27 +23004,27 @@ Added keepaux option to keep intermediate LaTeX aux files. Added example filegraph.asy of graphing columns of data from a file. ------------------------------------------------------------------------ -r2139 | jcbowman | 2007-02-21 21:40:34 -0700 (Wed, 21 Feb 2007) | 2 lines +r2139 | jcbowman | 2007-02-22 05:40:34 +0100 (Thu, 22 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix logarithmic tick labels near the machine epsilon. ------------------------------------------------------------------------ -r2138 | pivaldi | 2007-02-21 10:29:15 -0700 (Wed, 21 Feb 2007) | 1 line +r2138 | pivaldi | 2007-02-21 18:29:15 +0100 (Wed, 21 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi typo correction. ------------------------------------------------------------------------ -r2137 | jcbowman | 2007-02-21 09:56:54 -0700 (Wed, 21 Feb 2007) | 2 lines +r2137 | jcbowman | 2007-02-21 17:56:54 +0100 (Wed, 21 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Remove alien to deb conversion documentation. ------------------------------------------------------------------------ -r2136 | jcbowman | 2007-02-21 09:47:55 -0700 (Wed, 21 Feb 2007) | 5 lines +r2136 | jcbowman | 2007-02-21 17:47:55 +0100 (Wed, 21 Feb 2007) | 5 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/base/slide.asy @@ -22636,21 +23038,21 @@ Add string file(string) which reads file as a string, and verbatim typesetting command. ------------------------------------------------------------------------ -r2135 | jcbowman | 2007-02-20 21:52:11 -0700 (Tue, 20 Feb 2007) | 2 lines +r2135 | jcbowman | 2007-02-21 05:52:11 +0100 (Wed, 21 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Added missing space. ------------------------------------------------------------------------ -r2134 | jcbowman | 2007-02-19 23:01:03 -0700 (Mon, 19 Feb 2007) | 2 lines +r2134 | jcbowman | 2007-02-20 07:01:03 +0100 (Tue, 20 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix typo. ------------------------------------------------------------------------ -r2133 | jcbowman | 2007-02-19 22:52:40 -0700 (Mon, 19 Feb 2007) | 2 lines +r2133 | jcbowman | 2007-02-20 06:52:40 +0100 (Tue, 20 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/asymptote.texi @@ -22659,42 +23061,42 @@ Changed paths: Added backgroundcolor and foregroundcolor. ------------------------------------------------------------------------ -r2132 | jcbowman | 2007-02-19 22:51:23 -0700 (Mon, 19 Feb 2007) | 2 lines +r2132 | jcbowman | 2007-02-20 06:51:23 +0100 (Tue, 20 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Implement colorspace command for extracting colorspace of pens. ------------------------------------------------------------------------ -r2131 | jcbowman | 2007-02-19 22:50:50 -0700 (Mon, 19 Feb 2007) | 2 lines +r2131 | jcbowman | 2007-02-20 06:50:50 +0100 (Tue, 20 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy Implement verbatim command. ------------------------------------------------------------------------ -r2130 | jcbowman | 2007-02-19 09:58:21 -0700 (Mon, 19 Feb 2007) | 2 lines +r2130 | jcbowman | 2007-02-19 17:58:21 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.22svn. ------------------------------------------------------------------------ -r2129 | jcbowman | 2007-02-19 09:08:21 -0700 (Mon, 19 Feb 2007) | 2 lines +r2129 | jcbowman | 2007-02-19 17:08:21 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fixed cxx warning. ------------------------------------------------------------------------ -r2128 | jcbowman | 2007-02-19 08:56:20 -0700 (Mon, 19 Feb 2007) | 2 lines +r2128 | jcbowman | 2007-02-19 16:56:20 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r2127 | jcbowman | 2007-02-19 08:18:14 -0700 (Mon, 19 Feb 2007) | 2 lines +r2127 | jcbowman | 2007-02-19 16:18:14 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/psfile.cc @@ -22702,7 +23104,7 @@ Changed paths: Allow DEFCOLOR when promoting colorspaces. ------------------------------------------------------------------------ -r2126 | jcbowman | 2007-02-19 00:54:23 -0700 (Mon, 19 Feb 2007) | 8 lines +r2126 | jcbowman | 2007-02-19 08:54:23 +0100 (Mon, 19 Feb 2007) | 8 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/examples/latticeshading.asy @@ -22722,21 +23124,21 @@ Significantly increase speed of image processing by caching bw, gray, rgb, and cmyk settings in a global variable. ------------------------------------------------------------------------ -r2125 | jcbowman | 2007-02-19 00:51:41 -0700 (Mon, 19 Feb 2007) | 2 lines +r2125 | jcbowman | 2007-02-19 08:51:41 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation of Linear scaling type. ------------------------------------------------------------------------ -r2124 | jcbowman | 2007-02-19 00:50:14 -0700 (Mon, 19 Feb 2007) | 2 lines +r2124 | jcbowman | 2007-02-19 08:50:14 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/xasy Check array bounds. ------------------------------------------------------------------------ -r2123 | jcbowman | 2007-02-19 00:49:34 -0700 (Mon, 19 Feb 2007) | 8 lines +r2123 | jcbowman | 2007-02-19 08:49:34 +0100 (Mon, 19 Feb 2007) | 8 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/examples/fillcontour.asy @@ -22750,28 +23152,28 @@ Fix contour fill routine. Separate contour fill routine from palette computation. ------------------------------------------------------------------------ -r2122 | jcbowman | 2007-02-19 00:42:43 -0700 (Mon, 19 Feb 2007) | 2 lines +r2122 | jcbowman | 2007-02-19 08:42:43 +0100 (Mon, 19 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Added Philippe's improved show-function-at-point fix. ------------------------------------------------------------------------ -r2121 | jcbowman | 2007-02-18 12:58:55 -0700 (Sun, 18 Feb 2007) | 2 lines +r2121 | jcbowman | 2007-02-18 20:58:55 +0100 (Sun, 18 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Delete any existing *asy-help* buffer in asy-show-function-at-point. ------------------------------------------------------------------------ -r2120 | jcbowman | 2007-02-17 09:37:26 -0700 (Sat, 17 Feb 2007) | 2 lines +r2120 | jcbowman | 2007-02-17 17:37:26 +0100 (Sat, 17 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Improve tick calculation when Step > 0. ------------------------------------------------------------------------ -r2119 | jcbowman | 2007-02-17 08:47:45 -0700 (Sat, 17 Feb 2007) | 4 lines +r2119 | jcbowman | 2007-02-17 16:47:45 +0100 (Sat, 17 Feb 2007) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -22780,34 +23182,34 @@ Fix tick calculation. Improve zero detection. ------------------------------------------------------------------------ -r2118 | jcbowman | 2007-02-17 03:48:15 -0700 (Sat, 17 Feb 2007) | 2 lines +r2118 | jcbowman | 2007-02-17 11:48:15 +0100 (Sat, 17 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix tick label scaling. ------------------------------------------------------------------------ -r2117 | jcbowman | 2007-02-16 21:19:34 -0700 (Fri, 16 Feb 2007) | 2 lines +r2117 | jcbowman | 2007-02-17 05:19:34 +0100 (Sat, 17 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Remove vv from settings module. ------------------------------------------------------------------------ -r2116 | jcbowman | 2007-02-16 09:23:29 -0700 (Fri, 16 Feb 2007) | 2 lines +r2116 | jcbowman | 2007-02-16 17:23:29 +0100 (Fri, 16 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Resolve -vv ambiguity. ------------------------------------------------------------------------ -r2115 | pivaldi | 2007-02-15 04:00:02 -0700 (Thu, 15 Feb 2007) | 1 line +r2115 | pivaldi | 2007-02-15 12:00:02 +0100 (Thu, 15 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/plain_markers.asy Fix typo. ------------------------------------------------------------------------ -r2114 | jcbowman | 2007-02-14 23:37:14 -0700 (Wed, 14 Feb 2007) | 6 lines +r2114 | jcbowman | 2007-02-15 07:37:14 +0100 (Thu, 15 Feb 2007) | 6 lines Changed paths: M /trunk/asymptote/base/slide.asy @@ -22818,27 +23220,27 @@ Reimplemented figuremattpen. Make bibliography visible in reverse video. ------------------------------------------------------------------------ -r2113 | jcbowman | 2007-02-14 14:02:00 -0700 (Wed, 14 Feb 2007) | 2 lines +r2113 | jcbowman | 2007-02-14 22:02:00 +0100 (Wed, 14 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Added --version option. ------------------------------------------------------------------------ -r2112 | pivaldi | 2007-02-14 04:51:45 -0700 (Wed, 14 Feb 2007) | 1 line +r2112 | pivaldi | 2007-02-14 12:51:45 +0100 (Wed, 14 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el bug fix in asy-show-function-at-point ------------------------------------------------------------------------ -r2111 | jcbowman | 2007-02-13 23:56:41 -0700 (Tue, 13 Feb 2007) | 2 lines +r2111 | jcbowman | 2007-02-14 07:56:41 +0100 (Wed, 14 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Resolve ambiguity in intersectionpoints. ------------------------------------------------------------------------ -r2110 | jcbowman | 2007-02-13 22:41:42 -0700 (Tue, 13 Feb 2007) | 3 lines +r2110 | jcbowman | 2007-02-14 06:41:42 +0100 (Wed, 14 Feb 2007) | 3 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/doc/asymptote.texi @@ -22847,14 +23249,14 @@ Add rotated option to mark_uniform to rotate marker frames by angle of local tangent. ------------------------------------------------------------------------ -r2109 | jcbowman | 2007-02-13 22:40:33 -0700 (Tue, 13 Feb 2007) | 2 lines +r2109 | jcbowman | 2007-02-14 06:40:33 +0100 (Wed, 14 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Ignore empty picture bounds when adding pictures; simplify userBox and userClip. ------------------------------------------------------------------------ -r2108 | jcbowman | 2007-02-13 15:08:01 -0700 (Tue, 13 Feb 2007) | 2 lines +r2108 | jcbowman | 2007-02-13 23:08:01 +0100 (Tue, 13 Feb 2007) | 2 lines Changed paths: A /trunk/asymptote/doc/FAQ/install-sh A /trunk/asymptote/doc/install-sh @@ -22863,7 +23265,7 @@ Changed paths: Update to latest autoconf install-sh and patch it to ignore -p option. ------------------------------------------------------------------------ -r2107 | jcbowman | 2007-02-12 21:44:06 -0700 (Mon, 12 Feb 2007) | 3 lines +r2107 | jcbowman | 2007-02-13 05:44:06 +0100 (Tue, 13 Feb 2007) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -22872,7 +23274,7 @@ Add an ASYMPTOTE_SITEDIR environment variable listing additional directories to use for generating asy-mode.el keywords. ------------------------------------------------------------------------ -r2106 | jcbowman | 2007-02-12 21:19:14 -0700 (Mon, 12 Feb 2007) | 4 lines +r2106 | jcbowman | 2007-02-13 05:19:14 +0100 (Tue, 13 Feb 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -22881,7 +23283,7 @@ interactive prompt are automatically evaluated and written to stdout (provided a corresponding write method is defined). ------------------------------------------------------------------------ -r2105 | jcbowman | 2007-02-12 20:47:36 -0700 (Mon, 12 Feb 2007) | 3 lines +r2105 | jcbowman | 2007-02-13 04:47:36 +0100 (Tue, 13 Feb 2007) | 3 lines Changed paths: A /trunk/asymptote/patches/gc6.8_AIX.patch @@ -22889,7 +23291,7 @@ Add patch to fix an incorrect Boehm garbage collector prototype in the file gc6.8/include/gc.h (version 6.8). ------------------------------------------------------------------------ -r2104 | jcbowman | 2007-02-12 14:53:52 -0700 (Mon, 12 Feb 2007) | 2 lines +r2104 | jcbowman | 2007-02-12 22:53:52 +0100 (Mon, 12 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -22899,7 +23301,7 @@ Changed paths: Added texcommand to allow one to override the tex engine command name. ------------------------------------------------------------------------ -r2103 | jcbowman | 2007-02-12 12:54:38 -0700 (Mon, 12 Feb 2007) | 4 lines +r2103 | jcbowman | 2007-02-12 20:54:38 +0100 (Mon, 12 Feb 2007) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -22910,33 +23312,33 @@ Apply gc6.8 GC_INIT patch for AIX systems. Document gcc3.3.2curses.patch. ------------------------------------------------------------------------ -r2102 | pivaldi | 2007-02-12 08:11:48 -0700 (Mon, 12 Feb 2007) | 1 line +r2102 | pivaldi | 2007-02-12 16:11:48 +0100 (Mon, 12 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor edit. ------------------------------------------------------------------------ -r2101 | pivaldi | 2007-02-12 07:51:18 -0700 (Mon, 12 Feb 2007) | 1 line +r2101 | pivaldi | 2007-02-12 15:51:18 +0100 (Mon, 12 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Add brief documentation of lasy-mode, typing correction. ------------------------------------------------------------------------ -r2100 | jcbowman | 2007-02-11 23:04:47 -0700 (Sun, 11 Feb 2007) | 2 lines +r2100 | jcbowman | 2007-02-12 07:04:47 +0100 (Mon, 12 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc Fixed cxx warning message. ------------------------------------------------------------------------ -r2099 | jcbowman | 2007-02-11 22:51:14 -0700 (Sun, 11 Feb 2007) | 2 lines +r2099 | jcbowman | 2007-02-12 06:51:14 +0100 (Mon, 12 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/entry.cc Fix compilation under -DNOHASH. ------------------------------------------------------------------------ -r2098 | jcbowman | 2007-02-11 22:36:38 -0700 (Sun, 11 Feb 2007) | 2 lines +r2098 | jcbowman | 2007-02-12 06:36:38 +0100 (Mon, 12 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/symbol.h M /trunk/asymptote/util.h @@ -22944,33 +23346,33 @@ Changed paths: Portability tweaks. ------------------------------------------------------------------------ -r2097 | jcbowman | 2007-02-11 21:58:27 -0700 (Sun, 11 Feb 2007) | 2 lines +r2097 | jcbowman | 2007-02-12 05:58:27 +0100 (Mon, 12 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/patches/gcc3.3.2curses.patch Use more portable context patch. ------------------------------------------------------------------------ -r2096 | jcbowman | 2007-02-11 21:47:20 -0700 (Sun, 11 Feb 2007) | 2 lines +r2096 | jcbowman | 2007-02-12 05:47:20 +0100 (Mon, 12 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/patches/gcc3.3.2curses.patch Make patch more portable. ------------------------------------------------------------------------ -r2095 | pivaldi | 2007-02-11 19:07:13 -0700 (Sun, 11 Feb 2007) | 1 line +r2095 | pivaldi | 2007-02-12 03:07:13 +0100 (Mon, 12 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el add (require 'wid-edit) ------------------------------------------------------------------------ -r2094 | pivaldi | 2007-02-11 18:55:37 -0700 (Sun, 11 Feb 2007) | 1 line +r2094 | pivaldi | 2007-02-12 02:55:37 +0100 (Mon, 12 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Links pointing to the files are added when one shows for the command at the cursor by the key binding C-c ? within asy-mode. ------------------------------------------------------------------------ -r2093 | jcbowman | 2007-02-11 14:32:47 -0700 (Sun, 11 Feb 2007) | 5 lines +r2093 | jcbowman | 2007-02-11 22:32:47 +0100 (Sun, 11 Feb 2007) | 5 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/dec.cc @@ -22989,20 +23391,20 @@ Add a --where option to make --listvariables show where global functions and variables are declared. ------------------------------------------------------------------------ -r2092 | hammera | 2007-02-11 10:32:21 -0700 (Sun, 11 Feb 2007) | 2 lines +r2092 | hammera | 2007-02-11 18:32:21 +0100 (Sun, 11 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/knot.h Fixed typo. ------------------------------------------------------------------------ -r2091 | pivaldi | 2007-02-11 07:42:07 -0700 (Sun, 11 Feb 2007) | 1 line +r2091 | pivaldi | 2007-02-11 15:42:07 +0100 (Sun, 11 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Allow to type when viewing compilation result within lasy-mode. ------------------------------------------------------------------------ -r2090 | jcbowman | 2007-02-10 21:57:26 -0700 (Sat, 10 Feb 2007) | 2 lines +r2090 | jcbowman | 2007-02-11 05:57:26 +0100 (Sun, 11 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/name.cc M /trunk/asymptote/name.h @@ -23010,13 +23412,13 @@ Changed paths: Fixed typo. ------------------------------------------------------------------------ -r2089 | pivaldi | 2007-02-10 09:28:02 -0700 (Sat, 10 Feb 2007) | 1 line +r2089 | pivaldi | 2007-02-10 17:28:02 +0100 (Sat, 10 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Support of the options of the environment asy and better management of the errors within lasy-mode. ------------------------------------------------------------------------ -r2088 | jcbowman | 2007-02-09 23:36:57 -0700 (Fri, 09 Feb 2007) | 2 lines +r2088 | jcbowman | 2007-02-10 07:36:57 +0100 (Sat, 10 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/asymptote.spec @@ -23027,14 +23429,14 @@ Changed paths: Revert to gc6.8.tar.gz due to rpmbuild segmentation fault. ------------------------------------------------------------------------ -r2087 | jcbowman | 2007-02-09 22:42:54 -0700 (Fri, 09 Feb 2007) | 2 lines +r2087 | jcbowman | 2007-02-10 06:42:54 +0100 (Sat, 10 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/surface.asy Added surface operator * (transform3 t, surface s). ------------------------------------------------------------------------ -r2086 | jcbowman | 2007-02-09 22:24:08 -0700 (Fri, 09 Feb 2007) | 4 lines +r2086 | jcbowman | 2007-02-10 06:24:08 +0100 (Sat, 10 Feb 2007) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -23047,21 +23449,21 @@ Check for out of bounds mesh size and array indices. Use size(frame) function for max(frame)-min(frame). ------------------------------------------------------------------------ -r2085 | jcbowman | 2007-02-09 22:18:43 -0700 (Fri, 09 Feb 2007) | 2 lines +r2085 | jcbowman | 2007-02-10 06:18:43 +0100 (Sat, 10 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Check for attempts to create negative-length arrays. ------------------------------------------------------------------------ -r2084 | jcbowman | 2007-02-09 21:08:29 -0700 (Fri, 09 Feb 2007) | 2 lines +r2084 | jcbowman | 2007-02-10 05:08:29 +0100 (Sat, 10 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/binarytree.asy Removed unused line. ------------------------------------------------------------------------ -r2083 | jcbowman | 2007-02-09 19:53:22 -0700 (Fri, 09 Feb 2007) | 2 lines +r2083 | jcbowman | 2007-02-10 03:53:22 +0100 (Sat, 10 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/binarytree.asy M /trunk/asymptote/doc/asymptote.texi @@ -23070,7 +23472,7 @@ Changed paths: Implement an interface for drawing an arbitrary binary tree. ------------------------------------------------------------------------ -r2082 | jcbowman | 2007-02-09 15:55:23 -0700 (Fri, 09 Feb 2007) | 2 lines +r2082 | jcbowman | 2007-02-09 23:55:23 +0100 (Fri, 09 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/doc/asymptote.texi @@ -23078,28 +23480,28 @@ Changed paths: Document GNU make requirement. ------------------------------------------------------------------------ -r2081 | jcbowman | 2007-02-09 15:54:18 -0700 (Fri, 09 Feb 2007) | 2 lines +r2081 | jcbowman | 2007-02-09 23:54:18 +0100 (Fri, 09 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/curvedlabel.asy Changed capitalization. ------------------------------------------------------------------------ -r2080 | jcbowman | 2007-02-09 15:46:39 -0700 (Fri, 09 Feb 2007) | 2 lines +r2080 | jcbowman | 2007-02-09 23:46:39 +0100 (Fri, 09 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Ensure curses routines are declared with "C" linkage. ------------------------------------------------------------------------ -r2079 | jcbowman | 2007-02-09 14:57:52 -0700 (Fri, 09 Feb 2007) | 2 lines +r2079 | jcbowman | 2007-02-09 22:57:52 +0100 (Fri, 09 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Work around broken curses.h files. ------------------------------------------------------------------------ -r2078 | jcbowman | 2007-02-09 12:37:34 -0700 (Fri, 09 Feb 2007) | 2 lines +r2078 | jcbowman | 2007-02-09 20:37:34 +0100 (Fri, 09 Feb 2007) | 2 lines Changed paths: D /trunk/asymptote/patches/AIXgcc3.3.2curses.patch A /trunk/asymptote/patches/gcc3.3.2curses.patch (from /trunk/asymptote/patches/AIXgcc3.3.2curses.patch:2076) @@ -23107,7 +23509,7 @@ Changed paths: Renamed patch since this apparently affects both AIX and SGI systems. ------------------------------------------------------------------------ -r2077 | jcbowman | 2007-02-09 00:27:54 -0700 (Fri, 09 Feb 2007) | 7 lines +r2077 | jcbowman | 2007-02-09 08:27:54 +0100 (Fri, 09 Feb 2007) | 7 lines Changed paths: M /trunk/asymptote/INSTALL A /trunk/asymptote/base/labelpath.asy @@ -23138,14 +23540,14 @@ drawing curved labels along paths. Updated to gc-7.0alpha7. ------------------------------------------------------------------------ -r2076 | jcbowman | 2007-02-08 17:26:46 -0700 (Thu, 08 Feb 2007) | 2 lines +r2076 | jcbowman | 2007-02-09 01:26:46 +0100 (Fri, 09 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Revert premature changes. ------------------------------------------------------------------------ -r2075 | jcbowman | 2007-02-08 09:48:07 -0700 (Thu, 08 Feb 2007) | 3 lines +r2075 | jcbowman | 2007-02-08 17:48:07 +0100 (Thu, 08 Feb 2007) | 3 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/settings.cc @@ -23154,34 +23556,34 @@ Added wait option that waits for all child processes to terminate (to work around emacs child-killing bug). ------------------------------------------------------------------------ -r2074 | jcbowman | 2007-02-06 13:57:37 -0700 (Tue, 06 Feb 2007) | 2 lines +r2074 | jcbowman | 2007-02-06 21:57:37 +0100 (Tue, 06 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Minor edits. ------------------------------------------------------------------------ -r2073 | pivaldi | 2007-02-06 10:16:33 -0700 (Tue, 06 Feb 2007) | 1 line +r2073 | pivaldi | 2007-02-06 18:16:33 +0100 (Tue, 06 Feb 2007) | 1 line Changed paths: M /trunk/asymptote/base/asy-mode.el Cleaning code, resolution conflict math-mode/lasy-mode, add options for compilation and management of errors. ------------------------------------------------------------------------ -r2072 | jcbowman | 2007-02-05 07:08:03 -0700 (Mon, 05 Feb 2007) | 2 lines +r2072 | jcbowman | 2007-02-05 15:08:03 +0100 (Mon, 05 Feb 2007) | 2 lines Changed paths: A /trunk/asymptote/patches/AIXgcc3.3.2curses.patch Added patch for old broken gcc3.3.2 curses.h file under AIX. ------------------------------------------------------------------------ -r2071 | jcbowman | 2007-02-04 18:26:12 -0700 (Sun, 04 Feb 2007) | 2 lines +r2071 | jcbowman | 2007-02-05 02:26:12 +0100 (Mon, 05 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy Optimize intersectionpoints. ------------------------------------------------------------------------ -r2070 | jcbowman | 2007-02-04 18:08:11 -0700 (Sun, 04 Feb 2007) | 3 lines +r2070 | jcbowman | 2007-02-05 02:08:11 +0100 (Mon, 05 Feb 2007) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_paths.asy @@ -23191,21 +23593,21 @@ Added routine intersectionpoints(path p, path q) that returns an array of all intersection points of paths p and q. ------------------------------------------------------------------------ -r2069 | jcbowman | 2007-02-04 17:50:53 -0700 (Sun, 04 Feb 2007) | 2 lines +r2069 | jcbowman | 2007-02-05 01:50:53 +0100 (Mon, 05 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/PythagoreanTree.asy Fill squares. ------------------------------------------------------------------------ -r2068 | jcbowman | 2007-02-04 10:21:53 -0700 (Sun, 04 Feb 2007) | 2 lines +r2068 | jcbowman | 2007-02-04 18:21:53 +0100 (Sun, 04 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/TODO New items. ------------------------------------------------------------------------ -r2067 | jcbowman | 2007-02-03 21:48:07 -0700 (Sat, 03 Feb 2007) | 8 lines +r2067 | jcbowman | 2007-02-04 05:48:07 +0100 (Sun, 04 Feb 2007) | 8 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -23221,7 +23623,7 @@ routine to give users complete control over which of the auto-generated ticks actually get drawn. ------------------------------------------------------------------------ -r2066 | jcbowman | 2007-02-03 15:38:42 -0700 (Sat, 03 Feb 2007) | 2 lines +r2066 | jcbowman | 2007-02-03 23:38:42 +0100 (Sat, 03 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/examples/slidedemo.asy A /trunk/asymptote/examples/slidedemo_.bbl @@ -23229,14 +23631,14 @@ Changed paths: Add bibliography example to slidedemo. ------------------------------------------------------------------------ -r2065 | jcbowman | 2007-02-03 11:48:57 -0700 (Sat, 03 Feb 2007) | 2 lines +r2065 | jcbowman | 2007-02-03 19:48:57 +0100 (Sat, 03 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Add fuzz to textwidth and textheight to avoid overfull vbox. ------------------------------------------------------------------------ -r2064 | jcbowman | 2007-02-03 02:33:38 -0700 (Sat, 03 Feb 2007) | 2 lines +r2064 | jcbowman | 2007-02-03 10:33:38 +0100 (Sat, 03 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/examples/slidedemo.asy @@ -23247,14 +23649,14 @@ Changed paths: Implement slide presentation BibTeX citations and reference list. ------------------------------------------------------------------------ -r2063 | jcbowman | 2007-01-31 23:41:43 -0700 (Wed, 31 Jan 2007) | 2 lines +r2063 | jcbowman | 2007-02-01 07:41:43 +0100 (Thu, 01 Feb 2007) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Set autorotate in PDF landscape mode, rather than forcing pdflatex. ------------------------------------------------------------------------ -r2062 | jcbowman | 2007-01-30 10:35:17 -0700 (Tue, 30 Jan 2007) | 2 lines +r2062 | jcbowman | 2007-01-30 18:35:17 +0100 (Tue, 30 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -23262,7 +23664,7 @@ Changed paths: Leave the pair to angle conversion to dirSpec. ------------------------------------------------------------------------ -r2061 | jcbowman | 2007-01-30 02:12:58 -0700 (Tue, 30 Jan 2007) | 2 lines +r2061 | jcbowman | 2007-01-30 10:12:58 +0100 (Tue, 30 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/doc/asymptote.texi @@ -23270,14 +23672,14 @@ Changed paths: Document skeleton structure. ------------------------------------------------------------------------ -r2060 | jcbowman | 2007-01-30 01:59:34 -0700 (Tue, 30 Jan 2007) | 2 lines +r2060 | jcbowman | 2007-01-30 09:59:34 +0100 (Tue, 30 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Mention Imagemagick dependency in Windows installation notes. ------------------------------------------------------------------------ -r2059 | jcbowman | 2007-01-28 19:00:41 -0700 (Sun, 28 Jan 2007) | 2 lines +r2059 | jcbowman | 2007-01-29 03:00:41 +0100 (Mon, 29 Jan 2007) | 2 lines Changed paths: A /trunk/asymptote/base/binarytree.asy M /trunk/asymptote/doc/asymptote.texi @@ -23286,7 +23688,7 @@ Changed paths: Added Tobias' binary tree module. ------------------------------------------------------------------------ -r2058 | jcbowman | 2007-01-28 14:51:04 -0700 (Sun, 28 Jan 2007) | 2 lines +r2058 | jcbowman | 2007-01-28 22:51:04 +0100 (Sun, 28 Jan 2007) | 2 lines Changed paths: A /trunk/asymptote/base/grid3.asy M /trunk/asymptote/doc/asymptote.texi @@ -23295,7 +23697,7 @@ Changed paths: Added Philippe's grid3 contribution for drawing 3D grids. ------------------------------------------------------------------------ -r2057 | jcbowman | 2007-01-28 11:59:14 -0700 (Sun, 28 Jan 2007) | 2 lines +r2057 | jcbowman | 2007-01-28 19:59:14 +0100 (Sun, 28 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -23304,14 +23706,14 @@ Changed paths: CYGWIN updates. ------------------------------------------------------------------------ -r2056 | jcbowman | 2007-01-28 10:29:02 -0700 (Sun, 28 Jan 2007) | 2 lines +r2056 | jcbowman | 2007-01-28 18:29:02 +0100 (Sun, 28 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Make definition of pair I=(0,1) explicit. ------------------------------------------------------------------------ -r2055 | jcbowman | 2007-01-20 14:15:16 -0700 (Sat, 20 Jan 2007) | 4 lines +r2055 | jcbowman | 2007-01-20 22:15:16 +0100 (Sat, 20 Jan 2007) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/doc/latexusage.tex @@ -23321,7 +23723,7 @@ In inline latex usage, do not scale picture by default. Use to recover previous default of scaling to line width. ------------------------------------------------------------------------ -r2054 | jcbowman | 2007-01-18 22:28:21 -0700 (Thu, 18 Jan 2007) | 6 lines +r2054 | jcbowman | 2007-01-19 06:28:21 +0100 (Fri, 19 Jan 2007) | 6 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/three.asy @@ -23335,7 +23737,7 @@ Allow one to disable Gouraud shading when nsub=1. Allow draw(nullpath3..cycle3). ------------------------------------------------------------------------ -r2053 | jcbowman | 2007-01-18 03:44:16 -0700 (Thu, 18 Jan 2007) | 2 lines +r2053 | jcbowman | 2007-01-18 11:44:16 +0100 (Thu, 18 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/doc/imagecontour.asy M /trunk/asymptote/examples/fillcontour.asy @@ -23343,7 +23745,7 @@ Changed paths: Minor improvements. ------------------------------------------------------------------------ -r2052 | hammera | 2007-01-16 21:00:37 -0700 (Tue, 16 Jan 2007) | 3 lines +r2052 | hammera | 2007-01-17 05:00:37 +0100 (Wed, 17 Jan 2007) | 3 lines Changed paths: M /trunk/asymptote/dec.h M /trunk/asymptote/process.cc @@ -23353,49 +23755,49 @@ Automatically write expression statements at the prompt. ------------------------------------------------------------------------ -r2051 | jcbowman | 2007-01-10 17:39:03 -0700 (Wed, 10 Jan 2007) | 2 lines +r2051 | jcbowman | 2007-01-11 01:39:03 +0100 (Thu, 11 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Added missing tickmin and tickmax bounds. ------------------------------------------------------------------------ -r2050 | jcbowman | 2007-01-05 14:27:17 -0700 (Fri, 05 Jan 2007) | 2 lines +r2050 | jcbowman | 2007-01-05 22:27:17 +0100 (Fri, 05 Jan 2007) | 2 lines Changed paths: M /trunk/asymptote/process.cc Removed unused code. ------------------------------------------------------------------------ -r2049 | jcbowman | 2006-12-28 22:56:30 -0700 (Thu, 28 Dec 2006) | 2 lines +r2049 | jcbowman | 2006-12-29 06:56:30 +0100 (Fri, 29 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.21svn. ------------------------------------------------------------------------ -r2048 | jcbowman | 2006-12-28 22:16:22 -0700 (Thu, 28 Dec 2006) | 2 lines +r2048 | jcbowman | 2006-12-29 06:16:22 +0100 (Fri, 29 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fixed cxx warnings. ------------------------------------------------------------------------ -r2047 | jcbowman | 2006-12-28 21:42:55 -0700 (Thu, 28 Dec 2006) | 2 lines +r2047 | jcbowman | 2006-12-29 05:42:55 +0100 (Fri, 29 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/util.cc Cleaned up cd diagnostics. ------------------------------------------------------------------------ -r2046 | jcbowman | 2006-12-28 21:22:32 -0700 (Thu, 28 Dec 2006) | 2 lines +r2046 | jcbowman | 2006-12-29 05:22:32 +0100 (Fri, 29 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/fillcontour.asy Simplified example. ------------------------------------------------------------------------ -r2045 | jcbowman | 2006-12-28 21:19:01 -0700 (Thu, 28 Dec 2006) | 4 lines +r2045 | jcbowman | 2006-12-29 05:19:01 +0100 (Fri, 29 Dec 2006) | 4 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/palette.asy @@ -23406,7 +23808,7 @@ Fixed incorrect offset in palette. Added routine to fill cyclic contours and example. ------------------------------------------------------------------------ -r2044 | jcbowman | 2006-12-28 10:01:47 -0700 (Thu, 28 Dec 2006) | 2 lines +r2044 | jcbowman | 2006-12-28 18:01:47 +0100 (Thu, 28 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/process.cc M /trunk/asymptote/runtime.in @@ -23417,14 +23819,14 @@ Changed paths: Added command-line option to set current directory. ------------------------------------------------------------------------ -r2043 | jcbowman | 2006-12-28 08:55:13 -0700 (Thu, 28 Dec 2006) | 2 lines +r2043 | jcbowman | 2006-12-28 16:55:13 +0100 (Thu, 28 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/imagecontour.asy Generalized example. ------------------------------------------------------------------------ -r2042 | jcbowman | 2006-12-25 06:15:20 -0700 (Mon, 25 Dec 2006) | 2 lines +r2042 | jcbowman | 2006-12-25 14:15:20 +0100 (Mon, 25 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -23432,7 +23834,7 @@ Changed paths: Updated FAQ. ------------------------------------------------------------------------ -r2041 | jcbowman | 2006-12-25 05:31:43 -0700 (Mon, 25 Dec 2006) | 2 lines +r2041 | jcbowman | 2006-12-25 13:31:43 +0100 (Mon, 25 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/util.cc @@ -23441,7 +23843,7 @@ Changed paths: Clean up Getenv code. ------------------------------------------------------------------------ -r2040 | jcbowman | 2006-12-23 15:51:41 -0700 (Sat, 23 Dec 2006) | 2 lines +r2040 | jcbowman | 2006-12-23 23:51:41 +0100 (Sat, 23 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/settings.cc @@ -23450,14 +23852,14 @@ Changed paths: Fixed texpath and diagnostics under MSWINDOWS. ------------------------------------------------------------------------ -r2039 | jcbowman | 2006-12-17 09:45:04 -0700 (Sun, 17 Dec 2006) | 2 lines +r2039 | jcbowman | 2006-12-17 17:45:04 +0100 (Sun, 17 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Remove texmathp stuff since this duplicates features in >= AUCTeX 11.82. ------------------------------------------------------------------------ -r2038 | jcbowman | 2006-12-16 14:44:50 -0700 (Sat, 16 Dec 2006) | 2 lines +r2038 | jcbowman | 2006-12-16 22:44:50 +0100 (Sat, 16 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/examples/parametricsurface.asy @@ -23465,7 +23867,7 @@ Changed paths: Make asy-mode respect TeX-electric-sub-and-superscript. ------------------------------------------------------------------------ -r2037 | jcbowman | 2006-12-14 10:42:16 -0700 (Thu, 14 Dec 2006) | 2 lines +r2037 | jcbowman | 2006-12-14 18:42:16 +0100 (Thu, 14 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/genv.cc @@ -23475,35 +23877,35 @@ Changed paths: Improve loading/including diagnostics. ------------------------------------------------------------------------ -r2036 | jcbowman | 2006-12-14 09:54:15 -0700 (Thu, 14 Dec 2006) | 2 lines +r2036 | jcbowman | 2006-12-14 17:54:15 +0100 (Thu, 14 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Fixed defaulttransform (e.g. to allow forcing of yaxis label angle). ------------------------------------------------------------------------ -r2035 | jcbowman | 2006-12-14 01:32:35 -0700 (Thu, 14 Dec 2006) | 2 lines +r2035 | jcbowman | 2006-12-14 09:32:35 +0100 (Thu, 14 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Optimize real argument point, postcontrol, and precontrol functions. ------------------------------------------------------------------------ -r2034 | jcbowman | 2006-12-13 15:16:24 -0700 (Wed, 13 Dec 2006) | 2 lines +r2034 | jcbowman | 2006-12-13 23:16:24 +0100 (Wed, 13 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/cube.asy Simplify example. ------------------------------------------------------------------------ -r2033 | jcbowman | 2006-12-13 12:06:37 -0700 (Wed, 13 Dec 2006) | 2 lines +r2033 | jcbowman | 2006-12-13 20:06:37 +0100 (Wed, 13 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve discussion of Bezier curve subdivision. ------------------------------------------------------------------------ -r2032 | jcbowman | 2006-12-13 01:36:09 -0700 (Wed, 13 Dec 2006) | 2 lines +r2032 | jcbowman | 2006-12-13 09:36:09 +0100 (Wed, 13 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/examples/animations/wheel.asy @@ -23511,14 +23913,14 @@ Changed paths: Slow down wheel animation. ------------------------------------------------------------------------ -r2031 | jcbowman | 2006-12-13 00:18:33 -0700 (Wed, 13 Dec 2006) | 2 lines +r2031 | jcbowman | 2006-12-13 08:18:33 +0100 (Wed, 13 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.20svn. ------------------------------------------------------------------------ -r2030 | jcbowman | 2006-12-12 18:11:44 -0700 (Tue, 12 Dec 2006) | 3 lines +r2030 | jcbowman | 2006-12-13 02:11:44 +0100 (Wed, 13 Dec 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -23526,14 +23928,14 @@ Emphasize that multiline mode is a setting that can be turned on and off within interactive mode. ------------------------------------------------------------------------ -r2029 | jcbowman | 2006-12-12 16:17:30 -0700 (Tue, 12 Dec 2006) | 2 lines +r2029 | jcbowman | 2006-12-13 00:17:30 +0100 (Wed, 13 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation updates. ------------------------------------------------------------------------ -r2028 | jcbowman | 2006-12-12 12:01:14 -0700 (Tue, 12 Dec 2006) | 2 lines +r2028 | jcbowman | 2006-12-12 20:01:14 +0100 (Tue, 12 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -23541,7 +23943,7 @@ Changed paths: Make cd() reset path to program startup value. ------------------------------------------------------------------------ -r2027 | jcbowman | 2006-12-12 11:47:29 -0700 (Tue, 12 Dec 2006) | 2 lines +r2027 | jcbowman | 2006-12-12 19:47:29 +0100 (Tue, 12 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -23549,7 +23951,7 @@ Changed paths: Updated documentation; fixed cd argument renaming. ------------------------------------------------------------------------ -r2026 | jcbowman | 2006-12-12 11:17:43 -0700 (Tue, 12 Dec 2006) | 2 lines +r2026 | jcbowman | 2006-12-12 19:17:43 +0100 (Tue, 12 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/process.cc @@ -23558,7 +23960,7 @@ Changed paths: Interactive reset should not reset current path. ------------------------------------------------------------------------ -r2025 | jcbowman | 2006-12-12 03:05:00 -0700 (Tue, 12 Dec 2006) | 3 lines +r2025 | jcbowman | 2006-12-12 11:05:00 +0100 (Tue, 12 Dec 2006) | 3 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/doc/asymptote.texi @@ -23569,14 +23971,14 @@ Shift cylinder so that axis is c--c+h*unit(axis) for consistency with cone and generalized cylinder routine. This change is backwards incompatible. ------------------------------------------------------------------------ -r2024 | jcbowman | 2006-12-12 02:29:45 -0700 (Tue, 12 Dec 2006) | 2 lines +r2024 | jcbowman | 2006-12-12 10:29:45 +0100 (Tue, 12 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated svn instructions. ------------------------------------------------------------------------ -r2023 | jcbowman | 2006-12-12 02:25:22 -0700 (Tue, 12 Dec 2006) | 2 lines +r2023 | jcbowman | 2006-12-12 10:25:22 +0100 (Tue, 12 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/graph_settings.asy @@ -23596,14 +23998,14 @@ Changed paths: Implemented preliminary Bezier surface package. ------------------------------------------------------------------------ -r2022 | jcbowman | 2006-12-12 02:09:10 -0700 (Tue, 12 Dec 2006) | 2 lines +r2022 | jcbowman | 2006-12-12 10:09:10 +0100 (Tue, 12 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Require Common Lisp extensions. ------------------------------------------------------------------------ -r2021 | hammera | 2006-12-08 18:59:58 -0700 (Fri, 08 Dec 2006) | 2 lines +r2021 | hammera | 2006-12-09 02:59:58 +0100 (Sat, 09 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/camp.l @@ -23612,7 +24014,7 @@ Changed paths: Added support for meaningless slashes at ends of lines. ------------------------------------------------------------------------ -r2020 | jcbowman | 2006-12-08 11:06:02 -0700 (Fri, 08 Dec 2006) | 2 lines +r2020 | jcbowman | 2006-12-08 19:06:02 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/process.cc @@ -23621,7 +24023,7 @@ Changed paths: Fixed cxx errors. ------------------------------------------------------------------------ -r2019 | jcbowman | 2006-12-08 10:12:41 -0700 (Fri, 08 Dec 2006) | 2 lines +r2019 | jcbowman | 2006-12-08 18:12:41 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -23631,21 +24033,21 @@ Changed paths: Andy's port to nonbash shells. ------------------------------------------------------------------------ -r2018 | jcbowman | 2006-12-08 02:02:12 -0700 (Fri, 08 Dec 2006) | 2 lines +r2018 | jcbowman | 2006-12-08 10:02:12 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix epstopdf conversion of empty or tiny files. ------------------------------------------------------------------------ -r2017 | jcbowman | 2006-12-08 01:46:52 -0700 (Fri, 08 Dec 2006) | 2 lines +r2017 | jcbowman | 2006-12-08 09:46:52 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Improve tex error handling. ------------------------------------------------------------------------ -r2016 | jcbowman | 2006-12-08 01:05:47 -0700 (Fri, 08 Dec 2006) | 2 lines +r2016 | jcbowman | 2006-12-08 09:05:47 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/texfile.cc @@ -23654,7 +24056,7 @@ Changed paths: Fix clipping in inline tex mode. ------------------------------------------------------------------------ -r2015 | jcbowman | 2006-12-08 00:49:43 -0700 (Fri, 08 Dec 2006) | 2 lines +r2015 | jcbowman | 2006-12-08 08:49:43 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/texfile.h @@ -23662,7 +24064,7 @@ Changed paths: Fixed clipping. ------------------------------------------------------------------------ -r2014 | jcbowman | 2006-12-07 21:41:18 -0700 (Thu, 07 Dec 2006) | 2 lines +r2014 | jcbowman | 2006-12-08 05:41:18 +0100 (Fri, 08 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/pdfanim_temp.sty @@ -23675,7 +24077,7 @@ Changed paths: Fixed inlinetex mode. ------------------------------------------------------------------------ -r2013 | jcbowman | 2006-12-06 22:45:16 -0700 (Wed, 06 Dec 2006) | 2 lines +r2013 | jcbowman | 2006-12-07 06:45:16 +0100 (Thu, 07 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawlabel.cc @@ -23688,28 +24090,28 @@ Changed paths: Repair tex pipe on missing math mode error. ------------------------------------------------------------------------ -r2012 | jcbowman | 2006-12-05 14:13:45 -0700 (Tue, 05 Dec 2006) | 2 lines +r2012 | jcbowman | 2006-12-05 22:13:45 +0100 (Tue, 05 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/tensor.asy Use path instead of a guide. ------------------------------------------------------------------------ -r2011 | jcbowman | 2006-12-05 14:13:19 -0700 (Tue, 05 Dec 2006) | 2 lines +r2011 | jcbowman | 2006-12-05 22:13:19 +0100 (Tue, 05 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/Coons.asy Remove explicit internal control points. ------------------------------------------------------------------------ -r2010 | jcbowman | 2006-12-05 14:12:37 -0700 (Tue, 05 Dec 2006) | 2 lines +r2010 | jcbowman | 2006-12-05 22:12:37 +0100 (Tue, 05 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/install-sh Remove bashism. ------------------------------------------------------------------------ -r2009 | jcbowman | 2006-12-04 11:38:44 -0700 (Mon, 04 Dec 2006) | 2 lines +r2009 | jcbowman | 2006-12-04 19:38:44 +0100 (Mon, 04 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -23717,14 +24119,14 @@ Changed paths: Standardize flowchart argument names. ------------------------------------------------------------------------ -r2008 | jcbowman | 2006-12-04 00:37:40 -0700 (Mon, 04 Dec 2006) | 2 lines +r2008 | jcbowman | 2006-12-04 08:37:40 +0100 (Mon, 04 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy Simplify flowchart block size calculation. ------------------------------------------------------------------------ -r2007 | jcbowman | 2006-12-04 00:18:33 -0700 (Mon, 04 Dec 2006) | 2 lines +r2007 | jcbowman | 2006-12-04 08:18:33 +0100 (Mon, 04 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/base/plain_boxes.asy @@ -23736,14 +24138,14 @@ Changed paths: Make flowchart routines work with pictures as well as frames. ------------------------------------------------------------------------ -r2006 | hammera | 2006-12-03 21:57:16 -0700 (Sun, 03 Dec 2006) | 2 lines +r2006 | hammera | 2006-12-04 05:57:16 +0100 (Mon, 04 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO Added note on backslashes. ------------------------------------------------------------------------ -r2005 | jcbowman | 2006-12-03 10:46:53 -0700 (Sun, 03 Dec 2006) | 2 lines +r2005 | jcbowman | 2006-12-03 18:46:53 +0100 (Sun, 03 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_boxes.asy M /trunk/asymptote/doc/advection.asy @@ -23752,7 +24154,7 @@ Changed paths: Renamed object constructor to draw. ------------------------------------------------------------------------ -r2004 | jcbowman | 2006-12-03 10:33:49 -0700 (Sun, 03 Dec 2006) | 2 lines +r2004 | jcbowman | 2006-12-03 18:33:49 +0100 (Sun, 03 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/advection.asy @@ -23764,7 +24166,7 @@ Changed paths: Implement add(picture pic=currentpicture, drawer d); ------------------------------------------------------------------------ -r2003 | jcbowman | 2006-12-03 09:56:26 -0700 (Sun, 03 Dec 2006) | 2 lines +r2003 | jcbowman | 2006-12-03 17:56:26 +0100 (Sun, 03 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/base/plain_Label.asy @@ -23776,7 +24178,7 @@ Changed paths: Replace labelframe by existing object structure. ------------------------------------------------------------------------ -r2002 | jcbowman | 2006-12-02 23:00:26 -0700 (Sat, 02 Dec 2006) | 2 lines +r2002 | jcbowman | 2006-12-03 07:00:26 +0100 (Sun, 03 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_boxes.asy M /trunk/asymptote/doc/advection.asy @@ -23785,7 +24187,7 @@ Changed paths: Renamed envelope to labelframe and container to envelope. ------------------------------------------------------------------------ -r2001 | jcbowman | 2006-12-02 22:19:41 -0700 (Sat, 02 Dec 2006) | 3 lines +r2001 | jcbowman | 2006-12-03 06:19:41 +0100 (Sun, 03 Dec 2006) | 3 lines Changed paths: M /trunk/asymptote/base/plain_boxes.asy M /trunk/asymptote/doc/advection.asy @@ -23796,7 +24198,7 @@ Introduce an envelope structure for supporting picture scaling when drawing boxes around labels. ------------------------------------------------------------------------ -r2000 | jcbowman | 2006-12-02 22:17:56 -0700 (Sat, 02 Dec 2006) | 2 lines +r2000 | jcbowman | 2006-12-03 06:17:56 +0100 (Sun, 03 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/generalaxis.asy M /trunk/asymptote/doc/generalaxis3.asy @@ -23805,14 +24207,14 @@ Changed paths: Updated to use new intersect routine. ------------------------------------------------------------------------ -r1999 | jcbowman | 2006-12-02 22:13:45 -0700 (Sat, 02 Dec 2006) | 2 lines +r1999 | jcbowman | 2006-12-03 06:13:45 +0100 (Sun, 03 Dec 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/fractaltree.asy Added fractral tree example. ------------------------------------------------------------------------ -r1998 | jcbowman | 2006-12-02 16:25:09 -0700 (Sat, 02 Dec 2006) | 6 lines +r1998 | jcbowman | 2006-12-03 00:25:09 +0100 (Sun, 03 Dec 2006) | 6 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy M /trunk/asymptote/base/graph3.asy @@ -23843,14 +24245,14 @@ pair intersectionpoint(). Autogenerate usage info in manual and man page. ------------------------------------------------------------------------ -r1997 | hammera | 2006-12-01 22:10:09 -0700 (Fri, 01 Dec 2006) | 2 lines +r1997 | hammera | 2006-12-02 06:10:09 +0100 (Sat, 02 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/process.cc Backslash now continues a line on the interactive prompt. ------------------------------------------------------------------------ -r1996 | jcbowman | 2006-12-01 20:52:09 -0700 (Fri, 01 Dec 2006) | 2 lines +r1996 | jcbowman | 2006-12-02 04:52:09 +0100 (Sat, 02 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/runtime.in @@ -23858,7 +24260,7 @@ Changed paths: Minor diagnostic improvements. ------------------------------------------------------------------------ -r1995 | jcbowman | 2006-12-01 17:33:22 -0700 (Fri, 01 Dec 2006) | 2 lines +r1995 | jcbowman | 2006-12-02 01:33:22 +0100 (Sat, 02 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/memory.h @@ -23867,7 +24269,7 @@ Changed paths: Fixed compilation failure without GC_DEBUG. ------------------------------------------------------------------------ -r1994 | hammera | 2006-12-01 09:08:14 -0700 (Fri, 01 Dec 2006) | 2 lines +r1994 | hammera | 2006-12-01 17:08:14 +0100 (Fri, 01 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -23877,14 +24279,14 @@ Changed paths: Added gc debug option. ------------------------------------------------------------------------ -r1993 | jcbowman | 2006-12-01 08:44:32 -0700 (Fri, 01 Dec 2006) | 2 lines +r1993 | jcbowman | 2006-12-01 16:44:32 +0100 (Fri, 01 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Remove shift from transform in Rotate(pair). ------------------------------------------------------------------------ -r1992 | hammera | 2006-11-30 21:52:19 -0700 (Thu, 30 Nov 2006) | 2 lines +r1992 | hammera | 2006-12-01 05:52:19 +0100 (Fri, 01 Dec 2006) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -23900,7 +24302,7 @@ Changed paths: Added multiline option for prompt. ------------------------------------------------------------------------ -r1991 | jcbowman | 2006-11-30 08:54:39 -0700 (Thu, 30 Nov 2006) | 4 lines +r1991 | jcbowman | 2006-11-30 16:54:39 +0100 (Thu, 30 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/animate.asy @@ -23921,14 +24323,14 @@ Renamed pdfanim.sty to pdfanim_temp.sty pending 0.53 release of official pdfanim Delete temporary image and multipage PDF files used for animations. ------------------------------------------------------------------------ -r1990 | jcbowman | 2006-11-29 13:36:09 -0700 (Wed, 29 Nov 2006) | 2 lines +r1990 | jcbowman | 2006-11-29 21:36:09 +0100 (Wed, 29 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Added Rotate(pair), fixed alignment positioning transformation. ------------------------------------------------------------------------ -r1989 | jcbowman | 2006-11-29 13:04:47 -0700 (Wed, 29 Nov 2006) | 2 lines +r1989 | jcbowman | 2006-11-29 21:04:47 +0100 (Wed, 29 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/PDFAnim_Guide.tex M /trunk/asymptote/doc/asymptote.texi @@ -23937,7 +24339,7 @@ Changed paths: Changed pdfanim version to 0.52A. ------------------------------------------------------------------------ -r1988 | jcbowman | 2006-11-29 12:00:23 -0700 (Wed, 29 Nov 2006) | 3 lines +r1988 | jcbowman | 2006-11-29 20:00:23 +0100 (Wed, 29 Nov 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/animations/wheel.asy @@ -23949,14 +24351,14 @@ Split slidedemo.asy into slidedemo.asy and slidemovie.asy. Minor diagnostic and documentation tweaks. ------------------------------------------------------------------------ -r1987 | jcbowman | 2006-11-29 11:22:35 -0700 (Wed, 29 Nov 2006) | 2 lines +r1987 | jcbowman | 2006-11-29 19:22:35 +0100 (Wed, 29 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/slidedemo.asy Move settings.tex="pdflatex" earlier. ------------------------------------------------------------------------ -r1986 | jcbowman | 2006-11-28 23:15:49 -0700 (Tue, 28 Nov 2006) | 2 lines +r1986 | jcbowman | 2006-11-29 07:15:49 +0100 (Wed, 29 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -23967,7 +24369,7 @@ Changed paths: Added embedded U3D example. ------------------------------------------------------------------------ -r1985 | jcbowman | 2006-11-28 18:08:46 -0700 (Tue, 28 Nov 2006) | 14 lines +r1985 | jcbowman | 2006-11-29 02:08:46 +0100 (Wed, 29 Nov 2006) | 14 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/animate.asy @@ -24020,7 +24422,7 @@ Fixed rescaling bug. Allow writing to local directory only; added -global option to override. ------------------------------------------------------------------------ -r1984 | hammera | 2006-11-26 21:50:21 -0700 (Sun, 26 Nov 2006) | 2 lines +r1984 | hammera | 2006-11-27 05:50:21 +0100 (Mon, 27 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -24028,7 +24430,7 @@ Changed paths: Free some of the cached data in the abstract syntax tree. ------------------------------------------------------------------------ -r1983 | hammera | 2006-11-25 15:32:18 -0700 (Sat, 25 Nov 2006) | 2 lines +r1983 | hammera | 2006-11-25 23:32:18 +0100 (Sat, 25 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/entry.h M /trunk/asymptote/env.h @@ -24038,7 +24440,7 @@ Changed paths: Added collapseScope, so empty scopes won't pile up in runnable-at-a-time mode. ------------------------------------------------------------------------ -r1982 | jcbowman | 2006-11-17 16:12:36 -0700 (Fri, 17 Nov 2006) | 4 lines +r1982 | jcbowman | 2006-11-18 00:12:36 +0100 (Sat, 18 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain_debugger.asy M /trunk/asymptote/fileio.h @@ -24048,14 +24450,14 @@ Turn off scrolling during debugging. Fixed typo in debugging help. ------------------------------------------------------------------------ -r1981 | jcbowman | 2006-11-17 00:22:16 -0700 (Fri, 17 Nov 2006) | 2 lines +r1981 | jcbowman | 2006-11-17 08:22:16 +0100 (Fri, 17 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Added routine to return an arbitrary point inside a cyclic path g. ------------------------------------------------------------------------ -r1980 | jcbowman | 2006-11-17 00:20:18 -0700 (Fri, 17 Nov 2006) | 4 lines +r1980 | jcbowman | 2006-11-17 08:20:18 +0100 (Fri, 17 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/path.cc @@ -24064,14 +24466,14 @@ Guard against duplicate nodes in inside(). Speed up inside() by testing for points outside of bounding box. ------------------------------------------------------------------------ -r1979 | jcbowman | 2006-11-16 22:24:45 -0700 (Thu, 16 Nov 2006) | 2 lines +r1979 | jcbowman | 2006-11-17 06:24:45 +0100 (Fri, 17 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fix numerical precision problem in windingnumber routine. ------------------------------------------------------------------------ -r1978 | hammera | 2006-11-16 21:14:42 -0700 (Thu, 16 Nov 2006) | 2 lines +r1978 | hammera | 2006-11-17 05:14:42 +0100 (Fri, 17 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/parser.cc M /trunk/asymptote/settings.cc @@ -24079,21 +24481,21 @@ Changed paths: Reformatted long lines in the code. ------------------------------------------------------------------------ -r1977 | hammera | 2006-11-16 21:03:17 -0700 (Thu, 16 Nov 2006) | 2 lines +r1977 | hammera | 2006-11-17 05:03:17 +0100 (Fri, 17 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc More string constant formatting. ------------------------------------------------------------------------ -r1976 | hammera | 2006-11-16 20:56:40 -0700 (Thu, 16 Nov 2006) | 2 lines +r1976 | hammera | 2006-11-17 04:56:40 +0100 (Fri, 17 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Split string constant to fit on line. (minor) ------------------------------------------------------------------------ -r1975 | jcbowman | 2006-11-15 17:57:34 -0700 (Wed, 15 Nov 2006) | 4 lines +r1975 | jcbowman | 2006-11-16 01:57:34 +0100 (Thu, 16 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain_strings.asy M /trunk/asymptote/doc/asymptote.texi @@ -24103,14 +24505,14 @@ Added string(real x) function. Removed unneeded public qualifiers from documentation. ------------------------------------------------------------------------ -r1974 | jcbowman | 2006-11-15 17:49:19 -0700 (Wed, 15 Nov 2006) | 2 lines +r1974 | jcbowman | 2006-11-16 01:49:19 +0100 (Thu, 16 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/wce Changed == to standard bash = syntax. ------------------------------------------------------------------------ -r1973 | jcbowman | 2006-11-14 22:27:47 -0700 (Tue, 14 Nov 2006) | 2 lines +r1973 | jcbowman | 2006-11-15 06:27:47 +0100 (Wed, 15 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/path.cc @@ -24120,14 +24522,14 @@ Changed paths: Make winding number of a cyclic path relative to a point visible to users. ------------------------------------------------------------------------ -r1972 | jcbowman | 2006-11-14 14:40:00 -0700 (Tue, 14 Nov 2006) | 2 lines +r1972 | jcbowman | 2006-11-14 22:40:00 +0100 (Tue, 14 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/leastsquares.asy Added example of cropping to axis limits. ------------------------------------------------------------------------ -r1971 | jcbowman | 2006-11-14 14:37:16 -0700 (Tue, 14 Nov 2006) | 2 lines +r1971 | jcbowman | 2006-11-14 22:37:16 +0100 (Tue, 14 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/brokenaxis.asy M /trunk/asymptote/util.h @@ -24135,7 +24537,7 @@ Changed paths: Minor updates. ------------------------------------------------------------------------ -r1970 | jcbowman | 2006-11-13 22:13:33 -0700 (Mon, 13 Nov 2006) | 2 lines +r1970 | jcbowman | 2006-11-14 06:13:33 +0100 (Tue, 14 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/settings.cc @@ -24145,7 +24547,7 @@ Changed paths: Fixed recently introduced bugs with -o option. ------------------------------------------------------------------------ -r1969 | jcbowman | 2006-11-13 19:52:15 -0700 (Mon, 13 Nov 2006) | 2 lines +r1969 | jcbowman | 2006-11-14 03:52:15 +0100 (Tue, 14 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/cube.asy M /trunk/asymptote/examples/animations/wavepacket.asy @@ -24154,7 +24556,7 @@ Changed paths: Updated examples. ------------------------------------------------------------------------ -r1968 | jcbowman | 2006-11-13 19:43:46 -0700 (Mon, 13 Nov 2006) | 4 lines +r1968 | jcbowman | 2006-11-14 03:43:46 +0100 (Tue, 14 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/base/plain_picture.asy @@ -24167,21 +24569,21 @@ with a independent call to void unitsize(picture pic=currentpicture, real x, real y=x); ------------------------------------------------------------------------ -r1967 | jcbowman | 2006-11-13 08:55:17 -0700 (Mon, 13 Nov 2006) | 2 lines +r1967 | jcbowman | 2006-11-13 16:55:17 +0100 (Mon, 13 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/CDlabel.asy Remove unused line. ------------------------------------------------------------------------ -r1966 | jcbowman | 2006-11-13 08:50:58 -0700 (Mon, 13 Nov 2006) | 2 lines +r1966 | jcbowman | 2006-11-13 16:50:58 +0100 (Mon, 13 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/CDlabel.asy Minor adjustment. ------------------------------------------------------------------------ -r1965 | jcbowman | 2006-11-13 08:46:54 -0700 (Mon, 13 Nov 2006) | 3 lines +r1965 | jcbowman | 2006-11-13 16:46:54 +0100 (Mon, 13 Nov 2006) | 3 lines Changed paths: M /trunk/asymptote/base/babel.asy M /trunk/asymptote/base/plain_picture.asy @@ -24191,7 +24593,7 @@ Make clipping set truesize coordinate to 0; updated CDlabel to illustrate this fix. ------------------------------------------------------------------------ -r1964 | jcbowman | 2006-11-13 08:26:24 -0700 (Mon, 13 Nov 2006) | 2 lines +r1964 | jcbowman | 2006-11-13 16:26:24 +0100 (Mon, 13 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/CDlabel.asy M /trunk/asymptote/doc/asymptote.texi @@ -24199,14 +24601,14 @@ Changed paths: Added umlauts again. ------------------------------------------------------------------------ -r1963 | jcbowman | 2006-11-12 09:45:34 -0700 (Sun, 12 Nov 2006) | 2 lines +r1963 | jcbowman | 2006-11-12 17:45:34 +0100 (Sun, 12 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor updates. ------------------------------------------------------------------------ -r1962 | jcbowman | 2006-11-11 22:03:27 -0700 (Sat, 11 Nov 2006) | 5 lines +r1962 | jcbowman | 2006-11-12 06:03:27 +0100 (Sun, 12 Nov 2006) | 5 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/doc/asymptote.texi @@ -24220,14 +24622,14 @@ pictures. Support unitsize, xunitsize, and yunitsize in animations. ------------------------------------------------------------------------ -r1961 | jcbowman | 2006-11-09 15:00:00 -0700 (Thu, 09 Nov 2006) | 2 lines +r1961 | jcbowman | 2006-11-09 23:00:00 +0100 (Thu, 09 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Update documentation. ------------------------------------------------------------------------ -r1960 | jcbowman | 2006-11-09 14:59:31 -0700 (Thu, 09 Nov 2006) | 4 lines +r1960 | jcbowman | 2006-11-09 22:59:31 +0100 (Thu, 09 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/drawfill.cc @@ -24240,7 +24642,7 @@ Fixed segmentation fault. Add default argument to tensorshade signature. ------------------------------------------------------------------------ -r1959 | jcbowman | 2006-11-08 22:10:20 -0700 (Wed, 08 Nov 2006) | 2 lines +r1959 | jcbowman | 2006-11-09 06:10:20 +0100 (Thu, 09 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -24249,28 +24651,28 @@ Changed paths: Make seconds() portable (e.g. under CYGWIN). ------------------------------------------------------------------------ -r1958 | jcbowman | 2006-11-07 15:51:09 -0700 (Tue, 07 Nov 2006) | 2 lines +r1958 | jcbowman | 2006-11-07 23:51:09 +0100 (Tue, 07 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor updates. ------------------------------------------------------------------------ -r1957 | jcbowman | 2006-11-07 15:27:16 -0700 (Tue, 07 Nov 2006) | 2 lines +r1957 | jcbowman | 2006-11-07 23:27:16 +0100 (Tue, 07 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/process.cc Overload postRun in iprompt. ------------------------------------------------------------------------ -r1956 | hammera | 2006-11-07 10:48:58 -0700 (Tue, 07 Nov 2006) | 2 lines +r1956 | hammera | 2006-11-07 18:48:58 +0100 (Tue, 07 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Changed a code example to use a variable inside the loop. ------------------------------------------------------------------------ -r1955 | jcbowman | 2006-11-06 23:13:11 -0700 (Mon, 06 Nov 2006) | 2 lines +r1955 | jcbowman | 2006-11-07 07:13:11 +0100 (Tue, 07 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/plain_picture.asy @@ -24287,7 +24689,7 @@ Changed paths: Implemented tensor and Coons shading. ------------------------------------------------------------------------ -r1954 | jcbowman | 2006-11-05 02:26:36 -0700 (Sun, 05 Nov 2006) | 2 lines +r1954 | jcbowman | 2006-11-05 10:26:36 +0100 (Sun, 05 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -24295,7 +24697,7 @@ Changed paths: Incremented version to 1.19svn. ------------------------------------------------------------------------ -r1953 | jcbowman | 2006-11-05 00:24:17 -0700 (Sun, 05 Nov 2006) | 2 lines +r1953 | jcbowman | 2006-11-05 08:24:17 +0100 (Sun, 05 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/diatom.asy M /trunk/asymptote/doc/diatom.csv @@ -24303,14 +24705,14 @@ Changed paths: Added example showing interaction of fixed-sized and scaled coordinates. ------------------------------------------------------------------------ -r1952 | jcbowman | 2006-11-04 23:39:41 -0700 (Sat, 04 Nov 2006) | 2 lines +r1952 | jcbowman | 2006-11-05 07:39:41 +0100 (Sun, 05 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Updated FAQ to include discussion of static variable allocation. ------------------------------------------------------------------------ -r1951 | jcbowman | 2006-11-04 22:38:10 -0700 (Sat, 04 Nov 2006) | 2 lines +r1951 | jcbowman | 2006-11-05 06:38:10 +0100 (Sun, 05 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -24319,7 +24721,7 @@ Changed paths: Make labelx, labely, xtick, and ytick respect graph (e.g. logarithmic) scaling. ------------------------------------------------------------------------ -r1950 | jcbowman | 2006-11-04 17:46:14 -0700 (Sat, 04 Nov 2006) | 2 lines +r1950 | jcbowman | 2006-11-05 01:46:14 +0100 (Sun, 05 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -24327,14 +24729,14 @@ Changed paths: Updated FAQ and documentation. ------------------------------------------------------------------------ -r1949 | jcbowman | 2006-11-04 11:49:12 -0700 (Sat, 04 Nov 2006) | 2 lines +r1949 | jcbowman | 2006-11-04 19:49:12 +0100 (Sat, 04 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/castop.h Treat single reads just like array reads: in line mode, move position past any final eol. ------------------------------------------------------------------------ -r1948 | jcbowman | 2006-11-04 01:09:14 -0700 (Sat, 04 Nov 2006) | 11 lines +r1948 | jcbowman | 2006-11-04 09:09:14 +0100 (Sat, 04 Nov 2006) | 11 lines Changed paths: M /trunk/asymptote/base/embed.asy M /trunk/asymptote/base/fontsize.asy @@ -24362,7 +24764,7 @@ dependency. Check for latex mode in usepackage and minilatex. ------------------------------------------------------------------------ -r1947 | jcbowman | 2006-11-03 22:25:12 -0700 (Fri, 03 Nov 2006) | 2 lines +r1947 | jcbowman | 2006-11-04 06:25:12 +0100 (Sat, 04 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/drawclipbegin.h M /trunk/asymptote/drawelement.h @@ -24374,7 +24776,7 @@ Changed paths: Fixed clipping (UnFill) problem by avoiding LaTeX \put. ------------------------------------------------------------------------ -r1946 | jcbowman | 2006-11-03 21:55:27 -0700 (Fri, 03 Nov 2006) | 2 lines +r1946 | jcbowman | 2006-11-04 05:55:27 +0100 (Sat, 04 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/texfile.h @@ -24382,20 +24784,20 @@ Changed paths: Fixed pen caching problem. ------------------------------------------------------------------------ -r1945 | cmsavage | 2006-11-03 16:14:45 -0700 (Fri, 03 Nov 2006) | 1 line +r1945 | cmsavage | 2006-11-04 00:14:45 +0100 (Sat, 04 Nov 2006) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated palette documentation. ------------------------------------------------------------------------ -r1944 | jcbowman | 2006-11-03 08:51:19 -0700 (Fri, 03 Nov 2006) | 2 lines +r1944 | jcbowman | 2006-11-03 16:51:19 +0100 (Fri, 03 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Cache a separate copy of pen for tex mode. ------------------------------------------------------------------------ -r1943 | jcbowman | 2006-11-03 00:59:03 -0700 (Fri, 03 Nov 2006) | 4 lines +r1943 | jcbowman | 2006-11-03 08:59:03 +0100 (Fri, 03 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -24406,14 +24808,14 @@ Fix max(empty array) error message. Implement minbound and maxbound also for arrays of pairs and triples. ------------------------------------------------------------------------ -r1942 | jcbowman | 2006-11-03 00:54:56 -0700 (Fri, 03 Nov 2006) | 2 lines +r1942 | jcbowman | 2006-11-03 08:54:56 +0100 (Fri, 03 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Check for an existing viewer associated with the given outname. ------------------------------------------------------------------------ -r1941 | jcbowman | 2006-11-03 00:14:25 -0700 (Fri, 03 Nov 2006) | 4 lines +r1941 | jcbowman | 2006-11-03 08:14:25 +0100 (Fri, 03 Nov 2006) | 4 lines Changed paths: M /trunk/asymptote/process.cc @@ -24422,21 +24824,21 @@ interactive flag: if exitFunction fails, interactive will not get reset and cleanup will not get called at all. ------------------------------------------------------------------------ -r1940 | jcbowman | 2006-11-02 19:32:30 -0700 (Thu, 02 Nov 2006) | 2 lines +r1940 | jcbowman | 2006-11-03 03:32:30 +0100 (Fri, 03 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/imagehistogram.asy Use bin centers for point array. ------------------------------------------------------------------------ -r1939 | jcbowman | 2006-11-02 10:43:32 -0700 (Thu, 02 Nov 2006) | 2 lines +r1939 | jcbowman | 2006-11-02 18:43:32 +0100 (Thu, 02 Nov 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/imagehistogram.asy Added image histogram and contour example. ------------------------------------------------------------------------ -r1938 | jcbowman | 2006-11-02 10:08:39 -0700 (Thu, 02 Nov 2006) | 2 lines +r1938 | jcbowman | 2006-11-02 18:08:39 +0100 (Thu, 02 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/examples/parametricsurface.asy @@ -24444,14 +24846,14 @@ Changed paths: Fixed drawing of mesh only. ------------------------------------------------------------------------ -r1937 | jcbowman | 2006-11-02 10:03:21 -0700 (Thu, 02 Nov 2006) | 2 lines +r1937 | jcbowman | 2006-11-02 18:03:21 +0100 (Thu, 02 Nov 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Check for division by zero in scale. ------------------------------------------------------------------------ -r1936 | jcbowman | 2006-10-31 01:31:16 -0700 (Tue, 31 Oct 2006) | 2 lines +r1936 | jcbowman | 2006-10-31 09:31:16 +0100 (Tue, 31 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -24459,7 +24861,7 @@ Changed paths: Incremented version to 1.18svn. ------------------------------------------------------------------------ -r1935 | jcbowman | 2006-10-31 00:18:54 -0700 (Tue, 31 Oct 2006) | 4 lines +r1935 | jcbowman | 2006-10-31 08:18:54 +0100 (Tue, 31 Oct 2006) | 4 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/symbol.cc @@ -24470,7 +24872,7 @@ Work around garbage collection bus error on MacOS X. Call GC_Init during static initialization. ------------------------------------------------------------------------ -r1934 | jcbowman | 2006-10-30 12:22:37 -0700 (Mon, 30 Oct 2006) | 2 lines +r1934 | jcbowman | 2006-10-30 20:22:37 +0100 (Mon, 30 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy M /trunk/asymptote/doc/histogram.asy @@ -24478,7 +24880,7 @@ Changed paths: Added a uniform histogram routine. ------------------------------------------------------------------------ -r1933 | jcbowman | 2006-10-30 11:41:38 -0700 (Mon, 30 Oct 2006) | 4 lines +r1933 | jcbowman | 2006-10-30 19:41:38 +0100 (Mon, 30 Oct 2006) | 4 lines Changed paths: M /trunk/asymptote/base/stats.asy M /trunk/asymptote/doc/histogram.asy @@ -24488,7 +24890,7 @@ with other uniform frequency routines and image and graph routines. This change is backwards incompatible. ------------------------------------------------------------------------ -r1932 | jcbowman | 2006-10-28 19:37:26 -0600 (Sat, 28 Oct 2006) | 2 lines +r1932 | jcbowman | 2006-10-29 02:37:26 +0100 (Sun, 29 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/parser.cc M /trunk/asymptote/parser.h @@ -24500,41 +24902,41 @@ Changed paths: Reduce number of mem::string/std::string conversions. ------------------------------------------------------------------------ -r1931 | cmsavage | 2006-10-27 14:38:42 -0600 (Fri, 27 Oct 2006) | 1 line +r1931 | cmsavage | 2006-10-27 22:38:42 +0200 (Fri, 27 Oct 2006) | 1 line Changed paths: M /trunk/asymptote/base/stats.asy Added 1d/2d frequency routines optimized for regular bin sizes. ------------------------------------------------------------------------ -r1930 | jcbowman | 2006-10-27 14:13:39 -0600 (Fri, 27 Oct 2006) | 2 lines +r1930 | jcbowman | 2006-10-27 22:13:39 +0200 (Fri, 27 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Updated FAQ. ------------------------------------------------------------------------ -r1929 | jcbowman | 2006-10-26 22:27:54 -0600 (Thu, 26 Oct 2006) | 2 lines +r1929 | jcbowman | 2006-10-27 06:27:54 +0200 (Fri, 27 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Improve optimization of 2d frequency routine. ------------------------------------------------------------------------ -r1928 | jcbowman | 2006-10-26 22:13:46 -0600 (Thu, 26 Oct 2006) | 2 lines +r1928 | jcbowman | 2006-10-27 06:13:46 +0200 (Fri, 27 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Declare fixed-sized arrays. ------------------------------------------------------------------------ -r1927 | jcbowman | 2006-10-26 22:07:18 -0600 (Thu, 26 Oct 2006) | 2 lines +r1927 | jcbowman | 2006-10-27 06:07:18 +0200 (Fri, 27 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Optimized 2d frequency routine. ------------------------------------------------------------------------ -r1926 | jcbowman | 2006-10-25 01:41:55 -0600 (Wed, 25 Oct 2006) | 2 lines +r1926 | jcbowman | 2006-10-25 09:41:55 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -24542,14 +24944,14 @@ Changed paths: Incremented version to 1.17svn. ------------------------------------------------------------------------ -r1925 | jcbowman | 2006-10-25 00:26:11 -0600 (Wed, 25 Oct 2006) | 2 lines +r1925 | jcbowman | 2006-10-25 08:26:11 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Removed page break. ------------------------------------------------------------------------ -r1924 | jcbowman | 2006-10-24 23:50:16 -0600 (Tue, 24 Oct 2006) | 2 lines +r1924 | jcbowman | 2006-10-25 07:50:16 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_picture.asy @@ -24557,7 +24959,7 @@ Changed paths: Use pic.scaling in graph.asy. ------------------------------------------------------------------------ -r1923 | jcbowman | 2006-10-24 23:43:12 -0600 (Tue, 24 Oct 2006) | 2 lines +r1923 | jcbowman | 2006-10-25 07:43:12 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/parser.cc M /trunk/asymptote/parser.h @@ -24565,7 +24967,7 @@ Changed paths: Move using std::string out of header file; pass references to strings. ------------------------------------------------------------------------ -r1922 | jcbowman | 2006-10-24 23:34:58 -0600 (Tue, 24 Oct 2006) | 2 lines +r1922 | jcbowman | 2006-10-25 07:34:58 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/process.cc M /trunk/asymptote/process.h @@ -24575,21 +24977,21 @@ Changed paths: Fixed memory leak. ------------------------------------------------------------------------ -r1921 | jcbowman | 2006-10-24 21:50:49 -0600 (Tue, 24 Oct 2006) | 2 lines +r1921 | jcbowman | 2006-10-25 05:50:49 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated credits. ------------------------------------------------------------------------ -r1920 | jcbowman | 2006-10-24 21:50:33 -0600 (Tue, 24 Oct 2006) | 2 lines +r1920 | jcbowman | 2006-10-25 05:50:33 +0200 (Wed, 25 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Added 2d version of frequency binning routine. ------------------------------------------------------------------------ -r1919 | jcbowman | 2006-10-24 11:28:01 -0600 (Tue, 24 Oct 2006) | 10 lines +r1919 | jcbowman | 2006-10-24 19:28:01 +0200 (Tue, 24 Oct 2006) | 10 lines Changed paths: M /trunk/asymptote/base/plain_markers.asy M /trunk/asymptote/base/plain_picture.asy @@ -24608,35 +25010,35 @@ picture.calculateTransform now returns the actual transform used for fitting in the case where only an approximate picture size was available. ------------------------------------------------------------------------ -r1918 | jcbowman | 2006-10-23 12:31:55 -0600 (Mon, 23 Oct 2006) | 2 lines +r1918 | jcbowman | 2006-10-23 20:31:55 +0200 (Mon, 23 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Changed ARCH to i386 since that is the only case that currently applies. ------------------------------------------------------------------------ -r1917 | jcbowman | 2006-10-23 12:30:33 -0600 (Mon, 23 Oct 2006) | 2 lines +r1917 | jcbowman | 2006-10-23 20:30:33 +0200 (Mon, 23 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Fixed \usepackage[inline]{asymptote}. ------------------------------------------------------------------------ -r1916 | jcbowman | 2006-10-22 00:58:10 -0600 (Sun, 22 Oct 2006) | 2 lines +r1916 | jcbowman | 2006-10-22 08:58:10 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Run latex 3 times on CAD. ------------------------------------------------------------------------ -r1915 | jcbowman | 2006-10-22 00:50:57 -0600 (Sun, 22 Oct 2006) | 2 lines +r1915 | jcbowman | 2006-10-22 08:50:57 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Remove temporary CAD files. ------------------------------------------------------------------------ -r1914 | jcbowman | 2006-10-22 00:41:51 -0600 (Sun, 22 Oct 2006) | 2 lines +r1914 | jcbowman | 2006-10-22 08:41:51 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -24644,7 +25046,7 @@ Changed paths: Incremented version to 1.16svn. ------------------------------------------------------------------------ -r1913 | jcbowman | 2006-10-21 22:46:25 -0600 (Sat, 21 Oct 2006) | 2 lines +r1913 | jcbowman | 2006-10-22 06:46:25 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: A /trunk/asymptote/base/CAD.asy A /trunk/asymptote/doc/CAD.tex @@ -24655,14 +25057,14 @@ Changed paths: Added Mark Henning's 2D CAD package (DIN 15). ------------------------------------------------------------------------ -r1912 | jcbowman | 2006-10-21 22:23:26 -0600 (Sat, 21 Oct 2006) | 2 lines +r1912 | jcbowman | 2006-10-22 06:23:26 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document restriction of annotations to tex and latex tex engines. ------------------------------------------------------------------------ -r1911 | jcbowman | 2006-10-21 22:20:13 -0600 (Sat, 21 Oct 2006) | 2 lines +r1911 | jcbowman | 2006-10-22 06:20:13 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc M /trunk/asymptote/texfile.h @@ -24670,7 +25072,7 @@ Changed paths: Make graphics labels work with tex and pdftex engines. ------------------------------------------------------------------------ -r1910 | jcbowman | 2006-10-21 21:00:37 -0600 (Sat, 21 Oct 2006) | 4 lines +r1910 | jcbowman | 2006-10-22 05:00:37 +0200 (Sun, 22 Oct 2006) | 4 lines Changed paths: M /trunk/asymptote/base/slide.asy A /trunk/asymptote/doc/CDlabel.asy @@ -24681,14 +25083,14 @@ Added CDlabel example to illustrate clipping of graphics. Changed overfull slide error to warning. ------------------------------------------------------------------------ -r1909 | jcbowman | 2006-10-21 18:00:29 -0600 (Sat, 21 Oct 2006) | 2 lines +r1909 | jcbowman | 2006-10-22 02:00:29 +0200 (Sun, 22 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove temporary pdf files. ------------------------------------------------------------------------ -r1908 | jcbowman | 2006-10-21 14:24:39 -0600 (Sat, 21 Oct 2006) | 2 lines +r1908 | jcbowman | 2006-10-21 22:24:39 +0200 (Sat, 21 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/examples/animations/cube.asy @@ -24696,28 +25098,28 @@ Changed paths: Fixed cube animation. ------------------------------------------------------------------------ -r1907 | jcbowman | 2006-10-21 00:17:26 -0600 (Sat, 21 Oct 2006) | 2 lines +r1907 | jcbowman | 2006-10-21 08:17:26 +0200 (Sat, 21 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Force unitlength=1pt in inline tex mode. ------------------------------------------------------------------------ -r1906 | jcbowman | 2006-10-21 00:00:53 -0600 (Sat, 21 Oct 2006) | 2 lines +r1906 | jcbowman | 2006-10-21 08:00:53 +0200 (Sat, 21 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/array/determinant.asy Added further determinant of singular matrix tests. ------------------------------------------------------------------------ -r1905 | jcbowman | 2006-10-20 23:54:40 -0600 (Fri, 20 Oct 2006) | 2 lines +r1905 | jcbowman | 2006-10-21 07:54:40 +0200 (Sat, 21 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Determinant of a singular matrix should return 0, not an error. ------------------------------------------------------------------------ -r1904 | jcbowman | 2006-10-19 23:56:09 -0600 (Thu, 19 Oct 2006) | 3 lines +r1904 | jcbowman | 2006-10-20 07:56:09 +0200 (Fri, 20 Oct 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -24730,7 +25132,7 @@ Use LaTeX color package for latex and pdflatex to keep latex informed of current color. ------------------------------------------------------------------------ -r1903 | jcbowman | 2006-10-19 23:54:14 -0600 (Thu, 19 Oct 2006) | 2 lines +r1903 | jcbowman | 2006-10-20 07:54:14 +0200 (Fri, 20 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy M /trunk/asymptote/drawlabel.cc @@ -24738,7 +25140,7 @@ Changed paths: Fixed label fuzz. ------------------------------------------------------------------------ -r1902 | jcbowman | 2006-10-16 17:01:07 -0600 (Mon, 16 Oct 2006) | 2 lines +r1902 | jcbowman | 2006-10-17 01:01:07 +0200 (Tue, 17 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/drawfill.h @@ -24746,21 +25148,21 @@ Changed paths: Fixed incorrect path bounds in lattice shade. ------------------------------------------------------------------------ -r1901 | jcbowman | 2006-10-16 13:07:45 -0600 (Mon, 16 Oct 2006) | 2 lines +r1901 | jcbowman | 2006-10-16 21:07:45 +0200 (Mon, 16 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r1900 | jcbowman | 2006-10-16 07:52:33 -0600 (Mon, 16 Oct 2006) | 2 lines +r1900 | jcbowman | 2006-10-16 15:52:33 +0200 (Mon, 16 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Another attempt at fixing compilation problem under MacOS X 10.3.9 (cf. r1290). ------------------------------------------------------------------------ -r1899 | jcbowman | 2006-10-15 19:40:33 -0600 (Sun, 15 Oct 2006) | 4 lines +r1899 | jcbowman | 2006-10-16 03:40:33 +0200 (Mon, 16 Oct 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -24770,7 +25172,7 @@ Fixed compilation problem under MacOS X 10.3.9. Rename configuation variable latex to texpath in documentation. ------------------------------------------------------------------------ -r1898 | jcbowman | 2006-10-15 17:00:58 -0600 (Sun, 15 Oct 2006) | 6 lines +r1898 | jcbowman | 2006-10-16 01:00:58 +0200 (Mon, 16 Oct 2006) | 6 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asymptote.texi @@ -24783,14 +25185,14 @@ frame, including fonts and true size objects) can enforce even better compliance in such cases, but should not normally be required. ------------------------------------------------------------------------ -r1897 | jcbowman | 2006-10-14 23:16:14 -0600 (Sat, 14 Oct 2006) | 2 lines +r1897 | jcbowman | 2006-10-15 07:16:14 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Minor clarification. ------------------------------------------------------------------------ -r1896 | jcbowman | 2006-10-14 22:42:12 -0600 (Sat, 14 Oct 2006) | 2 lines +r1896 | jcbowman | 2006-10-15 06:42:12 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -24803,35 +25205,35 @@ Changed paths: Remove gv patches since these are all in the long-awaited gv-3.6.2 release. ------------------------------------------------------------------------ -r1895 | jcbowman | 2006-10-14 22:21:17 -0600 (Sat, 14 Oct 2006) | 2 lines +r1895 | jcbowman | 2006-10-15 06:21:17 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.15svn. ------------------------------------------------------------------------ -r1894 | jcbowman | 2006-10-14 19:50:30 -0600 (Sat, 14 Oct 2006) | 2 lines +r1894 | jcbowman | 2006-10-15 03:50:30 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/poster.asy Adjusted example. ------------------------------------------------------------------------ -r1893 | jcbowman | 2006-10-14 19:23:21 -0600 (Sat, 14 Oct 2006) | 2 lines +r1893 | jcbowman | 2006-10-15 03:23:21 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Updated FAQ. ------------------------------------------------------------------------ -r1892 | jcbowman | 2006-10-14 19:11:41 -0600 (Sat, 14 Oct 2006) | 2 lines +r1892 | jcbowman | 2006-10-15 03:11:41 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented filloutside. ------------------------------------------------------------------------ -r1891 | jcbowman | 2006-10-14 18:50:37 -0600 (Sat, 14 Oct 2006) | 2 lines +r1891 | jcbowman | 2006-10-15 02:50:37 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.h M /trunk/asymptote/main.cc @@ -24841,14 +25243,14 @@ Changed paths: Fixed cxx warnings. ------------------------------------------------------------------------ -r1890 | jcbowman | 2006-10-14 16:45:23 -0600 (Sat, 14 Oct 2006) | 2 lines +r1890 | jcbowman | 2006-10-15 00:45:23 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc Added missing space. ------------------------------------------------------------------------ -r1889 | jcbowman | 2006-10-14 16:40:18 -0600 (Sat, 14 Oct 2006) | 2 lines +r1889 | jcbowman | 2006-10-15 00:40:18 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/psfile.cc M /trunk/asymptote/tests/Makefile @@ -24856,7 +25258,7 @@ Changed paths: Support color fonts for pdftex and pdflatex. ------------------------------------------------------------------------ -r1888 | jcbowman | 2006-10-14 16:21:59 -0600 (Sat, 14 Oct 2006) | 2 lines +r1888 | jcbowman | 2006-10-15 00:21:59 +0200 (Sun, 15 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -24869,7 +25271,7 @@ Changed paths: Implement ability to draw images directly from a two-dimensional pen array. ------------------------------------------------------------------------ -r1887 | jcbowman | 2006-10-14 15:26:59 -0600 (Sat, 14 Oct 2006) | 2 lines +r1887 | jcbowman | 2006-10-14 23:26:59 +0200 (Sat, 14 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/doc/asymptote.texi @@ -24878,7 +25280,7 @@ Changed paths: Fixed label alignment transformation; implemented general scaleless routine. ------------------------------------------------------------------------ -r1886 | jcbowman | 2006-10-14 02:03:40 -0600 (Sat, 14 Oct 2006) | 2 lines +r1886 | jcbowman | 2006-10-14 10:03:40 +0200 (Sat, 14 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/runtime.in @@ -24886,14 +25288,14 @@ Changed paths: Fix readline test. ------------------------------------------------------------------------ -r1885 | jcbowman | 2006-10-13 23:03:41 -0600 (Fri, 13 Oct 2006) | 2 lines +r1885 | jcbowman | 2006-10-14 07:03:41 +0200 (Sat, 14 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fix test for readline 4.2. ------------------------------------------------------------------------ -r1884 | jcbowman | 2006-10-13 22:32:56 -0600 (Fri, 13 Oct 2006) | 2 lines +r1884 | jcbowman | 2006-10-14 06:32:56 +0200 (Sat, 14 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -24901,21 +25303,21 @@ Changed paths: Disable support for readline versions < 4.2. ------------------------------------------------------------------------ -r1883 | jcbowman | 2006-10-13 16:50:51 -0600 (Fri, 13 Oct 2006) | 2 lines +r1883 | jcbowman | 2006-10-14 00:50:51 +0200 (Sat, 14 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Scale label fuzz to height+depth not width. ------------------------------------------------------------------------ -r1882 | jcbowman | 2006-10-12 18:01:22 -0600 (Thu, 12 Oct 2006) | 2 lines +r1882 | jcbowman | 2006-10-13 02:01:22 +0200 (Fri, 13 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Define pdfoutput if necessary for older versions of latex. ------------------------------------------------------------------------ -r1881 | jcbowman | 2006-10-12 17:30:14 -0600 (Thu, 12 Oct 2006) | 2 lines +r1881 | jcbowman | 2006-10-13 01:30:14 +0200 (Fri, 13 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -24932,14 +25334,14 @@ Changed paths: Implement tex and pdftex TeX engines. ------------------------------------------------------------------------ -r1880 | jcbowman | 2006-10-12 00:05:50 -0600 (Thu, 12 Oct 2006) | 2 lines +r1880 | jcbowman | 2006-10-12 08:05:50 +0200 (Thu, 12 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Implemented more robust label fuzz calculation. ------------------------------------------------------------------------ -r1879 | jcbowman | 2006-10-11 21:48:25 -0600 (Wed, 11 Oct 2006) | 4 lines +r1879 | jcbowman | 2006-10-12 05:48:25 +0200 (Thu, 12 Oct 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asymptote.texi @@ -24951,7 +25353,7 @@ Crop generated pdf files. Fixed pdf label transforms. ------------------------------------------------------------------------ -r1878 | jcbowman | 2006-10-11 16:41:37 -0600 (Wed, 11 Oct 2006) | 2 lines +r1878 | jcbowman | 2006-10-12 00:41:37 +0200 (Thu, 12 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -24960,14 +25362,14 @@ Changed paths: Handle files with and without labels consistently under -tex=pdflatex. ------------------------------------------------------------------------ -r1877 | jcbowman | 2006-10-11 08:43:27 -0600 (Wed, 11 Oct 2006) | 2 lines +r1877 | jcbowman | 2006-10-11 16:43:27 +0200 (Wed, 11 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Added support for Emacs 21 (quickly tested with 21.4.1 only). ------------------------------------------------------------------------ -r1876 | jcbowman | 2006-10-11 01:25:14 -0600 (Wed, 11 Oct 2006) | 6 lines +r1876 | jcbowman | 2006-10-11 09:25:14 +0200 (Wed, 11 Oct 2006) | 6 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/Makefile @@ -24993,14 +25395,14 @@ Support \usepackage[inline]{asymptote} under both latex and pdflatex. Clean up singleton path eps writes. ------------------------------------------------------------------------ -r1875 | jcbowman | 2006-10-08 15:16:08 -0600 (Sun, 08 Oct 2006) | 2 lines +r1875 | jcbowman | 2006-10-08 23:16:08 +0200 (Sun, 08 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Revert revisions 1867-1869. ------------------------------------------------------------------------ -r1874 | jcbowman | 2006-10-07 14:00:36 -0600 (Sat, 07 Oct 2006) | 8 lines +r1874 | jcbowman | 2006-10-07 22:00:36 +0200 (Sat, 07 Oct 2006) | 8 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy M /trunk/asymptote/base/plain_filldraw.asy @@ -25027,21 +25429,21 @@ Scale, which indicates how the Label transforms with the embedding picture. ------------------------------------------------------------------------ -r1873 | jcbowman | 2006-10-06 04:39:26 -0600 (Fri, 06 Oct 2006) | 2 lines +r1873 | jcbowman | 2006-10-06 12:39:26 +0200 (Fri, 06 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Reset x and y boundRoutines after processing. ------------------------------------------------------------------------ -r1872 | jcbowman | 2006-10-04 09:45:16 -0600 (Wed, 04 Oct 2006) | 2 lines +r1872 | jcbowman | 2006-10-04 17:45:16 +0200 (Wed, 04 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO Remove obsolete item. ------------------------------------------------------------------------ -r1871 | jcbowman | 2006-10-03 22:15:25 -0600 (Tue, 03 Oct 2006) | 2 lines +r1871 | jcbowman | 2006-10-04 06:15:25 +0200 (Wed, 04 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_filldraw.asy @@ -25049,7 +25451,7 @@ Changed paths: Remove further unneeded instantiations (as of revision 1870). ------------------------------------------------------------------------ -r1870 | hammera | 2006-10-03 18:53:50 -0600 (Tue, 03 Oct 2006) | 2 lines +r1870 | hammera | 2006-10-04 02:53:50 +0200 (Wed, 04 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/dec.cc @@ -25059,28 +25461,28 @@ Changed paths: addOps now add operators as fields (so they can be imported). ------------------------------------------------------------------------ -r1869 | jcbowman | 2006-10-03 17:47:39 -0600 (Tue, 03 Oct 2006) | 2 lines +r1869 | jcbowman | 2006-10-04 01:47:39 +0200 (Wed, 04 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Allow use of UnFill in tick labels. ------------------------------------------------------------------------ -r1868 | jcbowman | 2006-10-03 17:30:14 -0600 (Tue, 03 Oct 2006) | 2 lines +r1868 | jcbowman | 2006-10-04 01:30:14 +0200 (Wed, 04 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Simplify general axis routine. ------------------------------------------------------------------------ -r1867 | jcbowman | 2006-10-03 17:22:31 -0600 (Tue, 03 Oct 2006) | 2 lines +r1867 | jcbowman | 2006-10-04 01:22:31 +0200 (Wed, 04 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Simplify call to ticks. ------------------------------------------------------------------------ -r1866 | jcbowman | 2006-10-02 22:03:40 -0600 (Mon, 02 Oct 2006) | 2 lines +r1866 | jcbowman | 2006-10-03 06:03:40 +0200 (Tue, 03 Oct 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain_Label.asy @@ -25089,7 +25491,7 @@ Changed paths: Move Label shift member into transform member. ------------------------------------------------------------------------ -r1865 | jcbowman | 2006-10-01 18:12:11 -0600 (Sun, 01 Oct 2006) | 5 lines +r1865 | jcbowman | 2006-10-02 02:12:11 +0200 (Mon, 02 Oct 2006) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -25108,14 +25510,14 @@ Added option to Label to allow labels to scale and slant with pictures and frames. ------------------------------------------------------------------------ -r1864 | jcbowman | 2006-09-30 14:26:05 -0600 (Sat, 30 Sep 2006) | 2 lines +r1864 | jcbowman | 2006-09-30 22:26:05 +0200 (Sat, 30 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fixed "Cannot write to venn_.tex" error under Windows XP. ------------------------------------------------------------------------ -r1863 | jcbowman | 2006-09-30 10:56:10 -0600 (Sat, 30 Sep 2006) | 2 lines +r1863 | jcbowman | 2006-09-30 18:56:10 +0200 (Sat, 30 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/asymptote.spec @@ -25124,28 +25526,28 @@ Changed paths: Fixed cxx errors and warnings. ------------------------------------------------------------------------ -r1862 | jcbowman | 2006-09-27 15:58:38 -0600 (Wed, 27 Sep 2006) | 2 lines +r1862 | jcbowman | 2006-09-27 23:58:38 +0200 (Wed, 27 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Fixed transformation of label alignments. ------------------------------------------------------------------------ -r1861 | jcbowman | 2006-09-27 00:22:53 -0600 (Wed, 27 Sep 2006) | 2 lines +r1861 | jcbowman | 2006-09-27 08:22:53 +0200 (Wed, 27 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Make scale set automin and automax settings in autoscaleT. ------------------------------------------------------------------------ -r1860 | jcbowman | 2006-09-26 23:41:09 -0600 (Tue, 26 Sep 2006) | 2 lines +r1860 | jcbowman | 2006-09-27 07:41:09 +0200 (Wed, 27 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Added boundRoutine[] bound to autoscaleT. ------------------------------------------------------------------------ -r1859 | jcbowman | 2006-09-26 23:39:37 -0600 (Tue, 26 Sep 2006) | 3 lines +r1859 | jcbowman | 2006-09-27 07:39:37 +0200 (Wed, 27 Sep 2006) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -25154,14 +25556,14 @@ Improved graph routines: added xaxis and yaxis bounds communication, allow axes with ticks and unextended axes to be called on an empty picture. ------------------------------------------------------------------------ -r1858 | jcbowman | 2006-09-26 22:18:06 -0600 (Tue, 26 Sep 2006) | 2 lines +r1858 | jcbowman | 2006-09-27 06:18:06 +0200 (Wed, 27 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/dimension.asy Simplified example. ------------------------------------------------------------------------ -r1857 | jcbowman | 2006-09-25 06:03:16 -0600 (Mon, 25 Sep 2006) | 2 lines +r1857 | jcbowman | 2006-09-25 14:03:16 +0200 (Mon, 25 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -25170,14 +25572,14 @@ Changed paths: Allow for separate xunitsize and yunitsize scalings. ------------------------------------------------------------------------ -r1856 | jcbowman | 2006-09-24 11:26:11 -0600 (Sun, 24 Sep 2006) | 2 lines +r1856 | jcbowman | 2006-09-24 19:26:11 +0200 (Sun, 24 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improved documentation of tick extend option. ------------------------------------------------------------------------ -r1855 | jcbowman | 2006-09-24 09:40:22 -0600 (Sun, 24 Sep 2006) | 2 lines +r1855 | jcbowman | 2006-09-24 17:40:22 +0200 (Sun, 24 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph_settings.asy @@ -25185,7 +25587,7 @@ Changed paths: Removed axislabelmargin. ------------------------------------------------------------------------ -r1854 | jcbowman | 2006-09-24 00:59:08 -0600 (Sun, 24 Sep 2006) | 3 lines +r1854 | jcbowman | 2006-09-24 08:59:08 +0200 (Sun, 24 Sep 2006) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -25193,49 +25595,49 @@ The axislabelmargin setting should only affect alignment perpendicular to the axis. ------------------------------------------------------------------------ -r1853 | jcbowman | 2006-09-24 00:38:54 -0600 (Sun, 24 Sep 2006) | 2 lines +r1853 | jcbowman | 2006-09-24 08:38:54 +0200 (Sun, 24 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Adjust axis labels only in direction perpendicular to axis. ------------------------------------------------------------------------ -r1852 | jcbowman | 2006-09-23 22:32:04 -0600 (Sat, 23 Sep 2006) | 2 lines +r1852 | jcbowman | 2006-09-24 06:32:04 +0200 (Sun, 24 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Draw path label after drawing path. ------------------------------------------------------------------------ -r1851 | jcbowman | 2006-09-21 12:28:57 -0600 (Thu, 21 Sep 2006) | 2 lines +r1851 | jcbowman | 2006-09-21 20:28:57 +0200 (Thu, 21 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_Label.asy Allow Label(Label,pair). ------------------------------------------------------------------------ -r1850 | jcbowman | 2006-09-21 12:27:30 -0600 (Thu, 21 Sep 2006) | 2 lines +r1850 | jcbowman | 2006-09-21 20:27:30 +0200 (Thu, 21 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Add partial support for xemacs. ------------------------------------------------------------------------ -r1849 | jcbowman | 2006-09-21 01:21:34 -0600 (Thu, 21 Sep 2006) | 2 lines +r1849 | jcbowman | 2006-09-21 09:21:34 +0200 (Thu, 21 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/texfile.h Leave vertical mode before put. ------------------------------------------------------------------------ -r1848 | jcbowman | 2006-09-21 00:12:10 -0600 (Thu, 21 Sep 2006) | 2 lines +r1848 | jcbowman | 2006-09-21 08:12:10 +0200 (Thu, 21 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed grammatical error. ------------------------------------------------------------------------ -r1847 | jcbowman | 2006-09-21 00:08:42 -0600 (Thu, 21 Sep 2006) | 3 lines +r1847 | jcbowman | 2006-09-21 08:08:42 +0200 (Thu, 21 Sep 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/mexicanhat.asy @@ -25244,7 +25646,7 @@ Added Mexican Hat (wavelet) example that nicely illustrates the distinction between guides and paths. ------------------------------------------------------------------------ -r1846 | jcbowman | 2006-09-20 08:50:13 -0600 (Wed, 20 Sep 2006) | 2 lines +r1846 | jcbowman | 2006-09-20 16:50:13 +0200 (Wed, 20 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc M /trunk/asymptote/texfile.h @@ -25252,7 +25654,7 @@ Changed paths: Removed dependency on rotate.tex. ------------------------------------------------------------------------ -r1845 | jcbowman | 2006-09-19 23:08:34 -0600 (Tue, 19 Sep 2006) | 2 lines +r1845 | jcbowman | 2006-09-20 07:08:34 +0200 (Wed, 20 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/texfile.cc @@ -25261,7 +25663,7 @@ Changed paths: Removed dependence on pstricks. ------------------------------------------------------------------------ -r1844 | jcbowman | 2006-09-19 22:12:31 -0600 (Tue, 19 Sep 2006) | 2 lines +r1844 | jcbowman | 2006-09-20 06:12:31 +0200 (Wed, 20 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy M /trunk/asymptote/base/plain_picture.asy @@ -25269,7 +25671,7 @@ Changed paths: Added filloutside routines. ------------------------------------------------------------------------ -r1843 | jcbowman | 2006-09-18 16:00:15 -0600 (Mon, 18 Sep 2006) | 2 lines +r1843 | jcbowman | 2006-09-19 00:00:15 +0200 (Tue, 19 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/settings.cc @@ -25277,14 +25679,14 @@ Changed paths: Ignore setlocale errors; improved discussion of setlocale in FAQ. ------------------------------------------------------------------------ -r1842 | jcbowman | 2006-09-17 22:32:31 -0600 (Sun, 17 Sep 2006) | 2 lines +r1842 | jcbowman | 2006-09-18 06:32:31 +0200 (Mon, 18 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix -aZ -f pdf. ------------------------------------------------------------------------ -r1841 | jcbowman | 2006-09-17 22:18:06 -0600 (Sun, 17 Sep 2006) | 3 lines +r1841 | jcbowman | 2006-09-18 06:18:06 +0200 (Mon, 18 Sep 2006) | 3 lines Changed paths: M /trunk/asymptote/base/plain_filldraw.asy M /trunk/asymptote/doc/asymptote.texi @@ -25293,14 +25695,14 @@ Standardized filltype definitions and added a Draw filltype (e.g. for drawing a bounding box around a label). ------------------------------------------------------------------------ -r1840 | jcbowman | 2006-09-16 22:18:03 -0600 (Sat, 16 Sep 2006) | 2 lines +r1840 | jcbowman | 2006-09-17 06:18:03 +0200 (Sun, 17 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/process.cc Fixed typos in comments. ------------------------------------------------------------------------ -r1839 | jcbowman | 2006-09-16 21:50:16 -0600 (Sat, 16 Sep 2006) | 2 lines +r1839 | jcbowman | 2006-09-17 05:50:16 +0200 (Sun, 17 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -25310,21 +25712,21 @@ Changed paths: Make -p option only effective in noninteractive mode. ------------------------------------------------------------------------ -r1838 | jcbowman | 2006-09-16 15:39:41 -0600 (Sat, 16 Sep 2006) | 2 lines +r1838 | jcbowman | 2006-09-16 23:39:41 +0200 (Sat, 16 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_debugger.asy Accept ? as alternative to h (help). ------------------------------------------------------------------------ -r1837 | jcbowman | 2006-09-16 15:38:37 -0600 (Sat, 16 Sep 2006) | 2 lines +r1837 | jcbowman | 2006-09-16 23:38:37 +0200 (Sat, 16 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_debugger.asy Quit (q) should turn off off debugging mode. ------------------------------------------------------------------------ -r1836 | jcbowman | 2006-09-16 15:11:09 -0600 (Sat, 16 Sep 2006) | 2 lines +r1836 | jcbowman | 2006-09-16 23:11:09 +0200 (Sat, 16 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/contour3.asy M /trunk/asymptote/examples/Gouraudcontour.asy @@ -25332,7 +25734,7 @@ Changed paths: Minor simplifications. ------------------------------------------------------------------------ -r1835 | jcbowman | 2006-09-16 15:05:59 -0600 (Sat, 16 Sep 2006) | 4 lines +r1835 | jcbowman | 2006-09-16 23:05:59 +0200 (Sat, 16 Sep 2006) | 4 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -25345,7 +25747,7 @@ Added irregular mesh image contour routines. Fixed documentation regarding explicits image bounds. ------------------------------------------------------------------------ -r1834 | jcbowman | 2006-09-16 15:02:46 -0600 (Sat, 16 Sep 2006) | 2 lines +r1834 | jcbowman | 2006-09-16 23:02:46 +0200 (Sat, 16 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -25354,21 +25756,21 @@ Changed paths: Fixed numerical precision issues; minor optimizations. ------------------------------------------------------------------------ -r1833 | jcbowman | 2006-09-16 12:18:45 -0600 (Sat, 16 Sep 2006) | 2 lines +r1833 | jcbowman | 2006-09-16 20:18:45 +0200 (Sat, 16 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Minor optimization. ------------------------------------------------------------------------ -r1832 | jcbowman | 2006-09-16 01:32:59 -0600 (Sat, 16 Sep 2006) | 2 lines +r1832 | jcbowman | 2006-09-16 09:32:59 +0200 (Sat, 16 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Fixed docref. ------------------------------------------------------------------------ -r1831 | jcbowman | 2006-09-16 00:44:13 -0600 (Sat, 16 Sep 2006) | 4 lines +r1831 | jcbowman | 2006-09-16 08:44:13 +0200 (Sat, 16 Sep 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/FAQ/Makefile M /trunk/asymptote/doc/FAQ/asy-faq.bfnn @@ -25379,7 +25781,7 @@ Updated FAQ. Improved Makefile. ------------------------------------------------------------------------ -r1830 | jcbowman | 2006-09-15 21:55:17 -0600 (Fri, 15 Sep 2006) | 4 lines +r1830 | jcbowman | 2006-09-16 05:55:17 +0200 (Sat, 16 Sep 2006) | 4 lines Changed paths: M /trunk/asymptote/base/contour.asy @@ -25388,28 +25790,28 @@ Added contour wrapper for explicit x and y arrays. Standardized contour argument names. ------------------------------------------------------------------------ -r1829 | jcbowman | 2006-09-13 20:56:26 -0600 (Wed, 13 Sep 2006) | 2 lines +r1829 | jcbowman | 2006-09-14 04:56:26 +0200 (Thu, 14 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/process.cc Fixed unhandled exception on startup. ------------------------------------------------------------------------ -r1828 | hammera | 2006-09-13 19:40:19 -0600 (Wed, 13 Sep 2006) | 2 lines +r1828 | hammera | 2006-09-14 03:40:19 +0200 (Thu, 14 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Ignore keyboard interrupts during readline. ------------------------------------------------------------------------ -r1827 | jcbowman | 2006-09-13 00:25:47 -0600 (Wed, 13 Sep 2006) | 2 lines +r1827 | jcbowman | 2006-09-13 08:25:47 +0200 (Wed, 13 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn Modified example. ------------------------------------------------------------------------ -r1826 | jcbowman | 2006-09-13 00:24:37 -0600 (Wed, 13 Sep 2006) | 2 lines +r1826 | jcbowman | 2006-09-13 08:24:37 +0200 (Wed, 13 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -25418,21 +25820,21 @@ Changed paths: Generalized axis alignment example. ------------------------------------------------------------------------ -r1825 | jcbowman | 2006-09-12 23:45:10 -0600 (Tue, 12 Sep 2006) | 2 lines +r1825 | jcbowman | 2006-09-13 07:45:10 +0200 (Wed, 13 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fixed axisMin. ------------------------------------------------------------------------ -r1824 | jcbowman | 2006-09-12 23:36:12 -0600 (Tue, 12 Sep 2006) | 2 lines +r1824 | jcbowman | 2006-09-13 07:36:12 +0200 (Wed, 13 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Calculate, don't cache, axis userMin and userMax values. ------------------------------------------------------------------------ -r1823 | jcbowman | 2006-09-12 01:02:42 -0600 (Tue, 12 Sep 2006) | 2 lines +r1823 | jcbowman | 2006-09-12 09:02:42 +0200 (Tue, 12 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/slide.asy @@ -25444,14 +25846,14 @@ Changed paths: Add PDF autorotate option; landscape slides now automatically turn this on. ------------------------------------------------------------------------ -r1822 | jcbowman | 2006-09-11 22:24:22 -0600 (Mon, 11 Sep 2006) | 2 lines +r1822 | jcbowman | 2006-09-12 06:24:22 +0200 (Tue, 12 Sep 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/buildcycle.asy Added example of buildcycle. ------------------------------------------------------------------------ -r1821 | jcbowman | 2006-09-11 22:20:23 -0600 (Mon, 11 Sep 2006) | 4 lines +r1821 | jcbowman | 2006-09-12 06:20:23 +0200 (Tue, 12 Sep 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain_paths.asy M /trunk/asymptote/doc/asymptote.texi @@ -25461,21 +25863,21 @@ Port and document MetaPost buildcycle. Document new behaviour of asy -l file... ------------------------------------------------------------------------ -r1820 | jcbowman | 2006-09-11 21:45:35 -0600 (Mon, 11 Sep 2006) | 2 lines +r1820 | jcbowman | 2006-09-12 05:45:35 +0200 (Tue, 12 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc Allow draw(nullpath) again. ------------------------------------------------------------------------ -r1819 | jcbowman | 2006-09-10 13:33:24 -0600 (Sun, 10 Sep 2006) | 2 lines +r1819 | jcbowman | 2006-09-10 21:33:24 +0200 (Sun, 10 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fixed asy path and base directory. ------------------------------------------------------------------------ -r1818 | jcbowman | 2006-09-09 21:55:55 -0600 (Sat, 09 Sep 2006) | 4 lines +r1818 | jcbowman | 2006-09-10 05:55:55 +0200 (Sun, 10 Sep 2006) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asy-list.pl @@ -25487,7 +25889,7 @@ Added type highlighting list to asy-keywords.el and asy-mode.el. Simplified building of asy-keywords.el. ------------------------------------------------------------------------ -r1817 | hammera | 2006-09-09 12:26:29 -0600 (Sat, 09 Sep 2006) | 3 lines +r1817 | hammera | 2006-09-09 20:26:29 +0200 (Sat, 09 Sep 2006) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/application.h @@ -25517,21 +25919,21 @@ Refactored interactive prompt. Moved asy code processing from main.cc to process.cc. ------------------------------------------------------------------------ -r1816 | jcbowman | 2006-09-08 12:40:18 -0600 (Fri, 08 Sep 2006) | 2 lines +r1816 | jcbowman | 2006-09-08 20:40:18 +0200 (Fri, 08 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Fixed infinite loop on stdin EOF during scrolling. ------------------------------------------------------------------------ -r1815 | jcbowman | 2006-09-07 21:59:28 -0600 (Thu, 07 Sep 2006) | 2 lines +r1815 | jcbowman | 2006-09-08 05:59:28 +0200 (Fri, 08 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Make last workaround CYGWIN specific. ------------------------------------------------------------------------ -r1814 | jcbowman | 2006-09-07 07:56:04 -0600 (Thu, 07 Sep 2006) | 2 lines +r1814 | jcbowman | 2006-09-07 15:56:04 +0200 (Thu, 07 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/settings.cc @@ -25539,21 +25941,21 @@ Changed paths: Work around missing ncurses/term.h symbolic link under CYGWIN. ------------------------------------------------------------------------ -r1813 | jcbowman | 2006-09-06 02:52:45 -0600 (Wed, 06 Sep 2006) | 2 lines +r1813 | jcbowman | 2006-09-06 10:52:45 +0200 (Wed, 06 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.14svn. ------------------------------------------------------------------------ -r1812 | jcbowman | 2006-09-05 22:47:22 -0600 (Tue, 05 Sep 2006) | 2 lines +r1812 | jcbowman | 2006-09-06 06:47:22 +0200 (Wed, 06 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added path qualifier. ------------------------------------------------------------------------ -r1811 | jcbowman | 2006-09-05 21:17:34 -0600 (Tue, 05 Sep 2006) | 2 lines +r1811 | jcbowman | 2006-09-06 05:17:34 +0200 (Wed, 06 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/annotate.asy M /trunk/asymptote/base/contour.asy @@ -25594,7 +25996,7 @@ Changed paths: Standardized indentation of and untabify base files. ------------------------------------------------------------------------ -r1810 | jcbowman | 2006-09-05 10:24:50 -0600 (Tue, 05 Sep 2006) | 2 lines +r1810 | jcbowman | 2006-09-05 18:24:50 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -25602,14 +26004,14 @@ Changed paths: Updated documentation and FAQ. ------------------------------------------------------------------------ -r1809 | jcbowman | 2006-09-05 10:24:30 -0600 (Tue, 05 Sep 2006) | 2 lines +r1809 | jcbowman | 2006-09-05 18:24:30 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added html target for building html documentation from main directory. ------------------------------------------------------------------------ -r1808 | jcbowman | 2006-09-05 00:24:39 -0600 (Tue, 05 Sep 2006) | 2 lines +r1808 | jcbowman | 2006-09-05 08:24:39 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -25617,7 +26019,7 @@ Changed paths: FAQ updates ------------------------------------------------------------------------ -r1807 | jcbowman | 2006-09-04 23:13:53 -0600 (Mon, 04 Sep 2006) | 2 lines +r1807 | jcbowman | 2006-09-05 07:13:53 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-init.el M /trunk/asymptote/base/asy-mode.el @@ -25626,14 +26028,14 @@ Changed paths: Explicitly load asy-mode.el in case an old compiled version exists. ------------------------------------------------------------------------ -r1806 | jcbowman | 2006-09-04 23:04:52 -0600 (Mon, 04 Sep 2006) | 2 lines +r1806 | jcbowman | 2006-09-05 07:04:52 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy.vim Color name updates. ------------------------------------------------------------------------ -r1805 | jcbowman | 2006-09-04 22:29:45 -0600 (Mon, 04 Sep 2006) | 4 lines +r1805 | jcbowman | 2006-09-05 06:29:45 +0200 (Tue, 05 Sep 2006) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -25642,28 +26044,28 @@ Project triple to align in call to label and Label. Cast triple to position. ------------------------------------------------------------------------ -r1804 | jcbowman | 2006-09-04 22:18:35 -0600 (Mon, 04 Sep 2006) | 2 lines +r1804 | jcbowman | 2006-09-05 06:18:35 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Remove cast from triple to align. ------------------------------------------------------------------------ -r1803 | jcbowman | 2006-09-04 22:12:03 -0600 (Mon, 04 Sep 2006) | 2 lines +r1803 | jcbowman | 2006-09-05 06:12:03 +0200 (Tue, 05 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Make grep case-sensitive. ------------------------------------------------------------------------ -r1802 | jcbowman | 2006-09-04 01:40:35 -0600 (Mon, 04 Sep 2006) | 2 lines +r1802 | jcbowman | 2006-09-04 09:40:35 +0200 (Mon, 04 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn More FAQ updates. ------------------------------------------------------------------------ -r1801 | jcbowman | 2006-09-04 01:36:16 -0600 (Mon, 04 Sep 2006) | 2 lines +r1801 | jcbowman | 2006-09-04 09:36:16 +0200 (Mon, 04 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/asy-faq.bfnn M /trunk/asymptote/doc/asymptote.texi @@ -25672,35 +26074,35 @@ Changed paths: Updated FAQ. ------------------------------------------------------------------------ -r1800 | jcbowman | 2006-09-04 01:30:35 -0600 (Mon, 04 Sep 2006) | 2 lines +r1800 | jcbowman | 2006-09-04 09:30:35 +0200 (Mon, 04 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Allow arrowhead to be called with a position type. ------------------------------------------------------------------------ -r1799 | jcbowman | 2006-09-04 01:29:06 -0600 (Mon, 04 Sep 2006) | 2 lines +r1799 | jcbowman | 2006-09-04 09:29:06 +0200 (Mon, 04 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Use pTick as default for ptick. ------------------------------------------------------------------------ -r1798 | jcbowman | 2006-09-03 12:05:53 -0600 (Sun, 03 Sep 2006) | 2 lines +r1798 | jcbowman | 2006-09-03 20:05:53 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Revert last change. ------------------------------------------------------------------------ -r1797 | jcbowman | 2006-09-03 11:49:35 -0600 (Sun, 03 Sep 2006) | 2 lines +r1797 | jcbowman | 2006-09-03 19:49:35 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Close fout immediately to avoid race condition with gv in interactive mode. ------------------------------------------------------------------------ -r1796 | jcbowman | 2006-09-03 09:05:31 -0600 (Sun, 03 Sep 2006) | 2 lines +r1796 | jcbowman | 2006-09-03 17:05:31 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/FAQ/Makefile @@ -25710,35 +26112,35 @@ Changed paths: Install asy-faq.info with make install-all. ------------------------------------------------------------------------ -r1795 | jcbowman | 2006-09-03 00:01:55 -0600 (Sun, 03 Sep 2006) | 2 lines +r1795 | jcbowman | 2006-09-03 08:01:55 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Fixed cxx warning message. ------------------------------------------------------------------------ -r1794 | jcbowman | 2006-09-02 23:45:44 -0600 (Sat, 02 Sep 2006) | 2 lines +r1794 | jcbowman | 2006-09-03 07:45:44 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Removed ASYMPTOTE_DIR. ------------------------------------------------------------------------ -r1793 | jcbowman | 2006-09-02 23:42:37 -0600 (Sat, 02 Sep 2006) | 2 lines +r1793 | jcbowman | 2006-09-03 07:42:37 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/FAQ/Makefile Simplified Makefile. ------------------------------------------------------------------------ -r1792 | jcbowman | 2006-09-02 23:35:46 -0600 (Sat, 02 Sep 2006) | 2 lines +r1792 | jcbowman | 2006-09-03 07:35:46 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Distribute keywords.cc. ------------------------------------------------------------------------ -r1791 | jcbowman | 2006-09-02 23:29:35 -0600 (Sat, 02 Sep 2006) | 2 lines +r1791 | jcbowman | 2006-09-03 07:29:35 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/keywords.pl @@ -25746,7 +26148,7 @@ Changed paths: Make keywords.pl executable. ------------------------------------------------------------------------ -r1790 | jcbowman | 2006-09-02 23:20:58 -0600 (Sat, 02 Sep 2006) | 2 lines +r1790 | jcbowman | 2006-09-03 07:20:58 +0200 (Sun, 03 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/doc/FAQ @@ -25763,14 +26165,14 @@ Changed paths: Added Frequently Asked Questions (FAQ). ------------------------------------------------------------------------ -r1789 | jcbowman | 2006-09-02 11:28:41 -0600 (Sat, 02 Sep 2006) | 2 lines +r1789 | jcbowman | 2006-09-02 19:28:41 +0200 (Sat, 02 Sep 2006) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Respect scroll setting only in interactive mode. ------------------------------------------------------------------------ -r1788 | jcbowman | 2006-09-02 11:21:14 -0600 (Sat, 02 Sep 2006) | 6 lines +r1788 | jcbowman | 2006-09-02 19:21:14 +0200 (Sat, 02 Sep 2006) | 6 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/asy-list.pl @@ -25786,7 +26188,7 @@ Handle shells other than bash in asy-mode.el. Autogenerate asy-keywords.el. ------------------------------------------------------------------------ -r1787 | jcbowman | 2006-08-30 21:53:25 -0600 (Wed, 30 Aug 2006) | 6 lines +r1787 | jcbowman | 2006-08-31 05:53:25 +0200 (Thu, 31 Aug 2006) | 6 lines Changed paths: M /trunk/asymptote/base/plain_shipout.asy M /trunk/asymptote/dec.cc @@ -25807,49 +26209,49 @@ Check for successful PostScript writes. Standardize "Can't" vs. "Cannot". ------------------------------------------------------------------------ -r1786 | jcbowman | 2006-08-30 21:48:31 -0600 (Wed, 30 Aug 2006) | 2 lines +r1786 | jcbowman | 2006-08-31 05:48:31 +0200 (Thu, 31 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy Simplified calculateTransform logic. ------------------------------------------------------------------------ -r1785 | jcbowman | 2006-08-30 21:46:56 -0600 (Wed, 30 Aug 2006) | 2 lines +r1785 | jcbowman | 2006-08-31 05:46:56 +0200 (Thu, 31 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/workcone.asy Improved example. ------------------------------------------------------------------------ -r1784 | jcbowman | 2006-08-30 21:44:46 -0600 (Wed, 30 Aug 2006) | 2 lines +r1784 | jcbowman | 2006-08-31 05:44:46 +0200 (Thu, 31 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Disable magic () parenthesis. ------------------------------------------------------------------------ -r1783 | jcbowman | 2006-08-30 16:35:02 -0600 (Wed, 30 Aug 2006) | 2 lines +r1783 | jcbowman | 2006-08-31 00:35:02 +0200 (Thu, 31 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/psfile.h Prevent exponential notation in %%BoudingBox. ------------------------------------------------------------------------ -r1782 | hammera | 2006-08-30 13:11:11 -0600 (Wed, 30 Aug 2006) | 2 lines +r1782 | hammera | 2006-08-30 21:11:11 +0200 (Wed, 30 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/output/Makefile Test using a local version of asy. ------------------------------------------------------------------------ -r1781 | hammera | 2006-08-30 13:10:08 -0600 (Wed, 30 Aug 2006) | 2 lines +r1781 | hammera | 2006-08-30 21:10:08 +0200 (Wed, 30 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/Makefile Don't run "../asy output/*.asy" as this doesn't test the files properly. ------------------------------------------------------------------------ -r1780 | jcbowman | 2006-08-29 21:04:38 -0600 (Tue, 29 Aug 2006) | 2 lines +r1780 | jcbowman | 2006-08-30 05:04:38 +0200 (Wed, 30 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/configure.ac @@ -25858,7 +26260,7 @@ Changed paths: Updated to use gc6.8. ------------------------------------------------------------------------ -r1779 | jcbowman | 2006-08-29 15:47:24 -0600 (Tue, 29 Aug 2006) | 2 lines +r1779 | jcbowman | 2006-08-29 23:47:24 +0200 (Tue, 29 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/shellmethod.asy M /trunk/asymptote/examples/shellsqrtx01.asy @@ -25872,7 +26274,7 @@ Changed paths: Reduce size of generated files. ------------------------------------------------------------------------ -r1778 | jcbowman | 2006-08-29 11:30:15 -0600 (Tue, 29 Aug 2006) | 2 lines +r1778 | jcbowman | 2006-08-29 19:30:15 +0200 (Tue, 29 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/equilchord.asy M /trunk/asymptote/examples/sacone.asy @@ -25893,7 +26295,7 @@ Changed paths: More three-dimensional examples. ------------------------------------------------------------------------ -r1777 | jcbowman | 2006-08-29 11:29:33 -0600 (Tue, 29 Aug 2006) | 4 lines +r1777 | jcbowman | 2006-08-29 19:29:33 +0200 (Tue, 29 Aug 2006) | 4 lines Changed paths: M /trunk/asymptote/base/solids.asy @@ -25902,14 +26304,14 @@ Fixed definition and documentation of cone. Added longitudinal pen to draw. ------------------------------------------------------------------------ -r1776 | jcbowman | 2006-08-29 11:28:51 -0600 (Tue, 29 Aug 2006) | 2 lines +r1776 | jcbowman | 2006-08-29 19:28:51 +0200 (Tue, 29 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Added cast from triple to align. ------------------------------------------------------------------------ -r1775 | jcbowman | 2006-08-28 22:35:39 -0600 (Mon, 28 Aug 2006) | 2 lines +r1775 | jcbowman | 2006-08-29 06:35:39 +0200 (Tue, 29 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -25917,7 +26319,7 @@ Changed paths: Added up argument to projection routines to specify camera orientation. ------------------------------------------------------------------------ -r1774 | jcbowman | 2006-08-27 20:58:32 -0600 (Sun, 27 Aug 2006) | 2 lines +r1774 | jcbowman | 2006-08-28 04:58:32 +0200 (Mon, 28 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi @@ -25925,7 +26327,7 @@ Changed paths: Minor optimization and documentation updates. ------------------------------------------------------------------------ -r1773 | jcbowman | 2006-08-27 18:53:20 -0600 (Sun, 27 Aug 2006) | 2 lines +r1773 | jcbowman | 2006-08-28 02:53:20 +0200 (Mon, 28 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/math.asy @@ -25937,42 +26339,42 @@ Changed paths: Cleaned up surface functions. ------------------------------------------------------------------------ -r1772 | jcbowman | 2006-08-27 18:42:43 -0600 (Sun, 27 Aug 2006) | 2 lines +r1772 | jcbowman | 2006-08-28 02:42:43 +0200 (Mon, 28 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_debugger.asy Avoid warning message under -d. ------------------------------------------------------------------------ -r1771 | jcbowman | 2006-08-27 14:08:51 -0600 (Sun, 27 Aug 2006) | 2 lines +r1771 | jcbowman | 2006-08-27 22:08:51 +0200 (Sun, 27 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Moved documentation to beginning of file again. ------------------------------------------------------------------------ -r1770 | jcbowman | 2006-08-27 13:44:12 -0600 (Sun, 27 Aug 2006) | 2 lines +r1770 | jcbowman | 2006-08-27 21:44:12 +0200 (Sun, 27 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Disabled magic [] since this makes typing real[] awkward. ------------------------------------------------------------------------ -r1769 | jcbowman | 2006-08-26 18:29:31 -0600 (Sat, 26 Aug 2006) | 2 lines +r1769 | jcbowman | 2006-08-27 02:29:31 +0200 (Sun, 27 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/gc/string.asy Removed obsolete comment. ------------------------------------------------------------------------ -r1768 | jcbowman | 2006-08-26 15:44:33 -0600 (Sat, 26 Aug 2006) | 2 lines +r1768 | jcbowman | 2006-08-26 23:44:33 +0200 (Sat, 26 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Don't indent after struct definition without optional ; ------------------------------------------------------------------------ -r1767 | jcbowman | 2006-08-26 12:06:44 -0600 (Sat, 26 Aug 2006) | 3 lines +r1767 | jcbowman | 2006-08-26 20:06:44 +0200 (Sat, 26 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/base/asy-mode.el @@ -25980,28 +26382,28 @@ Disable magic {} as this makes grouping existing blocks of code (without going to the trouble of selecting a region) inconvenient. ------------------------------------------------------------------------ -r1766 | jcbowman | 2006-08-26 12:01:32 -0600 (Sat, 26 Aug 2006) | 2 lines +r1766 | jcbowman | 2006-08-26 20:01:32 +0200 (Sat, 26 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Fixed indentation of public/private permission modifiers. ------------------------------------------------------------------------ -r1765 | jcbowman | 2006-08-26 11:59:21 -0600 (Sat, 26 Aug 2006) | 2 lines +r1765 | jcbowman | 2006-08-26 19:59:21 +0200 (Sat, 26 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fixed indentation. ------------------------------------------------------------------------ -r1764 | jcbowman | 2006-08-26 01:07:35 -0600 (Sat, 26 Aug 2006) | 2 lines +r1764 | jcbowman | 2006-08-26 09:07:35 +0200 (Sat, 26 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Mention two-mode-mode recommended package also in online documentation. ------------------------------------------------------------------------ -r1763 | jcbowman | 2006-08-25 22:41:48 -0600 (Fri, 25 Aug 2006) | 3 lines +r1763 | jcbowman | 2006-08-26 06:41:48 +0200 (Sat, 26 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/doc/asymptote.texi @@ -26010,7 +26412,7 @@ Remove the strict requirement of the two-mode-mode package for minimal functionality of asy-mode.el. ------------------------------------------------------------------------ -r1762 | jcbowman | 2006-08-25 22:14:11 -0600 (Fri, 25 Aug 2006) | 2 lines +r1762 | jcbowman | 2006-08-26 06:14:11 +0200 (Sat, 26 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/doc/asymptote.texi @@ -26018,14 +26420,14 @@ Changed paths: Replaced asy-mode.el with slight improvement of Philippe Ivaldi's version. ------------------------------------------------------------------------ -r1761 | jcbowman | 2006-08-24 21:18:05 -0600 (Thu, 24 Aug 2006) | 2 lines +r1761 | jcbowman | 2006-08-25 05:18:05 +0200 (Fri, 25 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy Check path[] index. ------------------------------------------------------------------------ -r1760 | jcbowman | 2006-08-24 21:13:14 -0600 (Thu, 24 Aug 2006) | 2 lines +r1760 | jcbowman | 2006-08-25 05:13:14 +0200 (Fri, 25 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_arrows.asy M /trunk/asymptote/base/plain_filldraw.asy @@ -26034,7 +26436,7 @@ Changed paths: Allow legends and markers when drawing superpaths. ------------------------------------------------------------------------ -r1759 | jcbowman | 2006-08-24 11:28:50 -0600 (Thu, 24 Aug 2006) | 4 lines +r1759 | jcbowman | 2006-08-24 19:28:50 +0200 (Thu, 24 Aug 2006) | 4 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/graph.asy @@ -26046,7 +26448,7 @@ Moved graph settings to separate module graph_settings. Renamed nmesh to ngraph. ------------------------------------------------------------------------ -r1758 | jcbowman | 2006-08-23 22:47:44 -0600 (Wed, 23 Aug 2006) | 3 lines +r1758 | jcbowman | 2006-08-24 06:47:44 +0200 (Thu, 24 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/palette.asy @@ -26057,7 +26459,7 @@ Removed resolution arguments (nx and ny) from matrix contour routines; instead calculate these from the matrix itself. ------------------------------------------------------------------------ -r1757 | jcbowman | 2006-08-22 09:00:55 -0600 (Tue, 22 Aug 2006) | 2 lines +r1757 | jcbowman | 2006-08-22 17:00:55 +0200 (Tue, 22 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc M /trunk/asymptote/path.cc @@ -26066,7 +26468,7 @@ Changed paths: Simplify calculation of cyclic path bounding boxes. ------------------------------------------------------------------------ -r1756 | jcbowman | 2006-08-21 22:30:45 -0600 (Mon, 21 Aug 2006) | 4 lines +r1756 | jcbowman | 2006-08-22 06:30:45 +0200 (Tue, 22 Aug 2006) | 4 lines Changed paths: M /trunk/asymptote/drawpath.cc M /trunk/asymptote/path.cc @@ -26077,14 +26479,14 @@ Check that root is in range in bounds(). Implemented general solution for pen padding/capping of paths. ------------------------------------------------------------------------ -r1755 | jcbowman | 2006-08-20 22:22:33 -0600 (Sun, 20 Aug 2006) | 2 lines +r1755 | jcbowman | 2006-08-21 06:22:33 +0200 (Mon, 21 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added link to externally contributed examples: http://home.tele2.fr/phivaldi/asymptote ------------------------------------------------------------------------ -r1754 | jcbowman | 2006-08-20 21:56:22 -0600 (Sun, 20 Aug 2006) | 2 lines +r1754 | jcbowman | 2006-08-21 05:56:22 +0200 (Mon, 21 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc M /trunk/asymptote/drawpath.h @@ -26092,14 +26494,14 @@ Changed paths: Account for pen cap contribution to bounding box. ------------------------------------------------------------------------ -r1753 | hammera | 2006-08-20 00:20:41 -0600 (Sun, 20 Aug 2006) | 2 lines +r1753 | hammera | 2006-08-20 08:20:41 +0200 (Sun, 20 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Exclude module accesses (and imports) from listing. ------------------------------------------------------------------------ -r1752 | jcbowman | 2006-08-19 22:25:26 -0600 (Sat, 19 Aug 2006) | 2 lines +r1752 | jcbowman | 2006-08-20 06:25:26 +0200 (Sun, 20 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -26107,7 +26509,7 @@ Changed paths: Fixed image transposition. ------------------------------------------------------------------------ -r1751 | jcbowman | 2006-08-19 18:13:36 -0600 (Sat, 19 Aug 2006) | 3 lines +r1751 | jcbowman | 2006-08-20 02:13:36 +0200 (Sun, 20 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.h @@ -26118,14 +26520,14 @@ Discard extra characters after scroll commands (q). If scroll is negative, use one less than number of display lines. ------------------------------------------------------------------------ -r1750 | jcbowman | 2006-08-19 09:44:40 -0600 (Sat, 19 Aug 2006) | 2 lines +r1750 | jcbowman | 2006-08-19 17:44:40 +0200 (Sat, 19 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/util.cc Changed header. ------------------------------------------------------------------------ -r1749 | jcbowman | 2006-08-18 16:07:59 -0600 (Fri, 18 Aug 2006) | 2 lines +r1749 | jcbowman | 2006-08-19 00:07:59 +0200 (Sat, 19 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -26135,28 +26537,28 @@ Changed paths: Standardized image and contour conventions for matrices. ------------------------------------------------------------------------ -r1748 | jcbowman | 2006-08-18 15:56:31 -0600 (Fri, 18 Aug 2006) | 2 lines +r1748 | jcbowman | 2006-08-18 23:56:31 +0200 (Fri, 18 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/slidedemo.asy Improved documentation of command-line arguments. ------------------------------------------------------------------------ -r1747 | jcbowman | 2006-08-18 15:55:57 -0600 (Fri, 18 Aug 2006) | 2 lines +r1747 | jcbowman | 2006-08-18 23:55:57 +0200 (Fri, 18 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/main.cc Removed unneeded settings qualifiers. ------------------------------------------------------------------------ -r1746 | jcbowman | 2006-08-18 15:54:35 -0600 (Fri, 18 Aug 2006) | 2 lines +r1746 | jcbowman | 2006-08-18 23:54:35 +0200 (Fri, 18 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Minor optimization. ------------------------------------------------------------------------ -r1745 | jcbowman | 2006-08-18 15:52:27 -0600 (Fri, 18 Aug 2006) | 7 lines +r1745 | jcbowman | 2006-08-18 23:52:27 +0200 (Fri, 18 Aug 2006) | 7 lines Changed paths: M /trunk/asymptote/base/plain_constants.asy M /trunk/asymptote/base/plain_paths.asy @@ -26171,28 +26573,28 @@ write(file fout, suffix suffix=none); ------------------------------------------------------------------------ -r1744 | jcbowman | 2006-08-18 14:46:47 -0600 (Fri, 18 Aug 2006) | 2 lines +r1744 | jcbowman | 2006-08-18 22:46:47 +0200 (Fri, 18 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove spurious grestore; if no labels move grestore before showpage. ------------------------------------------------------------------------ -r1743 | jcbowman | 2006-08-17 14:29:46 -0600 (Thu, 17 Aug 2006) | 2 lines +r1743 | jcbowman | 2006-08-17 22:29:46 +0200 (Thu, 17 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Move GCLIBS dependency before others. ------------------------------------------------------------------------ -r1742 | jcbowman | 2006-08-17 12:24:16 -0600 (Thu, 17 Aug 2006) | 2 lines +r1742 | jcbowman | 2006-08-17 20:24:16 +0200 (Thu, 17 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/entry.cc Added missing brace. ------------------------------------------------------------------------ -r1741 | jcbowman | 2006-08-17 11:41:33 -0600 (Thu, 17 Aug 2006) | 7 lines +r1741 | jcbowman | 2006-08-17 19:41:33 +0200 (Thu, 17 Aug 2006) | 7 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/dec.cc @@ -26218,7 +26620,7 @@ global functions and variables in a module named by string s. Removed unneeded init_readline in readline() routine. ------------------------------------------------------------------------ -r1740 | jcbowman | 2006-08-16 16:16:45 -0600 (Wed, 16 Aug 2006) | 4 lines +r1740 | jcbowman | 2006-08-17 00:16:45 +0200 (Thu, 17 Aug 2006) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -26228,7 +26630,7 @@ Fixed xtick default argument issue. Added 3d tick routines. ------------------------------------------------------------------------ -r1739 | jcbowman | 2006-08-16 10:05:37 -0600 (Wed, 16 Aug 2006) | 2 lines +r1739 | jcbowman | 2006-08-16 18:05:37 +0200 (Wed, 16 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -26238,21 +26640,21 @@ Changed paths: Minor edits. ------------------------------------------------------------------------ -r1738 | jcbowman | 2006-08-16 09:54:54 -0600 (Wed, 16 Aug 2006) | 2 lines +r1738 | jcbowman | 2006-08-16 17:54:54 +0200 (Wed, 16 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Truncate out-of-bounds position parameters in labelaxis. ------------------------------------------------------------------------ -r1737 | hammera | 2006-08-10 00:39:19 -0600 (Thu, 10 Aug 2006) | 2 lines +r1737 | hammera | 2006-08-10 08:39:19 +0200 (Thu, 10 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Partially undid last change. ------------------------------------------------------------------------ -r1736 | hammera | 2006-08-10 00:32:54 -0600 (Thu, 10 Aug 2006) | 2 lines +r1736 | hammera | 2006-08-10 08:32:54 +0200 (Thu, 10 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -26260,7 +26662,7 @@ Changed paths: Added tabcompletion to documentation. ------------------------------------------------------------------------ -r1735 | jcbowman | 2006-08-09 08:21:11 -0600 (Wed, 09 Aug 2006) | 4 lines +r1735 | jcbowman | 2006-08-09 16:21:11 +0200 (Wed, 09 Aug 2006) | 4 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/picture.h @@ -26270,14 +26672,14 @@ Simplified texprocess and postprocess signatures. Removed diagnostic. ------------------------------------------------------------------------ -r1734 | jcbowman | 2006-08-09 08:12:20 -0600 (Wed, 09 Aug 2006) | 2 lines +r1734 | jcbowman | 2006-08-09 16:12:20 +0200 (Wed, 09 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Removed bounding box fuzz. ------------------------------------------------------------------------ -r1733 | hammera | 2006-08-08 15:41:53 -0600 (Tue, 08 Aug 2006) | 2 lines +r1733 | hammera | 2006-08-08 23:41:53 +0200 (Tue, 08 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/entry.cc @@ -26295,14 +26697,14 @@ Changed paths: Added intelligent readline auto-completion based on the environment. ------------------------------------------------------------------------ -r1732 | jcbowman | 2006-08-08 10:27:34 -0600 (Tue, 08 Aug 2006) | 2 lines +r1732 | jcbowman | 2006-08-08 18:27:34 +0200 (Tue, 08 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented interp. ------------------------------------------------------------------------ -r1731 | jcbowman | 2006-08-08 04:02:56 -0600 (Tue, 08 Aug 2006) | 2 lines +r1731 | jcbowman | 2006-08-08 12:02:56 +0200 (Tue, 08 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/annotation.asy M /trunk/asymptote/picture.cc @@ -26310,14 +26712,14 @@ Changed paths: Fixed page alignment. ------------------------------------------------------------------------ -r1730 | jcbowman | 2006-08-07 20:20:15 -0600 (Mon, 07 Aug 2006) | 2 lines +r1730 | jcbowman | 2006-08-08 04:20:15 +0200 (Tue, 08 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Added newl after gsave. ------------------------------------------------------------------------ -r1729 | jcbowman | 2006-08-07 14:07:53 -0600 (Mon, 07 Aug 2006) | 2 lines +r1729 | jcbowman | 2006-08-07 22:07:53 +0200 (Mon, 07 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/env.h M /trunk/asymptote/genv.h @@ -26325,21 +26727,21 @@ Changed paths: Removed unused code. ------------------------------------------------------------------------ -r1728 | jcbowman | 2006-08-07 09:46:36 -0600 (Mon, 07 Aug 2006) | 2 lines +r1728 | jcbowman | 2006-08-07 17:46:36 +0200 (Mon, 07 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Turn off tab completion after readline. ------------------------------------------------------------------------ -r1727 | jcbowman | 2006-08-07 09:36:42 -0600 (Mon, 07 Aug 2006) | 2 lines +r1727 | jcbowman | 2006-08-07 17:36:42 +0200 (Mon, 07 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/main.cc Simplified interactive mode. ------------------------------------------------------------------------ -r1726 | jcbowman | 2006-08-07 08:20:46 -0600 (Mon, 07 Aug 2006) | 3 lines +r1726 | jcbowman | 2006-08-07 16:20:46 +0200 (Mon, 07 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/base/plain_picture.asy M /trunk/asymptote/doc/asy.1 @@ -26358,42 +26760,42 @@ Simplified page alignment: -a Z nolonger implies -notex, annotation now works even with negative bounding box coordinates. ------------------------------------------------------------------------ -r1725 | hammera | 2006-08-05 00:03:41 -0600 (Sat, 05 Aug 2006) | 2 lines +r1725 | hammera | 2006-08-05 08:03:41 +0200 (Sat, 05 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Removed accidentally added debugging output. ------------------------------------------------------------------------ -r1724 | hammera | 2006-08-04 23:56:57 -0600 (Fri, 04 Aug 2006) | 2 lines +r1724 | hammera | 2006-08-05 07:56:57 +0200 (Sat, 05 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fixed horizontal drawline bug. ------------------------------------------------------------------------ -r1723 | jcbowman | 2006-08-03 06:47:03 -0600 (Thu, 03 Aug 2006) | 2 lines +r1723 | jcbowman | 2006-08-03 14:47:03 +0200 (Thu, 03 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated implicit scaling documentation. ------------------------------------------------------------------------ -r1722 | jcbowman | 2006-08-02 13:02:50 -0600 (Wed, 02 Aug 2006) | 2 lines +r1722 | jcbowman | 2006-08-02 21:02:50 +0200 (Wed, 02 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Check for interrupts on for(;;). ------------------------------------------------------------------------ -r1721 | jcbowman | 2006-08-02 12:46:17 -0600 (Wed, 02 Aug 2006) | 2 lines +r1721 | jcbowman | 2006-08-02 20:46:17 +0200 (Wed, 02 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/annotate.asy Removed unneeded %s. ------------------------------------------------------------------------ -r1720 | jcbowman | 2006-08-02 12:38:03 -0600 (Wed, 02 Aug 2006) | 2 lines +r1720 | jcbowman | 2006-08-02 20:38:03 +0200 (Wed, 02 Aug 2006) | 2 lines Changed paths: A /trunk/asymptote/base/annotate.asy M /trunk/asymptote/doc/asymptote.texi @@ -26402,14 +26804,14 @@ Changed paths: Added support for Adobe Reader annotations. ------------------------------------------------------------------------ -r1719 | hammera | 2006-08-01 13:17:50 -0600 (Tue, 01 Aug 2006) | 2 lines +r1719 | hammera | 2006-08-01 21:17:50 +0200 (Tue, 01 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy.vim Improved highlighting of strings and scaling expressions. ------------------------------------------------------------------------ -r1718 | hammera | 2006-08-01 13:16:51 -0600 (Tue, 01 Aug 2006) | 3 lines +r1718 | hammera | 2006-08-01 21:16:51 +0200 (Tue, 01 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/camp.y @@ -26417,28 +26819,28 @@ Allow empty test expression in for loop. ------------------------------------------------------------------------ -r1717 | hammera | 2006-08-01 13:16:21 -0600 (Tue, 01 Aug 2006) | 2 lines +r1717 | hammera | 2006-08-01 21:16:21 +0200 (Tue, 01 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/exp.h Clarified comments. ------------------------------------------------------------------------ -r1716 | jcbowman | 2006-08-01 08:40:11 -0600 (Tue, 01 Aug 2006) | 2 lines +r1716 | jcbowman | 2006-08-01 16:40:11 +0200 (Tue, 01 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.13svn. ------------------------------------------------------------------------ -r1715 | jcbowman | 2006-08-01 06:46:11 -0600 (Tue, 01 Aug 2006) | 2 lines +r1715 | jcbowman | 2006-08-01 14:46:11 +0200 (Tue, 01 Aug 2006) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Fix cxx warning messages. ------------------------------------------------------------------------ -r1714 | jcbowman | 2006-08-01 06:32:23 -0600 (Tue, 01 Aug 2006) | 3 lines +r1714 | jcbowman | 2006-08-01 14:32:23 +0200 (Tue, 01 Aug 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -26447,21 +26849,21 @@ Use command-line version of ghostscript (gswin32c.exe) under MSDOS to avoid spurious ghostscript window when producing pdf files. ------------------------------------------------------------------------ -r1713 | jcbowman | 2006-07-31 14:42:09 -0600 (Mon, 31 Jul 2006) | 2 lines +r1713 | jcbowman | 2006-07-31 22:42:09 +0200 (Mon, 31 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO Updated. ------------------------------------------------------------------------ -r1712 | jcbowman | 2006-07-31 14:23:50 -0600 (Mon, 31 Jul 2006) | 2 lines +r1712 | jcbowman | 2006-07-31 22:23:50 +0200 (Mon, 31 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/pen.h Simplify pen constructors. ------------------------------------------------------------------------ -r1711 | jcbowman | 2006-07-31 14:12:33 -0600 (Mon, 31 Jul 2006) | 6 lines +r1711 | jcbowman | 2006-07-31 22:12:33 +0200 (Mon, 31 Jul 2006) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawlabel.cc @@ -26479,14 +26881,14 @@ Handle DEFLINE correctly. Change string to mem::string throughout pen class. ------------------------------------------------------------------------ -r1710 | jcbowman | 2006-07-31 14:09:15 -0600 (Mon, 31 Jul 2006) | 2 lines +r1710 | jcbowman | 2006-07-31 22:09:15 +0200 (Mon, 31 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/cylinderskeleton.asy Use heavygreen instead of green. ------------------------------------------------------------------------ -r1709 | jcbowman | 2006-07-31 14:07:33 -0600 (Mon, 31 Jul 2006) | 2 lines +r1709 | jcbowman | 2006-07-31 22:07:33 +0200 (Mon, 31 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/examples/slidedemo.asy @@ -26494,35 +26896,35 @@ Changed paths: Added equations item. ------------------------------------------------------------------------ -r1708 | hammera | 2006-07-30 00:22:40 -0600 (Sun, 30 Jul 2006) | 2 lines +r1708 | hammera | 2006-07-30 08:22:40 +0200 (Sun, 30 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/exp.cc Delay call of getName, so that it is only called when the name is used. ------------------------------------------------------------------------ -r1707 | jcbowman | 2006-07-22 13:43:23 -0600 (Sat, 22 Jul 2006) | 2 lines +r1707 | jcbowman | 2006-07-22 21:43:23 +0200 (Sat, 22 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Fixed label fuzz. ------------------------------------------------------------------------ -r1706 | jcbowman | 2006-07-22 01:10:50 -0600 (Sat, 22 Jul 2006) | 2 lines +r1706 | jcbowman | 2006-07-22 09:10:50 +0200 (Sat, 22 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor additions to Help section. ------------------------------------------------------------------------ -r1705 | jcbowman | 2006-07-22 01:08:18 -0600 (Sat, 22 Jul 2006) | 2 lines +r1705 | jcbowman | 2006-07-22 09:08:18 +0200 (Sat, 22 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Account for scale in label bounding box calculation. ------------------------------------------------------------------------ -r1704 | jcbowman | 2006-07-22 01:07:15 -0600 (Sat, 22 Jul 2006) | 2 lines +r1704 | jcbowman | 2006-07-22 09:07:15 +0200 (Sat, 22 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/runtime.in @@ -26530,35 +26932,35 @@ Changed paths: Renamed interact() to interactive(). ------------------------------------------------------------------------ -r1703 | jcbowman | 2006-07-22 01:06:34 -0600 (Sat, 22 Jul 2006) | 2 lines +r1703 | jcbowman | 2006-07-22 09:06:34 +0200 (Sat, 22 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fix Step calculation (special case). ------------------------------------------------------------------------ -r1702 | jcbowman | 2006-07-22 00:59:44 -0600 (Sat, 22 Jul 2006) | 2 lines +r1702 | jcbowman | 2006-07-22 08:59:44 +0200 (Sat, 22 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/main.cc Interactive reset should call cleanup, not exitFunction, and set uptodate=true. ------------------------------------------------------------------------ -r1701 | jcbowman | 2006-07-11 15:52:29 -0600 (Tue, 11 Jul 2006) | 2 lines +r1701 | jcbowman | 2006-07-11 23:52:29 +0200 (Tue, 11 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/INSTALL Updated. ------------------------------------------------------------------------ -r1700 | jcbowman | 2006-07-11 15:41:51 -0600 (Tue, 11 Jul 2006) | 2 lines +r1700 | jcbowman | 2006-07-11 23:41:51 +0200 (Tue, 11 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain_pens.asy Added default pen argument to Dotted(). ------------------------------------------------------------------------ -r1699 | jcbowman | 2006-07-09 21:16:08 -0600 (Sun, 09 Jul 2006) | 5 lines +r1699 | jcbowman | 2006-07-10 05:16:08 +0200 (Mon, 10 Jul 2006) | 5 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/asymptote.spec @@ -26576,7 +26978,7 @@ without causing an execution interrupt. Make scroll a setting instead of a function call. ------------------------------------------------------------------------ -r1698 | jcbowman | 2006-07-08 22:10:25 -0600 (Sat, 08 Jul 2006) | 2 lines +r1698 | jcbowman | 2006-07-09 06:10:25 +0200 (Sun, 09 Jul 2006) | 2 lines Changed paths: D /trunk/asymptote/base/Label.asy D /trunk/asymptote/base/arcs.asy @@ -26612,35 +27014,35 @@ Changed paths: Added prefix plain_ to internal plain includes. ------------------------------------------------------------------------ -r1697 | jcbowman | 2006-07-07 23:05:42 -0600 (Fri, 07 Jul 2006) | 2 lines +r1697 | jcbowman | 2006-07-08 07:05:42 +0200 (Sat, 08 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Add missing clear() function to remove all breakpoints. ------------------------------------------------------------------------ -r1696 | jcbowman | 2006-07-07 23:03:10 -0600 (Fri, 07 Jul 2006) | 2 lines +r1696 | jcbowman | 2006-07-08 07:03:10 +0200 (Sat, 08 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Simplified partialsum. ------------------------------------------------------------------------ -r1695 | jcbowman | 2006-07-07 11:10:28 -0600 (Fri, 07 Jul 2006) | 2 lines +r1695 | jcbowman | 2006-07-07 19:10:28 +0200 (Fri, 07 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Removed page break. ------------------------------------------------------------------------ -r1694 | jcbowman | 2006-07-07 11:06:25 -0600 (Fri, 07 Jul 2006) | 2 lines +r1694 | jcbowman | 2006-07-07 19:06:25 +0200 (Fri, 07 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented ellipse. ------------------------------------------------------------------------ -r1693 | jcbowman | 2006-07-07 10:41:38 -0600 (Fri, 07 Jul 2006) | 2 lines +r1693 | jcbowman | 2006-07-07 18:41:38 +0200 (Fri, 07 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/bezier2.asy @@ -26648,14 +27050,14 @@ Changed paths: Moved "Drawing Commands" section to immediately follow tutorial. ------------------------------------------------------------------------ -r1692 | jcbowman | 2006-07-06 16:30:18 -0600 (Thu, 06 Jul 2006) | 2 lines +r1692 | jcbowman | 2006-07-07 00:30:18 +0200 (Fri, 07 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation improvements. ------------------------------------------------------------------------ -r1691 | jcbowman | 2006-07-06 16:17:13 -0600 (Thu, 06 Jul 2006) | 4 lines +r1691 | jcbowman | 2006-07-07 00:17:13 +0200 (Fri, 07 Jul 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/bezier.asy @@ -26667,40 +27069,40 @@ Fixed documentation of periodic tridiagonal solver. Minor edits to Bezier curve documentation. ------------------------------------------------------------------------ -r1690 | rmarinov | 2006-07-06 14:05:53 -0600 (Thu, 06 Jul 2006) | 1 line +r1690 | rmarinov | 2006-07-06 22:05:53 +0200 (Thu, 06 Jul 2006) | 1 line Changed paths: A /trunk/asymptote/doc/bezier2.asy Added a bezier curves example - /doc/bezier2.asy . ------------------------------------------------------------------------ -r1689 | jcbowman | 2006-07-06 10:55:47 -0600 (Thu, 06 Jul 2006) | 2 lines +r1689 | jcbowman | 2006-07-06 18:55:47 +0200 (Thu, 06 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Replace double quotes with single quotes for compatibility with \usepackage{german}. ------------------------------------------------------------------------ -r1688 | rmarinov | 2006-07-06 10:55:47 -0600 (Thu, 06 Jul 2006) | 1 line +r1688 | rmarinov | 2006-07-06 18:55:47 +0200 (Thu, 06 Jul 2006) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Added some more information on Bezier curves. ------------------------------------------------------------------------ -r1687 | jcbowman | 2006-07-06 01:05:00 -0600 (Thu, 06 Jul 2006) | 2 lines +r1687 | jcbowman | 2006-07-06 09:05:00 +0200 (Thu, 06 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.12svn. ------------------------------------------------------------------------ -r1686 | jcbowman | 2006-07-06 00:10:14 -0600 (Thu, 06 Jul 2006) | 2 lines +r1686 | jcbowman | 2006-07-06 08:10:14 +0200 (Thu, 06 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Support g++ 3.3.4. ------------------------------------------------------------------------ -r1685 | jcbowman | 2006-07-05 23:53:55 -0600 (Wed, 05 Jul 2006) | 2 lines +r1685 | jcbowman | 2006-07-06 07:53:55 +0200 (Thu, 06 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/runtime.in @@ -26709,14 +27111,14 @@ Changed paths: Fixed cxx warning messages. ------------------------------------------------------------------------ -r1684 | jcbowman | 2006-07-05 22:39:14 -0600 (Wed, 05 Jul 2006) | 2 lines +r1684 | jcbowman | 2006-07-06 06:39:14 +0200 (Thu, 06 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added reference to graph3. ------------------------------------------------------------------------ -r1683 | jcbowman | 2006-07-05 12:28:58 -0600 (Wed, 05 Jul 2006) | 2 lines +r1683 | jcbowman | 2006-07-05 20:28:58 +0200 (Wed, 05 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/debugger.asy M /trunk/asymptote/runtime.in @@ -26724,7 +27126,7 @@ Changed paths: Renamed locate to locatefile. ------------------------------------------------------------------------ -r1682 | jcbowman | 2006-07-05 01:15:18 -0600 (Wed, 05 Jul 2006) | 8 lines +r1682 | jcbowman | 2006-07-05 09:15:18 +0200 (Wed, 05 Jul 2006) | 8 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/base/debugger.asy @@ -26746,14 +27148,14 @@ Moved realmult to runtime. ------------------------------------------------------------------------ -r1681 | jcbowman | 2006-07-01 03:05:34 -0600 (Sat, 01 Jul 2006) | 2 lines +r1681 | jcbowman | 2006-07-01 11:05:34 +0200 (Sat, 01 Jul 2006) | 2 lines Changed paths: M /trunk/asymptote/base/debugger.asy Removed spurious write. ------------------------------------------------------------------------ -r1680 | jcbowman | 2006-07-01 03:03:41 -0600 (Sat, 01 Jul 2006) | 4 lines +r1680 | jcbowman | 2006-07-01 11:03:41 +0200 (Sat, 01 Jul 2006) | 4 lines Changed paths: M /trunk/asymptote/base/debugger.asy M /trunk/asymptote/doc/asymptote.texi @@ -26770,7 +27172,7 @@ Simplified debugger: removed step, renamed line to step, and make trace toggle. Prune duplicate trace messages. ------------------------------------------------------------------------ -r1679 | jcbowman | 2006-07-01 01:20:21 -0600 (Sat, 01 Jul 2006) | 6 lines +r1679 | jcbowman | 2006-07-01 09:20:21 +0200 (Sat, 01 Jul 2006) | 6 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/base/pens.asy @@ -26793,7 +27195,7 @@ Added twice setting to resolve LaTeX references. Improve embedded movie example. ------------------------------------------------------------------------ -r1678 | jcbowman | 2006-06-30 11:09:49 -0600 (Fri, 30 Jun 2006) | 4 lines +r1678 | jcbowman | 2006-06-30 19:09:49 +0200 (Fri, 30 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/examples/animations/embeddedmovie.asy M /trunk/asymptote/runtime.in @@ -26803,7 +27205,7 @@ Generate wheel.mpg. Suppress vbv_delay overflow messages during mpeg merge. ------------------------------------------------------------------------ -r1677 | jcbowman | 2006-06-30 10:34:52 -0600 (Fri, 30 Jun 2006) | 2 lines +r1677 | jcbowman | 2006-06-30 18:34:52 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/markers.asy @@ -26811,21 +27213,21 @@ Changed paths: Use defaultformat again instead of empty format string. ------------------------------------------------------------------------ -r1676 | jcbowman | 2006-06-30 10:27:19 -0600 (Fri, 30 Jun 2006) | 2 lines +r1676 | jcbowman | 2006-06-30 18:27:19 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Improve discussion of stack overflow detection. ------------------------------------------------------------------------ -r1675 | jcbowman | 2006-06-30 08:35:14 -0600 (Fri, 30 Jun 2006) | 2 lines +r1675 | jcbowman | 2006-06-30 16:35:14 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/animations/embeddedmovie.asy Added missing file. ------------------------------------------------------------------------ -r1674 | jcbowman | 2006-06-29 22:54:03 -0600 (Thu, 29 Jun 2006) | 2 lines +r1674 | jcbowman | 2006-06-30 06:54:03 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -26834,21 +27236,21 @@ Changed paths: Added 3D array transpose and copy. ------------------------------------------------------------------------ -r1673 | jcbowman | 2006-06-29 22:37:03 -0600 (Thu, 29 Jun 2006) | 2 lines +r1673 | jcbowman | 2006-06-30 06:37:03 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/main.cc Prevent runtime errors and interrupts from resetting interactive environment. ------------------------------------------------------------------------ -r1672 | jcbowman | 2006-06-29 22:35:10 -0600 (Thu, 29 Jun 2006) | 2 lines +r1672 | jcbowman | 2006-06-30 06:35:10 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h Removed extra blank line at end of 3D array write. ------------------------------------------------------------------------ -r1671 | jcbowman | 2006-06-29 17:10:05 -0600 (Thu, 29 Jun 2006) | 2 lines +r1671 | jcbowman | 2006-06-30 01:10:05 +0200 (Fri, 30 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -26858,7 +27260,7 @@ Changed paths: Moved introductory material into Tutorial section. ------------------------------------------------------------------------ -r1670 | jcbowman | 2006-06-29 11:37:38 -0600 (Thu, 29 Jun 2006) | 2 lines +r1670 | jcbowman | 2006-06-29 19:37:38 +0200 (Thu, 29 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asymptote.py M /trunk/asymptote/doc/asy.1 @@ -26869,7 +27271,7 @@ Changed paths: Added prompt and quiet settings. ------------------------------------------------------------------------ -r1669 | jcbowman | 2006-06-29 06:20:33 -0600 (Thu, 29 Jun 2006) | 3 lines +r1669 | jcbowman | 2006-06-29 14:20:33 +0200 (Thu, 29 Jun 2006) | 3 lines Changed paths: M /trunk/asymptote/main.cc @@ -26877,21 +27279,21 @@ Don't exit if stack overflow or segmentation fault handlers fail (to workaround broken libsigsegv-2.3; upgrading to libsigsegv-2.4 is recommended). ------------------------------------------------------------------------ -r1668 | jcbowman | 2006-06-28 21:59:26 -0600 (Wed, 28 Jun 2006) | 2 lines +r1668 | jcbowman | 2006-06-29 05:59:26 +0200 (Thu, 29 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Renamed Examples section to Tutorial. ------------------------------------------------------------------------ -r1667 | jcbowman | 2006-06-28 12:40:09 -0600 (Wed, 28 Jun 2006) | 2 lines +r1667 | jcbowman | 2006-06-28 20:40:09 +0200 (Wed, 28 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/debugger.asy Removed unused line. ------------------------------------------------------------------------ -r1666 | jcbowman | 2006-06-28 12:38:09 -0600 (Wed, 28 Jun 2006) | 10 lines +r1666 | jcbowman | 2006-06-28 20:38:09 +0200 (Wed, 28 Jun 2006) | 10 lines Changed paths: A /trunk/asymptote/base/debugger.asy M /trunk/asymptote/base/plain.asy @@ -26909,28 +27311,28 @@ quits debugger and ends execution. Better fix for memory leak. ------------------------------------------------------------------------ -r1665 | jcbowman | 2006-06-28 10:59:27 -0600 (Wed, 28 Jun 2006) | 2 lines +r1665 | jcbowman | 2006-06-28 18:59:27 +0200 (Wed, 28 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation updates. ------------------------------------------------------------------------ -r1664 | hammera | 2006-06-28 01:24:15 -0600 (Wed, 28 Jun 2006) | 2 lines +r1664 | hammera | 2006-06-28 09:24:15 +0200 (Wed, 28 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Ensured that the basis in lookAt() is orthonormal. ------------------------------------------------------------------------ -r1663 | jcbowman | 2006-06-28 00:35:12 -0600 (Wed, 28 Jun 2006) | 2 lines +r1663 | jcbowman | 2006-06-28 08:35:12 +0200 (Wed, 28 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.11svn. ------------------------------------------------------------------------ -r1662 | jcbowman | 2006-06-28 00:03:25 -0600 (Wed, 28 Jun 2006) | 2 lines +r1662 | jcbowman | 2006-06-28 08:03:25 +0200 (Wed, 28 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/util.cc @@ -26939,14 +27341,14 @@ Changed paths: Add support for spaces in Asymptote and output filenames. ------------------------------------------------------------------------ -r1661 | jcbowman | 2006-06-27 22:51:10 -0600 (Tue, 27 Jun 2006) | 2 lines +r1661 | jcbowman | 2006-06-28 06:51:10 +0200 (Wed, 28 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Added more quotes. ------------------------------------------------------------------------ -r1660 | jcbowman | 2006-06-27 22:44:55 -0600 (Tue, 27 Jun 2006) | 4 lines +r1660 | jcbowman | 2006-06-28 06:44:55 +0200 (Wed, 28 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.in @@ -26957,7 +27359,7 @@ Add more quotes for MSDOS users who like to use spaces in filenames. Remove quotes in diagnostic messages. ------------------------------------------------------------------------ -r1659 | jcbowman | 2006-06-27 13:30:09 -0600 (Tue, 27 Jun 2006) | 4 lines +r1659 | jcbowman | 2006-06-27 21:30:09 +0200 (Tue, 27 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy @@ -26966,7 +27368,7 @@ Cache source code in debugger. Move debugger help message to immediately before prompt. ------------------------------------------------------------------------ -r1658 | jcbowman | 2006-06-27 12:42:03 -0600 (Tue, 27 Jun 2006) | 4 lines +r1658 | jcbowman | 2006-06-27 20:42:03 +0200 (Tue, 27 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -26980,14 +27382,14 @@ Extended and documented debugger. Fixed string reads of lines containing only whitespace. ------------------------------------------------------------------------ -r1657 | jcbowman | 2006-06-27 01:47:31 -0600 (Tue, 27 Jun 2006) | 2 lines +r1657 | jcbowman | 2006-06-27 09:47:31 +0200 (Tue, 27 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/errorbars.asy Fix drawpen. ------------------------------------------------------------------------ -r1656 | jcbowman | 2006-06-27 01:45:40 -0600 (Tue, 27 Jun 2006) | 2 lines +r1656 | jcbowman | 2006-06-27 09:45:40 +0200 (Tue, 27 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/filldraw.asy M /trunk/asymptote/base/picture.asy @@ -26996,7 +27398,7 @@ Changed paths: Make default drawpen currentpen again. ------------------------------------------------------------------------ -r1655 | jcbowman | 2006-06-27 01:31:48 -0600 (Tue, 27 Jun 2006) | 2 lines +r1655 | jcbowman | 2006-06-27 09:31:48 +0200 (Tue, 27 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/runtime.in @@ -27005,7 +27407,7 @@ Changed paths: Work around atbreakpoint memory leak. ------------------------------------------------------------------------ -r1654 | jcbowman | 2006-06-26 23:25:54 -0600 (Mon, 26 Jun 2006) | 4 lines +r1654 | jcbowman | 2006-06-27 07:25:54 +0200 (Tue, 27 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/filldraw.asy M /trunk/asymptote/base/markers.asy @@ -27022,7 +27424,7 @@ Make Fill and FillDraw work with markers and superpaths. Minor formatting updates. ------------------------------------------------------------------------ -r1653 | jcbowman | 2006-06-26 22:23:17 -0600 (Mon, 26 Jun 2006) | 4 lines +r1653 | jcbowman | 2006-06-27 06:23:17 +0200 (Tue, 27 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/util.cc @@ -27032,7 +27434,7 @@ Suppress all errors when quiet=2. Catch handled_error in configuration files. ------------------------------------------------------------------------ -r1652 | jcbowman | 2006-06-26 21:14:44 -0600 (Mon, 26 Jun 2006) | 4 lines +r1652 | jcbowman | 2006-06-27 05:14:44 +0200 (Tue, 27 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi @@ -27043,14 +27445,14 @@ Added parametric surface example. Distinguish between distances in front of and behind camera. ------------------------------------------------------------------------ -r1651 | cmsavage | 2006-06-26 18:02:59 -0600 (Mon, 26 Jun 2006) | 1 line +r1651 | cmsavage | 2006-06-27 02:02:59 +0200 (Tue, 27 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi Implemented parametric surfaces. Surface fill/mesh is no longer drawn for nullpen arguments. ------------------------------------------------------------------------ -r1650 | jcbowman | 2006-06-26 16:04:47 -0600 (Mon, 26 Jun 2006) | 4 lines +r1650 | jcbowman | 2006-06-27 00:04:47 +0200 (Tue, 27 Jun 2006) | 4 lines Changed paths: D /trunk/asymptote/base/debugger.asy M /trunk/asymptote/base/plain.asy @@ -27062,14 +27464,14 @@ Fixed segmentation fault if atbreakpoint isn't defined. Moved debugger.asy into plain.asy. ------------------------------------------------------------------------ -r1649 | jcbowman | 2006-06-26 02:02:39 -0600 (Mon, 26 Jun 2006) | 2 lines +r1649 | jcbowman | 2006-06-26 10:02:39 +0200 (Mon, 26 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Support compilation under g++-3.3.4. ------------------------------------------------------------------------ -r1648 | jcbowman | 2006-06-26 01:18:44 -0600 (Mon, 26 Jun 2006) | 2 lines +r1648 | jcbowman | 2006-06-26 09:18:44 +0200 (Mon, 26 Jun 2006) | 2 lines Changed paths: A /trunk/asymptote/base/debugger.asy M /trunk/asymptote/errormsg.h @@ -27082,7 +27484,7 @@ Changed paths: Debugger support. ------------------------------------------------------------------------ -r1647 | jcbowman | 2006-06-25 22:13:21 -0600 (Sun, 25 Jun 2006) | 4 lines +r1647 | jcbowman | 2006-06-26 06:13:21 +0200 (Mon, 26 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -27098,14 +27500,14 @@ Implement rudimentary debugger. Fix interrupts. ------------------------------------------------------------------------ -r1646 | jcbowman | 2006-06-25 22:10:58 -0600 (Sun, 25 Jun 2006) | 2 lines +r1646 | jcbowman | 2006-06-26 06:10:58 +0200 (Mon, 26 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Suppress stderr for gv workaround. ------------------------------------------------------------------------ -r1645 | jcbowman | 2006-06-25 22:10:14 -0600 (Sun, 25 Jun 2006) | 2 lines +r1645 | jcbowman | 2006-06-26 06:10:14 +0200 (Mon, 26 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/picture.cc @@ -27116,47 +27518,47 @@ Changed paths: Suppress stderr only for gv workaround. ------------------------------------------------------------------------ -r1644 | jcbowman | 2006-06-25 19:20:24 -0600 (Sun, 25 Jun 2006) | 2 lines +r1644 | jcbowman | 2006-06-26 03:20:24 +0200 (Mon, 26 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/util.cc Work around file descriptor problem with MikTeX 2.5. ------------------------------------------------------------------------ -r1643 | jcbowman | 2006-06-23 21:03:52 -0600 (Fri, 23 Jun 2006) | 2 lines +r1643 | jcbowman | 2006-06-24 05:03:52 +0200 (Sat, 24 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/parametricgraph.asy Added Crop argument. ------------------------------------------------------------------------ -r1642 | jcbowman | 2006-06-23 21:02:52 -0600 (Fri, 23 Jun 2006) | 2 lines +r1642 | jcbowman | 2006-06-24 05:02:52 +0200 (Sat, 24 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Added autoconf > 2.59 patch submitted by Chris. ------------------------------------------------------------------------ -r1641 | cmsavage | 2006-06-23 18:06:33 -0600 (Fri, 23 Jun 2006) | 1 line +r1641 | cmsavage | 2006-06-24 02:06:33 +0200 (Sat, 24 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/graph.asy Added crop argument to limits to match xlimits. ------------------------------------------------------------------------ -r1640 | cmsavage | 2006-06-23 18:04:34 -0600 (Fri, 23 Jun 2006) | 1 line +r1640 | cmsavage | 2006-06-24 02:04:34 +0200 (Sat, 24 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Corrected default crop argument of xlimits. ------------------------------------------------------------------------ -r1639 | cmsavage | 2006-06-23 17:08:52 -0600 (Fri, 23 Jun 2006) | 1 line +r1639 | cmsavage | 2006-06-24 01:08:52 +0200 (Sat, 24 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi Added picture argument and use of picture scaling to graph(...) functions that did not previously do this. ------------------------------------------------------------------------ -r1638 | jcbowman | 2006-06-23 06:12:58 -0600 (Fri, 23 Jun 2006) | 6 lines +r1638 | jcbowman | 2006-06-23 14:12:58 +0200 (Fri, 23 Jun 2006) | 6 lines Changed paths: M /trunk/asymptote/LICENSE M /trunk/asymptote/Makefile.in @@ -27171,7 +27573,7 @@ Replaced GPL LICENSE with newer version (FSF forgot to bump the version number!). ------------------------------------------------------------------------ -r1637 | jcbowman | 2006-06-22 16:35:05 -0600 (Thu, 22 Jun 2006) | 2 lines +r1637 | jcbowman | 2006-06-23 00:35:05 +0200 (Fri, 23 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/configure.ac @@ -27179,7 +27581,7 @@ Changed paths: Incremented version to 1.10svn. ------------------------------------------------------------------------ -r1636 | jcbowman | 2006-06-22 13:52:31 -0600 (Thu, 22 Jun 2006) | 2 lines +r1636 | jcbowman | 2006-06-22 21:52:31 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc M /trunk/asymptote/util.cc @@ -27187,7 +27589,7 @@ Changed paths: Make gv-3.6.1 bug workaround work with older versions like gv-3.5.8. ------------------------------------------------------------------------ -r1635 | jcbowman | 2006-06-22 00:19:45 -0600 (Thu, 22 Jun 2006) | 2 lines +r1635 | jcbowman | 2006-06-22 08:19:45 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/settings.cc @@ -27195,14 +27597,14 @@ Changed paths: Updated to MSDOS gs8.54. ------------------------------------------------------------------------ -r1634 | jcbowman | 2006-06-22 00:18:51 -0600 (Thu, 22 Jun 2006) | 2 lines +r1634 | jcbowman | 2006-06-22 08:18:51 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.09svn. ------------------------------------------------------------------------ -r1633 | jcbowman | 2006-06-21 22:36:17 -0600 (Wed, 21 Jun 2006) | 2 lines +r1633 | jcbowman | 2006-06-22 06:36:17 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec M /trunk/asymptote/doc/asymptote.texi @@ -27211,14 +27613,14 @@ Changed paths: Documented int[][] triangulate(pair[] z); for creating a triangular mesh. ------------------------------------------------------------------------ -r1632 | jcbowman | 2006-06-21 21:46:43 -0600 (Wed, 21 Jun 2006) | 2 lines +r1632 | jcbowman | 2006-06-22 05:46:43 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fixed make distclean. ------------------------------------------------------------------------ -r1631 | jcbowman | 2006-06-21 21:15:32 -0600 (Wed, 21 Jun 2006) | 2 lines +r1631 | jcbowman | 2006-06-22 05:15:32 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/tests/Makefile @@ -27226,14 +27628,14 @@ Changed paths: Clean up unneeded files. ------------------------------------------------------------------------ -r1630 | jcbowman | 2006-06-21 18:13:50 -0600 (Wed, 21 Jun 2006) | 2 lines +r1630 | jcbowman | 2006-06-22 02:13:50 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed warning messages. ------------------------------------------------------------------------ -r1629 | jcbowman | 2006-06-21 16:41:19 -0600 (Wed, 21 Jun 2006) | 2 lines +r1629 | jcbowman | 2006-06-22 00:41:19 +0200 (Thu, 22 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/Label.asy M /trunk/asymptote/base/arrows.asy @@ -27269,7 +27671,7 @@ Changed paths: Removed unneeded public modifiers. ------------------------------------------------------------------------ -r1628 | jcbowman | 2006-06-21 16:35:07 -0600 (Wed, 21 Jun 2006) | 7 lines +r1628 | jcbowman | 2006-06-22 00:35:07 +0200 (Thu, 22 Jun 2006) | 7 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/asymptote.texi @@ -27285,7 +27687,7 @@ titlepage. ------------------------------------------------------------------------ -r1627 | jcbowman | 2006-06-20 21:40:06 -0600 (Tue, 20 Jun 2006) | 6 lines +r1627 | jcbowman | 2006-06-21 05:40:06 +0200 (Wed, 21 Jun 2006) | 6 lines Changed paths: M /trunk/asymptote/configure.ac @@ -27296,7 +27698,7 @@ Fix help command by reverting broken Docdir change. ------------------------------------------------------------------------ -r1626 | jcbowman | 2006-06-20 13:12:52 -0600 (Tue, 20 Jun 2006) | 4 lines +r1626 | jcbowman | 2006-06-20 21:12:52 +0200 (Tue, 20 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/contour.asy @@ -27305,21 +27707,21 @@ Increased epsilon to fix corner cases. Suppress null labels. ------------------------------------------------------------------------ -r1625 | jcbowman | 2006-06-18 22:32:31 -0600 (Sun, 18 Jun 2006) | 2 lines +r1625 | jcbowman | 2006-06-19 06:32:31 +0200 (Mon, 19 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.08svn. ------------------------------------------------------------------------ -r1624 | jcbowman | 2006-06-18 21:34:40 -0600 (Sun, 18 Jun 2006) | 2 lines +r1624 | jcbowman | 2006-06-19 05:34:40 +0200 (Mon, 19 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fixed gv workaround. ------------------------------------------------------------------------ -r1623 | jcbowman | 2006-06-18 20:51:25 -0600 (Sun, 18 Jun 2006) | 2 lines +r1623 | jcbowman | 2006-06-19 04:51:25 +0200 (Mon, 19 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/runtime.in @@ -27328,7 +27730,7 @@ Changed paths: Fix cygwin build problems. ------------------------------------------------------------------------ -r1622 | jcbowman | 2006-06-18 10:39:54 -0600 (Sun, 18 Jun 2006) | 2 lines +r1622 | jcbowman | 2006-06-18 18:39:54 +0200 (Sun, 18 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/slopefield.asy @@ -27339,7 +27741,7 @@ Changed paths: Add and document contour labels. ------------------------------------------------------------------------ -r1621 | jcbowman | 2006-06-18 01:37:48 -0600 (Sun, 18 Jun 2006) | 4 lines +r1621 | jcbowman | 2006-06-18 09:37:48 +0200 (Sun, 18 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/laserlattice.asy @@ -27349,7 +27751,7 @@ Updated documentation regarding type-dependent array functions. Fixed example. ------------------------------------------------------------------------ -r1620 | jcbowman | 2006-06-18 01:24:06 -0600 (Sun, 18 Jun 2006) | 2 lines +r1620 | jcbowman | 2006-06-18 09:24:06 +0200 (Sun, 18 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/imagecontour.asy @@ -27357,7 +27759,7 @@ Changed paths: Add imagecontour example. ------------------------------------------------------------------------ -r1619 | jcbowman | 2006-06-18 01:03:23 -0600 (Sun, 18 Jun 2006) | 2 lines +r1619 | jcbowman | 2006-06-18 09:03:23 +0200 (Sun, 18 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -27371,14 +27773,14 @@ Changed paths: Add improved and simplified version of Chris' palette modifications. ------------------------------------------------------------------------ -r1618 | jcbowman | 2006-06-17 16:53:00 -0600 (Sat, 17 Jun 2006) | 2 lines +r1618 | jcbowman | 2006-06-18 00:53:00 +0200 (Sun, 18 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/arrows.asy Fixed arcarrowsize. ------------------------------------------------------------------------ -r1617 | jcbowman | 2006-06-17 16:49:51 -0600 (Sat, 17 Jun 2006) | 2 lines +r1617 | jcbowman | 2006-06-18 00:49:51 +0200 (Sun, 18 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/runtime.in @@ -27389,14 +27791,14 @@ Changed paths: Fixed and simplified LU decomposition, solve, and determinant. ------------------------------------------------------------------------ -r1616 | jcbowman | 2006-06-17 04:56:37 -0600 (Sat, 17 Jun 2006) | 2 lines +r1616 | jcbowman | 2006-06-17 12:56:37 +0200 (Sat, 17 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/array/solve.asy Simplified test. ------------------------------------------------------------------------ -r1615 | jcbowman | 2006-06-16 20:09:40 -0600 (Fri, 16 Jun 2006) | 2 lines +r1615 | jcbowman | 2006-06-17 04:09:40 +0200 (Sat, 17 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/doc/asymptote.texi @@ -27407,14 +27809,14 @@ Changed paths: Optimized solve and inverse. ------------------------------------------------------------------------ -r1614 | rmarinov | 2006-06-16 14:01:41 -0600 (Fri, 16 Jun 2006) | 1 line +r1614 | rmarinov | 2006-06-16 22:01:41 +0200 (Fri, 16 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/runtime.in A /trunk/asymptote/tests/array/solve.asy Added LU decomposition instead of Gauss-Seidel method in solve. Gauss-Seidel method is still used for finding inverses. Added a test for both. ------------------------------------------------------------------------ -r1613 | jcbowman | 2006-06-15 16:33:32 -0600 (Thu, 15 Jun 2006) | 4 lines +r1613 | jcbowman | 2006-06-16 00:33:32 +0200 (Fri, 16 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/arrows.asy M /trunk/asymptote/base/constants.asy @@ -27429,7 +27831,7 @@ Renamed Fill filltype to FillDraw and added Fill filltype that only does a fill. Fixed arrowsize capping code and added arrowsizelimit. ------------------------------------------------------------------------ -r1612 | jcbowman | 2006-06-15 14:41:13 -0600 (Thu, 15 Jun 2006) | 2 lines +r1612 | jcbowman | 2006-06-15 22:41:13 +0200 (Thu, 15 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/camp.l @@ -27440,14 +27842,14 @@ Changed paths: Renamed readable to restricted. ------------------------------------------------------------------------ -r1611 | jcbowman | 2006-06-14 15:55:06 -0600 (Wed, 14 Jun 2006) | 2 lines +r1611 | jcbowman | 2006-06-14 23:55:06 +0200 (Wed, 14 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/logo.asy Fine-tune logo. ------------------------------------------------------------------------ -r1610 | jcbowman | 2006-06-14 00:15:22 -0600 (Wed, 14 Jun 2006) | 4 lines +r1610 | jcbowman | 2006-06-14 08:15:22 +0200 (Wed, 14 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/doc/asymptote.texi @@ -27458,7 +27860,7 @@ Change defaultformat argument of PaletteTicks to "". Fix formatting issues. ------------------------------------------------------------------------ -r1609 | hammera | 2006-06-13 17:23:58 -0600 (Tue, 13 Jun 2006) | 2 lines +r1609 | hammera | 2006-06-14 01:23:58 +0200 (Wed, 14 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/asy.vim @@ -27475,13 +27877,13 @@ Changed paths: Added readable keyword, made public the default permission. ------------------------------------------------------------------------ -r1608 | rmarinov | 2006-06-13 14:49:16 -0600 (Tue, 13 Jun 2006) | 1 line +r1608 | rmarinov | 2006-06-13 22:49:16 +0200 (Tue, 13 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation for contours. ------------------------------------------------------------------------ -r1607 | jcbowman | 2006-06-13 13:14:18 -0600 (Tue, 13 Jun 2006) | 6 lines +r1607 | jcbowman | 2006-06-13 21:14:18 +0200 (Tue, 13 Jun 2006) | 6 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -27501,28 +27903,28 @@ Simplified contour interface. Added nonuniform contour mesh example. ------------------------------------------------------------------------ -r1606 | jcbowman | 2006-06-13 12:34:14 -0600 (Tue, 13 Jun 2006) | 2 lines +r1606 | jcbowman | 2006-06-13 20:34:14 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/arrows.asy Make arrowhead and arrowheadbbox public to allow them to be overloaded. ------------------------------------------------------------------------ -r1605 | rmarinov | 2006-06-13 11:10:27 -0600 (Tue, 13 Jun 2006) | 1 line +r1605 | rmarinov | 2006-06-13 19:10:27 +0200 (Tue, 13 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/runtime.in Added non-regularly spaced contouring. ------------------------------------------------------------------------ -r1604 | jcbowman | 2006-06-13 01:00:48 -0600 (Tue, 13 Jun 2006) | 2 lines +r1604 | jcbowman | 2006-06-13 09:00:48 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Use random pair for overwrite moves when align=(0,0). ------------------------------------------------------------------------ -r1603 | jcbowman | 2006-06-13 00:59:12 -0600 (Tue, 13 Jun 2006) | 2 lines +r1603 | jcbowman | 2006-06-13 08:59:12 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/plain.asy @@ -27533,49 +27935,49 @@ Changed paths: Formatting. ------------------------------------------------------------------------ -r1602 | jcbowman | 2006-06-13 00:54:17 -0600 (Tue, 13 Jun 2006) | 2 lines +r1602 | jcbowman | 2006-06-13 08:54:17 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fixed secondary logarithmic axes. ------------------------------------------------------------------------ -r1601 | jcbowman | 2006-06-13 00:34:56 -0600 (Tue, 13 Jun 2006) | 2 lines +r1601 | jcbowman | 2006-06-13 08:34:56 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fixed count computation (for endlabel=false). ------------------------------------------------------------------------ -r1600 | jcbowman | 2006-06-13 00:25:17 -0600 (Tue, 13 Jun 2006) | 2 lines +r1600 | jcbowman | 2006-06-13 08:25:17 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fixed alignment of rotated tick labels. ------------------------------------------------------------------------ -r1599 | jcbowman | 2006-06-12 22:37:10 -0600 (Mon, 12 Jun 2006) | 2 lines +r1599 | jcbowman | 2006-06-13 06:37:10 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Implemented more efficient guide collection algorithm. ------------------------------------------------------------------------ -r1598 | jcbowman | 2006-06-12 20:33:17 -0600 (Mon, 12 Jun 2006) | 2 lines +r1598 | jcbowman | 2006-06-13 04:33:17 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Added string option to assert. ------------------------------------------------------------------------ -r1597 | jcbowman | 2006-06-12 20:30:55 -0600 (Mon, 12 Jun 2006) | 2 lines +r1597 | jcbowman | 2006-06-13 04:30:55 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Standardize "could not load module" error message. ------------------------------------------------------------------------ -r1596 | jcbowman | 2006-06-12 20:29:02 -0600 (Mon, 12 Jun 2006) | 2 lines +r1596 | jcbowman | 2006-06-13 04:29:02 +0200 (Tue, 13 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/errormsg.h M /trunk/asymptote/stack.cc @@ -27583,14 +27985,14 @@ Changed paths: Use most up-to-date verbose setting for traceback. ------------------------------------------------------------------------ -r1595 | rmarinov | 2006-06-12 10:23:59 -0600 (Mon, 12 Jun 2006) | 1 line +r1595 | rmarinov | 2006-06-12 18:23:59 +0200 (Mon, 12 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/Delaunay.h M /trunk/asymptote/runtime.in Removed copying of unused variable in triangulation routine. ------------------------------------------------------------------------ -r1594 | jcbowman | 2006-06-11 14:05:28 -0600 (Sun, 11 Jun 2006) | 2 lines +r1594 | jcbowman | 2006-06-11 22:05:28 +0200 (Sun, 11 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -27598,14 +28000,14 @@ Changed paths: Removed executable flag. ------------------------------------------------------------------------ -r1593 | jcbowman | 2006-06-10 15:45:17 -0600 (Sat, 10 Jun 2006) | 2 lines +r1593 | jcbowman | 2006-06-10 23:45:17 +0200 (Sat, 10 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Make currentprojection public. ------------------------------------------------------------------------ -r1592 | jcbowman | 2006-06-10 15:42:22 -0600 (Sat, 10 Jun 2006) | 2 lines +r1592 | jcbowman | 2006-06-10 23:42:22 +0200 (Sat, 10 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/light.asy @@ -27614,7 +28016,7 @@ Changed paths: Import three as public so that currentprojection can be overridden. ------------------------------------------------------------------------ -r1591 | hammera | 2006-06-10 13:55:29 -0600 (Sat, 10 Jun 2006) | 5 lines +r1591 | hammera | 2006-06-10 21:55:29 +0200 (Sat, 10 Jun 2006) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -27625,35 +28027,35 @@ Handle degenerate cases in lookAt(). ------------------------------------------------------------------------ -r1590 | hammera | 2006-06-10 13:51:57 -0600 (Sat, 10 Jun 2006) | 2 lines +r1590 | hammera | 2006-06-10 21:51:57 +0200 (Sat, 10 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Noted built-in modules. ------------------------------------------------------------------------ -r1589 | jcbowman | 2006-06-09 22:16:41 -0600 (Fri, 09 Jun 2006) | 2 lines +r1589 | jcbowman | 2006-06-10 06:16:41 +0200 (Sat, 10 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Removed unused subtraction. ------------------------------------------------------------------------ -r1588 | jcbowman | 2006-06-09 22:05:53 -0600 (Fri, 09 Jun 2006) | 2 lines +r1588 | jcbowman | 2006-06-10 06:05:53 +0200 (Sat, 10 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fix overhead/underhead views. ------------------------------------------------------------------------ -r1587 | jcbowman | 2006-06-09 16:49:33 -0600 (Fri, 09 Jun 2006) | 2 lines +r1587 | jcbowman | 2006-06-10 00:49:33 +0200 (Sat, 10 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Added up argument to lookAt; remove lookAtOrigin in favour of lookAt(O,...). ------------------------------------------------------------------------ -r1586 | jcbowman | 2006-06-09 12:21:26 -0600 (Fri, 09 Jun 2006) | 4 lines +r1586 | jcbowman | 2006-06-09 20:21:26 +0200 (Fri, 09 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -27664,7 +28066,7 @@ Simply support for custom projections. Reverse arguments of lookAt for clarity. ------------------------------------------------------------------------ -r1585 | rmarinov | 2006-06-08 13:49:56 -0600 (Thu, 08 Jun 2006) | 1 line +r1585 | rmarinov | 2006-06-08 21:49:56 +0200 (Thu, 08 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/Delaunay.cc M /trunk/asymptote/Delaunay.h @@ -27672,21 +28074,21 @@ Changed paths: Fixed a problem with triangulation. ------------------------------------------------------------------------ -r1584 | jcbowman | 2006-06-07 21:41:09 -0600 (Wed, 07 Jun 2006) | 2 lines +r1584 | jcbowman | 2006-06-08 05:41:09 +0200 (Thu, 08 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo in configuration instructions. ------------------------------------------------------------------------ -r1583 | jcbowman | 2006-06-07 17:00:16 -0600 (Wed, 07 Jun 2006) | 2 lines +r1583 | jcbowman | 2006-06-08 01:00:16 +0200 (Thu, 08 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Add Delaunay. ------------------------------------------------------------------------ -r1582 | jcbowman | 2006-06-07 16:58:54 -0600 (Wed, 07 Jun 2006) | 4 lines +r1582 | jcbowman | 2006-06-08 00:58:54 +0200 (Thu, 08 Jun 2006) | 4 lines Changed paths: A /trunk/asymptote/Delaunay.cc A /trunk/asymptote/Delaunay.h @@ -27697,14 +28099,14 @@ Added Paul Bourke's Delaunay triangulation routine. Removed unneeded copyArray from inside. ------------------------------------------------------------------------ -r1581 | jcbowman | 2006-06-07 14:22:18 -0600 (Wed, 07 Jun 2006) | 2 lines +r1581 | jcbowman | 2006-06-07 22:22:18 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fixed typo regarding cone vertex. ------------------------------------------------------------------------ -r1580 | jcbowman | 2006-06-07 14:02:03 -0600 (Wed, 07 Jun 2006) | 2 lines +r1580 | jcbowman | 2006-06-07 22:02:03 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/Makefile @@ -27712,21 +28114,21 @@ Changed paths: Fix configuration problems. ------------------------------------------------------------------------ -r1579 | jcbowman | 2006-06-07 03:25:06 -0600 (Wed, 07 Jun 2006) | 2 lines +r1579 | jcbowman | 2006-06-07 11:25:06 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Remove docdir. ------------------------------------------------------------------------ -r1578 | jcbowman | 2006-06-07 03:10:45 -0600 (Wed, 07 Jun 2006) | 2 lines +r1578 | jcbowman | 2006-06-07 11:10:45 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Remove unused docdir operations. ------------------------------------------------------------------------ -r1577 | jcbowman | 2006-06-07 03:05:30 -0600 (Wed, 07 Jun 2006) | 2 lines +r1577 | jcbowman | 2006-06-07 11:05:30 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -27736,14 +28138,14 @@ Changed paths: Implement work around for backwards-incompatible command-line options of gv-3.6.1. ------------------------------------------------------------------------ -r1576 | jcbowman | 2006-06-07 02:47:32 -0600 (Wed, 07 Jun 2006) | 2 lines +r1576 | jcbowman | 2006-06-07 10:47:32 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Make docdir if it doesn't exist. ------------------------------------------------------------------------ -r1575 | jcbowman | 2006-06-07 02:27:37 -0600 (Wed, 07 Jun 2006) | 4 lines +r1575 | jcbowman | 2006-06-07 10:27:37 +0200 (Wed, 07 Jun 2006) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/pens.asy @@ -27756,7 +28158,7 @@ Fix default configure documentation directory setting. Document inclusion of Asymptote in Fedora Core Extras project. ------------------------------------------------------------------------ -r1574 | jcbowman | 2006-06-07 01:40:43 -0600 (Wed, 07 Jun 2006) | 2 lines +r1574 | jcbowman | 2006-06-07 09:40:43 +0200 (Wed, 07 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -27764,7 +28166,7 @@ Changed paths: Added --with-docdir=PATH configure option. ------------------------------------------------------------------------ -r1573 | jcbowman | 2006-06-06 23:12:16 -0600 (Tue, 06 Jun 2006) | 6 lines +r1573 | jcbowman | 2006-06-07 07:12:16 +0200 (Wed, 07 Jun 2006) | 6 lines Changed paths: M /trunk/asymptote/base/Label.asy M /trunk/asymptote/base/flowchart.asy @@ -27780,14 +28182,14 @@ Add a pack routine for building compound frames from a list of objects. Simplify flowchart interface and example; fix frame/Label packing. ------------------------------------------------------------------------ -r1572 | rmarinov | 2006-06-06 14:46:11 -0600 (Tue, 06 Jun 2006) | 1 line +r1572 | rmarinov | 2006-06-06 22:46:11 +0200 (Tue, 06 Jun 2006) | 1 line Changed paths: A /trunk/asymptote/base/slopefields.asy M /trunk/asymptote/doc/asymptote.texi Added slopefields module. ------------------------------------------------------------------------ -r1571 | jcbowman | 2006-06-06 04:10:20 -0600 (Tue, 06 Jun 2006) | 2 lines +r1571 | jcbowman | 2006-06-06 12:10:20 +0200 (Tue, 06 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/flowchartdemo.asy @@ -27795,39 +28197,39 @@ Changed paths: Fixed alignment problems, standardized usage. ------------------------------------------------------------------------ -r1570 | smelenchuk | 2006-06-05 12:13:22 -0600 (Mon, 05 Jun 2006) | 1 line +r1570 | smelenchuk | 2006-06-05 20:13:22 +0200 (Mon, 05 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/flowchart.asy Repair inconsistency in box height being used for vertically centering the header text in flowrectangle. ------------------------------------------------------------------------ -r1569 | smelenchuk | 2006-06-05 11:52:27 -0600 (Mon, 05 Jun 2006) | 1 line +r1569 | smelenchuk | 2006-06-05 19:52:27 +0200 (Mon, 05 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/flowchart.asy Tweak vertical margins on flowrectangle with header. ------------------------------------------------------------------------ -r1568 | smelenchuk | 2006-06-05 09:31:06 -0600 (Mon, 05 Jun 2006) | 1 line +r1568 | smelenchuk | 2006-06-05 17:31:06 +0200 (Mon, 05 Jun 2006) | 1 line Changed paths: M /trunk/asymptote/base/flowchart.asy Adjust margins on flowrectangle (both with header and without). ------------------------------------------------------------------------ -r1567 | jcbowman | 2006-06-04 21:49:17 -0600 (Sun, 04 Jun 2006) | 2 lines +r1567 | jcbowman | 2006-06-05 05:49:17 +0200 (Mon, 05 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/filldraw.asy Make makepen fill nodes; fix infinite loops. ------------------------------------------------------------------------ -r1566 | jcbowman | 2006-06-04 14:49:17 -0600 (Sun, 04 Jun 2006) | 2 lines +r1566 | jcbowman | 2006-06-04 22:49:17 +0200 (Sun, 04 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/base/patterns.asy Added missing pen arguments in calls to hatch. ------------------------------------------------------------------------ -r1565 | jcbowman | 2006-06-03 08:04:31 -0600 (Sat, 03 Jun 2006) | 6 lines +r1565 | jcbowman | 2006-06-03 16:04:31 +0200 (Sat, 03 Jun 2006) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -27842,21 +28244,21 @@ Renamed ngraph argument to n for consistency. Renamed straight(path) to piecewisestraight(path) and moved to runtime.in. ------------------------------------------------------------------------ -r1564 | jcbowman | 2006-06-02 16:20:34 -0600 (Fri, 02 Jun 2006) | 2 lines +r1564 | jcbowman | 2006-06-03 00:20:34 +0200 (Sat, 03 Jun 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/dimension.asy Draw on frame f. ------------------------------------------------------------------------ -r1563 | hammera | 2006-05-31 13:51:33 -0600 (Wed, 31 May 2006) | 2 lines +r1563 | hammera | 2006-05-31 21:51:33 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Clarified the non-behaviour of top level static modifiers. ------------------------------------------------------------------------ -r1562 | hammera | 2006-05-31 13:42:21 -0600 (Wed, 31 May 2006) | 2 lines +r1562 | hammera | 2006-05-31 21:42:21 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/coder.h M /trunk/asymptote/dec.cc @@ -27864,7 +28266,7 @@ Changed paths: Added warning for top-level static modifiers. ------------------------------------------------------------------------ -r1561 | jcbowman | 2006-05-31 12:45:50 -0600 (Wed, 31 May 2006) | 3 lines +r1561 | jcbowman | 2006-05-31 20:45:50 +0200 (Wed, 31 May 2006) | 3 lines Changed paths: M /trunk/asymptote/base/flowchart.asy @@ -27872,7 +28274,7 @@ Added flowblock initializer; removed unneeded new picture initializers. Added authors, improved indentation. ------------------------------------------------------------------------ -r1560 | jcbowman | 2006-05-31 11:54:36 -0600 (Wed, 31 May 2006) | 2 lines +r1560 | jcbowman | 2006-05-31 19:54:36 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -27881,21 +28283,21 @@ Changed paths: Make cputime return a structure. ------------------------------------------------------------------------ -r1559 | jcbowman | 2006-05-31 11:53:38 -0600 (Wed, 31 May 2006) | 2 lines +r1559 | jcbowman | 2006-05-31 19:53:38 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Removed unneeded CFLAGS. ------------------------------------------------------------------------ -r1558 | jcbowman | 2006-05-31 10:34:10 -0600 (Wed, 31 May 2006) | 2 lines +r1558 | jcbowman | 2006-05-31 18:34:10 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Fix texinfo dependency. ------------------------------------------------------------------------ -r1557 | jcbowman | 2006-05-31 10:21:34 -0600 (Wed, 31 May 2006) | 2 lines +r1557 | jcbowman | 2006-05-31 18:21:34 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -27904,7 +28306,7 @@ Changed paths: More info updates. ------------------------------------------------------------------------ -r1556 | jcbowman | 2006-05-31 07:03:42 -0600 (Wed, 31 May 2006) | 2 lines +r1556 | jcbowman | 2006-05-31 15:03:42 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -27912,28 +28314,28 @@ Changed paths: Add cputime() function. ------------------------------------------------------------------------ -r1555 | jcbowman | 2006-05-31 06:24:26 -0600 (Wed, 31 May 2006) | 2 lines +r1555 | jcbowman | 2006-05-31 14:24:26 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Use -O3 when building rpms. ------------------------------------------------------------------------ -r1554 | jcbowman | 2006-05-31 06:13:43 -0600 (Wed, 31 May 2006) | 2 lines +r1554 | jcbowman | 2006-05-31 14:13:43 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/dimension.asy Fix picture scaling computation in dimension example. ------------------------------------------------------------------------ -r1553 | jcbowman | 2006-05-31 05:18:53 -0600 (Wed, 31 May 2006) | 2 lines +r1553 | jcbowman | 2006-05-31 13:18:53 +0200 (Wed, 31 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Improve diagnostics. ------------------------------------------------------------------------ -r1552 | jcbowman | 2006-05-30 01:18:50 -0600 (Tue, 30 May 2006) | 2 lines +r1552 | jcbowman | 2006-05-30 09:18:50 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -27941,49 +28343,49 @@ Changed paths: Removed info dir entry in %files section; makedepend should respect cflags. ------------------------------------------------------------------------ -r1551 | jcbowman | 2006-05-30 00:53:41 -0600 (Tue, 30 May 2006) | 2 lines +r1551 | jcbowman | 2006-05-30 08:53:41 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Use make install-all in rpm spec file to install info pages as well. ------------------------------------------------------------------------ -r1550 | jcbowman | 2006-05-30 00:53:15 -0600 (Tue, 30 May 2006) | 2 lines +r1550 | jcbowman | 2006-05-30 08:53:15 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix make uninstall. ------------------------------------------------------------------------ -r1549 | jcbowman | 2006-05-30 00:28:36 -0600 (Tue, 30 May 2006) | 2 lines +r1549 | jcbowman | 2006-05-30 08:28:36 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix installation changes. ------------------------------------------------------------------------ -r1548 | jcbowman | 2006-05-29 23:58:30 -0600 (Mon, 29 May 2006) | 2 lines +r1548 | jcbowman | 2006-05-30 07:58:30 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/epix.asy Update example to use new mesh resolution names. ------------------------------------------------------------------------ -r1547 | jcbowman | 2006-05-29 23:57:15 -0600 (Mon, 29 May 2006) | 2 lines +r1547 | jcbowman | 2006-05-30 07:57:15 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix another relative path installation problem. ------------------------------------------------------------------------ -r1546 | jcbowman | 2006-05-29 23:47:36 -0600 (Mon, 29 May 2006) | 2 lines +r1546 | jcbowman | 2006-05-30 07:47:36 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix installation of system asy files. ------------------------------------------------------------------------ -r1545 | jcbowman | 2006-05-29 23:40:00 -0600 (Mon, 29 May 2006) | 2 lines +r1545 | jcbowman | 2006-05-30 07:40:00 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/contour1.asy M /trunk/asymptote/runtime.in @@ -27991,7 +28393,7 @@ Changed paths: Fix cxx warning message. ------------------------------------------------------------------------ -r1544 | jcbowman | 2006-05-29 23:38:33 -0600 (Mon, 29 May 2006) | 2 lines +r1544 | jcbowman | 2006-05-30 07:38:33 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/contour1.asy (from /trunk/asymptote/doc/contourex1.asy:1543) @@ -28002,7 +28404,7 @@ Changed paths: Renamed contour examples. ------------------------------------------------------------------------ -r1543 | jcbowman | 2006-05-29 23:33:18 -0600 (Mon, 29 May 2006) | 2 lines +r1543 | jcbowman | 2006-05-30 07:33:18 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/pens.asy @@ -28012,7 +28414,7 @@ Changed paths: Simplified contour interfaces by implicitly casting pen to pen(real). ------------------------------------------------------------------------ -r1542 | jcbowman | 2006-05-29 22:06:37 -0600 (Mon, 29 May 2006) | 2 lines +r1542 | jcbowman | 2006-05-30 06:06:37 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asymptote.spec @@ -28020,28 +28422,28 @@ Changed paths: Change package group; request texi2dvi; install asy-init.el. ------------------------------------------------------------------------ -r1541 | jcbowman | 2006-05-29 22:02:14 -0600 (Mon, 29 May 2006) | 2 lines +r1541 | jcbowman | 2006-05-30 06:02:14 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: A /trunk/asymptote/base/asy-init.el Add emacs/xemacs init file for rpm installation. ------------------------------------------------------------------------ -r1540 | jcbowman | 2006-05-29 22:01:05 -0600 (Mon, 29 May 2006) | 2 lines +r1540 | jcbowman | 2006-05-30 06:01:05 +0200 (Tue, 30 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Move include shipout earlier. ------------------------------------------------------------------------ -r1539 | rmarinov | 2006-05-29 15:46:10 -0600 (Mon, 29 May 2006) | 1 line +r1539 | rmarinov | 2006-05-29 23:46:10 +0200 (Mon, 29 May 2006) | 1 line Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/doc/asymptote.texi Added new interfaces to contour.asy ------------------------------------------------------------------------ -r1538 | rmarinov | 2006-05-29 15:31:48 -0600 (Mon, 29 May 2006) | 1 line +r1538 | rmarinov | 2006-05-29 23:31:48 +0200 (Mon, 29 May 2006) | 1 line Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/contourex1.asy @@ -28049,7 +28451,7 @@ Changed paths: Added basic documentation for contours. ------------------------------------------------------------------------ -r1537 | jcbowman | 2006-05-28 22:40:13 -0600 (Sun, 28 May 2006) | 2 lines +r1537 | jcbowman | 2006-05-29 06:40:13 +0200 (Mon, 29 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/graph3.asy @@ -28058,48 +28460,48 @@ Changed paths: Minor optimizations; standardized mesh arguments (n -> nx, m -> ny). ------------------------------------------------------------------------ -r1536 | jcbowman | 2006-05-28 18:07:12 -0600 (Sun, 28 May 2006) | 2 lines +r1536 | jcbowman | 2006-05-29 02:07:12 +0200 (Mon, 29 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Further optimizations obtained by sorting contour array. ------------------------------------------------------------------------ -r1535 | jcbowman | 2006-05-28 13:12:14 -0600 (Sun, 28 May 2006) | 2 lines +r1535 | jcbowman | 2006-05-28 21:12:14 +0200 (Sun, 28 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Optimize. ------------------------------------------------------------------------ -r1534 | jcbowman | 2006-05-26 22:19:37 -0600 (Fri, 26 May 2006) | 2 lines +r1534 | jcbowman | 2006-05-27 06:19:37 +0200 (Sat, 27 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Add Jose's patch: list directories in %files section. ------------------------------------------------------------------------ -r1533 | rmarinov | 2006-05-26 15:32:06 -0600 (Fri, 26 May 2006) | 1 line +r1533 | rmarinov | 2006-05-26 23:32:06 +0200 (Fri, 26 May 2006) | 1 line Changed paths: M /trunk/asymptote/base/contour.asy Fixed a minor bug and added an additional interface option. ------------------------------------------------------------------------ -r1532 | jcbowman | 2006-05-26 15:12:37 -0600 (Fri, 26 May 2006) | 2 lines +r1532 | jcbowman | 2006-05-26 23:12:37 +0200 (Fri, 26 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Make pen argument a function. ------------------------------------------------------------------------ -r1531 | jcbowman | 2006-05-26 15:02:09 -0600 (Fri, 26 May 2006) | 2 lines +r1531 | jcbowman | 2006-05-26 23:02:09 +0200 (Fri, 26 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Standardized signatures; support contours of matrix data as well as functions. ------------------------------------------------------------------------ -r1530 | jcbowman | 2006-05-26 11:36:37 -0600 (Fri, 26 May 2006) | 6 lines +r1530 | jcbowman | 2006-05-26 19:36:37 +0200 (Fri, 26 May 2006) | 6 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/base/pens.asy @@ -28112,7 +28514,7 @@ Make palette.asy use grayscale with -gray. Replace bool mono by settings.gray || settings.bw. ------------------------------------------------------------------------ -r1529 | jcbowman | 2006-05-26 08:24:01 -0600 (Fri, 26 May 2006) | 5 lines +r1529 | jcbowman | 2006-05-26 16:24:01 +0200 (Fri, 26 May 2006) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -28123,13 +28525,13 @@ seconds(string t="", string format=""); Make time() return the current time in the default UNIX format. ------------------------------------------------------------------------ -r1528 | rmarinov | 2006-05-25 15:35:50 -0600 (Thu, 25 May 2006) | 1 line +r1528 | rmarinov | 2006-05-25 23:35:50 +0200 (Thu, 25 May 2006) | 1 line Changed paths: M /trunk/asymptote/base/contour.asy Inserted a space between operator and .. . ------------------------------------------------------------------------ -r1527 | jcbowman | 2006-05-25 14:50:32 -0600 (Thu, 25 May 2006) | 2 lines +r1527 | jcbowman | 2006-05-25 22:50:32 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -28137,19 +28539,19 @@ Changed paths: Changed 1.07cvs to 1.07svn. ------------------------------------------------------------------------ -r1526 | rmarinov | 2006-05-25 13:17:55 -0600 (Thu, 25 May 2006) | 1 line +r1526 | rmarinov | 2006-05-25 21:17:55 +0200 (Thu, 25 May 2006) | 1 line Changed paths: M /trunk/asymptote/base/contour.asy Fixed a formatting issue and a minor bug. ------------------------------------------------------------------------ -r1525 | rmarinov | 2006-05-25 11:29:03 -0600 (Thu, 25 May 2006) | 1 line +r1525 | rmarinov | 2006-05-25 19:29:03 +0200 (Thu, 25 May 2006) | 1 line Changed paths: M /trunk/asymptote/base/contour.asy Contour.asy now can choose interpolation operator; default is --. ------------------------------------------------------------------------ -r1524 | jcbowman | 2006-05-25 10:43:46 -0600 (Thu, 25 May 2006) | 2 lines +r1524 | jcbowman | 2006-05-25 18:43:46 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/log2graph.asy @@ -28157,7 +28559,7 @@ Changed paths: Added example of log2 graph. ------------------------------------------------------------------------ -r1523 | jcbowman | 2006-05-25 10:32:56 -0600 (Thu, 25 May 2006) | 4 lines +r1523 | jcbowman | 2006-05-25 18:32:56 +0200 (Thu, 25 May 2006) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -28166,7 +28568,7 @@ Fixed bug in YZero. Handle log graphs bases other than 10. ------------------------------------------------------------------------ -r1522 | jcbowman | 2006-05-25 05:00:23 -0600 (Thu, 25 May 2006) | 5 lines +r1522 | jcbowman | 2006-05-25 13:00:23 +0200 (Thu, 25 May 2006) | 5 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/doc/asymptote.texi @@ -28180,7 +28582,7 @@ argument. Add virtual insert function for arrays. ------------------------------------------------------------------------ -r1521 | jcbowman | 2006-05-25 04:20:44 -0600 (Thu, 25 May 2006) | 2 lines +r1521 | jcbowman | 2006-05-25 12:20:44 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/doc/asymptote.texi @@ -28191,28 +28593,28 @@ Changed paths: Added virtual pull function for arrays. ------------------------------------------------------------------------ -r1520 | jcbowman | 2006-05-25 03:44:18 -0600 (Thu, 25 May 2006) | 2 lines +r1520 | jcbowman | 2006-05-25 11:44:18 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Fix currentpicture.empty() test. ------------------------------------------------------------------------ -r1519 | jcbowman | 2006-05-25 03:07:52 -0600 (Thu, 25 May 2006) | 2 lines +r1519 | jcbowman | 2006-05-25 11:07:52 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Standardized argument names. ------------------------------------------------------------------------ -r1518 | jcbowman | 2006-05-25 02:55:26 -0600 (Thu, 25 May 2006) | 2 lines +r1518 | jcbowman | 2006-05-25 10:55:26 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Formatted. ------------------------------------------------------------------------ -r1517 | jcbowman | 2006-05-25 02:30:13 -0600 (Thu, 25 May 2006) | 2 lines +r1517 | jcbowman | 2006-05-25 10:30:13 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy D /trunk/asymptote/doc/cylinderoutline.asy @@ -28222,7 +28624,7 @@ Changed paths: Fixed longitudinal skeleton when c != O. ------------------------------------------------------------------------ -r1516 | jcbowman | 2006-05-25 02:28:57 -0600 (Thu, 25 May 2006) | 2 lines +r1516 | jcbowman | 2006-05-25 10:28:57 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -28230,7 +28632,7 @@ Changed paths: Minor optimizations. ------------------------------------------------------------------------ -r1515 | jcbowman | 2006-05-25 02:27:52 -0600 (Thu, 25 May 2006) | 2 lines +r1515 | jcbowman | 2006-05-25 10:27:52 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/drawfill.cc M /trunk/asymptote/drawfill.h @@ -28240,7 +28642,7 @@ Changed paths: Check colorspace argument for all forms of shading. ------------------------------------------------------------------------ -r1514 | jcbowman | 2006-05-25 02:26:56 -0600 (Thu, 25 May 2006) | 2 lines +r1514 | jcbowman | 2006-05-25 10:26:56 +0200 (Thu, 25 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi @@ -28248,14 +28650,14 @@ Changed paths: Added 3d axes routine. ------------------------------------------------------------------------ -r1513 | rmarinov | 2006-05-24 15:45:34 -0600 (Wed, 24 May 2006) | 2 lines +r1513 | rmarinov | 2006-05-24 23:45:34 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Now uses arrays. ------------------------------------------------------------------------ -r1512 | jcbowman | 2006-05-24 15:08:08 -0600 (Wed, 24 May 2006) | 2 lines +r1512 | jcbowman | 2006-05-24 23:08:08 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -28263,7 +28665,7 @@ Changed paths: Handle subpath arguments beyond boundaries. ------------------------------------------------------------------------ -r1511 | jcbowman | 2006-05-24 11:25:27 -0600 (Wed, 24 May 2006) | 2 lines +r1511 | jcbowman | 2006-05-24 19:25:27 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy M /trunk/asymptote/base/slide.asy @@ -28272,21 +28674,21 @@ Changed paths: Added outline(). ------------------------------------------------------------------------ -r1510 | jcbowman | 2006-05-24 01:16:30 -0600 (Wed, 24 May 2006) | 2 lines +r1510 | jcbowman | 2006-05-24 09:16:30 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added reverse(triple[]). ------------------------------------------------------------------------ -r1509 | jcbowman | 2006-05-24 00:28:55 -0600 (Wed, 24 May 2006) | 2 lines +r1509 | jcbowman | 2006-05-24 08:28:55 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/path.cc Minor optimizations. ------------------------------------------------------------------------ -r1508 | jcbowman | 2006-05-24 00:27:59 -0600 (Wed, 24 May 2006) | 2 lines +r1508 | jcbowman | 2006-05-24 08:27:59 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/paths.asy M /trunk/asymptote/base/three.asy @@ -28294,14 +28696,14 @@ Changed paths: Simplified code. ------------------------------------------------------------------------ -r1507 | jcbowman | 2006-05-23 22:32:50 -0600 (Tue, 23 May 2006) | 2 lines +r1507 | jcbowman | 2006-05-24 06:32:50 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/INSTALL Updated to mention Subversion instead of CVS. ------------------------------------------------------------------------ -r1506 | jcbowman | 2006-05-23 22:27:31 -0600 (Tue, 23 May 2006) | 6 lines +r1506 | jcbowman | 2006-05-24 06:27:31 +0200 (Wed, 24 May 2006) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/slidedemo.asy @@ -28314,63 +28716,63 @@ Fixed list of autogenerated files in slidedemo.asy. Added missing file. ------------------------------------------------------------------------ -r1505 | jcbowman | 2006-05-23 16:36:20 -0600 (Tue, 23 May 2006) | 2 lines +r1505 | jcbowman | 2006-05-24 00:36:20 +0200 (Wed, 24 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Clarified comment about duplicate guides. ------------------------------------------------------------------------ -r1504 | rmarinov | 2006-05-23 14:44:18 -0600 (Tue, 23 May 2006) | 2 lines +r1504 | rmarinov | 2006-05-23 22:44:18 +0200 (Tue, 23 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy basic .. routine ------------------------------------------------------------------------ -r1503 | jcbowman | 2006-05-23 11:33:30 -0600 (Tue, 23 May 2006) | 2 lines +r1503 | jcbowman | 2006-05-23 19:33:30 +0200 (Tue, 23 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Improved formatting. ------------------------------------------------------------------------ -r1502 | rmarinov | 2006-05-23 11:26:18 -0600 (Tue, 23 May 2006) | 2 lines +r1502 | rmarinov | 2006-05-23 19:26:18 +0200 (Tue, 23 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy minor updates to contour.asy ------------------------------------------------------------------------ -r1501 | jcbowman | 2006-05-23 10:46:50 -0600 (Tue, 23 May 2006) | 2 lines +r1501 | jcbowman | 2006-05-23 18:46:50 +0200 (Tue, 23 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/solids.asy Fixed typo. ------------------------------------------------------------------------ -r1500 | jcbowman | 2006-05-22 16:23:43 -0600 (Mon, 22 May 2006) | 2 lines +r1500 | jcbowman | 2006-05-23 00:23:43 +0200 (Tue, 23 May 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.07cvs. ------------------------------------------------------------------------ -r1499 | jcbowman | 2006-05-22 08:36:57 -0600 (Mon, 22 May 2006) | 2 lines +r1499 | jcbowman | 2006-05-22 16:36:57 +0200 (Mon, 22 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Added figuremattpen optional argument. ------------------------------------------------------------------------ -r1498 | jcbowman | 2006-05-22 08:36:14 -0600 (Mon, 22 May 2006) | 2 lines +r1498 | jcbowman | 2006-05-22 16:36:14 +0200 (Mon, 22 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Fixed syntax. ------------------------------------------------------------------------ -r1497 | jcbowman | 2006-05-22 00:17:35 -0600 (Mon, 22 May 2006) | 5 lines +r1497 | jcbowman | 2006-05-22 08:17:35 +0200 (Mon, 22 May 2006) | 5 lines Changed paths: M /trunk/asymptote/base/flowchart.asy A /trunk/asymptote/doc/advection.asy @@ -28385,14 +28787,14 @@ Renamed old flowchart.asy example to advection.asy. Formatted flowchart.asy base file and example; standardized spellings, etc. ------------------------------------------------------------------------ -r1496 | jcbowman | 2006-05-21 23:38:42 -0600 (Sun, 21 May 2006) | 2 lines +r1496 | jcbowman | 2006-05-22 07:38:42 +0200 (Mon, 22 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Updated. ------------------------------------------------------------------------ -r1495 | jcbowman | 2006-05-21 23:38:05 -0600 (Sun, 21 May 2006) | 4 lines +r1495 | jcbowman | 2006-05-22 07:38:05 +0200 (Mon, 22 May 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/main.cc @@ -28404,21 +28806,21 @@ Restore TeXpipepreamble and TeXpreamble after eval(embedded=false). Restore settings between multiple file runs. ------------------------------------------------------------------------ -r1494 | jcbowman | 2006-05-21 23:35:52 -0600 (Sun, 21 May 2006) | 2 lines +r1494 | jcbowman | 2006-05-22 07:35:52 +0200 (Mon, 22 May 2006) | 2 lines Changed paths: M /trunk/asymptote/entry.cc More endl to newl changes. ------------------------------------------------------------------------ -r1493 | jcbowman | 2006-05-21 23:34:29 -0600 (Sun, 21 May 2006) | 2 lines +r1493 | jcbowman | 2006-05-22 07:34:29 +0200 (Mon, 22 May 2006) | 2 lines Changed paths: M /trunk/asymptote/fftw++.h Allow alignment checking to be disabled with -DNO_CHECK_ALIGN. ------------------------------------------------------------------------ -r1492 | smelenchuk | 2006-05-21 14:00:13 -0600 (Sun, 21 May 2006) | 2 lines +r1492 | smelenchuk | 2006-05-21 22:00:13 +0200 (Sun, 21 May 2006) | 2 lines Changed paths: A /trunk/asymptote/base/flowchart.asy M /trunk/asymptote/doc/asymptote.texi @@ -28427,7 +28829,7 @@ Changed paths: First version of the heavily-cleaned-up (originally externally contributed) flowchart module. A (very simple) demo has been added into examples and the documentation has a section on the module (could the docs be improved for it?). ------------------------------------------------------------------------ -r1491 | jcbowman | 2006-05-21 02:39:14 -0600 (Sun, 21 May 2006) | 12 lines +r1491 | jcbowman | 2006-05-21 10:39:14 +0200 (Sun, 21 May 2006) | 12 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/base/plain.asy @@ -28452,14 +28854,14 @@ Moved margin argument of figure in slide.asy to just after options. Make slidedemo.asy generate required files in case they don't exist. ------------------------------------------------------------------------ -r1490 | jcbowman | 2006-05-21 02:02:42 -0600 (Sun, 21 May 2006) | 2 lines +r1490 | jcbowman | 2006-05-21 10:02:42 +0200 (Sun, 21 May 2006) | 2 lines Changed paths: M /trunk/asymptote/main.cc Fixed segmentation fault with a future eval after an eval throws an exception. ------------------------------------------------------------------------ -r1489 | jcbowman | 2006-05-21 00:38:22 -0600 (Sun, 21 May 2006) | 10 lines +r1489 | jcbowman | 2006-05-21 08:38:22 +0200 (Sun, 21 May 2006) | 10 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/asymptote.texi @@ -28476,7 +28878,7 @@ Add an argument to newslide to allow stepping to be turned off for that slide. Updated slidedemo example. ------------------------------------------------------------------------ -r1488 | jcbowman | 2006-05-21 00:34:16 -0600 (Sun, 21 May 2006) | 2 lines +r1488 | jcbowman | 2006-05-21 08:34:16 +0200 (Sun, 21 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/filldraw.asy M /trunk/asymptote/base/pens.asy @@ -28484,7 +28886,7 @@ Changed paths: Add optional x and y margin arguments to Fill. ------------------------------------------------------------------------ -r1487 | jcbowman | 2006-05-21 00:29:44 -0600 (Sun, 21 May 2006) | 4 lines +r1487 | jcbowman | 2006-05-21 08:29:44 +0200 (Sun, 21 May 2006) | 4 lines Changed paths: M /trunk/asymptote/settings.cc @@ -28493,7 +28895,7 @@ Allow -u to be specified multiple times on command line. Make "open" the default pdf viewer for MacOS. ------------------------------------------------------------------------ -r1486 | jcbowman | 2006-05-21 00:28:15 -0600 (Sun, 21 May 2006) | 3 lines +r1486 | jcbowman | 2006-05-21 08:28:15 +0200 (Sun, 21 May 2006) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/doc/asycolors.sty @@ -28502,7 +28904,7 @@ Added asycolors.sty package to make LaTeX aware of CMYK versions of predefined Asymptote colours. ------------------------------------------------------------------------ -r1485 | jcbowman | 2006-05-21 00:24:42 -0600 (Sun, 21 May 2006) | 4 lines +r1485 | jcbowman | 2006-05-21 08:24:42 +0200 (Sun, 21 May 2006) | 4 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/main.cc @@ -28514,7 +28916,7 @@ Fixed -outformat pdf for papersizes like a4 with nonintegral bp dimensions. Improve performance by avoiding unnecessary flushing of output stream. ------------------------------------------------------------------------ -r1484 | jcbowman | 2006-05-19 17:24:21 -0600 (Fri, 19 May 2006) | 4 lines +r1484 | jcbowman | 2006-05-20 01:24:21 +0200 (Sat, 20 May 2006) | 4 lines Changed paths: M /trunk/asymptote/runtime.in @@ -28523,28 +28925,28 @@ Make fft(real[]) a nop when not configured with fftw. Handle fft(new real[]) gracefully (returns an empty array). ------------------------------------------------------------------------ -r1483 | rmarinov | 2006-05-19 10:31:11 -0600 (Fri, 19 May 2006) | 2 lines +r1483 | rmarinov | 2006-05-19 18:31:11 +0200 (Fri, 19 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy contour.asy now with guides, supports dashed lines ------------------------------------------------------------------------ -r1482 | jcbowman | 2006-05-19 01:09:38 -0600 (Fri, 19 May 2006) | 2 lines +r1482 | jcbowman | 2006-05-19 09:09:38 +0200 (Fri, 19 May 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.06cvs. ------------------------------------------------------------------------ -r1481 | jcbowman | 2006-05-18 22:42:16 -0600 (Thu, 18 May 2006) | 2 lines +r1481 | jcbowman | 2006-05-19 06:42:16 +0200 (Fri, 19 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Reduced default authorpen fontsize. ------------------------------------------------------------------------ -r1480 | jcbowman | 2006-05-18 22:21:02 -0600 (Thu, 18 May 2006) | 6 lines +r1480 | jcbowman | 2006-05-19 06:21:02 +0200 (Fri, 19 May 2006) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -28563,7 +28965,7 @@ Standardized arguments to revolution. Updated documentation and examples. ------------------------------------------------------------------------ -r1479 | jcbowman | 2006-05-18 13:43:12 -0600 (Thu, 18 May 2006) | 2 lines +r1479 | jcbowman | 2006-05-18 21:43:12 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/Makefile M /trunk/asymptote/tests/TestLib.asy @@ -28575,28 +28977,28 @@ Changed paths: Added determinant test. ------------------------------------------------------------------------ -r1478 | jcbowman | 2006-05-18 13:04:15 -0600 (Thu, 18 May 2006) | 2 lines +r1478 | jcbowman | 2006-05-18 21:04:15 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Removed unnormalized epsilon from determinant. ------------------------------------------------------------------------ -r1477 | jcbowman | 2006-05-18 12:48:10 -0600 (Thu, 18 May 2006) | 2 lines +r1477 | jcbowman | 2006-05-18 20:48:10 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation: real a[] now constructs internal functions of real[]. ------------------------------------------------------------------------ -r1476 | hammera | 2006-05-18 12:17:29 -0600 (Thu, 18 May 2006) | 2 lines +r1476 | hammera | 2006-05-18 20:17:29 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO addOps for int x[] now implemented. ------------------------------------------------------------------------ -r1475 | hammera | 2006-05-18 11:55:07 -0600 (Thu, 18 May 2006) | 3 lines +r1475 | hammera | 2006-05-18 19:55:07 +0200 (Thu, 18 May 2006) | 3 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/dec.h @@ -28607,21 +29009,21 @@ Now add operations for all variable declarations of new arrays and functions. Removed old code. ------------------------------------------------------------------------ -r1474 | jcbowman | 2006-05-18 04:14:06 -0600 (Thu, 18 May 2006) | 2 lines +r1474 | jcbowman | 2006-05-18 12:14:06 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/slidedemo.asy Explicitly document -u stepping=true. ------------------------------------------------------------------------ -r1473 | jcbowman | 2006-05-18 03:53:10 -0600 (Thu, 18 May 2006) | 2 lines +r1473 | jcbowman | 2006-05-18 11:53:10 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc Fixed cxx warning. ------------------------------------------------------------------------ -r1472 | jcbowman | 2006-05-18 03:29:48 -0600 (Thu, 18 May 2006) | 14 lines +r1472 | jcbowman | 2006-05-18 11:29:48 +0200 (Thu, 18 May 2006) | 14 lines Changed paths: M /trunk/asymptote/base/solids.asy M /trunk/asymptote/base/three.asy @@ -28647,14 +29049,14 @@ Fixed normal(path3). Updated documentation. ------------------------------------------------------------------------ -r1471 | jcbowman | 2006-05-18 01:03:04 -0600 (Thu, 18 May 2006) | 2 lines +r1471 | jcbowman | 2006-05-18 09:03:04 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/dimension.asy Added example showing how to scale only selective dimensions. ------------------------------------------------------------------------ -r1470 | jcbowman | 2006-05-17 23:44:26 -0600 (Wed, 17 May 2006) | 2 lines +r1470 | jcbowman | 2006-05-18 07:44:26 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/asymptote.py @@ -28664,7 +29066,7 @@ Changed paths: Documented how to call Asymptote from Python. ------------------------------------------------------------------------ -r1469 | jcbowman | 2006-05-17 23:07:49 -0600 (Wed, 17 May 2006) | 2 lines +r1469 | jcbowman | 2006-05-18 07:07:49 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/examples/slidedemo.asy @@ -28672,14 +29074,14 @@ Changed paths: Make location of slidedemo explicit. ------------------------------------------------------------------------ -r1468 | jcbowman | 2006-05-17 22:46:32 -0600 (Wed, 17 May 2006) | 2 lines +r1468 | jcbowman | 2006-05-18 06:46:32 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/constants.asy Reduce infinity to avoid floating point exceptions with --- operator. ------------------------------------------------------------------------ -r1467 | jcbowman | 2006-05-17 22:44:19 -0600 (Wed, 17 May 2006) | 2 lines +r1467 | jcbowman | 2006-05-18 06:44:19 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/slide.asy @@ -28689,14 +29091,14 @@ Changed paths: Allow stepping to be enabled from the command line: -u stepping=true. ------------------------------------------------------------------------ -r1466 | jcbowman | 2006-05-17 22:39:49 -0600 (Wed, 17 May 2006) | 2 lines +r1466 | jcbowman | 2006-05-18 06:39:49 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Added y and z autoscale arguments to scale(). ------------------------------------------------------------------------ -r1465 | jcbowman | 2006-05-17 22:15:27 -0600 (Wed, 17 May 2006) | 2 lines +r1465 | jcbowman | 2006-05-18 06:15:27 +0200 (Thu, 18 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/monthaxis.asy @@ -28704,7 +29106,7 @@ Changed paths: Added example showing how to label an axis with an arbitrary string. ------------------------------------------------------------------------ -r1464 | jcbowman | 2006-05-16 01:40:57 -0600 (Tue, 16 May 2006) | 2 lines +r1464 | jcbowman | 2006-05-16 09:40:57 +0200 (Tue, 16 May 2006) | 2 lines Changed paths: M /trunk/asymptote/tests/TestLib.asy M /trunk/asymptote/tests/arith/integer.asy @@ -28729,28 +29131,28 @@ Changed paths: Improved test diagnostics by using internal assert(bool) function. ------------------------------------------------------------------------ -r1463 | jcbowman | 2006-05-16 01:37:55 -0600 (Tue, 16 May 2006) | 2 lines +r1463 | jcbowman | 2006-05-16 09:37:55 +0200 (Tue, 16 May 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Added assert(bool) function. ------------------------------------------------------------------------ -r1462 | jcbowman | 2006-05-16 01:36:19 -0600 (Tue, 16 May 2006) | 2 lines +r1462 | jcbowman | 2006-05-16 09:36:19 +0200 (Tue, 16 May 2006) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fixed cubicroots when R=0. ------------------------------------------------------------------------ -r1461 | jcbowman | 2006-05-16 01:34:48 -0600 (Tue, 16 May 2006) | 2 lines +r1461 | jcbowman | 2006-05-16 09:34:48 +0200 (Tue, 16 May 2006) | 2 lines Changed paths: M /trunk/asymptote/errormsg.h Flush output stream on errors. ------------------------------------------------------------------------ -r1460 | jcbowman | 2006-05-15 00:45:38 -0600 (Mon, 15 May 2006) | 2 lines +r1460 | jcbowman | 2006-05-15 08:45:38 +0200 (Mon, 15 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawpath.cc @@ -28761,14 +29163,14 @@ Changed paths: Added offset argument to linetype. ------------------------------------------------------------------------ -r1459 | jcbowman | 2006-05-14 14:54:35 -0600 (Sun, 14 May 2006) | 2 lines +r1459 | jcbowman | 2006-05-14 22:54:35 +0200 (Sun, 14 May 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Remove unused argument. ------------------------------------------------------------------------ -r1458 | jcbowman | 2006-05-14 14:48:42 -0600 (Sun, 14 May 2006) | 2 lines +r1458 | jcbowman | 2006-05-14 22:48:42 +0200 (Sun, 14 May 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/builtin.h @@ -28779,21 +29181,21 @@ Changed paths: Move GSL functions into a separate module named gsl. ------------------------------------------------------------------------ -r1457 | jcbowman | 2006-05-14 14:37:04 -0600 (Sun, 14 May 2006) | 2 lines +r1457 | jcbowman | 2006-05-14 22:37:04 +0200 (Sun, 14 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Formatting. ------------------------------------------------------------------------ -r1456 | jcbowman | 2006-05-14 11:29:08 -0600 (Sun, 14 May 2006) | 2 lines +r1456 | jcbowman | 2006-05-14 19:29:08 +0200 (Sun, 14 May 2006) | 2 lines Changed paths: M /trunk/asymptote/asymptote.spec Removed aclocal and autoconf since Asymptote is distributed with configure. ------------------------------------------------------------------------ -r1455 | hammera | 2006-05-13 12:33:45 -0600 (Sat, 13 May 2006) | 2 lines +r1455 | hammera | 2006-05-13 20:33:45 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/builtin.h @@ -28811,14 +29213,14 @@ Changed paths: Moved addOps for types to builtin.cc. Added support for builtin structures. ------------------------------------------------------------------------ -r1454 | hammera | 2006-05-13 09:52:19 -0600 (Sat, 13 May 2006) | 2 lines +r1454 | hammera | 2006-05-13 17:52:19 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/exp.h Fixed typo. ------------------------------------------------------------------------ -r1453 | jcbowman | 2006-05-13 00:53:22 -0600 (Sat, 13 May 2006) | 2 lines +r1453 | jcbowman | 2006-05-13 08:53:22 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/runtime.in @@ -28826,21 +29228,21 @@ Changed paths: Removed quiet(bool) in favour of explicit setting. ------------------------------------------------------------------------ -r1452 | jcbowman | 2006-05-13 00:20:07 -0600 (Sat, 13 May 2006) | 2 lines +r1452 | jcbowman | 2006-05-13 08:20:07 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 Updated man page. ------------------------------------------------------------------------ -r1451 | jcbowman | 2006-05-12 23:59:05 -0600 (Fri, 12 May 2006) | 2 lines +r1451 | jcbowman | 2006-05-13 07:59:05 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: A /trunk/asymptote/asymptote.spec Added RPM spec file, courtesy of Jose Pedro Oliveira. ------------------------------------------------------------------------ -r1450 | jcbowman | 2006-05-12 23:25:56 -0600 (Fri, 12 May 2006) | 11 lines +r1450 | jcbowman | 2006-05-13 07:25:56 +0200 (Sat, 13 May 2006) | 11 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -28858,7 +29260,7 @@ on a version number either: version checking is done in plain.asy). Updated documentation (including new sourceforge cvs instructions). ------------------------------------------------------------------------ -r1449 | jcbowman | 2006-05-12 22:55:57 -0600 (Fri, 12 May 2006) | 2 lines +r1449 | jcbowman | 2006-05-13 06:55:57 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -28866,7 +29268,7 @@ Changed paths: Make Arc use degrees rather than radians. ------------------------------------------------------------------------ -r1448 | jcbowman | 2006-05-12 22:54:38 -0600 (Fri, 12 May 2006) | 9 lines +r1448 | jcbowman | 2006-05-13 06:54:38 +0200 (Sat, 13 May 2006) | 9 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -28880,56 +29282,56 @@ Ignore spurious errors from longitude. Added missing (optional) normal argument to arc call. ------------------------------------------------------------------------ -r1447 | jcbowman | 2006-05-12 22:47:41 -0600 (Fri, 12 May 2006) | 2 lines +r1447 | jcbowman | 2006-05-13 06:47:41 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/filldraw.asy Added clipping margin to unfill. ------------------------------------------------------------------------ -r1446 | jcbowman | 2006-05-12 22:46:54 -0600 (Fri, 12 May 2006) | 2 lines +r1446 | jcbowman | 2006-05-13 06:46:54 +0200 (Sat, 13 May 2006) | 2 lines Changed paths: M /trunk/asymptote/exp.cc Added Andy's getApplication bug fix. ------------------------------------------------------------------------ -r1445 | rmarinov | 2006-05-12 15:50:17 -0600 (Fri, 12 May 2006) | 2 lines +r1445 | rmarinov | 2006-05-12 23:50:17 +0200 (Fri, 12 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy lines of length <80. handles multiple contour lines at once for efficiency. ------------------------------------------------------------------------ -r1444 | jcbowman | 2006-05-12 15:03:59 -0600 (Fri, 12 May 2006) | 2 lines +r1444 | jcbowman | 2006-05-12 23:03:59 +0200 (Fri, 12 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/contour.asy Renamed pen argument. ------------------------------------------------------------------------ -r1443 | rmarinov | 2006-05-12 13:05:34 -0600 (Fri, 12 May 2006) | 2 lines +r1443 | rmarinov | 2006-05-12 21:05:34 +0200 (Fri, 12 May 2006) | 2 lines Changed paths: A /trunk/asymptote/base/contour.asy added basic contouring routine ------------------------------------------------------------------------ -r1442 | rmarinov | 2006-05-12 12:58:51 -0600 (Fri, 12 May 2006) | 2 lines +r1442 | rmarinov | 2006-05-12 20:58:51 +0200 (Fri, 12 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy added general determinant ------------------------------------------------------------------------ -r1441 | smelenchuk | 2006-05-12 10:40:23 -0600 (Fri, 12 May 2006) | 2 lines +r1441 | smelenchuk | 2006-05-12 18:40:23 +0200 (Fri, 12 May 2006) | 2 lines Changed paths: A /trunk/asymptote/tests/arith/transform.asy More tests; these ones relate to transforms. ------------------------------------------------------------------------ -r1440 | smelenchuk | 2006-05-12 10:19:44 -0600 (Fri, 12 May 2006) | 2 lines +r1440 | smelenchuk | 2006-05-12 18:19:44 +0200 (Fri, 12 May 2006) | 2 lines Changed paths: D /trunk/asymptote/tests/arith/add.asy A /trunk/asymptote/tests/arith/integer.asy @@ -28940,7 +29342,7 @@ Changed paths: Beginning to expand the arithmetic test. Now classifying as related to what type of data the tests are working with; each file contains several tests related to that type of data. ------------------------------------------------------------------------ -r1439 | jcbowman | 2006-05-08 02:33:45 -0600 (Mon, 08 May 2006) | 2 lines +r1439 | jcbowman | 2006-05-08 10:33:45 +0200 (Mon, 08 May 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/settings.cc @@ -28948,7 +29350,7 @@ Changed paths: Fixed quiet(bool); improve settings diagnostic. ------------------------------------------------------------------------ -r1438 | jcbowman | 2006-05-08 01:50:15 -0600 (Mon, 08 May 2006) | 14 lines +r1438 | jcbowman | 2006-05-08 09:50:15 +0200 (Mon, 08 May 2006) | 14 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/Makefile.in @@ -28981,7 +29383,7 @@ Generalized DESTDIR support. Documented optional packages in INSTALL. ------------------------------------------------------------------------ -r1437 | jcbowman | 2006-05-08 01:36:48 -0600 (Mon, 08 May 2006) | 4 lines +r1437 | jcbowman | 2006-05-08 09:36:48 +0200 (Mon, 08 May 2006) | 4 lines Changed paths: M /trunk/asymptote/drawpath.cc @@ -28990,28 +29392,28 @@ In dash adjustment, always respect scaling to penwidth (when requested) and draw terminator if close to arclength. ------------------------------------------------------------------------ -r1436 | jcbowman | 2006-05-06 21:39:22 -0600 (Sat, 06 May 2006) | 2 lines +r1436 | jcbowman | 2006-05-07 05:39:22 +0200 (Sun, 07 May 2006) | 2 lines Changed paths: M /trunk/asymptote/exp.cc Improve ambiguous function signature diagnostics. ------------------------------------------------------------------------ -r1435 | jcbowman | 2006-05-06 21:35:50 -0600 (Sat, 06 May 2006) | 2 lines +r1435 | jcbowman | 2006-05-07 05:35:50 +0200 (Sun, 07 May 2006) | 2 lines Changed paths: M /trunk/asymptote/main.cc Turn of listvariables while reading config files. ------------------------------------------------------------------------ -r1434 | jcbowman | 2006-05-06 04:30:43 -0600 (Sat, 06 May 2006) | 2 lines +r1434 | jcbowman | 2006-05-06 12:30:43 +0200 (Sat, 06 May 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/Sierpinski.asy Added Sierpinski gasket example. ------------------------------------------------------------------------ -r1433 | jcbowman | 2006-05-05 03:06:16 -0600 (Fri, 05 May 2006) | 2 lines +r1433 | jcbowman | 2006-05-05 11:06:16 +0200 (Fri, 05 May 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -29019,7 +29421,7 @@ Changed paths: Added obligueY projection. ------------------------------------------------------------------------ -r1432 | jcbowman | 2006-05-02 09:59:46 -0600 (Tue, 02 May 2006) | 11 lines +r1432 | jcbowman | 2006-05-02 17:59:46 +0200 (Tue, 02 May 2006) | 11 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/doc/asy.1 @@ -29040,14 +29442,14 @@ picture dimensions. Handle nonstandard paper sizes when producing pdf files. ------------------------------------------------------------------------ -r1431 | jcbowman | 2006-05-02 06:27:12 -0600 (Tue, 02 May 2006) | 2 lines +r1431 | jcbowman | 2006-05-02 14:27:12 +0200 (Tue, 02 May 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Added realDigits (DBL_DIG). ------------------------------------------------------------------------ -r1430 | jcbowman | 2006-05-01 21:50:09 -0600 (Mon, 01 May 2006) | 7 lines +r1430 | jcbowman | 2006-05-02 05:50:09 +0200 (Tue, 02 May 2006) | 7 lines Changed paths: M /trunk/asymptote/base/patterns.asy M /trunk/asymptote/doc/asymptote.texi @@ -29061,14 +29463,14 @@ Use string(real x, int digits) instead of the locale-dependent format function for postscript patterns. ------------------------------------------------------------------------ -r1429 | jcbowman | 2006-04-29 07:37:10 -0600 (Sat, 29 Apr 2006) | 2 lines +r1429 | jcbowman | 2006-04-29 15:37:10 +0200 (Sat, 29 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fixed rotate(real angle, triple u, triple v) when u != 0. ------------------------------------------------------------------------ -r1428 | jcbowman | 2006-04-28 08:08:24 -0600 (Fri, 28 Apr 2006) | 2 lines +r1428 | jcbowman | 2006-04-28 16:08:24 +0200 (Fri, 28 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -29077,14 +29479,14 @@ Changed paths: Added obliqueX projection. ------------------------------------------------------------------------ -r1427 | jcbowman | 2006-04-28 07:51:59 -0600 (Fri, 28 Apr 2006) | 2 lines +r1427 | jcbowman | 2006-04-28 15:51:59 +0200 (Fri, 28 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Moved fftw header check back to original location. ------------------------------------------------------------------------ -r1426 | jcbowman | 2006-04-28 06:51:52 -0600 (Fri, 28 Apr 2006) | 3 lines +r1426 | jcbowman | 2006-04-28 14:51:52 +0200 (Fri, 28 Apr 2006) | 3 lines Changed paths: M /trunk/asymptote/configure.ac @@ -29092,7 +29494,7 @@ Changed paths: Added missing space after -lgc; moved fftw header checks to header section. ------------------------------------------------------------------------ -r1425 | jcbowman | 2006-04-25 19:29:36 -0600 (Tue, 25 Apr 2006) | 2 lines +r1425 | jcbowman | 2006-04-26 03:29:36 +0200 (Wed, 26 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/picture.h @@ -29100,35 +29502,35 @@ Changed paths: Apply dvips bounding box fuzz even when producing pdf format. ------------------------------------------------------------------------ -r1424 | jcbowman | 2006-04-25 19:24:53 -0600 (Tue, 25 Apr 2006) | 2 lines +r1424 | jcbowman | 2006-04-26 03:24:53 +0200 (Wed, 26 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed argument reversal in signature of one of the add routines. ------------------------------------------------------------------------ -r1423 | jcbowman | 2006-04-24 02:01:16 -0600 (Mon, 24 Apr 2006) | 2 lines +r1423 | jcbowman | 2006-04-24 10:01:16 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.05cvs. ------------------------------------------------------------------------ -r1422 | jcbowman | 2006-04-24 00:42:48 -0600 (Mon, 24 Apr 2006) | 2 lines +r1422 | jcbowman | 2006-04-24 08:42:48 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Fixed cxx warnings. ------------------------------------------------------------------------ -r1421 | jcbowman | 2006-04-24 00:37:11 -0600 (Mon, 24 Apr 2006) | 2 lines +r1421 | jcbowman | 2006-04-24 08:37:11 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Removed unused variable. ------------------------------------------------------------------------ -r1420 | jcbowman | 2006-04-24 00:03:05 -0600 (Mon, 24 Apr 2006) | 2 lines +r1420 | jcbowman | 2006-04-24 08:03:05 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: A /trunk/asymptote/doc/flowchart.asy D /trunk/asymptote/examples/flowchart.asy @@ -29136,7 +29538,7 @@ Changed paths: Move missing file flowchart.asy to correct directory. ------------------------------------------------------------------------ -r1419 | jcbowman | 2006-04-23 23:53:36 -0600 (Sun, 23 Apr 2006) | 4 lines +r1419 | jcbowman | 2006-04-24 07:53:36 +0200 (Mon, 24 Apr 2006) | 4 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/errortest.asy @@ -29147,21 +29549,21 @@ Make wce work even if configured with GSL library. Abort make if check fails. ------------------------------------------------------------------------ -r1418 | jcbowman | 2006-04-23 23:39:25 -0600 (Sun, 23 Apr 2006) | 2 lines +r1418 | jcbowman | 2006-04-24 07:39:25 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Untabified. ------------------------------------------------------------------------ -r1417 | jcbowman | 2006-04-23 23:33:26 -0600 (Sun, 23 Apr 2006) | 2 lines +r1417 | jcbowman | 2006-04-24 07:33:26 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Check also if first and second points are uncontrolled duplicates. ------------------------------------------------------------------------ -r1416 | jcbowman | 2006-04-23 23:26:20 -0600 (Sun, 23 Apr 2006) | 2 lines +r1416 | jcbowman | 2006-04-24 07:26:20 +0200 (Mon, 24 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -29169,7 +29571,7 @@ Changed paths: Added parametric functions that accept an arbitrary sampling function. ------------------------------------------------------------------------ -r1415 | jcbowman | 2006-04-23 11:56:09 -0600 (Sun, 23 Apr 2006) | 2 lines +r1415 | jcbowman | 2006-04-23 19:56:09 +0200 (Sun, 23 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy M /trunk/asymptote/examples/poster.asy @@ -29178,7 +29580,7 @@ Changed paths: Updated poster example to use slide.asy. ------------------------------------------------------------------------ -r1414 | jcbowman | 2006-04-23 10:27:25 -0600 (Sun, 23 Apr 2006) | 5 lines +r1414 | jcbowman | 2006-04-23 18:27:25 +0200 (Sun, 23 Apr 2006) | 5 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -29190,7 +29592,7 @@ Change user variable to a string. Document how arbitrary Asymptote code can be specified on the command line. ------------------------------------------------------------------------ -r1413 | jcbowman | 2006-04-23 01:24:45 -0600 (Sun, 23 Apr 2006) | 4 lines +r1413 | jcbowman | 2006-04-23 09:24:45 +0200 (Sun, 23 Apr 2006) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/slide.asy @@ -29204,7 +29606,7 @@ Added optional background and multiple figures to slide package. Updated documentation. ------------------------------------------------------------------------ -r1412 | jcbowman | 2006-04-22 23:35:38 -0600 (Sat, 22 Apr 2006) | 2 lines +r1412 | jcbowman | 2006-04-23 07:35:38 +0200 (Sun, 23 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/base/graph.asy @@ -29215,14 +29617,14 @@ Changed paths: Replace infinities in userMax and userMin with boolean flags. ------------------------------------------------------------------------ -r1411 | jcbowman | 2006-04-22 21:33:29 -0600 (Sat, 22 Apr 2006) | 2 lines +r1411 | jcbowman | 2006-04-23 05:33:29 +0200 (Sun, 23 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Increased bounding box fuzz. ------------------------------------------------------------------------ -r1410 | jcbowman | 2006-04-22 21:26:28 -0600 (Sat, 22 Apr 2006) | 14 lines +r1410 | jcbowman | 2006-04-23 05:26:28 +0200 (Sun, 23 Apr 2006) | 14 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/base/picture.asy @@ -29246,7 +29648,7 @@ Always pass explicit pageWidth and pageHeight arguments to dvips rather than using the papertype. ------------------------------------------------------------------------ -r1409 | jcbowman | 2006-04-22 05:03:27 -0600 (Sat, 22 Apr 2006) | 4 lines +r1409 | jcbowman | 2006-04-22 13:03:27 +0200 (Sat, 22 Apr 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -29258,7 +29660,7 @@ Fixed dvips bounding box. Added texreset function to reset tex environment. ------------------------------------------------------------------------ -r1408 | jcbowman | 2006-04-21 10:47:35 -0600 (Fri, 21 Apr 2006) | 6 lines +r1408 | jcbowman | 2006-04-21 18:47:35 +0200 (Fri, 21 Apr 2006) | 6 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/base/markers.asy @@ -29273,7 +29675,7 @@ Legend skip is now based on the actual legend entry height, rather than on the fontsize. ------------------------------------------------------------------------ -r1407 | jcbowman | 2006-04-21 09:52:06 -0600 (Fri, 21 Apr 2006) | 2 lines +r1407 | jcbowman | 2006-04-21 17:52:06 +0200 (Fri, 21 Apr 2006) | 2 lines Changed paths: A /trunk/asymptote/base/texcolors.asy A /trunk/asymptote/base/x11colors.asy @@ -29282,7 +29684,7 @@ Changed paths: Added and documented texcolors and x11colors. ------------------------------------------------------------------------ -r1406 | jcbowman | 2006-04-20 23:59:59 -0600 (Thu, 20 Apr 2006) | 6 lines +r1406 | jcbowman | 2006-04-21 07:59:59 +0200 (Fri, 21 Apr 2006) | 6 lines Changed paths: M /trunk/asymptote/base/pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -29298,7 +29700,7 @@ Added optional boolean adjust argument to linetype to allow one to disable linetype adjustment. ------------------------------------------------------------------------ -r1405 | jcbowman | 2006-04-20 20:48:40 -0600 (Thu, 20 Apr 2006) | 5 lines +r1405 | jcbowman | 2006-04-21 04:48:40 +0200 (Fri, 21 Apr 2006) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/loggraph.asy @@ -29309,7 +29711,7 @@ plotting in unscaled (graph) coordinates. Improved documentation of add for pictures and frames. ------------------------------------------------------------------------ -r1404 | jcbowman | 2006-04-19 23:19:03 -0600 (Wed, 19 Apr 2006) | 7 lines +r1404 | jcbowman | 2006-04-20 07:19:03 +0200 (Thu, 20 Apr 2006) | 7 lines Changed paths: M /trunk/asymptote/base/arrows.asy M /trunk/asymptote/base/drawtree.asy @@ -29337,14 +29739,14 @@ Removed the align argument of legend, which really belongs in the add/attach command. ------------------------------------------------------------------------ -r1403 | jcbowman | 2006-04-19 22:54:16 -0600 (Wed, 19 Apr 2006) | 2 lines +r1403 | jcbowman | 2006-04-20 06:54:16 +0200 (Thu, 20 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/eetomumu.asy Fixed arrow alignment. ------------------------------------------------------------------------ -r1402 | jcbowman | 2006-04-19 18:42:40 -0600 (Wed, 19 Apr 2006) | 5 lines +r1402 | jcbowman | 2006-04-20 02:42:40 +0200 (Thu, 20 Apr 2006) | 5 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/picture.cc @@ -29357,28 +29759,28 @@ includegraphics command (from LaTeX graphicx package) to respect HiResBoundingBox. ------------------------------------------------------------------------ -r1401 | jcbowman | 2006-04-19 02:17:56 -0600 (Wed, 19 Apr 2006) | 2 lines +r1401 | jcbowman | 2006-04-19 10:17:56 +0200 (Wed, 19 Apr 2006) | 2 lines Changed paths: A /trunk/asymptote/base/asymptote.py Added Python module to allow access to Asymptote commands. ------------------------------------------------------------------------ -r1400 | jcbowman | 2006-04-17 02:00:50 -0600 (Mon, 17 Apr 2006) | 2 lines +r1400 | jcbowman | 2006-04-17 10:00:50 +0200 (Mon, 17 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/filldraw.asy Fixed clipping of remote labels near frame boundary by unfill. ------------------------------------------------------------------------ -r1399 | jcbowman | 2006-04-17 01:38:57 -0600 (Mon, 17 Apr 2006) | 2 lines +r1399 | jcbowman | 2006-04-17 09:38:57 +0200 (Mon, 17 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Improved alignment of tex and postscript layers. ------------------------------------------------------------------------ -r1398 | hammera | 2006-04-16 16:10:47 -0600 (Sun, 16 Apr 2006) | 2 lines +r1398 | hammera | 2006-04-17 00:10:47 +0200 (Mon, 17 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/dec.cc @@ -29390,7 +29792,7 @@ Changed paths: Added permission checking for types. ------------------------------------------------------------------------ -r1397 | jcbowman | 2006-04-14 15:19:52 -0600 (Fri, 14 Apr 2006) | 2 lines +r1397 | jcbowman | 2006-04-14 23:19:52 +0200 (Fri, 14 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -29398,7 +29800,7 @@ Changed paths: Make format="%" suppress tick labels for logarithmic axis. ------------------------------------------------------------------------ -r1396 | jcbowman | 2006-04-14 02:20:31 -0600 (Fri, 14 Apr 2006) | 2 lines +r1396 | jcbowman | 2006-04-14 10:20:31 +0200 (Fri, 14 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/pens.asy M /trunk/asymptote/doc/colors.asy @@ -29406,14 +29808,14 @@ Changed paths: Change standard name for salmon colour to lightred. ------------------------------------------------------------------------ -r1395 | jcbowman | 2006-04-14 02:13:08 -0600 (Fri, 14 Apr 2006) | 2 lines +r1395 | jcbowman | 2006-04-14 10:13:08 +0200 (Fri, 14 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed tension atleast (broken in autogenerated code since 0.96). ------------------------------------------------------------------------ -r1394 | jcbowman | 2006-04-13 08:15:24 -0600 (Thu, 13 Apr 2006) | 2 lines +r1394 | jcbowman | 2006-04-13 16:15:24 +0200 (Thu, 13 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -29422,14 +29824,14 @@ Changed paths: Renamed "strong" colors to "heavy". ------------------------------------------------------------------------ -r1393 | jcbowman | 2006-04-13 01:12:55 -0600 (Thu, 13 Apr 2006) | 2 lines +r1393 | jcbowman | 2006-04-13 09:12:55 +0200 (Thu, 13 Apr 2006) | 2 lines Changed paths: A /trunk/asymptote/doc/colors.asy Display named colours. ------------------------------------------------------------------------ -r1392 | jcbowman | 2006-04-13 00:53:19 -0600 (Thu, 13 Apr 2006) | 2 lines +r1392 | jcbowman | 2006-04-13 08:53:19 +0200 (Thu, 13 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -29438,14 +29840,14 @@ Changed paths: Documented and systematized named colours. ------------------------------------------------------------------------ -r1391 | jcbowman | 2006-04-12 21:08:55 -0600 (Wed, 12 Apr 2006) | 2 lines +r1391 | jcbowman | 2006-04-13 05:08:55 +0200 (Thu, 13 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Respect orientation. ------------------------------------------------------------------------ -r1390 | jcbowman | 2006-04-12 01:36:26 -0600 (Wed, 12 Apr 2006) | 5 lines +r1390 | jcbowman | 2006-04-12 09:36:26 +0200 (Wed, 12 Apr 2006) | 5 lines Changed paths: M /trunk/asymptote/base/Label.asy M /trunk/asymptote/base/slide.asy @@ -29456,21 +29858,21 @@ Improved implementation of slide.asy. Accept label(frame, Label). ------------------------------------------------------------------------ -r1389 | jcbowman | 2006-04-10 21:01:47 -0600 (Mon, 10 Apr 2006) | 2 lines +r1389 | jcbowman | 2006-04-11 05:01:47 +0200 (Tue, 11 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/slide.asy Added subitem and automatic slide advance on overflow. ------------------------------------------------------------------------ -r1388 | jcbowman | 2006-04-10 16:15:55 -0600 (Mon, 10 Apr 2006) | 2 lines +r1388 | jcbowman | 2006-04-11 00:15:55 +0200 (Tue, 11 Apr 2006) | 2 lines Changed paths: A /trunk/asymptote/base/slide.asy Slide presentation package. ------------------------------------------------------------------------ -r1387 | jcbowman | 2006-04-10 15:42:51 -0600 (Mon, 10 Apr 2006) | 9 lines +r1387 | jcbowman | 2006-04-10 23:42:51 +0200 (Mon, 10 Apr 2006) | 9 lines Changed paths: M /trunk/asymptote/base/Label.asy M /trunk/asymptote/base/constants.asy @@ -29493,14 +29895,14 @@ Moved transforms to runtime.in and Label.asy. Added tex usepackage(string) convenience routine. ------------------------------------------------------------------------ -r1386 | jcbowman | 2006-04-10 15:38:02 -0600 (Mon, 10 Apr 2006) | 2 lines +r1386 | jcbowman | 2006-04-10 23:38:02 +0200 (Mon, 10 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 Indicated default option values in man page summary. ------------------------------------------------------------------------ -r1385 | jcbowman | 2006-04-09 15:00:12 -0600 (Sun, 09 Apr 2006) | 7 lines +r1385 | jcbowman | 2006-04-09 23:00:12 +0200 (Sun, 09 Apr 2006) | 7 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/Makefile @@ -29513,14 +29915,14 @@ the build process only). Added -p option to install (and -m 755 to install asy and install xasy). ------------------------------------------------------------------------ -r1384 | jcbowman | 2006-04-09 14:51:32 -0600 (Sun, 09 Apr 2006) | 2 lines +r1384 | jcbowman | 2006-04-09 22:51:32 +0200 (Sun, 09 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed name of gsl header in message. ------------------------------------------------------------------------ -r1383 | jcbowman | 2006-04-09 10:13:40 -0600 (Sun, 09 Apr 2006) | 2 lines +r1383 | jcbowman | 2006-04-09 18:13:40 +0200 (Sun, 09 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/picture.asy @@ -29528,7 +29930,7 @@ Changed paths: In tick bounds estimate, don't warn about unbounded picture scaling. ------------------------------------------------------------------------ -r1382 | jcbowman | 2006-04-09 01:10:31 -0600 (Sun, 09 Apr 2006) | 3 lines +r1382 | jcbowman | 2006-04-09 09:10:31 +0200 (Sun, 09 Apr 2006) | 3 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/configure.ac @@ -29540,7 +29942,7 @@ Added selected special functions from GNU scientific library, when available (additional special functions can easily be added, on request). ------------------------------------------------------------------------ -r1381 | jcbowman | 2006-04-09 00:42:37 -0600 (Sun, 09 Apr 2006) | 4 lines +r1381 | jcbowman | 2006-04-09 08:42:37 +0200 (Sun, 09 Apr 2006) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -29550,7 +29952,7 @@ Added Ticks specifier that draws ticks on both sides of path. Fixed miscellaneous errors in the documentation. ------------------------------------------------------------------------ -r1380 | jcbowman | 2006-04-09 00:39:32 -0600 (Sun, 09 Apr 2006) | 3 lines +r1380 | jcbowman | 2006-04-09 08:39:32 +0200 (Sun, 09 Apr 2006) | 3 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/examples/lines.asy @@ -29560,7 +29962,7 @@ Renamed zeta to unityroot for clarity (and to avoid confusion with Riemann zeta function). ------------------------------------------------------------------------ -r1379 | jcbowman | 2006-04-09 00:37:42 -0600 (Sun, 09 Apr 2006) | 2 lines +r1379 | jcbowman | 2006-04-09 08:37:42 +0200 (Sun, 09 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/shipout.asy M /trunk/asymptote/base/strings.asy @@ -29568,21 +29970,21 @@ Changed paths: Moved newpage() routine to shipout(). ------------------------------------------------------------------------ -r1378 | jcbowman | 2006-04-09 00:36:59 -0600 (Sun, 09 Apr 2006) | 2 lines +r1378 | jcbowman | 2006-04-09 08:36:59 +0200 (Sun, 09 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/pens.asy Added real lineskip() routine (returns lineskip of currentpen). ------------------------------------------------------------------------ -r1377 | jcbowman | 2006-04-09 00:35:33 -0600 (Sun, 09 Apr 2006) | 2 lines +r1377 | jcbowman | 2006-04-09 08:35:33 +0200 (Sun, 09 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fix name of fontsize lineskip argument. ------------------------------------------------------------------------ -r1376 | jcbowman | 2006-04-09 00:34:30 -0600 (Sun, 09 Apr 2006) | 3 lines +r1376 | jcbowman | 2006-04-09 08:34:30 +0200 (Sun, 09 Apr 2006) | 3 lines Changed paths: M /trunk/asymptote/interact.cc @@ -29590,14 +29992,14 @@ Changed paths: Remove reliance of replacement readline routine on strdup. ------------------------------------------------------------------------ -r1375 | jcbowman | 2006-04-06 08:05:17 -0600 (Thu, 06 Apr 2006) | 2 lines +r1375 | jcbowman | 2006-04-06 16:05:17 +0200 (Thu, 06 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Use turn-on-font-lock for Xemacs. ------------------------------------------------------------------------ -r1374 | jcbowman | 2006-04-05 21:29:56 -0600 (Wed, 05 Apr 2006) | 3 lines +r1374 | jcbowman | 2006-04-06 05:29:56 +0200 (Thu, 06 Apr 2006) | 3 lines Changed paths: M /trunk/asymptote/base/asy-mode.el @@ -29605,7 +30007,7 @@ Changed paths: Make asy-mode.el ignore global-font-lock-mode for Xemacs. ------------------------------------------------------------------------ -r1373 | jcbowman | 2006-04-05 21:24:09 -0600 (Wed, 05 Apr 2006) | 9 lines +r1373 | jcbowman | 2006-04-06 05:24:09 +0200 (Thu, 06 Apr 2006) | 9 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/main.cc @@ -29622,7 +30024,7 @@ Added default settings to option summary; identity command-line only options. Updated documentation. ------------------------------------------------------------------------ -r1372 | jcbowman | 2006-04-05 21:20:58 -0600 (Wed, 05 Apr 2006) | 10 lines +r1372 | jcbowman | 2006-04-06 05:20:58 +0200 (Thu, 06 Apr 2006) | 10 lines Changed paths: M /trunk/asymptote/base/picture.asy @@ -29637,7 +30039,7 @@ works like point but uses the actual picture size instead of userMin and userMax members. ------------------------------------------------------------------------ -r1371 | jcbowman | 2006-04-05 21:18:34 -0600 (Wed, 05 Apr 2006) | 3 lines +r1371 | jcbowman | 2006-04-06 05:18:34 +0200 (Thu, 06 Apr 2006) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -29645,28 +30047,28 @@ Replace identity() with better approximation pic.calculateTransform() in axis picture bounds calculation. ------------------------------------------------------------------------ -r1370 | jcbowman | 2006-04-05 21:17:03 -0600 (Wed, 05 Apr 2006) | 2 lines +r1370 | jcbowman | 2006-04-06 05:17:03 +0200 (Thu, 06 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/pens.asy Make colorPen[] and monoPen[] public. ------------------------------------------------------------------------ -r1369 | jcbowman | 2006-04-05 21:16:10 -0600 (Wed, 05 Apr 2006) | 2 lines +r1369 | jcbowman | 2006-04-06 05:16:10 +0200 (Thu, 06 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy Fixed typos in comments. ------------------------------------------------------------------------ -r1368 | jcbowman | 2006-04-05 20:22:16 -0600 (Wed, 05 Apr 2006) | 2 lines +r1368 | jcbowman | 2006-04-06 04:22:16 +0200 (Thu, 06 Apr 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.04cvs. ------------------------------------------------------------------------ -r1367 | jcbowman | 2006-03-29 23:08:56 -0700 (Wed, 29 Mar 2006) | 14 lines +r1367 | jcbowman | 2006-03-30 08:08:56 +0200 (Thu, 30 Mar 2006) | 14 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/base/graph3.asy @@ -29691,7 +30093,7 @@ Added solid geometry package with cylinder routines. Updated documentation. ------------------------------------------------------------------------ -r1366 | jcbowman | 2006-03-29 22:27:11 -0700 (Wed, 29 Mar 2006) | 3 lines +r1366 | jcbowman | 2006-03-30 07:27:11 +0200 (Thu, 30 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -29700,7 +30102,7 @@ Added limit maxIntersectCount=100000 on maximum number of calls to intersectcubics per cubic segment. ------------------------------------------------------------------------ -r1365 | jcbowman | 2006-03-28 12:33:39 -0700 (Tue, 28 Mar 2006) | 3 lines +r1365 | jcbowman | 2006-03-28 21:33:39 +0200 (Tue, 28 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/TODO @@ -29708,7 +30110,7 @@ Removed TODO item regarding extending runnable-at-a-time mode to inner code levels as this is no longer needed. ------------------------------------------------------------------------ -r1364 | jcbowman | 2006-03-27 01:13:26 -0700 (Mon, 27 Mar 2006) | 3 lines +r1364 | jcbowman | 2006-03-27 10:13:26 +0200 (Mon, 27 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/main.cc @@ -29718,28 +30120,28 @@ Fixed memory leak in interactive mode by using an implementation of reset that is closer to the environment reset used between multiple file runs. ------------------------------------------------------------------------ -r1363 | jcbowman | 2006-03-25 22:15:50 -0700 (Sat, 25 Mar 2006) | 2 lines +r1363 | jcbowman | 2006-03-26 07:15:50 +0200 (Sun, 26 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed indentation. ------------------------------------------------------------------------ -r1362 | jcbowman | 2006-03-25 22:14:21 -0700 (Sat, 25 Mar 2006) | 2 lines +r1362 | jcbowman | 2006-03-26 07:14:21 +0200 (Sun, 26 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/genv.cc Fixed typos. ------------------------------------------------------------------------ -r1361 | jcbowman | 2006-03-25 10:25:37 -0700 (Sat, 25 Mar 2006) | 2 lines +r1361 | jcbowman | 2006-03-25 18:25:37 +0100 (Sat, 25 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated CJK documentation. ------------------------------------------------------------------------ -r1360 | jcbowman | 2006-03-24 21:38:01 -0700 (Fri, 24 Mar 2006) | 6 lines +r1360 | jcbowman | 2006-03-25 05:38:01 +0100 (Sat, 25 Mar 2006) | 6 lines Changed paths: M /trunk/asymptote/base/pens.asy M /trunk/asymptote/doc/asymptote.texi @@ -29751,7 +30153,7 @@ Documented real fontsize(pen p=currentpen). Documented use of CJK fonts. ------------------------------------------------------------------------ -r1359 | jcbowman | 2006-03-20 21:48:46 -0700 (Mon, 20 Mar 2006) | 11 lines +r1359 | jcbowman | 2006-03-21 05:48:46 +0100 (Tue, 21 Mar 2006) | 11 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -29773,7 +30175,7 @@ onto the plane perpendicular to normal and passing through point. Updated Debian URL. ------------------------------------------------------------------------ -r1358 | jcbowman | 2006-03-19 08:17:07 -0700 (Sun, 19 Mar 2006) | 6 lines +r1358 | jcbowman | 2006-03-19 16:17:07 +0100 (Sun, 19 Mar 2006) | 6 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asy.1 @@ -29787,7 +30189,7 @@ to map v onto (x,y,z) by inverting the projection P onto a constant z plane. Minor documentation updates. ------------------------------------------------------------------------ -r1357 | jcbowman | 2006-03-16 23:10:58 -0700 (Thu, 16 Mar 2006) | 2 lines +r1357 | jcbowman | 2006-03-17 07:10:58 +0100 (Fri, 17 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/triple.h @@ -29795,21 +30197,21 @@ Changed paths: Support compilation under gcc-4.1.0. ------------------------------------------------------------------------ -r1356 | jcbowman | 2006-03-14 21:36:32 -0700 (Tue, 14 Mar 2006) | 2 lines +r1356 | jcbowman | 2006-03-15 05:36:32 +0100 (Wed, 15 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fixed return type of three-dimensional intersectionpoint routines. ------------------------------------------------------------------------ -r1355 | jcbowman | 2006-03-12 13:21:27 -0700 (Sun, 12 Mar 2006) | 2 lines +r1355 | jcbowman | 2006-03-12 21:21:27 +0100 (Sun, 12 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.03cvs. ------------------------------------------------------------------------ -r1354 | jcbowman | 2006-03-12 11:27:03 -0700 (Sun, 12 Mar 2006) | 4 lines +r1354 | jcbowman | 2006-03-12 19:27:03 +0100 (Sun, 12 Mar 2006) | 4 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/main.cc @@ -29819,7 +30221,7 @@ Fixed surface lighting colours; respect projection argument. Removed test diagnostic. ------------------------------------------------------------------------ -r1353 | hammera | 2006-03-12 11:17:32 -0700 (Sun, 12 Mar 2006) | 3 lines +r1353 | hammera | 2006-03-12 19:17:32 +0100 (Sun, 12 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/tests/output/Makefile @@ -29827,7 +30229,7 @@ Added a .ls file to check the presence of large output files before they are deleted. ------------------------------------------------------------------------ -r1352 | jcbowman | 2006-03-12 09:05:51 -0700 (Sun, 12 Mar 2006) | 4 lines +r1352 | jcbowman | 2006-03-12 17:05:51 +0100 (Sun, 12 Mar 2006) | 4 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/picture.cc @@ -29840,7 +30242,7 @@ Avoid need for single quotes around path settings in MSWINDOWS. Fix configuration diagnostics. ------------------------------------------------------------------------ -r1351 | jcbowman | 2006-03-11 22:03:49 -0700 (Sat, 11 Mar 2006) | 4 lines +r1351 | jcbowman | 2006-03-12 06:03:49 +0100 (Sun, 12 Mar 2006) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -29849,14 +30251,14 @@ Documented how to install in alternate locations under MSDOS. Fixed typo in configuration instructions. ------------------------------------------------------------------------ -r1350 | jcbowman | 2006-03-11 16:33:51 -0700 (Sat, 11 Mar 2006) | 2 lines +r1350 | jcbowman | 2006-03-12 00:33:51 +0100 (Sun, 12 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/examples/sinc.asy Simplified example. ------------------------------------------------------------------------ -r1349 | jcbowman | 2006-03-11 16:16:25 -0700 (Sat, 11 Mar 2006) | 16 lines +r1349 | jcbowman | 2006-03-12 00:16:25 +0100 (Sun, 12 Mar 2006) | 16 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/light.asy @@ -29882,14 +30284,14 @@ Renamed projectXY to xypart. Added XY() and XYZ() members to bbox3. ------------------------------------------------------------------------ -r1348 | jcbowman | 2006-03-11 15:39:34 -0700 (Sat, 11 Mar 2006) | 2 lines +r1348 | jcbowman | 2006-03-11 23:39:34 +0100 (Sat, 11 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Fixed axis label alignment when sign=-1. ------------------------------------------------------------------------ -r1347 | jcbowman | 2006-03-10 21:18:54 -0700 (Fri, 10 Mar 2006) | 3 lines +r1347 | jcbowman | 2006-03-11 05:18:54 +0100 (Sat, 11 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/patches/README @@ -29899,7 +30301,7 @@ Changed paths: Removed pstoedit patches (included in pstoedit-3.44); updated documentation. ------------------------------------------------------------------------ -r1346 | jcbowman | 2006-03-10 12:19:57 -0700 (Fri, 10 Mar 2006) | 8 lines +r1346 | jcbowman | 2006-03-10 20:19:57 +0100 (Fri, 10 Mar 2006) | 8 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -29914,14 +30316,14 @@ Document configuring to search for includes and libraries in nonstandard locations. ------------------------------------------------------------------------ -r1345 | jcbowman | 2006-03-09 23:19:06 -0700 (Thu, 09 Mar 2006) | 2 lines +r1345 | jcbowman | 2006-03-10 07:19:06 +0100 (Fri, 10 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated configuration file documentation. ------------------------------------------------------------------------ -r1344 | jcbowman | 2006-03-09 20:54:33 -0700 (Thu, 09 Mar 2006) | 8 lines +r1344 | jcbowman | 2006-03-10 04:54:33 +0100 (Fri, 10 Mar 2006) | 8 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/settings.cc @@ -29935,14 +30337,14 @@ options in case dir was changed. Move MSWindows .asy initialization directory to %USERPROFILE%. ------------------------------------------------------------------------ -r1343 | jcbowman | 2006-03-07 12:37:44 -0700 (Tue, 07 Mar 2006) | 2 lines +r1343 | jcbowman | 2006-03-07 20:37:44 +0100 (Tue, 07 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Fixed type of randMax. ------------------------------------------------------------------------ -r1342 | jcbowman | 2006-03-07 03:01:26 -0700 (Tue, 07 Mar 2006) | 2 lines +r1342 | jcbowman | 2006-03-07 11:01:26 +0100 (Tue, 07 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/pstoedit.asy M /trunk/asymptote/doc/asymptote.texi @@ -29953,14 +30355,14 @@ Changed paths: Updated pstoedit patch. ------------------------------------------------------------------------ -r1341 | jcbowman | 2006-03-06 19:29:18 -0700 (Mon, 06 Mar 2006) | 2 lines +r1341 | jcbowman | 2006-03-07 03:29:18 +0100 (Tue, 07 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.02cvs. ------------------------------------------------------------------------ -r1340 | jcbowman | 2006-03-06 17:23:18 -0700 (Mon, 06 Mar 2006) | 2 lines +r1340 | jcbowman | 2006-03-07 01:23:18 +0100 (Tue, 07 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/asymptote.texi @@ -29968,14 +30370,14 @@ Changed paths: Fixed bug in surface plot of a matrix. ------------------------------------------------------------------------ -r1339 | jcbowman | 2006-03-06 13:58:35 -0700 (Mon, 06 Mar 2006) | 2 lines +r1339 | jcbowman | 2006-03-06 21:58:35 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.01cvs. ------------------------------------------------------------------------ -r1338 | jcbowman | 2006-03-06 09:33:54 -0700 (Mon, 06 Mar 2006) | 2 lines +r1338 | jcbowman | 2006-03-06 17:33:54 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/runtime.in @@ -29983,14 +30385,14 @@ Changed paths: Workaround broken GNU readline/history library on MacOS. ------------------------------------------------------------------------ -r1337 | jcbowman | 2006-03-06 00:10:54 -0700 (Mon, 06 Mar 2006) | 2 lines +r1337 | jcbowman | 2006-03-06 08:10:54 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed cxx warning messages. ------------------------------------------------------------------------ -r1336 | jcbowman | 2006-03-05 23:19:09 -0700 (Sun, 05 Mar 2006) | 3 lines +r1336 | jcbowman | 2006-03-06 07:19:09 +0100 (Mon, 06 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -29998,7 +30400,7 @@ Moved detailed discussion of growing list of base modules closer to the end of the documentation. ------------------------------------------------------------------------ -r1335 | jcbowman | 2006-03-05 22:52:10 -0700 (Sun, 05 Mar 2006) | 4 lines +r1335 | jcbowman | 2006-03-06 06:52:10 +0100 (Mon, 06 Mar 2006) | 4 lines Changed paths: M /trunk/asymptote/base/filldraw.asy M /trunk/asymptote/configure.ac @@ -30010,35 +30412,35 @@ Updated to use gc6.7 by default. Added RadialShade filltype. ------------------------------------------------------------------------ -r1334 | jcbowman | 2006-03-05 22:03:49 -0700 (Sun, 05 Mar 2006) | 2 lines +r1334 | jcbowman | 2006-03-06 06:03:49 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/arrows.asy Remove blank legend entries. ------------------------------------------------------------------------ -r1333 | jcbowman | 2006-03-05 21:46:24 -0700 (Sun, 05 Mar 2006) | 2 lines +r1333 | jcbowman | 2006-03-06 05:46:24 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/pen.h Fixed pen bounds (too large by a factor of 2). ------------------------------------------------------------------------ -r1332 | jcbowman | 2006-03-05 20:37:48 -0700 (Sun, 05 Mar 2006) | 2 lines +r1332 | jcbowman | 2006-03-06 04:37:48 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Fixed transformation of palette bar. ------------------------------------------------------------------------ -r1331 | jcbowman | 2006-03-05 18:45:09 -0700 (Sun, 05 Mar 2006) | 2 lines +r1331 | jcbowman | 2006-03-06 02:45:09 +0100 (Mon, 06 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Removed empty picture check in xlimits and ylimits. ------------------------------------------------------------------------ -r1330 | jcbowman | 2006-03-05 18:02:27 -0700 (Sun, 05 Mar 2006) | 12 lines +r1330 | jcbowman | 2006-03-06 02:02:27 +0100 (Mon, 06 Mar 2006) | 12 lines Changed paths: M /trunk/asymptote/base/arrows.asy M /trunk/asymptote/base/markers.asy @@ -30064,14 +30466,14 @@ members are used). Added length and skip arguments to frame legend(...). Removed side effects from eol(file). ------------------------------------------------------------------------ -r1329 | jcbowman | 2006-03-04 21:25:50 -0700 (Sat, 04 Mar 2006) | 2 lines +r1329 | jcbowman | 2006-03-05 05:25:50 +0100 (Sun, 05 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.pl Generate correct #line comments. ------------------------------------------------------------------------ -r1328 | hammera | 2006-03-04 16:17:55 -0700 (Sat, 04 Mar 2006) | 5 lines +r1328 | hammera | 2006-03-05 00:17:55 +0100 (Sun, 05 Mar 2006) | 5 lines Changed paths: M /trunk/asymptote/tests/output/Makefile @@ -30081,7 +30483,7 @@ Changed the -inlinetex option to -keep so that the calls to external programs (eg. latex and convert) can be diffed. ------------------------------------------------------------------------ -r1327 | hammera | 2006-03-04 15:47:12 -0700 (Sat, 04 Mar 2006) | 3 lines +r1327 | hammera | 2006-03-04 23:47:12 +0100 (Sat, 04 Mar 2006) | 3 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/picture.h @@ -30091,14 +30493,14 @@ Now delete texput.log when the pipe to the tex process is closed (to ensure its deletion with the --inlinetex option). Also delete texput.aux. ------------------------------------------------------------------------ -r1326 | jcbowman | 2006-03-03 08:56:54 -0700 (Fri, 03 Mar 2006) | 2 lines +r1326 | jcbowman | 2006-03-03 16:56:54 +0100 (Fri, 03 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fixed bug in pivot vectorization in solve. ------------------------------------------------------------------------ -r1325 | hammera | 2006-03-02 12:46:57 -0700 (Thu, 02 Mar 2006) | 2 lines +r1325 | hammera | 2006-03-02 20:46:57 +0100 (Thu, 02 Mar 2006) | 2 lines Changed paths: A /trunk/asymptote/tests/output A /trunk/asymptote/tests/output/Makefile @@ -30108,14 +30510,14 @@ Changed paths: Initial check-in of output testing. ------------------------------------------------------------------------ -r1324 | jcbowman | 2006-03-01 12:02:39 -0700 (Wed, 01 Mar 2006) | 2 lines +r1324 | jcbowman | 2006-03-01 20:02:39 +0100 (Wed, 01 Mar 2006) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Added INCL for enable-gc=system. ------------------------------------------------------------------------ -r1323 | jcbowman | 2006-02-27 00:54:06 -0700 (Mon, 27 Feb 2006) | 12 lines +r1323 | jcbowman | 2006-02-27 08:54:06 +0100 (Mon, 27 Feb 2006) | 12 lines Changed paths: A /trunk/asymptote/base/embed.asy M /trunk/asymptote/base/picture.asy @@ -30139,14 +30541,14 @@ Output LaTeX pipe diagnostics even when verbose <= 1. Added \begin{document} to LaTeX pipe. ------------------------------------------------------------------------ -r1322 | jcbowman | 2006-02-26 21:59:42 -0700 (Sun, 26 Feb 2006) | 2 lines +r1322 | jcbowman | 2006-02-27 05:59:42 +0100 (Mon, 27 Feb 2006) | 2 lines Changed paths: A /trunk/asymptote/examples/poster.asy Added poster example. ------------------------------------------------------------------------ -r1321 | jcbowman | 2006-02-19 19:59:50 -0700 (Sun, 19 Feb 2006) | 5 lines +r1321 | jcbowman | 2006-02-20 03:59:50 +0100 (Mon, 20 Feb 2006) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/main.cc @@ -30159,14 +30561,14 @@ standard search paths (in usual order). Remember defaultpen set in configuration file. ------------------------------------------------------------------------ -r1320 | jcbowman | 2006-02-19 10:03:00 -0700 (Sun, 19 Feb 2006) | 2 lines +r1320 | jcbowman | 2006-02-19 18:03:00 +0100 (Sun, 19 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/base/arrows.asy Always draw arrows with solid linetype. ------------------------------------------------------------------------ -r1319 | jcbowman | 2006-02-18 12:31:50 -0700 (Sat, 18 Feb 2006) | 11 lines +r1319 | jcbowman | 2006-02-18 20:31:50 +0100 (Sat, 18 Feb 2006) | 11 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/castop.h @@ -30189,35 +30591,35 @@ Cleaned up error calls. Updated documentation. ------------------------------------------------------------------------ -r1318 | jcbowman | 2006-02-17 21:17:15 -0700 (Fri, 17 Feb 2006) | 2 lines +r1318 | jcbowman | 2006-02-18 05:17:15 +0100 (Sat, 18 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added missing $(GCLIBS) dependency. ------------------------------------------------------------------------ -r1317 | jcbowman | 2006-02-17 19:57:33 -0700 (Fri, 17 Feb 2006) | 2 lines +r1317 | jcbowman | 2006-02-18 03:57:33 +0100 (Sat, 18 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added camp.tab.h entry again. ------------------------------------------------------------------------ -r1316 | jcbowman | 2006-02-08 11:45:48 -0700 (Wed, 08 Feb 2006) | 2 lines +r1316 | jcbowman | 2006-02-08 19:45:48 +0100 (Wed, 08 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/base/filldraw.asy Removed +solid from Fill and NoFill. ------------------------------------------------------------------------ -r1315 | jcbowman | 2006-02-08 09:06:36 -0700 (Wed, 08 Feb 2006) | 2 lines +r1315 | jcbowman | 2006-02-08 17:06:36 +0100 (Wed, 08 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Added missing xpart, ypart, zpart functions for triples. ------------------------------------------------------------------------ -r1314 | jcbowman | 2006-02-07 22:13:08 -0700 (Tue, 07 Feb 2006) | 2 lines +r1314 | jcbowman | 2006-02-08 06:13:08 +0100 (Wed, 08 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/psfile.cc @@ -30225,14 +30627,14 @@ Changed paths: Fixed reversed image dimensions for colour density plots. ------------------------------------------------------------------------ -r1313 | jcbowman | 2006-02-07 22:06:39 -0700 (Tue, 07 Feb 2006) | 2 lines +r1313 | jcbowman | 2006-02-08 06:06:39 +0100 (Wed, 08 Feb 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Added missing xpart and ypart functions. ------------------------------------------------------------------------ -r1312 | jcbowman | 2006-02-06 00:58:25 -0700 (Mon, 06 Feb 2006) | 4 lines +r1312 | jcbowman | 2006-02-06 08:58:25 +0100 (Mon, 06 Feb 2006) | 4 lines Changed paths: M /trunk/asymptote/camperror.cc M /trunk/asymptote/picture.cc @@ -30242,14 +30644,14 @@ Signal an error if write to final output file fails. Removed "camp: " from camp error messages for brevity. ------------------------------------------------------------------------ -r1311 | jcbowman | 2006-01-28 21:32:32 -0700 (Sat, 28 Jan 2006) | 2 lines +r1311 | jcbowman | 2006-01-29 05:32:32 +0100 (Sun, 29 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added link to Dario Teixeira's Asymptote and LaTeX Integration Guide. ------------------------------------------------------------------------ -r1310 | jcbowman | 2006-01-28 19:43:37 -0700 (Sat, 28 Jan 2006) | 2 lines +r1310 | jcbowman | 2006-01-29 03:43:37 +0100 (Sun, 29 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/base/animate.asy M /trunk/asymptote/runtime.in @@ -30257,35 +30659,35 @@ Changed paths: Added file prefix option to animate and merge. ------------------------------------------------------------------------ -r1309 | jcbowman | 2006-01-28 03:25:25 -0700 (Sat, 28 Jan 2006) | 2 lines +r1309 | jcbowman | 2006-01-28 11:25:25 +0100 (Sat, 28 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added index entries. ------------------------------------------------------------------------ -r1308 | jcbowman | 2006-01-27 23:28:16 -0700 (Fri, 27 Jan 2006) | 2 lines +r1308 | jcbowman | 2006-01-28 07:28:16 +0100 (Sat, 28 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Allow format("%",1). ------------------------------------------------------------------------ -r1307 | jcbowman | 2006-01-27 23:04:49 -0700 (Fri, 27 Jan 2006) | 2 lines +r1307 | jcbowman | 2006-01-28 07:04:49 +0100 (Sat, 28 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Set tickMin to a and tickMax to b if Step is 0. ------------------------------------------------------------------------ -r1306 | jcbowman | 2006-01-17 13:17:27 -0700 (Tue, 17 Jan 2006) | 2 lines +r1306 | jcbowman | 2006-01-17 21:17:27 +0100 (Tue, 17 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Added check for empty picture in xlimits and ylimits. ------------------------------------------------------------------------ -r1305 | jcbowman | 2006-01-17 13:12:17 -0700 (Tue, 17 Jan 2006) | 5 lines +r1305 | jcbowman | 2006-01-17 21:12:17 +0100 (Tue, 17 Jan 2006) | 5 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/runtime.in @@ -30297,14 +30699,14 @@ Removed MSDOS compiler flag in favour of __CYGWIN__. This will make cygwin defaults identical with those under MSDOS (outside of cygwin). ------------------------------------------------------------------------ -r1304 | jcbowman | 2006-01-17 00:36:01 -0700 (Tue, 17 Jan 2006) | 2 lines +r1304 | jcbowman | 2006-01-17 08:36:01 +0100 (Tue, 17 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Fixed cxx warning. ------------------------------------------------------------------------ -r1303 | jcbowman | 2006-01-16 23:45:28 -0700 (Mon, 16 Jan 2006) | 2 lines +r1303 | jcbowman | 2006-01-17 07:45:28 +0100 (Tue, 17 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/runtime.pl @@ -30312,7 +30714,7 @@ Changed paths: Added Tom's alternative way of making runtime.pl not update runtime.h. ------------------------------------------------------------------------ -r1302 | jcbowman | 2006-01-14 16:20:05 -0700 (Sat, 14 Jan 2006) | 2 lines +r1302 | jcbowman | 2006-01-15 00:20:05 +0100 (Sun, 15 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -30321,21 +30723,21 @@ Changed paths: Documented inlinetex mode. ------------------------------------------------------------------------ -r1301 | jcbowman | 2006-01-14 16:10:11 -0700 (Sat, 14 Jan 2006) | 2 lines +r1301 | jcbowman | 2006-01-15 00:10:11 +0100 (Sun, 15 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy Updates to feyman.asy: improved photon line, use align structures. ------------------------------------------------------------------------ -r1300 | jcbowman | 2006-01-10 23:40:36 -0700 (Tue, 10 Jan 2006) | 2 lines +r1300 | jcbowman | 2006-01-11 07:40:36 +0100 (Wed, 11 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/runtime.pl Added #line directives in runtime.cc. ------------------------------------------------------------------------ -r1299 | jcbowman | 2006-01-10 14:18:01 -0700 (Tue, 10 Jan 2006) | 4 lines +r1299 | jcbowman | 2006-01-10 22:18:01 +0100 (Tue, 10 Jan 2006) | 4 lines Changed paths: M /trunk/asymptote/pair.h M /trunk/asymptote/runtime.in @@ -30345,14 +30747,14 @@ Fixed segmentation fault when bad format string is given to format. Fixed cast: (pair) "1". ------------------------------------------------------------------------ -r1298 | hammera | 2006-01-06 21:57:38 -0700 (Fri, 06 Jan 2006) | 2 lines +r1298 | hammera | 2006-01-07 05:57:38 +0100 (Sat, 07 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Added transform3 multiplication (aliased from math). ------------------------------------------------------------------------ -r1297 | jcbowman | 2006-01-03 22:45:46 -0700 (Tue, 03 Jan 2006) | 4 lines +r1297 | jcbowman | 2006-01-04 06:45:46 +0100 (Wed, 04 Jan 2006) | 4 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/math.asy @@ -30366,14 +30768,14 @@ Don't exit interactive mode on EOF (ctrl-d). Added tab completion option and default prompt="" to readline. ------------------------------------------------------------------------ -r1296 | jcbowman | 2006-01-03 01:58:20 -0700 (Tue, 03 Jan 2006) | 2 lines +r1296 | jcbowman | 2006-01-03 09:58:20 +0100 (Tue, 03 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fixed cxx error. ------------------------------------------------------------------------ -r1295 | jcbowman | 2006-01-02 23:16:01 -0700 (Mon, 02 Jan 2006) | 5 lines +r1295 | jcbowman | 2006-01-03 07:16:01 +0100 (Tue, 03 Jan 2006) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -30384,14 +30786,14 @@ this returns the complement of the integer array a in {1,2,...,n}, so that b[complement(a,b.length)] yields the complement of b[a]. ------------------------------------------------------------------------ -r1294 | jcbowman | 2006-01-02 23:13:52 -0700 (Mon, 02 Jan 2006) | 2 lines +r1294 | jcbowman | 2006-01-03 07:13:52 +0100 (Tue, 03 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Removed unused line. ------------------------------------------------------------------------ -r1293 | jcbowman | 2006-01-02 18:52:58 -0700 (Mon, 02 Jan 2006) | 17 lines +r1293 | jcbowman | 2006-01-03 02:52:58 +0100 (Tue, 03 Jan 2006) | 17 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/strings.asy @@ -30426,14 +30828,14 @@ Added array check to arrayConditional. Updated documentation. ------------------------------------------------------------------------ -r1292 | jcbowman | 2006-01-02 18:25:08 -0700 (Mon, 02 Jan 2006) | 2 lines +r1292 | jcbowman | 2006-01-03 02:25:08 +0100 (Tue, 03 Jan 2006) | 2 lines Changed paths: M /trunk/asymptote/entry.h Formatted. ------------------------------------------------------------------------ -r1291 | jcbowman | 2006-01-01 03:41:06 -0700 (Sun, 01 Jan 2006) | 4 lines +r1291 | jcbowman | 2006-01-01 11:41:06 +0100 (Sun, 01 Jan 2006) | 4 lines Changed paths: M /trunk/asymptote/main.cc @@ -30442,49 +30844,49 @@ Move more initialization code before setOptions. Check em in signal handlers. ------------------------------------------------------------------------ -r1290 | jcbowman | 2005-12-31 11:22:58 -0700 (Sat, 31 Dec 2005) | 2 lines +r1290 | jcbowman | 2005-12-31 19:22:58 +0100 (Sat, 31 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Address compilation problem under MacOS X 10.3.9. ------------------------------------------------------------------------ -r1289 | jcbowman | 2005-12-30 23:19:29 -0700 (Fri, 30 Dec 2005) | 2 lines +r1289 | jcbowman | 2005-12-31 07:19:29 +0100 (Sat, 31 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 1.00cvs. ------------------------------------------------------------------------ -r1288 | jcbowman | 2005-12-30 22:35:36 -0700 (Fri, 30 Dec 2005) | 2 lines +r1288 | jcbowman | 2005-12-31 06:35:36 +0100 (Sat, 31 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation updates. ------------------------------------------------------------------------ -r1287 | jcbowman | 2005-12-30 22:05:36 -0700 (Fri, 30 Dec 2005) | 2 lines +r1287 | jcbowman | 2005-12-31 06:05:36 +0100 (Sat, 31 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Added missing (mem::string). ------------------------------------------------------------------------ -r1286 | jcbowman | 2005-12-30 17:54:53 -0700 (Fri, 30 Dec 2005) | 2 lines +r1286 | jcbowman | 2005-12-31 01:54:53 +0100 (Sat, 31 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Defer initialization of settingsModule to solve race condition. ------------------------------------------------------------------------ -r1285 | jcbowman | 2005-12-30 12:21:12 -0700 (Fri, 30 Dec 2005) | 2 lines +r1285 | jcbowman | 2005-12-30 20:21:12 +0100 (Fri, 30 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Fixed MacOS bus error by initializing GC before calling setOptions. ------------------------------------------------------------------------ -r1284 | jcbowman | 2005-12-30 12:11:10 -0700 (Fri, 30 Dec 2005) | 6 lines +r1284 | jcbowman | 2005-12-30 20:11:10 +0100 (Fri, 30 Dec 2005) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/main.cc @@ -30497,21 +30899,21 @@ Updated wce. Documented contributed MacOS X binary. ------------------------------------------------------------------------ -r1283 | jcbowman | 2005-12-30 01:56:51 -0700 (Fri, 30 Dec 2005) | 2 lines +r1283 | jcbowman | 2005-12-30 09:56:51 +0100 (Fri, 30 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.99cvs. ------------------------------------------------------------------------ -r1282 | jcbowman | 2005-12-30 01:06:29 -0700 (Fri, 30 Dec 2005) | 2 lines +r1282 | jcbowman | 2005-12-30 09:06:29 +0100 (Fri, 30 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation updates. ------------------------------------------------------------------------ -r1281 | jcbowman | 2005-12-30 00:54:53 -0700 (Fri, 30 Dec 2005) | 12 lines +r1281 | jcbowman | 2005-12-30 08:54:53 +0100 (Fri, 30 Dec 2005) | 12 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -30536,7 +30938,7 @@ Update diagnostics and documentation: emphasize use of configuration variables instead of system environment variables. ------------------------------------------------------------------------ -r1280 | jcbowman | 2005-12-29 20:38:05 -0700 (Thu, 29 Dec 2005) | 3 lines +r1280 | jcbowman | 2005-12-30 04:38:05 +0100 (Fri, 30 Dec 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/latexusage.tex @@ -30545,7 +30947,7 @@ Removed mention of obsolete -t option from documentation, which is no longer required for inline tex mode. ------------------------------------------------------------------------ -r1279 | jcbowman | 2005-12-29 18:52:38 -0700 (Thu, 29 Dec 2005) | 2 lines +r1279 | jcbowman | 2005-12-30 02:52:38 +0100 (Fri, 30 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/genv.cc @@ -30559,14 +30961,14 @@ Changed paths: Fixed cxx errors. ------------------------------------------------------------------------ -r1278 | jcbowman | 2005-12-29 16:40:42 -0700 (Thu, 29 Dec 2005) | 2 lines +r1278 | jcbowman | 2005-12-30 00:40:42 +0100 (Fri, 30 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/picture.asy Suppress warning messages when shipping out an empty picture. ------------------------------------------------------------------------ -r1277 | jcbowman | 2005-12-29 12:01:06 -0700 (Thu, 29 Dec 2005) | 8 lines +r1277 | jcbowman | 2005-12-29 20:01:06 +0100 (Thu, 29 Dec 2005) | 8 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/base/filldraw.asy @@ -30589,7 +30991,7 @@ Moved ASYMPTOTE_DIR environment variable to settings. Do an initial read of command line in case CONFIG or DIR were specified. ------------------------------------------------------------------------ -r1276 | jcbowman | 2005-12-29 01:32:35 -0700 (Thu, 29 Dec 2005) | 2 lines +r1276 | jcbowman | 2005-12-29 09:32:35 +0100 (Thu, 29 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/main.cc @@ -30600,14 +31002,14 @@ Changed paths: Moved ASYMPTOTE_PAPERTYPE to settings. ------------------------------------------------------------------------ -r1275 | hammera | 2005-12-29 00:49:29 -0700 (Thu, 29 Dec 2005) | 2 lines +r1275 | hammera | 2005-12-29 08:49:29 +0100 (Thu, 29 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/util.cc Moved argument parsing to avoid writing to memory between a fork and an exec. ------------------------------------------------------------------------ -r1274 | jcbowman | 2005-12-29 00:24:38 -0700 (Thu, 29 Dec 2005) | 5 lines +r1274 | jcbowman | 2005-12-29 08:24:38 +0100 (Thu, 29 Dec 2005) | 5 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/main.cc @@ -30622,7 +31024,7 @@ Moved environment variables into settings. Call doConfig before reading command line options. ------------------------------------------------------------------------ -r1273 | jcbowman | 2005-12-28 22:43:14 -0700 (Wed, 28 Dec 2005) | 2 lines +r1273 | jcbowman | 2005-12-29 06:43:14 +0100 (Thu, 29 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/constants.asy M /trunk/asymptote/builtin.cc @@ -30631,7 +31033,7 @@ Changed paths: Implemented addConstant and pi example. ------------------------------------------------------------------------ -r1272 | jcbowman | 2005-12-28 10:16:22 -0700 (Wed, 28 Dec 2005) | 13 lines +r1272 | jcbowman | 2005-12-28 18:16:22 +0100 (Wed, 28 Dec 2005) | 13 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/doc/asy.1 @@ -30655,14 +31057,14 @@ Rename position to align. Updated documentation. ------------------------------------------------------------------------ -r1271 | jcbowman | 2005-12-28 00:15:07 -0700 (Wed, 28 Dec 2005) | 2 lines +r1271 | jcbowman | 2005-12-28 08:15:07 +0100 (Wed, 28 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed verbose flag. ------------------------------------------------------------------------ -r1270 | jcbowman | 2005-12-28 00:10:28 -0700 (Wed, 28 Dec 2005) | 11 lines +r1270 | jcbowman | 2005-12-28 08:10:28 +0100 (Wed, 28 Dec 2005) | 11 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/drawlabel.cc @@ -30692,7 +31094,7 @@ Improved formatting of option messages. Hide oneFileView and inlinetex (formerly texmode) from help menu. ------------------------------------------------------------------------ -r1269 | jcbowman | 2005-12-26 14:38:04 -0700 (Mon, 26 Dec 2005) | 2 lines +r1269 | jcbowman | 2005-12-26 22:38:04 +0100 (Mon, 26 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/picture.asy @@ -30700,14 +31102,14 @@ Changed paths: Fixed tick computation in xaxis and yaxis when explicit limits are given. ------------------------------------------------------------------------ -r1268 | hammera | 2005-12-24 18:15:55 -0700 (Sat, 24 Dec 2005) | 2 lines +r1268 | hammera | 2005-12-25 02:15:55 +0100 (Sun, 25 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Removed the -n, -no option in favour of -blah/-noblah style negations. ------------------------------------------------------------------------ -r1267 | hammera | 2005-12-24 00:42:42 -0700 (Sat, 24 Dec 2005) | 3 lines +r1267 | hammera | 2005-12-24 08:42:42 +0100 (Sat, 24 Dec 2005) | 3 lines Changed paths: M /trunk/asymptote/settings.cc @@ -30715,7 +31117,7 @@ Improved error reporting when parsing command line options Autogenerate -help output. ------------------------------------------------------------------------ -r1266 | hammera | 2005-12-23 22:39:56 -0700 (Fri, 23 Dec 2005) | 4 lines +r1266 | hammera | 2005-12-24 06:39:56 +0100 (Sat, 24 Dec 2005) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/access.cc @@ -30751,7 +31153,7 @@ variables of the settings module. Added refaccess to access C++ variables as Asymptote variables. ------------------------------------------------------------------------ -r1265 | jcbowman | 2005-12-21 22:22:04 -0700 (Wed, 21 Dec 2005) | 2 lines +r1265 | jcbowman | 2005-12-22 06:22:04 +0100 (Thu, 22 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/fileio.h @@ -30759,21 +31161,21 @@ Changed paths: Fixed string reads. ------------------------------------------------------------------------ -r1264 | jcbowman | 2005-12-17 18:12:21 -0700 (Sat, 17 Dec 2005) | 2 lines +r1264 | jcbowman | 2005-12-18 02:12:21 +0100 (Sun, 18 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Check for cvsmode in ignoreComment. ------------------------------------------------------------------------ -r1263 | jcbowman | 2005-12-17 16:29:17 -0700 (Sat, 17 Dec 2005) | 2 lines +r1263 | jcbowman | 2005-12-18 00:29:17 +0100 (Sun, 18 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Allow comments within 3d data blocks. ------------------------------------------------------------------------ -r1262 | jcbowman | 2005-12-17 14:26:22 -0700 (Sat, 17 Dec 2005) | 6 lines +r1262 | jcbowman | 2005-12-17 22:26:22 +0100 (Sat, 17 Dec 2005) | 6 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/Label.asy @@ -30793,14 +31195,14 @@ Stop running after first error in a runnable. Standardized write argument names. ------------------------------------------------------------------------ -r1261 | jcbowman | 2005-12-17 01:17:37 -0700 (Sat, 17 Dec 2005) | 2 lines +r1261 | jcbowman | 2005-12-17 09:17:37 +0100 (Sat, 17 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/pens.asy Added fonts. ------------------------------------------------------------------------ -r1260 | jcbowman | 2005-12-17 01:11:45 -0700 (Sat, 17 Dec 2005) | 2 lines +r1260 | jcbowman | 2005-12-17 09:11:45 +0100 (Sat, 17 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/types.h @@ -30808,7 +31210,7 @@ Changed paths: Fixed cxx errors and warning messages. ------------------------------------------------------------------------ -r1259 | jcbowman | 2005-12-17 00:54:31 -0700 (Sat, 17 Dec 2005) | 8 lines +r1259 | jcbowman | 2005-12-17 08:54:31 +0100 (Sat, 17 Dec 2005) | 8 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/access.cc @@ -30854,7 +31256,7 @@ Moved two- and three-dimensional array min and max functions to C++ code. Split plain.asy into many subfiles (using include rather than import for speed). ------------------------------------------------------------------------ -r1258 | jcbowman | 2005-12-15 13:29:49 -0700 (Thu, 15 Dec 2005) | 6 lines +r1258 | jcbowman | 2005-12-15 21:29:49 +0100 (Thu, 15 Dec 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -30869,14 +31271,14 @@ Moved default arguments from plain.asy to runtime.in. Respect currentpen nib. ------------------------------------------------------------------------ -r1257 | jcbowman | 2005-12-15 02:58:25 -0700 (Thu, 15 Dec 2005) | 2 lines +r1257 | jcbowman | 2005-12-15 10:58:25 +0100 (Thu, 15 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.98cvs. ------------------------------------------------------------------------ -r1256 | jcbowman | 2005-12-15 02:07:14 -0700 (Thu, 15 Dec 2005) | 2 lines +r1256 | jcbowman | 2005-12-15 10:07:14 +0100 (Thu, 15 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/pen.h @@ -30885,14 +31287,14 @@ Changed paths: Fixed pen transform bug. ------------------------------------------------------------------------ -r1255 | jcbowman | 2005-12-15 00:36:26 -0700 (Thu, 15 Dec 2005) | 2 lines +r1255 | jcbowman | 2005-12-15 08:36:26 +0100 (Thu, 15 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Make recent readline startup changes compatible with readline-4.0 under UNIX. ------------------------------------------------------------------------ -r1254 | jcbowman | 2005-12-15 00:13:45 -0700 (Thu, 15 Dec 2005) | 3 lines +r1254 | jcbowman | 2005-12-15 08:13:45 +0100 (Thu, 15 Dec 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -30908,21 +31310,21 @@ Added missing names and fixed incorrect names for builtin function arguments. Removed duplicate functions. ------------------------------------------------------------------------ -r1253 | jcbowman | 2005-12-14 22:29:34 -0700 (Wed, 14 Dec 2005) | 2 lines +r1253 | jcbowman | 2005-12-15 06:29:34 +0100 (Thu, 15 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Workaround readline incompatibility under MacOS X 10.4.3. ------------------------------------------------------------------------ -r1252 | jcbowman | 2005-12-14 17:47:01 -0700 (Wed, 14 Dec 2005) | 2 lines +r1252 | jcbowman | 2005-12-15 01:47:01 +0100 (Thu, 15 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.97cvs. ------------------------------------------------------------------------ -r1251 | jcbowman | 2005-12-14 17:08:33 -0700 (Wed, 14 Dec 2005) | 2 lines +r1251 | jcbowman | 2005-12-15 01:08:33 +0100 (Thu, 15 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/pipestream.h @@ -30932,14 +31334,14 @@ Changed paths: Make MSDOS binary work under both MSWINDOWS and CYGWIN. ------------------------------------------------------------------------ -r1250 | jcbowman | 2005-12-14 01:22:10 -0700 (Wed, 14 Dec 2005) | 2 lines +r1250 | jcbowman | 2005-12-14 09:22:10 +0100 (Wed, 14 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed spelling. ------------------------------------------------------------------------ -r1249 | jcbowman | 2005-12-14 01:20:27 -0700 (Wed, 14 Dec 2005) | 3 lines +r1249 | jcbowman | 2005-12-14 09:20:27 +0100 (Wed, 14 Dec 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -30947,14 +31349,14 @@ Document that the -V option under MSDOS is the default only when a single file is given. ------------------------------------------------------------------------ -r1248 | jcbowman | 2005-12-14 00:58:29 -0700 (Wed, 14 Dec 2005) | 2 lines +r1248 | jcbowman | 2005-12-14 08:58:29 +0100 (Wed, 14 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed cxx warning messages. ------------------------------------------------------------------------ -r1247 | jcbowman | 2005-12-14 00:52:52 -0700 (Wed, 14 Dec 2005) | 7 lines +r1247 | jcbowman | 2005-12-14 08:52:52 +0100 (Wed, 14 Dec 2005) | 7 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/arrayop.h @@ -30972,7 +31374,7 @@ function for writing a list of vectors as columns. Updated documentation of write routines. ------------------------------------------------------------------------ -r1246 | jcbowman | 2005-12-13 22:39:31 -0700 (Tue, 13 Dec 2005) | 3 lines +r1246 | jcbowman | 2005-12-14 06:39:31 +0100 (Wed, 14 Dec 2005) | 3 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/arrayop.h @@ -30983,14 +31385,14 @@ Fix segmentation fault by checking for null arrays in dotsGuide, dashesGuide, and 3d intersect. ------------------------------------------------------------------------ -r1245 | jcbowman | 2005-12-13 15:50:41 -0700 (Tue, 13 Dec 2005) | 2 lines +r1245 | jcbowman | 2005-12-13 23:50:41 +0100 (Tue, 13 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed order of autogenerated newAppendedArray arguments. ------------------------------------------------------------------------ -r1244 | jcbowman | 2005-12-13 15:07:35 -0700 (Tue, 13 Dec 2005) | 6 lines +r1244 | jcbowman | 2005-12-13 23:07:35 +0100 (Tue, 13 Dec 2005) | 6 lines Changed paths: M /trunk/asymptote/interact.h M /trunk/asymptote/main.cc @@ -31006,7 +31408,7 @@ Make time(string) simply return format string on systems without strftime. Removed generated files. ------------------------------------------------------------------------ -r1243 | jcbowman | 2005-12-13 13:21:58 -0700 (Tue, 13 Dec 2005) | 2 lines +r1243 | jcbowman | 2005-12-13 21:21:58 +0100 (Tue, 13 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/arrayop.h @@ -31033,7 +31435,7 @@ Changed paths: Autogenerate remaining runtime functions, producing runtime.cc and runtime.h. ------------------------------------------------------------------------ -r1242 | jcbowman | 2005-12-12 02:36:28 -0700 (Mon, 12 Dec 2005) | 7 lines +r1242 | jcbowman | 2005-12-12 10:36:28 +0100 (Mon, 12 Dec 2005) | 7 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/runtime.cc @@ -31049,7 +31451,7 @@ operator *). Autogenerate more runtime functions. ------------------------------------------------------------------------ -r1241 | jcbowman | 2005-12-11 23:06:44 -0700 (Sun, 11 Dec 2005) | 4 lines +r1241 | jcbowman | 2005-12-12 07:06:44 +0100 (Mon, 12 Dec 2005) | 4 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/runtime.cc @@ -31061,7 +31463,7 @@ Fixed comment handling of runtime.pl; added prototype comments. Autogenerate remaining array functions. ------------------------------------------------------------------------ -r1240 | jcbowman | 2005-12-11 10:58:39 -0700 (Sun, 11 Dec 2005) | 2 lines +r1240 | jcbowman | 2005-12-11 18:58:39 +0100 (Sun, 11 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -31073,7 +31475,7 @@ Changed paths: Autogenerate runtime array operations. ------------------------------------------------------------------------ -r1239 | jcbowman | 2005-12-08 23:12:37 -0700 (Thu, 08 Dec 2005) | 2 lines +r1239 | jcbowman | 2005-12-09 07:12:37 +0100 (Fri, 09 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/runtime.cc @@ -31082,7 +31484,7 @@ Changed paths: Autogenerate more runtime functions. ------------------------------------------------------------------------ -r1238 | jcbowman | 2005-12-06 23:48:40 -0700 (Tue, 06 Dec 2005) | 7 lines +r1238 | jcbowman | 2005-12-07 07:48:40 +0100 (Wed, 07 Dec 2005) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -31104,21 +31506,21 @@ Use transform and pen instead of transform* and pen* for consistency with other types. ------------------------------------------------------------------------ -r1237 | jcbowman | 2005-12-06 23:37:08 -0700 (Tue, 06 Dec 2005) | 2 lines +r1237 | jcbowman | 2005-12-07 07:37:08 +0100 (Wed, 07 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/application.h Fixed recently-introduced memory leak. ------------------------------------------------------------------------ -r1236 | hammera | 2005-12-06 14:50:41 -0700 (Tue, 06 Dec 2005) | 2 lines +r1236 | hammera | 2005-12-06 22:50:41 +0100 (Tue, 06 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.y Made brackets part of the syntax for 'quote'. ------------------------------------------------------------------------ -r1235 | jcbowman | 2005-12-06 09:09:49 -0700 (Tue, 06 Dec 2005) | 2 lines +r1235 | jcbowman | 2005-12-06 17:09:49 +0100 (Tue, 06 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -31126,7 +31528,7 @@ Changed paths: Formatting. ------------------------------------------------------------------------ -r1234 | jcbowman | 2005-12-06 00:38:54 -0700 (Tue, 06 Dec 2005) | 2 lines +r1234 | jcbowman | 2005-12-06 08:38:54 +0100 (Tue, 06 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -31135,14 +31537,14 @@ Changed paths: Implement named arguments for builtin functions. ------------------------------------------------------------------------ -r1233 | jcbowman | 2005-12-06 00:00:26 -0700 (Tue, 06 Dec 2005) | 2 lines +r1233 | jcbowman | 2005-12-06 08:00:26 +0100 (Tue, 06 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Make translate (-s option) work with eval (requires running codelets). ------------------------------------------------------------------------ -r1232 | hammera | 2005-12-05 19:05:04 -0700 (Mon, 05 Dec 2005) | 2 lines +r1232 | hammera | 2005-12-06 03:05:04 +0100 (Tue, 06 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -31150,7 +31552,7 @@ Changed paths: Fixed sequenced evaluation of packed arguments. ------------------------------------------------------------------------ -r1231 | jcbowman | 2005-12-05 00:21:12 -0700 (Mon, 05 Dec 2005) | 7 lines +r1231 | jcbowman | 2005-12-05 08:21:12 +0100 (Mon, 05 Dec 2005) | 7 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/plain.asy @@ -31175,14 +31577,14 @@ Implemented default function arguments for builtin functions. Made write routines builtin functions. ------------------------------------------------------------------------ -r1230 | jcbowman | 2005-12-03 22:49:58 -0700 (Sat, 03 Dec 2005) | 2 lines +r1230 | jcbowman | 2005-12-04 06:49:58 +0100 (Sun, 04 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/fundec.h Remove obsolete remark about default function arguments. ------------------------------------------------------------------------ -r1229 | jcbowman | 2005-12-02 23:10:00 -0700 (Fri, 02 Dec 2005) | 2 lines +r1229 | jcbowman | 2005-12-03 07:10:00 +0100 (Sat, 03 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/makepen.asy @@ -31190,28 +31592,28 @@ Changed paths: Documented makepen, nib, Sin, Cos, Tan, aSin, aCos, aTan, and fontcommand. ------------------------------------------------------------------------ -r1228 | jcbowman | 2005-12-02 22:27:03 -0700 (Fri, 02 Dec 2005) | 2 lines +r1228 | jcbowman | 2005-12-03 06:27:03 +0100 (Sat, 03 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented BeginPoint, MidPoint, EndPoint. ------------------------------------------------------------------------ -r1227 | jcbowman | 2005-12-02 09:44:21 -0700 (Fri, 02 Dec 2005) | 2 lines +r1227 | jcbowman | 2005-12-02 17:44:21 +0100 (Fri, 02 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Removed unneeded assignment. ------------------------------------------------------------------------ -r1226 | jcbowman | 2005-12-02 09:14:28 -0700 (Fri, 02 Dec 2005) | 2 lines +r1226 | jcbowman | 2005-12-02 17:14:28 +0100 (Fri, 02 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Replaced midarrow routine with generalized arrow routine. ------------------------------------------------------------------------ -r1225 | jcbowman | 2005-12-02 04:00:36 -0700 (Fri, 02 Dec 2005) | 3 lines +r1225 | jcbowman | 2005-12-02 12:00:36 +0100 (Fri, 02 Dec 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy @@ -31219,7 +31621,7 @@ Do MidArrow and MidArcArrow size adjustment in PostScript rather than user coordinates. ------------------------------------------------------------------------ -r1224 | jcbowman | 2005-12-01 23:19:21 -0700 (Thu, 01 Dec 2005) | 5 lines +r1224 | jcbowman | 2005-12-02 07:19:21 +0100 (Fri, 02 Dec 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy A /trunk/asymptote/base/roundedpath.asy @@ -31233,7 +31635,7 @@ path. Reordered the list of available modules. ------------------------------------------------------------------------ -r1223 | jcbowman | 2005-12-01 20:46:26 -0700 (Thu, 01 Dec 2005) | 2 lines +r1223 | jcbowman | 2005-12-02 04:46:26 +0100 (Fri, 02 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/pair.h M /trunk/asymptote/path.cc @@ -31241,7 +31643,7 @@ Changed paths: Handle angle(0,0) condition robustly. ------------------------------------------------------------------------ -r1222 | jcbowman | 2005-12-01 16:10:59 -0700 (Thu, 01 Dec 2005) | 7 lines +r1222 | jcbowman | 2005-12-02 00:10:59 +0100 (Fri, 02 Dec 2005) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -31257,14 +31659,14 @@ Preserve output precision when outputting paths of any length. Fixed makepen draw routine (makedraw). ------------------------------------------------------------------------ -r1221 | jcbowman | 2005-11-30 23:48:00 -0700 (Wed, 30 Nov 2005) | 2 lines +r1221 | jcbowman | 2005-12-01 07:48:00 +0100 (Thu, 01 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Minor optimization of makepen draw. ------------------------------------------------------------------------ -r1220 | jcbowman | 2005-11-30 22:12:08 -0700 (Wed, 30 Nov 2005) | 2 lines +r1220 | jcbowman | 2005-12-01 06:12:08 +0100 (Thu, 01 Dec 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/makepen.asy @@ -31272,14 +31674,14 @@ Changed paths: Revert broken optimization of makepen draw. ------------------------------------------------------------------------ -r1219 | jcbowman | 2005-11-30 09:21:12 -0700 (Wed, 30 Nov 2005) | 2 lines +r1219 | jcbowman | 2005-11-30 17:21:12 +0100 (Wed, 30 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Simplified makepen draw; extend to cyclic paths. ------------------------------------------------------------------------ -r1218 | jcbowman | 2005-11-30 01:41:52 -0700 (Wed, 30 Nov 2005) | 3 lines +r1218 | jcbowman | 2005-11-30 09:41:52 +0100 (Wed, 30 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy A /trunk/asymptote/doc/makepen.asy @@ -31291,7 +31693,7 @@ Added MetaPost-like makepen that works for any polygonal (possibly nonconvex) cyclic path. ------------------------------------------------------------------------ -r1217 | jcbowman | 2005-11-29 22:03:47 -0700 (Tue, 29 Nov 2005) | 6 lines +r1217 | jcbowman | 2005-11-30 06:03:47 +0100 (Wed, 30 Nov 2005) | 6 lines Changed paths: M /trunk/asymptote/main.cc @@ -31302,28 +31704,28 @@ out of scope. Suppress interactive update on exit. ------------------------------------------------------------------------ -r1216 | jcbowman | 2005-11-28 18:37:48 -0700 (Mon, 28 Nov 2005) | 2 lines +r1216 | jcbowman | 2005-11-29 02:37:48 +0100 (Tue, 29 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Make estack and sstack static local variables. ------------------------------------------------------------------------ -r1215 | jcbowman | 2005-11-28 18:03:56 -0700 (Mon, 28 Nov 2005) | 2 lines +r1215 | jcbowman | 2005-11-29 02:03:56 +0100 (Tue, 29 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Added filltype to labeltick. ------------------------------------------------------------------------ -r1214 | jcbowman | 2005-11-27 22:45:17 -0700 (Sun, 27 Nov 2005) | 2 lines +r1214 | jcbowman | 2005-11-28 06:45:17 +0100 (Mon, 28 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fix -o - with labels. ------------------------------------------------------------------------ -r1213 | jcbowman | 2005-11-27 22:21:02 -0700 (Sun, 27 Nov 2005) | 4 lines +r1213 | jcbowman | 2005-11-28 06:21:02 +0100 (Mon, 28 Nov 2005) | 4 lines Changed paths: M /trunk/asymptote/TODO A /trunk/asymptote/base/light.asy @@ -31339,7 +31741,7 @@ Added example of 3d lighting effects for a sphere, using Gouraud shading. When running MSDOS binary under CYGWIN, use UNIX line terminator. ------------------------------------------------------------------------ -r1212 | jcbowman | 2005-11-26 16:01:52 -0700 (Sat, 26 Nov 2005) | 4 lines +r1212 | jcbowman | 2005-11-27 00:01:52 +0100 (Sun, 27 Nov 2005) | 4 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -31348,7 +31750,7 @@ Check for null binary space partition. Move normal==O test to face. ------------------------------------------------------------------------ -r1211 | jcbowman | 2005-11-26 13:53:12 -0700 (Sat, 26 Nov 2005) | 5 lines +r1211 | jcbowman | 2005-11-26 21:53:12 +0100 (Sat, 26 Nov 2005) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -31359,14 +31761,14 @@ Make -o - work without labels. Document how to pass options to convert. ------------------------------------------------------------------------ -r1210 | jcbowman | 2005-11-25 16:50:23 -0700 (Fri, 25 Nov 2005) | 2 lines +r1210 | jcbowman | 2005-11-26 00:50:23 +0100 (Sat, 26 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor improvements. ------------------------------------------------------------------------ -r1209 | jcbowman | 2005-11-25 01:51:13 -0700 (Fri, 25 Nov 2005) | 6 lines +r1209 | jcbowman | 2005-11-25 09:51:13 +0100 (Fri, 25 Nov 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -31379,7 +31781,7 @@ represent multiples of unitsize). Suppress final call to exitfunction when exiting interactive mode. ------------------------------------------------------------------------ -r1208 | jcbowman | 2005-11-23 23:36:47 -0700 (Wed, 23 Nov 2005) | 6 lines +r1208 | jcbowman | 2005-11-24 07:36:47 +0100 (Thu, 24 Nov 2005) | 6 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/settings.cc @@ -31391,14 +31793,14 @@ Under MSDOS, by default bind Delete and Insert keys to delete-char and overwrite-mode, respectively. ------------------------------------------------------------------------ -r1207 | jcbowman | 2005-11-23 17:36:54 -0700 (Wed, 23 Nov 2005) | 2 lines +r1207 | jcbowman | 2005-11-24 01:36:54 +0100 (Thu, 24 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Install *.dat and piicon.eps files. ------------------------------------------------------------------------ -r1206 | jcbowman | 2005-11-23 16:37:39 -0700 (Wed, 23 Nov 2005) | 3 lines +r1206 | jcbowman | 2005-11-24 00:37:39 +0100 (Thu, 24 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/interact.h M /trunk/asymptote/picture.cc @@ -31411,28 +31813,28 @@ Always destroy tex pipe at cleanup (e.g., in case a label contains a \gdef command). ------------------------------------------------------------------------ -r1205 | jcbowman | 2005-11-23 16:35:02 -0700 (Wed, 23 Nov 2005) | 2 lines +r1205 | jcbowman | 2005-11-24 00:35:02 +0100 (Thu, 24 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Unwrap wrapper. ------------------------------------------------------------------------ -r1204 | jcbowman | 2005-11-23 13:06:56 -0700 (Wed, 23 Nov 2005) | 2 lines +r1204 | jcbowman | 2005-11-23 21:06:56 +0100 (Wed, 23 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Fixed segmentation fault with unravel and from access in parse diagnostic. ------------------------------------------------------------------------ -r1203 | jcbowman | 2005-11-23 08:53:43 -0700 (Wed, 23 Nov 2005) | 2 lines +r1203 | jcbowman | 2005-11-23 16:53:43 +0100 (Wed, 23 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented ImageMagick convert dependency of GUI xasy. ------------------------------------------------------------------------ -r1202 | jcbowman | 2005-11-22 22:04:34 -0700 (Tue, 22 Nov 2005) | 2 lines +r1202 | jcbowman | 2005-11-23 06:04:34 +0100 (Wed, 23 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -31442,14 +31844,14 @@ Changed paths: Renamed -n option to -nV. Used -n (or -no) to negate next option. ------------------------------------------------------------------------ -r1201 | jcbowman | 2005-11-22 15:25:52 -0700 (Tue, 22 Nov 2005) | 2 lines +r1201 | jcbowman | 2005-11-22 23:25:52 +0100 (Tue, 22 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Use kpsewhich to help find default latex path. ------------------------------------------------------------------------ -r1200 | jcbowman | 2005-11-22 14:29:47 -0700 (Tue, 22 Nov 2005) | 2 lines +r1200 | jcbowman | 2005-11-22 22:29:47 +0100 (Tue, 22 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/parser.cc @@ -31457,14 +31859,14 @@ Changed paths: Improved diagnostics. ------------------------------------------------------------------------ -r1199 | jcbowman | 2005-11-22 14:24:25 -0700 (Tue, 22 Nov 2005) | 2 lines +r1199 | jcbowman | 2005-11-22 22:24:25 +0100 (Tue, 22 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/genv.cc Check for module recursion after call to parseFile. ------------------------------------------------------------------------ -r1198 | jcbowman | 2005-11-22 13:31:44 -0700 (Tue, 22 Nov 2005) | 7 lines +r1198 | jcbowman | 2005-11-22 21:31:44 +0100 (Tue, 22 Nov 2005) | 7 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -31478,21 +31880,21 @@ Made axisT readable outside of graph module. Made standard axis types public. Document custom axis types. ------------------------------------------------------------------------ -r1197 | jcbowman | 2005-11-22 01:19:48 -0700 (Tue, 22 Nov 2005) | 2 lines +r1197 | jcbowman | 2005-11-22 09:19:48 +0100 (Tue, 22 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.96cvs. ------------------------------------------------------------------------ -r1196 | jcbowman | 2005-11-22 00:04:17 -0700 (Tue, 22 Nov 2005) | 2 lines +r1196 | jcbowman | 2005-11-22 08:04:17 +0100 (Tue, 22 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed indentation. ------------------------------------------------------------------------ -r1195 | jcbowman | 2005-11-21 23:54:03 -0700 (Mon, 21 Nov 2005) | 11 lines +r1195 | jcbowman | 2005-11-22 07:54:03 +0100 (Tue, 22 Nov 2005) | 11 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -31516,14 +31918,14 @@ interactive key bindings. Fixed hang in scroll mode on EOF. ------------------------------------------------------------------------ -r1194 | jcbowman | 2005-11-21 23:33:20 -0700 (Mon, 21 Nov 2005) | 2 lines +r1194 | jcbowman | 2005-11-22 07:33:20 +0100 (Tue, 22 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Move legend.append to appropriate place. ------------------------------------------------------------------------ -r1193 | jcbowman | 2005-11-21 14:15:15 -0700 (Mon, 21 Nov 2005) | 2 lines +r1193 | jcbowman | 2005-11-21 22:15:15 +0100 (Mon, 21 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc M /trunk/asymptote/texfile.h @@ -31531,35 +31933,35 @@ Changed paths: Use scalebox only where necessary, to reduce LaTeX memory usage. ------------------------------------------------------------------------ -r1192 | jcbowman | 2005-11-20 14:50:51 -0700 (Sun, 20 Nov 2005) | 2 lines +r1192 | jcbowman | 2005-11-20 22:50:51 +0100 (Sun, 20 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/application.h Plugged remaining memory leak. ------------------------------------------------------------------------ -r1191 | jcbowman | 2005-11-20 11:08:29 -0700 (Sun, 20 Nov 2005) | 2 lines +r1191 | jcbowman | 2005-11-20 19:08:29 +0100 (Sun, 20 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/application.h Plug another memory leak. ------------------------------------------------------------------------ -r1190 | jcbowman | 2005-11-20 10:41:04 -0700 (Sun, 20 Nov 2005) | 2 lines +r1190 | jcbowman | 2005-11-20 18:41:04 +0100 (Sun, 20 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/application.h Fixed memory leak. ------------------------------------------------------------------------ -r1189 | jcbowman | 2005-11-19 11:00:13 -0700 (Sat, 19 Nov 2005) | 2 lines +r1189 | jcbowman | 2005-11-19 19:00:13 +0100 (Sat, 19 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Put GC warnings under control of -d option. ------------------------------------------------------------------------ -r1188 | jcbowman | 2005-11-18 22:52:49 -0700 (Fri, 18 Nov 2005) | 3 lines +r1188 | jcbowman | 2005-11-19 06:52:49 +0100 (Sat, 19 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/main.cc @@ -31567,7 +31969,7 @@ Suppress GC warning messages (in particular: "Repeated allocation of very large block"). ------------------------------------------------------------------------ -r1187 | jcbowman | 2005-11-18 22:46:59 -0700 (Fri, 18 Nov 2005) | 2 lines +r1187 | jcbowman | 2005-11-19 06:46:59 +0100 (Sat, 19 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/interact.cc @@ -31577,7 +31979,7 @@ Changed paths: Make interactive input command reset the environment. ------------------------------------------------------------------------ -r1186 | hammera | 2005-11-17 22:21:02 -0700 (Thu, 17 Nov 2005) | 2 lines +r1186 | hammera | 2005-11-18 06:21:02 +0100 (Fri, 18 Nov 2005) | 2 lines Changed paths: A /trunk/asymptote/tests/imp A /trunk/asymptote/tests/imp/unravel.asy @@ -31585,21 +31987,21 @@ Changed paths: Added testing for unravel. ------------------------------------------------------------------------ -r1185 | jcbowman | 2005-11-17 09:31:08 -0700 (Thu, 17 Nov 2005) | 2 lines +r1185 | jcbowman | 2005-11-17 17:31:08 +0100 (Thu, 17 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Removed old documentation. ------------------------------------------------------------------------ -r1184 | jcbowman | 2005-11-17 00:23:28 -0700 (Thu, 17 Nov 2005) | 2 lines +r1184 | jcbowman | 2005-11-17 08:23:28 +0100 (Thu, 17 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.95cvs. ------------------------------------------------------------------------ -r1183 | jcbowman | 2005-11-16 23:14:51 -0700 (Wed, 16 Nov 2005) | 5 lines +r1183 | jcbowman | 2005-11-17 07:14:51 +0100 (Thu, 17 Nov 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/camp.y @@ -31613,7 +32015,7 @@ Also: import graph as graph2d; means access graph as graph2d; unravel graph2d. Updated documentation; removed descriptions of old import scheme. ------------------------------------------------------------------------ -r1182 | jcbowman | 2005-11-16 17:25:21 -0700 (Wed, 16 Nov 2005) | 2 lines +r1182 | jcbowman | 2005-11-17 01:25:21 +0100 (Thu, 17 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/runtime.in @@ -31621,21 +32023,21 @@ Changed paths: Force quiet mode with running embedded latex files. ------------------------------------------------------------------------ -r1181 | jcbowman | 2005-11-16 16:51:06 -0700 (Wed, 16 Nov 2005) | 2 lines +r1181 | jcbowman | 2005-11-17 00:51:06 +0100 (Thu, 17 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.h Reduce memory usage. ------------------------------------------------------------------------ -r1180 | jcbowman | 2005-11-16 16:07:28 -0700 (Wed, 16 Nov 2005) | 2 lines +r1180 | jcbowman | 2005-11-17 00:07:28 +0100 (Thu, 17 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Use a vector instead of a list for estack and sstack. ------------------------------------------------------------------------ -r1179 | jcbowman | 2005-11-16 14:31:07 -0700 (Wed, 16 Nov 2005) | 4 lines +r1179 | jcbowman | 2005-11-16 22:31:07 +0100 (Wed, 16 Nov 2005) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty M /trunk/asymptote/texfile.h @@ -31645,14 +32047,14 @@ Reverse order of pstricks and graphicx also in asymptote.sty. Fixed formatting. ------------------------------------------------------------------------ -r1178 | hammera | 2005-11-16 14:05:25 -0700 (Wed, 16 Nov 2005) | 2 lines +r1178 | hammera | 2005-11-16 22:05:25 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.cc Slight refactoring. ------------------------------------------------------------------------ -r1177 | jcbowman | 2005-11-16 13:32:30 -0700 (Wed, 16 Nov 2005) | 2 lines +r1177 | jcbowman | 2005-11-16 21:32:30 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc M /trunk/asymptote/texfile.h @@ -31660,7 +32062,7 @@ Changed paths: Workaround scalebox problem with old versions of pstricks. ------------------------------------------------------------------------ -r1176 | hammera | 2005-11-16 12:03:55 -0700 (Wed, 16 Nov 2005) | 2 lines +r1176 | hammera | 2005-11-16 20:03:55 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/entry.cc @@ -31672,35 +32074,35 @@ Changed paths: Fixed frame loading issues with imported types. ------------------------------------------------------------------------ -r1175 | jcbowman | 2005-11-16 02:31:20 -0700 (Wed, 16 Nov 2005) | 2 lines +r1175 | jcbowman | 2005-11-16 10:31:20 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.94cvs. ------------------------------------------------------------------------ -r1174 | jcbowman | 2005-11-16 02:06:51 -0700 (Wed, 16 Nov 2005) | 2 lines +r1174 | jcbowman | 2005-11-16 10:06:51 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fixed cygwin problem. ------------------------------------------------------------------------ -r1173 | jcbowman | 2005-11-16 01:36:10 -0700 (Wed, 16 Nov 2005) | 2 lines +r1173 | jcbowman | 2005-11-16 09:36:10 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Added mkdir. ------------------------------------------------------------------------ -r1172 | jcbowman | 2005-11-16 01:27:04 -0700 (Wed, 16 Nov 2005) | 2 lines +r1172 | jcbowman | 2005-11-16 09:27:04 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/texfile.cc Revert to pstricks colors instead of color.sty due to problems under FreeBSD. ------------------------------------------------------------------------ -r1171 | jcbowman | 2005-11-16 01:14:50 -0700 (Wed, 16 Nov 2005) | 2 lines +r1171 | jcbowman | 2005-11-16 09:14:50 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/runtime.in @@ -31708,42 +32110,42 @@ Changed paths: Workaround missing C99 gamma function under FreeBSD. ------------------------------------------------------------------------ -r1170 | jcbowman | 2005-11-16 00:31:40 -0700 (Wed, 16 Nov 2005) | 2 lines +r1170 | jcbowman | 2005-11-16 08:31:40 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documentation updates. ------------------------------------------------------------------------ -r1169 | jcbowman | 2005-11-16 00:24:03 -0700 (Wed, 16 Nov 2005) | 2 lines +r1169 | jcbowman | 2005-11-16 08:24:03 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el Added new keyword. ------------------------------------------------------------------------ -r1168 | jcbowman | 2005-11-16 00:12:02 -0700 (Wed, 16 Nov 2005) | 2 lines +r1168 | jcbowman | 2005-11-16 08:12:02 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/mathop.h Fixed more cxx warnings. ------------------------------------------------------------------------ -r1167 | jcbowman | 2005-11-16 00:09:16 -0700 (Wed, 16 Nov 2005) | 2 lines +r1167 | jcbowman | 2005-11-16 08:09:16 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fixed cxx errors and warnings. ------------------------------------------------------------------------ -r1166 | jcbowman | 2005-11-16 00:01:34 -0700 (Wed, 16 Nov 2005) | 2 lines +r1166 | jcbowman | 2005-11-16 08:01:34 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: A /trunk/asymptote/base/version.asy.in Version template. ------------------------------------------------------------------------ -r1165 | jcbowman | 2005-11-15 23:49:51 -0700 (Tue, 15 Nov 2005) | 2 lines +r1165 | jcbowman | 2005-11-16 07:49:51 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/configure.ac @@ -31752,7 +32154,7 @@ Changed paths: Added version check to plain.asy. ------------------------------------------------------------------------ -r1164 | jcbowman | 2005-11-15 23:19:59 -0700 (Tue, 15 Nov 2005) | 6 lines +r1164 | jcbowman | 2005-11-16 07:19:59 +0100 (Wed, 16 Nov 2005) | 6 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -31767,14 +32169,14 @@ Renamed ~/.asyrc to ~/.asy/options Updated documentation. ------------------------------------------------------------------------ -r1163 | jcbowman | 2005-11-15 21:03:28 -0700 (Tue, 15 Nov 2005) | 2 lines +r1163 | jcbowman | 2005-11-16 05:03:28 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Read command line style-parameters from $HOME/.asyrc ------------------------------------------------------------------------ -r1162 | jcbowman | 2005-11-15 17:50:15 -0700 (Tue, 15 Nov 2005) | 2 lines +r1162 | jcbowman | 2005-11-16 01:50:15 +0100 (Wed, 16 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/geometry.asy @@ -31789,7 +32191,7 @@ Changed paths: Removed superfluous static modifiers. ------------------------------------------------------------------------ -r1161 | jcbowman | 2005-11-15 15:07:01 -0700 (Tue, 15 Nov 2005) | 2 lines +r1161 | jcbowman | 2005-11-15 23:07:01 +0100 (Tue, 15 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/base/math.asy @@ -31798,7 +32200,7 @@ Changed paths: Added surface graph of matrices. ------------------------------------------------------------------------ -r1160 | jcbowman | 2005-11-15 13:51:50 -0700 (Tue, 15 Nov 2005) | 2 lines +r1160 | jcbowman | 2005-11-15 21:51:50 +0100 (Tue, 15 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph3.asy M /trunk/asymptote/doc/cube.asy @@ -31811,7 +32213,7 @@ Changed paths: Importing graph3 should publically import graph and three. ------------------------------------------------------------------------ -r1159 | jcbowman | 2005-11-15 12:06:59 -0700 (Tue, 15 Nov 2005) | 4 lines +r1159 | jcbowman | 2005-11-15 20:06:59 +0100 (Tue, 15 Nov 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -31826,14 +32228,14 @@ Implemented horizontal and vertical label scaling. Cleaned up Label code in plain.asy. ------------------------------------------------------------------------ -r1158 | jcbowman | 2005-11-14 13:09:17 -0700 (Mon, 14 Nov 2005) | 2 lines +r1158 | jcbowman | 2005-11-14 21:09:17 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/mathop.h Optimized integer overflow checks. ------------------------------------------------------------------------ -r1157 | jcbowman | 2005-11-14 01:16:15 -0700 (Mon, 14 Nov 2005) | 2 lines +r1157 | jcbowman | 2005-11-14 09:16:15 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/castop.h @@ -31845,63 +32247,63 @@ Changed paths: Added checks for integer overflow. ------------------------------------------------------------------------ -r1156 | jcbowman | 2005-11-14 00:57:47 -0700 (Mon, 14 Nov 2005) | 2 lines +r1156 | jcbowman | 2005-11-14 08:57:47 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Handle parse errors. ------------------------------------------------------------------------ -r1155 | hammera | 2005-11-13 21:47:56 -0700 (Sun, 13 Nov 2005) | 2 lines +r1155 | hammera | 2005-11-14 05:47:56 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor edits. ------------------------------------------------------------------------ -r1154 | jcbowman | 2005-11-13 18:47:17 -0700 (Sun, 13 Nov 2005) | 2 lines +r1154 | jcbowman | 2005-11-14 02:47:17 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented "from m unravel c as C;" syntax. ------------------------------------------------------------------------ -r1153 | jcbowman | 2005-11-13 18:34:03 -0700 (Sun, 13 Nov 2005) | 2 lines +r1153 | jcbowman | 2005-11-14 02:34:03 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor update. ------------------------------------------------------------------------ -r1152 | jcbowman | 2005-11-13 18:30:54 -0700 (Sun, 13 Nov 2005) | 2 lines +r1152 | jcbowman | 2005-11-14 02:30:54 +0100 (Mon, 14 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented unravel and include. Updated documentation of execute and eval. ------------------------------------------------------------------------ -r1151 | hammera | 2005-11-13 15:29:51 -0700 (Sun, 13 Nov 2005) | 2 lines +r1151 | hammera | 2005-11-13 23:29:51 +0100 (Sun, 13 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Describes new importing system. ------------------------------------------------------------------------ -r1150 | jcbowman | 2005-11-13 02:11:08 -0700 (Sun, 13 Nov 2005) | 2 lines +r1150 | jcbowman | 2005-11-13 10:11:08 +0100 (Sun, 13 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Fixed memory leak. ------------------------------------------------------------------------ -r1149 | jcbowman | 2005-11-12 22:39:26 -0700 (Sat, 12 Nov 2005) | 2 lines +r1149 | jcbowman | 2005-11-13 06:39:26 +0100 (Sun, 13 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.h Removed constructor added in error. ------------------------------------------------------------------------ -r1148 | jcbowman | 2005-11-12 22:36:26 -0700 (Sat, 12 Nov 2005) | 2 lines +r1148 | jcbowman | 2005-11-13 06:36:26 +0100 (Sun, 13 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/coder.h @@ -31920,7 +32322,7 @@ Changed paths: Fixed cxx errors and warnings. ------------------------------------------------------------------------ -r1147 | hammera | 2005-11-12 15:47:06 -0700 (Sat, 12 Nov 2005) | 2 lines +r1147 | hammera | 2005-11-12 23:47:06 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.cc M /trunk/asymptote/entry.h @@ -31928,21 +32330,21 @@ Changed paths: Added venv::add to NOHASH. ------------------------------------------------------------------------ -r1146 | jcbowman | 2005-11-12 15:18:24 -0700 (Sat, 12 Nov 2005) | 2 lines +r1146 | jcbowman | 2005-11-12 23:18:24 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Another workaround for gcc 3.3.4 problems. ------------------------------------------------------------------------ -r1145 | jcbowman | 2005-11-12 14:57:02 -0700 (Sat, 12 Nov 2005) | 2 lines +r1145 | jcbowman | 2005-11-12 22:57:02 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Workaround problem with gcc-3.3.4. ------------------------------------------------------------------------ -r1144 | jcbowman | 2005-11-12 14:22:28 -0700 (Sat, 12 Nov 2005) | 2 lines +r1144 | jcbowman | 2005-11-12 22:22:28 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.in @@ -31950,7 +32352,7 @@ Changed paths: Added erf,erc, and gamma functions. ------------------------------------------------------------------------ -r1143 | jcbowman | 2005-11-12 12:43:42 -0700 (Sat, 12 Nov 2005) | 2 lines +r1143 | jcbowman | 2005-11-12 20:43:42 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.cc @@ -31958,14 +32360,14 @@ Changed paths: Make quotient(int,int) consistent with %. ------------------------------------------------------------------------ -r1142 | jcbowman | 2005-11-12 00:56:01 -0700 (Sat, 12 Nov 2005) | 2 lines +r1142 | jcbowman | 2005-11-12 08:56:01 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l Fix **. ------------------------------------------------------------------------ -r1141 | hammera | 2005-11-11 17:38:32 -0700 (Fri, 11 Nov 2005) | 3 lines +r1141 | hammera | 2005-11-12 01:38:32 +0100 (Sat, 12 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/camp.y M /trunk/asymptote/dec.cc @@ -31981,21 +32383,21 @@ Replaced std::string with mem::string for genv. Moved error reporting associated with 'as'. ------------------------------------------------------------------------ -r1140 | jcbowman | 2005-11-11 17:22:40 -0700 (Fri, 11 Nov 2005) | 2 lines +r1140 | jcbowman | 2005-11-12 01:22:40 +0100 (Sat, 12 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Added missing delete. ------------------------------------------------------------------------ -r1139 | jcbowman | 2005-11-11 00:14:34 -0700 (Fri, 11 Nov 2005) | 2 lines +r1139 | jcbowman | 2005-11-11 08:14:34 +0100 (Fri, 11 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Make bounding box computation work with -o -. ------------------------------------------------------------------------ -r1138 | jcbowman | 2005-11-10 23:37:34 -0700 (Thu, 10 Nov 2005) | 2 lines +r1138 | jcbowman | 2005-11-11 07:37:34 +0100 (Fri, 11 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -32003,7 +32405,7 @@ Changed paths: Allow outputting to standard output with "-o -" command line option. ------------------------------------------------------------------------ -r1137 | jcbowman | 2005-11-10 22:59:13 -0700 (Thu, 10 Nov 2005) | 5 lines +r1137 | jcbowman | 2005-11-11 06:59:13 +0100 (Fri, 11 Nov 2005) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -32015,7 +32417,7 @@ Removed pdf fuzz (a workaround for a pdf-viewing problem only of gv, not other pdf viewers). ------------------------------------------------------------------------ -r1136 | hammera | 2005-11-10 09:02:55 -0700 (Thu, 10 Nov 2005) | 2 lines +r1136 | hammera | 2005-11-10 17:02:55 +0100 (Thu, 10 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -32023,14 +32425,14 @@ Changed paths: Refactored argument matching functions. ------------------------------------------------------------------------ -r1135 | jcbowman | 2005-11-10 01:56:24 -0700 (Thu, 10 Nov 2005) | 2 lines +r1135 | jcbowman | 2005-11-10 09:56:24 +0100 (Thu, 10 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Removed old interactive buffer flushing code. ------------------------------------------------------------------------ -r1134 | jcbowman | 2005-11-10 00:58:13 -0700 (Thu, 10 Nov 2005) | 3 lines +r1134 | jcbowman | 2005-11-10 08:58:13 +0100 (Thu, 10 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -32046,21 +32448,21 @@ Choose more descriptive names latticeshade, axialshade, radialshade, and gouraudshade for shading routines. ------------------------------------------------------------------------ -r1133 | jcbowman | 2005-11-10 00:17:56 -0700 (Thu, 10 Nov 2005) | 2 lines +r1133 | jcbowman | 2005-11-10 08:17:56 +0100 (Thu, 10 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Respect final null entry when reading data in cvs mode (fixed). ------------------------------------------------------------------------ -r1132 | jcbowman | 2005-11-09 22:53:32 -0700 (Wed, 09 Nov 2005) | 2 lines +r1132 | jcbowman | 2005-11-10 06:53:32 +0100 (Thu, 10 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l Flush input buffer every time we enter parser. ------------------------------------------------------------------------ -r1131 | jcbowman | 2005-11-09 19:49:29 -0700 (Wed, 09 Nov 2005) | 2 lines +r1131 | jcbowman | 2005-11-10 03:49:29 +0100 (Thu, 10 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/examples/treetest.asy @@ -32068,7 +32470,7 @@ Changed paths: Added new keywords; fixed treetest. ------------------------------------------------------------------------ -r1130 | jcbowman | 2005-11-09 19:35:22 -0700 (Wed, 09 Nov 2005) | 2 lines +r1130 | jcbowman | 2005-11-10 03:35:22 +0100 (Thu, 10 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -32077,7 +32479,7 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r1129 | hammera | 2005-11-08 23:36:03 -0700 (Tue, 08 Nov 2005) | 2 lines +r1129 | hammera | 2005-11-09 07:36:03 +0100 (Wed, 09 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/asy.vim M /trunk/asymptote/base/plain.asy @@ -32097,14 +32499,14 @@ Changed paths: Extended access and unravel syntax. ------------------------------------------------------------------------ -r1128 | jcbowman | 2005-11-08 22:23:54 -0700 (Tue, 08 Nov 2005) | 2 lines +r1128 | jcbowman | 2005-11-09 06:23:54 +0100 (Wed, 09 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Make embedded evals work within exitfunction. ------------------------------------------------------------------------ -r1127 | jcbowman | 2005-11-08 22:05:11 -0700 (Tue, 08 Nov 2005) | 2 lines +r1127 | jcbowman | 2005-11-09 06:05:11 +0100 (Wed, 09 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -32119,7 +32521,7 @@ Changed paths: Reimplemented GUI support. ------------------------------------------------------------------------ -r1126 | hammera | 2005-11-08 16:55:03 -0700 (Tue, 08 Nov 2005) | 3 lines +r1126 | hammera | 2005-11-09 00:55:03 +0100 (Wed, 09 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/genv.cc @@ -32130,7 +32532,7 @@ Check for infinite recursion when loading modules. Add position info (markTrans) for codelets. ------------------------------------------------------------------------ -r1125 | jcbowman | 2005-11-08 13:30:10 -0700 (Tue, 08 Nov 2005) | 3 lines +r1125 | jcbowman | 2005-11-08 21:30:10 +0100 (Tue, 08 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -32141,7 +32543,7 @@ Changed paths: Renamed defaultpen() to resetdefaultpen and getdefaultpen() to defaultpen(). ------------------------------------------------------------------------ -r1124 | jcbowman | 2005-11-08 13:11:06 -0700 (Tue, 08 Nov 2005) | 2 lines +r1124 | jcbowman | 2005-11-08 21:11:06 +0100 (Tue, 08 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/genv.cc @@ -32150,7 +32552,7 @@ Changed paths: Updated diagostics. ------------------------------------------------------------------------ -r1123 | jcbowman | 2005-11-08 11:58:07 -0700 (Tue, 08 Nov 2005) | 2 lines +r1123 | jcbowman | 2005-11-08 19:58:07 +0100 (Tue, 08 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/main.cc @@ -32158,7 +32560,7 @@ Changed paths: Re-implemented -p (parse) and -s (translate) options. ------------------------------------------------------------------------ -r1122 | jcbowman | 2005-11-08 09:39:14 -0700 (Tue, 08 Nov 2005) | 2 lines +r1122 | jcbowman | 2005-11-08 17:39:14 +0100 (Tue, 08 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/camp.l @@ -32168,7 +32570,7 @@ Changed paths: Corrections from import merge. ------------------------------------------------------------------------ -r1121 | jcbowman | 2005-11-08 02:36:32 -0700 (Tue, 08 Nov 2005) | 7 lines +r1121 | jcbowman | 2005-11-08 10:36:32 +0100 (Tue, 08 Nov 2005) | 7 lines Changed paths: M /trunk/asymptote/camp.y M /trunk/asymptote/dec.h @@ -32186,7 +32588,7 @@ Interactive mode updates; reimplemented interactive "input" command. Documented true interactive mode. ------------------------------------------------------------------------ -r1120 | jcbowman | 2005-11-08 00:22:41 -0700 (Tue, 08 Nov 2005) | 3 lines +r1120 | jcbowman | 2005-11-08 08:22:41 +0100 (Tue, 08 Nov 2005) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -32196,14 +32598,14 @@ Facilitate optional installation of documentation and examples to different directories. ------------------------------------------------------------------------ -r1119 | jcbowman | 2005-11-08 00:19:24 -0700 (Tue, 08 Nov 2005) | 2 lines +r1119 | jcbowman | 2005-11-08 08:19:24 +0100 (Tue, 08 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/errorbars.asy Added missing picture arguments to graph. ------------------------------------------------------------------------ -r1118 | jcbowman | 2005-11-07 22:26:21 -0700 (Mon, 07 Nov 2005) | 2 lines +r1118 | jcbowman | 2005-11-08 06:26:21 +0100 (Tue, 08 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/animations/cube.asy M /trunk/asymptote/examples/animations/wheel.asy @@ -32213,7 +32615,7 @@ Changed paths: Remaining import updates. ------------------------------------------------------------------------ -r1116 | hammera | 2005-11-07 09:57:39 -0700 (Mon, 07 Nov 2005) | 2 lines +r1116 | hammera | 2005-11-07 17:57:39 +0100 (Mon, 07 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/absyn.h @@ -32285,7 +32687,7 @@ Changed paths: Merged in changes from the import branch. ------------------------------------------------------------------------ -r1110 | jcbowman | 2005-11-06 16:36:58 -0700 (Sun, 06 Nov 2005) | 2 lines +r1110 | jcbowman | 2005-11-07 00:36:58 +0100 (Mon, 07 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/doc/asymptote.texi @@ -32293,7 +32695,7 @@ Changed paths: Fixed lexer error. ------------------------------------------------------------------------ -r1108 | jcbowman | 2005-11-05 20:45:10 -0700 (Sat, 05 Nov 2005) | 2 lines +r1108 | jcbowman | 2005-11-06 04:45:10 +0100 (Sun, 06 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/doc/asymptote.texi @@ -32301,14 +32703,14 @@ Changed paths: Removed # and ## as admissible operators. ------------------------------------------------------------------------ -r1107 | jcbowman | 2005-11-03 10:44:07 -0700 (Thu, 03 Nov 2005) | 2 lines +r1107 | jcbowman | 2005-11-03 18:44:07 +0100 (Thu, 03 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Temporarily deactive last change. ------------------------------------------------------------------------ -r1106 | jcbowman | 2005-11-03 10:32:41 -0700 (Thu, 03 Nov 2005) | 2 lines +r1106 | jcbowman | 2005-11-03 18:32:41 +0100 (Thu, 03 Nov 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/fileio.h @@ -32316,7 +32718,7 @@ Changed paths: Respect final null entry when reading data in cvs mode. ------------------------------------------------------------------------ -r1104 | jcbowman | 2005-11-02 22:46:58 -0700 (Wed, 02 Nov 2005) | 4 lines +r1104 | jcbowman | 2005-11-03 06:46:58 +0100 (Thu, 03 Nov 2005) | 4 lines Changed paths: A /trunk/asymptote/base/fontsize.asy M /trunk/asymptote/camp.l @@ -32328,14 +32730,14 @@ Added infix operators << >> @ @@ $ $$ # ##. New module fontsize.asy supports nonstandard fonts. ------------------------------------------------------------------------ -r1093 | jcbowman | 2005-10-30 03:41:06 -0700 (Sun, 30 Oct 2005) | 2 lines +r1093 | jcbowman | 2005-10-30 11:41:06 +0100 (Sun, 30 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.y Allow expressions of the form (0,0,0){x,y,z}. ------------------------------------------------------------------------ -r1092 | jcbowman | 2005-10-30 03:34:35 -0700 (Sun, 30 Oct 2005) | 2 lines +r1092 | jcbowman | 2005-10-30 11:34:35 +0100 (Sun, 30 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -32344,7 +32746,7 @@ Changed paths: Removed operator symbols consisting of letters enclosed by colons. ------------------------------------------------------------------------ -r1087 | jcbowman | 2005-10-28 23:31:17 -0600 (Fri, 28 Oct 2005) | 3 lines +r1087 | jcbowman | 2005-10-29 07:31:17 +0200 (Sat, 29 Oct 2005) | 3 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -32354,7 +32756,7 @@ Additional operator symbols can now be formed by enclosing any combination of letters (including the underscore character) in colons. ------------------------------------------------------------------------ -r1086 | jcbowman | 2005-10-28 21:56:53 -0600 (Fri, 28 Oct 2005) | 2 lines +r1086 | jcbowman | 2005-10-29 05:56:53 +0200 (Sat, 29 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/camp.l @@ -32362,7 +32764,7 @@ Changed paths: Re-added tension3 and curl3 operators. ------------------------------------------------------------------------ -r1082 | jcbowman | 2005-10-27 22:08:47 -0600 (Thu, 27 Oct 2005) | 2 lines +r1082 | jcbowman | 2005-10-28 06:08:47 +0200 (Fri, 28 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -32372,14 +32774,14 @@ Changed paths: Documentation now refers to Datadir variable rather than /usr/local/share. ------------------------------------------------------------------------ -r1080 | jcbowman | 2005-10-26 12:28:04 -0600 (Wed, 26 Oct 2005) | 2 lines +r1080 | jcbowman | 2005-10-26 20:28:04 +0200 (Wed, 26 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r1074 | jcbowman | 2005-10-24 22:54:56 -0600 (Mon, 24 Oct 2005) | 5 lines +r1074 | jcbowman | 2005-10-25 06:54:56 +0200 (Tue, 25 Oct 2005) | 5 lines Changed paths: M /trunk/asymptote/main.cc @@ -32389,7 +32791,7 @@ A return code of 0 means successful; 1 means a user error occurred; -1 signals a misconfiguration error (pipe, fork, or exec failed). ------------------------------------------------------------------------ -r1073 | jcbowman | 2005-10-24 22:02:19 -0600 (Mon, 24 Oct 2005) | 6 lines +r1073 | jcbowman | 2005-10-25 06:02:19 +0200 (Tue, 25 Oct 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/Makefile @@ -32402,28 +32804,28 @@ Use convert instead of dvipng in doc/Makefile. Updated Debian URL. ------------------------------------------------------------------------ -r1069 | jcbowman | 2005-10-23 02:15:00 -0600 (Sun, 23 Oct 2005) | 2 lines +r1069 | jcbowman | 2005-10-23 10:15:00 +0200 (Sun, 23 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.93cvs. ------------------------------------------------------------------------ -r1068 | jcbowman | 2005-10-23 01:48:50 -0600 (Sun, 23 Oct 2005) | 2 lines +r1068 | jcbowman | 2005-10-23 09:48:50 +0200 (Sun, 23 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed cd diagnostic. ------------------------------------------------------------------------ -r1067 | jcbowman | 2005-10-23 00:50:35 -0600 (Sun, 23 Oct 2005) | 2 lines +r1067 | jcbowman | 2005-10-23 08:50:35 +0200 (Sun, 23 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Fixed label bbox bug. ------------------------------------------------------------------------ -r1066 | jcbowman | 2005-10-22 23:15:14 -0600 (Sat, 22 Oct 2005) | 5 lines +r1066 | jcbowman | 2005-10-23 07:15:14 +0200 (Sun, 23 Oct 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -32437,14 +32839,14 @@ Fixed intersect fuzz calculation. Implemented means of adjusting 3d aspect ratio. ------------------------------------------------------------------------ -r1065 | jcbowman | 2005-10-22 10:49:28 -0600 (Sat, 22 Oct 2005) | 2 lines +r1065 | jcbowman | 2005-10-22 18:49:28 +0200 (Sat, 22 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/xasy Updated xasy to generate GUI(int) frames instead of gui(int). ------------------------------------------------------------------------ -r1064 | jcbowman | 2005-10-22 04:25:01 -0600 (Sat, 22 Oct 2005) | 2 lines +r1064 | jcbowman | 2005-10-22 12:25:01 +0200 (Sat, 22 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/bbox.h M /trunk/asymptote/runtime.in @@ -32452,28 +32854,28 @@ Changed paths: Workaround missing round function under FreeBSD. ------------------------------------------------------------------------ -r1063 | jcbowman | 2005-10-22 03:41:04 -0600 (Sat, 22 Oct 2005) | 2 lines +r1063 | jcbowman | 2005-10-22 11:41:04 +0200 (Sat, 22 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fixed cxx errors. ------------------------------------------------------------------------ -r1060 | jcbowman | 2005-10-22 02:54:14 -0600 (Sat, 22 Oct 2005) | 2 lines +r1060 | jcbowman | 2005-10-22 10:54:14 +0200 (Sat, 22 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/brokenaxis.asy Fixed example. ------------------------------------------------------------------------ -r1059 | jcbowman | 2005-10-22 02:51:32 -0600 (Sat, 22 Oct 2005) | 2 lines +r1059 | jcbowman | 2005-10-22 10:51:32 +0200 (Sat, 22 Oct 2005) | 2 lines Changed paths: A /trunk/asymptote/doc/brokenaxis.asy Added missing example. ------------------------------------------------------------------------ -r1058 | jcbowman | 2005-10-22 02:48:56 -0600 (Sat, 22 Oct 2005) | 2 lines +r1058 | jcbowman | 2005-10-22 10:48:56 +0200 (Sat, 22 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -32481,7 +32883,7 @@ Changed paths: Added scaleT Broken and example of broken x axis. ------------------------------------------------------------------------ -r1057 | jcbowman | 2005-10-22 01:45:58 -0600 (Sat, 22 Oct 2005) | 5 lines +r1057 | jcbowman | 2005-10-22 09:45:58 +0200 (Sat, 22 Oct 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -32498,7 +32900,7 @@ Moved dir argument of picture.fit() to add(frame,pair) and attach(frame,pair). Added frame align(frame f, pair dir) for aligning frames. ------------------------------------------------------------------------ -r1056 | jcbowman | 2005-10-22 00:03:18 -0600 (Sat, 22 Oct 2005) | 5 lines +r1056 | jcbowman | 2005-10-22 08:03:18 +0200 (Sat, 22 Oct 2005) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/errorbars.asy @@ -32509,7 +32911,7 @@ markuniform(int n) routine which draws n markers at evenly spaced intervals along the arclength of the path. ------------------------------------------------------------------------ -r1055 | jcbowman | 2005-10-21 02:12:29 -0600 (Fri, 21 Oct 2005) | 2 lines +r1055 | jcbowman | 2005-10-21 10:12:29 +0200 (Fri, 21 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/picture.cc @@ -32520,7 +32922,7 @@ Changed paths: Don't strip directory from explicit output filenames. ------------------------------------------------------------------------ -r1054 | jcbowman | 2005-10-21 01:23:16 -0600 (Fri, 21 Oct 2005) | 2 lines +r1054 | jcbowman | 2005-10-21 09:23:16 +0200 (Fri, 21 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -32530,7 +32932,7 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r1053 | jcbowman | 2005-10-20 01:36:43 -0600 (Thu, 20 Oct 2005) | 26 lines +r1053 | jcbowman | 2005-10-20 09:36:43 +0200 (Thu, 20 Oct 2005) | 26 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/math.asy @@ -32570,7 +32972,7 @@ Documented use of Cyrillic fonts. Documented that \end{asy} environment must appear on a line by itself. ------------------------------------------------------------------------ -r1047 | jcbowman | 2005-10-15 03:14:38 -0600 (Sat, 15 Oct 2005) | 3 lines +r1047 | jcbowman | 2005-10-15 11:14:38 +0200 (Sat, 15 Oct 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -32578,14 +32980,14 @@ Fix precision errors at +/-1e-4; default format changes to scientific notation here. ------------------------------------------------------------------------ -r1046 | jcbowman | 2005-10-14 22:07:16 -0600 (Fri, 14 Oct 2005) | 2 lines +r1046 | jcbowman | 2005-10-15 06:07:16 +0200 (Sat, 15 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Fixed inside(path,pair). ------------------------------------------------------------------------ -r1038 | jcbowman | 2005-10-14 01:16:49 -0600 (Fri, 14 Oct 2005) | 37 lines +r1038 | jcbowman | 2005-10-14 09:16:49 +0200 (Fri, 14 Oct 2005) | 37 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/base/graph.asy @@ -32656,7 +33058,7 @@ Added face labels to cube animation. Updated installation instructions. ------------------------------------------------------------------------ -r1035 | hammera | 2005-10-13 13:04:36 -0600 (Thu, 13 Oct 2005) | 2 lines +r1035 | hammera | 2005-10-13 21:04:36 +0200 (Thu, 13 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -32664,7 +33066,7 @@ Changed paths: Fixed prettyprinting of joinExp. ------------------------------------------------------------------------ -r1034 | hammera | 2005-10-13 12:43:16 -0600 (Thu, 13 Oct 2005) | 2 lines +r1034 | hammera | 2005-10-13 20:43:16 +0200 (Thu, 13 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/env.cc M /trunk/asymptote/exp.cc @@ -32672,28 +33074,28 @@ Changed paths: More specific error message for casting. ------------------------------------------------------------------------ -r1033 | hammera | 2005-10-13 12:42:41 -0600 (Thu, 13 Oct 2005) | 2 lines +r1033 | hammera | 2005-10-13 20:42:41 +0200 (Thu, 13 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/stm.cc Fixed indenting for parse output. ------------------------------------------------------------------------ -r1032 | jcbowman | 2005-10-13 09:01:13 -0600 (Thu, 13 Oct 2005) | 2 lines +r1032 | jcbowman | 2005-10-13 17:01:13 +0200 (Thu, 13 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.h Fixed control point bug introduced by recent straight flag fix. ------------------------------------------------------------------------ -r1031 | jcbowman | 2005-10-12 16:29:21 -0600 (Wed, 12 Oct 2005) | 2 lines +r1031 | jcbowman | 2005-10-13 00:29:21 +0200 (Thu, 13 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Make default value of picture.keepAspect true. ------------------------------------------------------------------------ -r1030 | jcbowman | 2005-10-12 14:02:37 -0600 (Wed, 12 Oct 2005) | 4 lines +r1030 | jcbowman | 2005-10-12 22:02:37 +0200 (Wed, 12 Oct 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy @@ -32702,7 +33104,7 @@ Use picture defaults as default parameters in fit and size functions (locally resolved default function arguments now allow this). ------------------------------------------------------------------------ -r1027 | hammera | 2005-10-11 19:29:11 -0600 (Tue, 11 Oct 2005) | 2 lines +r1027 | hammera | 2005-10-12 03:29:11 +0200 (Wed, 12 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/flatguide.cc M /trunk/asymptote/knot.cc @@ -32711,14 +33113,14 @@ Changed paths: Straight flags are preserved when using a path as part of a guide. ------------------------------------------------------------------------ -r1026 | hammera | 2005-10-07 21:57:39 -0600 (Fri, 07 Oct 2005) | 2 lines +r1026 | hammera | 2005-10-08 05:57:39 +0200 (Sat, 08 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/fundec.cc Default arguments are evaluated "out-of-order" like variable initializers. ------------------------------------------------------------------------ -r1024 | jcbowman | 2005-10-07 14:58:33 -0600 (Fri, 07 Oct 2005) | 6 lines +r1024 | jcbowman | 2005-10-07 22:58:33 +0200 (Fri, 07 Oct 2005) | 6 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/three.asy @@ -32737,7 +33139,7 @@ plane(triple u, triple v, triple O=three.O) now returns the plane through point O with normal cross(u,v) ------------------------------------------------------------------------ -r1023 | jcbowman | 2005-10-07 02:22:25 -0600 (Fri, 07 Oct 2005) | 9 lines +r1023 | jcbowman | 2005-10-07 10:22:25 +0200 (Fri, 07 Oct 2005) | 9 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -32757,21 +33159,21 @@ merge no longer waits for animation to complete. Added rotating cube animation. ------------------------------------------------------------------------ -r1022 | jcbowman | 2005-10-06 11:46:16 -0600 (Thu, 06 Oct 2005) | 2 lines +r1022 | jcbowman | 2005-10-06 19:46:16 +0200 (Thu, 06 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/loggrid.asy Fixed formatting. ------------------------------------------------------------------------ -r1021 | jcbowman | 2005-10-06 11:17:13 -0600 (Thu, 06 Oct 2005) | 2 lines +r1021 | jcbowman | 2005-10-06 19:17:13 +0200 (Thu, 06 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/loggrid.asy Added linewidth(). ------------------------------------------------------------------------ -r1020 | jcbowman | 2005-10-06 11:11:05 -0600 (Thu, 06 Oct 2005) | 5 lines +r1020 | jcbowman | 2005-10-06 19:11:05 +0200 (Thu, 06 Oct 2005) | 5 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/plain.asy @@ -32787,14 +33189,14 @@ and defaultpen(real) instead. To avoid confusion, a dot product now requires explicit pair arguments. ------------------------------------------------------------------------ -r1018 | jcbowman | 2005-10-06 10:05:56 -0600 (Thu, 06 Oct 2005) | 2 lines +r1018 | jcbowman | 2005-10-06 18:05:56 +0200 (Thu, 06 Oct 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/epix.asy Added new 3d surface example. ------------------------------------------------------------------------ -r1016 | jcbowman | 2005-10-05 23:55:15 -0600 (Wed, 05 Oct 2005) | 4 lines +r1016 | jcbowman | 2005-10-06 07:55:15 +0200 (Thu, 06 Oct 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -32806,7 +33208,7 @@ Added example of reading column data from a file and a least squares fit. Changed xsize and ysize arguments of size to simply x and y. ------------------------------------------------------------------------ -r1015 | jcbowman | 2005-10-05 19:51:32 -0600 (Wed, 05 Oct 2005) | 2 lines +r1015 | jcbowman | 2005-10-06 03:51:32 +0200 (Thu, 06 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -32814,35 +33216,35 @@ Changed paths: Added keepAspect=Aspect option to size(pic,real). ------------------------------------------------------------------------ -r1014 | jcbowman | 2005-10-05 19:44:19 -0600 (Wed, 05 Oct 2005) | 2 lines +r1014 | jcbowman | 2005-10-06 03:44:19 +0200 (Thu, 06 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Added colinearity checks to leastsquares. ------------------------------------------------------------------------ -r1013 | jcbowman | 2005-10-05 01:49:20 -0600 (Wed, 05 Oct 2005) | 2 lines +r1013 | jcbowman | 2005-10-05 09:49:20 +0200 (Wed, 05 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Use local copy of ticklabel and Label context variables. ------------------------------------------------------------------------ -r1012 | jcbowman | 2005-10-05 00:12:20 -0600 (Wed, 05 Oct 2005) | 2 lines +r1012 | jcbowman | 2005-10-05 08:12:20 +0200 (Wed, 05 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Reduce default axis coverage limit to 80%. ------------------------------------------------------------------------ -r1011 | jcbowman | 2005-10-04 21:48:00 -0600 (Tue, 04 Oct 2005) | 2 lines +r1011 | jcbowman | 2005-10-05 05:48:00 +0200 (Wed, 05 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation updates. ------------------------------------------------------------------------ -r1010 | jcbowman | 2005-10-04 16:13:55 -0600 (Tue, 04 Oct 2005) | 4 lines +r1010 | jcbowman | 2005-10-05 00:13:55 +0200 (Wed, 05 Oct 2005) | 4 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/settings.cc @@ -32852,7 +33254,7 @@ Fixed default location of python under MSDOS. Improved ASYMPTOTE_PYTHON/ASYMPTOTE_XASY diagnostics. ------------------------------------------------------------------------ -r1009 | jcbowman | 2005-10-04 15:43:14 -0600 (Tue, 04 Oct 2005) | 7 lines +r1009 | jcbowman | 2005-10-04 23:43:14 +0200 (Tue, 04 Oct 2005) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -32871,14 +33273,14 @@ Allow GUI mode in interactive mode. Added gui(real x=1) function to turn on GUI mode. ------------------------------------------------------------------------ -r1008 | jcbowman | 2005-10-04 11:27:41 -0600 (Tue, 04 Oct 2005) | 2 lines +r1008 | jcbowman | 2005-10-04 19:27:41 +0200 (Tue, 04 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Remove intermediate gif files before viewing animation. ------------------------------------------------------------------------ -r1007 | jcbowman | 2005-10-04 11:20:56 -0600 (Tue, 04 Oct 2005) | 3 lines +r1007 | jcbowman | 2005-10-04 19:20:56 +0200 (Tue, 04 Oct 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -32895,28 +33297,28 @@ Added quiet option to override -V command line option, say for producing animated gifs. If the -V option is given, gifmerge now calls animate. ------------------------------------------------------------------------ -r1006 | jcbowman | 2005-10-04 00:30:27 -0600 (Tue, 04 Oct 2005) | 2 lines +r1006 | jcbowman | 2005-10-04 08:30:27 +0200 (Tue, 04 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.92cvs. ------------------------------------------------------------------------ -r1005 | jcbowman | 2005-10-03 23:39:06 -0600 (Mon, 03 Oct 2005) | 2 lines +r1005 | jcbowman | 2005-10-04 07:39:06 +0200 (Tue, 04 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Fixed GUI transforms: grouping should not depend on deconstruct flag. ------------------------------------------------------------------------ -r1004 | jcbowman | 2005-10-03 23:06:24 -0600 (Mon, 03 Oct 2005) | 2 lines +r1004 | jcbowman | 2005-10-04 07:06:24 +0200 (Tue, 04 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.91cvs. ------------------------------------------------------------------------ -r1002 | jcbowman | 2005-10-03 21:24:51 -0600 (Mon, 03 Oct 2005) | 3 lines +r1002 | jcbowman | 2005-10-04 05:24:51 +0200 (Tue, 04 Oct 2005) | 3 lines Changed paths: M /trunk/asymptote/examples/limit.asy M /trunk/asymptote/pipestream.h @@ -32926,7 +33328,7 @@ Changed paths: Flush stdout immediately before calls to fork() to avoid duplicate output. ------------------------------------------------------------------------ -r1001 | jcbowman | 2005-10-03 02:36:26 -0600 (Mon, 03 Oct 2005) | 4 lines +r1001 | jcbowman | 2005-10-03 10:36:26 +0200 (Mon, 03 Oct 2005) | 4 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -32945,7 +33347,7 @@ Added Andy's changes to evaluate default function arguments in the defining scope of the function, not in the scope of the caller. ------------------------------------------------------------------------ -r1000 | jcbowman | 2005-10-03 02:20:02 -0600 (Mon, 03 Oct 2005) | 9 lines +r1000 | jcbowman | 2005-10-03 10:20:02 +0200 (Mon, 03 Oct 2005) | 9 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/plain.asy @@ -32967,7 +33369,7 @@ Added == and != for files. Allow casting of null to file. ------------------------------------------------------------------------ -r998 | jcbowman | 2005-10-03 01:08:44 -0600 (Mon, 03 Oct 2005) | 2 lines +r998 | jcbowman | 2005-10-03 09:08:44 +0200 (Mon, 03 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path3.cc @@ -32975,7 +33377,7 @@ Changed paths: Readded depth limit to intersect routines to prevent stack overflow. ------------------------------------------------------------------------ -r997 | jcbowman | 2005-10-02 15:42:30 -0600 (Sun, 02 Oct 2005) | 3 lines +r997 | jcbowman | 2005-10-02 23:42:30 +0200 (Sun, 02 Oct 2005) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/path.cc @@ -32985,7 +33387,7 @@ Enforce a minimum value of fuzz in intersect routines to prevent infinite loops. ------------------------------------------------------------------------ -r995 | jcbowman | 2005-10-02 01:20:15 -0600 (Sun, 02 Oct 2005) | 13 lines +r995 | jcbowman | 2005-10-02 09:20:15 +0200 (Sun, 02 Oct 2005) | 13 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -33013,28 +33415,28 @@ rotating text along a line in the direction dir. Updated helix example to illustrate rotated tick and axis labels. ------------------------------------------------------------------------ -r994 | jcbowman | 2005-09-30 23:40:32 -0600 (Fri, 30 Sep 2005) | 2 lines +r994 | jcbowman | 2005-10-01 07:40:32 +0200 (Sat, 01 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.90cvs. ------------------------------------------------------------------------ -r993 | jcbowman | 2005-09-30 22:42:16 -0600 (Fri, 30 Sep 2005) | 2 lines +r993 | jcbowman | 2005-10-01 06:42:16 +0200 (Sat, 01 Oct 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented min(frame) and max(frame). ------------------------------------------------------------------------ -r992 | jcbowman | 2005-09-30 14:55:59 -0600 (Fri, 30 Sep 2005) | 2 lines +r992 | jcbowman | 2005-09-30 22:55:59 +0200 (Fri, 30 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Don't upscale logarithmic range when automax=false. ------------------------------------------------------------------------ -r991 | jcbowman | 2005-09-30 12:42:28 -0600 (Fri, 30 Sep 2005) | 4 lines +r991 | jcbowman | 2005-09-30 20:42:28 +0200 (Fri, 30 Sep 2005) | 4 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -33044,7 +33446,7 @@ Renamed temporary included PostScript file suffix from "ps" to "eps". Removed all references to mailing list, as it is no longer in use. ------------------------------------------------------------------------ -r990 | jcbowman | 2005-09-30 07:50:18 -0600 (Fri, 30 Sep 2005) | 4 lines +r990 | jcbowman | 2005-09-30 15:50:18 +0200 (Fri, 30 Sep 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -33056,7 +33458,7 @@ Fixed .gui processing. Added new example. ------------------------------------------------------------------------ -r988 | jcbowman | 2005-09-29 19:53:03 -0600 (Thu, 29 Sep 2005) | 2 lines +r988 | jcbowman | 2005-09-30 03:53:03 +0200 (Fri, 30 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/Bode.asy @@ -33066,7 +33468,7 @@ Changed paths: Allow overriding of ticklabel routine for logarithmic axis; added example. ------------------------------------------------------------------------ -r986 | jcbowman | 2005-09-29 18:04:46 -0600 (Thu, 29 Sep 2005) | 4 lines +r986 | jcbowman | 2005-09-30 02:04:46 +0200 (Fri, 30 Sep 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -33083,21 +33485,21 @@ Standardized arguments to LeftTicks, etc. Fixed user-specified logarithmic ticks. ------------------------------------------------------------------------ -r985 | jcbowman | 2005-09-29 01:50:22 -0600 (Thu, 29 Sep 2005) | 2 lines +r985 | jcbowman | 2005-09-29 09:50:22 +0200 (Thu, 29 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.89cvs. ------------------------------------------------------------------------ -r984 | jcbowman | 2005-09-28 23:53:39 -0600 (Wed, 28 Sep 2005) | 2 lines +r984 | jcbowman | 2005-09-29 07:53:39 +0200 (Thu, 29 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Only build required images. ------------------------------------------------------------------------ -r982 | jcbowman | 2005-09-28 23:37:23 -0600 (Wed, 28 Sep 2005) | 2 lines +r982 | jcbowman | 2005-09-29 07:37:23 +0200 (Thu, 29 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/flow.asy @@ -33105,7 +33507,7 @@ Changed paths: Minor documentation updates. ------------------------------------------------------------------------ -r981 | jcbowman | 2005-09-28 18:01:47 -0600 (Wed, 28 Sep 2005) | 8 lines +r981 | jcbowman | 2005-09-29 02:01:47 +0200 (Thu, 29 Sep 2005) | 8 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -33124,7 +33526,7 @@ Documented vectorfield and flow example. Fixed cxx warning messages. ------------------------------------------------------------------------ -r978 | jcbowman | 2005-09-28 14:51:47 -0600 (Wed, 28 Sep 2005) | 10 lines +r978 | jcbowman | 2005-09-28 22:51:47 +0200 (Wed, 28 Sep 2005) | 10 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/graph.asy @@ -33156,7 +33558,7 @@ Removed spurious nullpaths from :: and ---. Documented deconstruction of guides. ------------------------------------------------------------------------ -r977 | jcbowman | 2005-09-27 01:42:24 -0600 (Tue, 27 Sep 2005) | 5 lines +r977 | jcbowman | 2005-09-27 09:42:24 +0200 (Tue, 27 Sep 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/camperror.cc @@ -33173,14 +33575,14 @@ size when an undefined label is encountered with the -t option. Fixed box(Label). ------------------------------------------------------------------------ -r975 | jcbowman | 2005-09-26 23:28:56 -0600 (Mon, 26 Sep 2005) | 2 lines +r975 | jcbowman | 2005-09-27 07:28:56 +0200 (Tue, 27 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/patches/pstoedit-3.42asy.patch Updated pstoedit patch to put brackets around rotated strings. ------------------------------------------------------------------------ -r974 | jcbowman | 2005-09-26 23:09:02 -0600 (Mon, 26 Sep 2005) | 2 lines +r974 | jcbowman | 2005-09-27 07:09:02 +0200 (Tue, 27 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -33192,14 +33594,14 @@ Changed paths: Implemented data file comment character (# by default). ------------------------------------------------------------------------ -r973 | jcbowman | 2005-09-26 09:05:45 -0600 (Mon, 26 Sep 2005) | 2 lines +r973 | jcbowman | 2005-09-26 17:05:45 +0200 (Mon, 26 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Used scaled epsilon to adjust right-hand axis limit. ------------------------------------------------------------------------ -r972 | jcbowman | 2005-09-25 23:45:48 -0600 (Sun, 25 Sep 2005) | 25 lines +r972 | jcbowman | 2005-09-26 07:45:48 +0200 (Mon, 26 Sep 2005) | 25 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/graph.asy @@ -33252,42 +33654,42 @@ Added patch to pstoedit-3.42 to support PNG to EPS conversion. Updated documentation. ------------------------------------------------------------------------ -r971 | jcbowman | 2005-09-25 21:56:47 -0600 (Sun, 25 Sep 2005) | 2 lines +r971 | jcbowman | 2005-09-26 05:56:47 +0200 (Mon, 26 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Fixed base alignment in new deferred TeX alignment scheme. ------------------------------------------------------------------------ -r970 | jcbowman | 2005-09-23 22:04:54 -0600 (Fri, 23 Sep 2005) | 2 lines +r970 | jcbowman | 2005-09-24 06:04:54 +0200 (Sat, 24 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fixed shift(c) in 3d circle. ------------------------------------------------------------------------ -r969 | jcbowman | 2005-09-23 09:42:46 -0600 (Fri, 23 Sep 2005) | 2 lines +r969 | jcbowman | 2005-09-23 17:42:46 +0200 (Fri, 23 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l Fixed "\\". ------------------------------------------------------------------------ -r968 | jcbowman | 2005-09-23 01:15:56 -0600 (Fri, 23 Sep 2005) | 2 lines +r968 | jcbowman | 2005-09-23 09:15:56 +0200 (Fri, 23 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc Added missing header. ------------------------------------------------------------------------ -r967 | jcbowman | 2005-09-23 01:07:53 -0600 (Fri, 23 Sep 2005) | 2 lines +r967 | jcbowman | 2005-09-23 09:07:53 +0200 (Fri, 23 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Make merge use environment variable ASYMPTOTE_CONVERT. ------------------------------------------------------------------------ -r966 | jcbowman | 2005-09-23 01:02:48 -0600 (Fri, 23 Sep 2005) | 2 lines +r966 | jcbowman | 2005-09-23 09:02:48 +0200 (Fri, 23 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -33300,7 +33702,7 @@ Changed paths: Added an environment variable for the location of every external command. ------------------------------------------------------------------------ -r965 | jcbowman | 2005-09-22 23:54:43 -0600 (Thu, 22 Sep 2005) | 2 lines +r965 | jcbowman | 2005-09-23 07:54:43 +0200 (Fri, 23 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy A /trunk/asymptote/examples/flow.asy @@ -33308,7 +33710,7 @@ Changed paths: Added vectorfield routine and example. ------------------------------------------------------------------------ -r963 | jcbowman | 2005-09-22 23:23:39 -0600 (Thu, 22 Sep 2005) | 11 lines +r963 | jcbowman | 2005-09-23 07:23:39 +0200 (Fri, 23 Sep 2005) | 11 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.sty @@ -33337,14 +33739,14 @@ Added -t option to asy to request inline LaTeX code to be generated. Added modified dvipdf that accepts the dvips -z hyperdvi option. ------------------------------------------------------------------------ -r962 | jcbowman | 2005-09-21 19:06:07 -0600 (Wed, 21 Sep 2005) | 2 lines +r962 | jcbowman | 2005-09-22 03:06:07 +0200 (Thu, 22 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex Updated axis call. ------------------------------------------------------------------------ -r961 | jcbowman | 2005-09-21 17:58:34 -0600 (Wed, 21 Sep 2005) | 2 lines +r961 | jcbowman | 2005-09-22 01:58:34 +0200 (Thu, 22 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/runtime.cc @@ -33352,7 +33754,7 @@ Changed paths: Replace system calls to rm/del by unlink(). ------------------------------------------------------------------------ -r960 | jcbowman | 2005-09-21 02:32:44 -0600 (Wed, 21 Sep 2005) | 21 lines +r960 | jcbowman | 2005-09-21 10:32:44 +0200 (Wed, 21 Sep 2005) | 21 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -33401,7 +33803,7 @@ Check for empty pictures when drawing axes with ticks. Updated documentation and examples. ------------------------------------------------------------------------ -r959 | jcbowman | 2005-09-20 02:39:57 -0600 (Tue, 20 Sep 2005) | 16 lines +r959 | jcbowman | 2005-09-20 10:39:57 +0200 (Tue, 20 Sep 2005) | 16 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/TODO @@ -33436,21 +33838,21 @@ Under MSDOS, change "rm" to "del" in merge utility. Don't print hints when there is no environment variable. ------------------------------------------------------------------------ -r955 | hammera | 2005-09-16 09:36:50 -0600 (Fri, 16 Sep 2005) | 2 lines +r955 | hammera | 2005-09-16 17:36:50 +0200 (Fri, 16 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/name.cc Fixed error reporting bug. ------------------------------------------------------------------------ -r954 | jcbowman | 2005-09-14 07:46:33 -0600 (Wed, 14 Sep 2005) | 2 lines +r954 | jcbowman | 2005-09-14 15:46:33 +0200 (Wed, 14 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Changed make to $(MAKE) for portability. ------------------------------------------------------------------------ -r953 | jcbowman | 2005-09-14 01:25:28 -0600 (Wed, 14 Sep 2005) | 7 lines +r953 | jcbowman | 2005-09-14 09:25:28 +0200 (Wed, 14 Sep 2005) | 7 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -33462,14 +33864,14 @@ to the corresponding node. Fixed the length of a cyclic path3. ------------------------------------------------------------------------ -r952 | jcbowman | 2005-09-14 01:17:44 -0600 (Wed, 14 Sep 2005) | 2 lines +r952 | jcbowman | 2005-09-14 09:17:44 +0200 (Wed, 14 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Added snprintf workaround for non-C99 compliant systems. ------------------------------------------------------------------------ -r951 | jcbowman | 2005-09-13 09:49:18 -0600 (Tue, 13 Sep 2005) | 2 lines +r951 | jcbowman | 2005-09-13 17:49:18 +0200 (Tue, 13 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/util.cc @@ -33477,14 +33879,14 @@ Changed paths: Added missing headers for Solaris/Sparc. ------------------------------------------------------------------------ -r950 | jcbowman | 2005-09-12 19:47:44 -0600 (Mon, 12 Sep 2005) | 2 lines +r950 | jcbowman | 2005-09-13 03:47:44 +0200 (Tue, 13 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/types.cc Fixed pair.z and triple.xx bugs. ------------------------------------------------------------------------ -r949 | jcbowman | 2005-09-12 17:11:54 -0600 (Mon, 12 Sep 2005) | 3 lines +r949 | jcbowman | 2005-09-13 01:11:54 +0200 (Tue, 13 Sep 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -33492,14 +33894,14 @@ Changed paths: Added some comments to graph.asy. ------------------------------------------------------------------------ -r948 | jcbowman | 2005-09-12 13:40:40 -0600 (Mon, 12 Sep 2005) | 2 lines +r948 | jcbowman | 2005-09-12 21:40:40 +0200 (Mon, 12 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Optimized matrix times vector. ------------------------------------------------------------------------ -r947 | jcbowman | 2005-09-12 11:35:34 -0600 (Mon, 12 Sep 2005) | 2 lines +r947 | jcbowman | 2005-09-12 19:35:34 +0200 (Mon, 12 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/examples/Pythagoras.asy @@ -33508,7 +33910,7 @@ Changed paths: Standardized perpendicular. ------------------------------------------------------------------------ -r946 | jcbowman | 2005-09-11 23:48:47 -0600 (Sun, 11 Sep 2005) | 2 lines +r946 | jcbowman | 2005-09-12 07:48:47 +0200 (Mon, 12 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/builtin.cc @@ -33520,7 +33922,7 @@ Changed paths: Added 2d & 3d Metapost & operator (like --, but omits the duplicate point). ------------------------------------------------------------------------ -r945 | jcbowman | 2005-09-11 00:34:52 -0600 (Sun, 11 Sep 2005) | 3 lines +r945 | jcbowman | 2005-09-11 08:34:52 +0200 (Sun, 11 Sep 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asymptote.texi @@ -33529,7 +33931,7 @@ Changed paths: Fixed resolution problems of png figures in html manual. ------------------------------------------------------------------------ -r944 | jcbowman | 2005-09-11 00:04:12 -0600 (Sun, 11 Sep 2005) | 2 lines +r944 | jcbowman | 2005-09-11 08:04:12 +0200 (Sun, 11 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/patches/ImageMagick.patch @@ -33537,7 +33939,7 @@ Changed paths: Reorganized installation instructions. ------------------------------------------------------------------------ -r943 | jcbowman | 2005-09-10 23:33:39 -0600 (Sat, 10 Sep 2005) | 5 lines +r943 | jcbowman | 2005-09-11 07:33:39 +0200 (Sun, 11 Sep 2005) | 5 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -33549,7 +33951,7 @@ Handle errors due nonarray rest formals gracefully. Improved formatting. ------------------------------------------------------------------------ -r942 | jcbowman | 2005-09-10 16:10:36 -0600 (Sat, 10 Sep 2005) | 11 lines +r942 | jcbowman | 2005-09-11 00:10:36 +0200 (Sun, 11 Sep 2005) | 11 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/Makefile.in @@ -33569,7 +33971,7 @@ but not asymptote.dvi, asymptote.info, or asymptote.html Documented workaround for broken pdftex installations. ------------------------------------------------------------------------ -r941 | jcbowman | 2005-09-10 00:38:55 -0600 (Sat, 10 Sep 2005) | 4 lines +r941 | jcbowman | 2005-09-10 08:38:55 +0200 (Sat, 10 Sep 2005) | 4 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/builtin.cc @@ -33582,7 +33984,7 @@ Removed scale(pair) in favour of scale(abs(z))*rotate(degrees(z)) to avoid confusion with xscale(z.x)*yscale(z.y). ------------------------------------------------------------------------ -r940 | jcbowman | 2005-09-09 23:58:11 -0600 (Fri, 09 Sep 2005) | 2 lines +r940 | jcbowman | 2005-09-10 07:58:11 +0200 (Sat, 10 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -33590,7 +33992,7 @@ Changed paths: Don't cache MidArrow and Bar sizes. ------------------------------------------------------------------------ -r939 | jcbowman | 2005-09-08 22:24:26 -0600 (Thu, 08 Sep 2005) | 8 lines +r939 | jcbowman | 2005-09-09 06:24:26 +0200 (Fri, 09 Sep 2005) | 8 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/three.asy @@ -33607,28 +34009,28 @@ Documented virtual structure functions. Updated documentation to emphasize that face is derived from picture. ------------------------------------------------------------------------ -r938 | jcbowman | 2005-09-08 10:38:27 -0600 (Thu, 08 Sep 2005) | 2 lines +r938 | jcbowman | 2005-09-08 18:38:27 +0200 (Thu, 08 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated Help section. ------------------------------------------------------------------------ -r937 | jcbowman | 2005-09-07 12:13:36 -0600 (Wed, 07 Sep 2005) | 2 lines +r937 | jcbowman | 2005-09-07 20:13:36 +0200 (Wed, 07 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation. ------------------------------------------------------------------------ -r936 | jcbowman | 2005-09-07 08:45:08 -0600 (Wed, 07 Sep 2005) | 2 lines +r936 | jcbowman | 2005-09-07 16:45:08 +0200 (Wed, 07 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document structure inheritance. ------------------------------------------------------------------------ -r935 | jcbowman | 2005-09-07 02:22:17 -0600 (Wed, 07 Sep 2005) | 7 lines +r935 | jcbowman | 2005-09-07 10:22:17 +0200 (Wed, 07 Sep 2005) | 7 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -33648,7 +34050,7 @@ Check for negative linetype arguments. Minor example updates. ------------------------------------------------------------------------ -r934 | hammera | 2005-09-06 21:40:47 -0600 (Tue, 06 Sep 2005) | 2 lines +r934 | hammera | 2005-09-07 05:40:47 +0200 (Wed, 07 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/name.h M /trunk/asymptote/runtime.cc @@ -33656,14 +34058,14 @@ Changed paths: Changed indenting. ------------------------------------------------------------------------ -r933 | jcbowman | 2005-09-06 01:42:51 -0600 (Tue, 06 Sep 2005) | 2 lines +r933 | jcbowman | 2005-09-06 09:42:51 +0200 (Tue, 06 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.88cvs. ------------------------------------------------------------------------ -r932 | jcbowman | 2005-09-06 01:01:17 -0600 (Tue, 06 Sep 2005) | 2 lines +r932 | jcbowman | 2005-09-06 09:01:17 +0200 (Tue, 06 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/unitcircle3.asy @@ -33671,7 +34073,7 @@ Changed paths: Minor documentation updates. ------------------------------------------------------------------------ -r931 | jcbowman | 2005-09-06 00:26:06 -0600 (Tue, 06 Sep 2005) | 3 lines +r931 | jcbowman | 2005-09-06 08:26:06 +0200 (Tue, 06 Sep 2005) | 3 lines Changed paths: M /trunk/asymptote/access.h M /trunk/asymptote/doc/asymptote.texi @@ -33682,7 +34084,7 @@ Changed paths: Fixed cxx warning messages. ------------------------------------------------------------------------ -r930 | jcbowman | 2005-09-05 23:59:01 -0600 (Mon, 05 Sep 2005) | 8 lines +r930 | jcbowman | 2005-09-06 07:59:01 +0200 (Tue, 06 Sep 2005) | 8 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/patterns.asy @@ -33700,7 +34102,7 @@ Removed explicit size arguments from bbox (as done with shipout some time ago). Updated filltype and 3d documentation. ------------------------------------------------------------------------ -r929 | jcbowman | 2005-09-05 22:01:25 -0600 (Mon, 05 Sep 2005) | 25 lines +r929 | jcbowman | 2005-09-06 06:01:25 +0200 (Tue, 06 Sep 2005) | 25 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/drawtree.asy @@ -33748,7 +34150,7 @@ Added missing shift in Label.out(frame). Updated documentation. ------------------------------------------------------------------------ -r928 | hammera | 2005-09-03 20:33:09 -0600 (Sat, 03 Sep 2005) | 2 lines +r928 | hammera | 2005-09-04 04:33:09 +0200 (Sun, 04 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.h M /trunk/asymptote/entry.cc @@ -33758,7 +34160,7 @@ Changed paths: Added permissions back in. ------------------------------------------------------------------------ -r927 | hammera | 2005-09-03 14:05:22 -0600 (Sat, 03 Sep 2005) | 2 lines +r927 | hammera | 2005-09-03 22:05:22 +0200 (Sat, 03 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/tests/Makefile A /trunk/asymptote/tests/frames @@ -33772,7 +34174,7 @@ Changed paths: Added more testing. ------------------------------------------------------------------------ -r926 | hammera | 2005-09-03 14:04:15 -0600 (Sat, 03 Sep 2005) | 8 lines +r926 | hammera | 2005-09-03 22:04:15 +0200 (Sat, 03 Sep 2005) | 8 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/access.cc @@ -33812,7 +34214,7 @@ Refactoring! - permission information moved to varEntry (but not in use yet) ------------------------------------------------------------------------ -r925 | jcbowman | 2005-09-01 15:26:50 -0600 (Thu, 01 Sep 2005) | 5 lines +r925 | jcbowman | 2005-09-01 23:26:50 +0200 (Thu, 01 Sep 2005) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3.asy @@ -33825,7 +34227,7 @@ Moved surface to graph3. Added 3d analogues of 2d graph functions. ------------------------------------------------------------------------ -r924 | jcbowman | 2005-09-01 12:52:52 -0600 (Thu, 01 Sep 2005) | 9 lines +r924 | jcbowman | 2005-09-01 20:52:52 +0200 (Thu, 01 Sep 2005) | 9 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/math.asy @@ -33844,7 +34246,7 @@ Simplified and documented 3d arc (analogous to 2d arc). Implemented path3 to guide3 cast. ------------------------------------------------------------------------ -r923 | jcbowman | 2005-09-01 02:12:51 -0600 (Thu, 01 Sep 2005) | 4 lines +r923 | jcbowman | 2005-09-01 10:12:51 +0200 (Thu, 01 Sep 2005) | 4 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/three.asy @@ -33856,14 +34258,14 @@ Added 3d intersect and dir functions. Added 3d arc function that is consistent with the usual circle approximation. ------------------------------------------------------------------------ -r922 | jcbowman | 2005-08-31 18:26:04 -0600 (Wed, 31 Aug 2005) | 2 lines +r922 | jcbowman | 2005-09-01 02:26:04 +0200 (Thu, 01 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy Removed diagnostic. ------------------------------------------------------------------------ -r921 | jcbowman | 2005-08-31 18:23:57 -0600 (Wed, 31 Aug 2005) | 2 lines +r921 | jcbowman | 2005-09-01 02:23:57 +0200 (Thu, 01 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/three.asy @@ -33874,7 +34276,7 @@ Changed paths: Documented constructors; changed triangle.asy to use a constructor. ------------------------------------------------------------------------ -r920 | jcbowman | 2005-08-31 16:58:55 -0600 (Wed, 31 Aug 2005) | 2 lines +r920 | jcbowman | 2005-09-01 00:58:55 +0200 (Thu, 01 Sep 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/coder.cc @@ -33883,7 +34285,7 @@ Changed paths: Fixed permissions for static functions in structs. ------------------------------------------------------------------------ -r919 | jcbowman | 2005-08-31 11:24:46 -0600 (Wed, 31 Aug 2005) | 8 lines +r919 | jcbowman | 2005-08-31 19:24:46 +0200 (Wed, 31 Aug 2005) | 8 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/Makefile @@ -33905,7 +34307,7 @@ Fixed datagraph example. Minor documentation updates. ------------------------------------------------------------------------ -r918 | jcbowman | 2005-08-31 01:41:29 -0600 (Wed, 31 Aug 2005) | 5 lines +r918 | jcbowman | 2005-08-31 09:41:29 +0200 (Wed, 31 Aug 2005) | 5 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/three.asy @@ -33916,7 +34318,7 @@ various path.cc functions to 3d. Added subpath & associated functions. ------------------------------------------------------------------------ -r917 | jcbowman | 2005-08-30 00:07:16 -0600 (Tue, 30 Aug 2005) | 6 lines +r917 | jcbowman | 2005-08-30 08:07:16 +0200 (Tue, 30 Aug 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy @@ -33927,7 +34329,7 @@ Use arclength rather than length for determining default label position on paths. ------------------------------------------------------------------------ -r916 | jcbowman | 2005-08-29 23:24:20 -0600 (Mon, 29 Aug 2005) | 5 lines +r916 | jcbowman | 2005-08-30 07:24:20 +0200 (Tue, 30 Aug 2005) | 5 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/TODO @@ -33946,7 +34348,7 @@ Added path3 type. Separated project into path3 conversion and projection. Added 3d arclength and arctime functions. ------------------------------------------------------------------------ -r915 | jcbowman | 2005-08-28 23:19:54 -0600 (Sun, 28 Aug 2005) | 3 lines +r915 | jcbowman | 2005-08-29 07:19:54 +0200 (Mon, 29 Aug 2005) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy @@ -33954,7 +34356,7 @@ For surface plots on a regular mesh, handle hidden surfaces from any camera location. ------------------------------------------------------------------------ -r914 | jcbowman | 2005-08-28 03:16:04 -0600 (Sun, 28 Aug 2005) | 10 lines +r914 | jcbowman | 2005-08-28 11:16:04 +0200 (Sun, 28 Aug 2005) | 10 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/graph.asy @@ -33974,42 +34376,42 @@ Fixed optional position argument of BeginArrow, etc. Update documentation; simplified Makefile. ------------------------------------------------------------------------ -r913 | jcbowman | 2005-08-25 14:44:40 -0600 (Thu, 25 Aug 2005) | 2 lines +r913 | jcbowman | 2005-08-25 22:44:40 +0200 (Thu, 25 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.87cvs. ------------------------------------------------------------------------ -r912 | jcbowman | 2005-08-25 11:43:04 -0600 (Thu, 25 Aug 2005) | 2 lines +r912 | jcbowman | 2005-08-25 19:43:04 +0200 (Thu, 25 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Fixed make clean. ------------------------------------------------------------------------ -r911 | jcbowman | 2005-08-25 11:35:32 -0600 (Thu, 25 Aug 2005) | 2 lines +r911 | jcbowman | 2005-08-25 19:35:32 +0200 (Thu, 25 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Fixed problems with make man. ------------------------------------------------------------------------ -r910 | jcbowman | 2005-08-25 11:14:51 -0600 (Thu, 25 Aug 2005) | 2 lines +r910 | jcbowman | 2005-08-25 19:14:51 +0200 (Thu, 25 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.86cvs. ------------------------------------------------------------------------ -r909 | jcbowman | 2005-08-25 04:10:49 -0600 (Thu, 25 Aug 2005) | 2 lines +r909 | jcbowman | 2005-08-25 12:10:49 +0200 (Thu, 25 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Makefile tweaks. ------------------------------------------------------------------------ -r908 | jcbowman | 2005-08-25 03:45:18 -0600 (Thu, 25 Aug 2005) | 4 lines +r908 | jcbowman | 2005-08-25 11:45:18 +0200 (Thu, 25 Aug 2005) | 4 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/picture.cc @@ -34019,7 +34421,7 @@ Add hyperlinks to pdf manual; fixed margins. Use imdisplay for ImageMagick display under MSDOS. ------------------------------------------------------------------------ -r907 | jcbowman | 2005-08-25 01:55:51 -0600 (Thu, 25 Aug 2005) | 5 lines +r907 | jcbowman | 2005-08-25 09:55:51 +0200 (Thu, 25 Aug 2005) | 5 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/mod.h @@ -34032,7 +34434,7 @@ and ; under MSDOS). Fixed size_t errors. ------------------------------------------------------------------------ -r906 | jcbowman | 2005-08-25 00:38:31 -0600 (Thu, 25 Aug 2005) | 19 lines +r906 | jcbowman | 2005-08-25 08:38:31 +0200 (Thu, 25 Aug 2005) | 19 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/base/asy.vim @@ -34069,7 +34471,7 @@ Added min() and max() members of picture to calculate the picture size to date. Updated documentation. ------------------------------------------------------------------------ -r905 | jcbowman | 2005-08-23 10:40:35 -0600 (Tue, 23 Aug 2005) | 3 lines +r905 | jcbowman | 2005-08-23 18:40:35 +0200 (Tue, 23 Aug 2005) | 3 lines Changed paths: M /trunk/asymptote/picture.cc @@ -34077,21 +34479,21 @@ Diable automatic rotation of pdf files "based on the predominant orientation of the text on each page". ------------------------------------------------------------------------ -r904 | jcbowman | 2005-08-18 20:24:56 -0600 (Thu, 18 Aug 2005) | 2 lines +r904 | jcbowman | 2005-08-19 04:24:56 +0200 (Fri, 19 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Include boundary conditions in solution of Dirichlet tridiagonal solver. ------------------------------------------------------------------------ -r903 | jcbowman | 2005-08-18 03:01:56 -0600 (Thu, 18 Aug 2005) | 2 lines +r903 | jcbowman | 2005-08-18 11:01:56 +0200 (Thu, 18 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed special case of periodic tridiagonal solver. ------------------------------------------------------------------------ -r902 | jcbowman | 2005-08-18 02:27:01 -0600 (Thu, 18 Aug 2005) | 5 lines +r902 | jcbowman | 2005-08-18 10:27:01 +0200 (Thu, 18 Aug 2005) | 5 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/base/graph.asy @@ -34110,14 +34512,14 @@ Allow cyclic indices only on arrays with virtual cyclic flag set to true. Added Dirichlet and periodic tridiagonal solvers. ------------------------------------------------------------------------ -r901 | jcbowman | 2005-08-17 01:33:03 -0600 (Wed, 17 Aug 2005) | 2 lines +r901 | jcbowman | 2005-08-17 09:33:03 +0200 (Wed, 17 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Reduce infinity for tension at least infinity on alpha platform. ------------------------------------------------------------------------ -r900 | jcbowman | 2005-08-17 01:10:37 -0600 (Wed, 17 Aug 2005) | 2 lines +r900 | jcbowman | 2005-08-17 09:10:37 +0200 (Wed, 17 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/interact.cc @@ -34127,7 +34529,7 @@ Changed paths: Make interactive help work in MSDOS. ------------------------------------------------------------------------ -r899 | jcbowman | 2005-08-16 21:58:04 -0600 (Tue, 16 Aug 2005) | 3 lines +r899 | jcbowman | 2005-08-17 05:58:04 +0200 (Wed, 17 Aug 2005) | 3 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -34142,7 +34544,7 @@ Added online help option; exit is now a synonym for quit in interactive mode. ------------------------------------------------------------------------ -r898 | jcbowman | 2005-08-16 11:21:25 -0600 (Tue, 16 Aug 2005) | 2 lines +r898 | jcbowman | 2005-08-16 19:21:25 +0200 (Tue, 16 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asy.ico @@ -34151,7 +34553,7 @@ Changed paths: Improved icon. ------------------------------------------------------------------------ -r897 | jcbowman | 2005-08-16 01:37:41 -0600 (Tue, 16 Aug 2005) | 2 lines +r897 | jcbowman | 2005-08-16 09:37:41 +0200 (Tue, 16 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/asy.ico @@ -34161,14 +34563,14 @@ Changed paths: Fixed MSDOS build; improved icon. ------------------------------------------------------------------------ -r896 | jcbowman | 2005-08-16 00:46:23 -0600 (Tue, 16 Aug 2005) | 2 lines +r896 | jcbowman | 2005-08-16 08:46:23 +0200 (Tue, 16 Aug 2005) | 2 lines Changed paths: A /trunk/asymptote/asy.rc Windows resource template. ------------------------------------------------------------------------ -r895 | jcbowman | 2005-08-16 00:45:31 -0600 (Tue, 16 Aug 2005) | 4 lines +r895 | jcbowman | 2005-08-16 08:45:31 +0200 (Tue, 16 Aug 2005) | 4 lines Changed paths: M /trunk/asymptote/Compile M /trunk/asymptote/Makefile.in @@ -34183,42 +34585,42 @@ Improved configuration; added icon for Microsoft Windows. Updated documentation. ------------------------------------------------------------------------ -r894 | hammera | 2005-08-15 21:56:13 -0600 (Mon, 15 Aug 2005) | 2 lines +r894 | hammera | 2005-08-16 05:56:13 +0200 (Tue, 16 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy Generalized bug fix in simplex. ------------------------------------------------------------------------ -r893 | jcbowman | 2005-08-13 20:05:49 -0600 (Sat, 13 Aug 2005) | 2 lines +r893 | jcbowman | 2005-08-14 04:05:49 +0200 (Sun, 14 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.85cvs. ------------------------------------------------------------------------ -r892 | jcbowman | 2005-08-13 16:04:24 -0600 (Sat, 13 Aug 2005) | 2 lines +r892 | jcbowman | 2005-08-14 00:04:24 +0200 (Sun, 14 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added compilation option msdos for producing Microsoft binaries. ------------------------------------------------------------------------ -r891 | jcbowman | 2005-08-13 15:23:33 -0600 (Sat, 13 Aug 2005) | 2 lines +r891 | jcbowman | 2005-08-13 23:23:33 +0200 (Sat, 13 Aug 2005) | 2 lines Changed paths: D /trunk/asymptote/base/graph3d.asy Removed obsolete file. ------------------------------------------------------------------------ -r890 | jcbowman | 2005-08-13 14:29:43 -0600 (Sat, 13 Aug 2005) | 2 lines +r890 | jcbowman | 2005-08-13 22:29:43 +0200 (Sat, 13 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy Workaround truesize=0 bug in simplex.asy. ------------------------------------------------------------------------ -r889 | jcbowman | 2005-08-13 02:14:40 -0600 (Sat, 13 Aug 2005) | 6 lines +r889 | jcbowman | 2005-08-13 10:14:40 +0200 (Sat, 13 Aug 2005) | 6 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/base/math.asy @@ -34245,7 +34647,7 @@ segmentation fault. Copy data and palette arrays in palette.asy. ------------------------------------------------------------------------ -r888 | jcbowman | 2005-08-12 22:06:54 -0600 (Fri, 12 Aug 2005) | 5 lines +r888 | jcbowman | 2005-08-13 06:06:54 +0200 (Sat, 13 Aug 2005) | 5 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -34258,7 +34660,7 @@ Swapped triple arguments of rotate(real,triple,triple) for consistency with the 2d reflect(pair,pair) syntax. ------------------------------------------------------------------------ -r887 | jcbowman | 2005-08-12 18:58:04 -0600 (Fri, 12 Aug 2005) | 2 lines +r887 | jcbowman | 2005-08-13 02:58:04 +0200 (Sat, 13 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/runtime.cc @@ -34267,7 +34669,7 @@ Changed paths: Removed (size_t) array.size() casts as they are no longer needed. ------------------------------------------------------------------------ -r886 | jcbowman | 2005-08-12 17:43:09 -0600 (Fri, 12 Aug 2005) | 4 lines +r886 | jcbowman | 2005-08-13 01:43:09 +0200 (Sat, 13 Aug 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -34287,7 +34689,7 @@ Added support for Gouraud shading. Moved nullpath into plain.asy. ------------------------------------------------------------------------ -r885 | jcbowman | 2005-08-12 14:01:12 -0600 (Fri, 12 Aug 2005) | 2 lines +r885 | jcbowman | 2005-08-12 22:01:12 +0200 (Fri, 12 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -34297,7 +34699,7 @@ Changed paths: Cleaned up autosize code; more pair to align changes. ------------------------------------------------------------------------ -r884 | jcbowman | 2005-08-12 01:22:26 -0600 (Fri, 12 Aug 2005) | 2 lines +r884 | jcbowman | 2005-08-12 09:22:26 +0200 (Fri, 12 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/examples/coag.asy @@ -34305,7 +34707,7 @@ Changed paths: Updated example; removed extra instance of defaultformat. ------------------------------------------------------------------------ -r883 | jcbowman | 2005-08-12 01:04:45 -0600 (Fri, 12 Aug 2005) | 34 lines +r883 | jcbowman | 2005-08-12 09:04:45 +0200 (Fri, 12 Aug 2005) | 34 lines Changed paths: M /trunk/asymptote/base/drawtree.asy M /trunk/asymptote/base/featpost3D.asy @@ -34398,7 +34800,7 @@ Removed labelxtick and labelytick in favour of xtick and ytick. Updated pstoedit support. ------------------------------------------------------------------------ -r882 | jcbowman | 2005-08-06 22:49:23 -0600 (Sat, 06 Aug 2005) | 2 lines +r882 | jcbowman | 2005-08-07 06:49:23 +0200 (Sun, 07 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -34417,7 +34819,7 @@ Changed paths: Used cast from path to path[] (superpath) to simply fill and clip code. ------------------------------------------------------------------------ -r881 | jcbowman | 2005-08-06 09:18:40 -0600 (Sat, 06 Aug 2005) | 6 lines +r881 | jcbowman | 2005-08-06 17:18:40 +0200 (Sat, 06 Aug 2005) | 6 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.cc @@ -34433,7 +34835,7 @@ Disable display (which requires Xwindows) under MSDOS. Minor documentation updates. ------------------------------------------------------------------------ -r880 | jcbowman | 2005-08-06 02:26:52 -0600 (Sat, 06 Aug 2005) | 10 lines +r880 | jcbowman | 2005-08-06 10:26:52 +0200 (Sat, 06 Aug 2005) | 10 lines Changed paths: M /trunk/asymptote/base/graph.asy A /trunk/asymptote/base/graph3.asy @@ -34475,7 +34877,7 @@ on the graph). Improved optional first and last tick/label suppression. ------------------------------------------------------------------------ -r879 | jcbowman | 2005-08-05 00:11:15 -0600 (Fri, 05 Aug 2005) | 2 lines +r879 | jcbowman | 2005-08-05 08:11:15 +0200 (Fri, 05 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/locate.cc @@ -34487,7 +34889,7 @@ Changed paths: MSDOS environment variable tweaks. ------------------------------------------------------------------------ -r878 | jcbowman | 2005-08-03 21:19:47 -0600 (Wed, 03 Aug 2005) | 11 lines +r878 | jcbowman | 2005-08-04 05:19:47 +0200 (Thu, 04 Aug 2005) | 11 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -34510,14 +34912,14 @@ Make -V the default under MSDOS. Added -n (-noView) option. Updated documentation. ------------------------------------------------------------------------ -r877 | hammera | 2005-08-03 00:40:41 -0600 (Wed, 03 Aug 2005) | 2 lines +r877 | hammera | 2005-08-03 08:40:41 +0200 (Wed, 03 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi '' ------------------------------------------------------------------------ -r876 | jcbowman | 2005-08-02 16:56:01 -0600 (Tue, 02 Aug 2005) | 2 lines +r876 | jcbowman | 2005-08-03 00:56:01 +0200 (Wed, 03 Aug 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/drawlabel.cc @@ -34528,7 +34930,7 @@ Changed paths: Port to MSDOS (via CYGWIN). ------------------------------------------------------------------------ -r875 | jcbowman | 2005-07-30 18:06:58 -0600 (Sat, 30 Jul 2005) | 2 lines +r875 | jcbowman | 2005-07-31 02:06:58 +0200 (Sun, 31 Jul 2005) | 2 lines Changed paths: D /trunk/asymptote/doc/shade.asy M /trunk/asymptote/knot.cc @@ -34536,7 +34938,7 @@ Changed paths: Removed unused file. ------------------------------------------------------------------------ -r874 | jcbowman | 2005-07-30 18:05:56 -0600 (Sat, 30 Jul 2005) | 5 lines +r874 | jcbowman | 2005-07-31 02:05:56 +0200 (Sun, 31 Jul 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -34549,14 +34951,14 @@ Changed operator :: and operator --- to loops. Simplified fill commands. ------------------------------------------------------------------------ -r873 | jcbowman | 2005-07-28 16:11:45 -0600 (Thu, 28 Jul 2005) | 2 lines +r873 | jcbowman | 2005-07-29 00:11:45 +0200 (Fri, 29 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Remove %%DocumentPaperSizes: comment inserted by dvips 5.95a. ------------------------------------------------------------------------ -r872 | jcbowman | 2005-07-23 20:44:32 -0600 (Sat, 23 Jul 2005) | 9 lines +r872 | jcbowman | 2005-07-24 04:44:32 +0200 (Sun, 24 Jul 2005) | 9 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/graph3d.asy @@ -34591,21 +34993,21 @@ Began graph3d construction. Updated documentation and examples. ------------------------------------------------------------------------ -r871 | jcbowman | 2005-07-19 01:21:19 -0600 (Tue, 19 Jul 2005) | 2 lines +r871 | jcbowman | 2005-07-19 09:21:19 +0200 (Tue, 19 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated menus. ------------------------------------------------------------------------ -r870 | jcbowman | 2005-07-19 01:20:58 -0600 (Tue, 19 Jul 2005) | 2 lines +r870 | jcbowman | 2005-07-19 09:20:58 +0200 (Tue, 19 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.84cvs. ------------------------------------------------------------------------ -r869 | jcbowman | 2005-07-19 01:09:04 -0600 (Tue, 19 Jul 2005) | 2 lines +r869 | jcbowman | 2005-07-19 09:09:04 +0200 (Tue, 19 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/errortest.asy @@ -34613,7 +35015,7 @@ Changed paths: Updated error test. ------------------------------------------------------------------------ -r868 | jcbowman | 2005-07-19 00:20:13 -0600 (Tue, 19 Jul 2005) | 5 lines +r868 | jcbowman | 2005-07-19 08:20:13 +0200 (Tue, 19 Jul 2005) | 5 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/asymptote.texi @@ -34624,7 +35026,7 @@ Changed default angle for oblique projection to 45 degrees. Updated documentation. ------------------------------------------------------------------------ -r867 | jcbowman | 2005-07-19 00:09:44 -0600 (Tue, 19 Jul 2005) | 15 lines +r867 | jcbowman | 2005-07-19 08:09:44 +0200 (Tue, 19 Jul 2005) | 15 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -34654,7 +35056,7 @@ Added write(path[]) and write(guide3[]). Added helix example and updated documentation. ------------------------------------------------------------------------ -r866 | jcbowman | 2005-07-18 12:17:33 -0600 (Mon, 18 Jul 2005) | 3 lines +r866 | jcbowman | 2005-07-18 20:17:33 +0200 (Mon, 18 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/doc/surface.asy @@ -34663,14 +35065,14 @@ Determined correct signs in direction-to-control point calculation; propagate directions across nodes. ------------------------------------------------------------------------ -r865 | jcbowman | 2005-07-18 00:38:55 -0600 (Mon, 18 Jul 2005) | 2 lines +r865 | jcbowman | 2005-07-18 08:38:55 +0200 (Mon, 18 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Implement preliminary 3d direction to control point conversion. ------------------------------------------------------------------------ -r864 | jcbowman | 2005-07-17 22:52:16 -0600 (Sun, 17 Jul 2005) | 3 lines +r864 | jcbowman | 2005-07-18 06:52:16 +0200 (Mon, 18 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -34687,7 +35089,7 @@ Move math mode ($ delimiters) to within defaultformat string, to allow use of non-math mode fonts in tick labels (by providing a nondefault format string). ------------------------------------------------------------------------ -r863 | jcbowman | 2005-07-17 19:20:33 -0600 (Sun, 17 Jul 2005) | 7 lines +r863 | jcbowman | 2005-07-18 03:20:33 +0200 (Mon, 18 Jul 2005) | 7 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/math.asy @@ -34706,7 +35108,7 @@ Changed Angle(pair) to degrees(pair). Added Degrees(pair). ------------------------------------------------------------------------ -r862 | jcbowman | 2005-07-17 15:36:54 -0600 (Sun, 17 Jul 2005) | 3 lines +r862 | jcbowman | 2005-07-17 23:36:54 +0200 (Sun, 17 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/castop.h @@ -34714,7 +35116,7 @@ Allow reading three-dimensional arrays in line mode by recognizing blank lines as block delimiters. ------------------------------------------------------------------------ -r861 | jcbowman | 2005-07-17 00:56:24 -0600 (Sun, 17 Jul 2005) | 2 lines +r861 | jcbowman | 2005-07-17 08:56:24 +0200 (Sun, 17 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -34724,7 +35126,7 @@ Changed paths: Added pticklabel option for drawing tick labels with a different pen. ------------------------------------------------------------------------ -r860 | jcbowman | 2005-07-17 00:02:10 -0600 (Sun, 17 Jul 2005) | 5 lines +r860 | jcbowman | 2005-07-17 08:02:10 +0200 (Sun, 17 Jul 2005) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -34740,7 +35142,7 @@ Added labelxtick and labelytick. Fixed tick size and shift in xtick. Updated documentation; added examples. ------------------------------------------------------------------------ -r859 | jcbowman | 2005-07-16 19:25:01 -0600 (Sat, 16 Jul 2005) | 2 lines +r859 | jcbowman | 2005-07-17 03:25:01 +0200 (Sun, 17 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -34749,7 +35151,7 @@ Changed paths: Fixed problems with autoscaling and unextended axes. ------------------------------------------------------------------------ -r858 | jcbowman | 2005-07-16 16:11:52 -0600 (Sat, 16 Jul 2005) | 4 lines +r858 | jcbowman | 2005-07-17 00:11:52 +0200 (Sun, 17 Jul 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -34762,7 +35164,7 @@ For clarity, renamed xline and yline routines to xequals and yequals. Added initializers. ------------------------------------------------------------------------ -r857 | jcbowman | 2005-07-16 15:27:57 -0600 (Sat, 16 Jul 2005) | 3 lines +r857 | jcbowman | 2005-07-16 23:27:57 +0200 (Sat, 16 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/settings.cc @@ -34770,7 +35172,7 @@ Disabled -laat while line-at-a-time mode is under construction (due to known segmentation fault). ------------------------------------------------------------------------ -r856 | jcbowman | 2005-07-16 15:25:11 -0600 (Sat, 16 Jul 2005) | 4 lines +r856 | jcbowman | 2005-07-16 23:25:11 +0200 (Sat, 16 Jul 2005) | 4 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy M /trunk/asymptote/base/graph.asy @@ -34788,7 +35190,7 @@ Added and documented remaining triple functions. Renamed Dot to dot and Cross to cross. ------------------------------------------------------------------------ -r855 | jcbowman | 2005-07-15 23:24:33 -0600 (Fri, 15 Jul 2005) | 14 lines +r855 | jcbowman | 2005-07-16 07:24:33 +0200 (Sat, 16 Jul 2005) | 14 lines Changed paths: M /trunk/asymptote/base/graph3d.asy M /trunk/asymptote/base/plain.asy @@ -34821,21 +35223,21 @@ Added surface example to documentation; updated cube example. Updated documentation; fixed cxx warning messages. ------------------------------------------------------------------------ -r854 | hammera | 2005-07-15 18:08:15 -0600 (Fri, 15 Jul 2005) | 2 lines +r854 | hammera | 2005-07-16 02:08:15 +0200 (Sat, 16 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/flatguide.h Fixed crash caused by fixing previous crash. ------------------------------------------------------------------------ -r853 | hammera | 2005-07-14 23:55:20 -0600 (Thu, 14 Jul 2005) | 2 lines +r853 | hammera | 2005-07-15 07:55:20 +0200 (Fri, 15 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc Handle tensions in straight sections of paths as MetaPost does. ------------------------------------------------------------------------ -r852 | hammera | 2005-07-14 23:36:10 -0600 (Thu, 14 Jul 2005) | 2 lines +r852 | hammera | 2005-07-15 07:36:10 +0200 (Fri, 15 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/flatguide.h M /trunk/asymptote/knot.cc @@ -34843,7 +35245,7 @@ Changed paths: Fixed controls versus direction specifiers crash. ------------------------------------------------------------------------ -r851 | jcbowman | 2005-07-13 23:49:56 -0600 (Wed, 13 Jul 2005) | 11 lines +r851 | jcbowman | 2005-07-14 07:49:56 +0200 (Thu, 14 Jul 2005) | 11 lines Changed paths: M /trunk/asymptote/array.h M /trunk/asymptote/base/math.asy @@ -34868,49 +35270,49 @@ Added 3d direction specifiers, pending 3d conversion to control points... Added triple write and interp functions to plain.asy. ------------------------------------------------------------------------ -r850 | jcbowman | 2005-07-13 12:43:04 -0600 (Wed, 13 Jul 2005) | 2 lines +r850 | jcbowman | 2005-07-13 20:43:04 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc Formatting. ------------------------------------------------------------------------ -r849 | jcbowman | 2005-07-13 10:22:40 -0600 (Wed, 13 Jul 2005) | 2 lines +r849 | jcbowman | 2005-07-13 18:22:40 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Cleaned up controls. ------------------------------------------------------------------------ -r848 | jcbowman | 2005-07-13 02:25:08 -0600 (Wed, 13 Jul 2005) | 2 lines +r848 | jcbowman | 2005-07-13 10:25:08 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Renamed cycle3 to cycle. ------------------------------------------------------------------------ -r847 | jcbowman | 2005-07-13 02:18:10 -0600 (Wed, 13 Jul 2005) | 2 lines +r847 | jcbowman | 2005-07-13 10:18:10 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Renamed controls3 to controls. ------------------------------------------------------------------------ -r846 | jcbowman | 2005-07-13 01:45:11 -0600 (Wed, 13 Jul 2005) | 2 lines +r846 | jcbowman | 2005-07-13 09:45:11 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Added controls3. ------------------------------------------------------------------------ -r845 | jcbowman | 2005-07-12 22:42:28 -0600 (Tue, 12 Jul 2005) | 2 lines +r845 | jcbowman | 2005-07-13 06:42:28 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc Compute knot solving constants. ------------------------------------------------------------------------ -r844 | jcbowman | 2005-07-12 22:41:55 -0600 (Tue, 12 Jul 2005) | 2 lines +r844 | jcbowman | 2005-07-13 06:41:55 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -34918,7 +35320,7 @@ Changed paths: Fixed write(guide). ------------------------------------------------------------------------ -r843 | jcbowman | 2005-07-12 17:54:48 -0600 (Tue, 12 Jul 2005) | 2 lines +r843 | jcbowman | 2005-07-13 01:54:48 +0200 (Wed, 13 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -34926,7 +35328,7 @@ Changed paths: Allow operator ::. ------------------------------------------------------------------------ -r842 | jcbowman | 2005-07-12 14:51:53 -0600 (Tue, 12 Jul 2005) | 2 lines +r842 | jcbowman | 2005-07-12 22:51:53 +0200 (Tue, 12 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/interact.cc @@ -34934,21 +35336,21 @@ Changed paths: Added explicit check for readline remove_history. ------------------------------------------------------------------------ -r841 | jcbowman | 2005-07-12 14:29:30 -0600 (Tue, 12 Jul 2005) | 2 lines +r841 | jcbowman | 2005-07-12 22:29:30 +0200 (Tue, 12 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Readded installation hint about ancient readline versions. ------------------------------------------------------------------------ -r840 | jcbowman | 2005-07-12 01:33:20 -0600 (Tue, 12 Jul 2005) | 2 lines +r840 | jcbowman | 2005-07-12 09:33:20 +0200 (Tue, 12 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Fixed lookAtOrigin. ------------------------------------------------------------------------ -r839 | jcbowman | 2005-07-11 23:40:32 -0600 (Mon, 11 Jul 2005) | 5 lines +r839 | jcbowman | 2005-07-12 07:40:32 +0200 (Tue, 12 Jul 2005) | 5 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/base/three.asy @@ -34963,7 +35365,7 @@ Updates to triple and three.asy. Removed unused code. ------------------------------------------------------------------------ -r838 | jcbowman | 2005-07-11 17:51:26 -0600 (Mon, 11 Jul 2005) | 2 lines +r838 | jcbowman | 2005-07-12 01:51:26 +0200 (Tue, 12 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy M /trunk/asymptote/base/graph3d.asy @@ -34981,7 +35383,7 @@ Changed paths: Replaced vector by triple. ------------------------------------------------------------------------ -r837 | jcbowman | 2005-07-11 13:40:51 -0600 (Mon, 11 Jul 2005) | 2 lines +r837 | jcbowman | 2005-07-11 21:40:51 +0200 (Mon, 11 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy M /trunk/asymptote/exp.cc @@ -34989,7 +35391,7 @@ Changed paths: Fixed casting error message. ------------------------------------------------------------------------ -r836 | jcbowman | 2005-07-11 09:03:05 -0600 (Mon, 11 Jul 2005) | 2 lines +r836 | jcbowman | 2005-07-11 17:03:05 +0200 (Mon, 11 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/angle.h M /trunk/asymptote/base/stats.asy @@ -35009,21 +35411,21 @@ Changed paths: Added triple type. ------------------------------------------------------------------------ -r835 | hammera | 2005-07-08 18:07:10 -0600 (Fri, 08 Jul 2005) | 2 lines +r835 | hammera | 2005-07-09 02:07:10 +0200 (Sat, 09 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/three.asy Graphing tests. ------------------------------------------------------------------------ -r834 | hammera | 2005-07-08 16:19:37 -0600 (Fri, 08 Jul 2005) | 2 lines +r834 | hammera | 2005-07-09 00:19:37 +0200 (Sat, 09 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Moved laat diagnostic. ------------------------------------------------------------------------ -r833 | hammera | 2005-07-08 12:23:29 -0600 (Fri, 08 Jul 2005) | 2 lines +r833 | hammera | 2005-07-08 20:23:29 +0200 (Fri, 08 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -35041,21 +35443,21 @@ Changed paths: Proof-of-concept code for true line-at-a-time mode. ------------------------------------------------------------------------ -r832 | jcbowman | 2005-07-07 16:32:43 -0600 (Thu, 07 Jul 2005) | 2 lines +r832 | jcbowman | 2005-07-08 00:32:43 +0200 (Fri, 08 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Removed path to pair[] ecast. ------------------------------------------------------------------------ -r831 | jcbowman | 2005-07-07 14:51:54 -0600 (Thu, 07 Jul 2005) | 2 lines +r831 | jcbowman | 2005-07-07 22:51:54 +0200 (Thu, 07 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/dragon.asy Updated example. ------------------------------------------------------------------------ -r830 | jcbowman | 2005-07-07 14:51:10 -0600 (Thu, 07 Jul 2005) | 3 lines +r830 | jcbowman | 2005-07-07 22:51:10 +0200 (Thu, 07 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/three.asy @@ -35065,21 +35467,21 @@ Removed explicit pair[] to guide casts in favour of operator --(...) and operator ..(...). ------------------------------------------------------------------------ -r829 | jcbowman | 2005-07-07 10:40:14 -0600 (Thu, 07 Jul 2005) | 2 lines +r829 | jcbowman | 2005-07-07 18:40:14 +0200 (Thu, 07 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed default CFLAGS. ------------------------------------------------------------------------ -r828 | jcbowman | 2005-07-07 09:42:18 -0600 (Thu, 07 Jul 2005) | 2 lines +r828 | jcbowman | 2005-07-07 17:42:18 +0200 (Thu, 07 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed CFLAGS. ------------------------------------------------------------------------ -r827 | jcbowman | 2005-07-07 01:42:09 -0600 (Thu, 07 Jul 2005) | 2 lines +r827 | jcbowman | 2005-07-07 09:42:09 +0200 (Thu, 07 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -35087,14 +35489,14 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r826 | jcbowman | 2005-07-07 01:37:36 -0600 (Thu, 07 Jul 2005) | 2 lines +r826 | jcbowman | 2005-07-07 09:37:36 +0200 (Thu, 07 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed error in CFLAGS. ------------------------------------------------------------------------ -r825 | jcbowman | 2005-07-06 20:21:56 -0600 (Wed, 06 Jul 2005) | 10 lines +r825 | jcbowman | 2005-07-07 04:21:56 +0200 (Thu, 07 Jul 2005) | 10 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -35114,7 +35516,7 @@ Renamed LinearInterp to Straight, to correspond to straight(path). Updated nullpath documentation to correspond to new solver. ------------------------------------------------------------------------ -r824 | jcbowman | 2005-07-06 14:50:50 -0600 (Wed, 06 Jul 2005) | 3 lines +r824 | jcbowman | 2005-07-06 22:50:50 +0200 (Wed, 06 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/settings.cc @@ -35122,21 +35524,21 @@ Removed -version command-line option to avoid ambiguity with -verbose (so that -vv, -vvv etc. will still work). ------------------------------------------------------------------------ -r823 | hammera | 2005-07-06 09:11:39 -0600 (Wed, 06 Jul 2005) | 2 lines +r823 | hammera | 2005-07-06 17:11:39 +0200 (Wed, 06 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.h Change NOHASH to use #ifdef. ------------------------------------------------------------------------ -r822 | hammera | 2005-07-05 21:26:42 -0600 (Tue, 05 Jul 2005) | 2 lines +r822 | hammera | 2005-07-06 05:26:42 +0200 (Wed, 06 Jul 2005) | 2 lines Changed paths: A /trunk/asymptote/base/three.asy Three dimensional drawing routines (in development). ------------------------------------------------------------------------ -r821 | hammera | 2005-07-05 14:25:56 -0600 (Tue, 05 Jul 2005) | 3 lines +r821 | hammera | 2005-07-05 22:25:56 +0200 (Tue, 05 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/exp.cc @@ -35150,7 +35552,7 @@ Join operators now use rest arguments. Fixed a bug in solving empty guides. ------------------------------------------------------------------------ -r820 | hammera | 2005-07-05 14:24:33 -0600 (Tue, 05 Jul 2005) | 2 lines +r820 | hammera | 2005-07-05 22:24:33 +0200 (Tue, 05 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/dec.h @@ -35160,14 +35562,14 @@ Changed paths: Combined duplicate code for function defitions. ------------------------------------------------------------------------ -r819 | jcbowman | 2005-07-04 16:36:50 -0600 (Mon, 04 Jul 2005) | 2 lines +r819 | jcbowman | 2005-07-05 00:36:50 +0200 (Tue, 05 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor documentation updates. ------------------------------------------------------------------------ -r818 | hammera | 2005-07-04 11:46:43 -0600 (Mon, 04 Jul 2005) | 2 lines +r818 | hammera | 2005-07-04 19:46:43 +0200 (Mon, 04 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.cc M /trunk/asymptote/entry.h @@ -35177,7 +35579,7 @@ Changed paths: Added back venv::list(). ------------------------------------------------------------------------ -r817 | jcbowman | 2005-07-03 10:16:43 -0600 (Sun, 03 Jul 2005) | 2 lines +r817 | jcbowman | 2005-07-03 18:16:43 +0200 (Sun, 03 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -35186,21 +35588,21 @@ Changed paths: Added -version command line option. ------------------------------------------------------------------------ -r816 | jcbowman | 2005-07-03 00:12:58 -0600 (Sun, 03 Jul 2005) | 2 lines +r816 | jcbowman | 2005-07-03 08:12:58 +0200 (Sun, 03 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.83cvs. ------------------------------------------------------------------------ -r815 | jcbowman | 2005-07-02 23:02:03 -0600 (Sat, 02 Jul 2005) | 2 lines +r815 | jcbowman | 2005-07-03 07:02:03 +0200 (Sun, 03 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 Updated man page. ------------------------------------------------------------------------ -r814 | jcbowman | 2005-07-02 22:51:28 -0600 (Sat, 02 Jul 2005) | 2 lines +r814 | jcbowman | 2005-07-03 06:51:28 +0200 (Sun, 03 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/frame.h M /trunk/asymptote/inst.h @@ -35210,7 +35612,7 @@ Changed paths: Fixed cxx warning messages. ------------------------------------------------------------------------ -r813 | jcbowman | 2005-07-02 22:16:17 -0600 (Sat, 02 Jul 2005) | 3 lines +r813 | jcbowman | 2005-07-03 06:16:17 +0200 (Sun, 03 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/exp.cc @@ -35221,7 +35623,7 @@ Added -d command-line option to produce extra debugging messages (currently only "named argument may be mistaken for assignment" warning). ------------------------------------------------------------------------ -r812 | jcbowman | 2005-07-02 21:39:27 -0600 (Sat, 02 Jul 2005) | 5 lines +r812 | jcbowman | 2005-07-03 05:39:27 +0200 (Sun, 03 Jul 2005) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -35241,7 +35643,7 @@ Added arrow option to axes routines. Renamed xlabel and ylabel back to labelx and labely, respectively. ------------------------------------------------------------------------ -r811 | jcbowman | 2005-07-02 16:07:35 -0600 (Sat, 02 Jul 2005) | 2 lines +r811 | jcbowman | 2005-07-03 00:07:35 +0200 (Sun, 03 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/access.h M /trunk/asymptote/frame.h @@ -35252,7 +35654,7 @@ Changed paths: Revert last changes. ------------------------------------------------------------------------ -r810 | jcbowman | 2005-07-02 15:46:09 -0600 (Sat, 02 Jul 2005) | 2 lines +r810 | jcbowman | 2005-07-02 23:46:09 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/access.h M /trunk/asymptote/configure.ac @@ -35264,7 +35666,7 @@ Changed paths: Fixed more cxx warning messages. ------------------------------------------------------------------------ -r809 | jcbowman | 2005-07-02 14:23:42 -0600 (Sat, 02 Jul 2005) | 5 lines +r809 | jcbowman | 2005-07-02 22:23:42 +0200 (Sat, 02 Jul 2005) | 5 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -35277,7 +35679,7 @@ Added configure option to detect ext/hash_map and set -DNOHASH accordingly. Fixed cxx warning messages. ------------------------------------------------------------------------ -r808 | jcbowman | 2005-07-02 12:11:44 -0600 (Sat, 02 Jul 2005) | 3 lines +r808 | jcbowman | 2005-07-02 20:11:44 +0200 (Sat, 02 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -35295,7 +35697,7 @@ Standardized xtick and ytick routines. Renamed labelx to xlabel and labely to ylabel. ------------------------------------------------------------------------ -r807 | hammera | 2005-07-02 11:45:31 -0600 (Sat, 02 Jul 2005) | 2 lines +r807 | hammera | 2005-07-02 19:45:31 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.cc M /trunk/asymptote/entry.h @@ -35308,7 +35710,7 @@ Changed paths: Added NOHASH option to compile on non-gcc compilers. ------------------------------------------------------------------------ -r806 | hammera | 2005-07-02 09:55:32 -0600 (Sat, 02 Jul 2005) | 2 lines +r806 | hammera | 2005-07-02 17:55:32 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: A /trunk/asymptote/varinit.cc A /trunk/asymptote/varinit.h @@ -35316,7 +35718,7 @@ Changed paths: Excised from exp.h so that dec.h includes less. ------------------------------------------------------------------------ -r805 | hammera | 2005-07-02 09:49:23 -0600 (Sat, 02 Jul 2005) | 2 lines +r805 | hammera | 2005-07-02 17:49:23 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/camp.l @@ -35330,7 +35732,7 @@ Changed paths: Allow dimensions for types in cast expression. ------------------------------------------------------------------------ -r804 | jcbowman | 2005-07-02 03:24:05 -0600 (Sat, 02 Jul 2005) | 2 lines +r804 | jcbowman | 2005-07-02 11:24:05 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -35340,21 +35742,21 @@ Changed paths: Added ability to specify custom tick locations. ------------------------------------------------------------------------ -r803 | jcbowman | 2005-07-01 22:58:28 -0600 (Fri, 01 Jul 2005) | 2 lines +r803 | jcbowman | 2005-07-02 06:58:28 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fix warning messages when XDR is disabled. ------------------------------------------------------------------------ -r802 | jcbowman | 2005-07-01 22:57:53 -0600 (Fri, 01 Jul 2005) | 2 lines +r802 | jcbowman | 2005-07-02 06:57:53 +0200 (Sat, 02 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Added more default initializers. ------------------------------------------------------------------------ -r801 | jcbowman | 2005-07-01 18:30:30 -0600 (Fri, 01 Jul 2005) | 3 lines +r801 | jcbowman | 2005-07-02 02:30:30 +0200 (Sat, 02 Jul 2005) | 3 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/camp.y @@ -35364,7 +35766,7 @@ Allow explicit casts to any name. Documented general implicit and explicit casts. ------------------------------------------------------------------------ -r800 | jcbowman | 2005-06-30 22:57:13 -0600 (Thu, 30 Jun 2005) | 2 lines +r800 | jcbowman | 2005-07-01 06:57:13 +0200 (Fri, 01 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/doc/asymptote.texi @@ -35372,7 +35774,7 @@ Changed paths: Documented named function arguments and rest parameters. ------------------------------------------------------------------------ -r799 | jcbowman | 2005-06-30 20:34:33 -0600 (Thu, 30 Jun 2005) | 2 lines +r799 | jcbowman | 2005-07-01 04:34:33 +0200 (Fri, 01 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/application.cc M /trunk/asymptote/application.h @@ -35384,7 +35786,7 @@ Changed paths: Fixed warning messages; updated bison patch to bison-2.0a. ------------------------------------------------------------------------ -r798 | jcbowman | 2005-06-30 16:45:32 -0600 (Thu, 30 Jun 2005) | 2 lines +r798 | jcbowman | 2005-07-01 00:45:32 +0200 (Fri, 01 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/env.h M /trunk/asymptote/types.h @@ -35392,7 +35794,7 @@ Changed paths: Fixed more warning messages. ------------------------------------------------------------------------ -r797 | jcbowman | 2005-06-30 16:42:23 -0600 (Thu, 30 Jun 2005) | 2 lines +r797 | jcbowman | 2005-07-01 00:42:23 +0200 (Fri, 01 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.h M /trunk/asymptote/memory.h @@ -35401,14 +35803,14 @@ Changed paths: Fixed cxx errors and warnings. ------------------------------------------------------------------------ -r796 | jcbowman | 2005-06-30 16:38:14 -0600 (Thu, 30 Jun 2005) | 2 lines +r796 | jcbowman | 2005-07-01 00:38:14 +0200 (Fri, 01 Jul 2005) | 2 lines Changed paths: M /trunk/asymptote/util.cc Replaced strdup by strcpy. ------------------------------------------------------------------------ -r795 | jcbowman | 2005-06-30 12:41:57 -0600 (Thu, 30 Jun 2005) | 2 lines +r795 | jcbowman | 2005-06-30 20:41:57 +0200 (Thu, 30 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -35422,7 +35824,7 @@ Changed paths: Renamed nullframe to newframe. ------------------------------------------------------------------------ -r794 | jcbowman | 2005-06-29 21:04:53 -0600 (Wed, 29 Jun 2005) | 2 lines +r794 | jcbowman | 2005-06-30 05:04:53 +0200 (Thu, 30 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.h M /trunk/asymptote/main.cc @@ -35430,14 +35832,14 @@ Changed paths: Fixed memory leak and segmentation fault in fileio garbage collection. ------------------------------------------------------------------------ -r793 | jcbowman | 2005-06-29 20:58:11 -0600 (Wed, 29 Jun 2005) | 2 lines +r793 | jcbowman | 2005-06-30 04:58:11 +0200 (Thu, 30 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Renamed write function keywords. ------------------------------------------------------------------------ -r792 | jcbowman | 2005-06-29 10:15:51 -0600 (Wed, 29 Jun 2005) | 2 lines +r792 | jcbowman | 2005-06-29 18:15:51 +0200 (Wed, 29 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/graph.asy @@ -35453,7 +35855,7 @@ Changed paths: Extend use of operator init(). ------------------------------------------------------------------------ -r791 | jcbowman | 2005-06-29 09:59:15 -0600 (Wed, 29 Jun 2005) | 4 lines +r791 | jcbowman | 2005-06-29 17:59:15 +0200 (Wed, 29 Jun 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -35476,14 +35878,14 @@ Added default initializer to picture; removed "=new picture" from examples. Documented operator init(). ------------------------------------------------------------------------ -r790 | jcbowman | 2005-06-29 09:11:58 -0600 (Wed, 29 Jun 2005) | 2 lines +r790 | jcbowman | 2005-06-29 17:11:58 +0200 (Wed, 29 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Removed ticksT tag. ------------------------------------------------------------------------ -r789 | jcbowman | 2005-06-29 00:38:20 -0600 (Wed, 29 Jun 2005) | 2 lines +r789 | jcbowman | 2005-06-29 08:38:20 +0200 (Wed, 29 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/locate.cc M /trunk/asymptote/locate.h @@ -35492,21 +35894,21 @@ Changed paths: Fixed memory leak in locateFile. ------------------------------------------------------------------------ -r788 | jcbowman | 2005-06-28 16:16:00 -0600 (Tue, 28 Jun 2005) | 2 lines +r788 | jcbowman | 2005-06-29 00:16:00 +0200 (Wed, 29 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/xstream.h Removed unnecessary semicolons. ------------------------------------------------------------------------ -r787 | jcbowman | 2005-06-28 15:56:58 -0600 (Tue, 28 Jun 2005) | 2 lines +r787 | jcbowman | 2005-06-28 23:56:58 +0200 (Tue, 28 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/application.h Added virtual destructor. ------------------------------------------------------------------------ -r786 | jcbowman | 2005-06-28 15:53:29 -0600 (Tue, 28 Jun 2005) | 2 lines +r786 | jcbowman | 2005-06-28 23:53:29 +0200 (Tue, 28 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/callable.h M /trunk/asymptote/fileio.h @@ -35519,7 +35921,7 @@ Changed paths: Added virtual destructors. ------------------------------------------------------------------------ -r785 | jcbowman | 2005-06-28 14:49:30 -0600 (Tue, 28 Jun 2005) | 2 lines +r785 | jcbowman | 2005-06-28 22:49:30 +0200 (Tue, 28 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -35532,21 +35934,21 @@ Changed paths: Remove xsize, ysize, and keepAspect from shipout, in favour of size(). ------------------------------------------------------------------------ -r784 | jcbowman | 2005-06-28 13:58:03 -0600 (Tue, 28 Jun 2005) | 2 lines +r784 | jcbowman | 2005-06-28 21:58:03 +0200 (Tue, 28 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Added -lgccpp also with --enable-gc=system. ------------------------------------------------------------------------ -r783 | hammera | 2005-06-28 10:12:57 -0600 (Tue, 28 Jun 2005) | 2 lines +r783 | hammera | 2005-06-28 18:12:57 +0200 (Tue, 28 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Put reverse functions back in. ------------------------------------------------------------------------ -r782 | hammera | 2005-06-28 10:01:21 -0600 (Tue, 28 Jun 2005) | 10 lines +r782 | hammera | 2005-06-28 18:01:21 +0200 (Tue, 28 Jun 2005) | 10 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/TODO @@ -35600,28 +36002,28 @@ Results of type overhaul: - added formal class to types ------------------------------------------------------------------------ -r781 | jcbowman | 2005-06-26 16:51:59 -0600 (Sun, 26 Jun 2005) | 2 lines +r781 | jcbowman | 2005-06-27 00:51:59 +0200 (Mon, 27 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/util.cc Work around spurious uninitialized warning message under gcc 3.3.3. ------------------------------------------------------------------------ -r780 | jcbowman | 2005-06-26 10:51:17 -0600 (Sun, 26 Jun 2005) | 2 lines +r780 | jcbowman | 2005-06-26 18:51:17 +0200 (Sun, 26 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/util.cc Code cleanup. ------------------------------------------------------------------------ -r779 | jcbowman | 2005-06-26 08:43:12 -0600 (Sun, 26 Jun 2005) | 2 lines +r779 | jcbowman | 2005-06-26 16:43:12 +0200 (Sun, 26 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/util.cc Allow use of single quotes to prevent system command word splitting on spaces. ------------------------------------------------------------------------ -r778 | jcbowman | 2005-06-25 15:49:08 -0600 (Sat, 25 Jun 2005) | 6 lines +r778 | jcbowman | 2005-06-25 23:49:08 +0200 (Sat, 25 Jun 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -35636,14 +36038,14 @@ g++-4.00 under optimization. Removed unused routine and declarations. ------------------------------------------------------------------------ -r777 | jcbowman | 2005-06-25 14:11:19 -0600 (Sat, 25 Jun 2005) | 2 lines +r777 | jcbowman | 2005-06-25 22:11:19 +0200 (Sat, 25 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/table.h Removed unused virtual destructor. ------------------------------------------------------------------------ -r776 | jcbowman | 2005-06-25 12:33:59 -0600 (Sat, 25 Jun 2005) | 2 lines +r776 | jcbowman | 2005-06-25 20:33:59 +0200 (Sat, 25 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/graph.asy @@ -35655,35 +36057,35 @@ Changed paths: Simplified tag handling. ------------------------------------------------------------------------ -r774 | jcbowman | 2005-06-25 00:14:38 -0600 (Sat, 25 Jun 2005) | 2 lines +r774 | jcbowman | 2005-06-25 08:14:38 +0200 (Sat, 25 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Replace OverwriteT with integer variables. ------------------------------------------------------------------------ -r773 | jcbowman | 2005-06-24 18:58:34 -0600 (Fri, 24 Jun 2005) | 2 lines +r773 | jcbowman | 2005-06-25 02:58:34 +0200 (Sat, 25 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Simplified coding of endl and tab qualifiers. ------------------------------------------------------------------------ -r771 | jcbowman | 2005-06-23 16:34:34 -0600 (Thu, 23 Jun 2005) | 2 lines +r771 | jcbowman | 2005-06-24 00:34:34 +0200 (Fri, 24 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.82cvs. ------------------------------------------------------------------------ -r770 | jcbowman | 2005-06-23 16:08:48 -0600 (Thu, 23 Jun 2005) | 2 lines +r770 | jcbowman | 2005-06-24 00:08:48 +0200 (Fri, 24 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed indentation. ------------------------------------------------------------------------ -r769 | jcbowman | 2005-06-23 15:55:47 -0600 (Thu, 23 Jun 2005) | 2 lines +r769 | jcbowman | 2005-06-23 23:55:47 +0200 (Thu, 23 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/guide.h @@ -35695,28 +36097,28 @@ Changed paths: Fixed g++-4.0.0 warning messages. ------------------------------------------------------------------------ -r768 | jcbowman | 2005-06-23 15:54:46 -0600 (Thu, 23 Jun 2005) | 2 lines +r768 | jcbowman | 2005-06-23 23:54:46 +0200 (Thu, 23 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/table.h Fixed cxx compilation error. ------------------------------------------------------------------------ -r767 | rtprince | 2005-06-23 00:45:25 -0600 (Thu, 23 Jun 2005) | 2 lines +r767 | rtprince | 2005-06-23 08:45:25 +0200 (Thu, 23 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.h Cleanup headers. ------------------------------------------------------------------------ -r766 | rtprince | 2005-06-22 23:53:11 -0600 (Wed, 22 Jun 2005) | 2 lines +r766 | rtprince | 2005-06-23 07:53:11 +0200 (Thu, 23 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Maybe fix GC on darwin. ------------------------------------------------------------------------ -r765 | jcbowman | 2005-06-22 10:54:03 -0600 (Wed, 22 Jun 2005) | 4 lines +r765 | jcbowman | 2005-06-22 18:54:03 +0200 (Wed, 22 Jun 2005) | 4 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/plain.asy @@ -35727,21 +36129,21 @@ Replaced writeP in favour of write; added writen entry points for pen, guide, and transform. ------------------------------------------------------------------------ -r764 | hammera | 2005-06-22 10:16:11 -0600 (Wed, 22 Jun 2005) | 2 lines +r764 | hammera | 2005-06-22 18:16:11 +0200 (Wed, 22 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc Fixed solving bug. ------------------------------------------------------------------------ -r763 | jcbowman | 2005-06-21 22:27:52 -0600 (Tue, 21 Jun 2005) | 2 lines +r763 | jcbowman | 2005-06-22 06:27:52 +0200 (Wed, 22 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Allow graphs with just one data point. ------------------------------------------------------------------------ -r762 | jcbowman | 2005-06-20 17:03:14 -0600 (Mon, 20 Jun 2005) | 2 lines +r762 | jcbowman | 2005-06-21 01:03:14 +0200 (Tue, 21 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/examples/eetomumu.asy @@ -35749,7 +36151,7 @@ Changed paths: Feynman updates. ------------------------------------------------------------------------ -r761 | rtprince | 2005-06-19 23:18:55 -0600 (Sun, 19 Jun 2005) | 2 lines +r761 | rtprince | 2005-06-20 07:18:55 +0200 (Mon, 20 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/access.cc @@ -35784,21 +36186,21 @@ Changed paths: Split up inst.h. ------------------------------------------------------------------------ -r760 | rtprince | 2005-06-19 17:53:14 -0600 (Sun, 19 Jun 2005) | 2 lines +r760 | rtprince | 2005-06-20 01:53:14 +0200 (Mon, 20 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/table.h gcc4 is more const. ------------------------------------------------------------------------ -r759 | jcbowman | 2005-06-19 14:16:22 -0600 (Sun, 19 Jun 2005) | 2 lines +r759 | jcbowman | 2005-06-19 22:16:22 +0200 (Sun, 19 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.81cvs. ------------------------------------------------------------------------ -r758 | jcbowman | 2005-06-19 12:08:27 -0600 (Sun, 19 Jun 2005) | 2 lines +r758 | jcbowman | 2005-06-19 20:08:27 +0200 (Sun, 19 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/INSTALL M /trunk/asymptote/configure.ac @@ -35807,14 +36209,14 @@ Changed paths: Upgrade to use Boehm gc6.5 garbage collector. ------------------------------------------------------------------------ -r757 | jcbowman | 2005-06-19 11:43:34 -0600 (Sun, 19 Jun 2005) | 2 lines +r757 | jcbowman | 2005-06-19 19:43:34 +0200 (Sun, 19 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/pool.h Tom's patch to pool segmentation fault. ------------------------------------------------------------------------ -r756 | rtprince | 2005-06-18 10:44:58 -0600 (Sat, 18 Jun 2005) | 2 lines +r756 | rtprince | 2005-06-18 18:44:58 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/inst.h @@ -35822,21 +36224,21 @@ Changed paths: Remove obsolete maxStackSize. ------------------------------------------------------------------------ -r755 | jcbowman | 2005-06-18 10:27:49 -0600 (Sat, 18 Jun 2005) | 2 lines +r755 | jcbowman | 2005-06-18 18:27:49 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Deep copy all members of picture. ------------------------------------------------------------------------ -r754 | jcbowman | 2005-06-18 09:59:39 -0600 (Sat, 18 Jun 2005) | 2 lines +r754 | jcbowman | 2005-06-18 17:59:39 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: A /trunk/asymptote/INSTALL Quick installation instructions. ------------------------------------------------------------------------ -r753 | rtprince | 2005-06-18 00:28:36 -0600 (Sat, 18 Jun 2005) | 2 lines +r753 | rtprince | 2005-06-18 08:28:36 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/tests/arith @@ -35847,28 +36249,28 @@ Changed paths: Tests. ------------------------------------------------------------------------ -r752 | jcbowman | 2005-06-17 23:35:20 -0600 (Fri, 17 Jun 2005) | 2 lines +r752 | jcbowman | 2005-06-18 07:35:20 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.80cvs. ------------------------------------------------------------------------ -r751 | jcbowman | 2005-06-17 22:49:15 -0600 (Fri, 17 Jun 2005) | 2 lines +r751 | jcbowman | 2005-06-18 06:49:15 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Removed unused features. ------------------------------------------------------------------------ -r750 | jcbowman | 2005-06-17 22:32:31 -0600 (Fri, 17 Jun 2005) | 2 lines +r750 | jcbowman | 2005-06-18 06:32:31 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Fixed cxx warning messages. ------------------------------------------------------------------------ -r749 | jcbowman | 2005-06-17 22:06:19 -0600 (Fri, 17 Jun 2005) | 3 lines +r749 | jcbowman | 2005-06-18 06:06:19 +0200 (Sat, 18 Jun 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -35880,7 +36282,7 @@ Check for empty picture in secondary axes routines; added another example of a secondary axis. ------------------------------------------------------------------------ -r748 | rtprince | 2005-06-17 21:27:16 -0600 (Fri, 17 Jun 2005) | 2 lines +r748 | rtprince | 2005-06-18 05:27:16 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/builtin.cc @@ -35902,7 +36304,7 @@ Changed paths: Automate testing. ------------------------------------------------------------------------ -r747 | rtprince | 2005-06-17 21:21:51 -0600 (Fri, 17 Jun 2005) | 2 lines +r747 | rtprince | 2005-06-18 05:21:51 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -35913,7 +36315,7 @@ Changed paths: Change vm::program to holds insts directly. ------------------------------------------------------------------------ -r746 | rtprince | 2005-06-17 21:20:48 -0600 (Fri, 17 Jun 2005) | 2 lines +r746 | rtprince | 2005-06-18 05:20:48 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/builtin.cc @@ -35924,7 +36326,7 @@ Changed paths: Compile genrun.cc seprately. ------------------------------------------------------------------------ -r745 | rtprince | 2005-06-17 21:19:51 -0600 (Fri, 17 Jun 2005) | 2 lines +r745 | rtprince | 2005-06-18 05:19:51 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc M /trunk/asymptote/main.cc @@ -35935,7 +36337,7 @@ Changed paths: Move vm interface to vm.h. ------------------------------------------------------------------------ -r744 | rtprince | 2005-06-17 18:48:32 -0600 (Fri, 17 Jun 2005) | 2 lines +r744 | rtprince | 2005-06-18 02:48:32 +0200 (Sat, 18 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/fileio.h @@ -35947,21 +36349,21 @@ Changed paths: Properly collect fileio. ------------------------------------------------------------------------ -r743 | rtprince | 2005-06-16 00:20:47 -0600 (Thu, 16 Jun 2005) | 2 lines +r743 | rtprince | 2005-06-16 08:20:47 +0200 (Thu, 16 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc item handles GC allocation. ------------------------------------------------------------------------ -r742 | jcbowman | 2005-06-16 00:12:16 -0600 (Thu, 16 Jun 2005) | 2 lines +r742 | jcbowman | 2005-06-16 08:12:16 +0200 (Thu, 16 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Readded 2005-05-26 fix for substr bug. ------------------------------------------------------------------------ -r741 | rtprince | 2005-06-15 23:47:13 -0600 (Wed, 15 Jun 2005) | 2 lines +r741 | rtprince | 2005-06-16 07:47:13 +0200 (Thu, 16 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/absyn.h M /trunk/asymptote/access.h @@ -35988,21 +36390,21 @@ Changed paths: Make evrything use GC (except fileio). ------------------------------------------------------------------------ -r740 | jcbowman | 2005-06-14 22:33:17 -0600 (Tue, 14 Jun 2005) | 2 lines +r740 | jcbowman | 2005-06-15 06:33:17 +0200 (Wed, 15 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Don't allow a picture to be added to itself. ------------------------------------------------------------------------ -r739 | jcbowman | 2005-06-14 20:30:06 -0600 (Tue, 14 Jun 2005) | 2 lines +r739 | jcbowman | 2005-06-15 04:30:06 +0200 (Wed, 15 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/castop.h Backported recent castop.h change to g++ 3.3.4. ------------------------------------------------------------------------ -r738 | hammera | 2005-06-14 15:23:42 -0600 (Tue, 14 Jun 2005) | 2 lines +r738 | hammera | 2005-06-14 23:23:42 +0200 (Tue, 14 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -36010,7 +36412,7 @@ Changed paths: Added getType caching. ------------------------------------------------------------------------ -r737 | jcbowman | 2005-06-13 10:28:09 -0600 (Mon, 13 Jun 2005) | 2 lines +r737 | jcbowman | 2005-06-13 18:28:09 +0200 (Mon, 13 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/memory.h @@ -36018,21 +36420,21 @@ Changed paths: Reverted gc/gc.h change back to gc.h. ------------------------------------------------------------------------ -r736 | rtprince | 2005-06-11 14:04:12 -0600 (Sat, 11 Jun 2005) | 2 lines +r736 | rtprince | 2005-06-11 22:04:12 +0200 (Sat, 11 Jun 2005) | 2 lines Changed paths: A /trunk/asymptote/tests/gc/pen.asy Test collecting pens. ------------------------------------------------------------------------ -r732 | jcbowman | 2005-06-04 13:51:44 -0600 (Sat, 04 Jun 2005) | 2 lines +r732 | jcbowman | 2005-06-04 21:51:44 +0200 (Sat, 04 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document type1cm. ------------------------------------------------------------------------ -r731 | jcbowman | 2005-05-31 23:33:39 -0600 (Tue, 31 May 2005) | 2 lines +r731 | jcbowman | 2005-06-01 07:33:39 +0200 (Wed, 01 Jun 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/stats.asy @@ -36041,21 +36443,21 @@ Changed paths: Fixed autoscaling of scaled axes, e.g. Linear(x) with x != 1. ------------------------------------------------------------------------ -r728 | jcbowman | 2005-05-29 10:06:31 -0600 (Sun, 29 May 2005) | 2 lines +r728 | jcbowman | 2005-05-29 18:06:31 +0200 (Sun, 29 May 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/PythagoreanTree.asy Added asymmetric Pythagorean tree example. ------------------------------------------------------------------------ -r727 | jcbowman | 2005-05-29 10:05:48 -0600 (Sun, 29 May 2005) | 2 lines +r727 | jcbowman | 2005-05-29 18:05:48 +0200 (Sun, 29 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Added aSin, aCos, aTan functions. ------------------------------------------------------------------------ -r726 | jcbowman | 2005-05-27 16:33:21 -0600 (Fri, 27 May 2005) | 2 lines +r726 | jcbowman | 2005-05-28 00:33:21 +0200 (Sat, 28 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/memory.h @@ -36063,7 +36465,7 @@ Changed paths: Changes for Debian port. ------------------------------------------------------------------------ -r725 | jcbowman | 2005-05-27 15:41:56 -0600 (Fri, 27 May 2005) | 2 lines +r725 | jcbowman | 2005-05-27 23:41:56 +0200 (Fri, 27 May 2005) | 2 lines Changed paths: M /trunk/asymptote/access.h M /trunk/asymptote/entry.h @@ -36075,14 +36477,14 @@ Changed paths: Fixed memory leaks. ------------------------------------------------------------------------ -r724 | jcbowman | 2005-05-27 02:16:14 -0600 (Fri, 27 May 2005) | 2 lines +r724 | jcbowman | 2005-05-27 10:16:14 +0200 (Fri, 27 May 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Fixed memory leak. ------------------------------------------------------------------------ -r723 | jcbowman | 2005-05-27 00:44:19 -0600 (Fri, 27 May 2005) | 2 lines +r723 | jcbowman | 2005-05-27 08:44:19 +0200 (Fri, 27 May 2005) | 2 lines Changed paths: M /trunk/asymptote/access.h M /trunk/asymptote/entry.h @@ -36094,7 +36496,7 @@ Changed paths: Added Tom's remaining garbage collection changes. ------------------------------------------------------------------------ -r722 | jcbowman | 2005-05-27 00:09:58 -0600 (Fri, 27 May 2005) | 2 lines +r722 | jcbowman | 2005-05-27 08:09:58 +0200 (Fri, 27 May 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.h M /trunk/asymptote/main.cc @@ -36102,7 +36504,7 @@ Changed paths: Garbage collect files on explicit closure and at exit. ------------------------------------------------------------------------ -r721 | jcbowman | 2005-05-26 09:55:30 -0600 (Thu, 26 May 2005) | 2 lines +r721 | jcbowman | 2005-05-26 17:55:30 +0200 (Thu, 26 May 2005) | 2 lines Changed paths: M /trunk/asymptote/item.h M /trunk/asymptote/runtime.cc @@ -36110,14 +36512,14 @@ Changed paths: Fixed substr bug. ------------------------------------------------------------------------ -r717 | hammera | 2005-05-20 10:48:54 -0600 (Fri, 20 May 2005) | 2 lines +r717 | hammera | 2005-05-20 18:48:54 +0200 (Fri, 20 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Changed wording in comments. Indenting. ------------------------------------------------------------------------ -r714 | rtprince | 2005-05-19 23:45:26 -0600 (Thu, 19 May 2005) | 4 lines +r714 | rtprince | 2005-05-20 07:45:26 +0200 (Fri, 20 May 2005) | 4 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/cast.cc @@ -36137,21 +36539,21 @@ Make encode(inst) private. item.h calls new(UseGC). ------------------------------------------------------------------------ -r713 | jcbowman | 2005-05-19 10:16:48 -0600 (Thu, 19 May 2005) | 2 lines +r713 | jcbowman | 2005-05-19 18:16:48 +0200 (Thu, 19 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.79cvs. ------------------------------------------------------------------------ -r712 | jcbowman | 2005-05-19 09:15:54 -0600 (Thu, 19 May 2005) | 2 lines +r712 | jcbowman | 2005-05-19 17:15:54 +0200 (Thu, 19 May 2005) | 2 lines Changed paths: M /trunk/asymptote/memory.h Disable GC_STRING for now. ------------------------------------------------------------------------ -r711 | jcbowman | 2005-05-18 23:27:15 -0600 (Wed, 18 May 2005) | 2 lines +r711 | jcbowman | 2005-05-19 07:27:15 +0200 (Thu, 19 May 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/util.h @@ -36159,7 +36561,7 @@ Changed paths: Port to cygwin. ------------------------------------------------------------------------ -r710 | jcbowman | 2005-05-18 14:34:42 -0600 (Wed, 18 May 2005) | 3 lines +r710 | jcbowman | 2005-05-18 22:34:42 +0200 (Wed, 18 May 2005) | 3 lines Changed paths: M /trunk/asymptote/fileio.h @@ -36167,7 +36569,7 @@ Move file back under control of memory::managed to ensure deconstructor is called. ------------------------------------------------------------------------ -r709 | rtprince | 2005-05-18 12:41:26 -0600 (Wed, 18 May 2005) | 2 lines +r709 | rtprince | 2005-05-18 20:41:26 +0200 (Wed, 18 May 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -36179,14 +36581,14 @@ Changed paths: Use item for everthing in inst. ------------------------------------------------------------------------ -r708 | rtprince | 2005-05-18 12:37:44 -0600 (Wed, 18 May 2005) | 2 lines +r708 | rtprince | 2005-05-18 20:37:44 +0200 (Wed, 18 May 2005) | 2 lines Changed paths: M /trunk/asymptote/memory.h Define mem::string. ------------------------------------------------------------------------ -r707 | rtprince | 2005-05-18 12:36:17 -0600 (Wed, 18 May 2005) | 2 lines +r707 | rtprince | 2005-05-18 20:36:17 +0200 (Wed, 18 May 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/genv.cc @@ -36195,14 +36597,14 @@ Changed paths: Use coder::encode everywhere. ------------------------------------------------------------------------ -r705 | rtprince | 2005-05-18 10:50:31 -0600 (Wed, 18 May 2005) | 2 lines +r705 | rtprince | 2005-05-18 18:50:31 +0200 (Wed, 18 May 2005) | 2 lines Changed paths: M /trunk/asymptote/memory.h Cleanup memory.h. ------------------------------------------------------------------------ -r703 | jcbowman | 2005-05-18 09:17:32 -0600 (Wed, 18 May 2005) | 2 lines +r703 | jcbowman | 2005-05-18 17:17:32 +0200 (Wed, 18 May 2005) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/util.cc @@ -36210,28 +36612,28 @@ Changed paths: Changed index to strchr for cygwin port. ------------------------------------------------------------------------ -r702 | jcbowman | 2005-05-18 09:17:09 -0600 (Wed, 18 May 2005) | 2 lines +r702 | jcbowman | 2005-05-18 17:17:09 +0200 (Wed, 18 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed LIB. ------------------------------------------------------------------------ -r699 | jcbowman | 2005-05-14 22:29:43 -0600 (Sat, 14 May 2005) | 2 lines +r699 | jcbowman | 2005-05-15 06:29:43 +0200 (Sun, 15 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Check headers earlier. ------------------------------------------------------------------------ -r698 | jcbowman | 2005-05-14 22:26:46 -0600 (Sat, 14 May 2005) | 2 lines +r698 | jcbowman | 2005-05-15 06:26:46 +0200 (Sun, 15 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Make --enable-gc=system also check for gc.h. ------------------------------------------------------------------------ -r697 | jcbowman | 2005-05-12 15:56:27 -0600 (Thu, 12 May 2005) | 2 lines +r697 | jcbowman | 2005-05-12 23:56:27 +0200 (Thu, 12 May 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/inst.h @@ -36239,7 +36641,7 @@ Changed paths: Workaround "GC Warning: Repeated allocation of very large block" messages. ------------------------------------------------------------------------ -r696 | jcbowman | 2005-05-12 15:54:42 -0600 (Thu, 12 May 2005) | 2 lines +r696 | jcbowman | 2005-05-12 23:54:42 +0200 (Thu, 12 May 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/mathop.h @@ -36247,14 +36649,14 @@ Changed paths: Fix NaN handling. ------------------------------------------------------------------------ -r695 | jcbowman | 2005-05-12 08:56:42 -0600 (Thu, 12 May 2005) | 2 lines +r695 | jcbowman | 2005-05-12 16:56:42 +0200 (Thu, 12 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Better checkaxis test. ------------------------------------------------------------------------ -r694 | jcbowman | 2005-05-11 22:07:40 -0600 (Wed, 11 May 2005) | 2 lines +r694 | jcbowman | 2005-05-12 06:07:40 +0200 (Thu, 12 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -36262,14 +36664,14 @@ Changed paths: Added --enable-gc=system configuration option to use system libgc and libgccp. ------------------------------------------------------------------------ -r693 | jcbowman | 2005-05-11 03:52:11 -0600 (Wed, 11 May 2005) | 2 lines +r693 | jcbowman | 2005-05-11 11:52:11 +0200 (Wed, 11 May 2005) | 2 lines Changed paths: M /trunk/asymptote/memory.h Define traceable_allocator when garbage collection is disabled. ------------------------------------------------------------------------ -r692 | jcbowman | 2005-05-10 21:52:35 -0600 (Tue, 10 May 2005) | 2 lines +r692 | jcbowman | 2005-05-11 05:52:35 +0200 (Wed, 11 May 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/base/math.asy @@ -36279,14 +36681,14 @@ Changed paths: Added binary search routine. ------------------------------------------------------------------------ -r691 | jcbowman | 2005-05-10 16:34:50 -0600 (Tue, 10 May 2005) | 2 lines +r691 | jcbowman | 2005-05-11 00:34:50 +0200 (Wed, 11 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.78cvs. ------------------------------------------------------------------------ -r690 | jcbowman | 2005-05-10 14:56:30 -0600 (Tue, 10 May 2005) | 2 lines +r690 | jcbowman | 2005-05-10 22:56:30 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/dec.h @@ -36299,7 +36701,7 @@ Changed paths: Recommitted changes: 2005-05-10 rtprince ------------------------------------------------------------------------ -r689 | jcbowman | 2005-05-10 13:56:23 -0600 (Tue, 10 May 2005) | 2 lines +r689 | jcbowman | 2005-05-10 21:56:23 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/dec.h @@ -36312,7 +36714,7 @@ Changed paths: Revert broken changes: 2005-05-10 rtprince. ------------------------------------------------------------------------ -r688 | rtprince | 2005-05-10 12:36:42 -0600 (Tue, 10 May 2005) | 2 lines +r688 | rtprince | 2005-05-10 20:36:42 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/dec.h @@ -36324,14 +36726,14 @@ Changed paths: Make CVS -lgccpp clean. ------------------------------------------------------------------------ -r687 | rtprince | 2005-05-10 12:31:32 -0600 (Tue, 10 May 2005) | 2 lines +r687 | rtprince | 2005-05-10 20:31:32 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/item.h Make item use new(UseGC). ------------------------------------------------------------------------ -r686 | rtprince | 2005-05-10 11:43:15 -0600 (Tue, 10 May 2005) | 2 lines +r686 | rtprince | 2005-05-10 19:43:15 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: A /trunk/asymptote/tests A /trunk/asymptote/tests/gc @@ -36345,7 +36747,7 @@ Changed paths: Add some tests. ------------------------------------------------------------------------ -r685 | jcbowman | 2005-05-10 11:16:21 -0600 (Tue, 10 May 2005) | 2 lines +r685 | jcbowman | 2005-05-10 19:16:21 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: D /trunk/asymptote/examples/Geometry.asy A /trunk/asymptote/examples/orthocenter.asy @@ -36353,7 +36755,7 @@ Changed paths: Renamed example. ------------------------------------------------------------------------ -r684 | jcbowman | 2005-05-10 04:37:53 -0600 (Tue, 10 May 2005) | 2 lines +r684 | jcbowman | 2005-05-10 12:37:53 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -36363,14 +36765,14 @@ Changed paths: Distribute Boehm GC as a separate package. ------------------------------------------------------------------------ -r683 | jcbowman | 2005-05-09 23:08:51 -0600 (Mon, 09 May 2005) | 2 lines +r683 | jcbowman | 2005-05-10 07:08:51 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/memory.h Fixed error in map & multimap. ------------------------------------------------------------------------ -r682 | jcbowman | 2005-05-09 22:49:00 -0600 (Mon, 09 May 2005) | 2 lines +r682 | jcbowman | 2005-05-10 06:49:00 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/absyn.h M /trunk/asymptote/access.h @@ -36388,49 +36790,49 @@ Changed paths: Fixed parser leak again. ------------------------------------------------------------------------ -r681 | jcbowman | 2005-05-09 21:57:44 -0600 (Mon, 09 May 2005) | 2 lines +r681 | jcbowman | 2005-05-10 05:57:44 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Fixed broken draw call. ------------------------------------------------------------------------ -r680 | jcbowman | 2005-05-09 16:41:16 -0600 (Mon, 09 May 2005) | 2 lines +r680 | jcbowman | 2005-05-10 00:41:16 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc More gc string updates. ------------------------------------------------------------------------ -r679 | jcbowman | 2005-05-09 16:22:25 -0600 (Mon, 09 May 2005) | 2 lines +r679 | jcbowman | 2005-05-10 00:22:25 +0200 (Tue, 10 May 2005) | 2 lines Changed paths: D /trunk/asymptote/gc_atomic.h Unused file. ------------------------------------------------------------------------ -r678 | jcbowman | 2005-05-09 14:01:57 -0600 (Mon, 09 May 2005) | 2 lines +r678 | jcbowman | 2005-05-09 22:01:57 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/memory.h Handle out of memory errors gracefully. ------------------------------------------------------------------------ -r677 | rtprince | 2005-05-09 13:22:55 -0600 (Mon, 09 May 2005) | 2 lines +r677 | rtprince | 2005-05-09 21:22:55 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc list<decid *> is from mem::. ------------------------------------------------------------------------ -r676 | rtprince | 2005-05-09 13:17:32 -0600 (Mon, 09 May 2005) | 2 lines +r676 | rtprince | 2005-05-09 21:17:32 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.h Make theStack be mem::deque. ------------------------------------------------------------------------ -r675 | jcbowman | 2005-05-09 10:25:33 -0600 (Mon, 09 May 2005) | 2 lines +r675 | jcbowman | 2005-05-09 18:25:33 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/main.cc @@ -36439,21 +36841,21 @@ Changed paths: Fixed segmentation fault. ------------------------------------------------------------------------ -r674 | rtprince | 2005-05-09 05:24:22 -0600 (Mon, 09 May 2005) | 2 lines +r674 | rtprince | 2005-05-09 13:24:22 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Dont gc non-heap string. ------------------------------------------------------------------------ -r673 | rtprince | 2005-05-09 04:58:00 -0600 (Mon, 09 May 2005) | 2 lines +r673 | rtprince | 2005-05-09 12:58:00 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fix makefile. :-( ------------------------------------------------------------------------ -r672 | rtprince | 2005-05-09 04:56:30 -0600 (Mon, 09 May 2005) | 2 lines +r672 | rtprince | 2005-05-09 12:56:30 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/exp.cc @@ -36466,7 +36868,7 @@ Changed paths: More gc fixes. ------------------------------------------------------------------------ -r671 | rtprince | 2005-05-09 04:34:48 -0600 (Mon, 09 May 2005) | 2 lines +r671 | rtprince | 2005-05-09 12:34:48 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/absyn.h @@ -36495,7 +36897,7 @@ Changed paths: GC fixes. We dont need mempool. ------------------------------------------------------------------------ -r670 | jcbowman | 2005-05-09 03:10:23 -0600 (Mon, 09 May 2005) | 2 lines +r670 | jcbowman | 2005-05-09 11:10:23 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/drawpath.cc M /trunk/asymptote/picture.cc @@ -36504,7 +36906,7 @@ Changed paths: Fixed cxx errors. ------------------------------------------------------------------------ -r669 | jcbowman | 2005-05-09 02:58:55 -0600 (Mon, 09 May 2005) | 5 lines +r669 | jcbowman | 2005-05-09 10:58:55 +0200 (Mon, 09 May 2005) | 5 lines Changed paths: M /trunk/asymptote/absyn.h M /trunk/asymptote/access.h @@ -36543,7 +36945,7 @@ Fixed memory leak in parser and translator. Cleaned up interface to the Boehm garbage collector. ------------------------------------------------------------------------ -r668 | jcbowman | 2005-05-08 23:06:28 -0600 (Sun, 08 May 2005) | 2 lines +r668 | jcbowman | 2005-05-09 07:06:28 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/absyn.h @@ -36577,14 +36979,14 @@ Changed paths: Revert 2005-05-09 and 2005-05-08 rtprince changes. ------------------------------------------------------------------------ -r667 | rtprince | 2005-05-08 22:16:41 -0600 (Sun, 08 May 2005) | 2 lines +r667 | rtprince | 2005-05-09 06:16:41 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.h Fix picture. ------------------------------------------------------------------------ -r666 | rtprince | 2005-05-08 21:24:28 -0600 (Sun, 08 May 2005) | 2 lines +r666 | rtprince | 2005-05-09 05:24:28 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.h M /trunk/asymptote/item.h @@ -36592,21 +36994,21 @@ Changed paths: Fix item gc handling. ------------------------------------------------------------------------ -r665 | rtprince | 2005-05-08 21:12:42 -0600 (Sun, 08 May 2005) | 2 lines +r665 | rtprince | 2005-05-09 05:12:42 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/path.h Collect path. ------------------------------------------------------------------------ -r664 | rtprince | 2005-05-08 20:35:08 -0600 (Sun, 08 May 2005) | 2 lines +r664 | rtprince | 2005-05-09 04:35:08 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/transform.h Collect transform. ------------------------------------------------------------------------ -r663 | rtprince | 2005-05-08 19:56:00 -0600 (Sun, 08 May 2005) | 2 lines +r663 | rtprince | 2005-05-09 03:56:00 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/gc_atomic.h @@ -36618,14 +37020,14 @@ Changed paths: Create gc_atomic, and make picture use it. ------------------------------------------------------------------------ -r662 | rtprince | 2005-05-08 19:37:29 -0600 (Sun, 08 May 2005) | 2 lines +r662 | rtprince | 2005-05-09 03:37:29 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/pen.h Make pen garbage collected. ------------------------------------------------------------------------ -r661 | rtprince | 2005-05-08 19:34:56 -0600 (Sun, 08 May 2005) | 2 lines +r661 | rtprince | 2005-05-09 03:34:56 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/picture.cc @@ -36635,7 +37037,7 @@ Changed paths: Make picture and drawElement garabage collected. ------------------------------------------------------------------------ -r660 | rtprince | 2005-05-08 17:11:34 -0600 (Sun, 08 May 2005) | 2 lines +r660 | rtprince | 2005-05-09 01:11:34 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.h M /trunk/asymptote/item.h @@ -36647,21 +37049,21 @@ Changed paths: Add gc for vm only. (untested) ------------------------------------------------------------------------ -r659 | rtprince | 2005-05-08 17:01:19 -0600 (Sun, 08 May 2005) | 2 lines +r659 | rtprince | 2005-05-09 01:01:19 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac We don't want libgccpp. ------------------------------------------------------------------------ -r658 | rtprince | 2005-05-08 16:57:11 -0600 (Sun, 08 May 2005) | 2 lines +r658 | rtprince | 2005-05-09 00:57:11 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: A /trunk/asymptote/pool.h Re-add pool.h. ------------------------------------------------------------------------ -r657 | rtprince | 2005-05-08 16:55:24 -0600 (Sun, 08 May 2005) | 2 lines +r657 | rtprince | 2005-05-09 00:55:24 +0200 (Mon, 09 May 2005) | 2 lines Changed paths: M /trunk/asymptote/absyn.h M /trunk/asymptote/access.h @@ -36692,35 +37094,35 @@ Changed paths: Revert GC changes. (not tested) ------------------------------------------------------------------------ -r656 | jcbowman | 2005-05-08 08:57:01 -0600 (Sun, 08 May 2005) | 2 lines +r656 | jcbowman | 2005-05-08 16:57:01 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/piicon.eps Figure for Geometry.asy. ------------------------------------------------------------------------ -r655 | jcbowman | 2005-05-08 00:29:32 -0600 (Sun, 08 May 2005) | 2 lines +r655 | jcbowman | 2005-05-08 08:29:32 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Minor fixes. ------------------------------------------------------------------------ -r654 | jcbowman | 2005-05-08 00:17:30 -0600 (Sun, 08 May 2005) | 2 lines +r654 | jcbowman | 2005-05-08 08:17:30 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Workaround Makefile problem in gc6.3. ------------------------------------------------------------------------ -r653 | jcbowman | 2005-05-08 00:16:45 -0600 (Sun, 08 May 2005) | 2 lines +r653 | jcbowman | 2005-05-08 08:16:45 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Move trace/interrupt check to beginning of virtual machine loop. ------------------------------------------------------------------------ -r652 | jcbowman | 2005-05-08 00:05:59 -0600 (Sun, 08 May 2005) | 2 lines +r652 | jcbowman | 2005-05-08 08:05:59 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in D /trunk/asymptote/gc6.3.tar @@ -36729,14 +37131,14 @@ Changed paths: Revert to distributing Boehm GC as tar.gz file. ------------------------------------------------------------------------ -r651 | jcbowman | 2005-05-08 00:01:56 -0600 (Sun, 08 May 2005) | 2 lines +r651 | jcbowman | 2005-05-08 08:01:56 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/gc6.3.tar Fixed corrupted tar file. ------------------------------------------------------------------------ -r650 | jcbowman | 2005-05-07 23:52:27 -0600 (Sat, 07 May 2005) | 2 lines +r650 | jcbowman | 2005-05-08 07:52:27 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/gc6.3.tar @@ -36745,7 +37147,7 @@ Changed paths: Distribute Boehm GC as a tar file rather than tar.gz file. ------------------------------------------------------------------------ -r649 | jcbowman | 2005-05-07 23:40:14 -0600 (Sat, 07 May 2005) | 4 lines +r649 | jcbowman | 2005-05-08 07:40:14 +0200 (Sun, 08 May 2005) | 4 lines Changed paths: A /trunk/asymptote/base/geometry.asy M /trunk/asymptote/base/math.asy @@ -36763,7 +37165,7 @@ Added beginnings of a geometry module, including a triangle structure and functions to draw interior arcs of triangles and perpendicular symbols. ------------------------------------------------------------------------ -r648 | jcbowman | 2005-05-07 21:31:23 -0600 (Sat, 07 May 2005) | 2 lines +r648 | jcbowman | 2005-05-08 05:31:23 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -36772,14 +37174,14 @@ Changed paths: Distribute generated source files. ------------------------------------------------------------------------ -r647 | jcbowman | 2005-05-07 21:30:48 -0600 (Sat, 07 May 2005) | 2 lines +r647 | jcbowman | 2005-05-08 05:30:48 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed type of argument of dividebyzero. ------------------------------------------------------------------------ -r646 | jcbowman | 2005-05-07 21:05:28 -0600 (Sat, 07 May 2005) | 2 lines +r646 | jcbowman | 2005-05-08 05:05:28 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/collect.h M /trunk/asymptote/mathop.h @@ -36788,7 +37190,7 @@ Changed paths: cxx updates. ------------------------------------------------------------------------ -r645 | jcbowman | 2005-05-07 20:35:51 -0600 (Sat, 07 May 2005) | 2 lines +r645 | jcbowman | 2005-05-08 04:35:51 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.cc M /trunk/asymptote/stack.h @@ -36796,7 +37198,7 @@ Changed paths: DEBUG_STACK updates. ------------------------------------------------------------------------ -r644 | jcbowman | 2005-05-07 20:07:39 -0600 (Sat, 07 May 2005) | 2 lines +r644 | jcbowman | 2005-05-08 04:07:39 +0200 (Sun, 08 May 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/drawelement.h @@ -36813,21 +37215,21 @@ Changed paths: Minor garbage collection updates. ------------------------------------------------------------------------ -r643 | jcbowman | 2005-05-07 11:56:54 -0600 (Sat, 07 May 2005) | 2 lines +r643 | jcbowman | 2005-05-07 19:56:54 +0200 (Sat, 07 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Autoconf backwards compatibility workaround. ------------------------------------------------------------------------ -r642 | jcbowman | 2005-05-07 11:50:19 -0600 (Sat, 07 May 2005) | 2 lines +r642 | jcbowman | 2005-05-07 19:50:19 +0200 (Sat, 07 May 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Renamed COLLECT to USEGC. ------------------------------------------------------------------------ -r641 | jcbowman | 2005-05-07 11:49:25 -0600 (Sat, 07 May 2005) | 2 lines +r641 | jcbowman | 2005-05-07 19:49:25 +0200 (Sat, 07 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in A /trunk/asymptote/collect.h @@ -36839,7 +37241,7 @@ Changed paths: Added configuration to optionally disable garbage collection. ------------------------------------------------------------------------ -r640 | jcbowman | 2005-05-07 09:48:46 -0600 (Sat, 07 May 2005) | 2 lines +r640 | jcbowman | 2005-05-07 17:48:46 +0200 (Sat, 07 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -36848,7 +37250,7 @@ Changed paths: Fixed Makefile dependencies. ------------------------------------------------------------------------ -r639 | jcbowman | 2005-05-07 01:38:08 -0600 (Sat, 07 May 2005) | 2 lines +r639 | jcbowman | 2005-05-07 09:38:08 +0200 (Sat, 07 May 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/TODO @@ -36924,21 +37326,21 @@ Changed paths: Implemented Boehm garbage collection. ------------------------------------------------------------------------ -r638 | hammera | 2005-05-05 22:32:22 -0600 (Thu, 05 May 2005) | 2 lines +r638 | hammera | 2005-05-06 06:32:22 +0200 (Fri, 06 May 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc Fixed solveSection bug. ------------------------------------------------------------------------ -r637 | jcbowman | 2005-05-05 13:34:40 -0600 (Thu, 05 May 2005) | 2 lines +r637 | jcbowman | 2005-05-05 21:34:40 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Added missing comma. ------------------------------------------------------------------------ -r636 | jcbowman | 2005-05-05 13:32:53 -0600 (Thu, 05 May 2005) | 2 lines +r636 | jcbowman | 2005-05-05 21:32:53 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -36948,7 +37350,7 @@ Changed paths: Addressed pen plabel vs p issues. ------------------------------------------------------------------------ -r635 | jcbowman | 2005-05-05 01:36:58 -0600 (Thu, 05 May 2005) | 6 lines +r635 | jcbowman | 2005-05-05 09:36:58 +0200 (Thu, 05 May 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -36966,14 +37368,14 @@ Documented eval(string) and make eval autoload plain. Implemented T[] concat(T[] A, T[] B) to concatenate two arrays into a new one. ------------------------------------------------------------------------ -r634 | jcbowman | 2005-05-05 00:46:04 -0600 (Thu, 05 May 2005) | 2 lines +r634 | jcbowman | 2005-05-05 08:46:04 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Added pair exp(pair) and pair log(pair). ------------------------------------------------------------------------ -r633 | jcbowman | 2005-05-04 23:35:48 -0600 (Wed, 04 May 2005) | 4 lines +r633 | jcbowman | 2005-05-05 07:35:48 +0200 (Thu, 05 May 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/math.asy @@ -36986,7 +37388,7 @@ Make int quotient(int,int) portable. Updated base files to use quotient for integer division. ------------------------------------------------------------------------ -r632 | jcbowman | 2005-05-04 23:19:03 -0600 (Wed, 04 May 2005) | 3 lines +r632 | jcbowman | 2005-05-05 07:19:03 +0200 (Thu, 05 May 2005) | 3 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -36998,28 +37400,28 @@ Make int/int return a real, as is normally desired; the new function int quotient(int,int) returns an integer quotient. ------------------------------------------------------------------------ -r631 | jcbowman | 2005-05-04 21:55:59 -0600 (Wed, 04 May 2005) | 2 lines +r631 | jcbowman | 2005-05-05 05:55:59 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO Updated TODO items. ------------------------------------------------------------------------ -r630 | jcbowman | 2005-05-04 21:55:18 -0600 (Wed, 04 May 2005) | 2 lines +r630 | jcbowman | 2005-05-05 05:55:18 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc List iterator simplification. ------------------------------------------------------------------------ -r629 | jcbowman | 2005-05-04 21:44:31 -0600 (Wed, 04 May 2005) | 2 lines +r629 | jcbowman | 2005-05-05 05:44:31 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added reltime(path, real). ------------------------------------------------------------------------ -r628 | jcbowman | 2005-05-04 21:40:58 -0600 (Wed, 04 May 2005) | 2 lines +r628 | jcbowman | 2005-05-05 05:40:58 +0200 (Thu, 05 May 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -37028,14 +37430,14 @@ Changed paths: Make -l option list available global variables as well as functions. ------------------------------------------------------------------------ -r627 | jcbowman | 2005-05-03 22:24:17 -0600 (Tue, 03 May 2005) | 2 lines +r627 | jcbowman | 2005-05-04 06:24:17 +0200 (Wed, 04 May 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor updates. ------------------------------------------------------------------------ -r626 | jcbowman | 2005-05-03 22:23:34 -0600 (Tue, 03 May 2005) | 3 lines +r626 | jcbowman | 2005-05-04 06:23:34 +0200 (Wed, 04 May 2005) | 3 lines Changed paths: M /trunk/asymptote/parser.cc @@ -37043,28 +37445,28 @@ For portability, explicitly check that input file isn't a directory on systems with stat. ------------------------------------------------------------------------ -r625 | jcbowman | 2005-05-02 21:14:15 -0600 (Mon, 02 May 2005) | 2 lines +r625 | jcbowman | 2005-05-03 05:14:15 +0200 (Tue, 03 May 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/triangle.asy Added example of a transformable triangle structure. ------------------------------------------------------------------------ -r624 | jcbowman | 2005-05-02 16:20:02 -0600 (Mon, 02 May 2005) | 2 lines +r624 | jcbowman | 2005-05-03 00:20:02 +0200 (Tue, 03 May 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.77cvs. ------------------------------------------------------------------------ -r623 | jcbowman | 2005-05-02 15:27:57 -0600 (Mon, 02 May 2005) | 2 lines +r623 | jcbowman | 2005-05-02 23:27:57 +0200 (Mon, 02 May 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/spring.asy Added PenMargin. ------------------------------------------------------------------------ -r622 | jcbowman | 2005-05-02 15:20:05 -0600 (Mon, 02 May 2005) | 4 lines +r622 | jcbowman | 2005-05-02 23:20:05 +0200 (Mon, 02 May 2005) | 4 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -37083,14 +37485,14 @@ Added -l option to list available global functions. Documentation default structure constructors. ------------------------------------------------------------------------ -r621 | jcbowman | 2005-05-02 00:42:53 -0600 (Mon, 02 May 2005) | 2 lines +r621 | jcbowman | 2005-05-02 08:42:53 +0200 (Mon, 02 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added missing plabel. ------------------------------------------------------------------------ -r620 | jcbowman | 2005-05-02 00:11:49 -0600 (Mon, 02 May 2005) | 5 lines +r620 | jcbowman | 2005-05-02 08:11:49 +0200 (Mon, 02 May 2005) | 5 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/interact.h @@ -37105,7 +37507,7 @@ Improved error handling in pipestream; wrap fork to avoid zombies. TeX errors should force TeX pipe to be closed. ------------------------------------------------------------------------ -r619 | jcbowman | 2005-05-02 00:09:25 -0600 (Mon, 02 May 2005) | 2 lines +r619 | jcbowman | 2005-05-02 08:09:25 +0200 (Mon, 02 May 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/sin1x.asy M /trunk/asymptote/examples/sqrtx01.asy @@ -37115,7 +37517,7 @@ Changed paths: Updated examples. ------------------------------------------------------------------------ -r618 | jcbowman | 2005-05-02 00:09:10 -0600 (Mon, 02 May 2005) | 3 lines +r618 | jcbowman | 2005-05-02 08:09:10 +0200 (Mon, 02 May 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/latexusage.tex @@ -37124,7 +37526,7 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r617 | jcbowman | 2005-05-02 00:08:38 -0600 (Mon, 02 May 2005) | 3 lines +r617 | jcbowman | 2005-05-02 08:08:38 +0200 (Mon, 02 May 2005) | 3 lines Changed paths: M /trunk/asymptote/castop.h @@ -37132,7 +37534,7 @@ Changed paths: Don't push a final null entry when reading an array in line mode. ------------------------------------------------------------------------ -r616 | jcbowman | 2005-05-02 00:07:12 -0600 (Mon, 02 May 2005) | 14 lines +r616 | jcbowman | 2005-05-02 08:07:12 +0200 (Mon, 02 May 2005) | 14 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -37153,14 +37555,14 @@ Added getstring and getreal functions. Added Mark, MarkFill frame arrays and Mark(int) function. ------------------------------------------------------------------------ -r615 | jcbowman | 2005-05-02 00:04:54 -0600 (Mon, 02 May 2005) | 2 lines +r615 | jcbowman | 2005-05-02 08:04:54 +0200 (Mon, 02 May 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Added node, value, and slope functions for paths. ------------------------------------------------------------------------ -r614 | rtprince | 2005-04-30 22:38:32 -0600 (Sat, 30 Apr 2005) | 2 lines +r614 | rtprince | 2005-05-01 06:38:32 +0200 (Sun, 01 May 2005) | 2 lines Changed paths: M /trunk/asymptote/camperror.cc M /trunk/asymptote/camperror.h @@ -37180,7 +37582,7 @@ Changed paths: Make camperror throw instead of queuing. ------------------------------------------------------------------------ -r613 | hammera | 2005-04-30 20:31:09 -0600 (Sat, 30 Apr 2005) | 2 lines +r613 | hammera | 2005-05-01 04:31:09 +0200 (Sun, 01 May 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -37188,7 +37590,7 @@ Changed paths: '' ------------------------------------------------------------------------ -r612 | hammera | 2005-04-30 16:29:58 -0600 (Sat, 30 Apr 2005) | 2 lines +r612 | hammera | 2005-05-01 00:29:58 +0200 (Sun, 01 May 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -37196,14 +37598,14 @@ Changed paths: Allowed more implicit scaling. ------------------------------------------------------------------------ -r611 | hammera | 2005-04-30 14:49:34 -0600 (Sat, 30 Apr 2005) | 2 lines +r611 | hammera | 2005-04-30 22:49:34 +0200 (Sat, 30 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.y Changed precedence for implicit scaling. ------------------------------------------------------------------------ -r610 | jcbowman | 2005-04-25 23:43:36 -0600 (Mon, 25 Apr 2005) | 2 lines +r610 | jcbowman | 2005-04-26 07:43:36 +0200 (Tue, 26 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/near_earth.asy M /trunk/asymptote/main.cc @@ -37211,7 +37613,7 @@ Changed paths: Flush exited child processes (zombies) in batch mode. ------------------------------------------------------------------------ -r609 | jcbowman | 2005-04-25 23:41:46 -0600 (Mon, 25 Apr 2005) | 4 lines +r609 | jcbowman | 2005-04-26 07:41:46 +0200 (Tue, 26 Apr 2005) | 4 lines Changed paths: M /trunk/asymptote/picture.cc @@ -37220,7 +37622,7 @@ Workaround interactive mode bug introduced by recent changes to main.cc. On multiple file runs, texpreamble should appear before any other commands. ------------------------------------------------------------------------ -r608 | jcbowman | 2005-04-25 22:21:57 -0600 (Mon, 25 Apr 2005) | 2 lines +r608 | jcbowman | 2005-04-26 06:21:57 +0200 (Tue, 26 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/graph.asy @@ -37229,42 +37631,42 @@ Changed paths: Added example of 3d featpost3d arc. ------------------------------------------------------------------------ -r607 | rtprince | 2005-04-24 21:04:01 -0600 (Sun, 24 Apr 2005) | 2 lines +r607 | rtprince | 2005-04-25 05:04:01 +0200 (Mon, 25 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/parser.cc Make parseStdin() turn of lex debuging. ------------------------------------------------------------------------ -r606 | jcbowman | 2005-04-24 10:44:05 -0600 (Sun, 24 Apr 2005) | 2 lines +r606 | jcbowman | 2005-04-24 18:44:05 +0200 (Sun, 24 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added Dotted(pen) function which returns a dotted pen at double the linewidth. ------------------------------------------------------------------------ -r605 | jcbowman | 2005-04-23 17:16:57 -0600 (Sat, 23 Apr 2005) | 2 lines +r605 | jcbowman | 2005-04-24 01:16:57 +0200 (Sun, 24 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.h Clear existing errors on reading from standard input. ------------------------------------------------------------------------ -r604 | rtprince | 2005-04-23 15:15:33 -0600 (Sat, 23 Apr 2005) | 2 lines +r604 | rtprince | 2005-04-23 23:15:33 +0200 (Sat, 23 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Fix interrupt handling. ------------------------------------------------------------------------ -r603 | rtprince | 2005-04-22 11:56:07 -0600 (Fri, 22 Apr 2005) | 2 lines +r603 | rtprince | 2005-04-22 19:56:07 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/parser.cc Cleanup. ------------------------------------------------------------------------ -r602 | jcbowman | 2005-04-22 08:43:55 -0600 (Fri, 22 Apr 2005) | 2 lines +r602 | jcbowman | 2005-04-22 16:43:55 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/parser.cc @@ -37272,14 +37674,14 @@ Changed paths: Fixed compilation error. ------------------------------------------------------------------------ -r601 | rtprince | 2005-04-22 07:49:16 -0600 (Fri, 22 Apr 2005) | 2 lines +r601 | rtprince | 2005-04-22 15:49:16 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/parser.cc Fix segfault. ------------------------------------------------------------------------ -r600 | jcbowman | 2005-04-22 03:21:09 -0600 (Fri, 22 Apr 2005) | 3 lines +r600 | jcbowman | 2005-04-22 11:21:09 +0200 (Fri, 22 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/castop.h @@ -37292,7 +37694,7 @@ Replaced boost::lexical_cast with lexical.h to remove last remaining dependency on boost header files. ------------------------------------------------------------------------ -r599 | rtprince | 2005-04-21 22:51:44 -0600 (Thu, 21 Apr 2005) | 2 lines +r599 | rtprince | 2005-04-22 06:51:44 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/runtime.cc @@ -37300,14 +37702,14 @@ Changed paths: Cleanup. ------------------------------------------------------------------------ -r598 | rtprince | 2005-04-21 22:47:56 -0600 (Thu, 21 Apr 2005) | 2 lines +r598 | rtprince | 2005-04-22 06:47:56 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Refactoring main.cc. ------------------------------------------------------------------------ -r597 | rtprince | 2005-04-21 21:27:46 -0600 (Thu, 21 Apr 2005) | 2 lines +r597 | rtprince | 2005-04-22 05:27:46 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/genv.cc M /trunk/asymptote/main.cc @@ -37315,7 +37717,7 @@ Changed paths: More refactoring in main.cc ------------------------------------------------------------------------ -r596 | rtprince | 2005-04-21 21:03:35 -0600 (Thu, 21 Apr 2005) | 2 lines +r596 | rtprince | 2005-04-22 05:03:35 +0200 (Fri, 22 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/runtime.cc @@ -37325,28 +37727,28 @@ Changed paths: findextension is used only to strip suffix. So strip it. ------------------------------------------------------------------------ -r595 | rtprince | 2005-04-21 13:38:38 -0600 (Thu, 21 Apr 2005) | 2 lines +r595 | rtprince | 2005-04-21 21:38:38 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc FIx interactive. ------------------------------------------------------------------------ -r594 | rtprince | 2005-04-21 00:59:52 -0600 (Thu, 21 Apr 2005) | 2 lines +r594 | rtprince | 2005-04-21 08:59:52 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc More main.cc cleanup. ------------------------------------------------------------------------ -r593 | rtprince | 2005-04-21 00:55:02 -0600 (Thu, 21 Apr 2005) | 2 lines +r593 | rtprince | 2005-04-21 08:55:02 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Simplify error handling. ------------------------------------------------------------------------ -r592 | rtprince | 2005-04-21 00:33:24 -0600 (Thu, 21 Apr 2005) | 4 lines +r592 | rtprince | 2005-04-21 08:33:24 +0200 (Thu, 21 Apr 2005) | 4 lines Changed paths: M /trunk/asymptote/main.cc @@ -37355,7 +37757,7 @@ change and understand. Doesn't do much, but gives a a place to start. ------------------------------------------------------------------------ -r591 | rtprince | 2005-04-21 00:07:46 -0600 (Thu, 21 Apr 2005) | 2 lines +r591 | rtprince | 2005-04-21 08:07:46 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errors M /trunk/asymptote/wce @@ -37363,7 +37765,7 @@ Changed paths: Update ./wce. ------------------------------------------------------------------------ -r590 | rtprince | 2005-04-20 23:40:57 -0600 (Wed, 20 Apr 2005) | 2 lines +r590 | rtprince | 2005-04-21 07:40:57 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.h M /trunk/asymptote/newexp.h @@ -37372,14 +37774,14 @@ Changed paths: Remove warning about side-effects. ------------------------------------------------------------------------ -r589 | jcbowman | 2005-04-20 23:17:54 -0600 (Wed, 20 Apr 2005) | 2 lines +r589 | jcbowman | 2005-04-21 07:17:54 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.76cvs. ------------------------------------------------------------------------ -r588 | jcbowman | 2005-04-20 22:41:08 -0600 (Wed, 20 Apr 2005) | 2 lines +r588 | jcbowman | 2005-04-21 06:41:08 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -37387,35 +37789,35 @@ Changed paths: Documented xline and yline. ------------------------------------------------------------------------ -r587 | jcbowman | 2005-04-20 18:59:59 -0600 (Wed, 20 Apr 2005) | 2 lines +r587 | jcbowman | 2005-04-21 02:59:59 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/diatom.asy More updates. ------------------------------------------------------------------------ -r586 | jcbowman | 2005-04-20 18:58:48 -0600 (Wed, 20 Apr 2005) | 2 lines +r586 | jcbowman | 2005-04-21 02:58:48 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/diatom.asy Updated axis call. ------------------------------------------------------------------------ -r585 | jcbowman | 2005-04-20 16:03:54 -0600 (Wed, 20 Apr 2005) | 2 lines +r585 | jcbowman | 2005-04-21 00:03:54 +0200 (Thu, 21 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated binary installation instructions. ------------------------------------------------------------------------ -r584 | jcbowman | 2005-04-20 14:03:36 -0600 (Wed, 20 Apr 2005) | 2 lines +r584 | jcbowman | 2005-04-20 22:03:36 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy Update yaxis call. ------------------------------------------------------------------------ -r583 | jcbowman | 2005-04-20 11:53:41 -0600 (Wed, 20 Apr 2005) | 7 lines +r583 | jcbowman | 2005-04-20 19:53:41 +0200 (Wed, 20 Apr 2005) | 7 lines Changed paths: M /trunk/asymptote/genv.cc M /trunk/asymptote/genv.h @@ -37432,14 +37834,14 @@ Suppressed "could not load" error message in interactive mode. Fixed gcc 3.2 warnings and error message. ------------------------------------------------------------------------ -r582 | jcbowman | 2005-04-20 11:51:58 -0600 (Wed, 20 Apr 2005) | 2 lines +r582 | jcbowman | 2005-04-20 19:51:58 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Added linear interpolation and binary search routines. ------------------------------------------------------------------------ -r581 | jcbowman | 2005-04-20 11:49:16 -0600 (Wed, 20 Apr 2005) | 5 lines +r581 | jcbowman | 2005-04-20 19:49:16 +0200 (Wed, 20 Apr 2005) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -37450,7 +37852,7 @@ consistency with draw. Added xline and yline interfaces to axis routines. ------------------------------------------------------------------------ -r580 | rtprince | 2005-04-20 11:38:23 -0600 (Wed, 20 Apr 2005) | 2 lines +r580 | rtprince | 2005-04-20 19:38:23 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/runtime.cc @@ -37460,7 +37862,7 @@ Changed paths: Change stack::run(lambda*) to a free function vm::run. ------------------------------------------------------------------------ -r579 | rtprince | 2005-04-20 11:18:23 -0600 (Wed, 20 Apr 2005) | 2 lines +r579 | rtprince | 2005-04-20 19:18:23 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/parser.cc @@ -37468,21 +37870,21 @@ Changed paths: Fix handling of bad parse. ------------------------------------------------------------------------ -r578 | jcbowman | 2005-04-20 09:51:49 -0600 (Wed, 20 Apr 2005) | 2 lines +r578 | jcbowman | 2005-04-20 17:51:49 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: D /trunk/asymptote/libboost '' ------------------------------------------------------------------------ -r577 | rtprince | 2005-04-20 08:31:22 -0600 (Wed, 20 Apr 2005) | 2 lines +r577 | rtprince | 2005-04-20 16:31:22 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/parser.cc Refactor doParse(). ------------------------------------------------------------------------ -r576 | jcbowman | 2005-04-19 22:56:48 -0600 (Tue, 19 Apr 2005) | 3 lines +r576 | jcbowman | 2005-04-20 06:56:48 +0200 (Wed, 20 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/base/stats.asy @@ -37490,7 +37892,7 @@ Fixed definition of correlation coefficient; added fit function to linefit struct. ------------------------------------------------------------------------ -r575 | jcbowman | 2005-04-19 19:59:25 -0600 (Tue, 19 Apr 2005) | 2 lines +r575 | jcbowman | 2005-04-20 03:59:25 +0200 (Wed, 20 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/parser.cc @@ -37498,7 +37900,7 @@ Changed paths: Implemented portable way of testing for directories (but not null files). ------------------------------------------------------------------------ -r574 | jcbowman | 2005-04-19 14:55:14 -0600 (Tue, 19 Apr 2005) | 2 lines +r574 | jcbowman | 2005-04-19 22:55:14 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc M /trunk/asymptote/main.cc @@ -37507,14 +37909,14 @@ Changed paths: Fixed stdin handling of parser.cc. ------------------------------------------------------------------------ -r573 | rtprince | 2005-04-19 10:08:39 -0600 (Tue, 19 Apr 2005) | 2 lines +r573 | rtprince | 2005-04-19 18:08:39 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/parser.cc *** empty log message *** ------------------------------------------------------------------------ -r572 | jcbowman | 2005-04-19 08:05:31 -0600 (Tue, 19 Apr 2005) | 2 lines +r572 | jcbowman | 2005-04-19 16:05:31 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc M /trunk/asymptote/errors @@ -37523,14 +37925,14 @@ Changed paths: Fixed more bugs associated with new parser. ------------------------------------------------------------------------ -r571 | jcbowman | 2005-04-19 01:31:02 -0600 (Tue, 19 Apr 2005) | 2 lines +r571 | jcbowman | 2005-04-19 09:31:02 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc filebuf should not be static; fixed error message. ------------------------------------------------------------------------ -r570 | jcbowman | 2005-04-19 01:25:18 -0600 (Tue, 19 Apr 2005) | 3 lines +r570 | jcbowman | 2005-04-19 09:25:18 +0200 (Tue, 19 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/interact.cc @@ -37538,14 +37940,14 @@ Interactive input command now checks for a directory or null file. Print an error if input file can't be loaded. ------------------------------------------------------------------------ -r569 | jcbowman | 2005-04-18 23:35:01 -0600 (Mon, 18 Apr 2005) | 2 lines +r569 | jcbowman | 2005-04-19 07:35:01 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Make execute() autoload plain (and any gui file) again. ------------------------------------------------------------------------ -r568 | jcbowman | 2005-04-18 23:28:58 -0600 (Mon, 18 Apr 2005) | 7 lines +r568 | jcbowman | 2005-04-19 07:28:58 +0200 (Tue, 19 Apr 2005) | 7 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/builtin.cc @@ -37570,21 +37972,21 @@ Attempting to read a directory or a null file now returns "error: could not load module" instead of generating an exception. ------------------------------------------------------------------------ -r567 | jcbowman | 2005-04-18 23:24:33 -0600 (Mon, 18 Apr 2005) | 2 lines +r567 | jcbowman | 2005-04-19 07:24:33 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Changed default value of axislabelmargin to 1. ------------------------------------------------------------------------ -r566 | rtprince | 2005-04-18 21:59:13 -0600 (Mon, 18 Apr 2005) | 2 lines +r566 | rtprince | 2005-04-19 05:59:13 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Don't segfault on -p if we can't parse the file, but don't report an error. ------------------------------------------------------------------------ -r565 | jcbowman | 2005-04-18 21:37:18 -0600 (Mon, 18 Apr 2005) | 3 lines +r565 | jcbowman | 2005-04-19 05:37:18 +0200 (Tue, 19 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/main.cc @@ -37597,7 +37999,7 @@ Changed paths: Fixed cxx errors and and warnings; removed unused parser files. ------------------------------------------------------------------------ -r564 | jcbowman | 2005-04-18 21:10:28 -0600 (Mon, 18 Apr 2005) | 2 lines +r564 | jcbowman | 2005-04-19 05:10:28 +0200 (Tue, 19 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/builtin.cc @@ -37614,7 +38016,7 @@ Changed paths: Revert to old parser until bugs in new parser are fixed. ------------------------------------------------------------------------ -r563 | jcbowman | 2005-04-18 00:50:08 -0600 (Mon, 18 Apr 2005) | 2 lines +r563 | jcbowman | 2005-04-18 08:50:08 +0200 (Mon, 18 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/fileio.cc @@ -37622,7 +38024,7 @@ Changed paths: Fixed bug in csv mode when line mode is not set. ------------------------------------------------------------------------ -r562 | rtprince | 2005-04-15 21:56:04 -0600 (Fri, 15 Apr 2005) | 2 lines +r562 | rtprince | 2005-04-16 05:56:04 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote M /trunk/asymptote/.cvsignore @@ -37634,35 +38036,35 @@ Changed paths: runtime.pl updates. Actually use the generated code. ------------------------------------------------------------------------ -r561 | rtprince | 2005-04-15 19:52:18 -0600 (Fri, 15 Apr 2005) | 2 lines +r561 | rtprince | 2005-04-16 03:52:18 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.in Typos. ------------------------------------------------------------------------ -r560 | rtprince | 2005-04-15 19:45:07 -0600 (Fri, 15 Apr 2005) | 2 lines +r560 | rtprince | 2005-04-16 03:45:07 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.h inst.h cleanups. ------------------------------------------------------------------------ -r559 | rtprince | 2005-04-15 18:42:28 -0600 (Fri, 15 Apr 2005) | 2 lines +r559 | rtprince | 2005-04-16 02:42:28 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/item.h Implement type query for vm::item. ------------------------------------------------------------------------ -r558 | rtprince | 2005-04-15 18:24:59 -0600 (Fri, 15 Apr 2005) | 2 lines +r558 | rtprince | 2005-04-16 02:24:59 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.h We use item to store string* in inst. ------------------------------------------------------------------------ -r557 | rtprince | 2005-04-15 17:21:55 -0600 (Fri, 15 Apr 2005) | 2 lines +r557 | rtprince | 2005-04-16 01:21:55 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.in M /trunk/asymptote/runtime.pl @@ -37670,7 +38072,7 @@ Changed paths: Fixes for runtime.pl script. ------------------------------------------------------------------------ -r556 | rtprince | 2005-04-15 16:00:18 -0600 (Fri, 15 Apr 2005) | 2 lines +r556 | rtprince | 2005-04-16 00:00:18 +0200 (Sat, 16 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/runtime.in @@ -37679,7 +38081,7 @@ Changed paths: Fixes for runtime.pl script. ------------------------------------------------------------------------ -r555 | rtprince | 2005-04-15 15:36:25 -0600 (Fri, 15 Apr 2005) | 2 lines +r555 | rtprince | 2005-04-15 23:36:25 +0200 (Fri, 15 Apr 2005) | 2 lines Changed paths: A /trunk/asymptote/runtime.in A /trunk/asymptote/runtime.pl @@ -37687,7 +38089,7 @@ Changed paths: Initial runtime.pl script. ------------------------------------------------------------------------ -r554 | rtprince | 2005-04-14 11:16:21 -0600 (Thu, 14 Apr 2005) | 2 lines +r554 | rtprince | 2005-04-14 19:16:21 +0200 (Thu, 14 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/parser.cc @@ -37698,7 +38100,7 @@ Changed paths: Add eval. ------------------------------------------------------------------------ -r553 | rtprince | 2005-04-14 11:06:44 -0600 (Thu, 14 Apr 2005) | 2 lines +r553 | rtprince | 2005-04-14 19:06:44 +0200 (Thu, 14 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/genv.cc M /trunk/asymptote/genv.h @@ -37707,21 +38109,21 @@ Changed paths: Move interactive logic out of genv to main. ------------------------------------------------------------------------ -r552 | jcbowman | 2005-04-14 07:40:55 -0600 (Thu, 14 Apr 2005) | 2 lines +r552 | jcbowman | 2005-04-14 15:40:55 +0200 (Thu, 14 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Interactive mode update. ------------------------------------------------------------------------ -r551 | jcbowman | 2005-04-13 21:43:07 -0600 (Wed, 13 Apr 2005) | 2 lines +r551 | jcbowman | 2005-04-14 05:43:07 +0200 (Thu, 14 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.75cvs. ------------------------------------------------------------------------ -r550 | jcbowman | 2005-04-13 21:10:38 -0600 (Wed, 13 Apr 2005) | 3 lines +r550 | jcbowman | 2005-04-14 05:10:38 +0200 (Thu, 14 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -37729,7 +38131,7 @@ Removed figures with shading since from manual since many printers don't understand PostScript 3. ------------------------------------------------------------------------ -r549 | jcbowman | 2005-04-13 20:42:00 -0600 (Wed, 13 Apr 2005) | 3 lines +r549 | jcbowman | 2005-04-14 04:42:00 +0200 (Thu, 14 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/base/palette.asy @@ -37737,7 +38139,7 @@ Reduced default number of colors in images to work around postscript/pdf limitations (this prevented recent manuals from being printed). ------------------------------------------------------------------------ -r548 | jcbowman | 2005-04-13 20:09:21 -0600 (Wed, 13 Apr 2005) | 2 lines +r548 | jcbowman | 2005-04-14 04:09:21 +0200 (Thu, 14 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/lineargraph.asy M /trunk/asymptote/doc/lineargraph0.asy @@ -37747,14 +38149,14 @@ Changed paths: Fixed segmentation fault in version 0.73. ------------------------------------------------------------------------ -r547 | rtprince | 2005-04-13 18:48:48 -0600 (Wed, 13 Apr 2005) | 2 lines +r547 | rtprince | 2005-04-14 02:48:48 +0200 (Thu, 14 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/entry.cc overloaded::simplify() handles allocation. ------------------------------------------------------------------------ -r546 | rtprince | 2005-04-13 17:57:38 -0600 (Wed, 13 Apr 2005) | 4 lines +r546 | rtprince | 2005-04-14 01:57:38 +0200 (Thu, 14 Apr 2005) | 4 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/frame.h @@ -37770,35 +38172,35 @@ local variables. This might be a first step towards true interactive support or caching modules from one run to another. ------------------------------------------------------------------------ -r545 | jcbowman | 2005-04-13 11:07:58 -0600 (Wed, 13 Apr 2005) | 2 lines +r545 | jcbowman | 2005-04-13 19:07:58 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.74cvs. ------------------------------------------------------------------------ -r544 | jcbowman | 2005-04-13 11:00:39 -0600 (Wed, 13 Apr 2005) | 2 lines +r544 | jcbowman | 2005-04-13 19:00:39 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Make nullpath static. ------------------------------------------------------------------------ -r543 | jcbowman | 2005-04-13 09:58:55 -0600 (Wed, 13 Apr 2005) | 2 lines +r543 | jcbowman | 2005-04-13 17:58:55 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor updates. ------------------------------------------------------------------------ -r542 | jcbowman | 2005-04-13 09:44:54 -0600 (Wed, 13 Apr 2005) | 2 lines +r542 | jcbowman | 2005-04-13 17:44:54 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Push constructed objects as pointers. ------------------------------------------------------------------------ -r541 | jcbowman | 2005-04-13 09:04:07 -0600 (Wed, 13 Apr 2005) | 2 lines +r541 | jcbowman | 2005-04-13 17:04:07 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.cc M /trunk/asymptote/inst.h @@ -37806,7 +38208,7 @@ Changed paths: Fixed sign of virtual assembly code line numbers. ------------------------------------------------------------------------ -r540 | jcbowman | 2005-04-13 06:21:17 -0600 (Wed, 13 Apr 2005) | 2 lines +r540 | jcbowman | 2005-04-13 14:21:17 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.cc M /trunk/asymptote/inst.h @@ -37815,7 +38217,7 @@ Changed paths: Fixed more warning messages. ------------------------------------------------------------------------ -r539 | jcbowman | 2005-04-13 05:36:59 -0600 (Wed, 13 Apr 2005) | 6 lines +r539 | jcbowman | 2005-04-13 13:36:59 +0200 (Wed, 13 Apr 2005) | 6 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/castop.h @@ -37836,7 +38238,7 @@ Use string.empty() everywhere. Minor formatting changes. ------------------------------------------------------------------------ -r538 | rtprince | 2005-04-13 00:36:07 -0600 (Wed, 13 Apr 2005) | 2 lines +r538 | rtprince | 2005-04-13 08:36:07 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.cc M /trunk/asymptote/inst.h @@ -37845,7 +38247,7 @@ Changed paths: Don't use boost iterator facade. ------------------------------------------------------------------------ -r537 | rtprince | 2005-04-13 00:16:15 -0600 (Wed, 13 Apr 2005) | 3 lines +r537 | rtprince | 2005-04-13 08:16:15 +0200 (Wed, 13 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/item.h @@ -37853,14 +38255,14 @@ vm::item doesn't need to be memory::managed, since vm::frame is memory::managed_array. ------------------------------------------------------------------------ -r536 | rtprince | 2005-04-13 00:04:31 -0600 (Wed, 13 Apr 2005) | 2 lines +r536 | rtprince | 2005-04-13 08:04:31 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/locate.cc Fix absolute filename handling. ------------------------------------------------------------------------ -r535 | jcbowman | 2005-04-12 23:41:53 -0600 (Tue, 12 Apr 2005) | 2 lines +r535 | jcbowman | 2005-04-13 07:41:53 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/castop.h @@ -37870,7 +38272,7 @@ Changed paths: Fixed more cxx warnings. ------------------------------------------------------------------------ -r534 | jcbowman | 2005-04-12 23:21:02 -0600 (Tue, 12 Apr 2005) | 2 lines +r534 | jcbowman | 2005-04-13 07:21:02 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/castop.h @@ -37883,7 +38285,7 @@ Changed paths: Fixed cxx warning messages. ------------------------------------------------------------------------ -r533 | jcbowman | 2005-04-12 22:42:21 -0600 (Tue, 12 Apr 2005) | 2 lines +r533 | jcbowman | 2005-04-13 06:42:21 +0200 (Wed, 13 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/fileio.h @@ -37893,14 +38295,14 @@ Changed paths: Further minor optimizations. ------------------------------------------------------------------------ -r532 | jcbowman | 2005-04-12 15:36:18 -0600 (Tue, 12 Apr 2005) | 2 lines +r532 | jcbowman | 2005-04-12 23:36:18 +0200 (Tue, 12 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/item.h Removed unused friend declaration. ------------------------------------------------------------------------ -r531 | jcbowman | 2005-04-12 14:26:17 -0600 (Tue, 12 Apr 2005) | 2 lines +r531 | jcbowman | 2005-04-12 22:26:17 +0200 (Tue, 12 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.h M /trunk/asymptote/item.h @@ -37909,7 +38311,7 @@ Changed paths: Replaced boost::any with a much faster type-safe union. ------------------------------------------------------------------------ -r530 | rtprince | 2005-04-12 14:17:09 -0600 (Tue, 12 Apr 2005) | 2 lines +r530 | rtprince | 2005-04-12 22:17:09 +0200 (Tue, 12 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/mathop.h @@ -37917,7 +38319,7 @@ Changed paths: mathop's don't need vm::stack. ------------------------------------------------------------------------ -r529 | rtprince | 2005-04-12 14:08:33 -0600 (Tue, 12 Apr 2005) | 2 lines +r529 | rtprince | 2005-04-12 22:08:33 +0200 (Tue, 12 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/castop.h @@ -37932,14 +38334,14 @@ Changed paths: Move curPos out of vm::stack. ------------------------------------------------------------------------ -r528 | rtprince | 2005-04-11 19:21:59 -0600 (Mon, 11 Apr 2005) | 2 lines +r528 | rtprince | 2005-04-12 03:21:59 +0200 (Tue, 12 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Push empty item instead of (void*)0. ------------------------------------------------------------------------ -r527 | rtprince | 2005-04-11 14:42:08 -0600 (Mon, 11 Apr 2005) | 2 lines +r527 | rtprince | 2005-04-11 22:42:08 +0200 (Mon, 11 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/camp.l @@ -37950,14 +38352,14 @@ Changed paths: Seperate parser code from camp.l and genv.cc into parser.{h,cc}. ------------------------------------------------------------------------ -r526 | rtprince | 2005-04-11 14:40:13 -0600 (Mon, 11 Apr 2005) | 2 lines +r526 | rtprince | 2005-04-11 22:40:13 +0200 (Mon, 11 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Change ./ to . in searchPath to avoid .//file.asy in messages. ------------------------------------------------------------------------ -r525 | rtprince | 2005-04-11 14:28:03 -0600 (Mon, 11 Apr 2005) | 2 lines +r525 | rtprince | 2005-04-11 22:28:03 +0200 (Mon, 11 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/genv.cc @@ -37970,7 +38372,7 @@ Changed paths: Reimplement locateFile using std::string. ------------------------------------------------------------------------ -r524 | jcbowman | 2005-04-09 21:20:51 -0600 (Sat, 09 Apr 2005) | 2 lines +r524 | jcbowman | 2005-04-10 05:20:51 +0200 (Sun, 10 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -37981,7 +38383,7 @@ Changed paths: Fixed texpreamble for multiple files and latex asy environment. ------------------------------------------------------------------------ -r523 | jcbowman | 2005-04-09 16:26:50 -0600 (Sat, 09 Apr 2005) | 2 lines +r523 | jcbowman | 2005-04-10 00:26:50 +0200 (Sun, 10 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/metapost.asy M /trunk/asymptote/examples/conicurv.asy @@ -37989,7 +38391,7 @@ Changed paths: Removed nonscalable fonts. ------------------------------------------------------------------------ -r522 | jcbowman | 2005-04-08 23:52:01 -0600 (Fri, 08 Apr 2005) | 7 lines +r522 | jcbowman | 2005-04-09 07:52:01 +0200 (Sat, 09 Apr 2005) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -38003,14 +38405,14 @@ box(frame) and ellipse(frame) prepend to frame for filling with a background colour, as illustrated in hierarchy.asy. ------------------------------------------------------------------------ -r521 | jcbowman | 2005-04-08 14:54:13 -0600 (Fri, 08 Apr 2005) | 2 lines +r521 | jcbowman | 2005-04-08 22:54:13 +0200 (Fri, 08 Apr 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/hierarchy.asy Example of labelellipse. ------------------------------------------------------------------------ -r520 | jcbowman | 2005-04-08 14:52:47 -0600 (Fri, 08 Apr 2005) | 3 lines +r520 | jcbowman | 2005-04-08 22:52:47 +0200 (Fri, 08 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -38019,7 +38421,7 @@ Added ellipse(frame) and labelellipse(frame,string,position). Renamed bbox(frame) to box(frame) for consistency. ------------------------------------------------------------------------ -r519 | jcbowman | 2005-04-08 14:34:04 -0600 (Fri, 08 Apr 2005) | 3 lines +r519 | jcbowman | 2005-04-08 22:34:04 +0200 (Fri, 08 Apr 2005) | 3 lines Changed paths: M /trunk/asymptote/inst.h @@ -38027,28 +38429,28 @@ Workaround for bug in build 1671 of gcc (version 3.3 20030304) under Darwin (MacOS). ------------------------------------------------------------------------ -r518 | rtprince | 2005-04-06 20:39:19 -0600 (Wed, 06 Apr 2005) | 2 lines +r518 | rtprince | 2005-04-07 04:39:19 +0200 (Thu, 07 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.cc Cache *ip as reference rather than pointer. ------------------------------------------------------------------------ -r517 | jcbowman | 2005-04-06 15:46:08 -0600 (Wed, 06 Apr 2005) | 2 lines +r517 | jcbowman | 2005-04-06 23:46:08 +0200 (Wed, 06 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc Added check to interrupt handler. ------------------------------------------------------------------------ -r516 | jcbowman | 2005-04-06 14:01:41 -0600 (Wed, 06 Apr 2005) | 2 lines +r516 | jcbowman | 2005-04-06 22:01:41 +0200 (Wed, 06 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.h Fixed cxx warning messages. ------------------------------------------------------------------------ -r515 | jcbowman | 2005-04-06 13:47:25 -0600 (Wed, 06 Apr 2005) | 2 lines +r515 | jcbowman | 2005-04-06 21:47:25 +0200 (Wed, 06 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/camperror.h M /trunk/asymptote/errormsg.cc @@ -38059,14 +38461,14 @@ Changed paths: Optimized main loop. ------------------------------------------------------------------------ -r514 | rtprince | 2005-04-06 00:20:40 -0600 (Wed, 06 Apr 2005) | 2 lines +r514 | rtprince | 2005-04-06 08:20:40 +0200 (Wed, 06 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.cc Use error from stack.cc instead of calling em->runtime directly. ------------------------------------------------------------------------ -r513 | jcbowman | 2005-04-05 22:53:43 -0600 (Tue, 05 Apr 2005) | 2 lines +r513 | jcbowman | 2005-04-06 06:53:43 +0200 (Wed, 06 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.h M /trunk/asymptote/stack.cc @@ -38075,28 +38477,28 @@ Changed paths: minor optimizations ------------------------------------------------------------------------ -r512 | jcbowman | 2005-04-05 19:31:54 -0600 (Tue, 05 Apr 2005) | 2 lines +r512 | jcbowman | 2005-04-06 03:31:54 +0200 (Wed, 06 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc Reformatted. ------------------------------------------------------------------------ -r511 | rtprince | 2005-04-05 11:46:44 -0600 (Tue, 05 Apr 2005) | 2 lines +r511 | rtprince | 2005-04-05 19:46:44 +0200 (Tue, 05 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc Operator precedence fix. ------------------------------------------------------------------------ -r510 | rtprince | 2005-04-05 08:42:47 -0600 (Tue, 05 Apr 2005) | 2 lines +r510 | rtprince | 2005-04-05 16:42:47 +0200 (Tue, 05 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.h We don't use stack:ip any more. ------------------------------------------------------------------------ -r509 | rtprince | 2005-04-05 08:39:25 -0600 (Tue, 05 Apr 2005) | 2 lines +r509 | rtprince | 2005-04-05 16:39:25 +0200 (Tue, 05 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -38108,14 +38510,14 @@ Changed paths: Reapply curPos patch. ------------------------------------------------------------------------ -r508 | rtprince | 2005-04-05 08:38:12 -0600 (Tue, 05 Apr 2005) | 2 lines +r508 | rtprince | 2005-04-05 16:38:12 +0200 (Tue, 05 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc Fix interactive error reporting. ------------------------------------------------------------------------ -r507 | rtprince | 2005-04-05 01:15:37 -0600 (Tue, 05 Apr 2005) | 2 lines +r507 | rtprince | 2005-04-05 09:15:37 +0200 (Tue, 05 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/errormsg.cc @@ -38124,21 +38526,21 @@ Changed paths: Track line numbers in position instead of fileinfo. ------------------------------------------------------------------------ -r506 | rtprince | 2005-04-05 01:13:43 -0600 (Tue, 05 Apr 2005) | 2 lines +r506 | rtprince | 2005-04-05 09:13:43 +0200 (Tue, 05 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc Don't access program.encode directly. ------------------------------------------------------------------------ -r505 | jcbowman | 2005-04-04 14:22:06 -0600 (Mon, 04 Apr 2005) | 2 lines +r505 | jcbowman | 2005-04-04 22:22:06 +0200 (Mon, 04 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc prepend should insert after beginning of layer ------------------------------------------------------------------------ -r504 | jcbowman | 2005-04-04 14:07:22 -0600 (Mon, 04 Apr 2005) | 4 lines +r504 | jcbowman | 2005-04-04 22:07:22 +0200 (Mon, 04 Apr 2005) | 4 lines Changed paths: M /trunk/asymptote/errormsg.cc M /trunk/asymptote/picture.cc @@ -38150,7 +38552,7 @@ Make empty() use nodes.empty() rather than nodes.size(). STL list portability fixes. ------------------------------------------------------------------------ -r503 | jcbowman | 2005-04-04 10:29:54 -0600 (Mon, 04 Apr 2005) | 2 lines +r503 | jcbowman | 2005-04-04 18:29:54 +0200 (Mon, 04 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -38158,14 +38560,14 @@ Changed paths: Ignore crop() on an empty picture. ------------------------------------------------------------------------ -r502 | jcbowman | 2005-04-04 00:21:02 -0600 (Mon, 04 Apr 2005) | 2 lines +r502 | jcbowman | 2005-04-04 08:21:02 +0200 (Mon, 04 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.73cvs. ------------------------------------------------------------------------ -r501 | jcbowman | 2005-04-03 23:32:55 -0600 (Sun, 03 Apr 2005) | 2 lines +r501 | jcbowman | 2005-04-04 07:32:55 +0200 (Mon, 04 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc M /trunk/asymptote/errormsg.h @@ -38173,7 +38575,7 @@ Changed paths: Removed spurious blank tracing lines. ------------------------------------------------------------------------ -r500 | jcbowman | 2005-04-03 23:06:37 -0600 (Sun, 03 Apr 2005) | 7 lines +r500 | jcbowman | 2005-04-04 07:06:37 +0200 (Mon, 04 Apr 2005) | 7 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -38193,7 +38595,7 @@ Avoid the need for the lastpos variable by moving stack s out of main loop in main.cc. ------------------------------------------------------------------------ -r499 | jcbowman | 2005-04-03 21:33:06 -0600 (Sun, 03 Apr 2005) | 2 lines +r499 | jcbowman | 2005-04-04 05:33:06 +0200 (Mon, 04 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -38205,7 +38607,7 @@ Changed paths: Reinstated new file position code w/segmentation fault bug fixed. ------------------------------------------------------------------------ -r498 | jcbowman | 2005-04-03 20:18:15 -0600 (Sun, 03 Apr 2005) | 2 lines +r498 | jcbowman | 2005-04-04 04:18:15 +0200 (Mon, 04 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -38218,14 +38620,14 @@ Changed paths: Backout 2005-03-17 runtime file position changes to avoid a segmentation fault. ------------------------------------------------------------------------ -r497 | jcbowman | 2005-04-02 21:38:47 -0700 (Sat, 02 Apr 2005) | 2 lines +r497 | jcbowman | 2005-04-03 06:38:47 +0200 (Sun, 03 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Check for space format specifier as well as plus in format(string,real). ------------------------------------------------------------------------ -r496 | jcbowman | 2005-04-02 21:21:30 -0700 (Sat, 02 Apr 2005) | 5 lines +r496 | jcbowman | 2005-04-03 06:21:30 +0200 (Sun, 03 Apr 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -38237,14 +38639,14 @@ and frame add routines. Updated documentation. ------------------------------------------------------------------------ -r495 | jcbowman | 2005-04-02 16:29:41 -0700 (Sat, 02 Apr 2005) | 2 lines +r495 | jcbowman | 2005-04-03 01:29:41 +0200 (Sun, 03 Apr 2005) | 2 lines Changed paths: A /trunk/asymptote/drawgroup.h Added missing file. ------------------------------------------------------------------------ -r494 | jcbowman | 2005-04-02 16:17:16 -0700 (Sat, 02 Apr 2005) | 4 lines +r494 | jcbowman | 2005-04-03 01:17:16 +0200 (Sun, 03 Apr 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -38268,7 +38670,7 @@ to be deconstructed (or grouped with begingroup/endgroup). Deconstruction now works properly with clipping and erasing. ------------------------------------------------------------------------ -r493 | jcbowman | 2005-04-01 21:22:03 -0700 (Fri, 01 Apr 2005) | 4 lines +r493 | jcbowman | 2005-04-02 06:22:03 +0200 (Sat, 02 Apr 2005) | 4 lines Changed paths: M /trunk/asymptote/drawelement.h M /trunk/asymptote/drawlabel.cc @@ -38280,7 +38682,7 @@ Check that drawLabel::bounds is called before drawLabel::write. Remove unused setup code. ------------------------------------------------------------------------ -r492 | jcbowman | 2005-04-01 11:37:28 -0700 (Fri, 01 Apr 2005) | 7 lines +r492 | jcbowman | 2005-04-01 20:37:28 +0200 (Fri, 01 Apr 2005) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -38295,14 +38697,14 @@ Added warning about erasing deconstructed pictures. Updated lineargraph and documentation to use attach. ------------------------------------------------------------------------ -r491 | jcbowman | 2005-03-31 22:14:38 -0700 (Thu, 31 Mar 2005) | 2 lines +r491 | jcbowman | 2005-04-01 07:14:38 +0200 (Fri, 01 Apr 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Reset bounding box when prepending. ------------------------------------------------------------------------ -r490 | jcbowman | 2005-03-31 21:47:16 -0700 (Thu, 31 Mar 2005) | 12 lines +r490 | jcbowman | 2005-04-01 06:47:16 +0200 (Fri, 01 Apr 2005) | 12 lines Changed paths: M /trunk/asymptote/base/drawtree.asy M /trunk/asymptote/base/graph.asy @@ -38327,7 +38729,7 @@ Simplified bboxstack handling. Updated "errors" list. ------------------------------------------------------------------------ -r489 | jcbowman | 2005-03-31 14:37:05 -0700 (Thu, 31 Mar 2005) | 2 lines +r489 | jcbowman | 2005-03-31 23:37:05 +0200 (Thu, 31 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -38338,7 +38740,7 @@ Changed paths: Revert configuration to only require boost headers. ------------------------------------------------------------------------ -r488 | jcbowman | 2005-03-31 12:15:17 -0700 (Thu, 31 Mar 2005) | 2 lines +r488 | jcbowman | 2005-03-31 21:15:17 +0200 (Thu, 31 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/errormsg.cc @@ -38347,7 +38749,7 @@ Changed paths: Backout boost fixes. ------------------------------------------------------------------------ -r487 | rtprince | 2005-03-31 12:08:04 -0700 (Thu, 31 Mar 2005) | 2 lines +r487 | rtprince | 2005-03-31 21:08:04 +0200 (Thu, 31 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/errormsg.cc @@ -38360,7 +38762,7 @@ Changed paths: Revert boost::filesystem changes. ------------------------------------------------------------------------ -r486 | jcbowman | 2005-03-31 00:22:29 -0700 (Thu, 31 Mar 2005) | 9 lines +r486 | jcbowman | 2005-03-31 09:22:29 +0200 (Thu, 31 Mar 2005) | 9 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/doc/asymptote.texi @@ -38375,21 +38777,21 @@ Hard coded 2x2 and 3x3 determinants. Update documentation. ------------------------------------------------------------------------ -r485 | jcbowman | 2005-03-30 18:06:36 -0700 (Wed, 30 Mar 2005) | 2 lines +r485 | jcbowman | 2005-03-31 03:06:36 +0200 (Thu, 31 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/libboost/operations_posix_windows.cc Fixed cxx warning message. ------------------------------------------------------------------------ -r484 | jcbowman | 2005-03-30 17:54:42 -0700 (Wed, 30 Mar 2005) | 2 lines +r484 | jcbowman | 2005-03-31 02:54:42 +0200 (Thu, 31 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Minor updates. ------------------------------------------------------------------------ -r483 | jcbowman | 2005-03-30 17:15:06 -0700 (Wed, 30 Mar 2005) | 3 lines +r483 | jcbowman | 2005-03-31 02:15:06 +0200 (Thu, 31 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -38404,21 +38806,21 @@ Added portable version of boost::filesystem for systems without boost library, in particular for linux-alpha cxx compiler. ------------------------------------------------------------------------ -r482 | jcbowman | 2005-03-28 20:22:47 -0700 (Mon, 28 Mar 2005) | 2 lines +r482 | jcbowman | 2005-03-29 05:22:47 +0200 (Tue, 29 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation. ------------------------------------------------------------------------ -r481 | jcbowman | 2005-03-28 20:06:24 -0700 (Mon, 28 Mar 2005) | 2 lines +r481 | jcbowman | 2005-03-29 05:06:24 +0200 (Tue, 29 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Allow compatibility with older versions of autoconf. ------------------------------------------------------------------------ -r480 | jcbowman | 2005-03-28 16:11:35 -0700 (Mon, 28 Mar 2005) | 9 lines +r480 | jcbowman | 2005-03-29 01:11:35 +0200 (Tue, 29 Mar 2005) | 9 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/graph.asy @@ -38442,7 +38844,7 @@ Generalized histogram and changed order of arguments of frequency and histogram Fixed problems with Log(false,false). ------------------------------------------------------------------------ -r479 | jcbowman | 2005-03-25 10:56:40 -0700 (Fri, 25 Mar 2005) | 4 lines +r479 | jcbowman | 2005-03-25 18:56:40 +0100 (Fri, 25 Mar 2005) | 4 lines Changed paths: M /trunk/asymptote/drawclipbegin.h M /trunk/asymptote/drawclipend.h @@ -38460,7 +38862,7 @@ Cache drawelement bbox contributions where possible. Make bboxstack local to picture frame. ------------------------------------------------------------------------ -r478 | rtprince | 2005-03-24 22:46:41 -0700 (Thu, 24 Mar 2005) | 2 lines +r478 | rtprince | 2005-03-25 06:46:41 +0100 (Fri, 25 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc M /trunk/asymptote/doc/.cvsignore @@ -38468,14 +38870,14 @@ Changed paths: We generate .png's. ------------------------------------------------------------------------ -r477 | rtprince | 2005-03-24 19:51:59 -0700 (Thu, 24 Mar 2005) | 2 lines +r477 | rtprince | 2005-03-25 03:51:59 +0100 (Fri, 25 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/genv.h Don't have symbolToFile anymore. ------------------------------------------------------------------------ -r476 | rtprince | 2005-03-24 18:00:39 -0700 (Thu, 24 Mar 2005) | 3 lines +r476 | rtprince | 2005-03-25 02:00:39 +0100 (Fri, 25 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/camp.l @@ -38492,7 +38894,7 @@ Use boost::filesystem for find files to parse. Move file locating logic to locate.{cc,h}. ------------------------------------------------------------------------ -r475 | jcbowman | 2005-03-24 17:34:14 -0700 (Thu, 24 Mar 2005) | 2 lines +r475 | jcbowman | 2005-03-25 01:34:14 +0100 (Fri, 25 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/lineargraph.asy M /trunk/asymptote/doc/lineargraph2.asy @@ -38500,7 +38902,7 @@ Changed paths: Simplified legend examples. ------------------------------------------------------------------------ -r474 | jcbowman | 2005-03-24 07:35:06 -0700 (Thu, 24 Mar 2005) | 2 lines +r474 | jcbowman | 2005-03-24 15:35:06 +0100 (Thu, 24 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/bigsquare.asy @@ -38531,21 +38933,21 @@ Changed paths: Workaround makeinfo indentation bug. ------------------------------------------------------------------------ -r473 | jcbowman | 2005-03-24 07:02:51 -0700 (Thu, 24 Mar 2005) | 2 lines +r473 | jcbowman | 2005-03-24 15:02:51 +0100 (Thu, 24 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typos. ------------------------------------------------------------------------ -r472 | jcbowman | 2005-03-23 19:49:30 -0700 (Wed, 23 Mar 2005) | 2 lines +r472 | jcbowman | 2005-03-24 03:49:30 +0100 (Thu, 24 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/labelbox.asy Simplified example. ------------------------------------------------------------------------ -r471 | rtprince | 2005-03-23 19:13:13 -0700 (Wed, 23 Mar 2005) | 3 lines +r471 | rtprince | 2005-03-24 03:13:13 +0100 (Thu, 24 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/genv.cc M /trunk/asymptote/genv.h @@ -38555,35 +38957,35 @@ Have main load plain.asy and ${outname}.gui explicitly, rather than doing it implicitly in genv::genv(). ------------------------------------------------------------------------ -r470 | jcbowman | 2005-03-23 13:25:54 -0700 (Wed, 23 Mar 2005) | 2 lines +r470 | jcbowman | 2005-03-23 21:25:54 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy optimized crop() ------------------------------------------------------------------------ -r469 | rtprince | 2005-03-23 10:14:24 -0700 (Wed, 23 Mar 2005) | 2 lines +r469 | rtprince | 2005-03-23 18:14:24 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/castop.h *** empty log message *** ------------------------------------------------------------------------ -r468 | jcbowman | 2005-03-22 22:27:53 -0700 (Tue, 22 Mar 2005) | 2 lines +r468 | jcbowman | 2005-03-23 06:27:53 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.72cvs. ------------------------------------------------------------------------ -r467 | jcbowman | 2005-03-22 22:03:18 -0700 (Tue, 22 Mar 2005) | 2 lines +r467 | jcbowman | 2005-03-23 06:03:18 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Document leastsquare routine. ------------------------------------------------------------------------ -r466 | jcbowman | 2005-03-22 21:50:22 -0700 (Tue, 22 Mar 2005) | 2 lines +r466 | jcbowman | 2005-03-23 05:50:22 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: D /trunk/asymptote/knotlist.cc D /trunk/asymptote/knotlist.h @@ -38593,7 +38995,7 @@ Changed paths: Removed obsolete files. ------------------------------------------------------------------------ -r465 | jcbowman | 2005-03-22 21:32:58 -0700 (Tue, 22 Mar 2005) | 2 lines +r465 | jcbowman | 2005-03-23 05:32:58 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -38604,7 +39006,7 @@ Changed paths: Documented save() and restore(). Renamed linetest.asy to lines.asy. ------------------------------------------------------------------------ -r464 | jcbowman | 2005-03-22 20:51:41 -0700 (Tue, 22 Mar 2005) | 2 lines +r464 | jcbowman | 2005-03-23 04:51:41 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/doc/asymptote.texi @@ -38613,14 +39015,14 @@ Changed paths: Added and documented Andy's drawline routine. ------------------------------------------------------------------------ -r463 | hammera | 2005-03-22 20:43:51 -0700 (Tue, 22 Mar 2005) | 2 lines +r463 | hammera | 2005-03-23 04:43:51 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added saving and restoring of the graphics state. ------------------------------------------------------------------------ -r462 | jcbowman | 2005-03-22 20:14:57 -0700 (Tue, 22 Mar 2005) | 2 lines +r462 | jcbowman | 2005-03-23 04:14:57 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/picture.cc @@ -38629,7 +39031,7 @@ Changed paths: Cache picture bounds. ------------------------------------------------------------------------ -r461 | jcbowman | 2005-03-22 16:30:09 -0700 (Tue, 22 Mar 2005) | 2 lines +r461 | jcbowman | 2005-03-23 00:30:09 +0100 (Wed, 23 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -38638,7 +39040,7 @@ Changed paths: Reinstated crop; use current value of userMin/userMax in xlimits and ylimits. ------------------------------------------------------------------------ -r460 | jcbowman | 2005-03-22 14:05:30 -0700 (Tue, 22 Mar 2005) | 2 lines +r460 | jcbowman | 2005-03-22 22:05:30 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/histogram.asy @@ -38647,14 +39049,14 @@ Changed paths: Added further legend example. ------------------------------------------------------------------------ -r459 | rtprince | 2005-03-22 09:25:12 -0700 (Tue, 22 Mar 2005) | 2 lines +r459 | rtprince | 2005-03-22 17:25:12 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/pool.h cxx doesn't like const objects in containers. ------------------------------------------------------------------------ -r458 | jcbowman | 2005-03-22 08:21:43 -0700 (Tue, 22 Mar 2005) | 2 lines +r458 | jcbowman | 2005-03-22 16:21:43 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/lineargraph2.asy @@ -38662,21 +39064,21 @@ Changed paths: Document alternative for legend fitting. ------------------------------------------------------------------------ -r457 | jcbowman | 2005-03-21 23:10:38 -0700 (Mon, 21 Mar 2005) | 2 lines +r457 | jcbowman | 2005-03-22 07:10:38 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc More cxx warnings fixed. ------------------------------------------------------------------------ -r456 | jcbowman | 2005-03-21 22:56:46 -0700 (Mon, 21 Mar 2005) | 2 lines +r456 | jcbowman | 2005-03-22 06:56:46 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/knot.cc Fixed g++ warning messages. ------------------------------------------------------------------------ -r455 | jcbowman | 2005-03-21 22:54:01 -0700 (Mon, 21 Mar 2005) | 2 lines +r455 | jcbowman | 2005-03-22 06:54:01 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/exp.h @@ -38687,7 +39089,7 @@ Changed paths: Fixed warnings/errors under cxx. ------------------------------------------------------------------------ -r454 | rtprince | 2005-03-21 22:37:08 -0700 (Mon, 21 Mar 2005) | 2 lines +r454 | rtprince | 2005-03-22 06:37:08 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/inst.h A /trunk/asymptote/item.h @@ -38695,14 +39097,14 @@ Changed paths: Move vm::item to its own file. ------------------------------------------------------------------------ -r453 | rtprince | 2005-03-21 22:32:30 -0700 (Mon, 21 Mar 2005) | 2 lines +r453 | rtprince | 2005-03-22 06:32:30 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/types.h Header file cleanup. ------------------------------------------------------------------------ -r452 | jcbowman | 2005-03-21 22:17:08 -0700 (Mon, 21 Mar 2005) | 6 lines +r452 | jcbowman | 2005-03-22 06:17:08 +0100 (Tue, 22 Mar 2005) | 6 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/base/plain.asy @@ -38718,28 +39120,28 @@ explicitly added to the picture, for example, with add(point(E),legend(20E)); Palette also now returns a new picture. ------------------------------------------------------------------------ -r451 | jcbowman | 2005-03-21 21:02:56 -0700 (Mon, 21 Mar 2005) | 2 lines +r451 | jcbowman | 2005-03-22 05:02:56 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/xasy Updated move limits to be compatible with SW alignment. ------------------------------------------------------------------------ -r450 | rtprince | 2005-03-21 16:28:54 -0700 (Mon, 21 Mar 2005) | 2 lines +r450 | rtprince | 2005-03-22 00:28:54 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Use free function vm::pop instead of vm::stack::pop. ------------------------------------------------------------------------ -r449 | rtprince | 2005-03-21 16:27:31 -0700 (Mon, 21 Mar 2005) | 2 lines +r449 | rtprince | 2005-03-22 00:27:31 +0100 (Tue, 22 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/types.cc std::equal is much faster than explicit iteration. ------------------------------------------------------------------------ -r448 | hammera | 2005-03-21 12:31:47 -0700 (Mon, 21 Mar 2005) | 4 lines +r448 | hammera | 2005-03-21 20:31:47 +0100 (Mon, 21 Mar 2005) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/plain.asy @@ -38770,7 +39172,7 @@ Replaced the implementation of solving guides into paths. Refactored the abstract syntax of operators. ------------------------------------------------------------------------ -r447 | jcbowman | 2005-03-21 11:04:22 -0700 (Mon, 21 Mar 2005) | 4 lines +r447 | jcbowman | 2005-03-21 19:04:22 +0100 (Mon, 21 Mar 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -38783,21 +39185,21 @@ Changed marker filltype default to NoFill. Introduced Above/Below and Crop/NoCrop variables. ------------------------------------------------------------------------ -r446 | jcbowman | 2005-03-21 11:03:57 -0700 (Mon, 21 Mar 2005) | 2 lines +r446 | jcbowman | 2005-03-21 19:03:57 +0100 (Mon, 21 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc Code cleanup. ------------------------------------------------------------------------ -r445 | rtprince | 2005-03-21 10:06:20 -0700 (Mon, 21 Mar 2005) | 2 lines +r445 | rtprince | 2005-03-21 18:06:20 +0100 (Mon, 21 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/pool.cc memory::insert(poolitem) was eating most of the runtime. Use std::deque instead of std::set. ------------------------------------------------------------------------ -r444 | jcbowman | 2005-03-21 02:23:10 -0700 (Mon, 21 Mar 2005) | 6 lines +r444 | jcbowman | 2005-03-21 10:23:10 +0100 (Mon, 21 Mar 2005) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -38820,14 +39222,14 @@ Fixed xlimits and ylimits; removed obsolete crop() routine. Updated documentation. ------------------------------------------------------------------------ -r443 | jcbowman | 2005-03-20 18:48:04 -0700 (Sun, 20 Mar 2005) | 2 lines +r443 | jcbowman | 2005-03-21 02:48:04 +0100 (Mon, 21 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/cardiod.asy Draw axis on top of cardiod. ------------------------------------------------------------------------ -r442 | jcbowman | 2005-03-20 17:33:14 -0700 (Sun, 20 Mar 2005) | 5 lines +r442 | jcbowman | 2005-03-21 01:33:14 +0100 (Mon, 21 Mar 2005) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -38848,7 +39250,7 @@ By default, draw axes before other objects in current layer. Fixed frame alignment scaling. ------------------------------------------------------------------------ -r441 | rtprince | 2005-03-20 17:32:39 -0700 (Sun, 20 Mar 2005) | 2 lines +r441 | rtprince | 2005-03-21 01:32:39 +0100 (Mon, 21 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/mathop.h @@ -38856,14 +39258,14 @@ Changed paths: Add include guards. ------------------------------------------------------------------------ -r440 | jcbowman | 2005-03-20 17:12:50 -0700 (Sun, 20 Mar 2005) | 2 lines +r440 | jcbowman | 2005-03-21 01:12:50 +0100 (Mon, 21 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/stats.asy Added least-squares fit. ------------------------------------------------------------------------ -r439 | rtprince | 2005-03-20 17:03:45 -0700 (Sun, 20 Mar 2005) | 2 lines +r439 | rtprince | 2005-03-21 01:03:45 +0100 (Mon, 21 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -38875,7 +39277,7 @@ Changed paths: Use free function vm::pop instead of vm::stack::pop. ------------------------------------------------------------------------ -r438 | jcbowman | 2005-03-19 01:26:51 -0700 (Sat, 19 Mar 2005) | 7 lines +r438 | jcbowman | 2005-03-19 09:26:51 +0100 (Sat, 19 Mar 2005) | 7 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -38891,7 +39293,7 @@ Omit "runtime" from error(). Added frame marker(path g, pen p=currentpen). ------------------------------------------------------------------------ -r437 | rtprince | 2005-03-18 15:41:29 -0700 (Fri, 18 Mar 2005) | 2 lines +r437 | rtprince | 2005-03-18 23:41:29 +0100 (Fri, 18 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/absyn.h M /trunk/asymptote/access.h @@ -38915,7 +39317,7 @@ Changed paths: Rename namespace mempool to memory. ------------------------------------------------------------------------ -r436 | rtprince | 2005-03-18 15:23:24 -0700 (Fri, 18 Mar 2005) | 2 lines +r436 | rtprince | 2005-03-18 23:23:24 +0100 (Fri, 18 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/castop.h M /trunk/asymptote/mathop.h @@ -38923,7 +39325,7 @@ Changed paths: Add file headers to castop.h, mathop.h. ------------------------------------------------------------------------ -r435 | rtprince | 2005-03-18 15:17:06 -0700 (Fri, 18 Mar 2005) | 3 lines +r435 | rtprince | 2005-03-18 23:17:06 +0100 (Fri, 18 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -38941,14 +39343,14 @@ Move all template runtime code into dedicated files castop.h and mathop.h. Cleanup all refrences to stack.h, so it isn't needlessly included. ------------------------------------------------------------------------ -r434 | rtprince | 2005-03-18 14:33:24 -0700 (Fri, 18 Mar 2005) | 2 lines +r434 | rtprince | 2005-03-18 22:33:24 +0100 (Fri, 18 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/drawelement.h Header include cleanup. ------------------------------------------------------------------------ -r433 | jcbowman | 2005-03-17 23:08:01 -0700 (Thu, 17 Mar 2005) | 4 lines +r433 | jcbowman | 2005-03-18 07:08:01 +0100 (Fri, 18 Mar 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -38958,7 +39360,7 @@ Allow one to turn on autoscaling again with xlimits(infinity,infinity), etc. Accept an overall scaling of frame alignment shifts. ------------------------------------------------------------------------ -r432 | jcbowman | 2005-03-17 22:32:30 -0700 (Thu, 17 Mar 2005) | 4 lines +r432 | jcbowman | 2005-03-18 06:32:30 +0100 (Fri, 18 Mar 2005) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -38968,7 +39370,7 @@ Fixed interaction of new automin/automax scale flags with xlimits/ylimits. Use a small tick by default for unlabelled intermediate decade ticks. ------------------------------------------------------------------------ -r431 | rtprince | 2005-03-17 16:41:41 -0700 (Thu, 17 Mar 2005) | 2 lines +r431 | rtprince | 2005-03-18 00:41:41 +0100 (Fri, 18 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.cc M /trunk/asymptote/stack.h @@ -38976,7 +39378,7 @@ Changed paths: Remove UNALIAS, since it is no longer needed. ------------------------------------------------------------------------ -r430 | rtprince | 2005-03-17 16:33:16 -0700 (Thu, 17 Mar 2005) | 2 lines +r430 | rtprince | 2005-03-18 00:33:16 +0100 (Fri, 18 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -38989,7 +39391,7 @@ Changed paths: Simplify runtime file position reporting. ------------------------------------------------------------------------ -r429 | rtprince | 2005-03-17 15:26:35 -0700 (Thu, 17 Mar 2005) | 2 lines +r429 | rtprince | 2005-03-17 23:26:35 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/stack.cc M /trunk/asymptote/stack.h @@ -38997,7 +39399,7 @@ Changed paths: Start refactoring stack::run. ------------------------------------------------------------------------ -r428 | rtprince | 2005-03-17 15:24:34 -0700 (Thu, 17 Mar 2005) | 2 lines +r428 | rtprince | 2005-03-17 23:24:34 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/genv.cc @@ -39009,7 +39411,7 @@ Changed paths: Replace inst::alloc with inst::makefunc + inst::popcall. ------------------------------------------------------------------------ -r427 | rtprince | 2005-03-17 15:16:44 -0700 (Thu, 17 Mar 2005) | 2 lines +r427 | rtprince | 2005-03-17 23:16:44 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/access.cc M /trunk/asymptote/access.h @@ -39023,7 +39425,7 @@ Changed paths: stack::globals is obsolete. Get rid of it. ------------------------------------------------------------------------ -r426 | rtprince | 2005-03-16 22:38:04 -0700 (Wed, 16 Mar 2005) | 2 lines +r426 | rtprince | 2005-03-17 06:38:04 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/coder.h @@ -39032,42 +39434,42 @@ Changed paths: Fix return breakage. ------------------------------------------------------------------------ -r425 | jcbowman | 2005-03-16 22:09:05 -0700 (Wed, 16 Mar 2005) | 2 lines +r425 | jcbowman | 2005-03-17 06:09:05 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Don't draw logarithmic subticks by default when number of big ticks > 2. ------------------------------------------------------------------------ -r424 | jcbowman | 2005-03-16 22:01:16 -0700 (Wed, 16 Mar 2005) | 2 lines +r424 | jcbowman | 2005-03-17 06:01:16 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Show 10 subticks by default for thinned logarithmic graphs. ------------------------------------------------------------------------ -r423 | jcbowman | 2005-03-16 21:17:20 -0700 (Wed, 16 Mar 2005) | 2 lines +r423 | jcbowman | 2005-03-17 05:17:20 +0100 (Thu, 17 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.cc Fixed interactive line number reporting for files that are input. ------------------------------------------------------------------------ -r422 | jcbowman | 2005-03-16 15:32:31 -0700 (Wed, 16 Mar 2005) | 2 lines +r422 | jcbowman | 2005-03-16 23:32:31 +0100 (Wed, 16 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.h Fixed more cxx warning messages. ------------------------------------------------------------------------ -r421 | jcbowman | 2005-03-16 14:52:12 -0700 (Wed, 16 Mar 2005) | 2 lines +r421 | jcbowman | 2005-03-16 22:52:12 +0100 (Wed, 16 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.h Fixed cxx unused variable warning messages. ------------------------------------------------------------------------ -r420 | jcbowman | 2005-03-16 14:35:40 -0700 (Wed, 16 Mar 2005) | 11 lines +r420 | jcbowman | 2005-03-16 22:35:40 +0100 (Wed, 16 Mar 2005) | 11 lines Changed paths: M /trunk/asymptote/base/drawtree.asy M /trunk/asymptote/base/graph.asy @@ -39096,7 +39498,7 @@ filldrawabout to filldraw. Updated documentation; added examples of frame alignment and histograms. ------------------------------------------------------------------------ -r419 | rtprince | 2005-03-16 12:12:31 -0700 (Wed, 16 Mar 2005) | 3 lines +r419 | rtprince | 2005-03-16 20:12:31 +0100 (Wed, 16 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/coder.cc M /trunk/asymptote/dec.cc @@ -39115,7 +39517,7 @@ A record (and module) is just a function that allows you to access its variables after it is done. Implement them this way. ------------------------------------------------------------------------ -r418 | rtprince | 2005-03-16 10:44:40 -0700 (Wed, 16 Mar 2005) | 2 lines +r418 | rtprince | 2005-03-16 18:44:40 +0100 (Wed, 16 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/access.cc M /trunk/asymptote/access.h @@ -39124,14 +39526,14 @@ Changed paths: We don't use opcodes for functions any more, so remove instAccess. ------------------------------------------------------------------------ -r417 | jcbowman | 2005-03-15 22:39:30 -0700 (Tue, 15 Mar 2005) | 2 lines +r417 | jcbowman | 2005-03-16 06:39:30 +0100 (Wed, 16 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented bool empty(frame). ------------------------------------------------------------------------ -r416 | jcbowman | 2005-03-15 22:26:58 -0700 (Tue, 15 Mar 2005) | 2 lines +r416 | jcbowman | 2005-03-16 06:26:58 +0100 (Wed, 16 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/arrayop.h @@ -39148,7 +39550,7 @@ Changed paths: Changed arithmetic opcodes to functions. ------------------------------------------------------------------------ -r415 | rtprince | 2005-03-15 21:05:15 -0700 (Tue, 15 Mar 2005) | 2 lines +r415 | rtprince | 2005-03-16 05:05:15 +0100 (Wed, 16 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/absyn.h M /trunk/asymptote/stm.cc @@ -39157,7 +39559,7 @@ Changed paths: We don't treat files specially, so get rid of class. ------------------------------------------------------------------------ -r414 | jcbowman | 2005-03-15 13:54:29 -0700 (Tue, 15 Mar 2005) | 2 lines +r414 | jcbowman | 2005-03-15 21:54:29 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/errormsg.h M /trunk/asymptote/stack.cc @@ -39165,56 +39567,56 @@ Changed paths: Moved interrupt check into main loop. ------------------------------------------------------------------------ -r413 | rtprince | 2005-03-15 11:26:47 -0700 (Tue, 15 Mar 2005) | 2 lines +r413 | rtprince | 2005-03-15 19:26:47 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/symbol.h The only symbols should be coming from symbol::trans(). ------------------------------------------------------------------------ -r412 | rtprince | 2005-03-15 11:25:12 -0700 (Tue, 15 Mar 2005) | 2 lines +r412 | rtprince | 2005-03-15 19:25:12 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Use get<>() instead of any_cast<>(). ------------------------------------------------------------------------ -r411 | rtprince | 2005-03-15 11:10:03 -0700 (Tue, 15 Mar 2005) | 2 lines +r411 | rtprince | 2005-03-15 19:10:03 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/Compile Use $(OPTS) instead of $(OPT), which doesn't exsist. ------------------------------------------------------------------------ -r410 | jcbowman | 2005-03-14 21:49:40 -0700 (Mon, 14 Mar 2005) | 2 lines +r410 | jcbowman | 2005-03-15 05:49:40 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.71cvs. ------------------------------------------------------------------------ -r409 | jcbowman | 2005-03-14 21:33:12 -0700 (Mon, 14 Mar 2005) | 2 lines +r409 | jcbowman | 2005-03-15 05:33:12 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/fpu.h Added missing #endif. ------------------------------------------------------------------------ -r408 | jcbowman | 2005-03-14 21:32:02 -0700 (Mon, 14 Mar 2005) | 2 lines +r408 | jcbowman | 2005-03-15 05:32:02 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/fpu.h Fixed preprocessor conditionals. ------------------------------------------------------------------------ -r407 | jcbowman | 2005-03-14 21:18:31 -0700 (Mon, 14 Mar 2005) | 2 lines +r407 | jcbowman | 2005-03-15 05:18:31 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/fpu.h Fixed dummy fpu exception support for machines lacking C99 fenv routines. ------------------------------------------------------------------------ -r406 | jcbowman | 2005-03-14 20:48:27 -0700 (Mon, 14 Mar 2005) | 5 lines +r406 | jcbowman | 2005-03-15 04:48:27 +0100 (Tue, 15 Mar 2005) | 5 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/patches/gv-3.5.8-all.patch @@ -39226,14 +39628,14 @@ Added gv sigint.patch to prevent interactive interrupts from closing the gv window. ------------------------------------------------------------------------ -r405 | jcbowman | 2005-03-14 20:46:14 -0700 (Mon, 14 Mar 2005) | 2 lines +r405 | jcbowman | 2005-03-15 04:46:14 +0100 (Tue, 15 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/util.h Added missing prototypes for cxx compiler. ------------------------------------------------------------------------ -r404 | jcbowman | 2005-03-14 20:31:12 -0700 (Mon, 14 Mar 2005) | 11 lines +r404 | jcbowman | 2005-03-15 04:31:12 +0100 (Tue, 15 Mar 2005) | 11 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -39272,14 +39674,14 @@ Added scroll(int n) and string cd(string) commands. Added Jn and Yn Bessel functions. ------------------------------------------------------------------------ -r403 | jcbowman | 2005-03-13 21:38:38 -0700 (Sun, 13 Mar 2005) | 2 lines +r403 | jcbowman | 2005-03-14 05:38:38 +0100 (Mon, 14 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fixed bug in extension with a robust (and faster) parametric solver. ------------------------------------------------------------------------ -r402 | jcbowman | 2005-03-12 04:25:01 -0700 (Sat, 12 Mar 2005) | 5 lines +r402 | jcbowman | 2005-03-12 12:25:01 +0100 (Sat, 12 Mar 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -39296,7 +39698,7 @@ Removed double(file) in favour of single(file,false); also added csv(file,false) and linemode(file,false). ------------------------------------------------------------------------ -r401 | jcbowman | 2005-03-12 03:19:52 -0700 (Sat, 12 Mar 2005) | 4 lines +r401 | jcbowman | 2005-03-12 11:19:52 +0100 (Sat, 12 Mar 2005) | 4 lines Changed paths: M /trunk/asymptote/BUGS M /trunk/asymptote/base/palette.asy @@ -39311,28 +39713,28 @@ Minor change to palette interface. Replaced image.asy with more compact example to reduce distributed file sizes. ------------------------------------------------------------------------ -r400 | jcbowman | 2005-03-12 01:22:59 -0700 (Sat, 12 Mar 2005) | 2 lines +r400 | jcbowman | 2005-03-12 09:22:59 +0100 (Sat, 12 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/patches/pstoedit-3.40asy.patch Removed textpen argument from image labels. ------------------------------------------------------------------------ -r399 | jcbowman | 2005-03-12 00:57:32 -0700 (Sat, 12 Mar 2005) | 2 lines +r399 | jcbowman | 2005-03-12 08:57:32 +0100 (Sat, 12 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/patches/pstoedit-3.40asy.patch Fixed image support for pstoedit asy backend. ------------------------------------------------------------------------ -r398 | jcbowman | 2005-03-10 18:01:45 -0700 (Thu, 10 Mar 2005) | 2 lines +r398 | jcbowman | 2005-03-11 02:01:45 +0100 (Fri, 11 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Thin crowded logarithmic axis. ------------------------------------------------------------------------ -r397 | jcbowman | 2005-03-10 16:20:02 -0700 (Thu, 10 Mar 2005) | 2 lines +r397 | jcbowman | 2005-03-11 00:20:02 +0100 (Fri, 11 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/wedge.asy M /trunk/asymptote/examples/wheelanimation.asy @@ -39340,7 +39742,7 @@ Changed paths: Updated examples to use XEquals rather than xequals. ------------------------------------------------------------------------ -r396 | jcbowman | 2005-03-10 16:12:52 -0700 (Thu, 10 Mar 2005) | 11 lines +r396 | jcbowman | 2005-03-11 00:12:52 +0100 (Fri, 11 Mar 2005) | 11 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -39363,42 +39765,42 @@ for setting the precision of real XDR reads and writes. Cleaned up automin and automax in scaleT and autoscaleT. ------------------------------------------------------------------------ -r395 | jcbowman | 2005-03-10 07:21:59 -0700 (Thu, 10 Mar 2005) | 2 lines +r395 | jcbowman | 2005-03-10 15:21:59 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Removed unneeded -I- compilation flag. ------------------------------------------------------------------------ -r394 | jcbowman | 2005-03-09 22:53:24 -0700 (Wed, 09 Mar 2005) | 2 lines +r394 | jcbowman | 2005-03-10 06:53:24 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.70cvs. ------------------------------------------------------------------------ -r393 | jcbowman | 2005-03-09 22:34:58 -0700 (Wed, 09 Mar 2005) | 2 lines +r393 | jcbowman | 2005-03-10 06:34:58 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Install xdr image in examples directory. ------------------------------------------------------------------------ -r392 | jcbowman | 2005-03-09 22:21:56 -0700 (Wed, 09 Mar 2005) | 2 lines +r392 | jcbowman | 2005-03-10 06:21:56 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.h Fixed warning message. ------------------------------------------------------------------------ -r391 | jcbowman | 2005-03-09 21:53:55 -0700 (Wed, 09 Mar 2005) | 2 lines +r391 | jcbowman | 2005-03-10 05:53:55 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/image.asy Fixed font. ------------------------------------------------------------------------ -r390 | jcbowman | 2005-03-09 21:44:32 -0700 (Wed, 09 Mar 2005) | 3 lines +r390 | jcbowman | 2005-03-10 05:44:32 +0100 (Thu, 10 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -39406,21 +39808,21 @@ Recommended use of XEquals and YEquals axes over internal xequals and yequals routines. ------------------------------------------------------------------------ -r389 | jcbowman | 2005-03-09 21:20:38 -0700 (Wed, 09 Mar 2005) | 2 lines +r389 | jcbowman | 2005-03-10 05:20:38 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/patches/pstoedit-3.40asy.patch Suppressed misleading warning message. ------------------------------------------------------------------------ -r388 | jcbowman | 2005-03-09 20:47:55 -0700 (Wed, 09 Mar 2005) | 2 lines +r388 | jcbowman | 2005-03-10 04:47:55 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/equilateral.asy New example. ------------------------------------------------------------------------ -r387 | jcbowman | 2005-03-09 20:42:55 -0700 (Wed, 09 Mar 2005) | 2 lines +r387 | jcbowman | 2005-03-10 04:42:55 +0100 (Thu, 10 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/doc/asymptote.texi @@ -39428,7 +39830,7 @@ Changed paths: Fixed numerical precision bug in extension (in math.asy, reported by Gao). ------------------------------------------------------------------------ -r386 | jcbowman | 2005-03-09 20:07:45 -0700 (Wed, 09 Mar 2005) | 7 lines +r386 | jcbowman | 2005-03-10 04:07:45 +0100 (Thu, 10 Mar 2005) | 7 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/palette.asy @@ -39446,7 +39848,7 @@ Documented color density images, palettes, and mark option to draw routine, with examples. ------------------------------------------------------------------------ -r385 | jcbowman | 2005-03-08 22:34:28 -0700 (Tue, 08 Mar 2005) | 2 lines +r385 | jcbowman | 2005-03-09 06:34:28 +0100 (Wed, 09 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/base/palette.asy M /trunk/asymptote/base/plain.asy @@ -39455,7 +39857,7 @@ Changed paths: Slightly reduce default number of colors to workaround gs pdf limitations. ------------------------------------------------------------------------ -r384 | jcbowman | 2005-03-07 22:56:26 -0700 (Mon, 07 Mar 2005) | 2 lines +r384 | jcbowman | 2005-03-08 06:56:26 +0100 (Tue, 08 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/secondaryaxis.asy A /trunk/asymptote/drawimage.h @@ -39463,7 +39865,7 @@ Changed paths: Added missing file. ------------------------------------------------------------------------ -r383 | jcbowman | 2005-03-07 22:31:44 -0700 (Mon, 07 Mar 2005) | 14 lines +r383 | jcbowman | 2005-03-08 06:31:44 +0100 (Tue, 08 Mar 2005) | 14 lines Changed paths: M /trunk/asymptote/base/graph.asy A /trunk/asymptote/base/palette.asy @@ -39498,14 +39900,14 @@ Fixed limits() in graph.asy. Respect "#" in format strings (allows trailing zeros). ------------------------------------------------------------------------ -r382 | jcbowman | 2005-03-05 12:16:18 -0700 (Sat, 05 Mar 2005) | 2 lines +r382 | jcbowman | 2005-03-05 20:16:18 +0100 (Sat, 05 Mar 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/secondaryaxis.asy More general example of secondary axis. ------------------------------------------------------------------------ -r381 | jcbowman | 2005-03-05 12:14:54 -0700 (Sat, 05 Mar 2005) | 3 lines +r381 | jcbowman | 2005-03-05 20:14:54 +0100 (Sat, 05 Mar 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -39515,7 +39917,7 @@ Fixed secondary axes bug; xlimits, ylimits, and limits now use properly scaled user values. ------------------------------------------------------------------------ -r380 | jcbowman | 2005-02-27 20:51:58 -0700 (Sun, 27 Feb 2005) | 2 lines +r380 | jcbowman | 2005-02-28 04:51:58 +0100 (Mon, 28 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/math.asy @@ -39524,7 +39926,7 @@ Changed paths: Minor optimizations. ------------------------------------------------------------------------ -r379 | jcbowman | 2005-02-27 11:40:32 -0700 (Sun, 27 Feb 2005) | 2 lines +r379 | jcbowman | 2005-02-27 19:40:32 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex M /trunk/asymptote/examples/venn.asy @@ -39532,28 +39934,28 @@ Changed paths: Adjusted margins so that arrows all have same length. ------------------------------------------------------------------------ -r378 | jcbowman | 2005-02-27 11:23:50 -0700 (Sun, 27 Feb 2005) | 2 lines +r378 | jcbowman | 2005-02-27 19:23:50 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/patches/pstoedit-3.40asy.patch Updates to support Microsoft Windows. ------------------------------------------------------------------------ -r377 | jcbowman | 2005-02-27 09:49:10 -0700 (Sun, 27 Feb 2005) | 2 lines +r377 | jcbowman | 2005-02-27 17:49:10 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Fixed finite(pair). ------------------------------------------------------------------------ -r376 | jcbowman | 2005-02-27 05:29:47 -0700 (Sun, 27 Feb 2005) | 2 lines +r376 | jcbowman | 2005-02-27 13:29:47 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.69cvs. ------------------------------------------------------------------------ -r375 | jcbowman | 2005-02-27 04:59:56 -0700 (Sun, 27 Feb 2005) | 2 lines +r375 | jcbowman | 2005-02-27 12:59:56 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/simplex.asy @@ -39561,21 +39963,21 @@ Changed paths: Added Andy's constraint removal code for even better simplex optimization. ------------------------------------------------------------------------ -r374 | jcbowman | 2005-02-26 22:14:35 -0700 (Sat, 26 Feb 2005) | 2 lines +r374 | jcbowman | 2005-02-27 06:14:35 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/venn.asy Updated to use Margin rather than subpath. ------------------------------------------------------------------------ -r373 | jcbowman | 2005-02-26 22:00:33 -0700 (Sat, 26 Feb 2005) | 2 lines +r373 | jcbowman | 2005-02-27 06:00:33 +0100 (Sun, 27 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.68cvs. ------------------------------------------------------------------------ -r372 | jcbowman | 2005-02-26 19:48:49 -0700 (Sat, 26 Feb 2005) | 9 lines +r372 | jcbowman | 2005-02-27 03:48:49 +0100 (Sun, 27 Feb 2005) | 9 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -39596,7 +39998,7 @@ Added gv-3.6.1 patches; updated documentation. Modified pstoedit patch to remove unneeded shipout(). ------------------------------------------------------------------------ -r371 | jcbowman | 2005-02-26 14:55:50 -0700 (Sat, 26 Feb 2005) | 2 lines +r371 | jcbowman | 2005-02-26 22:55:50 +0100 (Sat, 26 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/examples/eetomumu.asy @@ -39604,21 +40006,21 @@ Changed paths: arrowsize updates ------------------------------------------------------------------------ -r370 | jcbowman | 2005-02-26 01:23:43 -0700 (Sat, 26 Feb 2005) | 2 lines +r370 | jcbowman | 2005-02-26 09:23:43 +0100 (Sat, 26 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy Removed superflous constraints before solving linear programming problem. ------------------------------------------------------------------------ -r369 | jcbowman | 2005-02-25 22:51:35 -0700 (Fri, 25 Feb 2005) | 2 lines +r369 | jcbowman | 2005-02-26 06:51:35 +0100 (Sat, 26 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy Check that r.c >= 0 in selectVar (this guarantees that r.t[col] < 0). ------------------------------------------------------------------------ -r368 | jcbowman | 2005-02-25 20:31:21 -0700 (Fri, 25 Feb 2005) | 6 lines +r368 | jcbowman | 2005-02-26 04:31:21 +0100 (Sat, 26 Feb 2005) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -39632,7 +40034,7 @@ Made global constants static. Fixed recently introduced error in relative(picture, pair). ------------------------------------------------------------------------ -r367 | jcbowman | 2005-02-25 11:11:52 -0700 (Fri, 25 Feb 2005) | 2 lines +r367 | jcbowman | 2005-02-25 19:11:52 +0100 (Fri, 25 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -39640,21 +40042,21 @@ Changed paths: Minor errorbar updates. ------------------------------------------------------------------------ -r366 | jcbowman | 2005-02-25 11:11:20 -0700 (Fri, 25 Feb 2005) | 2 lines +r366 | jcbowman | 2005-02-25 19:11:20 +0100 (Fri, 25 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy arrowsize updates ------------------------------------------------------------------------ -r365 | jcbowman | 2005-02-21 23:41:54 -0700 (Mon, 21 Feb 2005) | 2 lines +r365 | jcbowman | 2005-02-22 07:41:54 +0100 (Tue, 22 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.67cvs. ------------------------------------------------------------------------ -r364 | jcbowman | 2005-02-21 22:41:21 -0700 (Mon, 21 Feb 2005) | 2 lines +r364 | jcbowman | 2005-02-22 06:41:21 +0100 (Tue, 22 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/xasy @@ -39662,7 +40064,7 @@ Changed paths: Improved selection highlighting in GUI. ------------------------------------------------------------------------ -r363 | jcbowman | 2005-02-20 23:12:23 -0700 (Sun, 20 Feb 2005) | 3 lines +r363 | jcbowman | 2005-02-21 07:12:23 +0100 (Mon, 21 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/runtime.cc @@ -39671,7 +40073,7 @@ Put quotes around outputted font command string. Set camp::TeXcontaminated to false upon decontaminating. ------------------------------------------------------------------------ -r362 | jcbowman | 2005-02-20 21:57:04 -0700 (Sun, 20 Feb 2005) | 2 lines +r362 | jcbowman | 2005-02-21 05:57:04 +0100 (Mon, 21 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/runtime.cc @@ -39679,7 +40081,7 @@ Changed paths: Moved interactive rejectline code back into main.cc. ------------------------------------------------------------------------ -r361 | jcbowman | 2005-02-20 21:16:09 -0700 (Sun, 20 Feb 2005) | 2 lines +r361 | jcbowman | 2005-02-21 05:16:09 +0100 (Mon, 21 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/main.cc @@ -39690,7 +40092,7 @@ Changed paths: Moved cleanup functions into exitFunction. ------------------------------------------------------------------------ -r360 | jcbowman | 2005-02-20 20:41:20 -0700 (Sun, 20 Feb 2005) | 10 lines +r360 | jcbowman | 2005-02-21 04:41:20 +0100 (Mon, 21 Feb 2005) | 10 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/graph.asy @@ -39781,7 +40183,7 @@ Used atexit to clean up asymptote.sty and interactive mode. Files with no drawing commands now work with -f pdf. ------------------------------------------------------------------------ -r359 | jcbowman | 2005-02-20 02:07:38 -0700 (Sun, 20 Feb 2005) | 3 lines +r359 | jcbowman | 2005-02-20 10:07:38 +0100 (Sun, 20 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -39790,21 +40192,21 @@ Fixed (logarithmic and other) scalings of XEquals and YEquals axes and errorbars. ------------------------------------------------------------------------ -r358 | jcbowman | 2005-02-20 01:28:25 -0700 (Sun, 20 Feb 2005) | 2 lines +r358 | jcbowman | 2005-02-20 09:28:25 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r357 | jcbowman | 2005-02-20 01:25:04 -0700 (Sun, 20 Feb 2005) | 2 lines +r357 | jcbowman | 2005-02-20 09:25:04 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.66cvs. ------------------------------------------------------------------------ -r356 | jcbowman | 2005-02-20 00:47:46 -0700 (Sun, 20 Feb 2005) | 2 lines +r356 | jcbowman | 2005-02-20 08:47:46 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -39812,21 +40214,21 @@ Changed paths: Fixed location of latexusage.tex. ------------------------------------------------------------------------ -r355 | jcbowman | 2005-02-20 00:39:25 -0700 (Sun, 20 Feb 2005) | 2 lines +r355 | jcbowman | 2005-02-20 08:39:25 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.65cvs. ------------------------------------------------------------------------ -r354 | jcbowman | 2005-02-19 23:28:21 -0700 (Sat, 19 Feb 2005) | 2 lines +r354 | jcbowman | 2005-02-20 07:28:21 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/treetest.asy Fixed typos in example. ------------------------------------------------------------------------ -r353 | jcbowman | 2005-02-19 23:19:39 -0700 (Sat, 19 Feb 2005) | 2 lines +r353 | jcbowman | 2005-02-20 07:19:39 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/plain.asy @@ -39836,14 +40238,14 @@ Changed paths: Updated examples. ------------------------------------------------------------------------ -r352 | jcbowman | 2005-02-19 23:00:14 -0700 (Sat, 19 Feb 2005) | 2 lines +r352 | jcbowman | 2005-02-20 07:00:14 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/eetomumu.asy Linewidth change. ------------------------------------------------------------------------ -r351 | jcbowman | 2005-02-19 22:57:01 -0700 (Sat, 19 Feb 2005) | 3 lines +r351 | jcbowman | 2005-02-20 06:57:01 +0100 (Sun, 20 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -39866,7 +40268,7 @@ Added DotMargin margin qualifier. Updated examples to use margins. ------------------------------------------------------------------------ -r350 | jcbowman | 2005-02-19 21:40:42 -0700 (Sat, 19 Feb 2005) | 7 lines +r350 | jcbowman | 2005-02-20 05:40:42 +0100 (Sun, 20 Feb 2005) | 7 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/graph.asy @@ -39887,21 +40289,21 @@ arcarrowsize to arcarrowsize(pen p=currentpen), barsize to barsize(pen p=currentpen). ------------------------------------------------------------------------ -r349 | jcbowman | 2005-02-19 18:29:46 -0700 (Sat, 19 Feb 2005) | 2 lines +r349 | jcbowman | 2005-02-20 02:29:46 +0100 (Sun, 20 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed bug in eval(f(T), T[] A). ------------------------------------------------------------------------ -r348 | jcbowman | 2005-02-19 11:35:38 -0700 (Sat, 19 Feb 2005) | 2 lines +r348 | jcbowman | 2005-02-19 19:35:38 +0100 (Sat, 19 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documented real[] A vs. real A[] issue. ------------------------------------------------------------------------ -r347 | jcbowman | 2005-02-19 10:50:51 -0700 (Sat, 19 Feb 2005) | 4 lines +r347 | jcbowman | 2005-02-19 18:50:51 +0100 (Sat, 19 Feb 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -39913,7 +40315,7 @@ Documented and improved margin routines. Included correct latexusage file in documentation. ------------------------------------------------------------------------ -r346 | jcbowman | 2005-02-18 23:32:16 -0700 (Fri, 18 Feb 2005) | 6 lines +r346 | jcbowman | 2005-02-19 07:32:16 +0100 (Sat, 19 Feb 2005) | 6 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/feynman.asy @@ -39931,49 +40333,49 @@ Fixed name conflicts between asymptote.sty and comment.sty. Install latexusage.tex with examples. ------------------------------------------------------------------------ -r345 | jcbowman | 2005-02-18 15:07:55 -0700 (Fri, 18 Feb 2005) | 2 lines +r345 | jcbowman | 2005-02-18 23:07:55 +0100 (Fri, 18 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc Fix diagnostic. ------------------------------------------------------------------------ -r344 | jcbowman | 2005-02-18 14:13:16 -0700 (Fri, 18 Feb 2005) | 2 lines +r344 | jcbowman | 2005-02-18 22:13:16 +0100 (Fri, 18 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc Fixed segmentation fault in anonymous function diagnostic. ------------------------------------------------------------------------ -r343 | jcbowman | 2005-02-18 02:32:37 -0700 (Fri, 18 Feb 2005) | 2 lines +r343 | jcbowman | 2005-02-18 10:32:37 +0100 (Fri, 18 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.64cvs. ------------------------------------------------------------------------ -r342 | jcbowman | 2005-02-18 01:54:40 -0700 (Fri, 18 Feb 2005) | 2 lines +r342 | jcbowman | 2005-02-18 09:54:40 +0100 (Fri, 18 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Reset lastpen on every call to texinit. ------------------------------------------------------------------------ -r341 | jcbowman | 2005-02-18 01:32:44 -0700 (Fri, 18 Feb 2005) | 2 lines +r341 | jcbowman | 2005-02-18 09:32:44 +0100 (Fri, 18 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed harmless typo. ------------------------------------------------------------------------ -r340 | jcbowman | 2005-02-18 01:28:13 -0700 (Fri, 18 Feb 2005) | 2 lines +r340 | jcbowman | 2005-02-18 09:28:13 +0100 (Fri, 18 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.63cvs. ------------------------------------------------------------------------ -r339 | jcbowman | 2005-02-18 00:27:57 -0700 (Fri, 18 Feb 2005) | 3 lines +r339 | jcbowman | 2005-02-18 08:27:57 +0100 (Fri, 18 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/psfile.h @@ -39982,7 +40384,7 @@ Fixed shading colorspace & fillrule/baseline output strings; removed unwanted space from gsave/grestore. ------------------------------------------------------------------------ -r338 | jcbowman | 2005-02-17 23:38:20 -0700 (Thu, 17 Feb 2005) | 6 lines +r338 | jcbowman | 2005-02-18 07:38:20 +0100 (Fri, 18 Feb 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/base/pstoedit.asy @@ -40005,28 +40407,28 @@ to be nobasealign). Documentation improved in several areas. ------------------------------------------------------------------------ -r337 | jcbowman | 2005-02-17 07:57:51 -0700 (Thu, 17 Feb 2005) | 2 lines +r337 | jcbowman | 2005-02-17 15:57:51 +0100 (Thu, 17 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/util.h Added missing include. ------------------------------------------------------------------------ -r336 | jcbowman | 2005-02-17 00:02:35 -0700 (Thu, 17 Feb 2005) | 2 lines +r336 | jcbowman | 2005-02-17 08:02:35 +0100 (Thu, 17 Feb 2005) | 2 lines Changed paths: A /trunk/asymptote/doc/labelsquare.asy Simple example of label positioning. ------------------------------------------------------------------------ -r335 | jcbowman | 2005-02-16 23:56:21 -0700 (Wed, 16 Feb 2005) | 2 lines +r335 | jcbowman | 2005-02-17 07:56:21 +0100 (Thu, 17 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Corrected index entry. ------------------------------------------------------------------------ -r334 | jcbowman | 2005-02-16 23:54:19 -0700 (Wed, 16 Feb 2005) | 2 lines +r334 | jcbowman | 2005-02-17 07:54:19 +0100 (Thu, 17 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/util.h @@ -40034,7 +40436,7 @@ Changed paths: Workaround broken cxx linux-alpha headers. ------------------------------------------------------------------------ -r333 | jcbowman | 2005-02-16 23:38:29 -0700 (Wed, 16 Feb 2005) | 11 lines +r333 | jcbowman | 2005-02-17 07:38:29 +0100 (Thu, 17 Feb 2005) | 11 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/base/plain.asy @@ -40065,7 +40467,7 @@ Fixed compilation problems under Solaris. Updated documentation. ------------------------------------------------------------------------ -r332 | rtprince | 2005-02-16 10:43:22 -0700 (Wed, 16 Feb 2005) | 4 lines +r332 | rtprince | 2005-02-16 18:43:22 +0100 (Wed, 16 Feb 2005) | 4 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -40075,7 +40477,7 @@ CXX defaults to g++ if it is available (AC_PROG_CXX). Define CC in Makefile if we get it from AC_PROG_CC. ------------------------------------------------------------------------ -r331 | jcbowman | 2005-02-16 10:42:33 -0700 (Wed, 16 Feb 2005) | 3 lines +r331 | jcbowman | 2005-02-16 18:42:33 +0100 (Wed, 16 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/absyn.cc M /trunk/asymptote/absyn.h @@ -40101,21 +40503,21 @@ Changed namespace absyn to absyntax to avoid conflicts with class of same name under some compilers. ------------------------------------------------------------------------ -r330 | jcbowman | 2005-02-16 10:24:02 -0700 (Wed, 16 Feb 2005) | 2 lines +r330 | jcbowman | 2005-02-16 18:24:02 +0100 (Wed, 16 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l Namespace as -> absyn. ------------------------------------------------------------------------ -r329 | jcbowman | 2005-02-16 10:18:44 -0700 (Wed, 16 Feb 2005) | 2 lines +r329 | jcbowman | 2005-02-16 18:18:44 +0100 (Wed, 16 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.y Namespace as -> absyn. ------------------------------------------------------------------------ -r328 | jcbowman | 2005-02-16 10:14:02 -0700 (Wed, 16 Feb 2005) | 3 lines +r328 | jcbowman | 2005-02-16 18:14:02 +0100 (Wed, 16 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/absyn.cc M /trunk/asymptote/absyn.h @@ -40140,14 +40542,14 @@ Renamed namespace "as" to "absyn" to work around Solaris namespace pollution. Added CXX=g++ to configure.ac and removed -DNDEBUG flag. ------------------------------------------------------------------------ -r327 | jcbowman | 2005-02-15 21:23:14 -0700 (Tue, 15 Feb 2005) | 2 lines +r327 | jcbowman | 2005-02-16 05:23:14 +0100 (Wed, 16 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Clip should insert beginclip at beginning of current layer. ------------------------------------------------------------------------ -r326 | jcbowman | 2005-02-15 16:46:32 -0700 (Tue, 15 Feb 2005) | 8 lines +r326 | jcbowman | 2005-02-16 00:46:32 +0100 (Wed, 16 Feb 2005) | 8 lines Changed paths: M /trunk/asymptote/base/plain.asy A /trunk/asymptote/base/pstoedit.asy @@ -40164,21 +40566,21 @@ Moved beginclip, endclip, gsave, and grestore to pstoedit.asy. Fixed remaining gsave/grestore bugs in Asymptote backend to pstoedit. ------------------------------------------------------------------------ -r325 | jcbowman | 2005-02-15 01:01:03 -0700 (Tue, 15 Feb 2005) | 2 lines +r325 | jcbowman | 2005-02-15 09:01:03 +0100 (Tue, 15 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Code clean up; added pair min(path[]) and max(path[]) functions. ------------------------------------------------------------------------ -r324 | jcbowman | 2005-02-14 22:25:28 -0700 (Mon, 14 Feb 2005) | 2 lines +r324 | jcbowman | 2005-02-15 06:25:28 +0100 (Tue, 15 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.62cvs. ------------------------------------------------------------------------ -r323 | jcbowman | 2005-02-14 20:39:00 -0700 (Mon, 14 Feb 2005) | 2 lines +r323 | jcbowman | 2005-02-15 04:39:00 +0100 (Tue, 15 Feb 2005) | 2 lines Changed paths: A /trunk/asymptote/doc/cube.asy A /trunk/asymptote/doc/superpath.asy @@ -40186,7 +40588,7 @@ Changed paths: New examples. ------------------------------------------------------------------------ -r322 | jcbowman | 2005-02-14 19:57:01 -0700 (Mon, 14 Feb 2005) | 2 lines +r322 | jcbowman | 2005-02-15 03:57:01 +0100 (Tue, 15 Feb 2005) | 2 lines Changed paths: A /trunk/asymptote/drawgrestore.h A /trunk/asymptote/drawgsave.h @@ -40194,14 +40596,14 @@ Changed paths: Added PostScript grestore/gsave objects. ------------------------------------------------------------------------ -r321 | jcbowman | 2005-02-14 19:54:11 -0700 (Mon, 14 Feb 2005) | 2 lines +r321 | jcbowman | 2005-02-15 03:54:11 +0100 (Tue, 15 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed spelling and grammar. ------------------------------------------------------------------------ -r320 | jcbowman | 2005-02-14 18:01:27 -0700 (Mon, 14 Feb 2005) | 5 lines +r320 | jcbowman | 2005-02-15 02:01:27 +0100 (Tue, 15 Feb 2005) | 5 lines Changed paths: M /trunk/asymptote/base/asy.vim M /trunk/asymptote/base/plain.asy @@ -40221,7 +40623,7 @@ clipping and subpaths. Added Postscript font and scaled TeX font support. ------------------------------------------------------------------------ -r319 | jcbowman | 2005-02-13 14:57:10 -0700 (Sun, 13 Feb 2005) | 2 lines +r319 | jcbowman | 2005-02-13 22:57:10 +0100 (Sun, 13 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -40229,7 +40631,7 @@ Changed paths: Added warning message and documentation about clipping deconstructed objects. ------------------------------------------------------------------------ -r318 | jcbowman | 2005-02-13 14:36:46 -0700 (Sun, 13 Feb 2005) | 2 lines +r318 | jcbowman | 2005-02-13 22:36:46 +0100 (Sun, 13 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asy.1 M /trunk/asymptote/doc/asymptote.texi @@ -40240,7 +40642,7 @@ Changed paths: Added -gray option. ------------------------------------------------------------------------ -r317 | jcbowman | 2005-02-13 11:21:41 -0700 (Sun, 13 Feb 2005) | 2 lines +r317 | jcbowman | 2005-02-13 19:21:41 +0100 (Sun, 13 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -40248,7 +40650,7 @@ Changed paths: Install documentation examples and data files in examples directory. ------------------------------------------------------------------------ -r316 | jcbowman | 2005-02-13 11:08:12 -0700 (Sun, 13 Feb 2005) | 7 lines +r316 | jcbowman | 2005-02-13 19:08:12 +0100 (Sun, 13 Feb 2005) | 7 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/graph.asy @@ -40275,14 +40677,14 @@ Use correct font and fontsize for computing label bounding boxes. Use -O0 for producing dependency data. ------------------------------------------------------------------------ -r315 | jcbowman | 2005-02-12 02:26:46 -0700 (Sat, 12 Feb 2005) | 2 lines +r315 | jcbowman | 2005-02-12 10:26:46 +0100 (Sat, 12 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy Added background variable. ------------------------------------------------------------------------ -r314 | jcbowman | 2005-02-12 02:21:42 -0700 (Sat, 12 Feb 2005) | 20 lines +r314 | jcbowman | 2005-02-12 10:21:42 +0100 (Sat, 12 Feb 2005) | 20 lines Changed paths: M /trunk/asymptote/README A /trunk/asymptote/base/drawtree.asy @@ -40338,7 +40740,7 @@ Added contributed tree drawing script and example. Updated documentation. ------------------------------------------------------------------------ -r313 | jcbowman | 2005-02-09 08:08:27 -0700 (Wed, 09 Feb 2005) | 2 lines +r313 | jcbowman | 2005-02-09 16:08:27 +0100 (Wed, 09 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/asy-mode.el M /trunk/asymptote/base/asy.vim @@ -40346,7 +40748,7 @@ Changed paths: Editing mode updates. ------------------------------------------------------------------------ -r312 | jcbowman | 2005-02-09 07:40:20 -0700 (Wed, 09 Feb 2005) | 2 lines +r312 | jcbowman | 2005-02-09 15:40:20 +0100 (Wed, 09 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/Makefile @@ -40354,21 +40756,21 @@ Changed paths: Renamed labelframe to labelBox; added labelbox(frame). ------------------------------------------------------------------------ -r311 | jcbowman | 2005-02-08 22:46:20 -0700 (Tue, 08 Feb 2005) | 2 lines +r311 | jcbowman | 2005-02-09 06:46:20 +0100 (Wed, 09 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy added labelframe and point(frame,dir) routines. ------------------------------------------------------------------------ -r310 | hammera | 2005-02-08 14:45:32 -0700 (Tue, 08 Feb 2005) | 2 lines +r310 | hammera | 2005-02-08 22:45:32 +0100 (Tue, 08 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/asy.vim Changed string highlighting to recognize double \ escapes. ------------------------------------------------------------------------ -r309 | jcbowman | 2005-02-05 14:43:28 -0700 (Sat, 05 Feb 2005) | 2 lines +r309 | jcbowman | 2005-02-05 22:43:28 +0100 (Sat, 05 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/feynman.asy @@ -40385,7 +40787,7 @@ Changed paths: Updated documentation and pattern examples. ------------------------------------------------------------------------ -r308 | jcbowman | 2005-02-04 21:49:13 -0700 (Fri, 04 Feb 2005) | 2 lines +r308 | jcbowman | 2005-02-05 05:49:13 +0100 (Sat, 05 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/patterns.asy M /trunk/asymptote/doc/asymptote.texi @@ -40394,7 +40796,7 @@ Changed paths: Added brick pattern. ------------------------------------------------------------------------ -r307 | jcbowman | 2005-02-04 15:15:16 -0700 (Fri, 04 Feb 2005) | 9 lines +r307 | jcbowman | 2005-02-04 23:15:16 +0100 (Fri, 04 Feb 2005) | 9 lines Changed paths: M /trunk/asymptote/base/feynman.asy A /trunk/asymptote/base/patterns.asy @@ -40420,7 +40822,7 @@ Moved simplified pattern routines and builtin patterns hatch, crosshatch, and tile to patterns.asy. Updated examples and documentation. ------------------------------------------------------------------------ -r306 | jcbowman | 2005-02-03 20:05:37 -0700 (Thu, 03 Feb 2005) | 2 lines +r306 | jcbowman | 2005-02-04 04:05:37 +0100 (Fri, 04 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/interact.h @@ -40428,7 +40830,7 @@ Changed paths: Fixed recently broken interact mode. ------------------------------------------------------------------------ -r305 | jcbowman | 2005-02-03 12:18:20 -0700 (Thu, 03 Feb 2005) | 2 lines +r305 | jcbowman | 2005-02-03 20:18:20 +0100 (Thu, 03 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -40436,21 +40838,21 @@ Changed paths: Moved default CFLAGS into configure.ac ------------------------------------------------------------------------ -r304 | jcbowman | 2005-02-02 12:16:31 -0700 (Wed, 02 Feb 2005) | 2 lines +r304 | jcbowman | 2005-02-02 20:16:31 +0100 (Wed, 02 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fixed optimization flags (revert last change). ------------------------------------------------------------------------ -r303 | rtprince | 2005-02-02 07:40:53 -0700 (Wed, 02 Feb 2005) | 2 lines +r303 | rtprince | 2005-02-02 15:40:53 +0100 (Wed, 02 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Stanardize CFLAGS handling. ------------------------------------------------------------------------ -r302 | jcbowman | 2005-02-02 05:16:25 -0700 (Wed, 02 Feb 2005) | 2 lines +r302 | jcbowman | 2005-02-02 13:16:25 +0100 (Wed, 02 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/interact.cc M /trunk/asymptote/interact.h @@ -40458,14 +40860,14 @@ Changed paths: Fixed header problems under FreeBSD. ------------------------------------------------------------------------ -r301 | jcbowman | 2005-02-01 23:54:33 -0700 (Tue, 01 Feb 2005) | 2 lines +r301 | jcbowman | 2005-02-02 07:54:33 +0100 (Wed, 02 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.61cvs. ------------------------------------------------------------------------ -r300 | jcbowman | 2005-02-01 23:10:58 -0700 (Tue, 01 Feb 2005) | 2 lines +r300 | jcbowman | 2005-02-02 07:10:58 +0100 (Wed, 02 Feb 2005) | 2 lines Changed paths: A /trunk/asymptote/examples/grid.asy M /trunk/asymptote/picture.cc @@ -40473,7 +40875,7 @@ Changed paths: Interactive mode automatically restarts ASYMPTOTE_PSVIEWER in case it exited. ------------------------------------------------------------------------ -r299 | jcbowman | 2005-02-01 23:07:24 -0700 (Tue, 01 Feb 2005) | 3 lines +r299 | jcbowman | 2005-02-02 07:07:24 +0100 (Wed, 02 Feb 2005) | 3 lines Changed paths: M /trunk/asymptote/base/math.asy @@ -40481,28 +40883,28 @@ Added picture grid(int Nx, int Ny, pen p=currentpen) function for generating square lattices. ------------------------------------------------------------------------ -r298 | jcbowman | 2005-02-01 23:04:57 -0700 (Tue, 01 Feb 2005) | 2 lines +r298 | jcbowman | 2005-02-02 07:04:57 +0100 (Wed, 02 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Simplified binary installation instructions; updated hatch.asy listing. ------------------------------------------------------------------------ -r297 | rtprince | 2005-02-01 09:03:21 -0700 (Tue, 01 Feb 2005) | 2 lines +r297 | rtprince | 2005-02-01 17:03:21 +0100 (Tue, 01 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/knotlist.cc Fix path solving. Strange place for a bug. ------------------------------------------------------------------------ -r296 | jcbowman | 2005-02-01 01:52:50 -0700 (Tue, 01 Feb 2005) | 2 lines +r296 | jcbowman | 2005-02-01 09:52:50 +0100 (Tue, 01 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Removed extra newline from diagnostic. ------------------------------------------------------------------------ -r295 | jcbowman | 2005-02-01 00:43:33 -0700 (Tue, 01 Feb 2005) | 2 lines +r295 | jcbowman | 2005-02-01 08:43:33 +0100 (Tue, 01 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/runtime.cc @@ -40511,7 +40913,7 @@ Changed paths: Fixed namespace/function conflicts. ------------------------------------------------------------------------ -r294 | jcbowman | 2005-02-01 00:33:26 -0700 (Tue, 01 Feb 2005) | 2 lines +r294 | jcbowman | 2005-02-01 08:33:26 +0100 (Tue, 01 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/builtin.cc @@ -40525,7 +40927,7 @@ Changed paths: Fixed interactive mode to suppress standard I/O also from static imports. ------------------------------------------------------------------------ -r293 | jcbowman | 2005-01-31 20:41:57 -0700 (Mon, 31 Jan 2005) | 2 lines +r293 | jcbowman | 2005-02-01 04:41:57 +0100 (Tue, 01 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/runtime.cc @@ -40533,7 +40935,7 @@ Changed paths: Fix rfind(string s, string t) and update documentation of string functions. ------------------------------------------------------------------------ -r292 | jcbowman | 2005-01-31 17:42:04 -0700 (Mon, 31 Jan 2005) | 2 lines +r292 | jcbowman | 2005-02-01 01:42:04 +0100 (Tue, 01 Feb 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -40544,7 +40946,7 @@ Changed paths: Add facility for checking to see if a file exists, using bool error(file). ------------------------------------------------------------------------ -r291 | jcbowman | 2005-01-31 15:15:48 -0700 (Mon, 31 Jan 2005) | 2 lines +r291 | jcbowman | 2005-01-31 23:15:48 +0100 (Mon, 31 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -40556,7 +40958,7 @@ Changed paths: Fixed multiple interactive shipouts in graphs with legends. ------------------------------------------------------------------------ -r290 | jcbowman | 2005-01-30 23:21:33 -0700 (Sun, 30 Jan 2005) | 3 lines +r290 | jcbowman | 2005-01-31 07:21:33 +0100 (Mon, 31 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/main.cc M /trunk/asymptote/picture.cc @@ -40565,7 +40967,7 @@ Interactive mode now supports inputting files with multiple shipouts. Interactive mode disables deconstruction (xasy). ------------------------------------------------------------------------ -r289 | jcbowman | 2005-01-30 22:17:47 -0700 (Sun, 30 Jan 2005) | 4 lines +r289 | jcbowman | 2005-01-31 06:17:47 +0100 (Mon, 31 Jan 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/texfile.h @@ -40575,7 +40977,7 @@ Fixed recently broken include command. Renamed internal symbol ASYalign to more meaningful ASYbase in baseline. ------------------------------------------------------------------------ -r288 | jcbowman | 2005-01-30 21:46:28 -0700 (Sun, 30 Jan 2005) | 3 lines +r288 | jcbowman | 2005-01-31 05:46:28 +0100 (Mon, 31 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/fileio.cc @@ -40588,7 +40990,7 @@ Put file back into mempool by making typein and typeout variables rather than pointers. ------------------------------------------------------------------------ -r287 | jcbowman | 2005-01-30 17:44:14 -0700 (Sun, 30 Jan 2005) | 2 lines +r287 | jcbowman | 2005-01-31 01:44:14 +0100 (Mon, 31 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/cosaddition.asy M /trunk/asymptote/examples/sinxlex.asy @@ -40596,7 +40998,7 @@ Changed paths: Updated examples to use math.arc routine. ------------------------------------------------------------------------ -r286 | jcbowman | 2005-01-30 15:55:47 -0700 (Sun, 30 Jan 2005) | 3 lines +r286 | jcbowman | 2005-01-30 23:55:47 +0100 (Sun, 30 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/errormsg.h @@ -40606,7 +41008,7 @@ Allow optional Asymptote commands to be specified on the same line as interactive input command. ------------------------------------------------------------------------ -r285 | jcbowman | 2005-01-30 11:15:01 -0700 (Sun, 30 Jan 2005) | 6 lines +r285 | jcbowman | 2005-01-30 19:15:01 +0100 (Sun, 30 Jan 2005) | 6 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/dec.cc @@ -40627,7 +41029,7 @@ Cleaned up fileio and removed it from mempool due to conflict with iostream routines. ------------------------------------------------------------------------ -r284 | jcbowman | 2005-01-28 20:04:41 -0700 (Fri, 28 Jan 2005) | 2 lines +r284 | jcbowman | 2005-01-29 04:04:41 +0100 (Sat, 29 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/texfile.h @@ -40635,35 +41037,35 @@ Changed paths: Add baseline TeX code back into texfile.h from plain.asy. ------------------------------------------------------------------------ -r283 | jcbowman | 2005-01-28 02:54:10 -0700 (Fri, 28 Jan 2005) | 2 lines +r283 | jcbowman | 2005-01-28 10:54:10 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.60cvs. ------------------------------------------------------------------------ -r282 | jcbowman | 2005-01-28 01:21:34 -0700 (Fri, 28 Jan 2005) | 2 lines +r282 | jcbowman | 2005-01-28 09:21:34 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Makedepend updates. ------------------------------------------------------------------------ -r281 | jcbowman | 2005-01-28 01:09:05 -0700 (Fri, 28 Jan 2005) | 2 lines +r281 | jcbowman | 2005-01-28 09:09:05 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in More makefile tweaks. ------------------------------------------------------------------------ -r280 | jcbowman | 2005-01-28 00:40:32 -0700 (Fri, 28 Jan 2005) | 2 lines +r280 | jcbowman | 2005-01-28 08:40:32 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Final makefile updates. ------------------------------------------------------------------------ -r279 | jcbowman | 2005-01-28 00:15:07 -0700 (Fri, 28 Jan 2005) | 2 lines +r279 | jcbowman | 2005-01-28 08:15:07 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/runtime.cc @@ -40671,21 +41073,21 @@ Changed paths: Automatically check for broken rpc/xdr headers. ------------------------------------------------------------------------ -r278 | jcbowman | 2005-01-27 23:01:20 -0700 (Thu, 27 Jan 2005) | 2 lines +r278 | jcbowman | 2005-01-28 07:01:20 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fixed bounds to be consistent with behaviour of new quadratic solver. ------------------------------------------------------------------------ -r277 | jcbowman | 2005-01-27 22:41:06 -0700 (Thu, 27 Jan 2005) | 2 lines +r277 | jcbowman | 2005-01-28 06:41:06 +0100 (Fri, 28 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Implemented robust, accurate quadratic equation solver (used in dirtime). ------------------------------------------------------------------------ -r276 | jcbowman | 2005-01-27 16:20:26 -0700 (Thu, 27 Jan 2005) | 5 lines +r276 | jcbowman | 2005-01-28 00:20:26 +0100 (Fri, 28 Jan 2005) | 5 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -40702,35 +41104,35 @@ FreeBSD). Use "make all/make install" to produce/install both asy and man pages. ------------------------------------------------------------------------ -r275 | rtprince | 2005-01-27 00:30:12 -0700 (Thu, 27 Jan 2005) | 2 lines +r275 | rtprince | 2005-01-27 08:30:12 +0100 (Thu, 27 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Better? quadratic routine. ------------------------------------------------------------------------ -r274 | rtprince | 2005-01-26 11:06:22 -0700 (Wed, 26 Jan 2005) | 2 lines +r274 | rtprince | 2005-01-26 19:06:22 +0100 (Wed, 26 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Use solveQuadratic for path::bounds as well. ------------------------------------------------------------------------ -r273 | rtprince | 2005-01-26 10:44:00 -0700 (Wed, 26 Jan 2005) | 2 lines +r273 | rtprince | 2005-01-26 18:44:00 +0100 (Wed, 26 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fix fuzz case in cubic dir. ------------------------------------------------------------------------ -r272 | rtprince | 2005-01-26 10:37:55 -0700 (Wed, 26 Jan 2005) | 2 lines +r272 | rtprince | 2005-01-26 18:37:55 +0100 (Wed, 26 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/pair.h Duplicate code. ------------------------------------------------------------------------ -r271 | jcbowman | 2005-01-26 09:47:50 -0700 (Wed, 26 Jan 2005) | 2 lines +r271 | jcbowman | 2005-01-26 17:47:50 +0100 (Wed, 26 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/pair.h M /trunk/asymptote/path.cc @@ -40738,7 +41140,7 @@ Changed paths: Added fuzz to fix dirtime(unitcircle,dir(-45)) bug under make OPT=-g. ------------------------------------------------------------------------ -r270 | jcbowman | 2005-01-26 01:14:32 -0700 (Wed, 26 Jan 2005) | 9 lines +r270 | jcbowman | 2005-01-26 09:14:32 +0100 (Wed, 26 Jan 2005) | 9 lines Changed paths: A /trunk/asymptote/base/babel.asy M /trunk/asymptote/base/math.asy @@ -40762,14 +41164,14 @@ angles. Added triangle arc routine to math.asy. Renamed gray to lightgray in the example files. ------------------------------------------------------------------------ -r269 | jcbowman | 2005-01-25 09:02:15 -0700 (Tue, 25 Jan 2005) | 2 lines +r269 | jcbowman | 2005-01-25 17:02:15 +0100 (Tue, 25 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc Fixed explicit keyword (broken in dec.cc 1.8 on 2005-01-19). ------------------------------------------------------------------------ -r268 | jcbowman | 2005-01-22 01:55:26 -0700 (Sat, 22 Jan 2005) | 3 lines +r268 | jcbowman | 2005-01-22 09:55:26 +0100 (Sat, 22 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/examples/planes.asy @@ -40780,7 +41182,7 @@ Renamed gray to lightgray; gray now means gray(0.5). Added colorPens and monoPens lists and boolean variable mono. ------------------------------------------------------------------------ -r267 | jcbowman | 2005-01-22 00:14:42 -0700 (Sat, 22 Jan 2005) | 3 lines +r267 | jcbowman | 2005-01-22 08:14:42 +0100 (Sat, 22 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/pen.h @@ -40788,21 +41190,21 @@ TRANSPARENT pen now has higher precedence that DEFCOLOR; also output "invisible" for this pen color. ------------------------------------------------------------------------ -r266 | jcbowman | 2005-01-21 23:48:56 -0700 (Fri, 21 Jan 2005) | 2 lines +r266 | jcbowman | 2005-01-22 07:48:56 +0100 (Sat, 22 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Added checks on string position arguments. ------------------------------------------------------------------------ -r265 | rtprince | 2005-01-21 06:44:46 -0700 (Fri, 21 Jan 2005) | 2 lines +r265 | rtprince | 2005-01-21 14:44:46 +0100 (Fri, 21 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l Handle invalid numbers gracefully. ------------------------------------------------------------------------ -r264 | jcbowman | 2005-01-20 21:35:54 -0700 (Thu, 20 Jan 2005) | 2 lines +r264 | jcbowman | 2005-01-21 05:35:54 +0100 (Fri, 21 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/camp.l @@ -40810,21 +41212,21 @@ Changed paths: Fixed cstring so that '\\' produces a backslash. ------------------------------------------------------------------------ -r263 | rtprince | 2005-01-20 15:35:38 -0700 (Thu, 20 Jan 2005) | 2 lines +r263 | rtprince | 2005-01-20 23:35:38 +0100 (Thu, 20 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l Add C-style strings delimited by '. (e.g. '\n' instead of "\\n"). ------------------------------------------------------------------------ -r262 | jcbowman | 2005-01-20 03:14:02 -0700 (Thu, 20 Jan 2005) | 2 lines +r262 | jcbowman | 2005-01-20 11:14:02 +0100 (Thu, 20 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy More arc improvements. ------------------------------------------------------------------------ -r261 | jcbowman | 2005-01-20 01:19:33 -0700 (Thu, 20 Jan 2005) | 4 lines +r261 | jcbowman | 2005-01-20 09:19:33 +0100 (Thu, 20 Jan 2005) | 4 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/featpost3D.asy @@ -40840,14 +41242,14 @@ Added new arc routine and point/path utility functions. Added new examples and updates to feynman.asy. ------------------------------------------------------------------------ -r260 | rtprince | 2005-01-18 22:48:12 -0700 (Tue, 18 Jan 2005) | 2 lines +r260 | rtprince | 2005-01-19 06:48:12 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO *** empty log message *** ------------------------------------------------------------------------ -r259 | rtprince | 2005-01-18 22:44:26 -0700 (Tue, 18 Jan 2005) | 2 lines +r259 | rtprince | 2005-01-19 06:44:26 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.cc M /trunk/asymptote/exp.cc @@ -40858,7 +41260,7 @@ Changed paths: Get rid of as::defaultExp, and store varinit* in signature instead. ------------------------------------------------------------------------ -r258 | jcbowman | 2005-01-18 22:38:39 -0700 (Tue, 18 Jan 2005) | 2 lines +r258 | jcbowman | 2005-01-19 06:38:39 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/settings.cc @@ -40867,7 +41269,7 @@ Changed paths: Minor bbox fuzz and alignment adjustments; fixed xasy alignment. ------------------------------------------------------------------------ -r257 | jcbowman | 2005-01-18 20:49:33 -0700 (Tue, 18 Jan 2005) | 2 lines +r257 | jcbowman | 2005-01-19 04:49:33 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/camp.y @@ -40883,14 +41285,14 @@ Changed paths: Implementation of explicit keyword. ------------------------------------------------------------------------ -r256 | rtprince | 2005-01-18 20:16:10 -0700 (Tue, 18 Jan 2005) | 2 lines +r256 | rtprince | 2005-01-19 04:16:10 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/Compile Oops. ------------------------------------------------------------------------ -r255 | rtprince | 2005-01-18 20:14:34 -0700 (Tue, 18 Jan 2005) | 2 lines +r255 | rtprince | 2005-01-19 04:14:34 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/Compile M /trunk/asymptote/Makefile.in @@ -40898,7 +41300,7 @@ Changed paths: Fix makefile breakage. ------------------------------------------------------------------------ -r254 | rtprince | 2005-01-18 20:07:13 -0700 (Tue, 18 Jan 2005) | 2 lines +r254 | rtprince | 2005-01-19 04:07:13 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/Compile M /trunk/asymptote/Makefile.in @@ -40906,7 +41308,7 @@ Changed paths: Don't rebuild asy if we don't need to. ------------------------------------------------------------------------ -r253 | rtprince | 2005-01-18 18:33:16 -0700 (Tue, 18 Jan 2005) | 2 lines +r253 | rtprince | 2005-01-19 02:33:16 +0100 (Wed, 19 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/doc M /trunk/asymptote/doc/.cvsignore @@ -40914,7 +41316,7 @@ Changed paths: version.texi is autogenerated. ------------------------------------------------------------------------ -r252 | rtprince | 2005-01-18 11:25:05 -0700 (Tue, 18 Jan 2005) | 2 lines +r252 | rtprince | 2005-01-18 19:25:05 +0100 (Tue, 18 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -40922,7 +41324,7 @@ Changed paths: Make explicit a keyword to detect breakage. ------------------------------------------------------------------------ -r251 | jcbowman | 2005-01-18 00:24:50 -0700 (Tue, 18 Jan 2005) | 2 lines +r251 | jcbowman | 2005-01-18 08:24:50 +0100 (Tue, 18 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -40933,7 +41335,7 @@ Changed paths: Inhibit output of null labels. ------------------------------------------------------------------------ -r250 | jcbowman | 2005-01-17 17:30:20 -0700 (Mon, 17 Jan 2005) | 2 lines +r250 | jcbowman | 2005-01-18 01:30:20 +0100 (Tue, 18 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile M /trunk/asymptote/examples/cosaddition.asy @@ -40942,14 +41344,14 @@ Changed paths: Fixed antialiasing and gv -watch problems. ------------------------------------------------------------------------ -r249 | jcbowman | 2005-01-17 15:11:34 -0700 (Mon, 17 Jan 2005) | 2 lines +r249 | jcbowman | 2005-01-17 23:11:34 +0100 (Mon, 17 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Incremented version to 0.59cvs. ------------------------------------------------------------------------ -r248 | jcbowman | 2005-01-16 21:43:30 -0700 (Sun, 16 Jan 2005) | 2 lines +r248 | jcbowman | 2005-01-17 05:43:30 +0100 (Mon, 17 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/circles.asy M /trunk/asymptote/examples/geometry.asy @@ -40957,28 +41359,28 @@ Changed paths: Updated new examples. ------------------------------------------------------------------------ -r247 | jcbowman | 2005-01-16 21:35:30 -0700 (Sun, 16 Jan 2005) | 2 lines +r247 | jcbowman | 2005-01-17 05:35:30 +0100 (Mon, 17 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed formatting. ------------------------------------------------------------------------ -r246 | jcbowman | 2005-01-16 21:16:23 -0700 (Sun, 16 Jan 2005) | 2 lines +r246 | jcbowman | 2005-01-17 05:16:23 +0100 (Mon, 17 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed warning message about unused variable. ------------------------------------------------------------------------ -r245 | jcbowman | 2005-01-16 20:54:49 -0700 (Sun, 16 Jan 2005) | 2 lines +r245 | jcbowman | 2005-01-17 04:54:49 +0100 (Mon, 17 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/TODO Added new entry. ------------------------------------------------------------------------ -r244 | jcbowman | 2005-01-16 20:45:57 -0700 (Sun, 16 Jan 2005) | 5 lines +r244 | jcbowman | 2005-01-17 04:45:57 +0100 (Mon, 17 Jan 2005) | 5 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -41005,14 +41407,14 @@ Removed unused pen defaultpen() in favour of void defaultpen(), which resets all pen default attributes to their startup values. ------------------------------------------------------------------------ -r243 | jcbowman | 2005-01-16 00:26:46 -0700 (Sun, 16 Jan 2005) | 2 lines +r243 | jcbowman | 2005-01-16 08:26:46 +0100 (Sun, 16 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/tree.asy Added missing == and != operators for struct tree. ------------------------------------------------------------------------ -r242 | jcbowman | 2005-01-16 00:15:54 -0700 (Sun, 16 Jan 2005) | 3 lines +r242 | jcbowman | 2005-01-16 08:15:54 +0100 (Sun, 16 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -41030,7 +41432,7 @@ Replaced defaultlinewidth and defaultfontsize commands with defaultpen(pen). Moved reset() into plain.asy. ------------------------------------------------------------------------ -r241 | jcbowman | 2005-01-15 23:11:03 -0700 (Sat, 15 Jan 2005) | 2 lines +r241 | jcbowman | 2005-01-16 07:11:03 +0100 (Sun, 16 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/fileio.cc @@ -41040,7 +41442,7 @@ Changed paths: Added configure option to detect xdr/rpc header files. ------------------------------------------------------------------------ -r240 | jcbowman | 2005-01-15 17:45:32 -0700 (Sat, 15 Jan 2005) | 6 lines +r240 | jcbowman | 2005-01-16 01:45:32 +0100 (Sun, 16 Jan 2005) | 6 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/math.asy @@ -41059,7 +41461,7 @@ documentation. Simplified routine for drawing perpendicular symbols in math.asy. ------------------------------------------------------------------------ -r239 | rtprince | 2005-01-14 14:30:51 -0700 (Fri, 14 Jan 2005) | 2 lines +r239 | rtprince | 2005-01-14 22:30:51 +0100 (Fri, 14 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/access.cc M /trunk/asymptote/coder.cc @@ -41076,14 +41478,14 @@ Changed paths: Store operands with opcode, rather than in the following inst. ------------------------------------------------------------------------ -r238 | rtprince | 2005-01-12 11:45:37 -0700 (Wed, 12 Jan 2005) | 2 lines +r238 | rtprince | 2005-01-12 19:45:37 +0100 (Wed, 12 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/dec.h markTrans and markTransAsField are utility functions that don't need to be redefined. ------------------------------------------------------------------------ -r237 | rtprince | 2005-01-12 11:36:53 -0700 (Wed, 12 Jan 2005) | 2 lines +r237 | rtprince | 2005-01-12 19:36:53 +0100 (Wed, 12 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/absyn.cc M /trunk/asymptote/absyn.h @@ -41099,7 +41501,7 @@ Changed paths: Clean up header file dependencies. ------------------------------------------------------------------------ -r236 | jcbowman | 2005-01-12 10:17:35 -0700 (Wed, 12 Jan 2005) | 2 lines +r236 | jcbowman | 2005-01-12 18:17:35 +0100 (Wed, 12 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41107,21 +41509,21 @@ Changed paths: Made currentpen static. ------------------------------------------------------------------------ -r235 | jcbowman | 2005-01-11 21:42:27 -0700 (Tue, 11 Jan 2005) | 2 lines +r235 | jcbowman | 2005-01-12 05:42:27 +0100 (Wed, 12 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Use $(MAKE) rather than make everywhere within Makefile. ------------------------------------------------------------------------ -r234 | jcbowman | 2005-01-11 21:14:09 -0700 (Tue, 11 Jan 2005) | 2 lines +r234 | jcbowman | 2005-01-12 05:14:09 +0100 (Wed, 12 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 0.58cvs. ------------------------------------------------------------------------ -r233 | jcbowman | 2005-01-11 20:52:01 -0700 (Tue, 11 Jan 2005) | 3 lines +r233 | jcbowman | 2005-01-12 04:52:01 +0100 (Wed, 12 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/graph.asy @@ -41143,7 +41545,7 @@ Removed direction(path, real) and direction(path, int) in favour of dir(path, real t=1) and dir(path, int t=1). Added examples. ------------------------------------------------------------------------ -r232 | jcbowman | 2005-01-11 16:29:22 -0700 (Tue, 11 Jan 2005) | 2 lines +r232 | jcbowman | 2005-01-12 00:29:22 +0100 (Wed, 12 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -41159,21 +41561,21 @@ Changed paths: Made overwrite mode a pen attribute; updated documentation. ------------------------------------------------------------------------ -r231 | rtprince | 2005-01-11 12:31:37 -0700 (Tue, 11 Jan 2005) | 2 lines +r231 | rtprince | 2005-01-11 20:31:37 +0100 (Tue, 11 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc symbol::trans accepts a std::string not a char*. ------------------------------------------------------------------------ -r230 | rtprince | 2005-01-11 12:30:26 -0700 (Tue, 11 Jan 2005) | 2 lines +r230 | rtprince | 2005-01-11 20:30:26 +0100 (Tue, 11 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/settings.h Fix typo in comment. ------------------------------------------------------------------------ -r229 | jcbowman | 2005-01-11 01:55:28 -0700 (Tue, 11 Jan 2005) | 3 lines +r229 | jcbowman | 2005-01-11 09:55:28 +0100 (Tue, 11 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/doc/asymptote.texi @@ -41183,7 +41585,7 @@ Fixed infinite loop bug in overwrite mode. Added synonym dir(path,int) for direction(path,int), etc. ------------------------------------------------------------------------ -r228 | jcbowman | 2005-01-10 21:04:30 -0700 (Mon, 10 Jan 2005) | 7 lines +r228 | jcbowman | 2005-01-11 05:04:30 +0100 (Tue, 11 Jan 2005) | 7 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41205,21 +41607,21 @@ Generalized baseline routine and moved from texfile.cc into plain.asy. Adjusted logo for new labeling system. ------------------------------------------------------------------------ -r227 | jcbowman | 2005-01-09 17:10:02 -0700 (Sun, 09 Jan 2005) | 2 lines +r227 | jcbowman | 2005-01-10 01:10:02 +0100 (Mon, 10 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 0.57cvs. ------------------------------------------------------------------------ -r226 | jcbowman | 2005-01-09 16:16:50 -0700 (Sun, 09 Jan 2005) | 2 lines +r226 | jcbowman | 2005-01-10 00:16:50 +0100 (Mon, 10 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Make PSViewer and PDFViewer search conform to documented behaviour. ------------------------------------------------------------------------ -r225 | jcbowman | 2005-01-09 14:43:21 -0700 (Sun, 09 Jan 2005) | 2 lines +r225 | jcbowman | 2005-01-09 22:43:21 +0100 (Sun, 09 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -41234,7 +41636,7 @@ Changed paths: Implemented radial gradient shading; updated documentation. ------------------------------------------------------------------------ -r224 | jcbowman | 2005-01-09 11:35:09 -0700 (Sun, 09 Jan 2005) | 6 lines +r224 | jcbowman | 2005-01-09 19:35:09 +0100 (Sun, 09 Jan 2005) | 6 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -41258,7 +41660,7 @@ the minipage function, secondary axes, and the drawabout function. The new real[[] colors(pen) function returns the color components of a pen. ------------------------------------------------------------------------ -r223 | jcbowman | 2005-01-09 02:02:17 -0700 (Sun, 09 Jan 2005) | 4 lines +r223 | jcbowman | 2005-01-09 10:02:17 +0100 (Sun, 09 Jan 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -41286,7 +41688,7 @@ Added linecap and linejoin pen specifiers. Updated documentation with examples of new features. ------------------------------------------------------------------------ -r222 | jcbowman | 2005-01-06 20:47:04 -0700 (Thu, 06 Jan 2005) | 2 lines +r222 | jcbowman | 2005-01-07 04:47:04 +0100 (Fri, 07 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41294,7 +41696,7 @@ Changed paths: Minor interp and secondary axis updates. ------------------------------------------------------------------------ -r221 | jcbowman | 2005-01-06 15:28:55 -0700 (Thu, 06 Jan 2005) | 3 lines +r221 | jcbowman | 2005-01-06 23:28:55 +0100 (Thu, 06 Jan 2005) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41305,21 +41707,21 @@ New postscript-coordinate shift option for label routines; pictures added to pictures now transform properly; updated documentation. ------------------------------------------------------------------------ -r220 | jcbowman | 2005-01-06 03:20:46 -0700 (Thu, 06 Jan 2005) | 2 lines +r220 | jcbowman | 2005-01-06 11:20:46 +0100 (Thu, 06 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Added secondary axis facility; fixed scaling bug. ------------------------------------------------------------------------ -r219 | jcbowman | 2005-01-06 03:19:12 -0700 (Thu, 06 Jan 2005) | 2 lines +r219 | jcbowman | 2005-01-06 11:19:12 +0100 (Thu, 06 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/runtime.h minor formatting. ------------------------------------------------------------------------ -r218 | jcbowman | 2005-01-06 03:17:36 -0700 (Thu, 06 Jan 2005) | 2 lines +r218 | jcbowman | 2005-01-06 11:17:36 +0100 (Thu, 06 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41327,7 +41729,7 @@ Changed paths: Removed unused currentframe variable; updated documentation. ------------------------------------------------------------------------ -r217 | jcbowman | 2005-01-05 16:19:22 -0700 (Wed, 05 Jan 2005) | 2 lines +r217 | jcbowman | 2005-01-06 00:19:22 +0100 (Thu, 06 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/runtime.h @@ -41335,35 +41737,35 @@ Changed paths: Further csv and linemode updates. ------------------------------------------------------------------------ -r216 | jcbowman | 2005-01-05 09:21:16 -0700 (Wed, 05 Jan 2005) | 2 lines +r216 | jcbowman | 2005-01-05 17:21:16 +0100 (Wed, 05 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc Fixed cvs+line mode bugs. ------------------------------------------------------------------------ -r215 | jcbowman | 2005-01-05 09:20:56 -0700 (Wed, 05 Jan 2005) | 2 lines +r215 | jcbowman | 2005-01-05 17:20:56 +0100 (Wed, 05 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/examples/lever.asy label positioning update ------------------------------------------------------------------------ -r214 | jcbowman | 2005-01-05 09:20:26 -0700 (Wed, 05 Jan 2005) | 2 lines +r214 | jcbowman | 2005-01-05 17:20:26 +0100 (Wed, 05 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc minor formatting. ------------------------------------------------------------------------ -r213 | jcbowman | 2005-01-05 00:01:23 -0700 (Wed, 05 Jan 2005) | 2 lines +r213 | jcbowman | 2005-01-05 08:01:23 +0100 (Wed, 05 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation. ------------------------------------------------------------------------ -r212 | jcbowman | 2005-01-04 23:38:08 -0700 (Tue, 04 Jan 2005) | 4 lines +r212 | jcbowman | 2005-01-05 07:38:08 +0100 (Wed, 05 Jan 2005) | 4 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41375,7 +41777,7 @@ Updated documentation regarding new optional position argument of path labels (draw and drawabout). ------------------------------------------------------------------------ -r211 | jcbowman | 2005-01-04 21:00:13 -0700 (Tue, 04 Jan 2005) | 2 lines +r211 | jcbowman | 2005-01-05 05:00:13 +0100 (Wed, 05 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41385,21 +41787,21 @@ Changed paths: Align labels before adding label bounding box fuzz. ------------------------------------------------------------------------ -r210 | jcbowman | 2005-01-04 20:58:24 -0700 (Tue, 04 Jan 2005) | 2 lines +r210 | jcbowman | 2005-01-05 04:58:24 +0100 (Wed, 05 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy Use math italic axis labels. ------------------------------------------------------------------------ -r209 | jcbowman | 2005-01-04 12:07:41 -0700 (Tue, 04 Jan 2005) | 2 lines +r209 | jcbowman | 2005-01-04 20:07:41 +0100 (Tue, 04 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/errors Updated. ------------------------------------------------------------------------ -r208 | jcbowman | 2005-01-04 12:05:08 -0700 (Tue, 04 Jan 2005) | 2 lines +r208 | jcbowman | 2005-01-04 20:05:08 +0100 (Tue, 04 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc M /trunk/asymptote/types.h @@ -41407,7 +41809,7 @@ Changed paths: Added function name to "cannot call...with" error messages. ------------------------------------------------------------------------ -r207 | jcbowman | 2005-01-04 00:34:48 -0700 (Tue, 04 Jan 2005) | 2 lines +r207 | jcbowman | 2005-01-04 08:34:48 +0100 (Tue, 04 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/math.asy @@ -41422,14 +41824,14 @@ Changed paths: Improved and tightened label bounding box calculation. ------------------------------------------------------------------------ -r206 | jcbowman | 2005-01-04 00:32:19 -0700 (Tue, 04 Jan 2005) | 2 lines +r206 | jcbowman | 2005-01-04 08:32:19 +0100 (Tue, 04 Jan 2005) | 2 lines Changed paths: M /trunk/asymptote/exp.cc Made "cannot call type...with" diagnostic easier to read. ------------------------------------------------------------------------ -r205 | jcbowman | 2004-12-28 08:21:41 -0700 (Tue, 28 Dec 2004) | 2 lines +r205 | jcbowman | 2004-12-28 16:21:41 +0100 (Tue, 28 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41438,14 +41840,14 @@ Changed paths: label and arrow adjustments ------------------------------------------------------------------------ -r204 | jcbowman | 2004-12-27 01:01:56 -0700 (Mon, 27 Dec 2004) | 2 lines +r204 | jcbowman | 2004-12-27 09:01:56 +0100 (Mon, 27 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added minipage and outarrow routines. ------------------------------------------------------------------------ -r203 | jcbowman | 2004-12-26 18:55:48 -0700 (Sun, 26 Dec 2004) | 2 lines +r203 | jcbowman | 2004-12-27 02:55:48 +0100 (Mon, 27 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/drawverbatim.h @@ -41459,21 +41861,21 @@ Changed paths: Fixed TeX pipestream embedded newline & diagnostic problems. ------------------------------------------------------------------------ -r202 | jcbowman | 2004-12-26 13:20:02 -0700 (Sun, 26 Dec 2004) | 2 lines +r202 | jcbowman | 2004-12-26 21:20:02 +0100 (Sun, 26 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy implement scaling of pic.userMin and pic.userMax. ------------------------------------------------------------------------ -r201 | jcbowman | 2004-12-22 22:01:33 -0700 (Wed, 22 Dec 2004) | 2 lines +r201 | jcbowman | 2004-12-23 06:01:33 +0100 (Thu, 23 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added newpage() command. ------------------------------------------------------------------------ -r200 | jcbowman | 2004-12-22 18:16:14 -0700 (Wed, 22 Dec 2004) | 2 lines +r200 | jcbowman | 2004-12-23 02:16:14 +0100 (Thu, 23 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/drawlabel.h @@ -41484,7 +41886,7 @@ Changed paths: Improved and simplified label code. ------------------------------------------------------------------------ -r199 | jcbowman | 2004-12-22 14:06:19 -0700 (Wed, 22 Dec 2004) | 2 lines +r199 | jcbowman | 2004-12-22 22:06:19 +0100 (Wed, 22 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/drawlabel.cc @@ -41493,7 +41895,7 @@ Changed paths: More label updates. ------------------------------------------------------------------------ -r198 | jcbowman | 2004-12-22 03:01:04 -0700 (Wed, 22 Dec 2004) | 2 lines +r198 | jcbowman | 2004-12-22 11:01:04 +0100 (Wed, 22 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/drawlabel.cc @@ -41502,7 +41904,7 @@ Changed paths: Label updates. ------------------------------------------------------------------------ -r197 | jcbowman | 2004-12-21 01:07:25 -0700 (Tue, 21 Dec 2004) | 2 lines +r197 | jcbowman | 2004-12-21 09:07:25 +0100 (Tue, 21 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc M /trunk/asymptote/picture.cc @@ -41510,14 +41912,14 @@ Changed paths: Improved label bounding boxes. ------------------------------------------------------------------------ -r196 | jcbowman | 2004-12-19 21:00:22 -0700 (Sun, 19 Dec 2004) | 2 lines +r196 | jcbowman | 2004-12-20 05:00:22 +0100 (Mon, 20 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/drawlabel.cc Account for depth in label alignment code. ------------------------------------------------------------------------ -r195 | jcbowman | 2004-12-17 11:35:21 -0700 (Fri, 17 Dec 2004) | 2 lines +r195 | jcbowman | 2004-12-17 19:35:21 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/texfile.cc @@ -41525,14 +41927,14 @@ Changed paths: Fine tuning of label offset (dependent on pdf/-B). ------------------------------------------------------------------------ -r194 | jcbowman | 2004-12-16 21:17:16 -0700 (Thu, 16 Dec 2004) | 2 lines +r194 | jcbowman | 2004-12-17 05:17:16 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 0.56cvs. ------------------------------------------------------------------------ -r193 | jcbowman | 2004-12-16 16:52:04 -0700 (Thu, 16 Dec 2004) | 2 lines +r193 | jcbowman | 2004-12-17 00:52:04 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -41540,21 +41942,21 @@ Changed paths: Force use of bison (not yacc). ------------------------------------------------------------------------ -r192 | jcbowman | 2004-12-16 16:32:16 -0700 (Thu, 16 Dec 2004) | 2 lines +r192 | jcbowman | 2004-12-17 00:32:16 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed warning messages. ------------------------------------------------------------------------ -r191 | jcbowman | 2004-12-16 16:26:09 -0700 (Thu, 16 Dec 2004) | 2 lines +r191 | jcbowman | 2004-12-17 00:26:09 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi ispell updates ------------------------------------------------------------------------ -r190 | jcbowman | 2004-12-16 16:21:08 -0700 (Thu, 16 Dec 2004) | 2 lines +r190 | jcbowman | 2004-12-17 00:21:08 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/doc/asymptote.texi @@ -41562,14 +41964,14 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r189 | jcbowman | 2004-12-16 16:05:14 -0700 (Thu, 16 Dec 2004) | 2 lines +r189 | jcbowman | 2004-12-17 00:05:14 +0100 (Fri, 17 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Improved latex diagnostics. ------------------------------------------------------------------------ -r188 | jcbowman | 2004-12-16 12:14:58 -0700 (Thu, 16 Dec 2004) | 2 lines +r188 | jcbowman | 2004-12-16 20:14:58 +0100 (Thu, 16 Dec 2004) | 2 lines Changed paths: A /trunk/asymptote/base/feynman.asy M /trunk/asymptote/base/graph.asy @@ -41580,7 +41982,7 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r187 | jcbowman | 2004-12-16 11:45:54 -0700 (Thu, 16 Dec 2004) | 2 lines +r187 | jcbowman | 2004-12-16 19:45:54 +0100 (Thu, 16 Dec 2004) | 2 lines Changed paths: A /trunk/asymptote/examples/conicurv.asy A /trunk/asymptote/examples/gluon.asy @@ -41589,14 +41991,14 @@ Changed paths: Contributed examples. ------------------------------------------------------------------------ -r186 | jcbowman | 2004-12-16 09:11:08 -0700 (Thu, 16 Dec 2004) | 2 lines +r186 | jcbowman | 2004-12-16 17:11:08 +0100 (Thu, 16 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/metapost.asy Added cuttings global variable. ------------------------------------------------------------------------ -r185 | jcbowman | 2004-12-15 22:42:14 -0700 (Wed, 15 Dec 2004) | 2 lines +r185 | jcbowman | 2004-12-16 06:42:14 +0100 (Thu, 16 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy A /trunk/asymptote/base/metapost.asy @@ -41605,7 +42007,7 @@ Changed paths: Moved metapost compatibility routines to separate file. ------------------------------------------------------------------------ -r184 | jcbowman | 2004-12-15 21:52:04 -0700 (Wed, 15 Dec 2004) | 2 lines +r184 | jcbowman | 2004-12-16 05:52:04 +0100 (Thu, 16 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41613,21 +42015,21 @@ Changed paths: Perhaps a more sensible alternative to Metapost cutbefore/cutafter/cuttings. ------------------------------------------------------------------------ -r183 | jcbowman | 2004-12-15 09:31:40 -0700 (Wed, 15 Dec 2004) | 2 lines +r183 | jcbowman | 2004-12-15 17:31:40 +0100 (Wed, 15 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/latexusage.tex updated coordinate ------------------------------------------------------------------------ -r182 | jcbowman | 2004-12-15 09:30:10 -0700 (Wed, 15 Dec 2004) | 2 lines +r182 | jcbowman | 2004-12-15 17:30:10 +0100 (Wed, 15 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/featpost3D.asy Added translator name. ------------------------------------------------------------------------ -r181 | jcbowman | 2004-12-15 09:26:31 -0700 (Wed, 15 Dec 2004) | 3 lines +r181 | jcbowman | 2004-12-15 17:26:31 +0100 (Wed, 15 Dec 2004) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41636,14 +42038,14 @@ added before(path,path) and after(path,path); documented cutbefore and cutafter and changed them to work always according to these specificiations. ------------------------------------------------------------------------ -r180 | jcbowman | 2004-12-14 17:39:21 -0700 (Tue, 14 Dec 2004) | 2 lines +r180 | jcbowman | 2004-12-15 01:39:21 +0100 (Wed, 15 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Fixed bug [ 1084667 ] asydef environment. ------------------------------------------------------------------------ -r179 | jcbowman | 2004-12-14 17:24:27 -0700 (Tue, 14 Dec 2004) | 2 lines +r179 | jcbowman | 2004-12-15 01:24:27 +0100 (Wed, 15 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/pen.h M /trunk/asymptote/psfile.cc @@ -41652,7 +42054,7 @@ Changed paths: Fixed bug [ 1084641 ] problem with defaultfontsize. ------------------------------------------------------------------------ -r178 | jcbowman | 2004-12-14 12:02:12 -0700 (Tue, 14 Dec 2004) | 3 lines +r178 | jcbowman | 2004-12-14 20:02:12 +0100 (Tue, 14 Dec 2004) | 3 lines Changed paths: M /trunk/asymptote/runtime.cc @@ -41660,7 +42062,7 @@ in texPreamble: replaced newlines with spaces as they can break bidirectional TeX pipe. ------------------------------------------------------------------------ -r177 | jcbowman | 2004-12-13 12:01:12 -0700 (Mon, 13 Dec 2004) | 2 lines +r177 | jcbowman | 2004-12-13 20:01:12 +0100 (Mon, 13 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41668,7 +42070,7 @@ Changed paths: Simplified axis capping. ------------------------------------------------------------------------ -r176 | jcbowman | 2004-12-13 10:30:01 -0700 (Mon, 13 Dec 2004) | 2 lines +r176 | jcbowman | 2004-12-13 18:30:01 +0100 (Mon, 13 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/examples/equilchord.asy @@ -41678,21 +42080,21 @@ Changed paths: Fix override of axis label positioning. ------------------------------------------------------------------------ -r175 | jcbowman | 2004-12-12 23:55:30 -0700 (Sun, 12 Dec 2004) | 2 lines +r175 | jcbowman | 2004-12-13 07:55:30 +0100 (Mon, 13 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/path.cc Fixed bug 1084016: error in bounding box computation. ------------------------------------------------------------------------ -r174 | jcbowman | 2004-12-12 17:05:09 -0700 (Sun, 12 Dec 2004) | 2 lines +r174 | jcbowman | 2004-12-13 01:05:09 +0100 (Mon, 13 Dec 2004) | 2 lines Changed paths: A /trunk/asymptote/base/featpost3D.asy Partial port of featpost 3D package for MetaPost. ------------------------------------------------------------------------ -r173 | jcbowman | 2004-12-12 17:04:06 -0700 (Sun, 12 Dec 2004) | 5 lines +r173 | jcbowman | 2004-12-13 01:04:06 +0100 (Mon, 13 Dec 2004) | 5 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/base/math.asy @@ -41705,7 +42107,7 @@ Added pen background=white, unfill, cutbefore, and cutafter. Documentation updates. ------------------------------------------------------------------------ -r172 | jcbowman | 2004-12-12 16:59:33 -0700 (Sun, 12 Dec 2004) | 3 lines +r172 | jcbowman | 2004-12-13 00:59:33 +0100 (Mon, 13 Dec 2004) | 3 lines Changed paths: M /trunk/asymptote/dec.cc @@ -41713,21 +42115,21 @@ Changed default structure operator == to alias (as with arrays) to allow user-defined == operators on structures. Also removed != in favour of !alias. ------------------------------------------------------------------------ -r171 | jcbowman | 2004-12-11 13:59:39 -0700 (Sat, 11 Dec 2004) | 2 lines +r171 | jcbowman | 2004-12-11 21:59:39 +0100 (Sat, 11 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/camp.l Handle invalid operators cleanly. ------------------------------------------------------------------------ -r170 | jcbowman | 2004-12-10 17:32:52 -0700 (Fri, 10 Dec 2004) | 2 lines +r170 | jcbowman | 2004-12-11 01:32:52 +0100 (Sat, 11 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Updated bug report address. ------------------------------------------------------------------------ -r169 | jcbowman | 2004-12-10 16:10:39 -0700 (Fri, 10 Dec 2004) | 2 lines +r169 | jcbowman | 2004-12-11 00:10:39 +0100 (Sat, 11 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/path.cc M /trunk/asymptote/path.h @@ -41735,7 +42137,7 @@ Changed paths: Fixed nullpath bugs. ------------------------------------------------------------------------ -r168 | jcbowman | 2004-12-10 16:10:21 -0700 (Fri, 10 Dec 2004) | 2 lines +r168 | jcbowman | 2004-12-11 00:10:21 +0100 (Sat, 11 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -41743,21 +42145,21 @@ Changed paths: Installation updates ------------------------------------------------------------------------ -r167 | jcbowman | 2004-12-10 11:17:20 -0700 (Fri, 10 Dec 2004) | 2 lines +r167 | jcbowman | 2004-12-10 19:17:20 +0100 (Fri, 10 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Make info and man directories if missing. ------------------------------------------------------------------------ -r166 | jcbowman | 2004-12-10 10:57:18 -0700 (Fri, 10 Dec 2004) | 2 lines +r166 | jcbowman | 2004-12-10 18:57:18 +0100 (Fri, 10 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Added missing include. ------------------------------------------------------------------------ -r165 | jcbowman | 2004-12-10 10:55:11 -0700 (Fri, 10 Dec 2004) | 2 lines +r165 | jcbowman | 2004-12-10 18:55:11 +0100 (Fri, 10 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -41766,7 +42168,7 @@ Changed paths: Simplified configuration. ------------------------------------------------------------------------ -r164 | jcbowman | 2004-12-09 22:32:49 -0700 (Thu, 09 Dec 2004) | 2 lines +r164 | jcbowman | 2004-12-10 06:32:49 +0100 (Fri, 10 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -41774,21 +42176,21 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r163 | hammera | 2004-12-09 11:41:11 -0700 (Thu, 09 Dec 2004) | 2 lines +r163 | hammera | 2004-12-09 19:41:11 +0100 (Thu, 09 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/knotlist.cc Fixed tension atleast bug. ------------------------------------------------------------------------ -r162 | jcbowman | 2004-12-05 11:32:56 -0700 (Sun, 05 Dec 2004) | 2 lines +r162 | jcbowman | 2004-12-05 19:32:56 +0100 (Sun, 05 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy Improved axis label sizing. ------------------------------------------------------------------------ -r161 | jcbowman | 2004-12-05 11:31:11 -0700 (Sun, 05 Dec 2004) | 3 lines +r161 | jcbowman | 2004-12-05 19:31:11 +0100 (Sun, 05 Dec 2004) | 3 lines Changed paths: M /trunk/asymptote/main.cc @@ -41796,21 +42198,21 @@ Remove signal(SIGCHLD, SIG_IGN): there are no remaining problems with zombies, and it causes other problems with gv. ------------------------------------------------------------------------ -r160 | jcbowman | 2004-12-05 10:38:47 -0700 (Sun, 05 Dec 2004) | 2 lines +r160 | jcbowman | 2004-12-05 18:38:47 +0100 (Sun, 05 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed typo. ------------------------------------------------------------------------ -r159 | jcbowman | 2004-12-05 03:26:52 -0700 (Sun, 05 Dec 2004) | 2 lines +r159 | jcbowman | 2004-12-05 11:26:52 +0100 (Sun, 05 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 0.55cvs. ------------------------------------------------------------------------ -r158 | jcbowman | 2004-12-05 02:19:43 -0700 (Sun, 05 Dec 2004) | 4 lines +r158 | jcbowman | 2004-12-05 10:19:43 +0100 (Sun, 05 Dec 2004) | 4 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41824,14 +42226,14 @@ compensating for space taken up by external legend); the default width in asymptote.sty is now the full line width. ------------------------------------------------------------------------ -r157 | jcbowman | 2004-12-05 02:10:08 -0700 (Sun, 05 Dec 2004) | 2 lines +r157 | jcbowman | 2004-12-05 10:10:08 +0100 (Sun, 05 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/Makefile Added missing mkdir. ------------------------------------------------------------------------ -r156 | jcbowman | 2004-12-04 16:07:57 -0700 (Sat, 04 Dec 2004) | 6 lines +r156 | jcbowman | 2004-12-05 00:07:57 +0100 (Sun, 05 Dec 2004) | 6 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asy.1 @@ -41847,7 +42249,7 @@ Default postscript offset is now 0,0. Option -B (-T) aligns to bottom (top) of page. ------------------------------------------------------------------------ -r155 | jcbowman | 2004-12-04 14:15:09 -0700 (Sat, 04 Dec 2004) | 13 lines +r155 | jcbowman | 2004-12-04 22:15:09 +0100 (Sat, 04 Dec 2004) | 13 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/doc/Makefile @@ -41873,14 +42275,14 @@ http://people.debian.org/~srivasta/Position_Statement.xhtml Added man pages asy.1 and xasy.1x kindly provided by Hubert. ------------------------------------------------------------------------ -r154 | jcbowman | 2004-12-04 13:42:17 -0700 (Sat, 04 Dec 2004) | 2 lines +r154 | jcbowman | 2004-12-04 21:42:17 +0100 (Sat, 04 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Fixed -with-latex=PATH. ------------------------------------------------------------------------ -r153 | jcbowman | 2004-12-04 13:03:09 -0700 (Sat, 04 Dec 2004) | 2 lines +r153 | jcbowman | 2004-12-04 21:03:09 +0100 (Sat, 04 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -41888,7 +42290,7 @@ Changed paths: Added --with-latex=PATH configuration option. ------------------------------------------------------------------------ -r152 | jcbowman | 2004-12-03 23:15:57 -0700 (Fri, 03 Dec 2004) | 5 lines +r152 | jcbowman | 2004-12-04 07:15:57 +0100 (Sat, 04 Dec 2004) | 5 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -41901,7 +42303,7 @@ accurate graph sizing. Added Portrait, Landscape, and Seascape shipout orientations. ------------------------------------------------------------------------ -r151 | jcbowman | 2004-12-03 11:15:14 -0700 (Fri, 03 Dec 2004) | 2 lines +r151 | jcbowman | 2004-12-03 19:15:14 +0100 (Fri, 03 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/picture.cc @@ -41912,7 +42314,7 @@ Changed paths: Bounding box & diagnostic tweaks. ------------------------------------------------------------------------ -r150 | jcbowman | 2004-12-03 07:52:52 -0700 (Fri, 03 Dec 2004) | 2 lines +r150 | jcbowman | 2004-12-03 15:52:52 +0100 (Fri, 03 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/picture.cc M /trunk/asymptote/util.h @@ -41920,7 +42322,7 @@ Changed paths: Added missing header to make cxx compiler happy. ------------------------------------------------------------------------ -r149 | jcbowman | 2004-12-03 07:31:00 -0700 (Fri, 03 Dec 2004) | 9 lines +r149 | jcbowman | 2004-12-03 15:31:00 +0100 (Fri, 03 Dec 2004) | 9 lines Changed paths: M /trunk/asymptote/bbox.h M /trunk/asymptote/doc/asymptote.sty @@ -41946,14 +42348,14 @@ the generated EPS files. User can override default offset of 18bp. Updated documentation. ------------------------------------------------------------------------ -r148 | jcbowman | 2004-12-03 07:23:35 -0700 (Fri, 03 Dec 2004) | 2 lines +r148 | jcbowman | 2004-12-03 15:23:35 +0100 (Fri, 03 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/examples/cardiod.asy Adjusted label alignment. ------------------------------------------------------------------------ -r147 | jcbowman | 2004-12-02 11:54:48 -0700 (Thu, 02 Dec 2004) | 3 lines +r147 | jcbowman | 2004-12-02 19:54:48 +0100 (Thu, 02 Dec 2004) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -41961,7 +42363,7 @@ Reinstate label bounding box determination; xequals and yequals routines will still work as expected if crop is called. ------------------------------------------------------------------------ -r146 | jcbowman | 2004-12-02 02:00:42 -0700 (Thu, 02 Dec 2004) | 9 lines +r146 | jcbowman | 2004-12-02 10:00:42 +0100 (Thu, 02 Dec 2004) | 9 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/genv.cc @@ -41983,14 +42385,14 @@ Fixed filename extension detection so that filenames containing ./ and ../ work correctly. ------------------------------------------------------------------------ -r145 | jcbowman | 2004-12-02 01:54:00 -0700 (Thu, 02 Dec 2004) | 2 lines +r145 | jcbowman | 2004-12-02 09:54:00 +0100 (Thu, 02 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/cast.cc Fixed typo. ------------------------------------------------------------------------ -r144 | jcbowman | 2004-12-01 09:56:39 -0700 (Wed, 01 Dec 2004) | 2 lines +r144 | jcbowman | 2004-12-01 17:56:39 +0100 (Wed, 01 Dec 2004) | 2 lines Changed paths: D /trunk/asymptote/bison.patch D /trunk/asymptote/flex.patch @@ -42002,14 +42404,14 @@ Changed paths: Patches for bison, flex, and gv-3.5.8 now in patches directory. ------------------------------------------------------------------------ -r143 | jcbowman | 2004-12-01 09:52:27 -0700 (Wed, 01 Dec 2004) | 2 lines +r143 | jcbowman | 2004-12-01 17:52:27 +0100 (Wed, 01 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Arrow and bars should always be drawn with solid linetype. ------------------------------------------------------------------------ -r142 | jcbowman | 2004-11-30 17:50:49 -0700 (Tue, 30 Nov 2004) | 2 lines +r142 | jcbowman | 2004-12-01 01:50:49 +0100 (Wed, 01 Dec 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -42017,14 +42419,14 @@ Changed paths: Changed dots(pair[]) to dot(pair[]); added graph(pair(real),real,real). ------------------------------------------------------------------------ -r141 | jcbowman | 2004-11-30 14:03:29 -0700 (Tue, 30 Nov 2004) | 2 lines +r141 | jcbowman | 2004-11-30 22:03:29 +0100 (Tue, 30 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/BUGS Fixed typo. ------------------------------------------------------------------------ -r140 | jcbowman | 2004-11-30 13:53:16 -0700 (Tue, 30 Nov 2004) | 3 lines +r140 | jcbowman | 2004-11-30 21:53:16 +0100 (Tue, 30 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/BUGS M /trunk/asymptote/base/graph.asy @@ -42042,21 +42444,21 @@ Simplified dot drawing function, distinguished it from Dot product, and updated documentation and examples. ------------------------------------------------------------------------ -r139 | jcbowman | 2004-11-30 08:00:14 -0700 (Tue, 30 Nov 2004) | 2 lines +r139 | jcbowman | 2004-11-30 16:00:14 +0100 (Tue, 30 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Added array diagnostics. ------------------------------------------------------------------------ -r138 | jcbowman | 2004-11-29 01:29:29 -0700 (Mon, 29 Nov 2004) | 2 lines +r138 | jcbowman | 2004-11-29 09:29:29 +0100 (Mon, 29 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/BUGS Added qualifier. ------------------------------------------------------------------------ -r137 | jcbowman | 2004-11-29 01:20:52 -0700 (Mon, 29 Nov 2004) | 4 lines +r137 | jcbowman | 2004-11-29 09:20:52 +0100 (Mon, 29 Nov 2004) | 4 lines Changed paths: M /trunk/asymptote/BUGS M /trunk/asymptote/configure.ac @@ -42069,7 +42471,7 @@ distinguish between stack overflows and real segmentation violations (due to C++ programming errors). ------------------------------------------------------------------------ -r136 | jcbowman | 2004-11-28 16:22:15 -0700 (Sun, 28 Nov 2004) | 2 lines +r136 | jcbowman | 2004-11-29 00:22:15 +0100 (Mon, 29 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/diatom.asy @@ -42077,7 +42479,7 @@ Changed paths: Deferred drawing should respect clipping bounds. ------------------------------------------------------------------------ -r135 | jcbowman | 2004-11-28 15:01:11 -0700 (Sun, 28 Nov 2004) | 3 lines +r135 | jcbowman | 2004-11-28 23:01:11 +0100 (Sun, 28 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/base/graph.asy @@ -42085,7 +42487,7 @@ Removed obsolete label bbox code from xequals and yequals to make them work correctly. ------------------------------------------------------------------------ -r134 | jcbowman | 2004-11-27 21:55:25 -0700 (Sat, 27 Nov 2004) | 2 lines +r134 | jcbowman | 2004-11-28 05:55:25 +0100 (Sun, 28 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -42094,7 +42496,7 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r133 | jcbowman | 2004-11-27 21:08:47 -0700 (Sat, 27 Nov 2004) | 2 lines +r133 | jcbowman | 2004-11-28 05:08:47 +0100 (Sun, 28 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/examples/centroidfg.asy @@ -42105,14 +42507,14 @@ Changed paths: Improved dot(): if dotsize not specified, use linewidth(pen)*dotfactor. ------------------------------------------------------------------------ -r132 | jcbowman | 2004-11-27 21:02:04 -0700 (Sat, 27 Nov 2004) | 2 lines +r132 | jcbowman | 2004-11-28 05:02:04 +0100 (Sun, 28 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/cast.cc Implement implicit cast from real to pen linewidth. ------------------------------------------------------------------------ -r131 | jcbowman | 2004-11-27 21:01:28 -0700 (Sat, 27 Nov 2004) | 2 lines +r131 | jcbowman | 2004-11-28 05:01:28 +0100 (Sun, 28 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/drawlabel.cc @@ -42126,7 +42528,7 @@ Changed paths: Cleaned up pen code. ------------------------------------------------------------------------ -r130 | jcbowman | 2004-11-27 09:13:32 -0700 (Sat, 27 Nov 2004) | 2 lines +r130 | jcbowman | 2004-11-27 17:13:32 +0100 (Sat, 27 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/drawlayer.h M /trunk/asymptote/drawverbatim.h @@ -42134,14 +42536,14 @@ Changed paths: tex() not layer() should force label processing. ------------------------------------------------------------------------ -r129 | jcbowman | 2004-11-26 18:23:49 -0700 (Fri, 26 Nov 2004) | 2 lines +r129 | jcbowman | 2004-11-27 02:23:49 +0100 (Sat, 27 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Increment version to 0.54. ------------------------------------------------------------------------ -r128 | jcbowman | 2004-11-26 17:19:53 -0700 (Fri, 26 Nov 2004) | 2 lines +r128 | jcbowman | 2004-11-27 01:19:53 +0100 (Sat, 27 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/base/graph3d.asy M /trunk/asymptote/base/math.asy @@ -42151,21 +42553,21 @@ Changed paths: Added preliminary 3d graphics routines & documentation. ------------------------------------------------------------------------ -r127 | jcbowman | 2004-11-26 16:37:42 -0700 (Fri, 26 Nov 2004) | 2 lines +r127 | jcbowman | 2004-11-27 00:37:42 +0100 (Sat, 27 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/BUGS Added Bug 24Nov04. ------------------------------------------------------------------------ -r126 | jcbowman | 2004-11-26 16:01:19 -0700 (Fri, 26 Nov 2004) | 2 lines +r126 | jcbowman | 2004-11-27 00:01:19 +0100 (Sat, 27 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/psfile.h Fixed transform bug (yx->xy) reported by Jacques. ------------------------------------------------------------------------ -r125 | jcbowman | 2004-11-26 12:44:02 -0700 (Fri, 26 Nov 2004) | 2 lines +r125 | jcbowman | 2004-11-26 20:44:02 +0100 (Fri, 26 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/doc/Makefile M /trunk/asymptote/doc/asymptote.texi @@ -42173,7 +42575,7 @@ Changed paths: Makefile for doc directory. ------------------------------------------------------------------------ -r124 | jcbowman | 2004-11-26 11:58:25 -0700 (Fri, 26 Nov 2004) | 2 lines +r124 | jcbowman | 2004-11-26 19:58:25 +0100 (Fri, 26 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/BUGS M /trunk/asymptote/Makefile.in @@ -42184,14 +42586,14 @@ Changed paths: Math and documentation updates. ------------------------------------------------------------------------ -r123 | jcbowman | 2004-11-25 21:22:39 -0700 (Thu, 25 Nov 2004) | 2 lines +r123 | jcbowman | 2004-11-26 05:22:39 +0100 (Fri, 26 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fixed intersect(vector,vector,vector,vector); ------------------------------------------------------------------------ -r122 | jcbowman | 2004-11-25 12:00:37 -0700 (Thu, 25 Nov 2004) | 2 lines +r122 | jcbowman | 2004-11-25 20:00:37 +0100 (Thu, 25 Nov 2004) | 2 lines Changed paths: D /trunk/asymptote/ChangeLog M /trunk/asymptote/path.h @@ -42199,14 +42601,14 @@ Changed paths: Handle out of bounds indices properly in straight(path,int). ------------------------------------------------------------------------ -r121 | jcbowman | 2004-11-25 09:31:25 -0700 (Thu, 25 Nov 2004) | 2 lines +r121 | jcbowman | 2004-11-25 17:31:25 +0100 (Thu, 25 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy Fixed intersect(vector,vector,vector,vector). ------------------------------------------------------------------------ -r120 | jcbowman | 2004-11-24 22:21:41 -0700 (Wed, 24 Nov 2004) | 2 lines +r120 | jcbowman | 2004-11-25 06:21:41 +0100 (Thu, 25 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/env.h M /trunk/asymptote/genv.cc @@ -42214,14 +42616,14 @@ Changed paths: Avoid duplicate import messages when verbose > 1. ------------------------------------------------------------------------ -r119 | jcbowman | 2004-11-23 12:27:50 -0700 (Tue, 23 Nov 2004) | 2 lines +r119 | jcbowman | 2004-11-23 20:27:50 +0100 (Tue, 23 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/drawlayer.h Make layer() work also when there are no labels. ------------------------------------------------------------------------ -r118 | jcbowman | 2004-11-23 11:41:35 -0700 (Tue, 23 Nov 2004) | 2 lines +r118 | jcbowman | 2004-11-23 19:41:35 +0100 (Tue, 23 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/math.asy @@ -42235,7 +42637,7 @@ Changed paths: Fixed bbox function; added dot product for pairs and vectors. ------------------------------------------------------------------------ -r117 | jcbowman | 2004-11-23 09:33:58 -0700 (Tue, 23 Nov 2004) | 2 lines +r117 | jcbowman | 2004-11-23 17:33:58 +0100 (Tue, 23 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/builtin.cc M /trunk/asymptote/builtin.h @@ -42246,14 +42648,14 @@ Changed paths: Added missing xor boolean binary operator. ------------------------------------------------------------------------ -r116 | jcbowman | 2004-11-23 09:31:20 -0700 (Tue, 23 Nov 2004) | 2 lines +r116 | jcbowman | 2004-11-23 17:31:20 +0100 (Tue, 23 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy add(picture, picture) now adjusts userMin and userMax. ------------------------------------------------------------------------ -r115 | jcbowman | 2004-11-21 16:31:02 -0700 (Sun, 21 Nov 2004) | 2 lines +r115 | jcbowman | 2004-11-22 00:31:02 +0100 (Mon, 22 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/fileio.cc M /trunk/asymptote/fileio.h @@ -42261,14 +42663,14 @@ Changed paths: Ignore attempts to close stdin and stdout. ------------------------------------------------------------------------ -r114 | jcbowman | 2004-11-21 16:05:42 -0700 (Sun, 21 Nov 2004) | 2 lines +r114 | jcbowman | 2004-11-22 00:05:42 +0100 (Mon, 22 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed nullFile. ------------------------------------------------------------------------ -r113 | jcbowman | 2004-11-21 11:19:31 -0700 (Sun, 21 Nov 2004) | 2 lines +r113 | jcbowman | 2004-11-21 19:19:31 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -42277,7 +42679,7 @@ Changed paths: Simplified configuration; documented GNU_GETOPT_H. ------------------------------------------------------------------------ -r112 | jcbowman | 2004-11-21 10:41:27 -0700 (Sun, 21 Nov 2004) | 2 lines +r112 | jcbowman | 2004-11-21 18:41:27 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/fileio.cc @@ -42287,35 +42689,35 @@ Changed paths: renamed camp::stdout to camp::Stdout to make FreeBSD happy. ------------------------------------------------------------------------ -r111 | jcbowman | 2004-11-21 10:10:22 -0700 (Sun, 21 Nov 2004) | 2 lines +r111 | jcbowman | 2004-11-21 18:10:22 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/README Added reference to mailing list. ------------------------------------------------------------------------ -r110 | jcbowman | 2004-11-21 10:05:10 -0700 (Sun, 21 Nov 2004) | 2 lines +r110 | jcbowman | 2004-11-21 18:05:10 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.sty Removed email addresses. ------------------------------------------------------------------------ -r109 | jcbowman | 2004-11-21 09:52:23 -0700 (Sun, 21 Nov 2004) | 2 lines +r109 | jcbowman | 2004-11-21 17:52:23 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed formatting. ------------------------------------------------------------------------ -r108 | jcbowman | 2004-11-21 09:36:15 -0700 (Sun, 21 Nov 2004) | 2 lines +r108 | jcbowman | 2004-11-21 17:36:15 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in updated distclean ------------------------------------------------------------------------ -r107 | jcbowman | 2004-11-21 01:39:36 -0700 (Sun, 21 Nov 2004) | 2 lines +r107 | jcbowman | 2004-11-21 09:39:36 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/doc/asymptote.texi @@ -42326,14 +42728,14 @@ Changed paths: Fixed memory leaks. ------------------------------------------------------------------------ -r106 | jcbowman | 2004-11-21 01:03:42 -0700 (Sun, 21 Nov 2004) | 2 lines +r106 | jcbowman | 2004-11-21 09:03:42 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Fixed memory leak. ------------------------------------------------------------------------ -r105 | jcbowman | 2004-11-20 23:29:49 -0700 (Sat, 20 Nov 2004) | 3 lines +r105 | jcbowman | 2004-11-21 07:29:49 +0100 (Sun, 21 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi @@ -42341,14 +42743,14 @@ Readline library should be reasonably up-to-date (Version 4.3 and 5.0 have both been tested; asy won't even compile with very old versions). ------------------------------------------------------------------------ -r104 | jcbowman | 2004-11-20 23:20:56 -0700 (Sat, 20 Nov 2004) | 2 lines +r104 | jcbowman | 2004-11-21 07:20:56 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/doc/version.texi.in Template used to extract texinfo version from configure.ac. ------------------------------------------------------------------------ -r103 | jcbowman | 2004-11-20 23:19:58 -0700 (Sat, 20 Nov 2004) | 2 lines +r103 | jcbowman | 2004-11-21 07:19:58 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/configure.ac @@ -42358,7 +42760,7 @@ Changed paths: More FreeBSD tweaks. ------------------------------------------------------------------------ -r102 | jcbowman | 2004-11-20 23:19:17 -0700 (Sat, 20 Nov 2004) | 2 lines +r102 | jcbowman | 2004-11-21 07:19:17 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/runtime.cc @@ -42366,21 +42768,21 @@ Changed paths: Revert stdout optimization. ------------------------------------------------------------------------ -r101 | jcbowman | 2004-11-20 20:22:59 -0700 (Sat, 20 Nov 2004) | 2 lines +r101 | jcbowman | 2004-11-21 04:22:59 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/README Fixed typo. ------------------------------------------------------------------------ -r100 | jcbowman | 2004-11-20 20:21:09 -0700 (Sat, 20 Nov 2004) | 2 lines +r100 | jcbowman | 2004-11-21 04:21:09 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in make install-all now depends on all ------------------------------------------------------------------------ -r99 | jcbowman | 2004-11-20 18:46:41 -0700 (Sat, 20 Nov 2004) | 2 lines +r99 | jcbowman | 2004-11-21 02:46:41 +0100 (Sun, 21 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/camp.l @@ -42394,7 +42796,7 @@ Changed paths: Port to FreeBSD 4.10-RELEASE-p2 with gcc34. ------------------------------------------------------------------------ -r98 | jcbowman | 2004-11-20 14:51:57 -0700 (Sat, 20 Nov 2004) | 2 lines +r98 | jcbowman | 2004-11-20 22:51:57 +0100 (Sat, 20 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/bison.patch A /trunk/asymptote/flex.patch @@ -42402,7 +42804,7 @@ Changed paths: Patches for clean compilation under CXX and other compilers. ------------------------------------------------------------------------ -r97 | jcbowman | 2004-11-20 11:51:31 -0700 (Sat, 20 Nov 2004) | 2 lines +r97 | jcbowman | 2004-11-20 19:51:31 +0100 (Sat, 20 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/fpu.h M /trunk/asymptote/path.h @@ -42410,21 +42812,21 @@ Changed paths: include tweaks ------------------------------------------------------------------------ -r96 | jcbowman | 2004-11-20 11:00:20 -0700 (Sat, 20 Nov 2004) | 2 lines +r96 | jcbowman | 2004-11-20 19:00:20 +0100 (Sat, 20 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Menu updates. ------------------------------------------------------------------------ -r95 | jcbowman | 2004-11-20 10:36:52 -0700 (Sat, 20 Nov 2004) | 2 lines +r95 | jcbowman | 2004-11-20 18:36:52 +0100 (Sat, 20 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed up discussion of static vs. dynamic ------------------------------------------------------------------------ -r94 | jcbowman | 2004-11-19 21:53:36 -0700 (Fri, 19 Nov 2004) | 2 lines +r94 | jcbowman | 2004-11-20 05:53:36 +0100 (Sat, 20 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/arrayop.h M /trunk/asymptote/fileio.cc @@ -42435,14 +42837,14 @@ Changed paths: Check if file is closed before doing any reads or writes. ------------------------------------------------------------------------ -r93 | jcbowman | 2004-11-19 21:53:29 -0700 (Fri, 19 Nov 2004) | 2 lines +r93 | jcbowman | 2004-11-20 05:53:29 +0100 (Sat, 20 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Added sentence about linetype-adjustment based on arclength of path. ------------------------------------------------------------------------ -r92 | jcbowman | 2004-11-19 15:29:52 -0700 (Fri, 19 Nov 2004) | 2 lines +r92 | jcbowman | 2004-11-19 23:29:52 +0100 (Fri, 19 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.sty @@ -42452,21 +42854,21 @@ Changed paths: Default width of figures included with asymptote.sty is now 0.9\linewidth. ------------------------------------------------------------------------ -r91 | hammera | 2004-11-19 15:24:25 -0700 (Fri, 19 Nov 2004) | 2 lines +r91 | hammera | 2004-11-19 23:24:25 +0100 (Fri, 19 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/TODO *** empty log message *** ------------------------------------------------------------------------ -r90 | jcbowman | 2004-11-19 15:13:03 -0700 (Fri, 19 Nov 2004) | 2 lines +r90 | jcbowman | 2004-11-19 23:13:03 +0100 (Fri, 19 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/BUGS Bug 2004-17-11 fixed. ------------------------------------------------------------------------ -r89 | hammera | 2004-11-19 13:50:59 -0700 (Fri, 19 Nov 2004) | 2 lines +r89 | hammera | 2004-11-19 21:50:59 +0100 (Fri, 19 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/coder.cc A /trunk/asymptote/coder.h @@ -42476,7 +42878,7 @@ Changed paths: New classes from the env -> env and coder split. ------------------------------------------------------------------------ -r88 | hammera | 2004-11-19 13:49:45 -0700 (Fri, 19 Nov 2004) | 3 lines +r88 | hammera | 2004-11-19 21:49:45 +0100 (Fri, 19 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/absyn.cc @@ -42510,7 +42912,7 @@ Split the env class into env and coder, and added coenv. Added "self-importing". ------------------------------------------------------------------------ -r87 | jcbowman | 2004-11-19 12:29:35 -0700 (Fri, 19 Nov 2004) | 2 lines +r87 | jcbowman | 2004-11-19 20:29:35 +0100 (Fri, 19 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.sty @@ -42519,7 +42921,7 @@ Changed paths: Figures included via asymptote.sty are now fully independent; updated documentation. ------------------------------------------------------------------------ -r86 | jcbowman | 2004-11-19 08:18:14 -0700 (Fri, 19 Nov 2004) | 3 lines +r86 | jcbowman | 2004-11-19 16:18:14 +0100 (Fri, 19 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/BUGS M /trunk/asymptote/base/graph.asy @@ -42534,7 +42936,7 @@ Remove dependency of graph.asy on math.asy; added builtin real abs(pair) and int sgn(real) functions. ------------------------------------------------------------------------ -r85 | jcbowman | 2004-11-18 22:26:45 -0700 (Thu, 18 Nov 2004) | 2 lines +r85 | jcbowman | 2004-11-19 06:26:45 +0100 (Fri, 19 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -42542,21 +42944,21 @@ Changed paths: Renamed includegraphics to include. ------------------------------------------------------------------------ -r84 | jcbowman | 2004-11-18 15:50:06 -0700 (Thu, 18 Nov 2004) | 2 lines +r84 | jcbowman | 2004-11-18 23:50:06 +0100 (Thu, 18 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/BUGS Added BUGS file. ------------------------------------------------------------------------ -r83 | jcbowman | 2004-11-18 13:09:11 -0700 (Thu, 18 Nov 2004) | 2 lines +r83 | jcbowman | 2004-11-18 21:09:11 +0100 (Thu, 18 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/drawlayer.h Added layer function. ------------------------------------------------------------------------ -r82 | jcbowman | 2004-11-18 13:05:11 -0700 (Thu, 18 Nov 2004) | 2 lines +r82 | jcbowman | 2004-11-18 21:05:11 +0100 (Thu, 18 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -42574,21 +42976,21 @@ Changed paths: Added layer and includegraphics functions. ------------------------------------------------------------------------ -r81 | jcbowman | 2004-11-18 13:04:01 -0700 (Thu, 18 Nov 2004) | 2 lines +r81 | jcbowman | 2004-11-18 21:04:01 +0100 (Thu, 18 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added install-all target. ------------------------------------------------------------------------ -r80 | jcbowman | 2004-11-17 21:16:20 -0700 (Wed, 17 Nov 2004) | 2 lines +r80 | jcbowman | 2004-11-18 05:16:20 +0100 (Thu, 18 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/types.cc Fixed typo. ------------------------------------------------------------------------ -r79 | jcbowman | 2004-11-17 10:54:37 -0700 (Wed, 17 Nov 2004) | 2 lines +r79 | jcbowman | 2004-11-17 18:54:37 +0100 (Wed, 17 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/math.asy M /trunk/asymptote/drawelement.h @@ -42596,7 +42998,7 @@ Changed paths: Minor optimizations. ------------------------------------------------------------------------ -r78 | jcbowman | 2004-11-16 22:32:01 -0700 (Tue, 16 Nov 2004) | 2 lines +r78 | jcbowman | 2004-11-17 06:32:01 +0100 (Wed, 17 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/camp.l M /trunk/asymptote/camp.y @@ -42606,7 +43008,7 @@ Changed paths: Removed unused dynamic keyword. ------------------------------------------------------------------------ -r77 | jcbowman | 2004-11-16 15:25:06 -0700 (Tue, 16 Nov 2004) | 2 lines +r77 | jcbowman | 2004-11-16 23:25:06 +0100 (Tue, 16 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/guide.cc @@ -42615,7 +43017,7 @@ Changed paths: Fixed bug: (path) (nullpath--(0,0)--(100,0)--cycle) was missing final node. ------------------------------------------------------------------------ -r76 | jcbowman | 2004-11-15 11:10:37 -0700 (Mon, 15 Nov 2004) | 2 lines +r76 | jcbowman | 2004-11-15 19:10:37 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -42623,7 +43025,7 @@ Changed paths: Switched from jpg to png images. ------------------------------------------------------------------------ -r75 | jcbowman | 2004-11-14 23:23:59 -0700 (Sun, 14 Nov 2004) | 2 lines +r75 | jcbowman | 2004-11-15 07:23:59 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy M /trunk/asymptote/doc/asymptote.texi @@ -42632,14 +43034,14 @@ Changed paths: Make variables in file-level modules dynamic by default, like everywhere else. ------------------------------------------------------------------------ -r74 | jcbowman | 2004-11-14 22:52:36 -0700 (Sun, 14 Nov 2004) | 2 lines +r74 | jcbowman | 2004-11-15 06:52:36 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Support old versions of install-info. ------------------------------------------------------------------------ -r73 | hammera | 2004-11-14 19:17:32 -0700 (Sun, 14 Nov 2004) | 2 lines +r73 | hammera | 2004-11-15 03:17:32 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/access.cc M /trunk/asymptote/examples/dragon.asy @@ -42647,7 +43049,7 @@ Changed paths: Changed error message for static vs. dynamic errors. ------------------------------------------------------------------------ -r72 | jcbowman | 2004-11-14 17:48:09 -0700 (Sun, 14 Nov 2004) | 3 lines +r72 | jcbowman | 2004-11-15 01:48:09 +0100 (Mon, 15 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.sty @@ -42658,21 +43060,21 @@ Moved Legend[] legend inside picture structure; shipout(frame) now adds gui() entries and legend; shipout always deconstructs its picture argument. ------------------------------------------------------------------------ -r71 | jcbowman | 2004-11-14 17:45:13 -0700 (Sun, 14 Nov 2004) | 2 lines +r71 | jcbowman | 2004-11-15 01:45:13 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed compiler warning message if HAVE_LIBFFTW3 is undefined. ------------------------------------------------------------------------ -r70 | jcbowman | 2004-11-14 17:43:30 -0700 (Sun, 14 Nov 2004) | 2 lines +r70 | jcbowman | 2004-11-15 01:43:30 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/stack.h removed unnecessary vm:: qualifier ------------------------------------------------------------------------ -r69 | hammera | 2004-11-14 17:23:21 -0700 (Sun, 14 Nov 2004) | 2 lines +r69 | hammera | 2004-11-15 01:23:21 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/cast.cc M /trunk/asymptote/cast.h @@ -42684,7 +43086,7 @@ Changed paths: Refactored the equivalent type function. ------------------------------------------------------------------------ -r68 | jcbowman | 2004-11-14 17:12:55 -0700 (Sun, 14 Nov 2004) | 2 lines +r68 | jcbowman | 2004-11-15 01:12:55 +0100 (Mon, 15 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/pipestream.h M /trunk/asymptote/util.cc @@ -42692,7 +43094,7 @@ Changed paths: Added unistd.h include. ------------------------------------------------------------------------ -r67 | jcbowman | 2004-11-12 18:55:36 -0700 (Fri, 12 Nov 2004) | 2 lines +r67 | jcbowman | 2004-11-13 02:55:36 +0100 (Sat, 13 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/ChangeLog M /trunk/asymptote/configure.ac @@ -42701,14 +43103,14 @@ Changed paths: Increment version. ------------------------------------------------------------------------ -r66 | jcbowman | 2004-11-12 15:19:44 -0700 (Fri, 12 Nov 2004) | 2 lines +r66 | jcbowman | 2004-11-12 23:19:44 +0100 (Fri, 12 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/ChangeLog release: Version 0.52 ------------------------------------------------------------------------ -r65 | jcbowman | 2004-11-12 14:59:54 -0700 (Fri, 12 Nov 2004) | 2 lines +r65 | jcbowman | 2004-11-12 22:59:54 +0100 (Fri, 12 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi M /trunk/asymptote/doc/latexusage.tex @@ -42716,21 +43118,21 @@ Changed paths: Made import graph local to each figure in latexusage. ------------------------------------------------------------------------ -r64 | jcbowman | 2004-11-12 14:03:05 -0700 (Fri, 12 Nov 2004) | 2 lines +r64 | jcbowman | 2004-11-12 22:03:05 +0100 (Fri, 12 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/diatom.asy added call to crop ------------------------------------------------------------------------ -r63 | jcbowman | 2004-11-12 13:51:33 -0700 (Fri, 12 Nov 2004) | 2 lines +r63 | jcbowman | 2004-11-12 21:51:33 +0100 (Fri, 12 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documentation updates ------------------------------------------------------------------------ -r62 | jcbowman | 2004-11-12 11:54:34 -0700 (Fri, 12 Nov 2004) | 3 lines +r62 | jcbowman | 2004-11-12 19:54:34 +0100 (Fri, 12 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/graph.asy @@ -42742,7 +43144,7 @@ Allow qualification of variables in imported modules with (quoted) nonalphanumeric names; added ISO 8859-1 support (latin1). ------------------------------------------------------------------------ -r61 | jcbowman | 2004-11-12 00:19:36 -0700 (Fri, 12 Nov 2004) | 2 lines +r61 | jcbowman | 2004-11-12 08:19:36 +0100 (Fri, 12 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/doc/asymptote.texi @@ -42752,7 +43154,7 @@ Changed paths: Improved xlimits, ylimits, limits routines. Added crop routine. ------------------------------------------------------------------------ -r60 | jcbowman | 2004-11-11 23:18:59 -0700 (Thu, 11 Nov 2004) | 2 lines +r60 | jcbowman | 2004-11-12 07:18:59 +0100 (Fri, 12 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -42761,14 +43163,14 @@ Changed paths: Fixed various graph scaling problems. ------------------------------------------------------------------------ -r59 | jcbowman | 2004-11-10 10:49:27 -0700 (Wed, 10 Nov 2004) | 2 lines +r59 | jcbowman | 2004-11-10 18:49:27 +0100 (Wed, 10 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi minor formatting changes ------------------------------------------------------------------------ -r58 | jcbowman | 2004-11-10 10:32:05 -0700 (Wed, 10 Nov 2004) | 2 lines +r58 | jcbowman | 2004-11-10 18:32:05 +0100 (Wed, 10 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/graph.asy M /trunk/asymptote/base/plain.asy @@ -42778,21 +43180,21 @@ Changed paths: Encapsulated global graph scaling variables within picture; updated documentation. ------------------------------------------------------------------------ -r57 | jcbowman | 2004-11-09 11:45:09 -0700 (Tue, 09 Nov 2004) | 2 lines +r57 | jcbowman | 2004-11-09 19:45:09 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi fixed missing word on first page ------------------------------------------------------------------------ -r56 | jcbowman | 2004-11-09 11:44:22 -0700 (Tue, 09 Nov 2004) | 2 lines +r56 | jcbowman | 2004-11-09 19:44:22 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy Added dots(pair); fixed division by zero in arrowhead for degenerate paths. ------------------------------------------------------------------------ -r55 | jcbowman | 2004-11-09 00:55:45 -0700 (Tue, 09 Nov 2004) | 2 lines +r55 | jcbowman | 2004-11-09 08:55:45 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -42800,35 +43202,35 @@ Changed paths: Increment version. ------------------------------------------------------------------------ -r54 | jcbowman | 2004-11-08 23:08:08 -0700 (Mon, 08 Nov 2004) | 2 lines +r54 | jcbowman | 2004-11-09 07:08:08 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Missing description ------------------------------------------------------------------------ -r53 | jcbowman | 2004-11-08 22:54:35 -0700 (Mon, 08 Nov 2004) | 2 lines +r53 | jcbowman | 2004-11-09 06:54:35 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi fixed missing @code ------------------------------------------------------------------------ -r52 | jcbowman | 2004-11-08 22:34:47 -0700 (Mon, 08 Nov 2004) | 2 lines +r52 | jcbowman | 2004-11-09 06:34:47 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: D /trunk/asymptote/examples/logo.asy moved to doc/ ------------------------------------------------------------------------ -r51 | jcbowman | 2004-11-08 22:28:34 -0700 (Mon, 08 Nov 2004) | 2 lines +r51 | jcbowman | 2004-11-09 06:28:34 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Fixed problems with installation of base files from cvs. ------------------------------------------------------------------------ -r50 | jcbowman | 2004-11-08 22:10:40 -0700 (Mon, 08 Nov 2004) | 2 lines +r50 | jcbowman | 2004-11-09 06:10:40 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote M /trunk/asymptote/.cvsignore @@ -42840,14 +43242,14 @@ Changed paths: updated cvsignore entries ------------------------------------------------------------------------ -r49 | jcbowman | 2004-11-08 21:50:37 -0700 (Mon, 08 Nov 2004) | 2 lines +r49 | jcbowman | 2004-11-09 05:50:37 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Added optimization flags. ------------------------------------------------------------------------ -r48 | jcbowman | 2004-11-08 21:50:04 -0700 (Mon, 08 Nov 2004) | 2 lines +r48 | jcbowman | 2004-11-09 05:50:04 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/doc/asymptote.texi @@ -42855,7 +43257,7 @@ Changed paths: Added optimization flags. ------------------------------------------------------------------------ -r47 | jcbowman | 2004-11-08 21:37:03 -0700 (Mon, 08 Nov 2004) | 2 lines +r47 | jcbowman | 2004-11-09 05:37:03 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in D /trunk/asymptote/asy-mode.el @@ -42867,7 +43269,7 @@ Changed paths: Added instructions for asy-mode.el and asy.vim. ------------------------------------------------------------------------ -r46 | jcbowman | 2004-11-08 17:48:55 -0700 (Mon, 08 Nov 2004) | 2 lines +r46 | jcbowman | 2004-11-09 01:48:55 +0100 (Tue, 09 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/unicode.asy M /trunk/asymptote/doc/asymptote.texi @@ -42877,21 +43279,21 @@ Changed paths: unicode updates ------------------------------------------------------------------------ -r45 | jcbowman | 2004-11-08 12:18:05 -0700 (Mon, 08 Nov 2004) | 2 lines +r45 | jcbowman | 2004-11-08 20:18:05 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in Corrected local value of ASYMPTOTE_DIR ------------------------------------------------------------------------ -r44 | jcbowman | 2004-11-08 11:22:32 -0700 (Mon, 08 Nov 2004) | 2 lines +r44 | jcbowman | 2004-11-08 19:22:32 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed warning messages. ------------------------------------------------------------------------ -r43 | jcbowman | 2004-11-08 11:11:03 -0700 (Mon, 08 Nov 2004) | 2 lines +r43 | jcbowman | 2004-11-08 19:11:03 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -42899,14 +43301,14 @@ Changed paths: Update cvs version ------------------------------------------------------------------------ -r42 | jcbowman | 2004-11-08 11:06:53 -0700 (Mon, 08 Nov 2004) | 2 lines +r42 | jcbowman | 2004-11-08 19:06:53 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/doc/logo.asy Asymptote logo ------------------------------------------------------------------------ -r41 | jcbowman | 2004-11-08 11:03:15 -0700 (Mon, 08 Nov 2004) | 2 lines +r41 | jcbowman | 2004-11-08 19:03:15 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/doc/asymptote.texi @@ -42914,49 +43316,49 @@ Changed paths: Updated README and URL. ------------------------------------------------------------------------ -r40 | jcbowman | 2004-11-08 10:52:02 -0700 (Mon, 08 Nov 2004) | 2 lines +r40 | jcbowman | 2004-11-08 18:52:02 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/doc/latexusage.tex Example of latex usage. ------------------------------------------------------------------------ -r39 | jcbowman | 2004-11-08 10:39:13 -0700 (Mon, 08 Nov 2004) | 2 lines +r39 | jcbowman | 2004-11-08 18:39:13 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/examples/progrid.asy displayed equation example ------------------------------------------------------------------------ -r38 | jcbowman | 2004-11-08 10:35:58 -0700 (Mon, 08 Nov 2004) | 2 lines +r38 | jcbowman | 2004-11-08 18:35:58 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi updates to localwords ------------------------------------------------------------------------ -r37 | jcbowman | 2004-11-08 10:31:39 -0700 (Mon, 08 Nov 2004) | 2 lines +r37 | jcbowman | 2004-11-08 18:31:39 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi typo fixed ------------------------------------------------------------------------ -r36 | jcbowman | 2004-11-08 10:28:23 -0700 (Mon, 08 Nov 2004) | 2 lines +r36 | jcbowman | 2004-11-08 18:28:23 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Final documentation updates. ------------------------------------------------------------------------ -r35 | jcbowman | 2004-11-08 10:23:09 -0700 (Mon, 08 Nov 2004) | 2 lines +r35 | jcbowman | 2004-11-08 18:23:09 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in make install-man no longer does a make man ------------------------------------------------------------------------ -r34 | jcbowman | 2004-11-08 10:21:30 -0700 (Mon, 08 Nov 2004) | 2 lines +r34 | jcbowman | 2004-11-08 18:21:30 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/access.cc @@ -42982,7 +43384,7 @@ Changed paths: Final tweaks before release. ------------------------------------------------------------------------ -r33 | jcbowman | 2004-11-07 23:24:38 -0700 (Sun, 07 Nov 2004) | 2 lines +r33 | jcbowman | 2004-11-08 07:24:38 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/Makefile.in M /trunk/asymptote/base/plain.asy @@ -42991,7 +43393,7 @@ Changed paths: Updates to facilitate building info pages and figures. ------------------------------------------------------------------------ -r32 | jcbowman | 2004-11-07 23:23:30 -0700 (Sun, 07 Nov 2004) | 2 lines +r32 | jcbowman | 2004-11-08 07:23:30 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi A /trunk/asymptote/doc/bezier.asy @@ -43011,21 +43413,21 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r31 | jcbowman | 2004-11-07 22:22:17 -0700 (Sun, 07 Nov 2004) | 2 lines +r31 | jcbowman | 2004-11-08 06:22:17 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Updated documentation ------------------------------------------------------------------------ -r30 | jcbowman | 2004-11-07 22:05:05 -0700 (Sun, 07 Nov 2004) | 2 lines +r30 | jcbowman | 2004-11-08 06:05:05 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/settings.cc Fixed interactive mode. ------------------------------------------------------------------------ -r29 | jcbowman | 2004-11-07 16:02:25 -0700 (Sun, 07 Nov 2004) | 2 lines +r29 | jcbowman | 2004-11-08 00:02:25 +0100 (Mon, 08 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/examples/diatom.asy A /trunk/asymptote/examples/diatom.csv @@ -43033,14 +43435,14 @@ Changed paths: Example of multiple data graphs with secondary axis. ------------------------------------------------------------------------ -r28 | jcbowman | 2004-11-07 15:32:44 -0700 (Sun, 07 Nov 2004) | 2 lines +r28 | jcbowman | 2004-11-07 23:32:44 +0100 (Sun, 07 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Fixed menus. ------------------------------------------------------------------------ -r27 | jcbowman | 2004-11-07 15:31:19 -0700 (Sun, 07 Nov 2004) | 2 lines +r27 | jcbowman | 2004-11-07 23:31:19 +0100 (Sun, 07 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/TODO M /trunk/asymptote/asymptote.sty @@ -43056,21 +43458,21 @@ Changed paths: Added a reset() function to restore settings to startup defaults. ------------------------------------------------------------------------ -r26 | jcbowman | 2004-11-07 15:28:30 -0700 (Sun, 07 Nov 2004) | 2 lines +r26 | jcbowman | 2004-11-07 23:28:30 +0100 (Sun, 07 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/simplex.asy Formatting of comments. ------------------------------------------------------------------------ -r25 | jcbowman | 2004-11-07 15:27:32 -0700 (Sun, 07 Nov 2004) | 2 lines +r25 | jcbowman | 2004-11-07 23:27:32 +0100 (Sun, 07 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi Documentation updates. ------------------------------------------------------------------------ -r24 | jcbowman | 2004-11-07 00:08:29 -0700 (Sun, 07 Nov 2004) | 2 lines +r24 | jcbowman | 2004-11-07 08:08:29 +0100 (Sun, 07 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/builtin.cc @@ -43081,7 +43483,7 @@ Changed paths: Added missing functions; removed pt from plain.asy; updated documentation ------------------------------------------------------------------------ -r23 | jcbowman | 2004-11-05 10:16:40 -0700 (Fri, 05 Nov 2004) | 2 lines +r23 | jcbowman | 2004-11-05 18:16:40 +0100 (Fri, 05 Nov 2004) | 2 lines Changed paths: A /trunk/asymptote/LICENSE M /trunk/asymptote/doc/asymptote.texi @@ -43089,7 +43491,7 @@ Changed paths: Added GNU public LICENSE. ------------------------------------------------------------------------ -r22 | jcbowman | 2004-11-05 10:13:47 -0700 (Fri, 05 Nov 2004) | 2 lines +r22 | jcbowman | 2004-11-05 18:13:47 +0100 (Fri, 05 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/base/plain.asy M /trunk/asymptote/doc/asymptote.texi @@ -43097,7 +43499,7 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r21 | jcbowman | 2004-11-04 23:37:35 -0700 (Thu, 04 Nov 2004) | 2 lines +r21 | jcbowman | 2004-11-05 07:37:35 +0100 (Fri, 05 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/base/plain.asy @@ -43108,7 +43510,7 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r20 | jcbowman | 2004-11-03 23:45:40 -0700 (Wed, 03 Nov 2004) | 2 lines +r20 | jcbowman | 2004-11-04 07:45:40 +0100 (Thu, 04 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/doc/asymptote.texi @@ -43117,14 +43519,14 @@ Changed paths: Documentation updates. ------------------------------------------------------------------------ -r19 | jcbowman | 2004-11-02 22:20:51 -0700 (Tue, 02 Nov 2004) | 2 lines +r19 | jcbowman | 2004-11-03 06:20:51 +0100 (Wed, 03 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Allow negative array indices in arrayIntArray as in arrayRead and arrayWrite. ------------------------------------------------------------------------ -r18 | jcbowman | 2004-11-02 22:13:26 -0700 (Tue, 02 Nov 2004) | 3 lines +r18 | jcbowman | 2004-11-03 06:13:26 +0100 (Wed, 03 Nov 2004) | 3 lines Changed paths: M /trunk/asymptote/runtime.cc @@ -43132,14 +43534,14 @@ Allow assignment to array indices [-len,-1]; handle negative array indices in sequence routines. ------------------------------------------------------------------------ -r17 | jcbowman | 2004-11-02 12:10:24 -0700 (Tue, 02 Nov 2004) | 2 lines +r17 | jcbowman | 2004-11-02 20:10:24 +0100 (Tue, 02 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/pen.h Added missing pen transformation code. ------------------------------------------------------------------------ -r16 | jcbowman | 2004-11-01 10:23:54 -0700 (Mon, 01 Nov 2004) | 2 lines +r16 | jcbowman | 2004-11-01 18:23:54 +0100 (Mon, 01 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/doc/asymptote.texi D /trunk/asymptote/test.asy @@ -43147,7 +43549,7 @@ Changed paths: minor updates ------------------------------------------------------------------------ -r15 | jcbowman | 2004-10-31 22:27:35 -0700 (Sun, 31 Oct 2004) | 2 lines +r15 | jcbowman | 2004-11-01 06:27:35 +0100 (Mon, 01 Nov 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac M /trunk/asymptote/doc/asymptote.texi @@ -43155,7 +43557,7 @@ Changed paths: Check for boost header files; updated documentation. ------------------------------------------------------------------------ -r14 | jcbowman | 2004-10-28 23:04:37 -0600 (Thu, 28 Oct 2004) | 2 lines +r14 | jcbowman | 2004-10-29 07:04:37 +0200 (Fri, 29 Oct 2004) | 2 lines Changed paths: M /trunk/asymptote/README M /trunk/asymptote/doc/asymptote.texi @@ -43163,21 +43565,21 @@ Changed paths: Updated documentation. ------------------------------------------------------------------------ -r13 | jcbowman | 2004-10-28 23:04:20 -0600 (Thu, 28 Oct 2004) | 2 lines +r13 | jcbowman | 2004-10-29 07:04:20 +0200 (Fri, 29 Oct 2004) | 2 lines Changed paths: M /trunk/asymptote/picture.cc Make -O work when dvips isn't used. ------------------------------------------------------------------------ -r12 | jcbowman | 2004-10-28 15:26:57 -0600 (Thu, 28 Oct 2004) | 2 lines +r12 | jcbowman | 2004-10-28 23:26:57 +0200 (Thu, 28 Oct 2004) | 2 lines Changed paths: A /trunk/asymptote/examples/logo.asy Sean Healy's logo implemented in Asymptote. ------------------------------------------------------------------------ -r11 | jcbowman | 2004-10-26 09:05:04 -0600 (Tue, 26 Oct 2004) | 2 lines +r11 | jcbowman | 2004-10-26 17:05:04 +0200 (Tue, 26 Oct 2004) | 2 lines Changed paths: A /trunk/asymptote/doc A /trunk/asymptote/doc/asymptote.texi @@ -43185,7 +43587,7 @@ Changed paths: Initial version. ------------------------------------------------------------------------ -r10 | jcbowman | 2004-10-26 07:38:06 -0600 (Tue, 26 Oct 2004) | 2 lines +r10 | jcbowman | 2004-10-26 15:38:06 +0200 (Tue, 26 Oct 2004) | 2 lines Changed paths: M /trunk/asymptote D /trunk/asymptote/.asy_history @@ -43194,21 +43596,21 @@ Changed paths: Removed unwanted cvs files. ------------------------------------------------------------------------ -r9 | jcbowman | 2004-10-26 07:31:01 -0600 (Tue, 26 Oct 2004) | 2 lines +r9 | jcbowman | 2004-10-26 15:31:01 +0200 (Tue, 26 Oct 2004) | 2 lines Changed paths: M /trunk/asymptote/configure.ac Set version = 0.50. ------------------------------------------------------------------------ -r8 | jcbowman | 2004-10-26 07:29:34 -0600 (Tue, 26 Oct 2004) | 2 lines +r8 | jcbowman | 2004-10-26 15:29:34 +0200 (Tue, 26 Oct 2004) | 2 lines Changed paths: M /trunk/asymptote/runtime.cc Fixed warning message if HAVE_STRTIME == 0 ------------------------------------------------------------------------ -r3 | jcbowman | 2004-10-26 07:27:12 -0600 (Tue, 26 Oct 2004) | 2 lines +r3 | jcbowman | 2004-10-26 15:27:12 +0200 (Tue, 26 Oct 2004) | 2 lines Changed paths: A /trunk/asymptote A /trunk/asymptote/.asy_history diff --git a/Build/source/utils/asymptote/Makefile.in b/Build/source/utils/asymptote/Makefile.in index 270a8d517d8..bf93e2a9e5b 100644 --- a/Build/source/utils/asymptote/Makefile.in +++ b/Build/source/utils/asymptote/Makefile.in @@ -14,7 +14,9 @@ LIBS = $(LFLAGS) @LIBS@ $(GCLIBS) CAMP = camperror path drawpath drawlabel picture psfile texfile util settings \ guide flatguide knot drawfill path3 drawpath3 drawsurface -RUNTIME_FILES = runtime backtrace +RUNTIME_FILES = runtime runbacktrace runpicture runlabel runhistory runarray \ + runfile runsystem runpair runtriple runpath runpath3d runstring \ + runmath PRC = prc/PRCbitStream prc/oPRCFile prc/PRCdouble prc/writePRC @@ -66,7 +68,7 @@ latexdir = $(DESTDIR)@latexdir@ contextdir = $(DESTDIR)@contextdir@ INSTALL = @INSTALL@ REVISION = "const char *SVN_REVISION=" -revision = `svn info 2>/dev/null | grep "Revision" | sed -e "s/Revision: \(.*\)/-r\1/"` +revision = `svn info 2>/dev/null | grep 'Revision' | sed -e 's/Revision: \(.*\)/-r\1/'` last = `cat svnrevision.cc | sed -e 's/.*\"\(.*\)\";/\\1/'` export prefix docdir exampledir mandir infodir INSTALL MAKE DESTDIR TEXI2DVI diff --git a/Build/source/utils/asymptote/ReleaseNotes b/Build/source/utils/asymptote/ReleaseNotes index b3fc60b14f5..c4b68bd59de 100644 --- a/Build/source/utils/asymptote/ReleaseNotes +++ b/Build/source/utils/asymptote/ReleaseNotes @@ -1,3 +1,25 @@ +Release Notes for Version 1.86 + +PRC polygons were optimized. Surface memory usage was reduced. +The automatic sizing of NURBS surfaces was fixed. A bug in the radius of +curvature computation at nodes was fixed. The configuration test for the +GNU readline library was improved. The naming of PRC parts was implemented. + +Release Notes for Version 1.85 + +Compilation is now supported again on platforms lacking OpenGL. +Missing pen dimensions were added to a 3D picture sizing routine. +The labelsurface routine was renamed to surface and extended to surfaces +containing a single patch. + +Release Notes for Version 1.84 + +The perspective PRC viewportmargin was fixed. Unwanted spaces were removed +from (version 1.10 of) asymptote.sty. Support for drawing PRC and OpenGL +NURBS surfaces was added. Obsolete code, including an unwanted inline +qualifier, was removed. A split structure that can be adapted for splitting +intersecting patches was added, along with the example splitpatch.asy. + Release Notes for Version 1.83 OpenGL animations, illustrated in glmovie.asy, were implemented. diff --git a/Build/source/utils/asymptote/TODO b/Build/source/utils/asymptote/TODO index bd5b090f06f..aacbd1bb17d 100644 --- a/Build/source/utils/asymptote/TODO +++ b/Build/source/utils/asymptote/TODO @@ -1,5 +1,3 @@ -John: split runtime.in - Andy: implement operator init(A a) copy constructors. Andy and John: (if possible) automatically turn expressions with array diff --git a/Build/source/utils/asymptote/angle.h b/Build/source/utils/asymptote/angle.h index 0adaa4a3d31..81303466eb3 100644 --- a/Build/source/utils/asymptote/angle.h +++ b/Build/source/utils/asymptote/angle.h @@ -36,6 +36,13 @@ inline double angle(double x, double y) return atan2(y,x); } +// Return an angle in the interval [0,360). +inline double principalBranch(double deg) +{ + if(deg < 0) deg += 360; + return deg; +} + } //namespace camp #endif diff --git a/Build/source/utils/asymptote/application.cc b/Build/source/utils/asymptote/application.cc index 9036f8d426b..551ab70e80e 100644 --- a/Build/source/utils/asymptote/application.cc +++ b/Build/source/utils/asymptote/application.cc @@ -12,6 +12,7 @@ #include "exp.h" #include "coenv.h" #include "runtime.h" +#include "runarray.h" using namespace types; using absyntax::varinit; diff --git a/Build/source/utils/asymptote/array.h b/Build/source/utils/asymptote/array.h index 0fab8f5f693..beee263c815 100644 --- a/Build/source/utils/asymptote/array.h +++ b/Build/source/utils/asymptote/array.h @@ -62,7 +62,7 @@ public: }; template <typename T> -inline T read(array *a, size_t i) +inline T read(const array *a, size_t i) { return a->array::read<T>(i); } diff --git a/Build/source/utils/asymptote/arrayop.h b/Build/source/utils/asymptote/arrayop.h index 6500bfbe7f0..435c00926c0 100644 --- a/Build/source/utils/asymptote/arrayop.h +++ b/Build/source/utils/asymptote/arrayop.h @@ -438,6 +438,8 @@ void arrayFunc(vm::stack *s) vm::array *Identity(Int n); camp::triple operator *(const vm::array& a, const camp::triple& v); camp::triple multshiftless(const vm::array& t, const camp::triple& v); +double norm(double *a, size_t n); +double norm(camp::triple *a, size_t n); } // namespace run diff --git a/Build/source/utils/asymptote/asy-keywords.el b/Build/source/utils/asymptote/asy-keywords.el index 304ffadabc7..7df3abc56d0 100644 --- a/Build/source/utils/asymptote/asy-keywords.el +++ b/Build/source/utils/asymptote/asy-keywords.el @@ -2,16 +2,16 @@ ;; This file is automatically generated by asy-list.pl. ;; Changes will be overwritten. ;; -(defvar asy-keywords-version "1.81") +(defvar asy-keywords-version "1.86") (defvar asy-keyword-name '( and controls tension atleast curl if else while for do return break continue struct typedef new access import unravel from include quote static public private restricted this explicit true false null cycle newframe operator )) (defvar asy-type-name '( -Braid FitResult Label Legend Rmf TreeNode abscissa arc arrowhead binarytree binarytreeNode block bool bool3 bounds bqe circle conic coord coordsys cputime ellipse file filltype frame grid3 guide horner hsv hyperbola indexedTransform int inversion key line linefit marginT marker mass object pair parabola path path3 pen picture point position projection real revolution scaleT scientific segment side slice splitface string surface tensionSpecifier ticklocate ticksgridT tickvalues transform transformation tree triangle trilinear triple vector vertex void )) +Braid FitResult Label Legend TreeNode abscissa arc arrowhead binarytree binarytreeNode block bool bool3 bounds bqe circle conic coord coordsys cputime ellipse file filltype frame grid3 guide horner hsv hyperbola indexedTransform int inversion key light line linefit marginT marker mass object pair parabola path path3 pen picture point position projection real revolution scaleT scientific segment side slice splitface string surface tensionSpecifier ticklocate ticksgridT tickvalues transform transformation tree triangle trilinear triple vector vertex void )) (defvar asy-function-name '( -AND Arc ArcArrow ArcArrows Arrow Arrows Automatic AvantGarde BBox BWRainbow BWRainbow2 Bar Bars BeginArcArrow BeginArrow BeginBar BeginDotMargin BeginMargin BeginPenMargin Blank Bookman Bottom BottomTop Bounds Break Broken BrokenLog Ceil Circle CircleBarIntervalMarker Cos Courier CrossIntervalMarker DefaultFormat DefaultLogFormat Degrees Dir DotMargin DotMargins Dotted Draw Drawline Embed EndArcArrow EndArrow EndBar EndDotMargin EndMargin EndPenMargin Fill FillDraw Floor Format Full Gaussian Gaussrand Gaussrandpair Gradient Grayscale Helvetica Hermite HookHead InOutTicks InTicks J Label Landscape Left LeftRight LeftTicks Legend Linear Link Log LogFormat Margin Margins Mark MidArcArrow MidArrow NOT NewCenturySchoolBook NoBox NoMargin NoModifier NoTicks NoTicks3 NoZero NoZeroFormat None OR OmitFormat OmitTick OutTicks Ox Oy Palatino PaletteTicks Pen PenMargin PenMargins Pentype Portrait RadialShade Rainbow Range Relative Right RightTicks Rotate Round SQR Scale ScaleX ScaleY ScaleZ Seascape Shift Sin Slant Spline StickIntervalMarker Straight Symbol Tan TeXify Ticks Ticks3 TildeIntervalMarker TimesRoman Top TrueMargin UnFill UpsideDown Wheel X XEquals XOR XY XYEquals XYZero XYgrid XZEquals XZZero XZero XZgrid Y YEquals YXgrid YZ YZEquals YZZero YZero YZgrid Z ZX ZXgrid ZYgrid ZapfChancery ZapfDingbats _cputime _draw _eval _image _labelpath _strokepath _texpath aCos aSin aTan abort abs accel acos acosh acot acsc add addArrow addMargins addSaveFunction addnode addnodes addpenarc addpenline addseg adjust alias align all altitude angabscissa angle angpoint animate annotate anticomplementary antipedal apply approximate arc arcarrowsize arccircle arcdir arcfromcenter arcfromfocus arclength arcnodesnumber arcpoint arcsubtended arcsubtendedcenter arctime arctopath array arrow arrow2 arrowbase arrowbasepoints arrowsize asec asin asinh ask assert asy asycode asydir asyfigure asyfilecode asyinclude asywrite atan atan2 atanh atbreakpoint atexit atime attach attract atupdate autoformat autoscale autoscale3 axes axes3 axialshade axis axiscoverage azimuth babel background bangles bar barmarksize barsize basealign baseline bbox beep begin beginclip begingroup beginpoint between bevel bezier bezierP bezierPP bezierPPP bezulate bibliography bibliographystyle binarytree binarytreeNode binomial binput bins bisector bisectorpoint bispline blend boutput box bqe breakpoint breakpoints brick buildRestoreDefaults buildRestoreThunk buildcycle bulletcolor canonical canonicalcartesiansystem cartesiansystem case1 case2 case3 cbrt cd ceil center centerToFocus centroid cevian change2 changecoordsys checkSegment checkconditionlength checker checklengths checkposition checktriangle choose circle circlebarframe circlemarkradius circlenodesnumber circumcenter circumcircle clamped clear clip clipdraw close cmyk code colatitude collect collinear color colorless colors colorspace comma compassmark complement complementary concat concurrent cone conic conicnodesnumber conictype conj connect containmentTree contains contour contour3 controlSpecifier convert coordinates coordsys copy cos cosh cot countIntersections cputime crop cropcode cross crossframe crosshatch crossmarksize csc csv cubicroots curabscissa curlSpecifier curpoint currentarrow currentexitfunction currentmomarrow currentpolarconicroutine curve cut cutafter cutbefore cyclic cylinder debugger deconstruct defaultdir defaultformat defaultpen defaultspline defined degenerate degrees delete deletepreamble determinant diagonal diamond diffdiv dimension dir dirSpecifier dirtime display distance divisors do_overpaint dot dotframe dotsize downcase draw drawAll drawDoubleLine drawFermion drawGhost drawGluon drawMomArrow drawPhoton drawScalar drawVertex drawVertexBox drawVertexBoxO drawVertexBoxX drawVertexO drawVertexOX drawVertexTriangle drawVertexTriangleO drawVertexX drawarrow drawarrow2 drawline drawtick duplicate elle ellipse ellipsenodesnumber embed embed3 empty enclose end endScript endclip endgroup endl endpoint endpoints eof eol equation equations erase erf erfc error errorbar errorbars eval excenter excircle exit exitXasyMode exitfunction exp expfactors expi expm1 exradius extend extension extouch fabs factorial fermat fft fhorner figure file filecode fill filldraw filloutside fillrule filltype find finite finiteDifferenceJacobian firstcut firstframe fit fixedscaling floor flush fmdefaults fmod focusToCenter font fontcommand fontsize foot format frac frequency fromCenter fromFocus fspline functionshade gamma generate_random_backtrace generateticks gergonne getc getint getpair getreal getstring gettriple gluon gouraudshade graph graphic gray grestore grid grid3 gsave halfbox hatch hdiffdiv hermite hex histogram history hline hprojection hsv hyperbola hyperbolanodesnumber hyperlink hypot identity image incenter incentral incircle increasing incrementposition indexedTransform initXasyMode initdefaults input inradius insert inside integrate interactive interior interp interpolate intersect intersection intersectionpoint intersectionpoints intersections intouch inverse inversion invisible is3D isDuplicate isogonal isogonalconjugate isotomic isotomicconjugate isparabola italic item key kurtosis kurtosisexcess label labelaxis labelmargin labelpath labels labeltick labelx labelx3 labely labely3 labelz labelz3 lastcut latex latitude latticeshade layer layout ldexp leastsquares legend legenditem length lift limits line linear linecap linejoin linemargin lineskip linetype linewidth link list lm_enorm lm_evaluate_default lm_lmdif lm_lmpar lm_minimize lm_print_default lm_print_quiet lm_qrfac lm_qrsolv locale locate locatefile location log log10 log1p logaxiscoverage longitude lookup magnetize makeNode makedraw makepen map margin markangle markangleradius markanglespace markarc marker markinterval marknodes markrightangle markuniform mass masscenter massformat math max max3 maxbezier maxbound maxcoords maxlength maxratio maxtimes mean medial median midpoint min min3 minbezier minbound minipage minratio mintimes miterlimit momArrowPath momarrowsize monotonic nativeformat natural needshipout newl newpage newslide newton newtree nextframe nextnormal nextpage nib nodabscissa none normalvideo notaknot nowarn numberpage nurb object offset onpath opacity opposite orientation orig_circlenodesnumber orig_circlenodesnumber1 orig_draw orig_ellipsenodesnumber orig_ellipsenodesnumber1 orig_hyperbolanodesnumber orig_parabolanodesnumber origin orthic orthocentercenter outformat outline outprefix output overwrite pack pad pairs palette parabola parabolanodesnumber parallel partialsum path path3 pattern pause pdf pedal periodic perp perpendicular perpendicularmark phantom phi1 phi2 phi3 photon piecewisestraight point polar polarconicroutine polargraph polygon postcontrol postscript pow10 ppoint prc prc0 precision precontrol prepend print_random_addresses project projection purge pwhermite quadrant quadraticroots quantize quarticroots quotient radialshade radians radicalcenter radicalline radius rand randompath rd read1 read2 read3 readline realmult realquarticroots rectangle rectangular rectify reflect relabscissa relative relativedistance reldir relpoint reltime remainder remark removeDuplicates rename replace report rescale rescale2 resetdefaultpen restore restoredefaults reverse reversevideo rf rfind rgb rgba rgbint rmf rms rotate rotateO rotation round roundbox roundedpath roundrectangle samecoordsys sameside sample save savedefaults saveline scale scale3 scaleO scaleT scaleless scientific search searchtree sec secondaryX secondaryY seconds section sector seek seekeof segment sequence setpens sgn sgnd sharpangle sharpdegrees shift shiftless shipout shipout3 show side signed simeq simpson sin single sinh size size3 skewness skip slant sleep slope slopefield solve solveBVP sort sourceline sphere split sqrt square srand standardizecoordsys startScript startTrembling stdev step stickframe stickmarksize stickmarkspace stop straight straightness string stripdirectory stripextension stripfile strokepath subdivide subitem subpath substr sum surface symmedial symmedian system tab tableau tan tangent tangential tangents tanh tell tensionSpecifier tensorshade tex texcolor texify texpath texpreamble texreset texshipout texsize textpath thick thin tick tickMax tickMax3 tickMin tickMin3 ticklabelshift ticklocate tildeframe tildemarksize tile tiling time times title titlepage topbox transform transformation transpose tremble trembleFuzz tremble_circlenodesnumber tremble_circlenodesnumber1 tremble_draw tremble_ellipsenodesnumber tremble_ellipsenodesnumber1 tremble_hyperbolanodesnumber tremble_marknodes tremble_markuniform tremble_parabolanodesnumber triangle triangleAbc triangleabc triangulate tricoef tridiagonal trilinear trim trueMagnetize truepoint tube uncycle unfill uniform unit unitrand unitsize unityroot unstraighten upcase updatefunction upscale uptodate usepackage usersetting usetypescript usleep value variance variancebiased vbox vector vectorfield verbatim view vline vprojection warn windingnumber word write xaxis xaxis3 xaxis3At xaxisAt xequals xinput xlimits xoutput xpart xscale xscaleO xtick xtick3 xtrans yaxis yaxis3 yaxis3At yaxisAt yequals ylimits ypart yscale yscaleO ytick ytick3 ytrans zaxis3 zaxis3At zero zero3 zlimits zpart ztick ztick3 ztrans )) +AND Arc ArcArrow ArcArrows Arrow Arrows Automatic AvantGarde BBox BWRainbow BWRainbow2 Bar Bars BeginArcArrow BeginArrow BeginBar BeginDotMargin BeginMargin BeginPenMargin Blank Bookman Bottom BottomTop Bounds Break Broken BrokenLog Ceil Circle CircleBarIntervalMarker Cos Courier CrossIntervalMarker DefaultFormat DefaultLogFormat Degrees Dir DotMargin DotMargins Dotted Draw Drawline Embed EndArcArrow EndArrow EndBar EndDotMargin EndMargin EndPenMargin Fill FillDraw Floor Format Full Gaussian Gaussrand Gaussrandpair Gradient Grayscale Helvetica Hermite HookHead InOutTicks InTicks J Label Landscape Left LeftRight LeftTicks Legend Linear Link Log LogFormat Margin Margins Mark MidArcArrow MidArrow NOT NewCenturySchoolBook NoBox NoMargin NoModifier NoTicks NoTicks3 NoZero NoZeroFormat None OR OmitFormat OmitTick OutTicks Ox Oy Palatino PaletteTicks Pen PenMargin PenMargins Pentype Portrait RadialShade Rainbow Range Relative Right RightTicks Rotate Round SQR Scale ScaleX ScaleY ScaleZ Seascape Shift Sin Slant Spline StickIntervalMarker Straight Symbol Tan TeXify Ticks Ticks3 TildeIntervalMarker TimesRoman Top TrueMargin UnFill UpsideDown Wheel X XEquals XOR XY XYEquals XYZero XYgrid XZEquals XZZero XZero XZgrid Y YEquals YXgrid YZ YZEquals YZZero YZero YZgrid Z ZX ZXgrid ZYgrid ZapfChancery ZapfDingbats _cputime _draw _eval _image _labelpath _strokepath _texpath aCos aSin aTan abort abs accel acos acosh acot acsc add addArrow addMargins addSaveFunction addnode addnodes addpenarc addpenline addseg adjust alias align all altitude angabscissa angle angpoint animate annotate anticomplementary antipedal apply approximate arc arcarrowsize arccircle arcdir arcfromcenter arcfromfocus arclength arcnodesnumber arcpoint arcsubtended arcsubtendedcenter arctime arctopath array arrow arrow2 arrowbase arrowbasepoints arrowsize asec asin asinh ask assert asy asycode asydir asyfigure asyfilecode asyinclude asywrite atan atan2 atanh atbreakpoint atexit atime attach attract atupdate autoformat autoscale autoscale3 axes axes3 axialshade axis axiscoverage azimuth babel background bangles bar barmarksize barsize basealign baseline bbox beep begin beginclip begingroup beginpoint between bevel bezier bezierP bezierPP bezierPPP bezulate bibliography bibliographystyle binarytree binarytreeNode binomial binput bins bisector bisectorpoint blend boutput box bqe breakpoint breakpoints brick buildRestoreDefaults buildRestoreThunk buildcycle bulletcolor canonical canonicalcartesiansystem cartesiansystem case1 case2 case3 cbrt cd ceil center centerToFocus centroid cevian change2 changecoordsys checkSegment checkconditionlength checker checklengths checkposition checktriangle choose circle circlebarframe circlemarkradius circlenodesnumber circumcenter circumcircle clamped clear clip clipdraw close cmyk code colatitude collect collinear color colorless colors colorspace comma compassmark complement complementary concat concurrent cone conic conicnodesnumber conictype conj connect containmentTree contains contour contour3 controlSpecifier convert coordinates coordsys copy cos cosh cot countIntersections cputime crop cropcode cross crossframe crosshatch crossmarksize csc cubicroots curabscissa curlSpecifier curpoint currentarrow currentexitfunction currentmomarrow currentpolarconicroutine curve cut cutafter cutbefore cyclic cylinder debugger deconstruct defaultdir defaultformat defaultpen defined degenerate degrees delete deletepreamble determinant diagonal diamond diffdiv dir dirSpecifier dirtime display distance divisors do_overpaint dot dotframe dotsize downcase draw drawAll drawDoubleLine drawFermion drawGhost drawGluon drawMomArrow drawPhoton drawScalar drawVertex drawVertexBox drawVertexBoxO drawVertexBoxX drawVertexO drawVertexOX drawVertexTriangle drawVertexTriangleO drawVertexX drawarrow drawarrow2 drawline drawtick duplicate elle ellipse ellipsenodesnumber embed embed3 empty enclose end endScript endclip endgroup endl endpoint endpoints eof eol equation equations erase erasestep erf erfc error errorbar errorbars eval excenter excircle exit exitXasyMode exitfunction exp expfactors expi expm1 exradius extend extension extouch fabs factorial fermat fft fhorner figure file filecode fill filldraw filloutside fillrule filltype find finite finiteDifferenceJacobian firstcut firstframe fit fit2 fixedscaling floor flush fmdefaults fmod focusToCenter font fontcommand fontsize foot format frac frequency fromCenter fromFocus fspline functionshade gamma generate_random_backtrace generateticks gergonne getc getint getpair getreal getstring gettriple gluon gouraudshade graph graphic gray grestore grid grid3 gsave halfbox hatch hdiffdiv hermite hex histogram history hline hprojection hsv hyperbola hyperbolanodesnumber hyperlink hypot identity image incenter incentral incircle increasing incrementposition indexedTransform indexedfigure initXasyMode initdefaults input inradius insert inside integrate interactive interior interp interpolate intersect intersection intersectionpoint intersectionpoints intersections intouch inverse inversion invisible is3D isDuplicate isogonal isogonalconjugate isotomic isotomicconjugate isparabola italic item key kurtosis kurtosisexcess label labelaxis labelmargin labelpath labels labeltick labelx labelx3 labely labely3 labelz labelz3 lastcut latex latitude latticeshade layer layout ldexp leastsquares legend legenditem length lift light limits line linear linecap lineinversion linejoin linemargin lineskip linetype linewidth link list lm_enorm lm_evaluate_default lm_lmdif lm_lmpar lm_minimize lm_print_default lm_print_quiet lm_qrfac lm_qrsolv locale locate locatefile location log log10 log1p logaxiscoverage longitude lookup magnetize makeNode makedraw makepen map margin markangle markangleradius markanglespace markarc marker markinterval marknodes markrightangle markuniform mass masscenter massformat math max max3 maxbezier maxbound maxcoords maxlength maxratio maxtimes mean medial median midpoint min min3 minbezier minbound minipage minratio mintimes miterlimit momArrowPath momarrowsize monotonic multifigure nativeformat natural needshipout newl newpage newslide newton newtree nextframe nextnormal nextpage nib nodabscissa none norm normalvideo notaknot nowarn numberpage nurb object offset onpath opacity opposite orientation orig_circlenodesnumber orig_circlenodesnumber1 orig_draw orig_ellipsenodesnumber orig_ellipsenodesnumber1 orig_hyperbolanodesnumber orig_parabolanodesnumber origin orthic orthocentercenter outformat outline outprefix output overloadedMessage overwrite pack pad pairs palette parabola parabolanodesnumber parallel partialsum path path3 pattern pause pdf pedal periodic perp perpendicular perpendicularmark phantom phi1 phi2 phi3 photon piecewisestraight point polar polarconicroutine polargraph polygon postcontrol postscript pow10 ppoint prc prc0 precision precontrol prepend print_random_addresses project projection purge pwhermite quadrant quadraticroots quantize quarticroots quotient radialshade radians radicalcenter radicalline radius rand randompath rd readline realmult realquarticroots rectangle rectangular rectify reflect relabscissa relative relativedistance reldir relpoint reltime remainder remark removeDuplicates rename replace report resetdefaultpen restore restoredefaults reverse reversevideo rf rfind rgb rgba rgbint rms rotate rotateO rotation round roundbox roundedpath roundrectangle samecoordsys sameside sample save savedefaults saveline scale scale3 scaleO scaleT scaleless scientific search searchtree sec secondaryX secondaryY seconds section sector seek seekeof segment sequence setpens sgn sgnd sharpangle sharpdegrees shift shiftless shipout shipout3 show side simeq simpson sin single sinh size size3 skewness skip slant sleep slope slopefield solve solveBVP sort sourceline sphere split sqrt square srand standardizecoordsys startScript startTrembling stdev step stickframe stickmarksize stickmarkspace stop straight straightness string stripdirectory stripextension stripfile strokepath subdivide subitem subpath substr sum surface symmedial symmedian system tab tableau tan tangent tangential tangents tanh tell tensionSpecifier tensorshade tex texcolor texify texpath texpreamble texreset texshipout texsize textpath thick thin tick tickMax tickMax3 tickMin tickMin3 ticklabelshift ticklocate tildeframe tildemarksize tile tiling time times title titlepage topbox transform transformation transpose tremble trembleFuzz tremble_circlenodesnumber tremble_circlenodesnumber1 tremble_draw tremble_ellipsenodesnumber tremble_ellipsenodesnumber1 tremble_hyperbolanodesnumber tremble_marknodes tremble_markuniform tremble_parabolanodesnumber triangle triangleAbc triangleabc triangulate tricoef tridiagonal trilinear trim trueMagnetize truepoint tube uncycle unfill uniform unit unitrand unitsize unityroot unstraighten upcase updatefunction uperiodic upscale uptodate usepackage usersetting usetypescript usleep value variance variancebiased vbox vector vectorfield verbatim view vline vperiodic vprojection warn warning windingnumber write xaxis xaxis3 xaxis3At xaxisAt xequals xinput xlimits xoutput xpart xscale xscaleO xtick xtick3 xtrans yaxis yaxis3 yaxis3At yaxisAt yequals ylimits ypart yscale yscaleO ytick ytick3 ytrans zaxis3 zaxis3At zero zero3 zlimits zpart ztick ztick3 ztrans )) (defvar asy-variable-name '( -AliceBlue Align Allow AntiqueWhite Apricot Aqua Aquamarine Aspect Azure BeginPoint Beige Bisque Bittersweet Black BlanchedAlmond Blue BlueGreen BlueViolet Both Break BrickRed Brown BurlyWood BurntOrange CCW CW CadetBlue CarnationPink Center Centered Cerulean Chartreuse Chocolate Coeff Coral CornflowerBlue Cornsilk Crimson Crop Cyan Dandelion DarkBlue DarkCyan DarkGoldenrod DarkGray DarkGreen DarkKhaki DarkMagenta DarkOliveGreen DarkOrange DarkOrchid DarkRed DarkSalmon DarkSeaGreen DarkSlateBlue DarkSlateGray DarkTurquoise DarkViolet DeepPink DeepSkyBlue DefaultHead DimGray DodgerBlue Dotted Draw E ENE EPS ESE E_Euler E_PC E_RK2 E_RK3BS Emerald EndPoint Euler Fill FillDraw FireBrick FloralWhite ForestGreen Fuchsia Gainsboro GhostWhite Gold Goldenrod Gray Green GreenYellow Honeydew HookHead Horizontal HotPink I IgnoreAspect IndianRed Indigo Ivory JOIN_IN JOIN_OUT JungleGreen Khaki LM_DWARF LM_MACHEP LM_SQRT_DWARF LM_SQRT_GIANT LM_USERTOL Label Lavender LavenderBlush LawnGreen LeftJustified LeftSide LemonChiffon LightBlue LightCoral LightCyan LightGoldenrodYellow LightGreen LightGrey LightPink LightSalmon LightSeaGreen LightSkyBlue LightSlateGray LightSteelBlue LightYellow Lime LimeGreen Linear Linen Log Logarithmic Magenta Mahogany Mark MarkFill Maroon Max MediumAquamarine MediumBlue MediumOrchid MediumPurple MediumSeaGreen MediumSlateBlue MediumSpringGreen MediumTurquoise MediumVioletRed Melon MidPoint MidnightBlue Min MintCream MistyRose Moccasin Move MoveQuiet Mulberry N NE NNE NNW NW NavajoWhite Navy NavyBlue NoAlign NoCrop NoFill NoSide OldLace Olive OliveDrab OliveGreen Orange OrangeRed Orchid Ox Oy PC PaleGoldenrod PaleGreen PaleTurquoise PaleVioletRed PapayaWhip Peach PeachPuff Periwinkle Peru PineGreen Pink Plum PowderBlue ProcessBlue Purple RK2 RK3 RK3BS RK4 RK5 RK5DP RK5F RawSienna Red RedOrange RedViolet Rhodamine RightJustified RightSide RosyBrown RoyalBlue RoyalPurple RubineRed S SE SSE SSW SW SaddleBrown Salmon SandyBrown SeaGreen Seashell Sepia Sienna Silver SimpleHead SkyBlue SlateBlue SlateGray Snow SpringGreen SteelBlue Suppress SuppressQuiet Tan TeXHead Teal TealBlue Thistle Ticksize Tomato Turquoise UnFill VERSION Value Vertical Violet VioletRed W WNW WSW Wheat White WhiteSmoke WildStrawberry XYAlign YAlign Yellow YellowGreen YellowOrange addpenarc addpenline align allowstepping angularsystem animationdelay appendsuffix arcarrowangle arcarrowfactor arrow2sizelimit arrowangle arrowbarb arrowdir arrowfactor arrowhookfactor arrowlength arrowsizelimit arrowtexfactor authorpen axis axiscoverage axislabelfactor background backgroundcolor backgroundpen barfactor barmarksizefactor basealign baselinetemplate beveljoin bigvertexpen bigvertexsize black blue bm bottom bp brown bullet byfoci byvertices camerafactor chartreuse circlemarkradiusfactor circlenodesnumberfactor circleprecision circlescale cm codefile codepen codeskip colorPen coloredNodes coloredSegments conditionlength conicnodesfactor count cputimeformat crossmarksizefactor currentcoordsys currentpatterns currentpen currentpicture currentposition currentprojection curvilinearsystem cuttings cyan darkblue darkbrown darkcyan darkgray darkgreen darkgrey darkmagenta darkolive darkred dashdotted dashed datepen dateskip debuggerlines debugging deepblue deepcyan deepgray deepgreen deepgrey deepmagenta deepred default defaultControl defaultS defaultbackpen defaultcoordsys defaultfilename defaultformat defaultmassformat defaultpen diagnostics differentlengths dot dotfactor dotframe dotted doublelinepen doublelinespacing down duplicateFuzz ellipsenodesnumberfactor eps epsgeo epsilon evenodd extendcap fermionpen figureborder figuremattpen firstnode firststep foregroundcolor fuchsia fuzz gapfactor ghostpen gluonamplitude gluonpen gluonratio gray green grey hatchepsilon havepagenumber heavyblue heavycyan heavygray heavygreen heavygrey heavymagenta heavyred hline hwratio hyperbolanodesnumberfactor identity4 ignore inXasyMode inch inches includegraphicscommand inf infinity institutionpen intMax intMin invert invisible itempen itemskip itemstep labelmargin landscape lastnode left legendhskip legendlinelength legendmargin legendmarkersize legendmaxrelativewidth legendvskip lightblue lightcyan lightgray lightgreen lightgrey lightmagenta lightolive lightred lightyellow linemargin lm_infmsg lm_shortmsg longdashdotted longdashed magenta magneticPoints magneticRadius mantissaBits markangleradius markangleradiusfactor markanglespace markanglespacefactor mediumblue mediumcyan mediumgray mediumgreen mediumgrey mediummagenta mediumred mediumyellow middle minDistDefault minblockheight minblockwidth mincirclediameter minipagemargin minipagewidth minvertexangle miterjoin mm momarrowfactor momarrowlength momarrowmargin momarrowoffset momarrowpen monoPen morepoints nCircle newbulletcolor ngraph nil nmesh nobasealign nodeMarginDefault nodesystem nomarker nopoint noprimary nullpath nullpen numarray ocgindex oldbulletcolor olive orange origin overpaint page pageheight pagemargin pagenumberalign pagenumberpen pagenumberposition pagewidth paleblue palecyan palegray palegreen palegrey palemagenta palered paleyellow parabolanodesnumberfactor perpfactor phi photonamplitude photonpen photonratio pi pink plain plus preamblenodes pt purple r3 r4a r4b randMax realDigits realEpsilon realMax realMin red relativesystem reverse right roundcap roundjoin royalblue salmon saveFunctions scalarpen sequencereal settings shipped signedtrailingzero solid springgreen sqrtEpsilon squarecap squarepen startposition stdin stdout stepfactor stepfraction steppagenumberpen stepping stickframe stickmarksizefactor stickmarkspacefactor textpen ticksize tildeframe tildemarksizefactor tinv titlealign titlepagepen titlepageposition titlepen titleskip top trailingzero treeLevelStep treeMinNodeWidth treeNodeStep trembleAngle trembleFrequency trembleRandom tremblingMode undefined unitcircle unitsquare up urlpen urlskip version vertexpen vertexsize viewportmargin viewportsize vline white wye xformStack yellow ylabelwidth zerotickfuzz zerowinding )) +AliceBlue Align Allow AntiqueWhite Apricot Aqua Aquamarine Aspect Azure BeginPoint Beige Bisque Bittersweet Black BlanchedAlmond Blue BlueGreen BlueViolet Both Break BrickRed Brown BurlyWood BurntOrange CCW CW CadetBlue CarnationPink Center Centered Cerulean Chartreuse Chocolate Coeff Coral CornflowerBlue Cornsilk Crimson Crop Cyan Dandelion DarkBlue DarkCyan DarkGoldenrod DarkGray DarkGreen DarkKhaki DarkMagenta DarkOliveGreen DarkOrange DarkOrchid DarkRed DarkSalmon DarkSeaGreen DarkSlateBlue DarkSlateGray DarkTurquoise DarkViolet DeepPink DeepSkyBlue DefaultHead DimGray DodgerBlue Dotted Draw E ENE EPS ESE E_Euler E_PC E_RK2 E_RK3BS Emerald EndPoint Euler Fill FillDraw FireBrick FloralWhite ForestGreen Fuchsia Gainsboro GhostWhite Gold Goldenrod Gray Green GreenYellow Honeydew HookHead Horizontal HotPink I IgnoreAspect IndianRed Indigo Ivory JOIN_IN JOIN_OUT JungleGreen Khaki LM_DWARF LM_MACHEP LM_SQRT_DWARF LM_SQRT_GIANT LM_USERTOL Label Lavender LavenderBlush LawnGreen LeftJustified LeftSide LemonChiffon LightBlue LightCoral LightCyan LightGoldenrodYellow LightGreen LightGrey LightPink LightSalmon LightSeaGreen LightSkyBlue LightSlateGray LightSteelBlue LightYellow Lime LimeGreen Linear Linen Log Logarithmic Magenta Mahogany Mark MarkFill Maroon Max MediumAquamarine MediumBlue MediumOrchid MediumPurple MediumSeaGreen MediumSlateBlue MediumSpringGreen MediumTurquoise MediumVioletRed Melon MidPoint MidnightBlue Min MintCream MistyRose Moccasin Move MoveQuiet Mulberry N NE NNE NNW NW NavajoWhite Navy NavyBlue NoAlign NoCrop NoFill NoSide OldLace Olive OliveDrab OliveGreen Orange OrangeRed Orchid Ox Oy PC PaleGoldenrod PaleGreen PaleTurquoise PaleVioletRed PapayaWhip Peach PeachPuff Periwinkle Peru PineGreen Pink Plum PowderBlue ProcessBlue Purple RK2 RK3 RK3BS RK4 RK5 RK5DP RK5F RawSienna Red RedOrange RedViolet Rhodamine RightJustified RightSide RosyBrown RoyalBlue RoyalPurple RubineRed S SE SSE SSW SW SaddleBrown Salmon SandyBrown SeaGreen Seashell Sepia Sienna Silver SimpleHead SkyBlue SlateBlue SlateGray Snow SpringGreen SteelBlue Suppress SuppressQuiet Tan TeXHead Teal TealBlue Thistle Ticksize Tomato Turquoise UnFill VERSION Value Vertical Violet VioletRed W WNW WSW Wheat White WhiteSmoke WildStrawberry XYAlign YAlign Yellow YellowGreen YellowOrange addpenarc addpenline align allowstepping angularsystem animationdelay appendsuffix arcarrowangle arcarrowfactor arrow2sizelimit arrowangle arrowbarb arrowdir arrowfactor arrowhookfactor arrowlength arrowsizelimit arrowtexfactor authorpen axis axiscoverage axislabelfactor background backgroundcolor backgroundpen barfactor barmarksizefactor basealign baselinetemplate beveljoin bigvertexpen bigvertexsize black blue bm bottom bp brown bullet byfoci byvertices camerafactor chartreuse circlemarkradiusfactor circlenodesnumberfactor circleprecision circlescale cm codefile codepen codeskip colorPen coloredNodes coloredSegments conditionlength conicnodesfactor count cputimeformat crossmarksizefactor currentcoordsys currentlight currentpatterns currentpen currentpicture currentposition currentprojection curvilinearsystem cuttings cyan darkblue darkbrown darkcyan darkgray darkgreen darkgrey darkmagenta darkolive darkred dashdotted dashed datepen dateskip debuggerlines debugging deepblue deepcyan deepgray deepgreen deepgrey deepmagenta deepred default defaultControl defaultS defaultbackpen defaultcoordsys defaultfilename defaultformat defaultmassformat defaultpen diagnostics differentlengths dot dotfactor dotframe dotted doublelinepen doublelinespacing down duplicateFuzz ellipsenodesnumberfactor eps epsgeo epsilon evenodd extendcap fermionpen figureborder figuremattpen firstnode firststep foregroundcolor fuchsia fuzz gapfactor ghostpen gluonamplitude gluonpen gluonratio gray green grey hatchepsilon havepagenumber heavyblue heavycyan heavygray heavygreen heavygrey heavymagenta heavyred hline hwratio hyperbolanodesnumberfactor identity4 ignore inXasyMode inch inches includegraphicscommand inf infinity institutionpen intMax intMin invert invisible itempen itemskip itemstep labelmargin landscape lastnode left legendhskip legendlinelength legendmargin legendmarkersize legendmaxrelativewidth legendvskip lightblue lightcyan lightgray lightgreen lightgrey lightmagenta lightolive lightred lightyellow linemargin lm_infmsg lm_shortmsg longdashdotted longdashed magenta magneticPoints magneticRadius mantissaBits markangleradius markangleradiusfactor markanglespace markanglespacefactor mediumblue mediumcyan mediumgray mediumgreen mediumgrey mediummagenta mediumred mediumyellow middle minDistDefault minblockheight minblockwidth mincirclediameter minipagemargin minipagewidth minvertexangle miterjoin mm momarrowfactor momarrowlength momarrowmargin momarrowoffset momarrowpen monoPen morepoints nCircle newbulletcolor ngraph nil nmesh nobasealign nodeMarginDefault nodesystem nomarker nopoint noprimary nullpath nullpen numarray ocgindex oldbulletcolor olive orange origin overpaint page pageheight pagemargin pagenumberalign pagenumberpen pagenumberposition pagewidth paleblue palecyan palegray palegreen palegrey palemagenta palered paleyellow parabolanodesnumberfactor perpfactor phi photonamplitude photonpen photonratio pi pink plain plus preamblenodes pt purple r3 r4a r4b randMax realDigits realEpsilon realMax realMin red relativesystem reverse right roundcap roundjoin royalblue salmon saveFunctions scalarpen sequencereal settings shipped signedtrailingzero solid springgreen sqrtEpsilon squarecap squarepen startposition stdin stdout stepfactor stepfraction steppagenumberpen stepping stickframe stickmarksizefactor stickmarkspacefactor textpen ticksize tildeframe tildemarksizefactor tinv titlealign titlepagepen titlepageposition titlepen titleskip top trailingzero treeLevelStep treeMinNodeWidth treeNodeStep trembleAngle trembleFrequency trembleRandom tremblingMode undefined unitcircle unitsquare up urlpen urlskip version vertexpen vertexsize viewportmargin viewportsize vline white wye xformStack yellow ylabelwidth zerotickfuzz zerowinding )) diff --git a/Build/source/utils/asymptote/asymptote.spec b/Build/source/utils/asymptote/asymptote.spec index 0cd12e7df69..56c6a08f3c1 100644 --- a/Build/source/utils/asymptote/asymptote.spec +++ b/Build/source/utils/asymptote/asymptote.spec @@ -1,7 +1,7 @@ %{!?_texmf: %define _texmf %(eval "echo `kpsewhich -expand-var '$TEXMFLOCAL'`")} Name: asymptote -Version: 1.83 +Version: 1.86 Release: 1%{?dist} Summary: Descriptive vector graphics language diff --git a/Build/source/utils/asymptote/base/three.asy b/Build/source/utils/asymptote/base/three.asy index 1f9392ee094..d79daf3586c 100644 --- a/Build/source/utils/asymptote/base/three.asy +++ b/Build/source/utils/asymptote/base/three.asy @@ -22,6 +22,11 @@ real rendermargin=0.02; string defaultembed3Doptions; string defaultembed3Dscript; +string partname(string s, int i=0) +{ + return s == "" ? s : s+"-"+string(i); +} + triple O=(0,0,0); triple X=(1,0,0), Y=(0,1,0), Z=(0,0,1); @@ -1972,21 +1977,25 @@ triple size3(frame f) include three_light; void draw(frame f, path3 g, material p=currentpen, light light=nolight, - projection P=currentprojection); + string name="", projection P=currentprojection); -void begingroup3(picture pic=currentpicture) +void begingroup3(picture pic=currentpicture, string name="") { - pic.add(new void(frame f, transform3, picture opic, projection) { - if(opic != null) - begingroup(opic); + pic.add(new void(frame f, transform3, picture pic, projection) { + if(is3D()) + begingroup(f,name); + if(pic != null) + begingroup(pic); },true); } void endgroup3(picture pic=currentpicture) { - pic.add(new void(frame f, transform3, picture opic, projection) { - if(opic != null) - endgroup(opic); + pic.add(new void(frame f, transform3, picture pic, projection) { + if(is3D()) + endgroup(f); + if(pic != null) + endgroup(pic); },true); } @@ -2033,17 +2042,15 @@ pair max(frame f, projection P) void draw(picture pic=currentpicture, Label L="", path3 g, align align=NoAlign, material p=currentpen, margin3 margin=NoMargin3, - light light=nolight) + light light=nolight, string name="") { pen q=(pen) p; pic.add(new void(frame f, transform3 t, picture pic, projection P) { path3 G=margin(t*g,q).g; if(is3D()) { - draw(f,G,p,light,null); - if(pic != null && size(G) > 0) { - pic.addPoint(min(G,P)); - pic.addPoint(max(G,P)); - } + draw(f,G,p,light,name,null); + if(pic != null && size(G) > 0) + pic.addBox(min(G,P),max(G,P),min(q),max(q)); } if(pic != null) draw(pic,project(G,P),q); @@ -2060,7 +2067,8 @@ void draw(picture pic=currentpicture, Label L="", path3 g, include three_tube; draw=new void(frame f, path3 g, material p=currentpen, - light light=nolight, projection P=currentprojection) { + light light=nolight, string name="", + projection P=currentprojection) { pen q=(pen) p; if(is3D()) { p=material(p,(p.granularity >= 0) ? p.granularity : linegranularity); @@ -2091,12 +2099,12 @@ draw=new void(frame f, path3 g, material p=currentpen, T.s.append(shift(point(g,L))*align(dirL)*cap); } if(opacity(q) == 1) - _draw(f,T.center,q); + _draw(f,T.center,q,name); } for(int i=0; i < T.s.s.length; ++i) - draw3D(f,T.s.s[i],p,light); - } else _draw(f,g,q); - } else _draw(f,g,q); + draw3D(f,T.s.s[i],p,light,partname(name,i)); + } else _draw(f,g,q,name); + } else _draw(f,g,q,name); } string type=linetype(adjust(q,arclength(g),cyclic(g))); if(length(type) == 0) drawthick(g); @@ -2123,15 +2131,16 @@ draw=new void(frame f, path3 g, material p=currentpen, }; void draw(frame f, explicit path3[] g, material p=currentpen, - light light=nolight, projection P=currentprojection) + light light=nolight, string name="", projection P=currentprojection) { - for(int i=0; i < g.length; ++i) draw(f,g[i],p,light,P); + for(int i=0; i < g.length; ++i) draw(f,g[i],p,light,name,P); } void draw(picture pic=currentpicture, explicit path3[] g, - material p=currentpen, margin3 margin=NoMargin3, light light=nolight) + material p=currentpen, margin3 margin=NoMargin3, light light=nolight, + string name="") { - for(int i=0; i < g.length; ++i) draw(pic,g[i],p,margin,light); + for(int i=0; i < g.length; ++i) draw(pic,g[i],p,margin,light,name); } include three_arrows; @@ -2139,23 +2148,23 @@ include three_arrows; void draw(picture pic=currentpicture, Label L="", path3 g, align align=NoAlign, material p=currentpen, arrowbar3 arrow, arrowbar3 bar=None, margin3 margin=NoMargin3, light light=nolight, - light arrowheadlight=currentlight) + light arrowheadlight=currentlight, string name="") { begingroup3(pic); bool drawpath=arrow(pic,g,p,margin,light,arrowheadlight); if(bar(pic,g,p,margin,light,arrowheadlight) && drawpath) - draw(pic,L,g,align,p,margin,light); + draw(pic,L,g,align,p,margin,light,name); endgroup3(pic); label(pic,L,g,align,(pen) p); } void draw(frame f, path3 g, material p=currentpen, arrowbar3 arrow, light light=nolight, light arrowheadlight=currentlight, - projection P=currentprojection) + string name="", projection P=currentprojection) { picture pic; if(arrow(pic,g,p,NoMargin3,light,arrowheadlight)) - draw(f,g,p,light,P); + draw(f,g,p,light,name,P); add(f,pic.fit()); } @@ -2297,7 +2306,7 @@ private string Format(real x) // Work around movie15.sty division by zero bug; // e.g. u=unit((1e-10,1e-10,0.9)); if(abs(x) < 1e-9) x=0; - assert(abs(x) < 1e18,"Number too large: "+string(x)); + assert(abs(x) < 1e17,"Number too large: "+string(x)); return format("%.18f",x,"C"); } @@ -2449,6 +2458,7 @@ struct scene projection P; bool adjusted; real width,height; + pair viewportmargin; transform3 T=identity4; picture pic2; @@ -2510,7 +2520,7 @@ struct scene pair m2=pic2.min(s); pair M2=pic2.max(s); pair lambda=M2-m2; - pair viewportmargin=viewportmargin(lambda); + viewportmargin=viewportmargin(lambda); width=ceil(lambda.x+2*viewportmargin.x); height=ceil(lambda.y+2*viewportmargin.y); @@ -2600,22 +2610,23 @@ object embed(string label="", string text=label, string prefix=defaultfilename, Q=P.copy(); light=modelview*light; - pair viewportmargin=viewportmargin; if(P.infinity) { triple m=min3(S.f); triple M=max3(S.f); + triple lambda=M-m; - viewportmargin=viewportmargin((lambda.x,lambda.y)); + S.viewportmargin=viewportmargin((lambda.x,lambda.y)); S.width=lambda.x+2*viewportmargin.x; S.height=lambda.y+2*viewportmargin.y; S.f=shift((-0.5(m.x+M.x),-0.5*(m.y+M.y),0))*S.f; // Eye will be at (0,0,0) } else { if(P.angle == 0) { - Q.angle=P.angle=S.angle(P); + P.angle=S.angle(P); modelview=S.T*modelview; - if(viewportmargin.y != 0) - P.angle=2*aTan(Tan(0.5*P.angle)-viewportmargin.y/P.target.z); + if(S.viewportmargin.y != 0) + P.angle=2*aTan(Tan(0.5*P.angle)-S.viewportmargin.y/P.target.z); } + Q.angle=P.angle; if(settings.verbose > 0) { transform3 inv=inverse(modelview); if(S.adjusted) @@ -2661,7 +2672,7 @@ object embed(string label="", string text=label, string prefix=defaultfilename, m=(m.x,m.y,zcenter-r); if(P.infinity) { - triple margin=(viewportmargin.x,viewportmargin.y,0); + triple margin=(S.viewportmargin.x,S.viewportmargin.y,0); M += margin; m -= margin; } else if(M.z >= 0) abort("camera too close"); diff --git a/Build/source/utils/asymptote/base/three_surface.asy b/Build/source/utils/asymptote/base/three_surface.asy index e545d87cf7b..823e6e4b498 100644 --- a/Build/source/utils/asymptote/base/three_surface.asy +++ b/Build/source/utils/asymptote/base/three_surface.asy @@ -933,6 +933,61 @@ private triple[] split(triple z0, triple c0, triple c1, triple z1, real t=0.5) return new triple[] {m0,m3,m5,m4,m2}; } +// Return the control points of the subpatches +// produced by a horizontal split of P +triple[][][] hsplit(triple[][] P) +{ + // get control points in rows + triple[] P0=P[0]; + triple[] P1=P[1]; + triple[] P2=P[2]; + triple[] P3=P[3]; + + triple[] c0=split(P0[0],P1[0],P2[0],P3[0]); + triple[] c1=split(P0[1],P1[1],P2[1],P3[1]); + triple[] c2=split(P0[2],P1[2],P2[2],P3[2]); + triple[] c3=split(P0[3],P1[3],P2[3],P3[3]); + // bottom, top + return new triple[][][] { + {{c0[2],c1[2],c2[2],c3[2]}, + {c0[3],c1[3],c2[3],c3[3]}, + {c0[4],c1[4],c2[4],c3[4]}, + {P3[0],P3[1],P3[2],P3[3]}}, + {{P0[0],P0[1],P0[2],P0[3]}, + {c0[0],c1[0],c2[0],c3[0]}, + {c0[1],c1[1],c2[1],c3[1]}, + {c0[2],c1[2],c2[2],c3[2]}} + }; +} + +// Return the control points of the subpatches +// produced by a vertical split of P +triple[][][] vsplit(triple[][] P) +{ + // get control points in rows + triple[] P0=P[0]; + triple[] P1=P[1]; + triple[] P2=P[2]; + triple[] P3=P[3]; + + triple[] c0=split(P0[0],P0[1],P0[2],P0[3]); + triple[] c1=split(P1[0],P1[1],P1[2],P1[3]); + triple[] c2=split(P2[0],P2[1],P2[2],P2[3]); + triple[] c3=split(P3[0],P3[1],P3[2],P3[3]); + // left, right + return new triple[][][] { + {{P0[0],c0[0],c0[1],c0[2]}, + {P1[0],c1[0],c1[1],c1[2]}, + {P2[0],c2[0],c2[1],c2[2]}, + {P3[0],c3[0],c3[1],c3[2]}}, + + {{c0[2],c0[3],c0[4],P0[3]}, + {c1[2],c1[3],c1[4],P1[3]}, + {c2[2],c2[3],c2[4],P2[3]}, + {c3[2],c3[3],c3[4],P3[3]}} + }; +} + // Return the control points for a subpatch of P on [u,1] x [v,1]. triple[][] subpatchbegin(triple[][] P, real u, real v) { @@ -1009,9 +1064,8 @@ real[][] intersections(path3 p, surface s, real fuzz=-1) for(real[] s: intersections(p,s.s[i].P,fuzz)) T.push(s); - static real fuzzFactor=10.0; - static real Fuzz=1000.0*realEpsilon; - real fuzz=max(fuzzFactor*fuzz,Fuzz)*abs(max(s)-min(s)); + static real Fuzz=1000*realEpsilon; + real fuzz=max(10*fuzz,Fuzz*max(abs(min(s)),abs(max(s)))); // Remove intrapatch duplicate points. for(int i=0; i < T.length; ++i) { @@ -1039,12 +1093,45 @@ triple[] intersectionpoints(path3 p, surface s, real fuzz=-1) return sequence(new triple(int i) {return point(p,t[i][0]);},t.length); } +// Return true iff the bounding boxes of patch p and q overlap. +bool overlap(triple[][] p, triple[][] q, real fuzz=-1) +{ + triple p0=p[0][0]; + triple q0=q[0][0]; + triple pmin=minbezier(p,p0); + triple pmax=maxbezier(p,p0); + triple qmin=minbezier(q,q0); + triple qmax=maxbezier(q,q0); + + static real Fuzz=1000*realEpsilon; + real fuzz=max(10*fuzz,Fuzz*max(abs(pmin),abs(pmax))); + + return + pmax.x+fuzz >= qmin.x && + pmax.y+fuzz >= qmin.y && + pmax.z+fuzz >= qmin.z && + qmax.x+fuzz >= pmin.x && + qmax.y+fuzz >= pmin.y && + qmax.z+fuzz >= pmin.z; // Overlapping bounding boxes? +} + triple point(patch s, real u, real v) { return s.point(u,v); } -void draw3D(frame f, patch s, material m, light light=currentlight) +real PRCshininess(real shininess) +{ + // Empirical translation table from Phong-Blinn to PRC shininess model: + static real[] x={0.015,0.025,0.05,0.07,0.1,0.14,0.23,0.5,0.65,0.75,0.85, + 0.875,0.9,1}; + static real[] y={0.05,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.55,0.6,0.7,0.8,0.9,1}; + static realfunction s=fspline(x,y,monotonic); + return s(shininess); +} + +void draw3D(frame f, patch s, material m, light light=currentlight, + string name="") { if(s.colors.length > 0) m=mean(s.colors); @@ -1052,17 +1139,11 @@ void draw3D(frame f, patch s, material m, light light=currentlight) if(!lighton && !invisible((pen) m)) m=emissive(m); real PRCshininess; - if(prc()) { - // Empirical translation table from Phong-Blinn to PRC shininess model: - static real[] x={0.015,0.025,0.05,0.07,0.1,0.14,0.23,0.5,0.65,0.75,0.85, - 0.875,0.9,1}; - static real[] y={0.05,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.55,0.6,0.7,0.8,0.9,1}; - static realfunction s=fspline(x,y,monotonic); - PRCshininess=s(m.shininess); - } + if(prc()) + PRCshininess=PRCshininess(m.shininess); real granularity=m.granularity >= 0 ? m.granularity : defaultgranularity; draw(f,s.P,s.straight,m.p,m.opacity,m.shininess,PRCshininess,granularity, - s.planar ? s.normal(0.5,0.5) : O,lighton,s.colors); + s.planar ? s.normal(0.5,0.5) : O,s.colors,lighton,name); } void tensorshade(transform t=identity(), frame f, patch s, @@ -1078,12 +1159,12 @@ nullpens.cyclic=true; void draw(transform t=identity(), frame f, surface s, int nu=1, int nv=1, material[] surfacepen, pen[] meshpen=nullpens, - light light=currentlight, light meshlight=light, + light light=currentlight, light meshlight=light, string name="", projection P=currentprojection) { if(is3D()) { for(int i=0; i < s.s.length; ++i) - draw3D(f,s.s[i],surfacepen[i],light); + draw3D(f,s.s[i],surfacepen[i],light,partname(name,i)); pen modifiers=thin()+squarecap; for(int k=0; k < s.s.length; ++k) { pen meshpen=meshpen[k]; @@ -1130,26 +1211,26 @@ void draw(transform t=identity(), frame f, surface s, int nu=1, int nv=1, void draw(transform t=identity(), frame f, surface s, int nu=1, int nv=1, material surfacepen=currentpen, pen meshpen=nullpen, - light light=currentlight, light meshlight=light, + light light=currentlight, light meshlight=light, string name="", projection P=currentprojection) { material[] surfacepen={surfacepen}; pen[] meshpen={meshpen}; surfacepen.cyclic=true; meshpen.cyclic=true; - draw(t,f,s,nu,nv,surfacepen,meshpen,light,meshlight,P); + draw(t,f,s,nu,nv,surfacepen,meshpen,light,meshlight,name,P); } void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material[] surfacepen, pen[] meshpen=nullpens, - light light=currentlight, light meshlight=light) + light light=currentlight, light meshlight=light, string name="") { if(s.empty()) return; pic.add(new void(frame f, transform3 t, picture pic, projection P) { surface S=t*s; if(is3D()) { - draw(f,S,nu,nv,surfacepen,meshpen,light,meshlight); + draw(f,S,nu,nv,surfacepen,meshpen,light,meshlight,name); } else if(pic != null) pic.add(new void(frame f, transform T) { draw(T,f,S,nu,nv,surfacepen,meshpen,light,meshlight,P); @@ -1180,22 +1261,22 @@ void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material surfacepen=currentpen, pen meshpen=nullpen, - light light=currentlight, light meshlight=light) + light light=currentlight, light meshlight=light, string name="") { material[] surfacepen={surfacepen}; pen[] meshpen={meshpen}; surfacepen.cyclic=true; meshpen.cyclic=true; - draw(pic,s,nu,nv,surfacepen,meshpen,light,meshlight); + draw(pic,s,nu,nv,surfacepen,meshpen,light,meshlight,name); } void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material[] surfacepen, pen meshpen, - light light=currentlight, light meshlight=light) + light light=currentlight, light meshlight=light, string name="") { pen[] meshpen={meshpen}; meshpen.cyclic=true; - draw(pic,s,nu,nv,surfacepen,meshpen,light,meshlight); + draw(pic,s,nu,nv,surfacepen,meshpen,light,meshlight,name); } surface extrude(path3 p, path3 q) @@ -1211,9 +1292,9 @@ surface extrude(path3 p, triple axis=Z) return extrude(p,shift(axis)*p); } -surface extrude(path p, triple axis=Z) +surface extrude(path p, triple plane(pair)=XYplane, triple axis=Z) { - return extrude(path3(p),axis); + return extrude(path3(p,plane),axis); } surface extrude(explicit path[] p, triple axis=Z) @@ -1381,13 +1462,17 @@ surface extrude(Label L, triple axis=Z) restricted surface nullsurface; -surface labelsurface(Label L, surface s, real uoffset, real voffset, - real height=0, bool bottom=false, bool top=true) +// Embed a Label onto a surface. +surface surface(Label L, surface s, real uoffset, real voffset, + real height=0, bool bottom=false, bool top=true) { int nu=s.index.length; - if(nu == 0) return nullsurface; - int nv=s.index[0].length; - if(nv == 0) return nullsurface; + int nv; + if(nu == 0) nu=nv=1; + else { + nv=s.index[0].length; + if(nv == 0) nv=1; + } path[] g=texpath(L); pair m=min(g); @@ -1402,7 +1487,7 @@ surface labelsurface(Label L, surface s, real uoffset, real voffset, real v=voffset+(z.y-m.y)/lambda.y; if(((u < 0 || u >= nu) && !s.ucyclic()) || ((v < 0 || v >= nv) && !s.vcyclic())) - abort("cannot fit string to surface"); + warning("cannotfit","cannot fit string to surface"); return s.point(u,v)+height*unit(s.normal(u,v)); }); } @@ -1556,3 +1641,113 @@ void dot(picture pic=currentpicture, Label L, triple v, align align=NoAlign, dot(pic,v,p); label(pic,L,v); } + +pair minbound(triple[][] A, projection P) +{ + pair b=project(A[0][0],P); + for(triple[] a : A) { + for(triple v : a) { + b=minbound(b,project(v,P)); + } + } + return b; +} + +pair maxbound(triple[][] A, projection P) +{ + pair b=project(A[0][0],P); + for(triple[] a : A) { + for(triple v : a) { + b=maxbound(b,project(v,P)); + } + } + return b; +} + +triple[][] operator / (triple[][] a, real[][] b) +{ + triple[][] A=new triple[a.length][]; + for(int i=0; i < a.length; ++i) { + triple[] ai=a[i]; + real[] bi=b[i]; + A[i]=sequence(new triple(int j) {return ai[j]/bi[j];},ai.length); + } + return A; +} + +// Draw a NURBS surface. +void draw(picture pic=currentpicture, triple[][] P, real[] uknot, real[] vknot, + real[][] weights=new real[][], material m=currentpen, + pen[] colors=new pen[], light light=currentlight, string name="") +{ + if(colors.length > 0) + m=mean(colors); + bool lighton=light.on(); + pic.add(new void(frame f, transform3 t, picture pic, projection Q) { + if(is3D()) { + triple[][] P=t*P; + real granularity=m.granularity >= 0 ? m.granularity : + defaultgranularity; + real PRCshininess; + if(prc()) + PRCshininess=PRCshininess(m.shininess); + draw(f,P,uknot,vknot,weights,m.p,m.opacity,m.shininess,PRCshininess, + granularity,colors,lighton,name); + if(pic != null) { + triple[][] R=weights.length > 0 ? P/weights : P; + pic.addBox(minbound(R,Q),maxbound(R,Q)); + } + } + },true); + triple[][] R=weights.length > 0 ? P/weights : P; + pic.addBox(minbound(R),maxbound(R)); +} + +// A structure to subdivide two intersecting patches about their intersection. +struct split +{ + // Container for subpatches of p. + triple[][][] T; + + struct tree { + tree[] tree=new tree[2]; + } + // Default subdivision depth. + int n=23; + + // Subdivide p and q to depth n if they overlap. + void write(tree t, triple[][] p, triple[][] q, int depth=n) { + --depth; + triple[][][] split(triple[][] P)=depth % 2 == 0 ? hsplit : vsplit; + triple[][][] P=split(p); + triple[][][] Q=split(q); + + for(int i=0; i < 2; ++i) { + for(int j=0; j < 2; ++j) { + if(overlap(P[i],Q[j])) { + if(!t.tree.initialized(i)) t.tree[i]=new tree; + if(depth > 0) write(t.tree[i],P[i],Q[j],depth); + } + } + } + } + + // Output the subpatches of p from subdivision. + void read(tree t, triple[][] p, int depth=n) { + --depth; + triple[][][] split(triple[][] P)=depth % 2 == 0 ? hsplit : vsplit; + triple[][][] P=split(p); + + for(int i=0; i < 2; ++i) { + if(t.tree.initialized(i)) + read(t.tree[i],P[i],depth); + else T.push(P[i]); + } + } + + void operator init(triple[][] p, triple[][] q, int depth=n) { + tree trunk; + write(trunk,p,q,depth); + read(trunk,p,depth); + } +} diff --git a/Build/source/utils/asymptote/builtin.cc b/Build/source/utils/asymptote/builtin.cc index c20a14e4778..5f269e4e87d 100644 --- a/Build/source/utils/asymptote/builtin.cc +++ b/Build/source/utils/asymptote/builtin.cc @@ -9,7 +9,21 @@ #include "builtin.h" #include "entry.h" + #include "runtime.h" +#include "runpicture.h" +#include "runlabel.h" +#include "runhistory.h" +#include "runarray.h" +#include "runfile.h" +#include "runsystem.h" +#include "runstring.h" +#include "runpair.h" +#include "runtriple.h" +#include "runpath.h" +#include "runpath3d.h" +#include "runmath.h" + #include "types.h" #include "castop.h" @@ -42,11 +56,22 @@ using run::greater; using run::plus; using run::minus; - using namespace run; void gen_runtime_venv(venv &ve); -void gen_backtrace_venv(venv &ve); +void gen_runbacktrace_venv(venv &ve); +void gen_runpicture_venv(venv &ve); +void gen_runlabel_venv(venv &ve); +void gen_runhistory_venv(venv &ve); +void gen_runarray_venv(venv &ve); +void gen_runfile_venv(venv &ve); +void gen_runsystem_venv(venv &ve); +void gen_runstring_venv(venv &ve); +void gen_runpair_venv(venv &ve); +void gen_runtriple_venv(venv &ve); +void gen_runpath_venv(venv &ve); +void gen_runpath3d_venv(venv &ve); +void gen_runmath_venv(venv &ve); void addType(tenv &te, const char *name, ty *t) { @@ -1367,10 +1392,6 @@ void base_venv(venv &ve) formal(IntRealFunction(),"f"), formal(realArray(),"a")); - addFunc(ve,single,primFile(),"single",formal(primFile(),"file"), - formal(primBoolean(),"real",true), - formal(primBoolean(),"int",true)); - #ifdef HAVE_LIBFFTW3 addFunc(ve,pairArrayFFT,pairArray(),"fft",formal(pairArray(),"a"), formal(primInt(),"sign",true)); @@ -1396,7 +1417,19 @@ void base_venv(venv &ve) #endif gen_runtime_venv(ve); - gen_backtrace_venv(ve); + gen_runbacktrace_venv(ve); + gen_runpicture_venv(ve); + gen_runlabel_venv(ve); + gen_runhistory_venv(ve); + gen_runarray_venv(ve); + gen_runfile_venv(ve); + gen_runsystem_venv(ve); + gen_runstring_venv(ve); + gen_runpair_venv(ve); + gen_runtriple_venv(ve); + gen_runpath_venv(ve); + gen_runpath3d_venv(ve); + gen_runmath_venv(ve); } } //namespace trans @@ -1449,15 +1482,4 @@ void arrayDeleteHelper(stack *Stack) (*a).erase((*a).begin()+i,(*a).begin()+j+1); } -// Set file to read/write single-precision real and int XDR values. -void single(stack *Stack) -{ - bool integer=pop<bool>(Stack,true); - bool real=pop<bool>(Stack,true); - file *File=pop<file *>(Stack); - File->SingleReal(real); - File->SingleInt(integer); - Stack->push(File); -} - } diff --git a/Build/source/utils/asymptote/config.h.in b/Build/source/utils/asymptote/config.h.in index 29260eaf7d8..e29cd3f5e50 100644 --- a/Build/source/utils/asymptote/config.h.in +++ b/Build/source/utils/asymptote/config.h.in @@ -51,7 +51,7 @@ /* Define to 1 if you have the `glut' library (-lglut). */ #undef HAVE_LIBGLUT -/* Define to 1 if you have the 'gsl' library (-lgsl). */ +/* Define to 1 if you have the `gsl' library (-lgsl). */ #undef HAVE_LIBGSL /* Define to 1 if you have the <libintl.h> header file. */ @@ -129,9 +129,6 @@ /* Define to 1 if you have the `strptime' function. */ #undef HAVE_STRPTIME -/* Define if the function strptime is declared in <time.h> */ -#undef HAVE_STRPTIME_DECL - /* Define to 1 if you have the <sys/stat.h> header file. */ #undef HAVE_SYS_STAT_H diff --git a/Build/source/utils/asymptote/configure b/Build/source/utils/asymptote/configure index 17edcf8f38f..74b1337c168 100755 --- a/Build/source/utils/asymptote/configure +++ b/Build/source/utils/asymptote/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for Asymptote 1.83. +# Generated by GNU Autoconf 2.63 for Asymptote 1.86. # # Report bugs to <http://sourceforge.net/projects/asymptote>. # @@ -596,8 +596,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='Asymptote' PACKAGE_TARNAME='asymptote' -PACKAGE_VERSION='1.83' -PACKAGE_STRING='Asymptote 1.83' +PACKAGE_VERSION='1.86' +PACKAGE_STRING='Asymptote 1.86' PACKAGE_BUGREPORT='http://sourceforge.net/projects/asymptote' # Factoring default headers for most tests. @@ -1294,7 +1294,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Asymptote 1.83 to adapt to many kinds of systems. +\`configure' configures Asymptote 1.86 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1355,7 +1355,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Asymptote 1.83:";; + short | recursive ) echo "Configuration of Asymptote 1.86:";; esac cat <<\_ACEOF @@ -1465,7 +1465,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Asymptote configure 1.83 +Asymptote configure 1.86 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1479,7 +1479,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Asymptote $as_me 1.83, which was +It was created by Asymptote $as_me 1.86, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -7416,6 +7416,47 @@ fi if test "x$enable_readline" != "xno"; then +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <stdio.h> +#include <unistd.h> +#include <readline/readline.h> + +int +main () +{ + +#ifndef RL_READLINE_VERSION +abort +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then { $as_echo "$as_me:$LINENO: checking for rl_completion_matches in -lreadline" >&5 $as_echo_n "checking for rl_completion_matches in -lreadline... " >&6; } @@ -7490,10 +7531,18 @@ _ACEOF LIBS="-lreadline $LIBS" else - { $as_echo "$as_me:$LINENO: *** Could not find GNU readline 4.2 or later: will compile without readline support ***" >&5 -$as_echo "$as_me: *** Could not find GNU readline 4.2 or later: will compile without readline support ***" >&6;} + { $as_echo "$as_me:$LINENO: *** Could not find GNU readline 4.3 or later: will compile without readline support ***" >&5 +$as_echo "$as_me: *** Could not find GNU readline 4.3 or later: will compile without readline support ***" >&6;} fi +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi # Checks for header files. @@ -10855,34 +10904,6 @@ _ACEOF fi done - { $as_echo "$as_me:$LINENO: checking for strptime declaration in time.h" >&5 -$as_echo_n "checking for strptime declaration in time.h... " >&6; } - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <time.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strptime" >/dev/null 2>&1; then - - -cat >>confdefs.h <<\_ACEOF -#define HAVE_STRPTIME_DECL /**/ -_ACEOF - - { $as_echo "$as_me:$LINENO: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:$LINENO: result: no" >&5 -$as_echo "no" >&6; } - -fi -rm -f conftest* - { $as_echo "$as_me:$LINENO: checking for error_at_line" >&5 $as_echo_n "checking for error_at_line... " >&6; } @@ -11506,7 +11527,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Asymptote $as_me 1.83, which was +This file was extended by Asymptote $as_me 1.86, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -11565,7 +11586,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -Asymptote config.status 1.83 +Asymptote config.status 1.86 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/Build/source/utils/asymptote/configure.ac b/Build/source/utils/asymptote/configure.ac index 315381fc1c2..5846600fa03 100644 --- a/Build/source/utils/asymptote/configure.ac +++ b/Build/source/utils/asymptote/configure.ac @@ -3,7 +3,7 @@ # this file. AC_PREREQ(2) -AC_INIT([Asymptote],[1.83],[http://sourceforge.net/projects/asymptote]) +AC_INIT([Asymptote],[1.86],[http://sourceforge.net/projects/asymptote]) VERSION=$PACKAGE_VERSION AC_SUBST(VERSION) @@ -224,8 +224,16 @@ AC_ARG_ENABLE(readline, [AS_HELP_STRING(--enable-readline[[[=yes]]],enable GNU Readline Library)]) if test "x$enable_readline" != "xno"; then -AC_CHECK_LIB([readline], [rl_completion_matches],, -AC_MSG_NOTICE(*** Could not find GNU readline 4.2 or later: will compile without readline support ***)) +AC_COMPILE_IFELSE(AC_LANG_PROGRAM([ +#include <stdio.h> +#include <unistd.h> +#include <readline/readline.h> +],[ +#ifndef RL_READLINE_VERSION +abort +#endif +]),AC_CHECK_LIB([readline], [rl_completion_matches],, +AC_MSG_NOTICE(*** Could not find GNU readline 4.3 or later: will compile without readline support ***))) fi # Checks for header files. @@ -246,7 +254,7 @@ AC_ARG_ENABLE(gsl, if test "x$enable_gsl" != "xno"; then AC_CHECK_HEADER(gsl/gsl_sf.h, AC_CHECK_LIB([gsl], gsl_sf_debye_6, [AC_DEFINE(HAVE_LIBGSL, 1, - [Define to 1 if you have the 'gsl' library (-lgsl). ]) LIBS=$LIBS"-lgsl -lgslcblas "], + [Define to 1 if you have the `gsl' library (-lgsl). ]) LIBS=$LIBS"-lgsl -lgslcblas "], AC_MSG_NOTICE([*** Could not find libgsl: will compile without optional special functions. ***]),[-lgslcblas]), AC_MSG_NOTICE([*** Header file gsl_sf.h not found: will compile without optional special functions. ***])) fi @@ -272,7 +280,7 @@ case "$OSTYPE" in LIBS=$LIBS"-lfreeglut -lopengl32 "], AC_MSG_NOTICE([*** Could not find freeglut: will compile without OpenGL support ***])) AC_CHECK_LIB([GLU], [gluNewNurbsRenderer],[AC_DEFINE(HAVE_LIBGLU, 1, - [Define to 1 if you have the 'glu32' library (-lglu32). ]) LIBS=$LIBS"-lglu32 "], + [Define to 1 if you have the `glu32' library (-lglu32). ]) LIBS=$LIBS"-lglu32 "], AC_MSG_NOTICE([*** Could not find libglu32: will compile without OpenGL support ***])) ;; darwin*) AC_CHECK_HEADER(GLUT/glut.h, @@ -312,11 +320,6 @@ AC_TYPE_SIGNAL AC_DEFUN([ac_FUNC_STRPTIME], [ AC_CHECK_FUNCS(strptime) - AC_MSG_CHECKING(for strptime declaration in time.h) - AC_EGREP_HEADER(strptime, time.h, [ - AC_DEFINE([HAVE_STRPTIME_DECL],,[Define if the function strptime is declared in <time.h>]) - AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no) - ]) ]) # Checks for library functions. diff --git a/Build/source/utils/asymptote/doc/CAD.pdf b/Build/source/utils/asymptote/doc/CAD.pdf Binary files differindex 2b4cc8370e5..13a7826f8cf 100644 --- a/Build/source/utils/asymptote/doc/CAD.pdf +++ b/Build/source/utils/asymptote/doc/CAD.pdf diff --git a/Build/source/utils/asymptote/doc/FAQ/asy-faq.info b/Build/source/utils/asymptote/doc/FAQ/asy-faq.info index 085a3a3aca6..ca302152cf1 100644 --- a/Build/source/utils/asymptote/doc/FAQ/asy-faq.info +++ b/Build/source/utils/asymptote/doc/FAQ/asy-faq.info @@ -9,7 +9,7 @@ END-INFO-DIR-ENTRY File: $prefix.info, Node: Top, Next: Question 1.1, Up: (dir) ASYMPTOTE FREQUENTLY ASKED QUESTIONS - 15 Aug 2009 + 06 Sep 2009 This is the list of Frequently Asked Questions about Asymptote (asy). diff --git a/Build/source/utils/asymptote/doc/asymptote.pdf b/Build/source/utils/asymptote/doc/asymptote.pdf Binary files differindex c6b4904a2f7..951444d6fce 100644 --- a/Build/source/utils/asymptote/doc/asymptote.pdf +++ b/Build/source/utils/asymptote/doc/asymptote.pdf diff --git a/Build/source/utils/asymptote/doc/asymptote.sty b/Build/source/utils/asymptote/doc/asymptote.sty index 3e6bf310c60..ee4de194f36 100644 --- a/Build/source/utils/asymptote/doc/asymptote.sty +++ b/Build/source/utils/asymptote/doc/asymptote.sty @@ -1,9 +1,9 @@ %%% Asymptote style file for LaTeX %%% Contributed by Tom Prince 14 May 2003 %%% Modified by John Bowman -%%% Adapted from comment.sty (Under GPL v2) +%%% Adapted from comment.sty (Under GPL v2+) -\ProvidesPackage{asymptote}[2009/08/14 v1.09 Asymptote style file for LaTeX] +\ProvidesPackage{asymptote}[2009/08/15 v1.10 Asymptote style file for LaTeX] \RequirePackage{keyval} \RequirePackage{ifthen} \newif\ifASYinline @@ -122,13 +122,13 @@ \immediate\write\AsyStream{size(\ASYwidth,\ASYheight);}% \fi \fi - \ASYtexfalse + \ASYtexfalse% \ifASYattach - \def\ASYdefaultviewportwidth{0} + \def\ASYdefaultviewportwidth{0}% \else - \def\ASYdefaultviewportwidth{\the\linewidth} + \def\ASYdefaultviewportwidth{\the\linewidth}% \ifASYinline - \ASYtextrue + \ASYtextrue% \fi \fi \ifx\ASYviewportwidth\empty @@ -144,10 +144,10 @@ \AsyStream{viewportsize=(\ASYviewportwidth,\ASYviewportheight);}% \fi \fi - \gdef\ASYwidth{} - \gdef\ASYheight{} - \gdef\ASYviewportwidth{\ASYdefaultviewportwidth} - \gdef\ASYviewportheight{} + \gdef\ASYwidth{}% + \gdef\ASYheight{}% + \gdef\ASYviewportwidth{\ASYdefaultviewportwidth}% + \gdef\ASYviewportheight{}% \immediate\write\AsyStream{\@charrb);}% \immediate\write\AsyStream{// End of Asymptote Figure \the\c@asy}% \ifASYtex diff --git a/Build/source/utils/asymptote/doc/asymptote.texi b/Build/source/utils/asymptote/doc/asymptote.texi index 736ac00dfa1..39467931e05 100644 --- a/Build/source/utils/asymptote/doc/asymptote.texi +++ b/Build/source/utils/asymptote/doc/asymptote.texi @@ -341,10 +341,10 @@ official source: @url{http://sourceforge.net/project/showfiles.php?group_id=120000} @noindent -Note that many @code{MacOS X} (and FreeBSD) systems inexplicably ship -with an extremely old @acronym{GNU} @code{readline} version (4.1, -dated 21 March 2000). For full interactive functionality, -@code{readline} version 4.2 or later (16 April 2001) is required. +Note that many @code{MacOS X} (and FreeBSD) systems lack the +@acronym{GNU} @code{readline} library. For full interactive +functionality, @acronym{GNU} @code{readline} version 4.3 or later must +be installed. @node Microsoft Windows @section Microsoft Windows @@ -636,7 +636,7 @@ configure to look for header files and libraries in nonstandard locations: If you are compiling @code{Asymptote} with @code{gcc}, you will need a relatively recent version (e.g.@ 3.4.4 or later). For full interactive -functionality, you will need version 4.2 or later of the @acronym{GNU} +functionality, you will need version 4.3 or later of the @acronym{GNU} @code{readline} library. The file @code{gcc3.3.2curses.patch} in the @code{patches} directory can be used to patch the broken curses.h header file (or a local copy thereof @@ -2286,7 +2286,7 @@ two accelerations is returned. returns the acceleration of the path @code{p} at the point @code{t}. @cindex @code{radius} -@item pair radius(path p, real t); +@item real radius(path p, real t); returns the radius of curvature of the path @code{p} at the point @code{t}. @cindex @code{precontrol} @@ -5906,7 +5906,7 @@ need to remove the files @code{latexusage-*}, @code{latexusage_.pre}, and One can specify @code{width}, @code{height}, @code{viewportwidth}, @code{viewportheight}, and @code{attach} @code{keyval}-style options to the @code{asy} environment. -The current version (1.09) of @code{asymptote.sty} supports the +The current version (1.10) of @code{asymptote.sty} supports the embedding of 3D @acronym{PRC} files, either inline or, using the @code{attach} option with the @code{attachfile2} (or older @code{attachfile}) @code{LaTeX} package, @@ -7405,16 +7405,18 @@ the routines @verbatim void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material surfacepen=currentpen, pen meshpen=nullpen, - light light=currentlight, light meshlight=light); + light light=currentlight, light meshlight=light, string name=""); void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material[] surfacepen, pen meshpen, - light light=currentlight, light meshlight=light); + light light=currentlight, light meshlight=light, string name=""); void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material[] surfacepen, pen[] meshpen=nullpens, - light light=currentlight, light meshlight=light); + light light=currentlight, light meshlight=light, string name=""); @end verbatim The parameters @code{nu} and @code{nv} specify the number of subdivisions -for drawing optional mesh lines for each Bezier patch. +for drawing optional mesh lines for each Bezier patch. The optional +@code{name} parameter is used as a prefix for naming the surface +patches in the @acronym{PRC} model tree. Here material is a structure defined in @code{three_light.asy}: @verbatim struct material { diff --git a/Build/source/utils/asymptote/doc/png/asymptote.info b/Build/source/utils/asymptote/doc/png/asymptote.info index 671fc33dba2..999220e97c7 100644 --- a/Build/source/utils/asymptote/doc/png/asymptote.info +++ b/Build/source/utils/asymptote/doc/png/asymptote.info @@ -1,7 +1,7 @@ This is asymptote.info, produced by makeinfo version 4.13 from ../asymptote.texi. -This file documents `Asymptote', version 1.83. +This file documents `Asymptote', version 1.86. `http://asymptote.sourceforge.net' @@ -23,7 +23,7 @@ File: asymptote.info, Node: Top, Next: Description, Up: (dir) Asymptote ********* -This file documents `Asymptote', version 1.83. +This file documents `Asymptote', version 1.86. `http://asymptote.sourceforge.net' @@ -311,10 +311,9 @@ source: `http://sourceforge.net/project/showfiles.php?group_id=120000' -Note that many `MacOS X' (and FreeBSD) systems inexplicably ship with -an extremely old GNU `readline' version (4.1, dated 21 March 2000). For -full interactive functionality, `readline' version 4.2 or later (16 -April 2001) is required. +Note that many `MacOS X' (and FreeBSD) systems lack the GNU `readline' +library. For full interactive functionality, GNU `readline' version 4.3 +or later must be installed. File: asymptote.info, Node: Microsoft Windows, Next: Configuring, Prev: MacOS X binary distributions, Up: Installation @@ -534,7 +533,7 @@ for header files and libraries in nonstandard locations: If you are compiling `Asymptote' with `gcc', you will need a relatively recent version (e.g. 3.4.4 or later). For full interactive -functionality, you will need version 4.2 or later of the GNU `readline' +functionality, you will need version 4.3 or later of the GNU `readline' library. The file `gcc3.3.2curses.patch' in the `patches' directory can be used to patch the broken curses.h header file (or a local copy thereof in the current directory) on some `AIX' and `IRIX' systems. @@ -1820,7 +1819,7 @@ File: asymptote.info, Node: Paths and guides, Next: Pens, Prev: Data types, `pair accel(path p, real t);' returns the acceleration of the path `p' at the point `t'. - `pair radius(path p, real t);' + `real radius(path p, real t);' returns the radius of curvature of the path `p' at the point `t'. @@ -4622,7 +4621,7 @@ remove the files `latexusage-*', `latexusage_.pre', and One can specify `width', `height', `viewportwidth', `viewportheight', and `attach' `keyval'-style options to the `asy' -environment. The current version (1.09) of `asymptote.sty' supports the +environment. The current version (1.10) of `asymptote.sty' supports the embedding of 3D PRC files, either inline or, using the `attach' option with the `attachfile2' (or older `attachfile') `LaTeX' package, as annotated (but printable) attachments. For many applications, the @@ -6496,16 +6495,17 @@ containing an array of Bezier patches. Surfaces may drawn with one of the routines void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material surfacepen=currentpen, pen meshpen=nullpen, - light light=currentlight, light meshlight=light); + light light=currentlight, light meshlight=light, string name=""); void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material[] surfacepen, pen meshpen, - light light=currentlight, light meshlight=light); + light light=currentlight, light meshlight=light, string name=""); void draw(picture pic=currentpicture, surface s, int nu=1, int nv=1, material[] surfacepen, pen[] meshpen=nullpens, - light light=currentlight, light meshlight=light); + light light=currentlight, light meshlight=light, string name=""); The parameters `nu' and `nv' specify the number of subdivisions for -drawing optional mesh lines for each Bezier patch. Here material is a -structure defined in `three_light.asy': +drawing optional mesh lines for each Bezier patch. The optional `name' +parameter is used as a prefix for naming the surface patches in the PRC +model tree. Here material is a structure defined in `three_light.asy': struct material { pen[] p; // diffusepen,ambientpen,emissivepen,specularpen real opacity; @@ -8234,7 +8234,7 @@ Index * 2D graphs: graph. (line 6) * 3D graphs: graph3. (line 6) * 3D grids: grid3. (line 6) -* 3D PostScript: three. (line 525) +* 3D PostScript: three. (line 526) * 3D rendering: Compiling from UNIX source. (line 16) * :: Arithmetic & logical. @@ -8263,7 +8263,7 @@ Index * abs <1>: Mathematical functions. (line 35) * abs: Data types. (line 60) -* accel <1>: three. (line 455) +* accel <1>: three. (line 456) * accel: Paths and guides. (line 109) * access: Import. (line 6) * acknowledgments: Credits. (line 6) @@ -8297,21 +8297,21 @@ Index * animation: animation. (line 6) * annotate: annotate. (line 6) * antialias <1>: Options. (line 136) -* antialias: three. (line 198) +* antialias: three. (line 199) * antialiasing: Compiling from UNIX source. (line 16) * append <1>: Arrays. (line 39) * append: Files. (line 36) -* arc: three. (line 264) +* arc: three. (line 265) * Arc: Paths and guides. (line 32) * arc: Paths and guides. (line 22) * ArcArrow: draw. (line 26) -* ArcArrow3: three. (line 498) +* ArcArrow3: three. (line 499) * ArcArrows: draw. (line 26) -* ArcArrows3: three. (line 498) -* arclength <1>: three. (line 455) +* ArcArrows3: three. (line 499) +* arclength <1>: three. (line 456) * arclength: Paths and guides. (line 136) -* arctime <1>: three. (line 455) +* arctime <1>: three. (line 456) * arctime: Paths and guides. (line 140) * arguments: Default arguments. (line 6) * arithmetic operators: Arithmetic & logical. @@ -8323,10 +8323,10 @@ Index * Arrow: draw. (line 26) * arrow: Drawing commands. (line 31) * arrow keys: Tutorial. (line 21) -* Arrow3: three. (line 498) +* Arrow3: three. (line 499) * Arrows: draw. (line 26) * arrows: draw. (line 26) -* Arrows3: three. (line 498) +* Arrows3: three. (line 499) * as: Import. (line 70) * aSin: Mathematical functions. (line 20) @@ -8353,7 +8353,7 @@ Index * atleast: Tutorial. (line 165) * attach <1>: graph. (line 405) * attach: LaTeX usage. (line 32) -* autoadjust: three. (line 335) +* autoadjust: three. (line 336) * autoimport: Options. (line 105) * automatic scaling: graph. (line 672) * axialshade: fill. (line 43) @@ -8362,11 +8362,11 @@ Index * azimuth: Data types. (line 124) * babel: babel. (line 6) * background color: Frames and pictures. (line 164) -* BackView: three. (line 362) +* BackView: three. (line 363) * Bar: draw. (line 19) -* Bar3: three. (line 498) +* Bar3: three. (line 499) * Bars: draw. (line 19) -* Bars3: three. (line 498) +* Bars3: three. (line 499) * barsize: draw. (line 19) * base modules: Base modules. (line 6) * basealign: Pens. (line 165) @@ -8374,25 +8374,25 @@ Index * batch mode: Tutorial. (line 30) * beep: Data types. (line 335) * BeginArcArrow: draw. (line 26) -* BeginArcArrow3: three. (line 498) +* BeginArcArrow3: three. (line 499) * BeginArrow: draw. (line 26) -* BeginArrow3: three. (line 498) +* BeginArrow3: three. (line 499) * BeginBar: draw. (line 19) -* BeginBar3: three. (line 498) +* BeginBar3: three. (line 499) * BeginDotMargin: draw. (line 42) -* BeginDotMargin3: three. (line 514) +* BeginDotMargin3: three. (line 515) * BeginMargin: draw. (line 42) -* BeginMargin3: three. (line 514) +* BeginMargin3: three. (line 515) * BeginPenMargin: draw. (line 42) -* BeginPenMargin2: three. (line 514) -* BeginPenMargin3: three. (line 514) +* BeginPenMargin2: three. (line 515) +* BeginPenMargin3: three. (line 515) * BeginPoint: label. (line 57) * Bessel: Mathematical functions. (line 48) * bevel: flowchart. (line 68) * beveljoin: Pens. (line 135) * Bezier: Tutorial. (line 115) -* bezulate: three. (line 98) +* bezulate: three. (line 99) * Bi: Mathematical functions. (line 48) * Bi_deriv: Mathematical functions. @@ -8420,11 +8420,11 @@ Index (line 6) * Bottom: graph. (line 128) * BottomTop: graph. (line 134) -* BottomView: three. (line 362) +* BottomView: three. (line 363) * bounding box: Frames and pictures. (line 164) * Bounds: graph3. (line 20) * boutput: Files. (line 71) -* box <1>: three. (line 286) +* box <1>: three. (line 287) * box: Frames and pictures. (line 22) * bp: Tutorial. (line 17) * break: Programming. (line 29) @@ -8446,7 +8446,7 @@ Index * cd: Files. (line 24) * ceil: Mathematical functions. (line 26) -* center: three. (line 319) +* center: three. (line 320) * Center: label. (line 62) * checker: Pens. (line 248) * Chinese: unicode. (line 12) @@ -8455,7 +8455,7 @@ Index * Ci: Mathematical functions. (line 48) * circle <1>: flowchart. (line 57) -* circle: three. (line 260) +* circle: three. (line 261) * Circle: Paths and guides. (line 17) * circle: Paths and guides. (line 10) * circlebarframe: markers. (line 18) @@ -8526,7 +8526,7 @@ Index * curl: Tutorial. (line 172) * curlSpecifier: Paths and guides. (line 386) * currentpen: Pens. (line 6) -* currentprojection: three. (line 359) +* currentprojection: three. (line 360) * curve: slopefield. (line 20) * custom axis types: graph. (line 138) * custom mark routine: graph. (line 566) @@ -8534,7 +8534,7 @@ Index * cut: Paths and guides. (line 232) * cycle <1>: three. (line 6) * cycle: Tutorial. (line 46) -* cyclic <1>: three. (line 455) +* cyclic <1>: three. (line 456) * cyclic <2>: Arrays. (line 39) * cyclic: Paths and guides. (line 74) * Cyrillic: unicode. (line 7) @@ -8550,7 +8550,7 @@ Index * default arguments: Default arguments. (line 6) * defaultformat: graph. (line 169) * DefaultHead: draw. (line 26) -* DefaultHead3: three. (line 498) +* DefaultHead3: three. (line 499) * defaultpen: Pens. (line 46) * deferred drawing: simplex. (line 6) * Degrees: Mathematical functions. @@ -8564,7 +8564,7 @@ Index * diagonal: Arrays. (line 302) * diamond: flowchart. (line 50) * dimension: Arrays. (line 366) -* dir <1>: three. (line 455) +* dir <1>: three. (line 456) * dir <2>: Paths and guides. (line 98) * dir <3>: Data types. (line 85) * dir: Search paths. (line 10) @@ -8577,11 +8577,11 @@ Index * dot <1>: Data types. (line 98) * dot: draw. (line 83) * DotMargin: draw. (line 42) -* DotMargin3: three. (line 514) +* DotMargin3: three. (line 515) * DotMargins: draw. (line 42) -* DotMargins3: three. (line 514) +* DotMargins3: three. (line 515) * dotted: Pens. (line 92) -* double deferred drawing: three. (line 241) +* double deferred drawing: three. (line 242) * double precision: Files. (line 71) * Draw: Frames and pictures. (line 147) * draw: draw. (line 110) @@ -8607,19 +8607,19 @@ Index * embed: embed. (line 6) * empty: Frames and pictures. (line 7) * EndArcArrow: draw. (line 26) -* EndArcArrow3: three. (line 498) +* EndArcArrow3: three. (line 499) * EndArrow: draw. (line 26) -* EndArrow3: three. (line 498) +* EndArrow3: three. (line 499) * EndBar: draw. (line 19) -* EndBar3: three. (line 498) +* EndBar3: three. (line 499) * EndDotMargin: draw. (line 42) -* EndDotMargin3: three. (line 514) +* EndDotMargin3: three. (line 515) * endl: Files. (line 59) * EndMargin: draw. (line 42) -* EndMargin3: three. (line 514) +* EndMargin3: three. (line 515) * EndPenMargin: draw. (line 42) -* EndPenMargin2: three. (line 514) -* EndPenMargin3: three. (line 514) +* EndPenMargin2: three. (line 515) +* EndPenMargin3: three. (line 515) * EndPoint: label. (line 57) * envelope: Frames and pictures. (line 22) * environment variables: Configuring. (line 86) @@ -8656,12 +8656,12 @@ Index * extension <1>: MetaPost. (line 10) * extension: Paths and guides. (line 227) * external: embed. (line 28) -* extrude: three. (line 449) +* extrude: three. (line 450) * F: Mathematical functions. (line 48) * fabs: Mathematical functions. (line 6) -* face: three. (line 533) +* face: three. (line 534) * factorial: Mathematical functions. (line 39) * Fedora: UNIX binary distributions. @@ -8705,7 +8705,7 @@ Index * freeglut: Compiling from UNIX source. (line 16) * from: Import. (line 17) -* FrontView: three. (line 362) +* FrontView: three. (line 363) * function declarations: Functions. (line 67) * function shading: fill. (line 95) * Function shading: fill. (line 95) @@ -8724,7 +8724,7 @@ Index * getstring: Files. (line 114) * gettriple: Files. (line 114) * glOptions <1>: Options. (line 124) -* glOptions: three. (line 198) +* glOptions: three. (line 199) * GNU Scientific Library: Mathematical functions. (line 48) * gouraudshade: fill. (line 58) @@ -8761,14 +8761,14 @@ Index * hex: Data types. (line 279) * hexidecimal <1>: Pens. (line 59) * hexidecimal: Data types. (line 279) -* hidden surface removal: three. (line 533) +* hidden surface removal: three. (line 534) * histogram: Mathematical functions. (line 39) * history <1>: Interactive mode. (line 37) * history: Files. (line 139) * historylines: Interactive mode. (line 42) * HookHead: draw. (line 26) -* HookHead3: three. (line 498) +* HookHead3: three. (line 499) * Horizontal: flowchart. (line 74) * hypot: Mathematical functions. (line 6) @@ -8776,7 +8776,7 @@ Index (line 48) * i_scaled: Mathematical functions. (line 48) -* iconic: three. (line 198) +* iconic: three. (line 199) * identity <1>: Arrays. (line 299) * identity <2>: Mathematical functions. (line 6) @@ -8815,22 +8815,22 @@ Index * interp: Arithmetic & logical. (line 76) * interpolate: interpolate. (line 6) -* intersect <1>: three. (line 455) +* intersect <1>: three. (line 456) * intersect <2>: math. (line 13) * intersect: Paths and guides. (line 175) -* intersectionpoint <1>: three. (line 455) +* intersectionpoint <1>: three. (line 456) * intersectionpoint <2>: math. (line 17) * intersectionpoint: Paths and guides. (line 219) -* intersectionpoints <1>: three. (line 455) +* intersectionpoints <1>: three. (line 456) * intersectionpoints: Paths and guides. (line 223) -* intersections <1>: three. (line 455) +* intersections <1>: three. (line 456) * intersections: Paths and guides. (line 186) * InTicks: graph3. (line 34) * intMax: Data types. (line 28) * intMin: Data types. (line 28) * inverse <1>: Arrays. (line 305) * inverse: Transforms. (line 16) -* invert: three. (line 388) +* invert: three. (line 389) * invisible: Pens. (line 39) * J: Mathematical functions. (line 6) @@ -8841,7 +8841,7 @@ Index (line 48) * Kate: Editing modes. (line 49) * KDE editor: Editing modes. (line 49) -* keyboard bindings:: three. (line 163) +* keyboard bindings:: three. (line 164) * keys: Arrays. (line 39) * keywords: Named arguments. (line 6) * Korean: unicode. (line 12) @@ -8869,13 +8869,13 @@ Index * LeftRight: graph. (line 280) * LeftSide: label. (line 62) * LeftTicks: graph. (line 155) -* LeftView: three. (line 362) +* LeftView: three. (line 363) * legend <1>: graph. (line 421) * legend <2>: draw. (line 64) * legend: Drawing commands. (line 31) * Legendre: Mathematical functions. (line 48) -* length <1>: three. (line 455) +* length <1>: three. (line 456) * length <2>: Arrays. (line 39) * length <3>: Paths and guides. (line 65) * length: Data types. (line 60) @@ -8915,10 +8915,10 @@ Index * makepen: Pens. (line 297) * map: Arrays. (line 141) * Margin: draw. (line 42) -* Margin3: three. (line 514) -* margins: three. (line 247) +* Margin3: three. (line 515) +* margins: three. (line 248) * Margins: draw. (line 42) -* Margins3: three. (line 514) +* Margins3: three. (line 515) * mark: graph. (line 474) * markangle: markers. (line 38) * marker: graph. (line 474) @@ -8928,14 +8928,14 @@ Index * math: math. (line 6) * mathematical functions: Mathematical functions. (line 6) -* max <1>: three. (line 455) +* max <1>: three. (line 456) * max <2>: Arrays. (line 228) * max <3>: Frames and pictures. (line 7) * max: Paths and guides. (line 259) * maxbound: Data types. (line 104) -* maxtile: three. (line 198) +* maxtile: three. (line 199) * maxtimes: Paths and guides. (line 214) -* maxviewport: three. (line 198) +* maxviewport: three. (line 199) * MetaPost: MetaPost. (line 6) * MetaPost ... : Tutorial. (line 176) * MetaPost cutafter: Paths and guides. (line 247) @@ -8944,12 +8944,12 @@ Index * MetaPost whatever: MetaPost. (line 10) * Microsoft Windows: Microsoft Windows. (line 6) * MidArcArrow: draw. (line 26) -* MidArcArrow3: three. (line 498) +* MidArcArrow3: three. (line 499) * MidArrow: draw. (line 26) -* MidArrow3: three. (line 498) +* MidArrow3: three. (line 499) * midpoint: Paths and guides. (line 160) * MidPoint: label. (line 57) -* min <1>: three. (line 455) +* min <1>: three. (line 456) * min <2>: Arrays. (line 221) * min <3>: Frames and pictures. (line 7) * min: Paths and guides. (line 255) @@ -8961,10 +8961,10 @@ Index * mm: Tutorial. (line 63) * mode: Files. (line 85) * mouse: GUI. (line 6) -* mouse bindings: three. (line 131) +* mouse bindings: three. (line 132) * Move: Pens. (line 336) * MoveQuiet: Pens. (line 342) -* multisample: three. (line 121) +* multisample: three. (line 122) * multisampling: Compiling from UNIX source. (line 16) * N: Tutorial. (line 94) @@ -8982,10 +8982,10 @@ Index * NoFill <1>: Frames and pictures. (line 141) * NoFill: draw. (line 26) * NoMargin: draw. (line 42) -* NoMargin3: three. (line 514) +* NoMargin3: three. (line 515) * none: Files. (line 59) * None: draw. (line 19) -* normal: three. (line 441) +* normal: three. (line 442) * nosafe: Options. (line 152) * NOT: Arithmetic & logical. (line 80) @@ -8994,19 +8994,19 @@ Index * null: Structures. (line 6) * nullpen <1>: Frames and pictures. (line 127) * nullpen: label. (line 14) -* NURBS: three. (line 339) -* O: three. (line 255) +* NURBS: three. (line 340) +* O: three. (line 256) * obj: obj. (line 9) -* oblique: three. (line 300) -* obliqueX: three. (line 308) -* obliqueY: three. (line 315) -* obliqueZ: three. (line 300) +* oblique: three. (line 301) +* obliqueX: three. (line 309) +* obliqueY: three. (line 316) +* obliqueZ: three. (line 301) * ode: ode. (line 9) * offset <1>: Options. (line 157) * offset: Pens. (line 112) * opacity: Pens. (line 219) * open: Files. (line 11) -* OpenGL: three. (line 121) +* OpenGL: three. (line 122) * operator: User-defined operators. (line 6) * operator --: graph. (line 31) @@ -9021,8 +9021,8 @@ Index * OR: Arithmetic & logical. (line 80) * orientation: Frames and pictures. (line 95) -* orthographic: three. (line 319) -* outformat: three. (line 121) +* orthographic: three. (line 320) +* outformat: three. (line 122) * outprefix: Frames and pictures. (line 83) * output <1>: Options. (line 136) * output: Files. (line 36) @@ -9041,7 +9041,7 @@ Index * paperwidth: Configuring. (line 61) * parametric surface: graph3. (line 100) * parametrized curve: graph. (line 626) -* patch-dependent colors: three. (line 75) +* patch-dependent colors: three. (line 76) * path <1>: flowchart. (line 74) * path <2>: three. (line 43) * path: Paths and guides. (line 7) @@ -9055,30 +9055,30 @@ Index * pdfviewerOptions: Options. (line 124) * pen: Pens. (line 6) * PenMargin: draw. (line 42) -* PenMargin2: three. (line 514) -* PenMargin3: three. (line 514) +* PenMargin2: three. (line 515) +* PenMargin3: three. (line 515) * PenMargins: draw. (line 42) -* PenMargins2: three. (line 514) -* PenMargins3: three. (line 514) +* PenMargins2: three. (line 515) +* PenMargins3: three. (line 515) * perpendicular: geometry. (line 6) -* perspective: three. (line 339) +* perspective: three. (line 340) * picture: Frames and pictures. (line 35) * picture alignment: Frames and pictures. (line 205) * piecewisestraight: Paths and guides. (line 81) * Pl: Mathematical functions. (line 48) * plain: plain. (line 6) -* planar: three. (line 83) -* plane: three. (line 282) -* planeproject: three. (line 438) -* point <1>: three. (line 455) +* planar: three. (line 84) +* plane: three. (line 283) +* planeproject: three. (line 439) +* point <1>: three. (line 456) * point: Paths and guides. (line 84) * polar: Data types. (line 119) * polargraph: graph. (line 90) * polygon: graph. (line 474) * pop: Arrays. (line 39) * Portrait: Frames and pictures. (line 95) -* postcontrol <1>: three. (line 455) +* postcontrol <1>: three. (line 456) * postcontrol: Paths and guides. (line 129) * postfix operators: Self & prefix operators. (line 19) @@ -9087,9 +9087,9 @@ Index * PostScript subpath: Tutorial. (line 197) * pow10: Mathematical functions. (line 6) -* prc: three. (line 216) +* prc: three. (line 217) * precision: Files. (line 89) -* precontrol <1>: three. (line 455) +* precontrol <1>: three. (line 456) * precontrol: Paths and guides. (line 122) * prefix operators: Self & prefix operators. (line 6) @@ -9115,7 +9115,7 @@ Index * radialshade: fill. (line 49) * radians: Mathematical functions. (line 17) -* radius <1>: three. (line 455) +* radius <1>: three. (line 456) * radius: Paths and guides. (line 118) * Rainbow: palette. (line 12) * rand: Mathematical functions. @@ -9142,14 +9142,14 @@ Index (line 6) * rename: Files. (line 148) * render <1>: Options. (line 136) -* render: three. (line 121) +* render: three. (line 122) * replace: Data types. (line 252) * resetdefaultpen: Pens. (line 350) * rest arguments: Rest arguments. (line 6) * restore: Frames and pictures. (line 261) * restricted: Structures. (line 6) * return: Debugger. (line 48) -* reverse <1>: three. (line 455) +* reverse <1>: three. (line 456) * reverse <2>: Arrays. (line 146) * reverse <3>: Paths and guides. (line 163) * reverse: Data types. (line 248) @@ -9161,7 +9161,7 @@ Index * Right: graph. (line 277) * RightSide: label. (line 62) * RightTicks: graph. (line 155) -* RightView: three. (line 362) +* RightView: three. (line 363) * Rotate: label. (line 37) * Rotate(pair z): label. (line 40) * round: Mathematical functions. @@ -9178,13 +9178,13 @@ Index * safe: Options. (line 152) * save: Frames and pictures. (line 258) * saveline: Files. (line 131) -* scale: three. (line 417) +* scale: three. (line 418) * Scale: graph. (line 688) * scale <1>: graph. (line 672) * scale <2>: Transforms. (line 39) * scale: Pens. (line 112) * Scale: label. (line 46) -* scale3: three. (line 414) +* scale3: three. (line 415) * scaled graph: graph. (line 653) * scientific graph: graph. (line 386) * scroll: Files. (line 105) @@ -9206,12 +9206,12 @@ Index * sgn: Mathematical functions. (line 26) * shading: fill. (line 32) -* shift <1>: three. (line 402) +* shift <1>: three. (line 403) * shift: Transforms. (line 27) * Shift: label. (line 34) * shiftless: Transforms. (line 53) * shipout: Frames and pictures. (line 83) -* showtarget: three. (line 319) +* showtarget: three. (line 320) * Si: Mathematical functions. (line 48) * signedint: Files. (line 71) @@ -9229,10 +9229,10 @@ Index * sinh: Mathematical functions. (line 6) * size <1>: Options. (line 136) -* size <2>: three. (line 455) +* size <2>: three. (line 456) * size <3>: Frames and pictures. (line 43) * size: Paths and guides. (line 70) -* size3: three. (line 244) +* size3: three. (line 245) * slant: Transforms. (line 45) * Slant: label. (line 43) * sleep: Data types. (line 329) @@ -9261,7 +9261,7 @@ Index * step: Debugger. (line 39) * stickframe: markers. (line 16) * stop: Debugger. (line 10) -* straight: three. (line 455) +* straight: three. (line 456) * Straight: graph. (line 31) * straight: Paths and guides. (line 77) * strftime: Data types. (line 291) @@ -9271,7 +9271,7 @@ Index * strptime: Data types. (line 299) * struct: Structures. (line 6) * structures: Structures. (line 6) -* subpath <1>: three. (line 455) +* subpath <1>: three. (line 456) * subpath: Paths and guides. (line 166) * subpictures: Frames and pictures. (line 103) * substr: Data types. (line 244) @@ -9294,7 +9294,7 @@ Index (line 6) * tanh: Mathematical functions. (line 6) -* target: three. (line 319) +* target: three. (line 320) * tell: Files. (line 89) * tension <1>: three. (line 6) * tension: Tutorial. (line 165) @@ -9307,7 +9307,7 @@ Index * TeX string: Data types. (line 179) * texcommand: Configuring. (line 67) * TeXHead: draw. (line 26) -* TeXHead3: three. (line 498) +* TeXHead3: three. (line 499) * texpath <1>: label. (line 116) * texpath: Configuring. (line 67) * texpreamble: Frames and pictures. (line 282) @@ -9315,8 +9315,8 @@ Index * textbook graph: graph. (line 361) * tgz: UNIX binary distributions. (line 6) -* thick: three. (line 104) -* thin: three. (line 104) +* thick: three. (line 105) +* thin: three. (line 105) * this: Structures. (line 6) * three: three. (line 6) * tick: graph. (line 332) @@ -9328,12 +9328,12 @@ Index * time: Data types. (line 291) * times: Paths and guides. (line 201) * Top: graph. (line 131) -* TopView: three. (line 362) +* TopView: three. (line 363) * trace: Debugger. (line 51) * trailingzero: graph. (line 169) -* transform <1>: three. (line 429) +* transform <1>: three. (line 430) * transform: Transforms. (line 6) -* transform3: three. (line 398) +* transform3: three. (line 399) * transparency: Pens. (line 219) * transpose: Arrays. (line 208) * tree: tree. (line 9) @@ -9345,9 +9345,9 @@ Index (line 48) * triple: Data types. (line 108) * TrueMargin: draw. (line 42) -* TrueMargin3: three. (line 514) +* TrueMargin3: three. (line 515) * tube <1>: tube. (line 6) -* tube: three. (line 104) +* tube: three. (line 105) * tutorial: Tutorial. (line 6) * typedef <1>: Functions. (line 36) * typedef: Data types. (line 339) @@ -9359,9 +9359,9 @@ Index * uniform: Arrays. (line 155) * Uninstall: Uninstall. (line 6) * unit: Data types. (line 78) -* unitbox <1>: three. (line 288) +* unitbox <1>: three. (line 289) * unitbox: Tutorial. (line 218) -* unitcircle <1>: three. (line 255) +* unitcircle <1>: three. (line 256) * unitcircle: Tutorial. (line 110) * unitrand: Mathematical functions. (line 39) @@ -9371,7 +9371,7 @@ Index (line 6) * unpacking: Rest arguments. (line 39) * unravel: Import. (line 31) -* up: three. (line 319) +* up: three. (line 320) * update: Files. (line 36) * UpsideDown: Frames and pictures. (line 95) * usepackage: Frames and pictures. (line 287) @@ -9385,13 +9385,13 @@ Index * vectorfield3: graph3. (line 159) * vectorization: Arrays. (line 322) * verbatim: Frames and pictures. (line 267) -* vertex-dependent colors: three. (line 75) +* vertex-dependent colors: three. (line 76) * Vertical: flowchart. (line 74) * viewportheight: LaTeX usage. (line 32) -* viewportmargin: three. (line 247) -* viewportsize: three. (line 247) +* viewportmargin: three. (line 248) +* viewportsize: three. (line 248) * viewportwidth: LaTeX usage. (line 32) -* views: three. (line 216) +* views: three. (line 217) * vim: Editing modes. (line 33) * virtual functions: Structures. (line 189) * void: Data types. (line 10) @@ -9406,7 +9406,7 @@ Index * word: Arrays. (line 353) * write <1>: Arrays. (line 393) * write: Files. (line 51) -* X: three. (line 255) +* X: three. (line 256) * xasy: GUI. (line 6) * xaxis3: graph3. (line 7) * xelatex <1>: Options. (line 136) @@ -9420,14 +9420,14 @@ Index * xoutput: Files. (line 71) * xpart: Data types. (line 89) * xscale: Transforms. (line 33) -* xscale3: three. (line 405) +* xscale3: three. (line 406) * xtick: graph. (line 332) * XYEquals: graph3. (line 20) * XYZero: graph3. (line 20) * XZEquals: graph3. (line 20) * XZero: graph. (line 265) * XZZero: graph3. (line 20) -* Y <1>: three. (line 255) +* Y <1>: three. (line 256) * Y: Mathematical functions. (line 6) * yaxis3: graph3. (line 7) @@ -9436,12 +9436,12 @@ Index * ylimits: graph. (line 626) * ypart: Data types. (line 92) * yscale: Transforms. (line 36) -* yscale3: three. (line 408) +* yscale3: three. (line 409) * ytick: graph. (line 332) * YZEquals: graph3. (line 20) * YZero: graph. (line 119) * YZZero: graph3. (line 20) -* Z: three. (line 255) +* Z: three. (line 256) * zaxis3: graph3. (line 7) * zero_Ai: Mathematical functions. (line 48) @@ -9457,7 +9457,7 @@ Index * zeta: Mathematical functions. (line 48) * zpart: Data types. (line 161) -* zscale3: three. (line 411) +* zscale3: three. (line 412) * |: Arithmetic & logical. (line 62) * ||: Arithmetic & logical. @@ -9471,141 +9471,141 @@ Node: Description6760 Node: Installation10259 Node: UNIX binary distributions11307 Node: MacOS X binary distributions12413 -Node: Microsoft Windows13361 -Ref: psview14071 -Node: Configuring14992 -Node: Search paths19205 -Node: Compiling from UNIX source20002 -Ref: multisampling20591 -Node: Editing modes23009 -Node: Subversion25441 -Node: Uninstall25904 -Node: Tutorial26254 -Ref: unitcircle29997 -Ref: Bezier30206 -Node: Drawing commands35265 -Node: draw36974 -Ref: arrows38122 -Node: fill43365 -Ref: gradient shading44409 -Node: clip48602 -Node: label49194 -Ref: Label49893 -Node: Programming55618 -Ref: array iteration56435 -Node: Data types57517 -Ref: format66418 -Node: Paths and guides69882 -Ref: circle70136 -Ref: arctime75453 -Ref: extension79318 -Node: Pens86001 -Ref: fillrule93245 -Ref: basealign94142 -Ref: transparency96967 -Ref: makepen100410 -Ref: overwrite101248 -Node: Transforms102458 -Node: Frames and pictures104249 -Ref: envelope105390 -Ref: size106473 -Ref: unitsize107460 -Ref: shipout108520 -Ref: filltype110853 -Ref: add113835 -Ref: add about114781 -Ref: tex117726 -Node: Files118600 -Ref: cd119565 -Ref: scroll124034 -Node: Variable initializers127107 -Node: Structures129402 -Node: Operators136854 -Node: Arithmetic & logical137168 -Node: Self & prefix operators139065 -Node: User-defined operators139853 -Node: Implicit scaling140764 -Node: Functions141327 -Ref: stack overflow144080 -Node: Default arguments144644 -Node: Named arguments145383 -Node: Rest arguments147545 -Node: Mathematical functions150355 -Node: Arrays154960 -Ref: sort162020 -Ref: tridiagonal164311 -Ref: solve165539 -Node: Slices169736 -Node: Casts173629 -Node: Import175595 -Node: Static180825 -Node: LaTeX usage183721 -Node: Base modules189166 -Node: plain191666 -Node: simplex192318 -Node: math192591 -Node: interpolate193690 -Node: geometry193969 -Node: trembling194573 -Node: stats194934 -Node: patterns195194 -Node: markers195430 -Node: tree197213 -Node: binarytree197401 -Node: drawtree197990 -Node: syzygy198194 -Node: feynman198468 -Node: roundedpath198743 -Node: animation199026 -Ref: animate199443 -Node: embed200582 -Node: slide202371 -Node: MetaPost202711 -Node: unicode203427 -Node: latin1204315 -Node: babel204683 -Node: labelpath204912 -Node: labelpath3205732 -Node: annotate206043 -Node: CAD206514 -Node: graph206824 -Ref: ticks213663 -Ref: pathmarkers226814 -Ref: marker227279 -Ref: markuniform227630 -Ref: errorbars229421 -Ref: automatic scaling233477 -Node: palette244123 -Ref: images244241 -Ref: image248412 -Ref: logimage248890 -Ref: penimage249696 -Node: three250140 -Ref: PostScript3D272471 -Node: obj274163 -Node: graph3274415 -Ref: GaussianSurface279540 -Node: grid3280625 -Node: solids281365 -Node: tube282313 -Node: flowchart284548 -Node: contour289047 -Node: contour3294078 -Node: slopefield294385 -Node: ode295822 -Node: Options296082 -Ref: configuration file301624 -Ref: settings301624 -Ref: convert302719 -Node: Interactive mode305508 -Ref: history307132 -Node: GUI308437 -Node: GUI Installation308940 -Node: GUI Usage310078 -Node: PostScript to Asymptote310981 -Node: Help312124 -Node: Debugger313853 -Node: Credits315638 -Node: Index316551 +Node: Microsoft Windows13297 +Ref: psview14007 +Node: Configuring14928 +Node: Search paths19141 +Node: Compiling from UNIX source19938 +Ref: multisampling20527 +Node: Editing modes22945 +Node: Subversion25377 +Node: Uninstall25840 +Node: Tutorial26190 +Ref: unitcircle29933 +Ref: Bezier30142 +Node: Drawing commands35201 +Node: draw36910 +Ref: arrows38058 +Node: fill43301 +Ref: gradient shading44345 +Node: clip48538 +Node: label49130 +Ref: Label49829 +Node: Programming55554 +Ref: array iteration56371 +Node: Data types57453 +Ref: format66354 +Node: Paths and guides69818 +Ref: circle70072 +Ref: arctime75389 +Ref: extension79254 +Node: Pens85937 +Ref: fillrule93181 +Ref: basealign94078 +Ref: transparency96903 +Ref: makepen100346 +Ref: overwrite101184 +Node: Transforms102394 +Node: Frames and pictures104185 +Ref: envelope105326 +Ref: size106409 +Ref: unitsize107396 +Ref: shipout108456 +Ref: filltype110789 +Ref: add113771 +Ref: add about114717 +Ref: tex117662 +Node: Files118536 +Ref: cd119501 +Ref: scroll123970 +Node: Variable initializers127043 +Node: Structures129338 +Node: Operators136790 +Node: Arithmetic & logical137104 +Node: Self & prefix operators139001 +Node: User-defined operators139789 +Node: Implicit scaling140700 +Node: Functions141263 +Ref: stack overflow144016 +Node: Default arguments144580 +Node: Named arguments145319 +Node: Rest arguments147481 +Node: Mathematical functions150291 +Node: Arrays154896 +Ref: sort161956 +Ref: tridiagonal164247 +Ref: solve165475 +Node: Slices169672 +Node: Casts173565 +Node: Import175531 +Node: Static180761 +Node: LaTeX usage183657 +Node: Base modules189102 +Node: plain191602 +Node: simplex192254 +Node: math192527 +Node: interpolate193626 +Node: geometry193905 +Node: trembling194509 +Node: stats194870 +Node: patterns195130 +Node: markers195366 +Node: tree197149 +Node: binarytree197337 +Node: drawtree197926 +Node: syzygy198130 +Node: feynman198404 +Node: roundedpath198679 +Node: animation198962 +Ref: animate199379 +Node: embed200518 +Node: slide202307 +Node: MetaPost202647 +Node: unicode203363 +Node: latin1204251 +Node: babel204619 +Node: labelpath204848 +Node: labelpath3205668 +Node: annotate205979 +Node: CAD206450 +Node: graph206760 +Ref: ticks213599 +Ref: pathmarkers226750 +Ref: marker227215 +Ref: markuniform227566 +Ref: errorbars229357 +Ref: automatic scaling233413 +Node: palette244059 +Ref: images244177 +Ref: image248348 +Ref: logimage248826 +Ref: penimage249632 +Node: three250076 +Ref: PostScript3D272559 +Node: obj274251 +Node: graph3274503 +Ref: GaussianSurface279628 +Node: grid3280713 +Node: solids281453 +Node: tube282401 +Node: flowchart284636 +Node: contour289135 +Node: contour3294166 +Node: slopefield294473 +Node: ode295910 +Node: Options296170 +Ref: configuration file301712 +Ref: settings301712 +Ref: convert302807 +Node: Interactive mode305596 +Ref: history307220 +Node: GUI308525 +Node: GUI Installation309028 +Node: GUI Usage310166 +Node: PostScript to Asymptote311069 +Node: Help312212 +Node: Debugger313941 +Node: Credits315726 +Node: Index316639 End Tag Table diff --git a/Build/source/utils/asymptote/drawgroup.h b/Build/source/utils/asymptote/drawgroup.h index 4e2339387f5..50aa7610aac 100644 --- a/Build/source/utils/asymptote/drawgroup.h +++ b/Build/source/utils/asymptote/drawgroup.h @@ -13,12 +13,19 @@ namespace camp { class drawBegin : public drawElement { + string name; public: - drawBegin() {} + drawBegin(string name="") : name(name) {} virtual ~drawBegin() {} bool begingroup() {return true;} + + bool write(prcfile *out) { + out->begingroup(name.c_str()); + return true; + } + }; class drawEnd : public drawElement { @@ -28,6 +35,12 @@ public: virtual ~drawEnd() {} bool endgroup() {return true;} + + bool write(prcfile *out) { + out->endgroup(); + return true; + } + }; } diff --git a/Build/source/utils/asymptote/drawpath3.cc b/Build/source/utils/asymptote/drawpath3.cc index 75c9181acd3..2586f4b9472 100644 --- a/Build/source/utils/asymptote/drawpath3.cc +++ b/Build/source/utils/asymptote/drawpath3.cc @@ -10,13 +10,6 @@ namespace camp { using vm::array; -inline void store(Triple& control, const triple& v) -{ - control[0]=v.getx(); - control[1]=v.gety(); - control[2]=v.getz(); -} - bool drawPath3::write(prcfile *out) { Int n=g.length(); @@ -27,7 +20,7 @@ bool drawPath3::write(prcfile *out) controls=new Triple[n+1]; for(Int i=0; i <= n; ++i) store(controls[i],g.point(i)); - out->add(new PRCline(out,n+1,controls,color,scale3D)); + out->add(new PRCline(out,n+1,controls,color,scale3D,name.c_str())); } else { int m=3*n+1; controls=new Triple[m]; @@ -41,7 +34,7 @@ bool drawPath3::write(prcfile *out) } store(controls[++k],g.precontrol((Int) n)); store(controls[++k],g.point((Int) n)); - out->add(new PRCBezierCurve(out,3,m,controls,color)); + out->add(new PRCBezierCurve(out,3,m,controls,color,name)); } return true; } diff --git a/Build/source/utils/asymptote/drawpath3.h b/Build/source/utils/asymptote/drawpath3.h index 7e27f196d31..342019f5abe 100644 --- a/Build/source/utils/asymptote/drawpath3.h +++ b/Build/source/utils/asymptote/drawpath3.h @@ -20,14 +20,17 @@ protected: bool invisible; triple Min,Max; Triple *controls; + string name; public: - drawPath3(path3 g, const pen&p) : + drawPath3(path3 g, const pen&p, const string& name) : g(g), straight(g.piecewisestraight()), color(rgba(p)), - invisible(p.invisible()), Min(g.min()), Max(g.max()), controls(NULL) {} + invisible(p.invisible()), Min(g.min()), Max(g.max()), controls(NULL), + name(name) {} drawPath3(const vm::array& t, const drawPath3 *s) : g(camp::transformed(t,s->g)), straight(s->straight), color(s->color), - invisible(s->invisible), Min(g.min()), Max(g.max()), controls(NULL) {} + invisible(s->invisible), Min(g.min()), Max(g.max()), controls(NULL), + name(s->name) {} virtual ~drawPath3() { if(controls) delete controls; diff --git a/Build/source/utils/asymptote/drawsurface.cc b/Build/source/utils/asymptote/drawsurface.cc index 1eee043df7c..2c8865ef2f2 100644 --- a/Build/source/utils/asymptote/drawsurface.cc +++ b/Build/source/utils/asymptote/drawsurface.cc @@ -5,13 +5,26 @@ *****/ #include "drawsurface.h" +#include "arrayop.h" namespace camp { const double pixel=1.0; // Adaptive rendering constant. +const triple drawSurface::zero; using vm::array; -triple drawSurface::c3[]; + +#ifdef HAVE_LIBGL +void storecolor(GLfloat *colors, int i, const vm::array &pens, int j) +{ + pen p=vm::read<camp::pen>(pens,j); + p.torgb(); + colors[i]=p.red(); + colors[i+1]=p.green(); + colors[i+2]=p.blue(); + colors[i+3]=p.opacity(); +} +#endif inline void initMatrix(GLfloat *v, double x, double ymin, double zmin, double ymax, double zmax) @@ -36,31 +49,56 @@ inline void initMatrix(GLfloat *v, double x, double ymin, double zmin, void drawSurface::bounds(bbox3& b) { - static double c1[16]; - - for(int i=0; i < 16; ++i) - c1[i]=controls[i][0]; - double c0=c1[0]; - double fuzz=sqrtFuzz*norm(c1,16); - double xmin=bound(c1,min,b.empty ? c0 : min(c0,b.left),fuzz); - double xmax=bound(c1,max,b.empty ? c0 : max(c0,b.right),fuzz); + double x,y,z; + double X,Y,Z; + + if(straight) { + double *v=vertices[0]; + x=v[0]; + y=v[1]; + z=v[2]; + X=x; + Y=y; + Z=z; + for(size_t i=1; i < 4; ++i) { + double *v=vertices[i]; + double vx=v[0]; + x=min(x,vx); + X=max(X,vx); + double vy=v[1]; + y=min(y,vy); + Y=max(Y,vy); + double vz=v[2]; + z=min(z,vz); + Z=max(Z,vz); + } + } else { + static double c1[16]; + + for(int i=0; i < 16; ++i) + c1[i]=controls[i][0]; + double c0=c1[0]; + double fuzz=sqrtFuzz*run::norm(c1,16); + x=bound(c1,min,b.empty ? c0 : min(c0,b.left),fuzz); + X=bound(c1,max,b.empty ? c0 : max(c0,b.right),fuzz); - for(int i=0; i < 16; ++i) - c1[i]=controls[i][1]; - c0=c1[0]; - fuzz=sqrtFuzz*norm(c1,16); - double ymin=bound(c1,min,b.empty ? c0 : min(c0,b.bottom),fuzz); - double ymax=bound(c1,max,b.empty ? c0 : max(c0,b.top),fuzz); + for(int i=0; i < 16; ++i) + c1[i]=controls[i][1]; + c0=c1[0]; + fuzz=sqrtFuzz*run::norm(c1,16); + y=bound(c1,min,b.empty ? c0 : min(c0,b.bottom),fuzz); + Y=bound(c1,max,b.empty ? c0 : max(c0,b.top),fuzz); - for(int i=0; i < 16; ++i) - c1[i]=controls[i][2]; - c0=c1[0]; - fuzz=sqrtFuzz*norm(c1,16); - double zmin=bound(c1,min,b.empty ? c0 : min(c0,b.lower),fuzz); - double zmax=bound(c1,max,b.empty ? c0 : max(c0,b.upper),fuzz); + for(int i=0; i < 16; ++i) + c1[i]=controls[i][2]; + c0=c1[0]; + fuzz=sqrtFuzz*run::norm(c1,16); + z=bound(c1,min,b.empty ? c0 : min(c0,b.lower),fuzz); + Z=bound(c1,max,b.empty ? c0 : max(c0,b.upper),fuzz); + } - Min=triple(xmin,ymin,zmin); - Max=triple(xmax,ymax,zmax); + Min=triple(x,y,z); + Max=triple(X,Y,Z); b.add(Min); b.add(Max); @@ -68,19 +106,39 @@ void drawSurface::bounds(bbox3& b) void drawSurface::ratio(pair &b, double (*m)(double, double), bool &first) { - for(int i=0; i < 16; ++i) { - double *ci=controls[i]; - c3[i]=triple(ci[0],ci[1],ci[2]); - } + if(straight) { + if(first) { + first=false; + double *ci=vertices[0]; + triple v=triple(ci[0],ci[1],ci[2]); + b=pair(xratio(v),yratio(v)); + } - if(first) { - triple v=c3[0]; - b=pair(xratio(v),yratio(v)); - first=false; - } + double x=b.getx(); + double y=b.gety(); + for(size_t i=0; i < 4; ++i) { + double *ci=vertices[i]; + triple v=triple(ci[0],ci[1],ci[2]); + x=m(x,xratio(v)); + y=m(y,yratio(v)); + } + b=pair(x,y); + } else { + static triple c3[16]; + for(int i=0; i < 16; ++i) { + double *ci=controls[i]; + c3[i]=triple(ci[0],ci[1],ci[2]); + } - double fuzz=sqrtFuzz*norm(c3,16); - b=pair(bound(c3,m,xratio,b.getx(),fuzz),bound(c3,m,yratio,b.gety(),fuzz)); + if(first) { + triple v=c3[0]; + b=pair(xratio(v),yratio(v)); + first=false; + } + + double fuzz=sqrtFuzz*run::norm(c3,16); + b=pair(bound(c3,m,xratio,b.getx(),fuzz),bound(c3,m,yratio,b.gety(),fuzz)); + } } bool drawSurface::write(prcfile *out) @@ -89,7 +147,11 @@ bool drawSurface::write(prcfile *out) return true; PRCMaterial m(ambient,diffuse,emissive,specular,opacity,PRCshininess); - out->add(new PRCBezierSurface(out,3,3,4,4,controls,m,granularity)); + + if(straight) + out->add(new PRCBezierSurface(out,1,1,2,2,vertices,m,granularity,name)); + else + out->add(new PRCBezierSurface(out,3,3,4,4,controls,m,granularity,name)); return true; } @@ -121,30 +183,19 @@ inline triple displacement(const Triple& z0, const Triple& c0, void drawSurface::displacement() { #ifdef HAVE_LIBGL - initMatrix(v1,Min.getx(),Min.gety(),Min.getz(),Max.gety(),Max.getz()); - initMatrix(v2,Max.getx(),Min.gety(),Min.getz(),Max.gety(),Max.getz()); - - for(int i=0; i < 16; ++i) - store(c+3*i,controls[i]); - - static const triple zero; - havenormal=normal != zero; - havetransparency=havecolors ? colors[3]+colors[7]+colors[11]+colors[15] < 4.0 - : diffuse.A < 1.0; - if(havenormal) { - store(Normal,normal); + if(normal != zero) { d=zero; if(!straight) { - for(int i=1; i < 16; ++i) + for(size_t i=1; i < 16; ++i) d=camp::maxabs(d,camp::displacement2(controls[i],controls[0],normal)); dperp=d; - for(int i=0; i < 4; ++i) + for(size_t i=0; i < 4; ++i) d=camp::maxabs(d,camp::displacement(controls[4*i],controls[4*i+1], controls[4*i+2],controls[4*i+3])); - for(int i=0; i < 4; ++i) + for(size_t i=0; i < 4; ++i) d=camp::maxabs(d,camp::displacement(controls[i],controls[i+4], controls[i+8],controls[i+12])); } @@ -170,9 +221,16 @@ void drawSurface::render(GLUnurbs *nurb, double size2, double perspective, bool transparent) { #ifdef HAVE_LIBGL - if(invisible || (havetransparency ^ transparent)) return; + if(invisible || ((colors ? colors[3]+colors[7]+colors[11]+colors[15] < 4.0 + : diffuse.A < 1.0) ^ transparent)) return; static GLfloat v[16]; + static GLfloat v1[16]; + static GLfloat v2[16]; + static GLfloat Normal[3]; + + initMatrix(v1,Min.getx(),Min.gety(),Min.getz(),Max.gety(),Max.getz()); + initMatrix(v2,Max.getx(),Min.gety(),Min.getz(),Max.gety(),Max.getz()); glPushMatrix(); glMultMatrixf(v1); @@ -218,7 +276,7 @@ void drawSurface::render(GLUnurbs *nurb, double size2, bool ambientdiffuse=true; bool emission=true; - if(havecolors) { + if(colors) { glEnable(GL_COLOR_MATERIAL); if(lighton) { glColorMaterial(GL_FRONT_AND_BACK,GL_AMBIENT_AND_DIFFUSE); @@ -250,44 +308,56 @@ void drawSurface::render(GLUnurbs *nurb, double size2, triple size3=triple(s*(Max.getx()-Min.getx()),s*(Max.gety()-Min.gety()), Max.getz()-Min.getz()); + bool havenormal=normal != zero; if(!havenormal || (!straight && (fraction(d,size3)*size2 >= pixel || granularity == 0))) { if(lighton) { if(havenormal && fraction(dperp,size3)*size2 <= 0.1) { + store(Normal,normal); glNormal3fv(Normal); gluNurbsCallback(nurb,GLU_NURBS_NORMAL,NULL); } else gluNurbsCallback(nurb,GLU_NURBS_NORMAL,(_GLUfuncptr) glNormal3fv); } + static GLfloat Controls[48]; + for(size_t i=0; i < 16; ++i) + store(Controls+3*i,controls[i]); + static GLfloat bezier[]={0.0,0.0,0.0,0.0,1.0,1.0,1.0,1.0}; gluBeginSurface(nurb); - gluNurbsSurface(nurb,8,bezier,8,bezier,12,3,c,4,4,GL_MAP2_VERTEX_3); - if(havecolors) { + gluNurbsSurface(nurb,8,bezier,8,bezier,12,3,Controls,4,4,GL_MAP2_VERTEX_3); + if(colors) { static GLfloat linear[]={0.0,0.0,1.0,1.0}; gluNurbsSurface(nurb,4,linear,4,linear,8,4,colors,2,2,GL_MAP2_COLOR_4); } gluEndSurface(nurb); } else { + GLfloat Vertices[12]; + for(size_t i=0; i < 4; ++i) + store(Vertices+3*i,vertices[i]); + + store(Normal,normal); + glBegin(GL_QUADS); if(lighton) glNormal3fv(Normal); - if(havecolors) + if(colors) glColor4fv(colors); - glVertex3fv(c); - if(havecolors) + glVertex3fv(Vertices); + if(colors) glColor4fv(colors+8); - glVertex3fv(c+36); - if(havecolors) + glVertex3fv(Vertices+6); + if(colors) glColor4fv(colors+12); - glVertex3fv(c+45); - if(havecolors) + glVertex3fv(Vertices+9); + if(colors) glColor4fv(colors+4); - glVertex3fv(c+9); + glVertex3fv(Vertices+3); glEnd(); } - if(havecolors) + if(colors) glDisable(GL_COLOR_MATERIAL); #endif } @@ -297,22 +367,226 @@ drawElement *drawSurface::transformed(const array& t) return new drawSurface(t,this); } -double norm(double *a, size_t n) +bool drawNurbs::write(prcfile *out) +{ + if(invisible) + return true; + + PRCMaterial m(ambient,diffuse,emissive,specular,opacity,PRCshininess); + out->add(new PRCsurface(out,udegree,vdegree,nu,nv,controls,uknots,vknots, + m,scale3D,weights != NULL,weights,granularity, + name.c_str())); + + return true; +} + +// Approximate bounds by bounding box of control polyhedron. +void drawNurbs::bounds(bbox3& b) +{ + double x,y,z; + double X,Y,Z; + size_t n=nu*nv; + double *v=controls[0]; + if(weights == NULL) { + x=v[0]; + y=v[1]; + z=v[2]; + X=x; + Y=y; + Z=z; + for(size_t i=1; i < n; ++i) { + double *v=controls[i]; + double vx=v[0]; + x=min(x,vx); + X=max(X,vx); + double vy=v[1]; + y=min(y,vy); + Y=max(Y,vy); + double vz=v[2]; + z=min(z,vz); + Z=max(Z,vz); + } + } else { + double w=weights[0]; + x=v[0]/w; + y=v[1]/w; + z=v[2]/w; + X=x; + Y=y; + Z=z; + for(size_t i=1; i < n; ++i) { + double *v=controls[i]; + double w=weights[i]; + double vx=v[0]/w; + x=min(x,vx); + X=max(X,vx); + double vy=v[1]/w; + y=min(y,vy); + Y=max(Y,vy); + double vz=v[2]/w; + z=min(z,vz); + Z=max(Z,vz); + } + } + Min=triple(x,y,z); + Max=triple(X,Y,Z); + b.add(Min); + b.add(Max); +} + +drawElement *drawNurbs::transformed(const array& t) +{ + return new drawNurbs(t,this); +} + +void drawNurbs::ratio(pair &b, double (*m)(double, double), bool &first) +{ + size_t n=nu*nv; + if(first) { + first=false; + double *ci=controls[0]; + triple v=triple(ci[0],ci[1],ci[2]); + b=pair(xratio(v),yratio(v)); + } + + double x=b.getx(); + double y=b.gety(); + for(size_t i=0; i < n; ++i) { + double *ci=controls[i]; + triple v=triple(ci[0],ci[1],ci[2]); + x=m(x,xratio(v)); + y=m(y,yratio(v)); + } + b=pair(x,y); +} + +void drawNurbs::displacement() { - if(n == 0) return 0.0; - double M=fabs(a[0]); - for(size_t i=1; i < n; ++i) - M=max(M,fabs(a[i])); - return M; +#ifdef HAVE_LIBGL + size_t n=nu*nv; + size_t stride=weights == NULL ? 3 : 4; + for(size_t i=0; i < n; ++i) + store(Controls+stride*i,controls[i]); + + if(weights != NULL) + for(size_t i=0; i < n; ++i) + Controls[4*i+3]=weights[i]; + + size_t nuknotsm1=udegree+nu; + size_t nvknotsm1=vdegree+nv; + for(size_t i=0; i <= nuknotsm1; ++i) + uKnots[i]=uknots[i]; + for(size_t i=0; i <= nvknotsm1; ++i) + vKnots[i]=vknots[i]; +#endif } -double norm(triple *a, size_t n) +void drawNurbs::render(GLUnurbs *nurb, double size2, + const triple& Min, const triple& Max, + double perspective, bool transparent) { - if(n == 0) return 0.0; - double M=a[0].abs2(); - for(size_t i=1; i < n; ++i) - M=max(M,a[i].abs2()); - return sqrt(M); +#ifdef HAVE_LIBGL + if(invisible || ((colors ? colors[3]+colors[7]+colors[11]+colors[15] < 4.0 + : diffuse.A < 1.0) ^ transparent)) return; + + static GLfloat v[16]; + static GLfloat v1[16]; + static GLfloat v2[16]; + + initMatrix(v1,Min.getx(),Min.gety(),Min.getz(),Max.gety(),Max.getz()); + initMatrix(v2,Max.getx(),Min.gety(),Min.getz(),Max.gety(),Max.getz()); + + glPushMatrix(); + glMultMatrixf(v1); + glGetFloatv(GL_MODELVIEW_MATRIX,v); + glPopMatrix(); + + bbox3 B(v[0],v[1],v[2]); + B.addnonempty(v[4],v[5],v[6]); + B.addnonempty(v[8],v[9],v[10]); + B.addnonempty(v[12],v[13],v[14]); + + glPushMatrix(); + glMultMatrixf(v2); + glGetFloatv(GL_MODELVIEW_MATRIX,v); + glPopMatrix(); + + B.addnonempty(v[0],v[1],v[2]); + B.addnonempty(v[4],v[5],v[6]); + B.addnonempty(v[8],v[9],v[10]); + B.addnonempty(v[12],v[13],v[14]); + + triple M=B.Max(); + triple m=B.Min(); + + double s; + if(perspective) { + double f=m.getz()*perspective; + double F=M.getz()*perspective; + s=max(f,F); + if(M.getx() < min(f*Min.getx(),F*Min.getx()) || + m.getx() > max(f*Max.getx(),F*Max.getx()) || + M.gety() < min(f*Min.gety(),F*Min.gety()) || + m.gety() > max(f*Max.gety(),F*Max.gety()) || + M.getz() < Min.getz() || + m.getz() > Max.getz()) return; + } else { + s=1.0; + if(M.getx() < Min.getx() || m.getx() > Max.getx() || + M.gety() < Min.gety() || m.gety() > Max.gety() || + M.getz() < Min.getz() || m.getz() > Max.getz()) return; + } + + bool ambientdiffuse=true; + bool emission=true; + + if(colors) { + glEnable(GL_COLOR_MATERIAL); + if(lighton) { + glColorMaterial(GL_FRONT_AND_BACK,GL_AMBIENT_AND_DIFFUSE); + ambientdiffuse=false; + } else { + glColorMaterial(GL_FRONT_AND_BACK,GL_EMISSION); + emission=false; + } + } + + if(ambientdiffuse) { + GLfloat Diffuse[]={diffuse.R,diffuse.G,diffuse.B,diffuse.A}; + glMaterialfv(GL_FRONT_AND_BACK,GL_DIFFUSE,Diffuse); + + GLfloat Ambient[]={ambient.R,ambient.G,ambient.B,ambient.A}; + glMaterialfv(GL_FRONT_AND_BACK,GL_AMBIENT,Ambient); + } + + if(emission) { + GLfloat Emissive[]={emissive.R,emissive.G,emissive.B,emissive.A}; + glMaterialfv(GL_FRONT_AND_BACK,GL_EMISSION,Emissive); + } + + GLfloat Specular[]={specular.R,specular.G,specular.B,specular.A}; + glMaterialfv(GL_FRONT_AND_BACK,GL_SPECULAR,Specular); + + glMaterialf(GL_FRONT_AND_BACK,GL_SHININESS,128.0*shininess); + + gluNurbsCallback(nurb,GLU_NURBS_NORMAL,(_GLUfuncptr) glNormal3fv); + gluBeginSurface(nurb); + int uorder=udegree+1; + int vorder=vdegree+1; + size_t stride=weights == NULL ? 3 : 4; + gluNurbsSurface(nurb,uorder+nu,uKnots,vorder+nv,vKnots,stride*nv,stride, + Controls,uorder,vorder, + weights == NULL ? GL_MAP2_VERTEX_3 : GL_MAP2_VERTEX_4); + if(colors) { + static GLfloat linear[]={0.0,0.0,1.0,1.0}; + gluNurbsSurface(nurb,4,linear,4,linear,8,4,colors,2,2,GL_MAP2_COLOR_4); + } + + gluEndSurface(nurb); + + if(colors) + glDisable(GL_COLOR_MATERIAL); +#endif } } //namespace camp diff --git a/Build/source/utils/asymptote/drawsurface.h b/Build/source/utils/asymptote/drawsurface.h index 9c7f25342b9..16d369cb545 100644 --- a/Build/source/utils/asymptote/drawsurface.h +++ b/Build/source/utils/asymptote/drawsurface.h @@ -12,11 +12,20 @@ #include "arrayop.h" #include "path3.h" +namespace run { +extern double *copyArrayC(const array *a, size_t dim); +} + namespace camp { +#ifdef HAVE_LIBGL +void storecolor(GLfloat *colors, int i, const vm::array &pens, int j); +#endif + class drawSurface : public drawElement { protected: - Triple controls[16]; + Triple *controls; + Triple vertices[4]; bool straight; RGBAColour diffuse; RGBAColour ambient; @@ -27,47 +36,56 @@ protected: double PRCshininess; double granularity; triple normal; + bool invisible; bool lighton; + string name; - bool invisible; triple Min,Max; - static triple c3[16]; - GLfloat *colors; - bool havecolors; #ifdef HAVE_LIBGL - GLfloat c[48]; + GLfloat *colors; triple d; // Maximum deviation of surface from a quadrilateral. triple dperp; - GLfloat v1[16]; - GLfloat v2[16]; - GLfloat Normal[3]; - bool havenormal; - bool havetransparency; #endif - void storecolor(int i, const vm::array &pens, int j) { - pen p=vm::read<camp::pen>(pens,j); - p.torgb(); - colors[i]=p.red(); - colors[i+1]=p.green(); - colors[i+2]=p.blue(); - colors[i+3]=p.opacity(); - } - + static const triple zero; + public: drawSurface(const vm::array& g, bool straight, const vm::array&p, double opacity, double shininess, double PRCshininess, - double granularity, triple normal, bool lighton, - const vm::array &pens) : + double granularity, triple normal, const vm::array &pens, + bool lighton, const string& name) : straight(straight), opacity(opacity), shininess(shininess), PRCshininess(PRCshininess), granularity(granularity), normal(unit(normal)), - lighton(lighton) { + lighton(lighton), name(name) { string wrongsize= "Bezier surface patch requires 4x4 array of triples and array of 4 pens"; if(checkArray(&g) != 4 || checkArray(&p) != 4) reportError(wrongsize); + bool havenormal=normal != zero; + + vm::array *g0=vm::read<vm::array*>(g,0); + vm::array *g3=vm::read<vm::array*>(g,3); + if(checkArray(g0) != 4 || checkArray(g3) != 4) + reportError(wrongsize); + store(vertices[0],vm::read<triple>(g0,0)); + store(vertices[1],vm::read<triple>(g0,3)); + store(vertices[2],vm::read<triple>(g3,0)); + store(vertices[3],vm::read<triple>(g3,3)); + + if(!havenormal || !straight) { + size_t k=0; + controls=new Triple[16]; + for(size_t i=0; i < 4; ++i) { + vm::array *gi=vm::read<vm::array*>(g,i); + if(checkArray(gi) != 4) + reportError(wrongsize); + for(size_t j=0; j < 4; ++j) + store(controls[k++],vm::read<triple>(gi,j)); + } + } else controls=NULL; + pen surfacepen=vm::read<camp::pen>(p,0); invisible=surfacepen.invisible(); @@ -78,72 +96,262 @@ public: #ifdef HAVE_LIBGL int size=checkArray(&pens); - havecolors=size > 0; - if(havecolors) { - colors=new GLfloat[16]; + if(size > 0) { if(size != 4) reportError(wrongsize); - storecolor(0,pens,0); - storecolor(8,pens,1); - storecolor(12,pens,2); - storecolor(4,pens,3); + colors=new GLfloat[16]; + storecolor(colors,0,pens,0); + storecolor(colors,8,pens,1); + storecolor(colors,12,pens,2); + storecolor(colors,4,pens,3); + } else colors=NULL; +#endif + } + + drawSurface(const vm::array& t, const drawSurface *s) : + straight(s->straight), diffuse(s->diffuse), ambient(s->ambient), + emissive(s->emissive), specular(s->specular), opacity(s->opacity), + shininess(s->shininess), PRCshininess(s->PRCshininess), + granularity(s->granularity), invisible(s->invisible), + lighton(s->lighton), name(s->name) { + + for(size_t i=0; i < 4; ++i) { + const double *c=s->vertices[i]; + store(vertices[i],run::operator *(t,triple(c[0],c[1],c[2]))); } + + if(s->controls) { + controls=new Triple[16]; + for(size_t i=0; i < 16; ++i) { + const double *c=s->controls[i]; + store(controls[i],run::operator *(t,triple(c[0],c[1],c[2]))); + } + } else controls=NULL; + + normal=run::multshiftless(t,s->normal); + +#ifdef HAVE_LIBGL + if(s->colors) { + colors=new GLfloat[16]; + for(int i=0; i < 16; ++i) + colors[i]=s->colors[i]; + } else colors=NULL; #endif + } + + bool is3D() {return true;} + + void bounds(bbox3& b); + + void ratio(pair &b, double (*m)(double, double), bool &first); + + virtual ~drawSurface() { + if(controls) + delete[] controls; + +#ifdef HAVE_LIBGL + if(colors) + delete[] colors; +#endif + } + + bool write(prcfile *out); + + void displacement(); + void render(GLUnurbs *nurb, double, const triple& Min, const triple& Max, + double perspective, bool transparent); + + drawElement *transformed(const vm::array& t); +}; + +class drawNurbs : public drawElement { +protected: + size_t udegree,vdegree; + size_t nu,nv; + Triple *controls; + double *weights; + double *uknots, *vknots; + RGBAColour diffuse; + RGBAColour ambient; + RGBAColour emissive; + RGBAColour specular; + double opacity; + double shininess; + double PRCshininess; + double granularity; + triple normal; + bool invisible; + bool lighton; + string name; + + triple Min,Max; + +#ifdef HAVE_LIBGL + GLfloat *colors; + GLfloat *Controls; + GLfloat *uKnots; + GLfloat *vKnots; +#endif + +public: + drawNurbs(const vm::array& g, const vm::array* uknot, const vm::array* vknot, + const vm::array* weight, const vm::array&p, double opacity, + double shininess, double PRCshininess, double granularity, + const vm::array &pens, bool lighton, const string& name) : + opacity(opacity), shininess(shininess), PRCshininess(PRCshininess), + granularity(granularity), lighton(lighton), name(name) { + size_t weightsize=checkArray(weight); + + string wrongsize="Inconsistent NURBS data"; + nu=checkArray(&g); + + if(nu == 0 || (weightsize != 0 && weightsize != nu) || checkArray(&p) != 4) + reportError(wrongsize); + + vm::array *g0=vm::read<vm::array*>(g,0); + nv=checkArray(g0); + + size_t n=nu*nv; + controls=new Triple[n]; size_t k=0; - for(size_t i=0; i < 4; ++i) { + for(size_t i=0; i < nu; ++i) { vm::array *gi=vm::read<vm::array*>(g,i); - size_t gisize=checkArray(gi); - if(gisize != 4) + if(checkArray(gi) != nv) reportError(wrongsize); - for(size_t j=0; j < 4; ++j) { - triple v=vm::read<triple>(gi,j); - controls[k][0]=v.getx(); - controls[k][1]=v.gety(); - controls[k][2]=v.getz(); - ++k; - } + for(size_t j=0; j < nv; ++j) + store(controls[k++],vm::read<triple>(gi,j)); } + + if(weightsize > 0) { + size_t k=0; + weights=new double[n]; + for(size_t i=0; i < nu; ++i) { + vm::array *weighti=vm::read<vm::array*>(weight,i); + if(checkArray(weighti) != nv) + reportError(wrongsize); + for(size_t j=0; j < nv; ++j) { + weights[k]=vm::read<double>(weighti,j); + ++k; + } + } + } else weights=NULL; + + size_t nuknots=checkArray(uknot); + size_t nvknots=checkArray(vknot); + + if(nuknots <= nu+1 || nuknots > 2*nu || nvknots <= nv+1 || nvknots > 2*nv) + reportError(wrongsize); + + udegree=nuknots-nu-1; + vdegree=nvknots-nv-1; + + uknots=run::copyArrayC(uknot,0); + vknots=run::copyArrayC(vknot,0); + + pen surfacepen=vm::read<camp::pen>(p,0); + invisible=surfacepen.invisible(); + + diffuse=rgba(surfacepen); + ambient=rgba(vm::read<camp::pen>(p,1)); + emissive=rgba(vm::read<camp::pen>(p,2)); + specular=rgba(vm::read<camp::pen>(p,3)); +#ifdef HAVE_LIBGL + uKnots=new GLfloat[nuknots]; + vKnots=new GLfloat[nvknots]; + Controls=new GLfloat[(weights ? 4 : 3)*n]; + + int size=checkArray(&pens); + if(size > 0) { + colors=new GLfloat[16]; + if(size != 4) reportError(wrongsize); + storecolor(colors,0,pens,0); + storecolor(colors,8,pens,1); + storecolor(colors,12,pens,2); + storecolor(colors,4,pens,3); + } else colors=NULL; +#endif } - drawSurface(const vm::array& t, const drawSurface *s) : - straight(s->straight), diffuse(s->diffuse), ambient(s->ambient), + drawNurbs(const vm::array& t, const drawNurbs *s) : + udegree(s->udegree), vdegree(s->vdegree), nu(s->nu), nv(s->nv), + diffuse(s->diffuse), ambient(s->ambient), emissive(s->emissive), specular(s->specular), opacity(s->opacity), shininess(s->shininess), PRCshininess(s->PRCshininess), - granularity(s->granularity), lighton(s->lighton), - invisible(s->invisible), colors(s->colors), havecolors(s->havecolors) { - for(size_t i=0; i < 16; ++i) { + granularity(s->granularity), invisible(s->invisible), lighton(s->lighton), + name(s->name) { + + size_t n=nu*nv; + controls=new double[n][3]; + + for(size_t i=0; i < n; ++i) { const double *c=s->controls[i]; triple v=run::operator *(t,triple(c[0],c[1],c[2])); controls[i][0]=v.getx(); controls[i][1]=v.gety(); controls[i][2]=v.getz(); } - normal=run::multshiftless(t,s->normal); + + if(s->weights) { + weights=new double[n]; + for(size_t i=0; i < n; ++i) + weights[i]=s->weights[i]; + } else weights=NULL; + + size_t nuknots=udegree+nu+1; + size_t nvknots=vdegree+nv+1; + uknots=new double[nuknots]; + vknots=new double[nvknots]; + + for(size_t i=0; i < nuknots; ++i) + uknots[i]=s->uknots[i]; + + for(size_t i=0; i < nvknots; ++i) + vknots[i]=s->vknots[i]; + +#ifdef HAVE_LIBGL + uKnots=new GLfloat[nuknots]; + vKnots=new GLfloat[nvknots]; + Controls=new GLfloat[(weights ? 4 : 3)*n]; + + if(s->colors) { + colors=new GLfloat[16]; + for(int i=0; i < 16; ++i) + colors[i]=s->colors[i]; + } else colors=NULL; +#endif } bool is3D() {return true;} void bounds(bbox3& b); - void ratio(pair &b, double (*m)(double, double), bool &first); - - virtual ~drawSurface() { - if(havecolors) - delete[] colors; + virtual ~drawNurbs() { + delete[] vknots; + delete[] uknots; + if(weights) + delete[] weights; + delete[] controls; +#ifdef HAVE_LIBGL + if(colors) + delete[] colors; + delete[] Controls; + delete[] vKnots; + delete[] uKnots; +#endif } bool write(prcfile *out); void displacement(); - void render(GLUnurbs *nurb, double, const triple& Min, const triple& Max, + void ratio(pair &b, double (*m)(double, double), bool &first); + + void render(GLUnurbs *nurb, double size2, + const triple& Min, const triple& Max, double perspective, bool transparent); - + drawElement *transformed(const vm::array& t); }; -double norm(double *a, size_t n); -double norm(triple *a, size_t n); - } #endif diff --git a/Build/source/utils/asymptote/examples/Klein.asy b/Build/source/utils/asymptote/examples/Klein.asy index bba99023f7d..06ef4271660 100644 --- a/Build/source/utils/asymptote/examples/Klein.asy +++ b/Build/source/utils/asymptote/examples/Klein.asy @@ -34,8 +34,8 @@ z=(2-\cos u)\sin v.\cr}$"; real h=0.0125; -draw(labelsurface(xscale(-0.38)*yscale(-0.18)*lo,s,0,1.7,h)); -draw(labelsurface(xscale(0.26)*yscale(0.1)*rotate(90)*hi,s,4.9,1.4,h)); +draw(surface(xscale(-0.38)*yscale(-0.18)*lo,s,0,1.7,h)); +draw(surface(xscale(0.26)*yscale(0.1)*rotate(90)*hi,s,4.9,1.4,h)); draw(s.uequals(0),blue+dashed); draw(s.uequals(pi),blue+dashed); diff --git a/Build/source/utils/asymptote/examples/NURBSsurface.asy b/Build/source/utils/asymptote/examples/NURBSsurface.asy new file mode 100644 index 00000000000..3fcea79dbbd --- /dev/null +++ b/Build/source/utils/asymptote/examples/NURBSsurface.asy @@ -0,0 +1,61 @@ +import three; + +size(10cm); + +currentprojection=perspective(40,40,50); + +// Nonrational surface: +// udegree=3, vdegree=3, nu=5, nv=6; +real[] uknot={0,0,0,0,0.5,1,1,1,1}; +real[] vknot={0,0,0,0,0.4,0.6,1,1,1,1}; + +triple[][] P={{ + (-31.2061,12.001,6.45082), + (-31.3952,14.7353,6.53707), + (-31.5909,21.277,6.70051), + (-31.4284,25.4933,6.76745), + (-31.5413,30.3485,6.68777), + (-31.4896,32.2839,6.58385), + },{ + (-28.279,12.001,7.89625), + (-28.4187,14.7353,8.00954), + (-28.5633,21.277,8.22422), + (-28.4433,25.4933,8.31214), + (-28.5266,30.3485,8.20749), + (-28.4885,32.2839,8.07099), + },{ + (-20,12.001,10.0379), + (-20,14.7353,10.2001), + (-20,21.277,10.5076), + (-20,25.4933,10.6335), + (-20,30.3485,10.4836), + (-20,32.2839,10.2881), + },{ + (-11.721,12.001,7.84024), + (-11.5813,14.7353,7.95269), + (-11.4367,21.277,8.16575), + (-11.5567,25.4933,8.25302), + (-11.4734,30.3485,8.14915), + (-11.5115,32.2839,8.01367), + },{ + (-8.79391,12.001,6.39481), + (-8.60483,14.7353,6.48022), + (-8.40905,21.277,6.64204), + (-8.57158,25.4933,6.70832), + (-8.45874,30.3485,6.62943), + (-8.51041,32.2839,6.52653) + }}; + +draw(P,uknot,vknot,new pen[] {red,green,blue,magenta}); + +// Rational Bezier patch: +// udegree=3, vdegree=3, nu=4, nv=4; +real[] uknot={0,0,0,0,1,1,1,1}; +real[] vknot={0,0,0,0,1,1,1,1}; +triple[][] P=scale3(20)*octant1.P; + +// Optional weights: +real[][] weights=array(P.length,array(P[0].length,1.0)); +weights[1][2]=0.5; + +draw(P,uknot,vknot,weights,blue); diff --git a/Build/source/utils/asymptote/examples/animations/earthmoon.asy b/Build/source/utils/asymptote/examples/animations/earthmoon.asy index 37f2ac0fdc5..08c578d86d2 100644 --- a/Build/source/utils/asymptote/examples/animations/earthmoon.asy +++ b/Build/source/utils/asymptote/examples/animations/earthmoon.asy @@ -9,7 +9,7 @@ settings.prc=false; settings.thick=false; settings.outformat="mpg"; currentprojection=orthographic(5,4,2); -currentlight=light(specular=black,(0.1,-0.1,1)); +currentlight=light(specular=black,(0.1,-0.1,1),viewport=true); size(15cm,0); diff --git a/Build/source/utils/asymptote/examples/pathintersectsurface.asy b/Build/source/utils/asymptote/examples/pathintersectsurface.asy index 5e9f4e54905..b69b0b859a5 100644 --- a/Build/source/utils/asymptote/examples/pathintersectsurface.asy +++ b/Build/source/utils/asymptote/examples/pathintersectsurface.asy @@ -1,6 +1,8 @@ size(500); import graph3; +currentprojection=perspective(-5,-4,2); + path3 g=randompath3(10); draw(g,red+thin()); diff --git a/Build/source/utils/asymptote/examples/spectrum.asy b/Build/source/utils/asymptote/examples/spectrum.asy index efbc6752e2a..a5d576921cf 100644 --- a/Build/source/utils/asymptote/examples/spectrum.asy +++ b/Build/source/utils/asymptote/examples/spectrum.asy @@ -2,7 +2,7 @@ import graph; usepackage("ocg"); settings.tex="pdflatex"; -// Dan Burton algorithm +// Dan Bruton algorithm pen nm2rgb(real wl, real gamma=0.8, bool intensity=true) { triple rgb; if(wl >= 380 && wl <= 440) {rgb=((440-wl)/60,0,1);} diff --git a/Build/source/utils/asymptote/examples/splitpatch.asy b/Build/source/utils/asymptote/examples/splitpatch.asy new file mode 100644 index 00000000000..cfd5c9a4c93 --- /dev/null +++ b/Build/source/utils/asymptote/examples/splitpatch.asy @@ -0,0 +1,24 @@ +import three; + +currentprojection=orthographic(0,0,1); + +triple[][] A={ + {(0,0,0),(1,0,0),(1,0,0),(2,0,0)}, + {(0,4/3,0),(2/3,4/3,2),(4/3,4/3,2),(2,4/3,0)}, + {(0,2/3,0),(2/3,2/3,0),(4/3,2/3,0),(2,2/3,0)}, + {(0,2,0),(2/3,2,0),(4/3,2,0),(2,2,0)} +}; + +triple[][] B={ + {(0.5,0,-1),(0.5,1,-1),(0.5,2,-1),(0.5,3,-1)}, + {(0.5,0,0),(0.5,1,0),(0.5,2,0),(0.5,3,0)}, + {(0.5,0,1),(0.5,1,1),(0.5,2,1),(0.5,3,1)}, + {(0.5,0,2),(0.5,1,2),(0.5,2,2),(0.5,3,2)} +}; + +split S=split(A,B,10); +//write(S.T.length); + +for(int i=0; i < S.T.length; ++i) + draw(surface(patch(S.T[i])),Pen(i)); +draw(surface(patch(B)),blue); diff --git a/Build/source/utils/asymptote/exp.cc b/Build/source/utils/asymptote/exp.cc index cd4bca37ee0..e0879665aec 100644 --- a/Build/source/utils/asymptote/exp.cc +++ b/Build/source/utils/asymptote/exp.cc @@ -10,6 +10,11 @@ #include "exp.h" #include "errormsg.h" #include "runtime.h" +#include "runpicture.h" +#include "runarray.h" +#include "runpair.h" +#include "runtriple.h" +#include "runpath.h" #include "coenv.h" #include "application.h" #include "dec.h" diff --git a/Build/source/utils/asymptote/interact.cc b/Build/source/utils/asymptote/interact.cc index 43c7184ffe2..f038a3153d3 100644 --- a/Build/source/utils/asymptote/interact.cc +++ b/Build/source/utils/asymptote/interact.cc @@ -14,6 +14,7 @@ #include <csignal> #include "interact.h" +#include "runhistory.h" #if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) #include <readline/readline.h> diff --git a/Build/source/utils/asymptote/newexp.cc b/Build/source/utils/asymptote/newexp.cc index ddf3f07e7a4..5b5aacca01e 100644 --- a/Build/source/utils/asymptote/newexp.cc +++ b/Build/source/utils/asymptote/newexp.cc @@ -9,6 +9,7 @@ #include "newexp.h" #include "stm.h" #include "runtime.h" +#include "runarray.h" #include "coenv.h" #include "inst.h" diff --git a/Build/source/utils/asymptote/path.h b/Build/source/utils/asymptote/path.h index b61d9c23657..bf7d1aa676a 100644 --- a/Build/source/utils/asymptote/path.h +++ b/Build/source/utils/asymptote/path.h @@ -250,7 +250,7 @@ public: } Int i=Floor(t); t -= i; - if(t == 0) return dir(i,0); + if(t == 0) return dir(i,0,normalize); pair z0=point(i); pair c0=postcontrol(i); pair c1=precontrol(i+1); diff --git a/Build/source/utils/asymptote/path3.cc b/Build/source/utils/asymptote/path3.cc index fcedd4090c4..581e86db3c3 100644 --- a/Build/source/utils/asymptote/path3.cc +++ b/Build/source/utils/asymptote/path3.cc @@ -975,6 +975,11 @@ void bounds(triple& Pmin, triple& Pmax, triple *P, double fuzz) Pmax=triple(xmax,ymax,zmax); } +inline double abs2(double x, double y, double z) +{ + return x*x+y*y+z*z; +} + bool intersections(double& U, double& V, const triple& v, triple *P, double fuzz, unsigned depth) { @@ -983,15 +988,32 @@ bool intersections(double& U, double& V, const triple& v, triple *P, triple Pmin,Pmax; bounds(Pmin,Pmax,P,fuzz); - if(Pmax.getx()+fuzz >= v.getx() && - Pmax.gety()+fuzz >= v.gety() && - Pmax.getz()+fuzz >= v.getz() && - v.getx()+fuzz >= Pmin.getx() && - v.gety()+fuzz >= Pmin.gety() && - v.getz()+fuzz >= Pmin.getz()) { // Overlapping bounding boxes + double x=P[0].getx(); + double y=P[0].gety(); + double z=P[0].getz(); + double X=x, Y=y, Z=z; + for(int i=1; i < 16; ++i) { + triple v=P[i]; + double vx=v.getx(); + x=min(x,vx); + X=max(X,vx); + double vy=v.gety(); + y=min(y,vy); + Y=max(Y,vy); + double vz=v.getz(); + z=min(z,vz); + Z=max(Z,vz); + } + + if(X+fuzz >= v.getx() && + Y+fuzz >= v.gety() && + Z+fuzz >= v.getz() && + v.getx()+fuzz >= x && + v.gety()+fuzz >= y && + v.getz()+fuzz >= z) { // Overlapping bounding boxes --depth; - if((Pmax-Pmin).abs2() <= fuzz*fuzz || depth == 0) { + if(abs2(X-x,Y-y,Z-z) <= fuzz*fuzz || depth == 0) { U=0.5; V=0.5; return true; @@ -1059,19 +1081,33 @@ void intersections(std::vector<double>& T, std::vector<double>& U, triple pmin=p.min(); triple pmax=p.max(); - triple Pmin,Pmax; - bounds(Pmin,Pmax,P,fuzz); + double x=P[0].getx(); + double y=P[0].gety(); + double z=P[0].getz(); + double X=x, Y=y, Z=z; + for(int i=1; i < 16; ++i) { + triple v=P[i]; + double vx=v.getx(); + x=min(x,vx); + X=max(X,vx); + double vy=v.gety(); + y=min(y,vy); + Y=max(Y,vy); + double vz=v.getz(); + z=min(z,vz); + Z=max(Z,vz); + } - if(Pmax.getx()+fuzz >= pmin.getx() && - Pmax.gety()+fuzz >= pmin.gety() && - Pmax.getz()+fuzz >= pmin.getz() && - pmax.getx()+fuzz >= Pmin.getx() && - pmax.gety()+fuzz >= Pmin.gety() && - pmax.getz()+fuzz >= Pmin.getz()) { // Overlapping bounding boxes + if(X+fuzz >= pmin.getx() && + Y+fuzz >= pmin.gety() && + Z+fuzz >= pmin.getz() && + pmax.getx()+fuzz >= x && + pmax.gety()+fuzz >= y && + pmax.getz()+fuzz >= z) { // Overlapping bounding boxes --depth; - if(((pmax-pmin).length()+(Pmax-Pmin).length() <= fuzz) || depth == 0) { + if(((pmax-pmin).length()+sqrt(abs2(X-x,Y-y,Z-z)) <= fuzz) || depth == 0) { T.push_back(0.5); U.push_back(0.5); V.push_back(0.5); diff --git a/Build/source/utils/asymptote/path3.h b/Build/source/utils/asymptote/path3.h index 067bc2e92e1..de4b5489ad5 100644 --- a/Build/source/utils/asymptote/path3.h +++ b/Build/source/utils/asymptote/path3.h @@ -208,7 +208,7 @@ public: } Int i=Floor(t); t -= i; - if(t == 0) return dir(i,0); + if(t == 0) return dir(i,0,normalize); triple z0=point(i); triple c0=postcontrol(i); triple c1=precontrol(i+1); @@ -366,6 +366,14 @@ double bound(double *p, double (*m)(double, double), double bound(triple *P, double (*m)(double, double), double (*f)(const triple&), double b, double fuzz, int depth=maxdepth); + +inline void store(Triple& control, const triple& v) +{ + control[0]=v.getx(); + control[1]=v.gety(); + control[2]=v.getz(); +} + } #ifndef BROKEN_COMPILER diff --git a/Build/source/utils/asymptote/prc/oPRCFile.cc b/Build/source/utils/asymptote/prc/oPRCFile.cc index 77e28d76061..a9d6b2e2156 100644 --- a/Build/source/utils/asymptote/prc/oPRCFile.cc +++ b/Build/source/utils/asymptote/prc/oPRCFile.cc @@ -20,9 +20,23 @@ #include "oPRCFile.h" #include <time.h> +#include <sstream> using std::string; +static const string EntityName[]={"line","curve","surface"}; + +std::string Name(oPRCFile *p, Entity e, std::string s) +{ + if(s.empty()) { + uint32_t i=++(p->count[e]); + std::ostringstream buf; + buf << EntityName[e] << "-" << i; + return buf.str(); + } + return s; +} + uint32_t PRCentity::getGraphicsIndex() { if(useMaterial) @@ -34,7 +48,7 @@ uint32_t PRCentity::getGraphicsIndex() void PRCline::writeRepresentationItem(PRCbitStream &out,uint32_t index) { out << (uint32_t)(PRC_TYPE_RI_Curve); - ContentPRCBase(&EMPTY_ATTRIBUTES,"line",true,makeCADID(),0,makePRCID()).write(out); + ContentPRCBase(&EMPTY_ATTRIBUTES,name,true,makeCADID(),0,makePRCID()).write(out); writeGraphics(out,m1,getGraphicsIndex(),1); out << (uint32_t)0 // index_local_coordinate_system+1 << (uint32_t)0; // index_tessellation @@ -102,7 +116,7 @@ void PRCline::writeExtraGeometryContext(PRCbitStream &out) void PRCcurve::writeRepresentationItem(PRCbitStream &out,uint32_t index) { out << (uint32_t)(PRC_TYPE_RI_Curve); - ContentPRCBase(&EMPTY_ATTRIBUTES,"curve",true,makeCADID(),0,makePRCID()).write(out); + ContentPRCBase(&EMPTY_ATTRIBUTES,name,true,makeCADID(),0,makePRCID()).write(out); writeGraphics(out,m1,getGraphicsIndex(),1); out << (uint32_t)0 // index_local_coordinate_system+1 << (uint32_t)0; // index_tessellation @@ -180,7 +194,7 @@ void PRCcurve::writeExtraGeometryContext(PRCbitStream &out) void PRCsurface::writeRepresentationItem(PRCbitStream &out,uint32_t index) { out << (uint32_t)(PRC_TYPE_RI_BrepModel); - ContentPRCBase(&EMPTY_ATTRIBUTES,"surface",true,makeCADID(),0,makePRCID()).write(out); + ContentPRCBase(&EMPTY_ATTRIBUTES,name,true,makeCADID(),0,makePRCID()).write(out); writeGraphics(out,0,getGraphicsIndex(),1); out << (uint32_t)0 // index_local_coordinate_system+1 << (uint32_t)0; // index_tessellation @@ -440,7 +454,7 @@ void PRCTreeSection::writeData() at.text = "__PRC_RESERVED_ATTRIBUTE_A3DF_ProductInformation"; Attribute attr(false,at,3,sas); Attributes attrs(1,&attr); - ContentPRCBase(&attrs,"Unknown",true,makeCADID(),0,makePRCID()).write(out); + ContentPRCBase(&attrs,"root",true,makeCADID(),0,makePRCID()).write(out); writeGraphics(out,m1,m1,1,true); out << (uint32_t)1 // index_part+1 diff --git a/Build/source/utils/asymptote/prc/oPRCFile.h b/Build/source/utils/asymptote/prc/oPRCFile.h index 1714c60492e..3dd5f856e54 100644 --- a/Build/source/utils/asymptote/prc/oPRCFile.h +++ b/Build/source/utils/asymptote/prc/oPRCFile.h @@ -36,6 +36,10 @@ class oPRCFile; +enum Entity {LINE=0,CURVE,SURFACE,nEntity}; + +std::string Name(oPRCFile *p, Entity e, std::string s); + struct RGBAColour { RGBAColour(double r=0.0, double g=0.0, double b=0.0, double a=1.0) : @@ -67,10 +71,12 @@ struct PRCMaterial class PRCentity { public: - PRCentity(oPRCFile *p,const RGBAColour &c, double scale = 1.0) : - colour(c), useMaterial(false), scale(scale), parent(p) {} - PRCentity(oPRCFile *p,const PRCMaterial &m, double scale = 1.0) : - material(m), useMaterial(true), scale(scale), parent(p) {} + PRCentity(oPRCFile *p,const RGBAColour &c, double scale = 1.0, + std::string name = "") : + colour(c), useMaterial(false), scale(scale), name(name), parent(p) {} + PRCentity(oPRCFile *p,const PRCMaterial &m, double scale = 1.0, + std::string name = "") : + material(m), useMaterial(true), scale(scale), name(name), parent(p) {} uint32_t getGraphicsIndex(); virtual void writeRepresentationItem(PRCbitStream&,uint32_t) = 0; virtual void writeTopologicalContext(PRCbitStream&) = 0; @@ -79,6 +85,7 @@ class PRCentity PRCMaterial material; bool useMaterial; double scale; + std::string name; virtual ~PRCentity() {} protected: oPRCFile *parent; @@ -91,8 +98,8 @@ class PRCsurface : public PRCentity PRCsurface(oPRCFile *p, uint32_t dU, uint32_t dV, uint32_t nU, uint32_t nV, double cP[][3], double *kU, double *kV, const RGBAColour &c, double scale = 1.0, bool iR = false, double w[] = 0, - double g = 0) : - PRCentity(p,c,scale), degreeU(dU), degreeV(dV), + double g = 0, std::string name = "") : + PRCentity(p,c,scale,Name(p,SURFACE,name)), degreeU(dU), degreeV(dV), numberOfControlPointsU(nU), numberOfControlPointsV(nV), knotsU(kU), knotsV(kV), controlPoints(cP), isRational(iR), weights(w), granularity(g) {} @@ -100,8 +107,8 @@ class PRCsurface : public PRCentity PRCsurface(oPRCFile *p, uint32_t dU, uint32_t dV, uint32_t nU, uint32_t nV, double cP[][3], double *kU, double *kV, const PRCMaterial &m, double scale = 1.0, bool iR = false, double w[] = 0, - double g = 0) : - PRCentity(p,m,scale), degreeU(dU), degreeV(dV), + double g = 0, std::string name = "") : + PRCentity(p,m,scale,Name(p,SURFACE,name)), degreeU(dU), degreeV(dV), numberOfControlPointsU(nU), numberOfControlPointsV(nV), knotsU(kU), knotsV(kV), controlPoints(cP), isRational(iR), weights(w), granularity(g) {} @@ -130,12 +137,12 @@ class PRCline : public PRCentity public: // constructor with colour PRCline(oPRCFile *p, uint32_t n, double P[][3], const RGBAColour &c, - double scale = 1.0) : - PRCentity(p,c,scale), numberOfPoints(n), points(P) {} + double scale = 1.0, std::string name="") : + PRCentity(p,c,scale,Name(p,LINE,name)), numberOfPoints(n), points(P) {} // constructor with material PRCline(oPRCFile *p, uint32_t n, double P[][3], const PRCMaterial &m, - double scale = 1.0) : - PRCentity(p,m,scale), numberOfPoints(n), points(P) {} + double scale = 1.0, std::string name = "") : + PRCentity(p,m,scale,Name(p,LINE,name)), numberOfPoints(n), points(P) {} virtual void writeRepresentationItem(PRCbitStream&,uint32_t); virtual void writeTopologicalContext(PRCbitStream&); virtual void writeExtraGeometryContext(PRCbitStream&); @@ -150,15 +157,17 @@ class PRCcurve : public PRCentity // constructor with colour PRCcurve(oPRCFile *p, uint32_t d, uint32_t n, double cP[][3], double *k, const RGBAColour &c, double scale = 1.0, bool iR = false, - double w[] = 0) : - PRCentity(p,c,scale), degree(d), numberOfControlPoints(n), knots(k), - controlPoints(cP), isRational(iR), weights(w) {} + double w[] = 0, std::string name="") : + PRCentity(p,c,scale,Name(p,CURVE,name)), degree(d), + numberOfControlPoints(n), knots(k), controlPoints(cP), isRational(iR), + weights(w) {} // constructor with material PRCcurve(oPRCFile *p, uint32_t d, uint32_t n, double cP[][3], double *k, const PRCMaterial &m, double scale = 1.0, bool iR = false, - double w[] = 0) : - PRCentity(p,m,scale), degree(d), numberOfControlPoints(n), knots(k), - controlPoints(cP), isRational(iR), weights(w) {} + double w[] = 0, std::string name = "") : + PRCentity(p,m,scale,Name(p,CURVE,name)), degree(d), + numberOfControlPoints(n), knots(k), controlPoints(cP), isRational(iR), + weights(w) {} virtual void writeRepresentationItem(PRCbitStream&,uint32_t); virtual void writeTopologicalContext(PRCbitStream&); virtual void writeExtraGeometryContext(PRCbitStream&); @@ -357,12 +366,18 @@ class oPRCFile oPRCFile(std::ostream &os, uint32_t n=1) : number_of_file_structures(n), fileStructures(new PRCFileStructure*[n]),modelFile(this), - fout(NULL),output(os) {} + fout(NULL),output(os) { + for(size_t i=0; i < nEntity; ++i) + count[i]=0; + } oPRCFile(const std::string &name, uint32_t n=1) : number_of_file_structures(n), fileStructures(new PRCFileStructure*[n]),modelFile(this), - fout(new std::ofstream(name.c_str())),output(*fout) {} + fout(new std::ofstream(name.c_str())),output(*fout) { + for(size_t i=0; i < nEntity; ++i) + count[i]=0; + } ~oPRCFile() { @@ -373,11 +388,16 @@ class oPRCFile delete fout; } + void begingroup(std::string name) {} + void endgroup() {} + bool add(PRCentity*); bool finish(); uint32_t getColourIndex(const RGBAColour&); uint32_t getMaterialIndex(const PRCMaterial&); uint32_t getSize(); + + uint32_t count[nEntity]; const uint32_t number_of_file_structures; PRCFileStructure **fileStructures; diff --git a/Build/source/utils/asymptote/prcfile.h b/Build/source/utils/asymptote/prcfile.h index cd957026631..0dffdbb182a 100644 --- a/Build/source/utils/asymptote/prcfile.h +++ b/Build/source/utils/asymptote/prcfile.h @@ -1,6 +1,7 @@ #ifndef PRCFILE_H #define PRCFILE_H +#include "memory.h" #include "prc/oPRCFile.h" namespace camp { @@ -35,9 +36,10 @@ public: inline void writeBezierKnots(PRCbitStream &out, uint32_t d, uint32_t n) { out << (double) 1; - for(uint32_t i=1; i < d+n; ++i) + uint32_t stop=d+n; + for(uint32_t i=1; i < stop; ++i) out << (double) ((i+2)/d); // integer division is intentional - out << (double) ((d+n+1)/d); + out << (double) ((stop+1)/d); } class PRCBezierCurve : public PRCcurve @@ -46,11 +48,11 @@ class PRCBezierCurve : public PRCcurve uint32_t n; public: PRCBezierCurve(oPRCFile *p, uint32_t d, uint32_t n, double cP[][3], - const RGBAColour &c) : - PRCcurve(p,d,n,cP,NULL,c,scale3D,false,NULL), d(d), n(n) {} + const RGBAColour &c, string name="") : + PRCcurve(p,d,n,cP,NULL,c,scale3D,false,NULL,name.c_str()), d(d), n(n) {} PRCBezierCurve(oPRCFile *p, uint32_t d, uint32_t n, double cP[][3], - const PRCMaterial &m) : - PRCcurve(p,d,n,cP,NULL,m,scale3D,false,NULL), d(d), n(n) {} + const PRCMaterial &m, string name="") : + PRCcurve(p,d,n,cP,NULL,m,scale3D,false,NULL,name.c_str()), d(d), n(n) {} private: void writeKnots(PRCbitStream &out) { writeBezierKnots(out,d,n); @@ -64,14 +66,14 @@ class PRCBezierSurface : public PRCsurface public: PRCBezierSurface(oPRCFile *p, uint32_t dU, uint32_t dV, uint32_t nU, uint32_t nV, double cP[][3], const RGBAColour &c, - double g=0.0) : - PRCsurface(p,dU,dV,nU,nV,cP,NULL,NULL,c,scale3D,false,NULL,g), dU(dU), - dV(dV), nU(nU), nV(nV) {} + double g=0.0, string name="") : + PRCsurface(p,dU,dV,nU,nV,cP,NULL,NULL,c,scale3D,false,NULL,g,name.c_str()), + dU(dU), dV(dV), nU(nU), nV(nV) {} PRCBezierSurface(oPRCFile *p, uint32_t dU, uint32_t dV, uint32_t nU, uint32_t nV, double cP[][3], const PRCMaterial &m, - double g=0.0) : - PRCsurface(p,dU,dV,nU,nV,cP,NULL,NULL,m,scale3D,false,NULL,g), dU(dU), - dV(dV), nU(nU), nV(nV) {} + double g=0.0, string name="") : + PRCsurface(p,dU,dV,nU,nV,cP,NULL,NULL,m,scale3D,false,NULL,g,name.c_str()), + dU(dU), dV(dV), nU(nU), nV(nV) {} private: void writeKnots(PRCbitStream &out) { writeBezierKnots(out,dU,nU); diff --git a/Build/source/utils/asymptote/runarray.cc b/Build/source/utils/asymptote/runarray.cc new file mode 100644 index 00000000000..c67e69db6f5 --- /dev/null +++ b/Build/source/utils/asymptote/runarray.cc @@ -0,0 +1,2351 @@ +/***** Autogenerated from runarray.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runarray.in" +/***** + * runarray.in + * + * Runtime functions for array operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 20 "runarray.in" +#include "array.h" +#include "arrayop.h" +#include "triple.h" +#include "path3.h" +#include "Delaunay.h" + +#ifdef HAVE_LIBFFTW3 +#include "fftw++.h" +#endif + +using namespace camp; +using namespace vm; + +typedef array boolarray; +typedef array Intarray; +typedef array Intarray2; +typedef array realarray; +typedef array realarray2; +typedef array pairarray; +typedef array triplearray2; + +using types::booleanArray; +using types::IntArray; +using types::IntArray2; +using types::realArray; +using types::realArray2; +using types::pairArray; +using types::tripleArray2; + +typedef callable callableReal; + +void outOfBounds(const char *op, size_t len, Int n) +{ + ostringstream buf; + buf << op << " array of length " << len << " with out-of-bounds index " << n; + error(buf); +} + +inline item& arrayRead(array *a, Int n) +{ + size_t len=checkArray(a); + bool cyclic=a->cyclic(); + if(cyclic && len > 0) n=imod(n,len); + else if(n < 0 || n >= (Int) len) outOfBounds("reading",len,n); + return (*a)[(unsigned) n]; +} + +// Helper function to create deep arrays. +static array* deepArray(Int depth, Int *dims) +{ + assert(depth > 0); + + if (depth == 1) { + return new array(dims[0]); + } else { + Int length = dims[0]; + depth--; dims++; + + array *a = new array(length); + + for (Int index = 0; index < length; index++) { + (*a)[index] = deepArray(depth, dims); + } + return a; + } +} + +namespace run { +array *Identity(Int n) +{ + size_t N=(size_t) n; + array *c=new array(N); + for(size_t i=0; i < N; ++i) { + array *ci=new array(N); + (*c)[i]=ci; + for(size_t j=0; j < N; ++j) + (*ci)[j]=0.0; + (*ci)[i]=1.0; + } + return c; +} +} + +static const char *incommensurate="Incommensurate matrices"; +static const char *singular="Singular matrix"; +static size_t *pivot,*Row,*Col; + +namespace run { + +array *copyArray(array *a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) + (*c)[i]=(*a)[i]; + return c; +} + +inline size_t checkdimension(const array *a, size_t dim) +{ + size_t size=checkArray(a); + if(dim && size != dim) { + ostringstream buf; + buf << "array of length " << dim << " expected"; + error(buf); + } + return size; +} + +double *copyArrayC(const array *a, size_t dim) +{ + size_t size=checkdimension(a,dim); + double *c=new double[size]; + for(size_t i=0; i < size; i++) + c[i]=read<double>(a,i); + return c; +} + +triple *copyTripleArrayC(const array *a, size_t dim) +{ + size_t size=checkdimension(a,dim); + triple *c=new triple[size]; + for(size_t i=0; i < size; i++) + c[i]=read<triple>(a,i); + return c; +} + +array *copyArray2(array *a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + array *ci=new array(aisize); + (*c)[i]=ci; + for(size_t j=0; j < aisize; j++) + (*ci)[j]=(*ai)[j]; + } + return c; +} + +array *copyArray3(array *a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + array *ci=new array(aisize); + (*c)[i]=ci; + for(size_t j=0; j < aisize; j++) { + array *aij=read<array*>(ai,j); + size_t aijsize=checkArray(aij); + array *cij=new array(aijsize); + (*ci)[j]=cij; + for(size_t k=0; k < aijsize; k++) + (*cij)[k]=(*aij)[k]; + } + } + return c; +} + +double *copyArray2C(const array *a, bool square, size_t dim2) +{ + size_t n=checkArray(a); + size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); + if(n > 0 && dim2 && m != dim2) { + ostringstream buf; + buf << "second matrix dimension must be " << dim2; + error(buf); + } + + double *c=new double[n*m]; + for(size_t i=0; i < n; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + if(aisize == m) { + double *ci=c+i*m; + for(size_t j=0; j < m; j++) + ci[j]=read<double>(ai,j); + } else + error(square ? "matrix must be square" : "matrix must be rectangular"); + } + return c; +} + +triple *copyTripleArray2C(const array *a, bool square, size_t dim2) +{ + size_t n=checkArray(a); + size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); + if(n > 0 && dim2 && m != dim2) { + ostringstream buf; + buf << "second matrix dimension must be " << dim2; + error(buf); + } + + triple *c=new triple[n*m]; + for(size_t i=0; i < n; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + if(aisize == m) { + triple *ci=c+i*m; + for(size_t j=0; j < m; j++) + ci[j]=read<triple>(ai,j); + } else + error(square ? "matrix must be square" : "matrix must be rectangular"); + } + return c; +} + +double *copyTripleArray2Components(array *a, bool square, size_t dim2) +{ + size_t n=checkArray(a); + size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); + if(n > 0 && dim2 && m != dim2) { + ostringstream buf; + buf << "second matrix dimension must be " << dim2; + error(buf); + } + + size_t nm=n*m; + double *cx=new double[3*nm]; + double *cy=cx+nm; + double *cz=cx+2*nm; + for(size_t i=0; i < n; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + if(aisize == m) { + double *xi=cx+i*m; + double *yi=cy+i*m; + double *zi=cz+i*m; + for(size_t j=0; j < m; j++) { + triple v=read<triple>(ai,j); + xi[j]=v.getx(); + yi[j]=v.gety(); + zi[j]=v.getz(); + } + } else + error(square ? "matrix must be square" : "matrix must be rectangular"); + } + return cx; +} + +triple operator *(const array& t, const triple& v) +{ + size_t n=checkArray(&t); + if(n != 4) error(incommensurate); + array *t0=read<array*>(t,0); + array *t1=read<array*>(t,1); + array *t2=read<array*>(t,2); + array *t3=read<array*>(t,3); + + if(checkArray(t0) != 4 || checkArray(t1) != 4 || + checkArray(t2) != 4 || checkArray(t3) != 4) + error(incommensurate); + + double x=v.getx(); + double y=v.gety(); + double z=v.getz(); + + double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ + read<real>(t3,3); + if(f == 0.0) run::dividebyzero(); + f=1.0/f; + + return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ + read<real>(t0,3))*f, + (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ + read<real>(t1,3))*f, + (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z+ + read<real>(t2,3))*f); +} + +triple multshiftless(const array& t, const triple& v) +{ + size_t n=checkArray(&t); + if(n != 4) error(incommensurate); + array *t0=read<array*>(t,0); + array *t1=read<array*>(t,1); + array *t2=read<array*>(t,2); + array *t3=read<array*>(t,3); + + if(checkArray(t0) != 4 || checkArray(t1) != 4 || + checkArray(t2) != 4 || checkArray(t3) != 4) + error(incommensurate); + + double x=v.getx(); + double y=v.gety(); + double z=v.getz(); + + double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ + read<real>(t3,3); + if(f == 0.0) run::dividebyzero(); + f=1.0/f; + + return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z)*f, + (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z)*f, + (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z)*f); +} + +double norm(double *a, size_t n) +{ + if(n == 0) return 0.0; + double M=fabs(a[0]); + for(size_t i=1; i < n; ++i) + M=::max(M,fabs(a[i])); + return M; +} + +double norm(triple *a, size_t n) +{ + if(n == 0) return 0.0; + double M=a[0].abs2(); + for(size_t i=1; i < n; ++i) + M=::max(M,a[i].abs2()); + return sqrt(M); +} + +} + +static inline void inverseAllocate(size_t n) +{ + pivot=new size_t[n]; + Row=new size_t[n]; + Col=new size_t[n]; +} + +static inline void inverseDeallocate() +{ + delete[] pivot; + delete[] Row; + delete[] Col; +} + +callable *Func; +stack *FuncStack; +double wrapFunction(double x) +{ + FuncStack->push(x); + Func->call(FuncStack); + return pop<double>(FuncStack); +} + +callable *compareFunc; +bool compareFunction(const vm::item& i, const vm::item& j) +{ + FuncStack->push(i); + FuncStack->push(j); + compareFunc->call(FuncStack); + return pop<bool>(FuncStack); +} + +void checkSquare(array *a) +{ + size_t n=checkArray(a); + for(size_t i=0; i < n; i++) + if(checkArray(read<array*>(a,i)) != n) + error("matrix a must be square"); +} + +// Crout's algorithm for computing the LU decomposition of a square matrix. +// cf. routine ludcmp (Press et al., Numerical Recipes, 1991). +Int LUdecompose(double *a, size_t n, size_t* index, bool warn=true) +{ + double *vv=new double[n]; + Int swap=1; + for(size_t i=0; i < n; ++i) { + double big=0.0; + double *ai=a+i*n; + for(size_t j=0; j < n; ++j) { + double temp=fabs(ai[j]); + if(temp > big) big=temp; + } + if(big == 0.0) { + delete[] vv; + if(warn) error(singular); + else return 0; + } + vv[i]=1.0/big; + } + for(size_t j=0; j < n; ++j) { + for(size_t i=0; i < j; ++i) { + double *ai=a+i*n; + double sum=ai[j]; + for(size_t k=0; k < i; ++k) { + sum -= ai[k]*a[k*n+j]; + } + ai[j]=sum; + } + double big=0.0; + size_t imax=j; + for(size_t i=j; i < n; ++i) { + double *ai=a+i*n; + double sum=ai[j]; + for(size_t k=0; k < j; ++k) + sum -= ai[k]*a[k*n+j]; + ai[j]=sum; + double temp=vv[i]*fabs(sum); + if(temp >= big) { + big=temp; + imax=i; + } + } + double *aj=a+j*n; + double *aimax=a+imax*n; + if(j != imax) { + for(size_t k=0; k < n; ++k) { + double temp=aimax[k]; + aimax[k]=aj[k]; + aj[k]=temp; + } + swap *= -1; + vv[imax]=vv[j]; + } + if(index) + index[j]=imax; + if(j != n) { + double denom=aj[j]; + if(denom == 0.0) { + delete[] vv; + if(warn) error(singular); + else return 0; + } + for(size_t i=j+1; i < n; ++i) + a[i*n+j] /= denom; + } + } + delete[] vv; + return swap; +} + +namespace run { +void dividebyzero(size_t i) +{ + ostringstream buf; + if(i > 0) buf << "array element " << i << ": "; + buf << "Divide by zero"; + error(buf); +} + +void integeroverflow(size_t i) +{ + ostringstream buf; + if(i > 0) buf << "array element " << i << ": "; + buf << "Integer overflow"; + error(buf); +} +} + +// Autogenerated routines: + + + +namespace run { +// Create an empty array. +#line 474 "runarray.in" +void emptyArray(stack *Stack) +{ +#line 475 "runarray.in" + {Stack->push<array*>(new array(0)); return;} +} + +// Create a new array (technically a vector). +// This array will be multidimensional. First the number of dimensions +// is popped off the stack, followed by each dimension in reverse order. +// The array itself is technically a one dimensional array of one +// dimension arrays and so on. +#line 484 "runarray.in" +void newDeepArray(stack *Stack) +{ + Int depth=vm::pop<Int>(Stack); +#line 485 "runarray.in" + assert(depth > 0); + + Int *dims = new Int[depth]; + + for (Int index = depth-1; index >= 0; index--) { + Int i=pop<Int>(Stack); + if(i < 0) error("cannot create a negative length array"); + dims[index]=i; + } + + array *a=deepArray(depth, dims); + delete[] dims; + {Stack->push<array*>(a); return;} +} + +// Creates an array with elements already specified. First, the number +// of elements is popped off the stack, followed by each element in +// reverse order. +#line 504 "runarray.in" +void newInitializedArray(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); +#line 505 "runarray.in" + assert(n >= 0); + + array *a = new array(n); + + for (Int index = n-1; index >= 0; index--) + (*a)[index] = pop(Stack); + + {Stack->push<array*>(a); return;} +} + +// Similar to newInitializedArray, but after the n elements, append another +// array to it. +#line 518 "runarray.in" +void newAppendedArray(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + array* tail=vm::pop<array*>(Stack); +#line 519 "runarray.in" + assert(n >= 0); + + array *a = new array(n); + + for (Int index = n-1; index >= 0; index--) + (*a)[index] = pop(Stack); + + copy(tail->begin(), tail->end(), back_inserter(*a)); + + {Stack->push<array*>(a); return;} +} + +// The function T[] array(int n, T value, int depth=0) produces a array of n +// copies of x, where each copy is copied up to depth. +#line 534 "runarray.in" +void newDuplicateArray(stack *Stack) +{ + Int depth=vm::pop<Int>(Stack,Int_MAX); + item value=vm::pop(Stack); + Int n=vm::pop<Int>(Stack); +#line 535 "runarray.in" + if(n < 0) error("cannot create a negative length array"); + if(depth < 0) error("cannot copy to a negative depth"); + + {Stack->push<array*>(new array(n, value, depth)); return;} +} + +// Read an element from an array. Checks for initialization & bounds. +#line 543 "runarray.in" +void arrayRead(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + array * a=vm::pop<array *>(Stack); +#line 544 "runarray.in" + item& i=arrayRead(a,n); + if (i.empty()) { + ostringstream buf; + buf << "read uninitialized value from array at index " << n; + error(buf); + } + {Stack->push(i); return;} +} + +// Slice a substring from an array. +#line 555 "runarray.in" +void arraySliceRead(stack *Stack) +{ + Int right=vm::pop<Int>(Stack); + Int left=vm::pop<Int>(Stack); + array * a=vm::pop<array *>(Stack); +#line 556 "runarray.in" + checkArray(a); + {Stack->push(a->slice(left, right)); return;} +} + +// Slice a substring from an array. This implements the cases a[i:] and a[:] +// where the endpoint is not given, and assumed to be the length of the array. +#line 563 "runarray.in" +void arraySliceReadToEnd(stack *Stack) +{ + Int left=vm::pop<Int>(Stack); + array * a=vm::pop<array *>(Stack); +#line 564 "runarray.in" + size_t len=checkArray(a); + {Stack->push(a->slice(left, (Int)len)); return;} +} + +// Read an element from an array of arrays. Check bounds and initialize +// as necessary. +#line 571 "runarray.in" +void arrayArrayRead(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + array * a=vm::pop<array *>(Stack); +#line 572 "runarray.in" + item& i=arrayRead(a,n); + if (i.empty()) i=new array(0); + {Stack->push(i); return;} +} + +// Write an element to an array. Increase size if necessary. +#line 579 "runarray.in" +void arrayWrite(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + array * a=vm::pop<array *>(Stack); + item value=vm::pop(Stack); +#line 580 "runarray.in" + size_t len=checkArray(a); + bool cyclic=a->cyclic(); + if(cyclic && len > 0) n=imod(n,len); + else { + if(cyclic) outOfBounds("writing cyclic",len,n); + if(n < 0) outOfBounds("writing",len,n); + if(len <= (size_t) n) + a->resize(n+1); + } + (*a)[n] = value; + {Stack->push(value); return;} +} + +#line 594 "runarray.in" +void arraySliceWrite(stack *Stack) +{ + Int right=vm::pop<Int>(Stack); + Int left=vm::pop<Int>(Stack); + array * dest=vm::pop<array *>(Stack); + array * src=vm::pop<array *>(Stack); +#line 595 "runarray.in" + checkArray(src); + checkArray(dest); + dest->setSlice(left, right, src); + {Stack->push<array*>(src); return;} +} + +#line 602 "runarray.in" +void arraySliceWriteToEnd(stack *Stack) +{ + Int left=vm::pop<Int>(Stack); + array * dest=vm::pop<array *>(Stack); + array * src=vm::pop<array *>(Stack); +#line 603 "runarray.in" + checkArray(src); + size_t len=checkArray(dest); + dest->setSlice(left, (Int) len, src); + {Stack->push<array*>(src); return;} +} + +// Returns the length of an array. +#line 611 "runarray.in" +void arrayLength(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 612 "runarray.in" + {Stack->push<Int>((Int) checkArray(a)); return;} +} + +// Returns an array of integers representing the keys of the array. +#line 617 "runarray.in" +void arrayKeys(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 618 "runarray.in" + size_t size=checkArray(a); + + array *keys=new array(); + for (size_t i=0; i<size; ++i) { + item& cell = (*a)[i]; + if (!cell.empty()) + keys->push((Int)i); + } + + {Stack->push<array*>(keys); return;} +} + +// Return the cyclic flag for an array. +#line 632 "runarray.in" +void arrayCyclicFlag(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 633 "runarray.in" + checkArray(a); + {Stack->push<bool>(a->cyclic()); return;} +} + +#line 638 "runarray.in" +void arraySetCyclicFlag(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + bool b=vm::pop<bool>(Stack); +#line 639 "runarray.in" + checkArray(a); + a->cyclic(b); + {Stack->push<bool>(b); return;} +} + +// Check to see if an array element is initialized. +#line 646 "runarray.in" +void arrayInitializedHelper(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + Int n=vm::pop<Int>(Stack); +#line 647 "runarray.in" + size_t len=checkArray(a); + bool cyclic=a->cyclic(); + if(cyclic && len > 0) n=imod(n,len); + else if(n < 0 || n >= (Int) len) {Stack->push<bool>(false); return;} + item&i=(*a)[(unsigned) n]; + {Stack->push<bool>(!i.empty()); return;} +} + +// Returns the initialize method for an array. +#line 657 "runarray.in" +void arrayInitialized(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 658 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayInitializedHelper),a)); return;} +} + +// The helper function for the cyclic method that sets the cyclic flag. +#line 663 "runarray.in" +void arrayCyclicHelper(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + bool b=vm::pop<bool>(Stack); +#line 664 "runarray.in" + checkArray(a); + a->cyclic(b); +} + +// Set the cyclic flag for an array. +#line 670 "runarray.in" +void arrayCyclic(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 671 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayCyclicHelper),a)); return;} +} + +// The helper function for the push method that does the actual operation. +#line 676 "runarray.in" +void arrayPushHelper(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + item x=vm::pop(Stack); +#line 677 "runarray.in" + checkArray(a); + a->push(x); + {Stack->push(x); return;} +} + +// Returns the push method for an array. +#line 684 "runarray.in" +void arrayPush(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 685 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayPushHelper),a)); return;} +} + +// The helper function for the append method that appends b to a. +#line 690 "runarray.in" +void arrayAppendHelper(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + array * b=vm::pop<array *>(Stack); +#line 691 "runarray.in" + checkArray(a); + size_t size=checkArray(b); + for(size_t i=0; i < size; i++) + a->push((*b)[i]); +} + +// Returns the append method for an array. +#line 699 "runarray.in" +void arrayAppend(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 700 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayAppendHelper),a)); return;} +} + +// The helper function for the pop method. +#line 705 "runarray.in" +void arrayPopHelper(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 706 "runarray.in" + size_t asize=checkArray(a); + if(asize == 0) + error("cannot pop element from empty array"); + {Stack->push(a->pop()); return;} +} + +// Returns the pop method for an array. +#line 714 "runarray.in" +void arrayPop(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 715 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayPopHelper),a)); return;} +} + +// The helper function for the insert method. +#line 720 "runarray.in" +void arrayInsertHelper(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + array * x=vm::pop<array *>(Stack); + Int i=vm::pop<Int>(Stack); +#line 721 "runarray.in" + size_t asize=checkArray(a); + checkArray(x); + if(a->cyclic() && asize > 0) i=imod(i,asize); + if(i < 0 || i > (Int) asize) + outOfBounds("inserting",asize,i); + (*a).insert((*a).begin()+i,(*x).begin(),(*x).end()); +} + +// Returns the insert method for an array. +#line 731 "runarray.in" +void arrayInsert(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 732 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayInsertHelper),a)); return;} +} + +// Returns the delete method for an array. +#line 737 "runarray.in" +void arrayDelete(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 738 "runarray.in" + {Stack->push<callable*>(new thunk(new bfunc(arrayDeleteHelper),a)); return;} +} + +#line 742 "runarray.in" +void arrayAlias(stack *Stack) +{ + array * b=vm::pop<array *>(Stack); + array * a=vm::pop<array *>(Stack); +#line 743 "runarray.in" + {Stack->push<bool>(a==b); return;} +} + +// Return array formed by indexing array a with elements of integer array b +#line 748 "runarray.in" +void arrayIntArray(stack *Stack) +{ + array * b=vm::pop<array *>(Stack); + array * a=vm::pop<array *>(Stack); +#line 749 "runarray.in" + size_t asize=checkArray(a); + size_t bsize=checkArray(b); + array *r=new array(bsize); + bool cyclic=a->cyclic(); + for(size_t i=0; i < bsize; i++) { + Int index=read<Int>(b,i); + if(cyclic && asize > 0) index=imod(index,asize); + else + if(index < 0 || index >= (Int) asize) + outOfBounds("reading",asize,index); + (*r)[i]=(*a)[index]; + } + {Stack->push<array*>(r); return;} +} + +// returns the complement of the integer array a in {0,2,...,n-1}, +// so that b[complement(a,b.length)] yields the complement of b[a]. +#line 767 "runarray.in" +// Intarray* complement(Intarray *a, Int n); +void gen_runarray31(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + Intarray * a=vm::pop<Intarray *>(Stack); +#line 768 "runarray.in" + size_t asize=checkArray(a); + array *r=new array(0); + bool *keep=new bool[n]; + for(Int i=0; i < n; ++i) keep[i]=true; + for(size_t i=0; i < asize; ++i) { + Int j=read<Int>(a,i); + if(j >= 0 && j < n) keep[j]=false; + } + for(Int i=0; i < n; i++) + if(keep[i]) r->push(i); + + delete[] keep; + {Stack->push<Intarray*>(r); return;} +} + +// Generate the sequence {f(i) : i=0,1,...n-1} given a function f and integer n +#line 785 "runarray.in" +void arraySequence(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + callable * f=vm::pop<callable *>(Stack); +#line 786 "runarray.in" + if(n < 0) n=0; + array *a=new array(n); + for(Int i=0; i < n; ++i) { + Stack->push(i); + f->call(Stack); + (*a)[i]=pop(Stack); + } + {Stack->push<Intarray*>(a); return;} +} + +// Return the array {0,1,...n-1} +#line 798 "runarray.in" +// Intarray* sequence(Int n); +void gen_runarray33(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); +#line 799 "runarray.in" + if(n < 0) n=0; + array *a=new array(n); + for(Int i=0; i < n; ++i) { + (*a)[i]=i; + } + {Stack->push<Intarray*>(a); return;} +} + +// Apply a function to each element of an array +#line 809 "runarray.in" +void arrayFunction(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); + callable * f=vm::pop<callable *>(Stack); +#line 810 "runarray.in" + size_t size=checkArray(a); + array *b=new array(size); + for(size_t i=0; i < size; ++i) { + Stack->push((*a)[i]); + f->call(Stack); + (*b)[i]=pop(Stack); + } + {Stack->push<array*>(b); return;} +} + +#line 821 "runarray.in" +void arraySort(stack *Stack) +{ + callable * f=vm::pop<callable *>(Stack); + array * a=vm::pop<array *>(Stack); +#line 822 "runarray.in" + array *c=copyArray(a); + compareFunc=f; + FuncStack=Stack; + stable_sort(c->begin(),c->end(),compareFunction); + {Stack->push<array*>(c); return;} +} + +#line 830 "runarray.in" +// bool all(boolarray *a); +void gen_runarray36(stack *Stack) +{ + boolarray * a=vm::pop<boolarray *>(Stack); +#line 831 "runarray.in" + size_t size=checkArray(a); + bool c=true; + for(size_t i=0; i < size; i++) + if(!get<bool>((*a)[i])) {c=false; break;} + {Stack->push<bool>(c); return;} +} + +#line 839 "runarray.in" +// boolarray* !(boolarray* a); +void gen_runarray37(stack *Stack) +{ + boolarray* a=vm::pop<boolarray*>(Stack); +#line 840 "runarray.in" + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) + (*c)[i]=!read<bool>(a,i); + {Stack->push<boolarray*>(c); return;} +} + +#line 848 "runarray.in" +// Int sum(boolarray *a); +void gen_runarray38(stack *Stack) +{ + boolarray * a=vm::pop<boolarray *>(Stack); +#line 849 "runarray.in" + size_t size=checkArray(a); + Int sum=0; + for(size_t i=0; i < size; i++) + sum += read<bool>(a,i) ? 1 : 0; + {Stack->push<Int>(sum); return;} +} + +#line 857 "runarray.in" +void arrayCopy(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 858 "runarray.in" + {Stack->push<array*>(copyArray(a)); return;} +} + +#line 862 "runarray.in" +void arrayConcat(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 863 "runarray.in" + // a is an array of arrays to be concatenated together. + // The signature is + // T[] concat(... T[][] a); + + size_t numArgs=checkArray(a); + size_t resultSize=0; + for (size_t i=0; i < numArgs; ++i) { + resultSize += checkArray(a->read<array *>(i)); + } + + array *result=new array(resultSize); + + size_t ri=0; + for (size_t i=0; i < numArgs; ++i) { + array *arg=a->read<array *>(i); + size_t size=checkArray(arg); + + for (size_t j=0; j < size; ++j) { + (*result)[ri]=(*arg)[j]; + ++ri; + } + } + + {Stack->push<array*>(result); return;} +} + +#line 890 "runarray.in" +void array2Copy(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 891 "runarray.in" + {Stack->push<array*>(copyArray2(a)); return;} +} + +#line 895 "runarray.in" +void array3Copy(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 896 "runarray.in" + {Stack->push<array*>(copyArray3(a)); return;} +} + +#line 900 "runarray.in" +void array2Transpose(stack *Stack) +{ + array * a=vm::pop<array *>(Stack); +#line 901 "runarray.in" + size_t asize=checkArray(a); + array *c=new array(0); + for(size_t i=0; i < asize; i++) { + size_t ip=i+1; + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + size_t csize=checkArray(c); + if(csize < aisize) { + c->resize(aisize); + for(size_t j=csize; j < aisize; j++) { + (*c)[j]=new array(ip); + } + } + for(size_t j=0; j < aisize; j++) { + array *cj=read<array*>(c,j); + if(checkArray(cj) < ip) cj->resize(ip); + (*cj)[i]=(*ai)[j]; + } + } + {Stack->push<array*>(c); return;} +} + +// a is a rectangular 3D array; perm is an Int array indicating the type of +// permutation (021 or 120, etc; original is 012). +// Transpose by sending respective members to the permutated locations: +// return the array obtained by putting a[i][j][k] into position perm{ijk}. +#line 928 "runarray.in" +void array3Transpose(stack *Stack) +{ + array * perm=vm::pop<array *>(Stack); + array * a=vm::pop<array *>(Stack); +#line 929 "runarray.in" + const size_t DIM=3; + + if(checkArray(perm) != DIM) { + ostringstream buf; + buf << "permutation array must have length " << DIM; + error(buf); + } + + size_t* size=new size_t[DIM]; + for(size_t i=0; i < DIM; ++i) size[i]=DIM; + + for(size_t i=0; i < DIM; ++i) { + Int p=read<Int>(perm,i); + size_t P=(size_t) p; + if(p < 0 || P >= DIM) { + ostringstream buf; + buf << "permutation index out of range: " << p; + error(buf); + } + size[P]=P; + } + + for(size_t i=0; i < DIM; ++i) + if(size[i] == DIM) error("permutation indices must be distinct"); + + static const char *rectangular= + "3D transpose implemented for rectangular matrices only"; + + size_t isize=size[0]=checkArray(a); + array *a0=read<array*>(a,0); + size[1]=checkArray(a0); + array *a00=read<array*>(a0,0); + size[2]=checkArray(a00); + for(size_t i=0; i < isize; i++) { + array *ai=read<array*>(a,i); + size_t jsize=checkArray(ai); + if(jsize != size[1]) error(rectangular); + for(size_t j=0; j < jsize; j++) { + array *aij=read<array*>(ai,j); + if(checkArray(aij) != size[2]) error(rectangular); + } + } + + size_t perm0=(size_t) read<Int>(perm,0); + size_t perm1=(size_t) read<Int>(perm,1); + size_t perm2=(size_t) read<Int>(perm,2); + + size_t sizep0=size[perm0]; + size_t sizep1=size[perm1]; + size_t sizep2=size[perm2]; + + array *c=new array(sizep0); + for(size_t i=0; i < sizep0; ++i) { + array *ci=new array(sizep1); + (*c)[i]=ci; + for(size_t j=0; j < sizep1; ++j) { + array *cij=new array(sizep2); + (*ci)[j]=cij; + } + } + + size_t* i=new size_t[DIM]; + + for(i[0]=0; i[0] < size[0]; ++i[0]) { + array *a0=read<array*>(a,i[0]); + for(i[1]=0; i[1] < size[1]; ++i[1]) { + array *a1=read<array*>(a0,i[1]); + for(i[2]=0; i[2] < size[2]; ++i[2]) { + array *c0=read<array*>(c,i[perm0]); + array *c1=read<array*>(c0,i[perm1]); + (*c1)[i[perm2]]=read<real>(a1,i[2]); + } + } + } + + delete [] i; + delete [] size; + + {Stack->push<array*>(c); return;} +} + +// In a boolean array, find the index of the nth true value or -1 if not found +// If n is negative, search backwards. +#line 1013 "runarray.in" +// Int find(boolarray *a, Int n=1); +void gen_runarray45(stack *Stack) +{ + Int n=vm::pop<Int>(Stack,1); + boolarray * a=vm::pop<boolarray *>(Stack); +#line 1014 "runarray.in" + size_t size=checkArray(a); + Int j=-1; + if(n > 0) + for(size_t i=0; i < size; i++) + if(read<bool>(a,i)) { + n--; if(n == 0) {j=(Int) i; break;} + } + if(n < 0) + for(size_t i=size; i > 0;) + if(read<bool>(a,--i)) { + n++; if(n == 0) {j=(Int) i; break;} + } + {Stack->push<Int>(j); return;} +} + +// construct vector obtained by replacing those elements of b for which the +// corresponding elements of a are false by the corresponding element of c. +#line 1032 "runarray.in" +void arrayConditional(stack *Stack) +{ + array * c=vm::pop<array *>(Stack); + array * b=vm::pop<array *>(Stack); + array * a=vm::pop<array *>(Stack); +#line 1033 "runarray.in" + size_t size=checkArray(a); + array *r=new array(size); + if(b && c) { + checkArrays(a,b); + checkArrays(b,c); + for(size_t i=0; i < size; i++) + (*r)[i]=read<bool>(a,i) ? (*b)[i] : (*c)[i]; + } else { + r->clear(); + if(b) { + checkArrays(a,b); + for(size_t i=0; i < size; i++) + if(read<bool>(a,i)) r->push((*b)[i]); + } else if(c) { + checkArrays(a,c); + for(size_t i=0; i < size; i++) + if(!read<bool>(a,i)) r->push((*c)[i]); + } + } + {Stack->push<array*>(r); return;} +} + +// Return an n x n identity matrix. +#line 1057 "runarray.in" +// realarray2* identity(Int n); +void gen_runarray47(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); +#line 1058 "runarray.in" + {Stack->push<realarray2*>(Identity(n)); return;} +} + +// Return the diagonal matrix with diagonal entries given by a. +#line 1063 "runarray.in" +void diagonal(stack *Stack) +{ + realarray * a=vm::pop<realarray *>(Stack); +#line 1064 "runarray.in" + size_t n=checkArray(a); + array *c=new array(n); + for(size_t i=0; i < n; ++i) { + array *ci=new array(n); + (*c)[i]=ci; + for(size_t j=0; j < i; ++j) + (*ci)[j]=0.0; + (*ci)[i]=read<real>(a,i); + for(size_t j=i+1; j < n; ++j) + (*ci)[j]=0.0; + } + {Stack->push<realarray2*>(c); return;} +} + +// Return the inverse of an n x n matrix a using Gauss-Jordan elimination. +#line 1080 "runarray.in" +// realarray2* inverse(realarray2 *a); +void gen_runarray49(stack *Stack) +{ + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1081 "runarray.in" + a=copyArray2(a); + size_t n=checkArray(a); + checkSquare(a); + + inverseAllocate(n); + + for(size_t i=0; i < n; i++) + pivot[i]=0; + + size_t col=0, row=0; + // This is the main loop over the columns to be reduced. + for(size_t i=0; i < n; i++) { + real big=0.0; + // This is the outer loop of the search for a pivot element. + for(size_t j=0; j < n; j++) { + array *aj=read<array*>(a,j); + if(pivot[j] != 1) { + for(size_t k=0; k < n; k++) { + if(pivot[k] == 0) { + real temp=fabs(read<real>(aj,k)); + if(temp >= big) { + big=temp; + row=j; + col=k; + } + } else if(pivot[k] > 1) { + inverseDeallocate(); + error(singular); + } + } + } + } + ++(pivot[col]); + + // Interchange rows, if needed, to put the pivot element on the diagonal. + array *acol=read<array*>(a,col); + if(row != col) { + array *arow=read<array*>(a,row); + for(size_t l=0; l < n; l++) { + real temp=read<real>(arow,l); + (*arow)[l]=read<real>(acol,l); + (*acol)[l]=temp; + } + } + + Row[i]=row; + Col[i]=col; + + // Divide the pivot row by the pivot element. + real denom=read<real>(acol,col); + if(denom == 0.0) { + inverseDeallocate(); + error(singular); + } + real pivinv=1.0/denom; + (*acol)[col]=1.0; + for(size_t l=0; l < n; l++) + (*acol)[l]=read<real>(acol,l)*pivinv; + + // Reduce all rows except for the pivoted one. + for(size_t k=0; k < n; k++) { + if(k != col) { + array *ak=read<array*>(a,k); + real akcol=read<real>(ak,col); + (*ak)[col]=0.0; + for(size_t l=0; l < n; l++) + (*ak)[l]=read<real>(ak,l)-read<real>(acol,l)*akcol; + } + } + } + + // Unscramble the inverse matrix in view of the column interchanges. + for(size_t l=n; l > 0;) { + l--; + size_t r=Row[l]; + size_t c=Col[l]; + if(r != c) { + for(size_t k=0; k < n; k++) { + array *ak=read<array*>(a,k); + real temp=read<real>(ak,r); + (*ak)[r]=read<real>(ak,c); + (*ak)[c]=temp; + } + } + } + inverseDeallocate(); + {Stack->push<realarray2*>(a); return;} +} + +// Solve the linear equation ax=b by LU decomposition, returning the +// solution x, where a is an n x n matrix and b is an array of length n. +// If no solution exists, return an empty array. +#line 1174 "runarray.in" +// realarray* solve(realarray2 *a, realarray *b, bool warn=true); +void gen_runarray50(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + realarray * b=vm::pop<realarray *>(Stack); + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1175 "runarray.in" + size_t n=checkArray(a); + + if(n == 0) {Stack->push<realarray*>(new array(0)); return;} + + size_t m=checkArray(b); + if(m != n) error(incommensurate); + + real *A=copyArray2C(a); + size_t *index=new size_t[n]; + + if(LUdecompose(A,n,index,warn) == 0) + {Stack->push<realarray*>(new array(0)); return;} + + array *x=new array(n); + + real *B=copyArrayC(b); + + for(size_t i=0; i < n; ++i) { + size_t ip=index[i]; + real sum=B[ip]; + B[ip]=B[i]; + real *Ai=A+i*n; + for(size_t j=0; j < i; ++j) + sum -= Ai[j]*B[j]; + B[i]=sum; + } + + for(size_t i=n; i > 0;) { + --i; + real sum=B[i]; + real *Ai=A+i*n; + for(size_t j=i+1; j < n; ++j) + sum -= Ai[j]*B[j]; + B[i]=sum/Ai[i]; + } + + for(size_t i=0; i < n; ++i) + (*x)[i]=B[i]; + + delete[] index; + delete[] B; + delete[] A; + + {Stack->push<realarray*>(x); return;} +} + +// Solve the linear equation ax=b by LU decomposition, returning the +// solution x, where a is an n x n matrix and b is an n x m matrix. +// If no solution exists, return an empty array. +#line 1225 "runarray.in" +// realarray2* solve(realarray2 *a, realarray2 *b, bool warn=true); +void gen_runarray51(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + realarray2 * b=vm::pop<realarray2 *>(Stack); + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1226 "runarray.in" + size_t n=checkArray(a); + + if(n == 0) {Stack->push<realarray2*>(new array(0)); return;} + + if(checkArray(b) != n) error(incommensurate); + size_t m=checkArray(read<array*>(b,0)); + + real *A=copyArray2C(a); + real *B=copyArray2C(b,false); + + size_t *index=new size_t[n]; + + if(LUdecompose(A,n,index,warn) == 0) + {Stack->push<realarray2*>(new array(0)); return;} + + array *x=new array(n); + + for(size_t i=0; i < n; ++i) { + real *Ai=A+i*n; + real *Bi=B+i*m; + real *Bip=B+index[i]*m; + for(size_t k=0; k < m; ++k) { + real sum=Bip[k]; + Bip[k]=Bi[k]; + size_t jk=k; + for(size_t j=0; j < i; ++j, jk += m) + sum -= Ai[j]*B[jk]; + Bi[k]=sum; + } + } + + for(size_t i=n; i > 0;) { + --i; + real *Ai=A+i*n; + real *Bi=B+i*m; + for(size_t k=0; k < m; ++k) { + real sum=Bi[k]; + size_t jk=(i+1)*m+k; + for(size_t j=i+1; j < n; ++j, jk += m) + sum -= Ai[j]*B[jk]; + Bi[k]=sum/Ai[i]; + } + } + + for(size_t i=0; i < n; ++i) { + real *Bi=B+i*m; + array *xi=new array(m); + (*x)[i]=xi; + for(size_t j=0; j < m; ++j) + (*xi)[j]=Bi[j]; + } + + delete[] index; + delete[] B; + delete[] A; + + {Stack->push<realarray2*>(x); return;} +} + +// Compute the determinant of an n x n matrix. +#line 1287 "runarray.in" +// real determinant(realarray2 *a); +void gen_runarray52(stack *Stack) +{ + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1288 "runarray.in" + real *A=copyArray2C(a); + size_t n=checkArray(a); + + real det=LUdecompose(A,n,NULL,false); + size_t n1=n+1; + for(size_t i=0; i < n; ++i) + det *= A[i*n1]; + + delete[] A; + + {Stack->push<real>(det); return;} +} + +#line 1302 "runarray.in" +// realarray* *(realarray2 *a, realarray *b); +void gen_runarray53(stack *Stack) +{ + realarray * b=vm::pop<realarray *>(Stack); + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1303 "runarray.in" + size_t n=checkArray(a); + size_t m=checkArray(b); + array *c=new array(n); + real *B=copyArrayC(b); + for(size_t i=0; i < n; ++i) { + array *ai=read<array*>(a,i); + if(checkArray(ai) != m) error(incommensurate); + real sum=0.0; + for(size_t j=0; j < m; ++j) + sum += read<real>(ai,j)*B[j]; + (*c)[i]=sum; + } + delete[] B; + {Stack->push<realarray*>(c); return;} +} + +#line 1320 "runarray.in" +// realarray* *(realarray *a, realarray2 *b); +void gen_runarray54(stack *Stack) +{ + realarray2 * b=vm::pop<realarray2 *>(Stack); + realarray * a=vm::pop<realarray *>(Stack); +#line 1321 "runarray.in" + size_t n=checkArray(a); + if(n != checkArray(b)) error(incommensurate); + real *A=copyArrayC(a); + + array **B=new array*[n]; + array *bk=read<array *>(b,0); + B[0]=bk; + size_t m=bk->size(); + for(size_t k=1; k < n; k++) { + array *bk=read<array *>(b,k); + if(bk->size() != m) error(incommensurate); + B[k]=bk; + } + array *c=new array(m); + + for(size_t i=0; i < m; ++i) { + real sum=0.0; + for(size_t k=0; k < n; ++k) + sum += A[k]*read<real>(B[k],i); + (*c)[i]=sum; + } + delete[] B; + delete[] A; + {Stack->push<realarray*>(c); return;} +} + +#line 1348 "runarray.in" +// realarray2* *(realarray2 *a, realarray2 *b); +void gen_runarray55(stack *Stack) +{ + realarray2 * b=vm::pop<realarray2 *>(Stack); + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1349 "runarray.in" + size_t n=checkArray(a); + + size_t nb=checkArray(b); + size_t na0=n == 0 ? 0 : checkArray(read<array*>(a,0)); + if(na0 != nb) + error(incommensurate); + + size_t nb0=nb == 0 ? 0 : checkArray(read<array*>(b,0)); + + array *c=new array(n); + + real *A=copyArray2C(a,false); + real *B=copyArray2C(b,false); + + for(size_t i=0; i < n; ++i) { + real *Ai=A+i*nb; + array *ci=new array(nb0); + (*c)[i]=ci; + for(size_t j=0; j < nb0; ++j) { + real sum=0.0; + size_t kj=j; + for(size_t k=0; k < nb; ++k, kj += nb0) + sum += Ai[k]*B[kj]; + (*ci)[j]=sum; + } + } + + delete[] B; + delete[] A; + + {Stack->push<realarray2*>(c); return;} +} + +#line 1383 "runarray.in" +// triple *(realarray2 *t, triple v); +void gen_runarray56(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); + realarray2 * t=vm::pop<realarray2 *>(Stack); +#line 1384 "runarray.in" + {Stack->push<triple>(*t*v); return;} +} + +#line 1388 "runarray.in" +// pair project(triple v, realarray2 *t); +void gen_runarray57(stack *Stack) +{ + realarray2 * t=vm::pop<realarray2 *>(Stack); + triple v=vm::pop<triple>(Stack); +#line 1389 "runarray.in" + size_t n=checkArray(t); + if(n != 4) error(incommensurate); + array *t0=read<array*>(t,0); + array *t1=read<array*>(t,1); + array *t3=read<array*>(t,3); + if(checkArray(t0) != 4 || checkArray(t1) != 4 || checkArray(t3) != 4) + error(incommensurate); + + real x=v.getx(); + real y=v.gety(); + real z=v.getz(); + + real f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ + read<real>(t3,3); + if(f == 0.0) dividebyzero(); + f=1.0/f; + + {Stack->push<pair>(pair((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ + read<real>(t0,3))*f, + (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ + read<real>(t1,3))*f)); return;} +} + +// Compute the dot product of vectors a and b. +#line 1414 "runarray.in" +// real dot(realarray *a, realarray *b); +void gen_runarray58(stack *Stack) +{ + realarray * b=vm::pop<realarray *>(Stack); + realarray * a=vm::pop<realarray *>(Stack); +#line 1415 "runarray.in" + size_t n=checkArrays(a,b); + real sum=0.0; + for(size_t i=0; i < n; ++i) + sum += read<real>(a,i)*read<real>(b,i); + {Stack->push<real>(sum); return;} +} + +// Solve the problem L\inv f, where f is an n vector and L is the n x n matrix +// +// [ b[0] c[0] a[0] ] +// [ a[1] b[1] c[1] ] +// [ a[2] b[2] c[2] ] +// [ ... ] +// [ c[n-1] a[n-1] b[n-1] ] +#line 1430 "runarray.in" +// realarray* tridiagonal(realarray *a, realarray *b, realarray *c, realarray *f); +void gen_runarray59(stack *Stack) +{ + realarray * f=vm::pop<realarray *>(Stack); + realarray * c=vm::pop<realarray *>(Stack); + realarray * b=vm::pop<realarray *>(Stack); + realarray * a=vm::pop<realarray *>(Stack); +#line 1431 "runarray.in" + size_t n=checkArrays(a,b); + checkEqual(n,checkArray(c)); + checkEqual(n,checkArray(f)); + + array *up=new array(n); + array& u=*up; + + if(n == 0) {Stack->push<realarray*>(up); return;} + + // Special case: zero Dirichlet boundary conditions + if(read<real>(a,0) == 0.0 && read<real>(c,n-1) == 0.0) { + real temp=read<real>(b,0); + if(temp == 0.0) dividebyzero(); + temp=1.0/temp; + + real *work=new real[n]; + u[0]=read<real>(f,0)*temp; + work[0]=-read<real>(c,0)*temp; + + for(size_t i=1; i < n; i++) { + real temp=(read<real>(b,i)+read<real>(a,i)*work[i-1]); + if(temp == 0.0) {delete[] work; dividebyzero();} + temp=1.0/temp; + u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*temp; + work[i]=-read<real>(c,i)*temp; + } + + for(size_t i=n-1; i >= 1; i--) + u[i-1]=read<real>(u,i-1)+work[i-1]*read<real>(u,i); + + delete[] work; + {Stack->push<realarray*>(up); return;} + } + + real binv=read<real>(b,0); + if(binv == 0.0) dividebyzero(); + binv=1.0/binv; + + if(n == 1) {u[0]=read<real>(f,0)*binv; {Stack->push<realarray*>(up); return;}} + if(n == 2) { + real factor=(read<real>(b,0)*read<real>(b,1)- + read<real>(a,0)*read<real>(c,1)); + if(factor== 0.0) dividebyzero(); + factor=1.0/factor; + real temp=(read<real>(b,0)*read<real>(f,1)- + read<real>(c,1)*read<real>(f,0))*factor; + u[0]=(read<real>(b,1)*read<real>(f,0)- + read<real>(a,0)*read<real>(f,1))*factor; + u[1]=temp; + {Stack->push<realarray*>(up); return;} + } + + real *gamma=new real[n-2]; + real *delta=new real[n-2]; + + gamma[0]=read<real>(c,0)*binv; + delta[0]=read<real>(a,0)*binv; + u[0]=read<real>(f,0)*binv; + real beta=read<real>(c,n-1); + real fn=read<real>(f,n-1)-beta*read<real>(u,0); + real alpha=read<real>(b,n-1)-beta*delta[0]; + + for(size_t i=1; i <= n-3; i++) { + real alphainv=read<real>(b,i)-read<real>(a,i)*gamma[i-1]; + if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} + alphainv=1.0/alphainv; + beta *= -gamma[i-1]; + gamma[i]=read<real>(c,i)*alphainv; + u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*alphainv; + fn -= beta*read<real>(u,i); + delta[i]=-read<real>(a,i)*delta[i-1]*alphainv; + alpha -= beta*delta[i]; + } + + real alphainv=read<real>(b,n-2)-read<real>(a,n-2)*gamma[n-3]; + if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} + alphainv=1.0/alphainv; + u[n-2]=(read<real>(f,n-2)-read<real>(a,n-2)*read<real>(u,n-3)) + *alphainv; + beta=read<real>(a,n-1)-beta*gamma[n-3]; + real dnm1=(read<real>(c,n-2)-read<real>(a,n-2)*delta[n-3])*alphainv; + real temp=alpha-beta*dnm1; + if(temp == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} + u[n-1]=temp=(fn-beta*read<real>(u,n-2))/temp; + u[n-2]=read<real>(u,n-2)-dnm1*temp; + + for(size_t i=n-2; i >= 1; i--) + u[i-1]=read<real>(u,i-1)-gamma[i-1]*read<real>(u,i)-delta[i-1]*temp; + + delete[] delta; + delete[] gamma; + + {Stack->push<realarray*>(up); return;} +} + +// Root solve by Newton-Raphson +#line 1528 "runarray.in" +// real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x, bool verbose=false); +void gen_runarray60(stack *Stack) +{ + bool verbose=vm::pop<bool>(Stack,false); + real x=vm::pop<real>(Stack); + callableReal * fprime=vm::pop<callableReal *>(Stack); + callableReal * f=vm::pop<callableReal *>(Stack); + Int iterations=vm::pop<Int>(Stack,100); +#line 1530 "runarray.in" + static const real fuzz=1000.0*DBL_EPSILON; + Int i=0; + size_t oldPrec=0; + if(verbose) + oldPrec=cout.precision(DBL_DIG); + + real diff=DBL_MAX; + real lastdiff; + do { + real x0=x; + + Stack->push(x); + fprime->call(Stack); + real dfdx=pop<real>(Stack); + + if(dfdx == 0.0) { + x=DBL_MAX; + break; + } + + Stack->push(x); + f->call(Stack); + real fx=pop<real>(Stack); + + x -= fx/dfdx; + + lastdiff=diff; + + if(verbose) + cout << "Newton-Raphson: " << x << endl; + + diff=fabs(x-x0); + if(++i == iterations) { + x=DBL_MAX; + break; + } + } while (diff != 0.0 && (diff < lastdiff || diff > fuzz*fabs(x))); + + if(verbose) + cout.precision(oldPrec); + {Stack->push<real>(x); return;} +} + +// Root solve by Newton-Raphson bisection +// cf. routine rtsafe (Press et al., Numerical Recipes, 1991). +#line 1576 "runarray.in" +// real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x1, real x2, bool verbose=false); +void gen_runarray61(stack *Stack) +{ + bool verbose=vm::pop<bool>(Stack,false); + real x2=vm::pop<real>(Stack); + real x1=vm::pop<real>(Stack); + callableReal * fprime=vm::pop<callableReal *>(Stack); + callableReal * f=vm::pop<callableReal *>(Stack); + Int iterations=vm::pop<Int>(Stack,100); +#line 1578 "runarray.in" + static const real fuzz=1000.0*DBL_EPSILON; + size_t oldPrec=0; + if(verbose) + oldPrec=cout.precision(DBL_DIG); + + Stack->push(x1); + f->call(Stack); + real f1=pop<real>(Stack); + if(f1 == 0.0) {Stack->push<real>(x1); return;} + + Stack->push(x2); + f->call(Stack); + real f2=pop<real>(Stack); + if(f2 == 0.0) {Stack->push<real>(x2); return;} + + if((f1 > 0.0 && f2 > 0.0) || (f1 < 0.0 && f2 < 0.0)) { + ostringstream buf; + buf << "root not bracketed, f(x1)=" << f1 << ", f(x2)=" << f2 << endl; + error(buf); + } + + real x=0.5*(x1+x2); + real dxold=fabs(x2-x1); + if(f1 > 0.0) { + real temp=x1; + x1=x2; + x2=temp; + } + + if(verbose) + cout << "midpoint: " << x << endl; + + real dx=dxold; + Stack->push(x); + f->call(Stack); + real y=pop<real>(Stack); + + Stack->push(x); + fprime->call(Stack); + real dy=pop<real>(Stack); + + Int j; + for(j=0; j < iterations; j++) { + if(((x-x2)*dy-y)*((x-x1)*dy-y) >= 0.0 || fabs(2.0*y) > fabs(dxold*dy)) { + dxold=dx; + dx=0.5*(x2-x1); + x=x1+dx; + if(verbose) + cout << "bisection: " << x << endl; + if(x1 == x) {Stack->push<real>(x); return;} + } else { + dxold=dx; + dx=y/dy; + real temp=x; + x -= dx; + if(verbose) + cout << "Newton-Raphson: " << x << endl; + if(temp == x) {Stack->push<real>(x); return;} + } + if(fabs(dx) < fuzz*fabs(x)) {Stack->push<real>(x); return;} + + Stack->push(x); + f->call(Stack); + y=pop<real>(Stack); + + Stack->push(x); + fprime->call(Stack); + dy=pop<real>(Stack); + + if(y < 0.0) x1=x; + else x2=x; + } + if(verbose) + cout.precision(oldPrec); + {Stack->push<real>((j == iterations) ? DBL_MAX : x); return;} +} + +#line 1656 "runarray.in" +// real simpson(callableReal *f, real a, real b, real acc=DBL_EPSILON, real dxmax=0); +void gen_runarray62(stack *Stack) +{ + real dxmax=vm::pop<real>(Stack,0); + real acc=vm::pop<real>(Stack,DBL_EPSILON); + real b=vm::pop<real>(Stack); + real a=vm::pop<real>(Stack); + callableReal * f=vm::pop<callableReal *>(Stack); +#line 1658 "runarray.in" + real integral; + if(dxmax == 0) dxmax=b-a; + Func=f; + FuncStack=Stack; + if(!simpson(integral,wrapFunction,a,b,acc,dxmax)) + error("nesting capacity exceeded in simpson"); + {Stack->push<real>(integral); return;} +} + +// Compute the fast Fourier transform of a pair array +#line 1669 "runarray.in" +void pairArrayFFT(stack *Stack) +{ + Int sign=vm::pop<Int>(Stack,1); + pairarray * a=vm::pop<pairarray *>(Stack); +#line 1670 "runarray.in" + unsigned n=(unsigned) checkArray(a); +#ifdef HAVE_LIBFFTW3 + array *c=new array(n); + if(n) { + Complex *f=FFTWComplex(n); + fft1d Forward(n,intcast(sign),f); + + for(size_t i=0; i < n; i++) { + pair z=read<pair>(a,i); + f[i]=Complex(z.getx(),z.gety()); + } + Forward.fft(f); + + for(size_t i=0; i < n; i++) { + Complex z=f[i]; + (*c)[i]=pair(z.real(),z.imag()); + } + FFTWdelete(f); + } +#else + unused(&n); + unused(&sign); + array *c=new array(0); +#endif // HAVE_LIBFFTW3 + {Stack->push<pairarray*>(c); return;} +} + +#line 1698 "runarray.in" +// Intarray2* triangulate(pairarray *z); +void gen_runarray64(stack *Stack) +{ + pairarray * z=vm::pop<pairarray *>(Stack); +#line 1699 "runarray.in" + size_t nv=checkArray(z); +// Call robust version of Gilles Dumoulin's port of Paul Bourke's +// triangulation code. + + XYZ *pxyz=new XYZ[nv+3]; + ITRIANGLE *V=new ITRIANGLE[4*nv]; + + for(size_t i=0; i < nv; ++i) { + pair w=read<pair>(z,i); + pxyz[i].p[0]=w.getx(); + pxyz[i].p[1]=w.gety(); + pxyz[i].i=(Int) i; + } + + Int ntri; + Triangulate((Int) nv,pxyz,V,ntri,true,false); + + size_t nt=(size_t) ntri; + array *t=new array(nt); + for(size_t i=0; i < nt; ++i) { + array *ti=new array(3); + (*t)[i]=ti; + ITRIANGLE *Vi=V+i; + (*ti)[0]=pxyz[Vi->p1].i; + (*ti)[1]=pxyz[Vi->p2].i; + (*ti)[2]=pxyz[Vi->p3].i; + } + + delete[] V; + delete[] pxyz; + {Stack->push<Intarray2*>(t); return;} +} + +#line 1733 "runarray.in" +// real norm(realarray *a); +void gen_runarray65(stack *Stack) +{ + realarray * a=vm::pop<realarray *>(Stack); +#line 1734 "runarray.in" + size_t n=checkArray(a); + real M=0.0; + for(size_t i=0; i < n; ++i) { + real x=fabs(vm::read<real>(a,i)); + if(x > M) M=x; + } + {Stack->push<real>(M); return;} +} + +#line 1744 "runarray.in" +// real norm(realarray2 *a); +void gen_runarray66(stack *Stack) +{ + realarray2 * a=vm::pop<realarray2 *>(Stack); +#line 1745 "runarray.in" + size_t n=checkArray(a); + real M=0.0; + for(size_t i=0; i < n; ++i) { + vm::array *ai=vm::read<vm::array*>(a,i); + size_t m=checkArray(ai); + for(size_t j=0; j < m; ++j) { + real a=fabs(vm::read<real>(ai,j)); + if(a > M) M=a; + } + } + {Stack->push<real>(M); return;} +} + +#line 1759 "runarray.in" +// real norm(triplearray2 *a); +void gen_runarray67(stack *Stack) +{ + triplearray2 * a=vm::pop<triplearray2 *>(Stack); +#line 1760 "runarray.in" + size_t n=checkArray(a); + real M=0.0; + for(size_t i=0; i < n; ++i) { + vm::array *ai=vm::read<vm::array*>(a,i); + size_t m=checkArray(ai); + for(size_t j=0; j < m; ++j) { + real a=vm::read<triple>(ai,j).abs2(); + if(a > M) M=a; + } + } + {Stack->push<real>(sqrt(M)); return;} +} + +#line 1774 "runarray.in" +// real change2(triplearray2 *a); +void gen_runarray68(stack *Stack) +{ + triplearray2 * a=vm::pop<triplearray2 *>(Stack); +#line 1775 "runarray.in" + size_t n=checkArray(a); + if(n == 0) {Stack->push<real>(0.0); return;} + + vm::array *a0=vm::read<vm::array*>(a,0); + size_t m=checkArray(a0); + if(m == 0) {Stack->push<real>(0.0); return;} + triple a00=vm::read<triple>(a0,0); + real M=0.0; + + for(size_t i=0; i < n; ++i) { + vm::array *ai=vm::read<vm::array*>(a,i); + size_t m=checkArray(ai); + for(size_t j=0; j < m; ++j) { + real a=(vm::read<triple>(ai,j)-a00).abs2(); + if(a > M) M=a; + } + } + {Stack->push<real>(M); return;} +} + +#line 1796 "runarray.in" +// triple minbezier(triplearray2 *P, triple b); +void gen_runarray69(stack *Stack) +{ + triple b=vm::pop<triple>(Stack); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); +#line 1797 "runarray.in" + real *A=copyTripleArray2Components(P,true,4); + b=triple(bound(A,::min,b.getx(),sqrtFuzz*norm(A,16)), + bound(A+16,::min,b.gety(),sqrtFuzz*norm(A+16,16)), + bound(A+32,::min,b.getz(),sqrtFuzz*norm(A+32,16))); + delete[] A; + {Stack->push<triple>(b); return;} +} + +#line 1806 "runarray.in" +// triple maxbezier(triplearray2 *P, triple b); +void gen_runarray70(stack *Stack) +{ + triple b=vm::pop<triple>(Stack); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); +#line 1807 "runarray.in" + real *A=copyTripleArray2Components(P,true,4); + b=triple(bound(A,::max,b.getx(),sqrtFuzz*norm(A,16)), + bound(A+16,::max,b.gety(),sqrtFuzz*norm(A+16,16)), + bound(A+32,::max,b.getz(),sqrtFuzz*norm(A+32,16))); + delete[] A; + {Stack->push<triple>(b); return;} +} + +#line 1816 "runarray.in" +// pair minratio(triplearray2 *P, pair b); +void gen_runarray71(stack *Stack) +{ + pair b=vm::pop<pair>(Stack); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); +#line 1817 "runarray.in" + triple *A=copyTripleArray2C(P,true,4); + real fuzz=sqrtFuzz*norm(A,16); + b=pair(bound(A,::min,xratio,b.getx(),fuzz), + bound(A,::min,yratio,b.gety(),fuzz)); + delete[] A; + {Stack->push<pair>(b); return;} +} + +#line 1826 "runarray.in" +// pair maxratio(triplearray2 *P, pair b); +void gen_runarray72(stack *Stack) +{ + pair b=vm::pop<pair>(Stack); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); +#line 1827 "runarray.in" + triple *A=copyTripleArray2C(P,true,4); + real fuzz=sqrtFuzz*norm(A,16); + b=pair(bound(A,::max,xratio,b.getx(),fuzz), + bound(A,::max,yratio,b.gety(),fuzz)); + delete[] A; + {Stack->push<pair>(b); return;} +} + +} // namespace run + +namespace trans { + +void gen_runarray_venv(venv &ve) +{ +#line 473 "runarray.in" + REGISTER_BLTIN(run::emptyArray,"emptyArray"); +#line 479 "runarray.in" + REGISTER_BLTIN(run::newDeepArray,"newDeepArray"); +#line 501 "runarray.in" + REGISTER_BLTIN(run::newInitializedArray,"newInitializedArray"); +#line 516 "runarray.in" + REGISTER_BLTIN(run::newAppendedArray,"newAppendedArray"); +#line 532 "runarray.in" + REGISTER_BLTIN(run::newDuplicateArray,"newDuplicateArray"); +#line 542 "runarray.in" + REGISTER_BLTIN(run::arrayRead,"arrayRead"); +#line 554 "runarray.in" + REGISTER_BLTIN(run::arraySliceRead,"arraySliceRead"); +#line 561 "runarray.in" + REGISTER_BLTIN(run::arraySliceReadToEnd,"arraySliceReadToEnd"); +#line 569 "runarray.in" + REGISTER_BLTIN(run::arrayArrayRead,"arrayArrayRead"); +#line 578 "runarray.in" + REGISTER_BLTIN(run::arrayWrite,"arrayWrite"); +#line 594 "runarray.in" + REGISTER_BLTIN(run::arraySliceWrite,"arraySliceWrite"); +#line 602 "runarray.in" + REGISTER_BLTIN(run::arraySliceWriteToEnd,"arraySliceWriteToEnd"); +#line 610 "runarray.in" + REGISTER_BLTIN(run::arrayLength,"arrayLength"); +#line 616 "runarray.in" + REGISTER_BLTIN(run::arrayKeys,"arrayKeys"); +#line 631 "runarray.in" + REGISTER_BLTIN(run::arrayCyclicFlag,"arrayCyclicFlag"); +#line 638 "runarray.in" + REGISTER_BLTIN(run::arraySetCyclicFlag,"arraySetCyclicFlag"); +#line 645 "runarray.in" + REGISTER_BLTIN(run::arrayInitializedHelper,"arrayInitializedHelper"); +#line 656 "runarray.in" + REGISTER_BLTIN(run::arrayInitialized,"arrayInitialized"); +#line 662 "runarray.in" + REGISTER_BLTIN(run::arrayCyclicHelper,"arrayCyclicHelper"); +#line 669 "runarray.in" + REGISTER_BLTIN(run::arrayCyclic,"arrayCyclic"); +#line 675 "runarray.in" + REGISTER_BLTIN(run::arrayPushHelper,"arrayPushHelper"); +#line 683 "runarray.in" + REGISTER_BLTIN(run::arrayPush,"arrayPush"); +#line 689 "runarray.in" + REGISTER_BLTIN(run::arrayAppendHelper,"arrayAppendHelper"); +#line 698 "runarray.in" + REGISTER_BLTIN(run::arrayAppend,"arrayAppend"); +#line 704 "runarray.in" + REGISTER_BLTIN(run::arrayPopHelper,"arrayPopHelper"); +#line 713 "runarray.in" + REGISTER_BLTIN(run::arrayPop,"arrayPop"); +#line 719 "runarray.in" + REGISTER_BLTIN(run::arrayInsertHelper,"arrayInsertHelper"); +#line 730 "runarray.in" + REGISTER_BLTIN(run::arrayInsert,"arrayInsert"); +#line 736 "runarray.in" + REGISTER_BLTIN(run::arrayDelete,"arrayDelete"); +#line 742 "runarray.in" + REGISTER_BLTIN(run::arrayAlias,"arrayAlias"); +#line 747 "runarray.in" + REGISTER_BLTIN(run::arrayIntArray,"arrayIntArray"); +#line 765 "runarray.in" + addFunc(ve, run::gen_runarray31, IntArray(), "complement", formal(IntArray(), "a", false, false), formal(primInt(), "n", false, false)); +#line 784 "runarray.in" + REGISTER_BLTIN(run::arraySequence,"arraySequence"); +#line 797 "runarray.in" + addFunc(ve, run::gen_runarray33, IntArray(), "sequence", formal(primInt(), "n", false, false)); +#line 808 "runarray.in" + REGISTER_BLTIN(run::arrayFunction,"arrayFunction"); +#line 821 "runarray.in" + REGISTER_BLTIN(run::arraySort,"arraySort"); +#line 830 "runarray.in" + addFunc(ve, run::gen_runarray36, primBoolean(), "all", formal(booleanArray(), "a", false, false)); +#line 839 "runarray.in" + addFunc(ve, run::gen_runarray37, booleanArray(), "!", formal(booleanArray(), "a", false, false)); +#line 848 "runarray.in" + addFunc(ve, run::gen_runarray38, primInt(), "sum", formal(booleanArray(), "a", false, false)); +#line 857 "runarray.in" + REGISTER_BLTIN(run::arrayCopy,"arrayCopy"); +#line 862 "runarray.in" + REGISTER_BLTIN(run::arrayConcat,"arrayConcat"); +#line 890 "runarray.in" + REGISTER_BLTIN(run::array2Copy,"array2Copy"); +#line 895 "runarray.in" + REGISTER_BLTIN(run::array3Copy,"array3Copy"); +#line 900 "runarray.in" + REGISTER_BLTIN(run::array2Transpose,"array2Transpose"); +#line 924 "runarray.in" + REGISTER_BLTIN(run::array3Transpose,"array3Transpose"); +#line 1011 "runarray.in" + addFunc(ve, run::gen_runarray45, primInt(), "find", formal(booleanArray(), "a", false, false), formal(primInt(), "n", true, false)); +#line 1030 "runarray.in" + REGISTER_BLTIN(run::arrayConditional,"arrayConditional"); +#line 1056 "runarray.in" + addFunc(ve, run::gen_runarray47, realArray2(), "identity", formal(primInt(), "n", false, false)); +#line 1062 "runarray.in" + REGISTER_BLTIN(run::diagonal,"diagonal"); +#line 1079 "runarray.in" + addFunc(ve, run::gen_runarray49, realArray2(), "inverse", formal(realArray2(), "a", false, false)); +#line 1171 "runarray.in" + addFunc(ve, run::gen_runarray50, realArray(), "solve", formal(realArray2(), "a", false, false), formal(realArray(), "b", false, false), formal(primBoolean(), "warn", true, false)); +#line 1222 "runarray.in" + addFunc(ve, run::gen_runarray51, realArray2(), "solve", formal(realArray2(), "a", false, false), formal(realArray2(), "b", false, false), formal(primBoolean(), "warn", true, false)); +#line 1286 "runarray.in" + addFunc(ve, run::gen_runarray52, primReal(), "determinant", formal(realArray2(), "a", false, false)); +#line 1302 "runarray.in" + addFunc(ve, run::gen_runarray53, realArray(), "*", formal(realArray2(), "a", false, false), formal(realArray(), "b", false, false)); +#line 1320 "runarray.in" + addFunc(ve, run::gen_runarray54, realArray(), "*", formal(realArray(), "a", false, false), formal(realArray2(), "b", false, false)); +#line 1348 "runarray.in" + addFunc(ve, run::gen_runarray55, realArray2(), "*", formal(realArray2(), "a", false, false), formal(realArray2(), "b", false, false)); +#line 1383 "runarray.in" + addFunc(ve, run::gen_runarray56, primTriple(), "*", formal(realArray2(), "t", false, false), formal(primTriple(), "v", false, false)); +#line 1388 "runarray.in" + addFunc(ve, run::gen_runarray57, primPair(), "project", formal(primTriple(), "v", false, false), formal(realArray2(), "t", false, false)); +#line 1413 "runarray.in" + addFunc(ve, run::gen_runarray58, primReal(), "dot", formal(realArray(), "a", false, false), formal(realArray(), "b", false, false)); +#line 1423 "runarray.in" + addFunc(ve, run::gen_runarray59, realArray(), "tridiagonal", formal(realArray(), "a", false, false), formal(realArray(), "b", false, false), formal(realArray(), "c", false, false), formal(realArray(), "f", false, false)); +#line 1527 "runarray.in" + addFunc(ve, run::gen_runarray60, primReal(), "newton", formal(primInt(), "iterations", true, false), formal(realRealFunction(), "f", false, false), formal(realRealFunction(), "fprime", false, false), formal(primReal(), "x", false, false), formal(primBoolean(), "verbose", true, false)); +#line 1574 "runarray.in" + addFunc(ve, run::gen_runarray61, primReal(), "newton", formal(primInt(), "iterations", true, false), formal(realRealFunction(), "f", false, false), formal(realRealFunction(), "fprime", false, false), formal(primReal(), "x1", false, false), formal(primReal(), "x2", false, false), formal(primBoolean(), "verbose", true, false)); +#line 1656 "runarray.in" + addFunc(ve, run::gen_runarray62, primReal(), "simpson", formal(realRealFunction(), "f", false, false), formal(primReal(), "a", false, false), formal(primReal(), "b", false, false), formal(primReal(), "acc", true, false), formal(primReal(), "dxmax", true, false)); +#line 1668 "runarray.in" + REGISTER_BLTIN(run::pairArrayFFT,"pairArrayFFT"); +#line 1698 "runarray.in" + addFunc(ve, run::gen_runarray64, IntArray2(), "triangulate", formal(pairArray(), "z", false, false)); +#line 1733 "runarray.in" + addFunc(ve, run::gen_runarray65, primReal(), "norm", formal(realArray(), "a", false, false)); +#line 1744 "runarray.in" + addFunc(ve, run::gen_runarray66, primReal(), "norm", formal(realArray2(), "a", false, false)); +#line 1759 "runarray.in" + addFunc(ve, run::gen_runarray67, primReal(), "norm", formal(tripleArray2(), "a", false, false)); +#line 1774 "runarray.in" + addFunc(ve, run::gen_runarray68, primReal(), "change2", formal(tripleArray2(), "a", false, false)); +#line 1796 "runarray.in" + addFunc(ve, run::gen_runarray69, primTriple(), "minbezier", formal(tripleArray2(), "p", false, false), formal(primTriple(), "b", false, false)); +#line 1806 "runarray.in" + addFunc(ve, run::gen_runarray70, primTriple(), "maxbezier", formal(tripleArray2(), "p", false, false), formal(primTriple(), "b", false, false)); +#line 1816 "runarray.in" + addFunc(ve, run::gen_runarray71, primPair(), "minratio", formal(tripleArray2(), "p", false, false), formal(primPair(), "b", false, false)); +#line 1826 "runarray.in" + addFunc(ve, run::gen_runarray72, primPair(), "maxratio", formal(tripleArray2(), "p", false, false), formal(primPair(), "b", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runarray.h b/Build/source/utils/asymptote/runarray.h new file mode 100644 index 00000000000..35776b242a5 --- /dev/null +++ b/Build/source/utils/asymptote/runarray.h @@ -0,0 +1,51 @@ +/***** Autogenerated from runarray.in; changes will be overwritten *****/ + +#ifndef runarray_H +#define runarray_H +namespace run { +void emptyArray(vm::stack *); +void newDeepArray(vm::stack *); +void newInitializedArray(vm::stack *); +void newAppendedArray(vm::stack *); +void newDuplicateArray(vm::stack *); +void arrayRead(vm::stack *); +void arraySliceRead(vm::stack *); +void arraySliceReadToEnd(vm::stack *); +void arrayArrayRead(vm::stack *); +void arrayWrite(vm::stack *); +void arraySliceWrite(vm::stack *); +void arraySliceWriteToEnd(vm::stack *); +void arrayLength(vm::stack *); +void arrayKeys(vm::stack *); +void arrayCyclicFlag(vm::stack *); +void arraySetCyclicFlag(vm::stack *); +void arrayInitializedHelper(vm::stack *); +void arrayInitialized(vm::stack *); +void arrayCyclicHelper(vm::stack *); +void arrayCyclic(vm::stack *); +void arrayPushHelper(vm::stack *); +void arrayPush(vm::stack *); +void arrayAppendHelper(vm::stack *); +void arrayAppend(vm::stack *); +void arrayPopHelper(vm::stack *); +void arrayPop(vm::stack *); +void arrayInsertHelper(vm::stack *); +void arrayInsert(vm::stack *); +void arrayDelete(vm::stack *); +void arrayAlias(vm::stack *); +void arrayIntArray(vm::stack *); +void arraySequence(vm::stack *); +void arrayFunction(vm::stack *); +void arraySort(vm::stack *); +void arrayCopy(vm::stack *); +void arrayConcat(vm::stack *); +void array2Copy(vm::stack *); +void array3Copy(vm::stack *); +void array2Transpose(vm::stack *); +void array3Transpose(vm::stack *); +void arrayConditional(vm::stack *); +void diagonal(vm::stack *); +void pairArrayFFT(vm::stack *); +} + +#endif // runarray_H diff --git a/Build/source/utils/asymptote/runarray.in b/Build/source/utils/asymptote/runarray.in new file mode 100644 index 00000000000..61b0f9a485f --- /dev/null +++ b/Build/source/utils/asymptote/runarray.in @@ -0,0 +1,1834 @@ +/***** + * runarray.in + * + * Runtime functions for array operations. + * + *****/ + +pair => primPair() +triple => primTriple() +boolarray* => booleanArray() +Intarray* => IntArray() +Intarray2* => IntArray2() +realarray* => realArray() +realarray2* => realArray2() +pairarray* => pairArray() +triplearray2* => tripleArray2() +callableReal* => realRealFunction() + + +#include "array.h" +#include "arrayop.h" +#include "triple.h" +#include "path3.h" +#include "Delaunay.h" + +#ifdef HAVE_LIBFFTW3 +#include "fftw++.h" +#endif + +using namespace camp; +using namespace vm; + +typedef array boolarray; +typedef array Intarray; +typedef array Intarray2; +typedef array realarray; +typedef array realarray2; +typedef array pairarray; +typedef array triplearray2; + +using types::booleanArray; +using types::IntArray; +using types::IntArray2; +using types::realArray; +using types::realArray2; +using types::pairArray; +using types::tripleArray2; + +typedef callable callableReal; + +void outOfBounds(const char *op, size_t len, Int n) +{ + ostringstream buf; + buf << op << " array of length " << len << " with out-of-bounds index " << n; + error(buf); +} + +inline item& arrayRead(array *a, Int n) +{ + size_t len=checkArray(a); + bool cyclic=a->cyclic(); + if(cyclic && len > 0) n=imod(n,len); + else if(n < 0 || n >= (Int) len) outOfBounds("reading",len,n); + return (*a)[(unsigned) n]; +} + +// Helper function to create deep arrays. +static array* deepArray(Int depth, Int *dims) +{ + assert(depth > 0); + + if (depth == 1) { + return new array(dims[0]); + } else { + Int length = dims[0]; + depth--; dims++; + + array *a = new array(length); + + for (Int index = 0; index < length; index++) { + (*a)[index] = deepArray(depth, dims); + } + return a; + } +} + +namespace run { +array *Identity(Int n) +{ + size_t N=(size_t) n; + array *c=new array(N); + for(size_t i=0; i < N; ++i) { + array *ci=new array(N); + (*c)[i]=ci; + for(size_t j=0; j < N; ++j) + (*ci)[j]=0.0; + (*ci)[i]=1.0; + } + return c; +} +} + +static const char *incommensurate="Incommensurate matrices"; +static const char *singular="Singular matrix"; +static size_t *pivot,*Row,*Col; + +namespace run { + +array *copyArray(array *a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) + (*c)[i]=(*a)[i]; + return c; +} + +inline size_t checkdimension(const array *a, size_t dim) +{ + size_t size=checkArray(a); + if(dim && size != dim) { + ostringstream buf; + buf << "array of length " << dim << " expected"; + error(buf); + } + return size; +} + +double *copyArrayC(const array *a, size_t dim) +{ + size_t size=checkdimension(a,dim); + double *c=new double[size]; + for(size_t i=0; i < size; i++) + c[i]=read<double>(a,i); + return c; +} + +triple *copyTripleArrayC(const array *a, size_t dim) +{ + size_t size=checkdimension(a,dim); + triple *c=new triple[size]; + for(size_t i=0; i < size; i++) + c[i]=read<triple>(a,i); + return c; +} + +array *copyArray2(array *a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + array *ci=new array(aisize); + (*c)[i]=ci; + for(size_t j=0; j < aisize; j++) + (*ci)[j]=(*ai)[j]; + } + return c; +} + +array *copyArray3(array *a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + array *ci=new array(aisize); + (*c)[i]=ci; + for(size_t j=0; j < aisize; j++) { + array *aij=read<array*>(ai,j); + size_t aijsize=checkArray(aij); + array *cij=new array(aijsize); + (*ci)[j]=cij; + for(size_t k=0; k < aijsize; k++) + (*cij)[k]=(*aij)[k]; + } + } + return c; +} + +double *copyArray2C(const array *a, bool square, size_t dim2) +{ + size_t n=checkArray(a); + size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); + if(n > 0 && dim2 && m != dim2) { + ostringstream buf; + buf << "second matrix dimension must be " << dim2; + error(buf); + } + + double *c=new double[n*m]; + for(size_t i=0; i < n; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + if(aisize == m) { + double *ci=c+i*m; + for(size_t j=0; j < m; j++) + ci[j]=read<double>(ai,j); + } else + error(square ? "matrix must be square" : "matrix must be rectangular"); + } + return c; +} + +triple *copyTripleArray2C(const array *a, bool square, size_t dim2) +{ + size_t n=checkArray(a); + size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); + if(n > 0 && dim2 && m != dim2) { + ostringstream buf; + buf << "second matrix dimension must be " << dim2; + error(buf); + } + + triple *c=new triple[n*m]; + for(size_t i=0; i < n; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + if(aisize == m) { + triple *ci=c+i*m; + for(size_t j=0; j < m; j++) + ci[j]=read<triple>(ai,j); + } else + error(square ? "matrix must be square" : "matrix must be rectangular"); + } + return c; +} + +double *copyTripleArray2Components(array *a, bool square, size_t dim2) +{ + size_t n=checkArray(a); + size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); + if(n > 0 && dim2 && m != dim2) { + ostringstream buf; + buf << "second matrix dimension must be " << dim2; + error(buf); + } + + size_t nm=n*m; + double *cx=new double[3*nm]; + double *cy=cx+nm; + double *cz=cx+2*nm; + for(size_t i=0; i < n; i++) { + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + if(aisize == m) { + double *xi=cx+i*m; + double *yi=cy+i*m; + double *zi=cz+i*m; + for(size_t j=0; j < m; j++) { + triple v=read<triple>(ai,j); + xi[j]=v.getx(); + yi[j]=v.gety(); + zi[j]=v.getz(); + } + } else + error(square ? "matrix must be square" : "matrix must be rectangular"); + } + return cx; +} + +triple operator *(const array& t, const triple& v) +{ + size_t n=checkArray(&t); + if(n != 4) error(incommensurate); + array *t0=read<array*>(t,0); + array *t1=read<array*>(t,1); + array *t2=read<array*>(t,2); + array *t3=read<array*>(t,3); + + if(checkArray(t0) != 4 || checkArray(t1) != 4 || + checkArray(t2) != 4 || checkArray(t3) != 4) + error(incommensurate); + + double x=v.getx(); + double y=v.gety(); + double z=v.getz(); + + double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ + read<real>(t3,3); + if(f == 0.0) run::dividebyzero(); + f=1.0/f; + + return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ + read<real>(t0,3))*f, + (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ + read<real>(t1,3))*f, + (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z+ + read<real>(t2,3))*f); +} + +triple multshiftless(const array& t, const triple& v) +{ + size_t n=checkArray(&t); + if(n != 4) error(incommensurate); + array *t0=read<array*>(t,0); + array *t1=read<array*>(t,1); + array *t2=read<array*>(t,2); + array *t3=read<array*>(t,3); + + if(checkArray(t0) != 4 || checkArray(t1) != 4 || + checkArray(t2) != 4 || checkArray(t3) != 4) + error(incommensurate); + + double x=v.getx(); + double y=v.gety(); + double z=v.getz(); + + double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ + read<real>(t3,3); + if(f == 0.0) run::dividebyzero(); + f=1.0/f; + + return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z)*f, + (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z)*f, + (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z)*f); +} + +double norm(double *a, size_t n) +{ + if(n == 0) return 0.0; + double M=fabs(a[0]); + for(size_t i=1; i < n; ++i) + M=::max(M,fabs(a[i])); + return M; +} + +double norm(triple *a, size_t n) +{ + if(n == 0) return 0.0; + double M=a[0].abs2(); + for(size_t i=1; i < n; ++i) + M=::max(M,a[i].abs2()); + return sqrt(M); +} + +} + +static inline void inverseAllocate(size_t n) +{ + pivot=new size_t[n]; + Row=new size_t[n]; + Col=new size_t[n]; +} + +static inline void inverseDeallocate() +{ + delete[] pivot; + delete[] Row; + delete[] Col; +} + +callable *Func; +stack *FuncStack; +double wrapFunction(double x) +{ + FuncStack->push(x); + Func->call(FuncStack); + return pop<double>(FuncStack); +} + +callable *compareFunc; +bool compareFunction(const vm::item& i, const vm::item& j) +{ + FuncStack->push(i); + FuncStack->push(j); + compareFunc->call(FuncStack); + return pop<bool>(FuncStack); +} + +void checkSquare(array *a) +{ + size_t n=checkArray(a); + for(size_t i=0; i < n; i++) + if(checkArray(read<array*>(a,i)) != n) + error("matrix a must be square"); +} + +// Crout's algorithm for computing the LU decomposition of a square matrix. +// cf. routine ludcmp (Press et al., Numerical Recipes, 1991). +Int LUdecompose(double *a, size_t n, size_t* index, bool warn=true) +{ + double *vv=new double[n]; + Int swap=1; + for(size_t i=0; i < n; ++i) { + double big=0.0; + double *ai=a+i*n; + for(size_t j=0; j < n; ++j) { + double temp=fabs(ai[j]); + if(temp > big) big=temp; + } + if(big == 0.0) { + delete[] vv; + if(warn) error(singular); + else return 0; + } + vv[i]=1.0/big; + } + for(size_t j=0; j < n; ++j) { + for(size_t i=0; i < j; ++i) { + double *ai=a+i*n; + double sum=ai[j]; + for(size_t k=0; k < i; ++k) { + sum -= ai[k]*a[k*n+j]; + } + ai[j]=sum; + } + double big=0.0; + size_t imax=j; + for(size_t i=j; i < n; ++i) { + double *ai=a+i*n; + double sum=ai[j]; + for(size_t k=0; k < j; ++k) + sum -= ai[k]*a[k*n+j]; + ai[j]=sum; + double temp=vv[i]*fabs(sum); + if(temp >= big) { + big=temp; + imax=i; + } + } + double *aj=a+j*n; + double *aimax=a+imax*n; + if(j != imax) { + for(size_t k=0; k < n; ++k) { + double temp=aimax[k]; + aimax[k]=aj[k]; + aj[k]=temp; + } + swap *= -1; + vv[imax]=vv[j]; + } + if(index) + index[j]=imax; + if(j != n) { + double denom=aj[j]; + if(denom == 0.0) { + delete[] vv; + if(warn) error(singular); + else return 0; + } + for(size_t i=j+1; i < n; ++i) + a[i*n+j] /= denom; + } + } + delete[] vv; + return swap; +} + +namespace run { +void dividebyzero(size_t i) +{ + ostringstream buf; + if(i > 0) buf << "array element " << i << ": "; + buf << "Divide by zero"; + error(buf); +} + +void integeroverflow(size_t i) +{ + ostringstream buf; + if(i > 0) buf << "array element " << i << ": "; + buf << "Integer overflow"; + error(buf); +} +} + +// Autogenerated routines: + + +// Create an empty array. +array* :emptyArray() +{ + return new array(0); +} + +// Create a new array (technically a vector). +// This array will be multidimensional. First the number of dimensions +// is popped off the stack, followed by each dimension in reverse order. +// The array itself is technically a one dimensional array of one +// dimension arrays and so on. +array* :newDeepArray(Int depth) +{ + assert(depth > 0); + + Int *dims = new Int[depth]; + + for (Int index = depth-1; index >= 0; index--) { + Int i=pop<Int>(Stack); + if(i < 0) error("cannot create a negative length array"); + dims[index]=i; + } + + array *a=deepArray(depth, dims); + delete[] dims; + return a; +} + +// Creates an array with elements already specified. First, the number +// of elements is popped off the stack, followed by each element in +// reverse order. +array* :newInitializedArray(Int n) +{ + assert(n >= 0); + + array *a = new array(n); + + for (Int index = n-1; index >= 0; index--) + (*a)[index] = pop(Stack); + + return a; +} + +// Similar to newInitializedArray, but after the n elements, append another +// array to it. +array* :newAppendedArray(array* tail, Int n) +{ + assert(n >= 0); + + array *a = new array(n); + + for (Int index = n-1; index >= 0; index--) + (*a)[index] = pop(Stack); + + copy(tail->begin(), tail->end(), back_inserter(*a)); + + return a; +} + +// The function T[] array(int n, T value, int depth=0) produces a array of n +// copies of x, where each copy is copied up to depth. +array* :newDuplicateArray(Int n, item value, Int depth=Int_MAX) +{ + if(n < 0) error("cannot create a negative length array"); + if(depth < 0) error("cannot copy to a negative depth"); + + return new array(n, value, depth); +} + +// Read an element from an array. Checks for initialization & bounds. +item :arrayRead(array *a, Int n) +{ + item& i=arrayRead(a,n); + if (i.empty()) { + ostringstream buf; + buf << "read uninitialized value from array at index " << n; + error(buf); + } + return i; +} + +// Slice a substring from an array. +item :arraySliceRead(array *a, Int left, Int right) +{ + checkArray(a); + return a->slice(left, right); +} + +// Slice a substring from an array. This implements the cases a[i:] and a[:] +// where the endpoint is not given, and assumed to be the length of the array. +item :arraySliceReadToEnd(array *a, Int left) +{ + size_t len=checkArray(a); + return a->slice(left, (Int)len); +} + +// Read an element from an array of arrays. Check bounds and initialize +// as necessary. +item :arrayArrayRead(array *a, Int n) +{ + item& i=arrayRead(a,n); + if (i.empty()) i=new array(0); + return i; +} + +// Write an element to an array. Increase size if necessary. +item :arrayWrite(item value, array *a, Int n) +{ + size_t len=checkArray(a); + bool cyclic=a->cyclic(); + if(cyclic && len > 0) n=imod(n,len); + else { + if(cyclic) outOfBounds("writing cyclic",len,n); + if(n < 0) outOfBounds("writing",len,n); + if(len <= (size_t) n) + a->resize(n+1); + } + (*a)[n] = value; + return value; +} + +array * :arraySliceWrite(array *src, array *dest, Int left, Int right) +{ + checkArray(src); + checkArray(dest); + dest->setSlice(left, right, src); + return src; +} + +array * :arraySliceWriteToEnd(array *src, array *dest, Int left) +{ + checkArray(src); + size_t len=checkArray(dest); + dest->setSlice(left, (Int) len, src); + return src; +} + +// Returns the length of an array. +Int :arrayLength(array *a) +{ + return (Int) checkArray(a); +} + +// Returns an array of integers representing the keys of the array. +array * :arrayKeys(array *a) +{ + size_t size=checkArray(a); + + array *keys=new array(); + for (size_t i=0; i<size; ++i) { + item& cell = (*a)[i]; + if (!cell.empty()) + keys->push((Int)i); + } + + return keys; +} + +// Return the cyclic flag for an array. +bool :arrayCyclicFlag(array *a) +{ + checkArray(a); + return a->cyclic(); +} + +bool :arraySetCyclicFlag(bool b, array *a) +{ + checkArray(a); + a->cyclic(b); + return b; +} + +// Check to see if an array element is initialized. +bool :arrayInitializedHelper(Int n, array *a) +{ + size_t len=checkArray(a); + bool cyclic=a->cyclic(); + if(cyclic && len > 0) n=imod(n,len); + else if(n < 0 || n >= (Int) len) return false; + item&i=(*a)[(unsigned) n]; + return !i.empty(); +} + +// Returns the initialize method for an array. +callable* :arrayInitialized(array *a) +{ + return new thunk(new bfunc(arrayInitializedHelper),a); +} + +// The helper function for the cyclic method that sets the cyclic flag. +void :arrayCyclicHelper(bool b, array *a) +{ + checkArray(a); + a->cyclic(b); +} + +// Set the cyclic flag for an array. +callable* :arrayCyclic(array *a) +{ + return new thunk(new bfunc(arrayCyclicHelper),a); +} + +// The helper function for the push method that does the actual operation. +item :arrayPushHelper(item x, array *a) +{ + checkArray(a); + a->push(x); + return x; +} + +// Returns the push method for an array. +callable* :arrayPush(array *a) +{ + return new thunk(new bfunc(arrayPushHelper),a); +} + +// The helper function for the append method that appends b to a. +void :arrayAppendHelper(array *b, array *a) +{ + checkArray(a); + size_t size=checkArray(b); + for(size_t i=0; i < size; i++) + a->push((*b)[i]); +} + +// Returns the append method for an array. +callable* :arrayAppend(array *a) +{ + return new thunk(new bfunc(arrayAppendHelper),a); +} + +// The helper function for the pop method. +item :arrayPopHelper(array *a) +{ + size_t asize=checkArray(a); + if(asize == 0) + error("cannot pop element from empty array"); + return a->pop(); +} + +// Returns the pop method for an array. +callable* :arrayPop(array *a) +{ + return new thunk(new bfunc(arrayPopHelper),a); +} + +// The helper function for the insert method. +item :arrayInsertHelper(Int i, array *x, array *a) +{ + size_t asize=checkArray(a); + checkArray(x); + if(a->cyclic() && asize > 0) i=imod(i,asize); + if(i < 0 || i > (Int) asize) + outOfBounds("inserting",asize,i); + (*a).insert((*a).begin()+i,(*x).begin(),(*x).end()); +} + +// Returns the insert method for an array. +callable* :arrayInsert(array *a) +{ + return new thunk(new bfunc(arrayInsertHelper),a); +} + +// Returns the delete method for an array. +callable* :arrayDelete(array *a) +{ + return new thunk(new bfunc(arrayDeleteHelper),a); +} + +bool :arrayAlias(array *a, array *b) +{ + return a==b; +} + +// Return array formed by indexing array a with elements of integer array b +array* :arrayIntArray(array *a, array *b) +{ + size_t asize=checkArray(a); + size_t bsize=checkArray(b); + array *r=new array(bsize); + bool cyclic=a->cyclic(); + for(size_t i=0; i < bsize; i++) { + Int index=read<Int>(b,i); + if(cyclic && asize > 0) index=imod(index,asize); + else + if(index < 0 || index >= (Int) asize) + outOfBounds("reading",asize,index); + (*r)[i]=(*a)[index]; + } + return r; +} + +// returns the complement of the integer array a in {0,2,...,n-1}, +// so that b[complement(a,b.length)] yields the complement of b[a]. +Intarray* complement(Intarray *a, Int n) +{ + size_t asize=checkArray(a); + array *r=new array(0); + bool *keep=new bool[n]; + for(Int i=0; i < n; ++i) keep[i]=true; + for(size_t i=0; i < asize; ++i) { + Int j=read<Int>(a,i); + if(j >= 0 && j < n) keep[j]=false; + } + for(Int i=0; i < n; i++) + if(keep[i]) r->push(i); + + delete[] keep; + return r; +} + +// Generate the sequence {f(i) : i=0,1,...n-1} given a function f and integer n +Intarray* :arraySequence(callable *f, Int n) +{ + if(n < 0) n=0; + array *a=new array(n); + for(Int i=0; i < n; ++i) { + Stack->push(i); + f->call(Stack); + (*a)[i]=pop(Stack); + } + return a; +} + +// Return the array {0,1,...n-1} +Intarray *sequence(Int n) +{ + if(n < 0) n=0; + array *a=new array(n); + for(Int i=0; i < n; ++i) { + (*a)[i]=i; + } + return a; +} + +// Apply a function to each element of an array +array* :arrayFunction(callable *f, array *a) +{ + size_t size=checkArray(a); + array *b=new array(size); + for(size_t i=0; i < size; ++i) { + Stack->push((*a)[i]); + f->call(Stack); + (*b)[i]=pop(Stack); + } + return b; +} + +array* :arraySort(array *a, callable *f) +{ + array *c=copyArray(a); + compareFunc=f; + FuncStack=Stack; + stable_sort(c->begin(),c->end(),compareFunction); + return c; +} + +bool all(boolarray *a) +{ + size_t size=checkArray(a); + bool c=true; + for(size_t i=0; i < size; i++) + if(!get<bool>((*a)[i])) {c=false; break;} + return c; +} + +boolarray* !(boolarray* a) +{ + size_t size=checkArray(a); + array *c=new array(size); + for(size_t i=0; i < size; i++) + (*c)[i]=!read<bool>(a,i); + return c; +} + +Int sum(boolarray *a) +{ + size_t size=checkArray(a); + Int sum=0; + for(size_t i=0; i < size; i++) + sum += read<bool>(a,i) ? 1 : 0; + return sum; +} + +array* :arrayCopy(array *a) +{ + return copyArray(a); +} + +array* :arrayConcat(array *a) +{ + // a is an array of arrays to be concatenated together. + // The signature is + // T[] concat(... T[][] a); + + size_t numArgs=checkArray(a); + size_t resultSize=0; + for (size_t i=0; i < numArgs; ++i) { + resultSize += checkArray(a->read<array *>(i)); + } + + array *result=new array(resultSize); + + size_t ri=0; + for (size_t i=0; i < numArgs; ++i) { + array *arg=a->read<array *>(i); + size_t size=checkArray(arg); + + for (size_t j=0; j < size; ++j) { + (*result)[ri]=(*arg)[j]; + ++ri; + } + } + + return result; +} + +array* :array2Copy(array *a) +{ + return copyArray2(a); +} + +array* :array3Copy(array *a) +{ + return copyArray3(a); +} + +array* :array2Transpose(array *a) +{ + size_t asize=checkArray(a); + array *c=new array(0); + for(size_t i=0; i < asize; i++) { + size_t ip=i+1; + array *ai=read<array*>(a,i); + size_t aisize=checkArray(ai); + size_t csize=checkArray(c); + if(csize < aisize) { + c->resize(aisize); + for(size_t j=csize; j < aisize; j++) { + (*c)[j]=new array(ip); + } + } + for(size_t j=0; j < aisize; j++) { + array *cj=read<array*>(c,j); + if(checkArray(cj) < ip) cj->resize(ip); + (*cj)[i]=(*ai)[j]; + } + } + return c; +} + +// a is a rectangular 3D array; perm is an Int array indicating the type of +// permutation (021 or 120, etc; original is 012). +// Transpose by sending respective members to the permutated locations: +// return the array obtained by putting a[i][j][k] into position perm{ijk}. +array* :array3Transpose(array *a, array *perm) +{ + const size_t DIM=3; + + if(checkArray(perm) != DIM) { + ostringstream buf; + buf << "permutation array must have length " << DIM; + error(buf); + } + + size_t* size=new size_t[DIM]; + for(size_t i=0; i < DIM; ++i) size[i]=DIM; + + for(size_t i=0; i < DIM; ++i) { + Int p=read<Int>(perm,i); + size_t P=(size_t) p; + if(p < 0 || P >= DIM) { + ostringstream buf; + buf << "permutation index out of range: " << p; + error(buf); + } + size[P]=P; + } + + for(size_t i=0; i < DIM; ++i) + if(size[i] == DIM) error("permutation indices must be distinct"); + + static const char *rectangular= + "3D transpose implemented for rectangular matrices only"; + + size_t isize=size[0]=checkArray(a); + array *a0=read<array*>(a,0); + size[1]=checkArray(a0); + array *a00=read<array*>(a0,0); + size[2]=checkArray(a00); + for(size_t i=0; i < isize; i++) { + array *ai=read<array*>(a,i); + size_t jsize=checkArray(ai); + if(jsize != size[1]) error(rectangular); + for(size_t j=0; j < jsize; j++) { + array *aij=read<array*>(ai,j); + if(checkArray(aij) != size[2]) error(rectangular); + } + } + + size_t perm0=(size_t) read<Int>(perm,0); + size_t perm1=(size_t) read<Int>(perm,1); + size_t perm2=(size_t) read<Int>(perm,2); + + size_t sizep0=size[perm0]; + size_t sizep1=size[perm1]; + size_t sizep2=size[perm2]; + + array *c=new array(sizep0); + for(size_t i=0; i < sizep0; ++i) { + array *ci=new array(sizep1); + (*c)[i]=ci; + for(size_t j=0; j < sizep1; ++j) { + array *cij=new array(sizep2); + (*ci)[j]=cij; + } + } + + size_t* i=new size_t[DIM]; + + for(i[0]=0; i[0] < size[0]; ++i[0]) { + array *a0=read<array*>(a,i[0]); + for(i[1]=0; i[1] < size[1]; ++i[1]) { + array *a1=read<array*>(a0,i[1]); + for(i[2]=0; i[2] < size[2]; ++i[2]) { + array *c0=read<array*>(c,i[perm0]); + array *c1=read<array*>(c0,i[perm1]); + (*c1)[i[perm2]]=read<real>(a1,i[2]); + } + } + } + + delete [] i; + delete [] size; + + return c; +} + +// In a boolean array, find the index of the nth true value or -1 if not found +// If n is negative, search backwards. +Int find(boolarray *a, Int n=1) +{ + size_t size=checkArray(a); + Int j=-1; + if(n > 0) + for(size_t i=0; i < size; i++) + if(read<bool>(a,i)) { + n--; if(n == 0) {j=(Int) i; break;} + } + if(n < 0) + for(size_t i=size; i > 0;) + if(read<bool>(a,--i)) { + n++; if(n == 0) {j=(Int) i; break;} + } + return j; +} + +// construct vector obtained by replacing those elements of b for which the +// corresponding elements of a are false by the corresponding element of c. +array* :arrayConditional(array *a, array *b, array *c) +{ + size_t size=checkArray(a); + array *r=new array(size); + if(b && c) { + checkArrays(a,b); + checkArrays(b,c); + for(size_t i=0; i < size; i++) + (*r)[i]=read<bool>(a,i) ? (*b)[i] : (*c)[i]; + } else { + r->clear(); + if(b) { + checkArrays(a,b); + for(size_t i=0; i < size; i++) + if(read<bool>(a,i)) r->push((*b)[i]); + } else if(c) { + checkArrays(a,c); + for(size_t i=0; i < size; i++) + if(!read<bool>(a,i)) r->push((*c)[i]); + } + } + return r; +} + +// Return an n x n identity matrix. +realarray2 *identity(Int n) +{ + return Identity(n); +} + +// Return the diagonal matrix with diagonal entries given by a. +realarray2* :diagonal(realarray *a) +{ + size_t n=checkArray(a); + array *c=new array(n); + for(size_t i=0; i < n; ++i) { + array *ci=new array(n); + (*c)[i]=ci; + for(size_t j=0; j < i; ++j) + (*ci)[j]=0.0; + (*ci)[i]=read<real>(a,i); + for(size_t j=i+1; j < n; ++j) + (*ci)[j]=0.0; + } + return c; +} + +// Return the inverse of an n x n matrix a using Gauss-Jordan elimination. +realarray2 *inverse(realarray2 *a) +{ + a=copyArray2(a); + size_t n=checkArray(a); + checkSquare(a); + + inverseAllocate(n); + + for(size_t i=0; i < n; i++) + pivot[i]=0; + + size_t col=0, row=0; + // This is the main loop over the columns to be reduced. + for(size_t i=0; i < n; i++) { + real big=0.0; + // This is the outer loop of the search for a pivot element. + for(size_t j=0; j < n; j++) { + array *aj=read<array*>(a,j); + if(pivot[j] != 1) { + for(size_t k=0; k < n; k++) { + if(pivot[k] == 0) { + real temp=fabs(read<real>(aj,k)); + if(temp >= big) { + big=temp; + row=j; + col=k; + } + } else if(pivot[k] > 1) { + inverseDeallocate(); + error(singular); + } + } + } + } + ++(pivot[col]); + + // Interchange rows, if needed, to put the pivot element on the diagonal. + array *acol=read<array*>(a,col); + if(row != col) { + array *arow=read<array*>(a,row); + for(size_t l=0; l < n; l++) { + real temp=read<real>(arow,l); + (*arow)[l]=read<real>(acol,l); + (*acol)[l]=temp; + } + } + + Row[i]=row; + Col[i]=col; + + // Divide the pivot row by the pivot element. + real denom=read<real>(acol,col); + if(denom == 0.0) { + inverseDeallocate(); + error(singular); + } + real pivinv=1.0/denom; + (*acol)[col]=1.0; + for(size_t l=0; l < n; l++) + (*acol)[l]=read<real>(acol,l)*pivinv; + + // Reduce all rows except for the pivoted one. + for(size_t k=0; k < n; k++) { + if(k != col) { + array *ak=read<array*>(a,k); + real akcol=read<real>(ak,col); + (*ak)[col]=0.0; + for(size_t l=0; l < n; l++) + (*ak)[l]=read<real>(ak,l)-read<real>(acol,l)*akcol; + } + } + } + + // Unscramble the inverse matrix in view of the column interchanges. + for(size_t l=n; l > 0;) { + l--; + size_t r=Row[l]; + size_t c=Col[l]; + if(r != c) { + for(size_t k=0; k < n; k++) { + array *ak=read<array*>(a,k); + real temp=read<real>(ak,r); + (*ak)[r]=read<real>(ak,c); + (*ak)[c]=temp; + } + } + } + inverseDeallocate(); + return a; +} + +// Solve the linear equation ax=b by LU decomposition, returning the +// solution x, where a is an n x n matrix and b is an array of length n. +// If no solution exists, return an empty array. +realarray *solve(realarray2 *a, realarray *b, bool warn=true) +{ + size_t n=checkArray(a); + + if(n == 0) return new array(0); + + size_t m=checkArray(b); + if(m != n) error(incommensurate); + + real *A=copyArray2C(a); + size_t *index=new size_t[n]; + + if(LUdecompose(A,n,index,warn) == 0) + return new array(0); + + array *x=new array(n); + + real *B=copyArrayC(b); + + for(size_t i=0; i < n; ++i) { + size_t ip=index[i]; + real sum=B[ip]; + B[ip]=B[i]; + real *Ai=A+i*n; + for(size_t j=0; j < i; ++j) + sum -= Ai[j]*B[j]; + B[i]=sum; + } + + for(size_t i=n; i > 0;) { + --i; + real sum=B[i]; + real *Ai=A+i*n; + for(size_t j=i+1; j < n; ++j) + sum -= Ai[j]*B[j]; + B[i]=sum/Ai[i]; + } + + for(size_t i=0; i < n; ++i) + (*x)[i]=B[i]; + + delete[] index; + delete[] B; + delete[] A; + + return x; +} + +// Solve the linear equation ax=b by LU decomposition, returning the +// solution x, where a is an n x n matrix and b is an n x m matrix. +// If no solution exists, return an empty array. +realarray2 *solve(realarray2 *a, realarray2 *b, bool warn=true) +{ + size_t n=checkArray(a); + + if(n == 0) return new array(0); + + if(checkArray(b) != n) error(incommensurate); + size_t m=checkArray(read<array*>(b,0)); + + real *A=copyArray2C(a); + real *B=copyArray2C(b,false); + + size_t *index=new size_t[n]; + + if(LUdecompose(A,n,index,warn) == 0) + return new array(0); + + array *x=new array(n); + + for(size_t i=0; i < n; ++i) { + real *Ai=A+i*n; + real *Bi=B+i*m; + real *Bip=B+index[i]*m; + for(size_t k=0; k < m; ++k) { + real sum=Bip[k]; + Bip[k]=Bi[k]; + size_t jk=k; + for(size_t j=0; j < i; ++j, jk += m) + sum -= Ai[j]*B[jk]; + Bi[k]=sum; + } + } + + for(size_t i=n; i > 0;) { + --i; + real *Ai=A+i*n; + real *Bi=B+i*m; + for(size_t k=0; k < m; ++k) { + real sum=Bi[k]; + size_t jk=(i+1)*m+k; + for(size_t j=i+1; j < n; ++j, jk += m) + sum -= Ai[j]*B[jk]; + Bi[k]=sum/Ai[i]; + } + } + + for(size_t i=0; i < n; ++i) { + real *Bi=B+i*m; + array *xi=new array(m); + (*x)[i]=xi; + for(size_t j=0; j < m; ++j) + (*xi)[j]=Bi[j]; + } + + delete[] index; + delete[] B; + delete[] A; + + return x; +} + +// Compute the determinant of an n x n matrix. +real determinant(realarray2 *a) +{ + real *A=copyArray2C(a); + size_t n=checkArray(a); + + real det=LUdecompose(A,n,NULL,false); + size_t n1=n+1; + for(size_t i=0; i < n; ++i) + det *= A[i*n1]; + + delete[] A; + + return det; +} + +realarray *Operator *(realarray2 *a, realarray *b) +{ + size_t n=checkArray(a); + size_t m=checkArray(b); + array *c=new array(n); + real *B=copyArrayC(b); + for(size_t i=0; i < n; ++i) { + array *ai=read<array*>(a,i); + if(checkArray(ai) != m) error(incommensurate); + real sum=0.0; + for(size_t j=0; j < m; ++j) + sum += read<real>(ai,j)*B[j]; + (*c)[i]=sum; + } + delete[] B; + return c; +} + +realarray *Operator *(realarray *a, realarray2 *b) +{ + size_t n=checkArray(a); + if(n != checkArray(b)) error(incommensurate); + real *A=copyArrayC(a); + + array **B=new array*[n]; + array *bk=read<array *>(b,0); + B[0]=bk; + size_t m=bk->size(); + for(size_t k=1; k < n; k++) { + array *bk=read<array *>(b,k); + if(bk->size() != m) error(incommensurate); + B[k]=bk; + } + array *c=new array(m); + + for(size_t i=0; i < m; ++i) { + real sum=0.0; + for(size_t k=0; k < n; ++k) + sum += A[k]*read<real>(B[k],i); + (*c)[i]=sum; + } + delete[] B; + delete[] A; + return c; +} + +realarray2 *Operator *(realarray2 *a, realarray2 *b) +{ + size_t n=checkArray(a); + + size_t nb=checkArray(b); + size_t na0=n == 0 ? 0 : checkArray(read<array*>(a,0)); + if(na0 != nb) + error(incommensurate); + + size_t nb0=nb == 0 ? 0 : checkArray(read<array*>(b,0)); + + array *c=new array(n); + + real *A=copyArray2C(a,false); + real *B=copyArray2C(b,false); + + for(size_t i=0; i < n; ++i) { + real *Ai=A+i*nb; + array *ci=new array(nb0); + (*c)[i]=ci; + for(size_t j=0; j < nb0; ++j) { + real sum=0.0; + size_t kj=j; + for(size_t k=0; k < nb; ++k, kj += nb0) + sum += Ai[k]*B[kj]; + (*ci)[j]=sum; + } + } + + delete[] B; + delete[] A; + + return c; +} + +triple Operator *(realarray2 *t, triple v) +{ + return *t*v; +} + +pair project(triple v, realarray2 *t) +{ + size_t n=checkArray(t); + if(n != 4) error(incommensurate); + array *t0=read<array*>(t,0); + array *t1=read<array*>(t,1); + array *t3=read<array*>(t,3); + if(checkArray(t0) != 4 || checkArray(t1) != 4 || checkArray(t3) != 4) + error(incommensurate); + + real x=v.getx(); + real y=v.gety(); + real z=v.getz(); + + real f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ + read<real>(t3,3); + if(f == 0.0) dividebyzero(); + f=1.0/f; + + return pair((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ + read<real>(t0,3))*f, + (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ + read<real>(t1,3))*f); +} + +// Compute the dot product of vectors a and b. +real dot(realarray *a, realarray *b) +{ + size_t n=checkArrays(a,b); + real sum=0.0; + for(size_t i=0; i < n; ++i) + sum += read<real>(a,i)*read<real>(b,i); + return sum; +} + +// Solve the problem L\inv f, where f is an n vector and L is the n x n matrix +// +// [ b[0] c[0] a[0] ] +// [ a[1] b[1] c[1] ] +// [ a[2] b[2] c[2] ] +// [ ... ] +// [ c[n-1] a[n-1] b[n-1] ] +realarray *tridiagonal(realarray *a, realarray *b, realarray *c, realarray *f) +{ + size_t n=checkArrays(a,b); + checkEqual(n,checkArray(c)); + checkEqual(n,checkArray(f)); + + array *up=new array(n); + array& u=*up; + + if(n == 0) return up; + + // Special case: zero Dirichlet boundary conditions + if(read<real>(a,0) == 0.0 && read<real>(c,n-1) == 0.0) { + real temp=read<real>(b,0); + if(temp == 0.0) dividebyzero(); + temp=1.0/temp; + + real *work=new real[n]; + u[0]=read<real>(f,0)*temp; + work[0]=-read<real>(c,0)*temp; + + for(size_t i=1; i < n; i++) { + real temp=(read<real>(b,i)+read<real>(a,i)*work[i-1]); + if(temp == 0.0) {delete[] work; dividebyzero();} + temp=1.0/temp; + u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*temp; + work[i]=-read<real>(c,i)*temp; + } + + for(size_t i=n-1; i >= 1; i--) + u[i-1]=read<real>(u,i-1)+work[i-1]*read<real>(u,i); + + delete[] work; + return up; + } + + real binv=read<real>(b,0); + if(binv == 0.0) dividebyzero(); + binv=1.0/binv; + + if(n == 1) {u[0]=read<real>(f,0)*binv; return up;} + if(n == 2) { + real factor=(read<real>(b,0)*read<real>(b,1)- + read<real>(a,0)*read<real>(c,1)); + if(factor== 0.0) dividebyzero(); + factor=1.0/factor; + real temp=(read<real>(b,0)*read<real>(f,1)- + read<real>(c,1)*read<real>(f,0))*factor; + u[0]=(read<real>(b,1)*read<real>(f,0)- + read<real>(a,0)*read<real>(f,1))*factor; + u[1]=temp; + return up; + } + + real *gamma=new real[n-2]; + real *delta=new real[n-2]; + + gamma[0]=read<real>(c,0)*binv; + delta[0]=read<real>(a,0)*binv; + u[0]=read<real>(f,0)*binv; + real beta=read<real>(c,n-1); + real fn=read<real>(f,n-1)-beta*read<real>(u,0); + real alpha=read<real>(b,n-1)-beta*delta[0]; + + for(size_t i=1; i <= n-3; i++) { + real alphainv=read<real>(b,i)-read<real>(a,i)*gamma[i-1]; + if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} + alphainv=1.0/alphainv; + beta *= -gamma[i-1]; + gamma[i]=read<real>(c,i)*alphainv; + u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*alphainv; + fn -= beta*read<real>(u,i); + delta[i]=-read<real>(a,i)*delta[i-1]*alphainv; + alpha -= beta*delta[i]; + } + + real alphainv=read<real>(b,n-2)-read<real>(a,n-2)*gamma[n-3]; + if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} + alphainv=1.0/alphainv; + u[n-2]=(read<real>(f,n-2)-read<real>(a,n-2)*read<real>(u,n-3)) + *alphainv; + beta=read<real>(a,n-1)-beta*gamma[n-3]; + real dnm1=(read<real>(c,n-2)-read<real>(a,n-2)*delta[n-3])*alphainv; + real temp=alpha-beta*dnm1; + if(temp == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} + u[n-1]=temp=(fn-beta*read<real>(u,n-2))/temp; + u[n-2]=read<real>(u,n-2)-dnm1*temp; + + for(size_t i=n-2; i >= 1; i--) + u[i-1]=read<real>(u,i-1)-gamma[i-1]*read<real>(u,i)-delta[i-1]*temp; + + delete[] delta; + delete[] gamma; + + return up; +} + +// Root solve by Newton-Raphson +real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x, + bool verbose=false) +{ + static const real fuzz=1000.0*DBL_EPSILON; + Int i=0; + size_t oldPrec=0; + if(verbose) + oldPrec=cout.precision(DBL_DIG); + + real diff=DBL_MAX; + real lastdiff; + do { + real x0=x; + + Stack->push(x); + fprime->call(Stack); + real dfdx=pop<real>(Stack); + + if(dfdx == 0.0) { + x=DBL_MAX; + break; + } + + Stack->push(x); + f->call(Stack); + real fx=pop<real>(Stack); + + x -= fx/dfdx; + + lastdiff=diff; + + if(verbose) + cout << "Newton-Raphson: " << x << endl; + + diff=fabs(x-x0); + if(++i == iterations) { + x=DBL_MAX; + break; + } + } while (diff != 0.0 && (diff < lastdiff || diff > fuzz*fabs(x))); + + if(verbose) + cout.precision(oldPrec); + return x; +} + +// Root solve by Newton-Raphson bisection +// cf. routine rtsafe (Press et al., Numerical Recipes, 1991). +real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x1, + real x2, bool verbose=false) +{ + static const real fuzz=1000.0*DBL_EPSILON; + size_t oldPrec=0; + if(verbose) + oldPrec=cout.precision(DBL_DIG); + + Stack->push(x1); + f->call(Stack); + real f1=pop<real>(Stack); + if(f1 == 0.0) return x1; + + Stack->push(x2); + f->call(Stack); + real f2=pop<real>(Stack); + if(f2 == 0.0) return x2; + + if((f1 > 0.0 && f2 > 0.0) || (f1 < 0.0 && f2 < 0.0)) { + ostringstream buf; + buf << "root not bracketed, f(x1)=" << f1 << ", f(x2)=" << f2 << endl; + error(buf); + } + + real x=0.5*(x1+x2); + real dxold=fabs(x2-x1); + if(f1 > 0.0) { + real temp=x1; + x1=x2; + x2=temp; + } + + if(verbose) + cout << "midpoint: " << x << endl; + + real dx=dxold; + Stack->push(x); + f->call(Stack); + real y=pop<real>(Stack); + + Stack->push(x); + fprime->call(Stack); + real dy=pop<real>(Stack); + + Int j; + for(j=0; j < iterations; j++) { + if(((x-x2)*dy-y)*((x-x1)*dy-y) >= 0.0 || fabs(2.0*y) > fabs(dxold*dy)) { + dxold=dx; + dx=0.5*(x2-x1); + x=x1+dx; + if(verbose) + cout << "bisection: " << x << endl; + if(x1 == x) return x; + } else { + dxold=dx; + dx=y/dy; + real temp=x; + x -= dx; + if(verbose) + cout << "Newton-Raphson: " << x << endl; + if(temp == x) return x; + } + if(fabs(dx) < fuzz*fabs(x)) return x; + + Stack->push(x); + f->call(Stack); + y=pop<real>(Stack); + + Stack->push(x); + fprime->call(Stack); + dy=pop<real>(Stack); + + if(y < 0.0) x1=x; + else x2=x; + } + if(verbose) + cout.precision(oldPrec); + return (j == iterations) ? DBL_MAX : x; +} + +real simpson(callableReal *f, real a, real b, real acc=DBL_EPSILON, + real dxmax=0) +{ + real integral; + if(dxmax == 0) dxmax=b-a; + Func=f; + FuncStack=Stack; + if(!simpson(integral,wrapFunction,a,b,acc,dxmax)) + error("nesting capacity exceeded in simpson"); + return integral; +} + +// Compute the fast Fourier transform of a pair array +pairarray* :pairArrayFFT(pairarray *a, Int sign=1) +{ + unsigned n=(unsigned) checkArray(a); +#ifdef HAVE_LIBFFTW3 + array *c=new array(n); + if(n) { + Complex *f=FFTWComplex(n); + fft1d Forward(n,intcast(sign),f); + + for(size_t i=0; i < n; i++) { + pair z=read<pair>(a,i); + f[i]=Complex(z.getx(),z.gety()); + } + Forward.fft(f); + + for(size_t i=0; i < n; i++) { + Complex z=f[i]; + (*c)[i]=pair(z.real(),z.imag()); + } + FFTWdelete(f); + } +#else + unused(&n); + unused(&sign); + array *c=new array(0); +#endif // HAVE_LIBFFTW3 + return c; +} + +Intarray2 *triangulate(pairarray *z) +{ + size_t nv=checkArray(z); +// Call robust version of Gilles Dumoulin's port of Paul Bourke's +// triangulation code. + + XYZ *pxyz=new XYZ[nv+3]; + ITRIANGLE *V=new ITRIANGLE[4*nv]; + + for(size_t i=0; i < nv; ++i) { + pair w=read<pair>(z,i); + pxyz[i].p[0]=w.getx(); + pxyz[i].p[1]=w.gety(); + pxyz[i].i=(Int) i; + } + + Int ntri; + Triangulate((Int) nv,pxyz,V,ntri,true,false); + + size_t nt=(size_t) ntri; + array *t=new array(nt); + for(size_t i=0; i < nt; ++i) { + array *ti=new array(3); + (*t)[i]=ti; + ITRIANGLE *Vi=V+i; + (*ti)[0]=pxyz[Vi->p1].i; + (*ti)[1]=pxyz[Vi->p2].i; + (*ti)[2]=pxyz[Vi->p3].i; + } + + delete[] V; + delete[] pxyz; + return t; +} + +real norm(realarray *a) +{ + size_t n=checkArray(a); + real M=0.0; + for(size_t i=0; i < n; ++i) { + real x=fabs(vm::read<real>(a,i)); + if(x > M) M=x; + } + return M; +} + +real norm(realarray2 *a) +{ + size_t n=checkArray(a); + real M=0.0; + for(size_t i=0; i < n; ++i) { + vm::array *ai=vm::read<vm::array*>(a,i); + size_t m=checkArray(ai); + for(size_t j=0; j < m; ++j) { + real a=fabs(vm::read<real>(ai,j)); + if(a > M) M=a; + } + } + return M; +} + +real norm(triplearray2 *a) +{ + size_t n=checkArray(a); + real M=0.0; + for(size_t i=0; i < n; ++i) { + vm::array *ai=vm::read<vm::array*>(a,i); + size_t m=checkArray(ai); + for(size_t j=0; j < m; ++j) { + real a=vm::read<triple>(ai,j).abs2(); + if(a > M) M=a; + } + } + return sqrt(M); +} + +real change2(triplearray2 *a) +{ + size_t n=checkArray(a); + if(n == 0) return 0.0; + + vm::array *a0=vm::read<vm::array*>(a,0); + size_t m=checkArray(a0); + if(m == 0) return 0.0; + triple a00=vm::read<triple>(a0,0); + real M=0.0; + + for(size_t i=0; i < n; ++i) { + vm::array *ai=vm::read<vm::array*>(a,i); + size_t m=checkArray(ai); + for(size_t j=0; j < m; ++j) { + real a=(vm::read<triple>(ai,j)-a00).abs2(); + if(a > M) M=a; + } + } + return M; +} + +triple minbezier(triplearray2 *P, triple b) +{ + real *A=copyTripleArray2Components(P,true,4); + b=triple(bound(A,::min,b.getx(),sqrtFuzz*norm(A,16)), + bound(A+16,::min,b.gety(),sqrtFuzz*norm(A+16,16)), + bound(A+32,::min,b.getz(),sqrtFuzz*norm(A+32,16))); + delete[] A; + return b; +} + +triple maxbezier(triplearray2 *P, triple b) +{ + real *A=copyTripleArray2Components(P,true,4); + b=triple(bound(A,::max,b.getx(),sqrtFuzz*norm(A,16)), + bound(A+16,::max,b.gety(),sqrtFuzz*norm(A+16,16)), + bound(A+32,::max,b.getz(),sqrtFuzz*norm(A+32,16))); + delete[] A; + return b; +} + +pair minratio(triplearray2 *P, pair b) +{ + triple *A=copyTripleArray2C(P,true,4); + real fuzz=sqrtFuzz*norm(A,16); + b=pair(bound(A,::min,xratio,b.getx(),fuzz), + bound(A,::min,yratio,b.gety(),fuzz)); + delete[] A; + return b; +} + +pair maxratio(triplearray2 *P, pair b) +{ + triple *A=copyTripleArray2C(P,true,4); + real fuzz=sqrtFuzz*norm(A,16); + b=pair(bound(A,::max,xratio,b.getx(),fuzz), + bound(A,::max,yratio,b.gety(),fuzz)); + delete[] A; + return b; +} diff --git a/Build/source/utils/asymptote/runbacktrace.cc b/Build/source/utils/asymptote/runbacktrace.cc new file mode 100644 index 00000000000..1c25be74800 --- /dev/null +++ b/Build/source/utils/asymptote/runbacktrace.cc @@ -0,0 +1,119 @@ +/***** Autogenerated from runbacktrace.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runbacktrace.in" +/***** + * backtrace.in + * Andy Hammerlindl 2009/07/28 + * + * Runtime functions for printing garbage collector backtraces. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 11 "runbacktrace.in" +// No extra code for .cc file. + +// Autogenerated routines: + + + +namespace run { +#line 16 "runbacktrace.in" +// void generate_random_backtrace(); +void gen_runbacktrace0(stack *) +{ +#line 17 "runbacktrace.in" +#if defined(USEGC) && defined(GC_DEBUG) && defined(GC_BACKTRACE) + GC_generate_random_backtrace(); +#else + error("generate_random_backtrace() requires ./configure --enable-gc-debug"); +#endif +} + +#line 25 "runbacktrace.in" +// void print_random_addresses(Int n=1); +void gen_runbacktrace1(stack *Stack) +{ + Int n=vm::pop<Int>(Stack,1); +#line 26 "runbacktrace.in" +#if defined(USEGC) && defined(GC_DEBUG) && defined(GC_BACKTRACE) + GC_gcollect(); + for (Int i=0; i < n; ++i) + GC_debug_print_heap_obj_proc(GC_base(GC_generate_random_valid_address())); +#else + error("print_random_addresses() requires ./configure --enable-gc-debug"); + unused(&n); // Avoid unused variable warning message. +#endif +} + +} // namespace run + +namespace trans { + +void gen_runbacktrace_venv(venv &ve) +{ +#line 16 "runbacktrace.in" + addFunc(ve, run::gen_runbacktrace0, primVoid(), "generate_random_backtrace"); +#line 25 "runbacktrace.in" + addFunc(ve, run::gen_runbacktrace1, primVoid(), "print_random_addresses", formal(primInt(), "n", true, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runbacktrace.h b/Build/source/utils/asymptote/runbacktrace.h new file mode 100644 index 00000000000..9ddef1a9966 --- /dev/null +++ b/Build/source/utils/asymptote/runbacktrace.h @@ -0,0 +1,8 @@ +/***** Autogenerated from runbacktrace.in; changes will be overwritten *****/ + +#ifndef runbacktrace_H +#define runbacktrace_H +namespace run { +} + +#endif // runbacktrace_H diff --git a/Build/source/utils/asymptote/runbacktrace.in b/Build/source/utils/asymptote/runbacktrace.in new file mode 100644 index 00000000000..416ac437166 --- /dev/null +++ b/Build/source/utils/asymptote/runbacktrace.in @@ -0,0 +1,35 @@ +/***** + * backtrace.in + * Andy Hammerlindl 2009/07/28 + * + * Runtime functions for printing garbage collector backtraces. + * + *****/ + +// No extra types defined. + +// No extra code for .cc file. + +// Autogenerated routines: + + +void generate_random_backtrace() +{ +#if defined(USEGC) && defined(GC_DEBUG) && defined(GC_BACKTRACE) + GC_generate_random_backtrace(); +#else + error("generate_random_backtrace() requires ./configure --enable-gc-debug"); +#endif +} + +void print_random_addresses(Int n=1) +{ +#if defined(USEGC) && defined(GC_DEBUG) && defined(GC_BACKTRACE) + GC_gcollect(); + for (Int i=0; i < n; ++i) + GC_debug_print_heap_obj_proc(GC_base(GC_generate_random_valid_address())); +#else + error("print_random_addresses() requires ./configure --enable-gc-debug"); + unused(&n); // Avoid unused variable warning message. +#endif +} diff --git a/Build/source/utils/asymptote/runfile.cc b/Build/source/utils/asymptote/runfile.cc new file mode 100644 index 00000000000..991929c45d6 --- /dev/null +++ b/Build/source/utils/asymptote/runfile.cc @@ -0,0 +1,699 @@ +/***** Autogenerated from runfile.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runfile.in" +/***** + * runfile.in + * + * Runtime functions for file operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 10 "runfile.in" +#include "fileio.h" +#include "callable.h" +#include "triple.h" +#include "array.h" + +using namespace camp; +using namespace settings; +using namespace vm; + +string commentchar="#"; + +// Autogenerated routines: + + + +namespace run { +#line 24 "runfile.in" +// bool ==(file *a, file *b); +void gen_runfile0(stack *Stack) +{ + file * b=vm::pop<file *>(Stack); + file * a=vm::pop<file *>(Stack); +#line 25 "runfile.in" + {Stack->push<bool>(a == b); return;} +} + +#line 29 "runfile.in" +// bool !=(file *a, file *b); +void gen_runfile1(stack *Stack) +{ + file * b=vm::pop<file *>(Stack); + file * a=vm::pop<file *>(Stack); +#line 30 "runfile.in" + {Stack->push<bool>(a != b); return;} +} + +#line 34 "runfile.in" +void nullFile(stack *Stack) +{ +#line 35 "runfile.in" + {Stack->push<file*>(&camp::nullfile); return;} +} + +#line 39 "runfile.in" +// file* input(string name, bool check=true, string comment=commentchar); +void gen_runfile3(stack *Stack) +{ + string comment=vm::pop<string>(Stack,commentchar); + bool check=vm::pop<bool>(Stack,true); + string name=vm::pop<string>(Stack); +#line 40 "runfile.in" + char c=comment.empty() ? (char) 0 : comment[0]; + file *f=new ifile(name,c,check); + f->open(); + {Stack->push<file*>(f); return;} +} + +#line 47 "runfile.in" +// file* output(string name, bool update=false, string comment=commentchar); +void gen_runfile4(stack *Stack) +{ + string comment=vm::pop<string>(Stack,commentchar); + bool update=vm::pop<bool>(Stack,false); + string name=vm::pop<string>(Stack); +#line 48 "runfile.in" + file *f; + if(update) { + char c=comment.empty() ? (char) 0 : comment[0]; + f=new iofile(name,c); + } else f=new ofile(name); + f->open(); + if(update) f->seek(0,false); + {Stack->push<file*>(f); return;} +} + +#line 59 "runfile.in" +// file* xinput(string name, bool check=true); +void gen_runfile5(stack *Stack) +{ + bool check=vm::pop<bool>(Stack,true); + string name=vm::pop<string>(Stack); +#line 60 "runfile.in" +#ifdef HAVE_RPC_RPC_H + file *f=new ixfile(name,check); + f->open(); + {Stack->push<file*>(f); return;} +#else + ostringstream buf; + buf << name << ": XDR read support not enabled"; + error(buf); + unused(&check); // Suppress unused variable warning +#endif +} + +#line 73 "runfile.in" +// file* xoutput(string name, bool update=false); +void gen_runfile6(stack *Stack) +{ + bool update=vm::pop<bool>(Stack,false); + string name=vm::pop<string>(Stack); +#line 74 "runfile.in" +#ifdef HAVE_RPC_RPC_H + file *f; + if(update) + f=new ioxfile(name); + else f=new oxfile(name); + f->open(); + if(update) f->seek(0,false); + {Stack->push<file*>(f); return;} +#else + ostringstream buf; + buf << name << ": XDR write support not enabled"; + error(buf); + unused(&update); // Suppress unused variable warning +#endif +} + +#line 91 "runfile.in" +// file* binput(string name, bool check=true); +void gen_runfile7(stack *Stack) +{ + bool check=vm::pop<bool>(Stack,true); + string name=vm::pop<string>(Stack); +#line 92 "runfile.in" + file *f=new ibfile(name,check); + f->open(); + {Stack->push<file*>(f); return;} +} + +#line 98 "runfile.in" +// file* boutput(string name, bool update=false); +void gen_runfile8(stack *Stack) +{ + bool update=vm::pop<bool>(Stack,false); + string name=vm::pop<string>(Stack); +#line 99 "runfile.in" + file *f; + if(update) f=new iobfile(name); + else f=new obfile(name); + f->open(); + if(update) f->seek(0,false); + {Stack->push<file*>(f); return;} +} + +#line 108 "runfile.in" +// bool eof(file *f); +void gen_runfile9(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 109 "runfile.in" + {Stack->push<bool>(f->eof()); return;} +} + +#line 113 "runfile.in" +// bool eol(file *f); +void gen_runfile10(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 114 "runfile.in" + {Stack->push<bool>(f->eol()); return;} +} + +#line 118 "runfile.in" +// bool error(file *f); +void gen_runfile11(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 119 "runfile.in" + {Stack->push<bool>(f->error()); return;} +} + +#line 123 "runfile.in" +// void clear(file *f); +void gen_runfile12(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 124 "runfile.in" + f->clear(); +} + +#line 128 "runfile.in" +// void close(file *f); +void gen_runfile13(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 129 "runfile.in" + f->close(); +} + +#line 133 "runfile.in" +// Int precision(file *f=NULL, Int digits=0); +void gen_runfile14(stack *Stack) +{ + Int digits=vm::pop<Int>(Stack,0); + file * f=vm::pop<file *>(Stack,NULL); +#line 134 "runfile.in" + if(f == 0) f=&camp::Stdout; + {Stack->push<Int>(f->precision(digits)); return;} +} + +#line 139 "runfile.in" +// void flush(file *f); +void gen_runfile15(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 140 "runfile.in" + f->flush(); +} + +#line 144 "runfile.in" +// string getc(file *f); +void gen_runfile16(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 145 "runfile.in" + char c=0; + if(f->isOpen()) f->read(c); + static char str[1]; + str[0]=c; + {Stack->push<string>(string(str)); return;} +} + +#line 153 "runfile.in" +// Int tell(file *f); +void gen_runfile17(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 154 "runfile.in" + {Stack->push<Int>(f->tell()); return;} +} + +#line 158 "runfile.in" +// void seek(file *f, Int pos); +void gen_runfile18(stack *Stack) +{ + Int pos=vm::pop<Int>(Stack); + file * f=vm::pop<file *>(Stack); +#line 159 "runfile.in" + f->seek(pos,pos >= 0); +} + +#line 163 "runfile.in" +// void seekeof(file *f); +void gen_runfile19(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 164 "runfile.in" + f->seek(0,false); +} + +#line 168 "runfile.in" +void namePart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 169 "runfile.in" + {Stack->push<string>(f.filename()); return;} +} + +#line 173 "runfile.in" +void modePart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 174 "runfile.in" + {Stack->push<string>(f.FileMode()); return;} +} + +// Set file dimensions +#line 179 "runfile.in" +void dimensionSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + Int nz=vm::pop<Int>(Stack,-1); + Int ny=vm::pop<Int>(Stack,-1); + Int nx=vm::pop<Int>(Stack,-1); +#line 180 "runfile.in" + f->dimension(nx,ny,nz); + {Stack->push<file*>(f); return;} +} + +#line 185 "runfile.in" +void dimensionSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 186 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(dimensionSetHelper),f)); return;} +} + +#line 190 "runfile.in" +void dimensionPart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 191 "runfile.in" + array *a=new array(3); + (*a)[0]=f.Nx(); + (*a)[1]=f.Ny(); + (*a)[2]=f.Nz(); + {Stack->push<array*>(a); return;} +} + +// Set file f to read arrays in line-at-a-time mode +#line 200 "runfile.in" +void lineSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + bool b=vm::pop<bool>(Stack,true); +#line 201 "runfile.in" + f->LineMode(b); + {Stack->push<file*>(f); return;} +} + +#line 206 "runfile.in" +void lineSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 207 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(lineSetHelper),f)); return;} +} + +#line 211 "runfile.in" +void linePart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 212 "runfile.in" + {Stack->push<bool>(f.LineMode()); return;} +} + +// Set file to read comma-separated values +#line 217 "runfile.in" +void csvSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + bool b=vm::pop<bool>(Stack,true); +#line 218 "runfile.in" + f->CSVMode(b); + {Stack->push<file*>(f); return;} +} + +#line 223 "runfile.in" +void csvSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 224 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(csvSetHelper),f)); return;} +} + +#line 228 "runfile.in" +void csvPart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 229 "runfile.in" + {Stack->push<bool>(f.CSVMode()); return;} +} + +// Set file to read whitespace-separated values +#line 234 "runfile.in" +void wordSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + bool b=vm::pop<bool>(Stack,true); +#line 235 "runfile.in" + f->WordMode(b); + {Stack->push<file*>(f); return;} +} + +#line 240 "runfile.in" +void wordSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 241 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(wordSetHelper),f)); return;} +} + +#line 245 "runfile.in" +void wordPart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 246 "runfile.in" + {Stack->push<bool>(f.WordMode()); return;} +} + +// Set file to read/write single precision real XDR values. +#line 251 "runfile.in" +void singlerealSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + bool b=vm::pop<bool>(Stack,true); +#line 252 "runfile.in" + f->SingleReal(b); + {Stack->push<file*>(f); return;} +} + +#line 257 "runfile.in" +void singlerealSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 258 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(singlerealSetHelper),f)); return;} +} + +#line 262 "runfile.in" +void singlerealPart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 263 "runfile.in" + {Stack->push<bool>(f.SingleReal()); return;} +} + +// Set file to read/write single precision int XDR values. +#line 268 "runfile.in" +void singleintSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + bool b=vm::pop<bool>(Stack,true); +#line 269 "runfile.in" + f->SingleInt(b); + {Stack->push<file*>(f); return;} +} + +#line 274 "runfile.in" +void singleintSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 275 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(singleintSetHelper),f)); return;} +} + +#line 279 "runfile.in" +void singleintPart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 280 "runfile.in" + {Stack->push<bool>(f.SingleInt()); return;} +} + +// Set file to read/write signed int XDR values. +#line 285 "runfile.in" +void signedintSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + bool b=vm::pop<bool>(Stack,true); +#line 286 "runfile.in" + f->SignedInt(b); + {Stack->push<file*>(f); return;} +} + +#line 291 "runfile.in" +void signedintSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 292 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(signedintSetHelper),f)); return;} +} + +#line 296 "runfile.in" +void signedintPart(stack *Stack) +{ + file f=vm::pop<file>(Stack); +#line 297 "runfile.in" + {Stack->push<bool>(f.SignedInt()); return;} +} + +// Set file to read an arrayi (i int sizes followed by an i-dimensional array) +#line 302 "runfile.in" +void readSetHelper(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); + Int i=vm::pop<Int>(Stack); +#line 303 "runfile.in" + switch(i) { + case 1: + f->dimension(-2); + break; + + case 2: + f->dimension(-2,-2); + break; + + case 3: + f->dimension(-2,-2,-2); + break; + + default: + f->dimension(); + } + + {Stack->push<file*>(f); return;} +} + +#line 324 "runfile.in" +void readSet(stack *Stack) +{ + file * f=vm::pop<file *>(Stack); +#line 325 "runfile.in" + {Stack->push<callable*>(new thunk(new bfunc(readSetHelper),f)); return;} +} + +// Delete file named s. +#line 330 "runfile.in" +// Int delete(string *s); +void gen_runfile45(stack *Stack) +{ + string * s=vm::pop<string *>(Stack); +#line 331 "runfile.in" + checkLocal(*s); + Int rc=unlink(s->c_str()); + if(rc == 0 && verbose > 0) + cout << "Deleted " << *s << endl; + {Stack->push<Int>(rc); return;} +} + +// Rename file "from" to file "to". +#line 340 "runfile.in" +// Int rename(string *from, string *to); +void gen_runfile46(stack *Stack) +{ + string * to=vm::pop<string *>(Stack); + string * from=vm::pop<string *>(Stack); +#line 341 "runfile.in" + checkLocal(*from); + checkLocal(*to); + Int rc=rename(from->c_str(),to->c_str()); + if(rc == 0 && verbose > 0) + cout << "Renamed " << *from << " to " << *to << endl; + {Stack->push<Int>(rc); return;} +} + +} // namespace run + +namespace trans { + +void gen_runfile_venv(venv &ve) +{ +#line 24 "runfile.in" + addFunc(ve, run::gen_runfile0, primBoolean(), "==", formal(primFile(), "a", false, false), formal(primFile(), "b", false, false)); +#line 29 "runfile.in" + addFunc(ve, run::gen_runfile1, primBoolean(), "!=", formal(primFile(), "a", false, false), formal(primFile(), "b", false, false)); +#line 34 "runfile.in" + REGISTER_BLTIN(run::nullFile,"nullFile"); +#line 39 "runfile.in" + addFunc(ve, run::gen_runfile3, primFile(), "input", formal(primString() , "name", false, false), formal(primBoolean(), "check", true, false), formal(primString() , "comment", true, false)); +#line 47 "runfile.in" + addFunc(ve, run::gen_runfile4, primFile(), "output", formal(primString() , "name", false, false), formal(primBoolean(), "update", true, false), formal(primString() , "comment", true, false)); +#line 59 "runfile.in" + addFunc(ve, run::gen_runfile5, primFile(), "xinput", formal(primString() , "name", false, false), formal(primBoolean(), "check", true, false)); +#line 73 "runfile.in" + addFunc(ve, run::gen_runfile6, primFile(), "xoutput", formal(primString() , "name", false, false), formal(primBoolean(), "update", true, false)); +#line 91 "runfile.in" + addFunc(ve, run::gen_runfile7, primFile(), "binput", formal(primString() , "name", false, false), formal(primBoolean(), "check", true, false)); +#line 98 "runfile.in" + addFunc(ve, run::gen_runfile8, primFile(), "boutput", formal(primString() , "name", false, false), formal(primBoolean(), "update", true, false)); +#line 108 "runfile.in" + addFunc(ve, run::gen_runfile9, primBoolean(), "eof", formal(primFile(), "f", false, false)); +#line 113 "runfile.in" + addFunc(ve, run::gen_runfile10, primBoolean(), "eol", formal(primFile(), "f", false, false)); +#line 118 "runfile.in" + addFunc(ve, run::gen_runfile11, primBoolean(), "error", formal(primFile(), "f", false, false)); +#line 123 "runfile.in" + addFunc(ve, run::gen_runfile12, primVoid(), "clear", formal(primFile(), "f", false, false)); +#line 128 "runfile.in" + addFunc(ve, run::gen_runfile13, primVoid(), "close", formal(primFile(), "f", false, false)); +#line 133 "runfile.in" + addFunc(ve, run::gen_runfile14, primInt(), "precision", formal(primFile(), "f", true, false), formal(primInt(), "digits", true, false)); +#line 139 "runfile.in" + addFunc(ve, run::gen_runfile15, primVoid(), "flush", formal(primFile(), "f", false, false)); +#line 144 "runfile.in" + addFunc(ve, run::gen_runfile16, primString() , "getc", formal(primFile(), "f", false, false)); +#line 153 "runfile.in" + addFunc(ve, run::gen_runfile17, primInt(), "tell", formal(primFile(), "f", false, false)); +#line 158 "runfile.in" + addFunc(ve, run::gen_runfile18, primVoid(), "seek", formal(primFile(), "f", false, false), formal(primInt(), "pos", false, false)); +#line 163 "runfile.in" + addFunc(ve, run::gen_runfile19, primVoid(), "seekeof", formal(primFile(), "f", false, false)); +#line 168 "runfile.in" + REGISTER_BLTIN(run::namePart,"namePart"); +#line 173 "runfile.in" + REGISTER_BLTIN(run::modePart,"modePart"); +#line 178 "runfile.in" + REGISTER_BLTIN(run::dimensionSetHelper,"dimensionSetHelper"); +#line 185 "runfile.in" + REGISTER_BLTIN(run::dimensionSet,"dimensionSet"); +#line 190 "runfile.in" + REGISTER_BLTIN(run::dimensionPart,"dimensionPart"); +#line 199 "runfile.in" + REGISTER_BLTIN(run::lineSetHelper,"lineSetHelper"); +#line 206 "runfile.in" + REGISTER_BLTIN(run::lineSet,"lineSet"); +#line 211 "runfile.in" + REGISTER_BLTIN(run::linePart,"linePart"); +#line 216 "runfile.in" + REGISTER_BLTIN(run::csvSetHelper,"csvSetHelper"); +#line 223 "runfile.in" + REGISTER_BLTIN(run::csvSet,"csvSet"); +#line 228 "runfile.in" + REGISTER_BLTIN(run::csvPart,"csvPart"); +#line 233 "runfile.in" + REGISTER_BLTIN(run::wordSetHelper,"wordSetHelper"); +#line 240 "runfile.in" + REGISTER_BLTIN(run::wordSet,"wordSet"); +#line 245 "runfile.in" + REGISTER_BLTIN(run::wordPart,"wordPart"); +#line 250 "runfile.in" + REGISTER_BLTIN(run::singlerealSetHelper,"singlerealSetHelper"); +#line 257 "runfile.in" + REGISTER_BLTIN(run::singlerealSet,"singlerealSet"); +#line 262 "runfile.in" + REGISTER_BLTIN(run::singlerealPart,"singlerealPart"); +#line 267 "runfile.in" + REGISTER_BLTIN(run::singleintSetHelper,"singleintSetHelper"); +#line 274 "runfile.in" + REGISTER_BLTIN(run::singleintSet,"singleintSet"); +#line 279 "runfile.in" + REGISTER_BLTIN(run::singleintPart,"singleintPart"); +#line 284 "runfile.in" + REGISTER_BLTIN(run::signedintSetHelper,"signedintSetHelper"); +#line 291 "runfile.in" + REGISTER_BLTIN(run::signedintSet,"signedintSet"); +#line 296 "runfile.in" + REGISTER_BLTIN(run::signedintPart,"signedintPart"); +#line 301 "runfile.in" + REGISTER_BLTIN(run::readSetHelper,"readSetHelper"); +#line 324 "runfile.in" + REGISTER_BLTIN(run::readSet,"readSet"); +#line 329 "runfile.in" + addFunc(ve, run::gen_runfile45, primInt(), "delete", formal(primString(), "s", false, false)); +#line 339 "runfile.in" + addFunc(ve, run::gen_runfile46, primInt(), "rename", formal(primString(), "from", false, false), formal(primString(), "to", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runfile.h b/Build/source/utils/asymptote/runfile.h new file mode 100644 index 00000000000..f523c58815a --- /dev/null +++ b/Build/source/utils/asymptote/runfile.h @@ -0,0 +1,34 @@ +/***** Autogenerated from runfile.in; changes will be overwritten *****/ + +#ifndef runfile_H +#define runfile_H +namespace run { +void nullFile(vm::stack *); +void namePart(vm::stack *); +void modePart(vm::stack *); +void dimensionSetHelper(vm::stack *); +void dimensionSet(vm::stack *); +void dimensionPart(vm::stack *); +void lineSetHelper(vm::stack *); +void lineSet(vm::stack *); +void linePart(vm::stack *); +void csvSetHelper(vm::stack *); +void csvSet(vm::stack *); +void csvPart(vm::stack *); +void wordSetHelper(vm::stack *); +void wordSet(vm::stack *); +void wordPart(vm::stack *); +void singlerealSetHelper(vm::stack *); +void singlerealSet(vm::stack *); +void singlerealPart(vm::stack *); +void singleintSetHelper(vm::stack *); +void singleintSet(vm::stack *); +void singleintPart(vm::stack *); +void signedintSetHelper(vm::stack *); +void signedintSet(vm::stack *); +void signedintPart(vm::stack *); +void readSetHelper(vm::stack *); +void readSet(vm::stack *); +} + +#endif // runfile_H diff --git a/Build/source/utils/asymptote/runfile.in b/Build/source/utils/asymptote/runfile.in new file mode 100644 index 00000000000..fa85c86e182 --- /dev/null +++ b/Build/source/utils/asymptote/runfile.in @@ -0,0 +1,348 @@ +/***** + * runfile.in + * + * Runtime functions for file operations. + * + *****/ + +file* => primFile() + +#include "fileio.h" +#include "callable.h" +#include "triple.h" +#include "array.h" + +using namespace camp; +using namespace settings; +using namespace vm; + +string commentchar="#"; + +// Autogenerated routines: + + +bool ==(file *a, file *b) +{ + return a == b; +} + +bool !=(file *a, file *b) +{ + return a != b; +} + +file* :nullFile() +{ + return &camp::nullfile; +} + +file* input(string name, bool check=true, string comment=commentchar) +{ + char c=comment.empty() ? (char) 0 : comment[0]; + file *f=new ifile(name,c,check); + f->open(); + return f; +} + +file* output(string name, bool update=false, string comment=commentchar) +{ + file *f; + if(update) { + char c=comment.empty() ? (char) 0 : comment[0]; + f=new iofile(name,c); + } else f=new ofile(name); + f->open(); + if(update) f->seek(0,false); + return f; +} + +file* xinput(string name, bool check=true) +{ +#ifdef HAVE_RPC_RPC_H + file *f=new ixfile(name,check); + f->open(); + return f; +#else + ostringstream buf; + buf << name << ": XDR read support not enabled"; + error(buf); + unused(&check); // Suppress unused variable warning +#endif +} + +file* xoutput(string name, bool update=false) +{ +#ifdef HAVE_RPC_RPC_H + file *f; + if(update) + f=new ioxfile(name); + else f=new oxfile(name); + f->open(); + if(update) f->seek(0,false); + return f; +#else + ostringstream buf; + buf << name << ": XDR write support not enabled"; + error(buf); + unused(&update); // Suppress unused variable warning +#endif +} + +file* binput(string name, bool check=true) +{ + file *f=new ibfile(name,check); + f->open(); + return f; +} + +file* boutput(string name, bool update=false) +{ + file *f; + if(update) f=new iobfile(name); + else f=new obfile(name); + f->open(); + if(update) f->seek(0,false); + return f; +} + +bool eof(file *f) +{ + return f->eof(); +} + +bool eol(file *f) +{ + return f->eol(); +} + +bool error(file *f) +{ + return f->error(); +} + +void clear(file *f) +{ + f->clear(); +} + +void close(file *f) +{ + f->close(); +} + +Int precision(file *f=NULL, Int digits=0) +{ + if(f == 0) f=&camp::Stdout; + return f->precision(digits); +} + +void flush(file *f) +{ + f->flush(); +} + +string getc(file *f) +{ + char c=0; + if(f->isOpen()) f->read(c); + static char str[1]; + str[0]=c; + return string(str); +} + +Int tell(file *f) +{ + return f->tell(); +} + +void seek(file *f, Int pos) +{ + f->seek(pos,pos >= 0); +} + +void seekeof(file *f) +{ + f->seek(0,false); +} + +string :namePart(file f) +{ + return f.filename(); +} + +string :modePart(file f) +{ + return f.FileMode(); +} + +// Set file dimensions +file* :dimensionSetHelper(Int nx=-1, Int ny=-1, Int nz=-1, file *f) +{ + f->dimension(nx,ny,nz); + return f; +} + +callable* :dimensionSet(file *f) +{ + return new thunk(new bfunc(dimensionSetHelper),f); +} + +array * :dimensionPart(file f) +{ + array *a=new array(3); + (*a)[0]=f.Nx(); + (*a)[1]=f.Ny(); + (*a)[2]=f.Nz(); + return a; +} + +// Set file f to read arrays in line-at-a-time mode +file* :lineSetHelper(bool b=true, file *f) +{ + f->LineMode(b); + return f; +} + +callable* :lineSet(file *f) +{ + return new thunk(new bfunc(lineSetHelper),f); +} + +bool :linePart(file f) +{ + return f.LineMode(); +} + +// Set file to read comma-separated values +file* :csvSetHelper(bool b=true, file *f) +{ + f->CSVMode(b); + return f; +} + +callable* :csvSet(file *f) +{ + return new thunk(new bfunc(csvSetHelper),f); +} + +bool :csvPart(file f) +{ + return f.CSVMode(); +} + +// Set file to read whitespace-separated values +file* :wordSetHelper(bool b=true, file *f) +{ + f->WordMode(b); + return f; +} + +callable* :wordSet(file *f) +{ + return new thunk(new bfunc(wordSetHelper),f); +} + +bool :wordPart(file f) +{ + return f.WordMode(); +} + +// Set file to read/write single precision real XDR values. +file* :singlerealSetHelper(bool b=true, file *f) +{ + f->SingleReal(b); + return f; +} + +callable* :singlerealSet(file *f) +{ + return new thunk(new bfunc(singlerealSetHelper),f); +} + +bool :singlerealPart(file f) +{ + return f.SingleReal(); +} + +// Set file to read/write single precision int XDR values. +file* :singleintSetHelper(bool b=true, file *f) +{ + f->SingleInt(b); + return f; +} + +callable* :singleintSet(file *f) +{ + return new thunk(new bfunc(singleintSetHelper),f); +} + +bool :singleintPart(file f) +{ + return f.SingleInt(); +} + +// Set file to read/write signed int XDR values. +file* :signedintSetHelper(bool b=true, file *f) +{ + f->SignedInt(b); + return f; +} + +callable* :signedintSet(file *f) +{ + return new thunk(new bfunc(signedintSetHelper),f); +} + +bool :signedintPart(file f) +{ + return f.SignedInt(); +} + +// Set file to read an arrayi (i int sizes followed by an i-dimensional array) +file* :readSetHelper(Int i, file *f) +{ + switch(i) { + case 1: + f->dimension(-2); + break; + + case 2: + f->dimension(-2,-2); + break; + + case 3: + f->dimension(-2,-2,-2); + break; + + default: + f->dimension(); + } + + return f; +} + +callable* :readSet(file *f) +{ + return new thunk(new bfunc(readSetHelper),f); +} + +// Delete file named s. +Int delete(string *s) +{ + checkLocal(*s); + Int rc=unlink(s->c_str()); + if(rc == 0 && verbose > 0) + cout << "Deleted " << *s << endl; + return rc; +} + +// Rename file "from" to file "to". +Int rename(string *from, string *to) +{ + checkLocal(*from); + checkLocal(*to); + Int rc=rename(from->c_str(),to->c_str()); + if(rc == 0 && verbose > 0) + cout << "Renamed " << *from << " to " << *to << endl; + return rc; +} diff --git a/Build/source/utils/asymptote/runhistory.cc b/Build/source/utils/asymptote/runhistory.cc new file mode 100644 index 00000000000..c0f06ed48b8 --- /dev/null +++ b/Build/source/utils/asymptote/runhistory.cc @@ -0,0 +1,331 @@ +/***** Autogenerated from runhistory.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runhistory.in" +/***** + * runhistory.in + * + * Runtime functions for history operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 12 "runhistory.in" + +#include "array.h" +#include "mathop.h" + +using namespace camp; +using namespace settings; +using namespace vm; +using namespace run; + +typedef array stringarray; +using types::stringArray; + +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) +#include <readline/readline.h> +#include <readline/history.h> + +struct historyState { + bool store; + HISTORY_STATE state; +}; + +typedef mem::map<CONST string, historyState> historyMap_t; +historyMap_t historyMap; +static HISTORY_STATE history_save; + +// Store a deep copy of the current readline history in dest. +void store_history(HISTORY_STATE *dest) +{ + HISTORY_STATE *src=history_get_history_state(); + if(src) { + *dest=*src; + for(Int i=0; i < src->length; ++i) + dest->entries[i]=src->entries[i]; + free(src); + } +} + +stringarray* get_history(Int n) +{ + int N=intcast(n); + if(N <= 0) N=history_length; + else N=Min(N,history_length); + array *a=new array((size_t) N); + int offset=history_length-N+1; + for(int i=0; i < N; ++i) { + HIST_ENTRY *last=history_get(offset+i); + string s=last ? last->line : ""; + (*a)[i]=s; + } + return a; +} + +string historyfilename(const string &name) +{ + return historyname+"_"+name; +} +#endif + +namespace run { + +extern string emptystring; + +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) +int readline_startup_hook() +{ +#ifdef __CYGWIN__ + rl_set_key("\\M-[3~",rl_delete,rl_get_keymap()); + rl_set_key("\\M-[2~",rl_overwrite_mode,rl_get_keymap()); +#endif + return 0; +} + +void init_readline(bool tabcompletion) +{ + static bool first=true; + if(first) { + first=false; +#ifdef __CYGWIN__ + rl_startup_hook=readline_startup_hook; +#endif + } + rl_bind_key('\t',tabcompletion ? rl_complete : rl_insert); +} +#endif + +void cleanup() +{ +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + store_history(&history_save); + int nlines=intcast(getSetting<Int>("historylines")); + for(historyMap_t::iterator h=historyMap.begin(); h != historyMap.end(); + ++h) { + history_set_history_state(&h->second.state); + stifle_history(nlines); + if(h->second.store) write_history(historyfilename(h->first).c_str()); + } + history_set_history_state(&history_save); +#endif +} +} + +// Autogenerated routines: + + + +namespace run { +// Return the last n lines of the history named name. +#line 117 "runhistory.in" +// stringarray* history(string name, Int n=1); +void gen_runhistory0(stack *Stack) +{ + Int n=vm::pop<Int>(Stack,1); + string name=vm::pop<string>(Stack); +#line 118 "runhistory.in" +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + bool newhistory=historyMap.find(name) == historyMap.end(); + + string filename; + + if(newhistory) { + filename=historyfilename(name); + std::ifstream exists(filename.c_str()); + if(!exists) {Stack->push<stringarray*>(new array(0)); return;} + } + + store_history(&history_save); + HISTORY_STATE& history=historyMap[name].state; + history_set_history_state(&history); + + if(newhistory) + read_history(filename.c_str()); + + array *a=get_history(n); + + store_history(&history); + history_set_history_state(&history_save); + + {Stack->push<stringarray*>(a); return;} +#else + unused(&n); + {Stack->push<stringarray*>(new array(0)); return;} +#endif +} + +// Return the last n lines of the interactive history. +#line 150 "runhistory.in" +// stringarray* history(Int n=0); +void gen_runhistory1(stack *Stack) +{ + Int n=vm::pop<Int>(Stack,0); +#line 151 "runhistory.in" +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + {Stack->push<stringarray*>(get_history(n)); return;} +#else + unused(&n); + {Stack->push<stringarray*>(new array(0)); return;} +#endif +} + +// Prompt for a string using prompt, the GNU readline library, and a +// local history named name. +#line 162 "runhistory.in" +// string readline(string prompt=emptystring, string name=emptystring, bool tabcompletion=false); +void gen_runhistory2(stack *Stack) +{ + bool tabcompletion=vm::pop<bool>(Stack,false); + string name=vm::pop<string>(Stack,emptystring); + string prompt=vm::pop<string>(Stack,emptystring); +#line 164 "runhistory.in" + if(!(isatty(STDIN_FILENO) || getSetting<bool>("interactive"))) + {Stack->push<string>(emptystring); return;} +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + init_readline(tabcompletion); + + store_history(&history_save); + bool newhistory=historyMap.find(name) == historyMap.end(); + historyState& h=historyMap[name]; + HISTORY_STATE& history=h.state; + history_set_history_state(&history); + + if(newhistory) + read_history(historyfilename(name).c_str()); + + static char *line=NULL; + /* Return the memory to the free pool + if the buffer has already been allocated. */ + if(line) { + free(line); + line=NULL; + } + + /* Get a line from the user. */ + line=readline(prompt.c_str()); + + if(!line) cout << endl; + + history_set_history_state(&history_save); + + {Stack->push<string>(line ? string(line) : emptystring); return;} +#else + cout << prompt; + string s; + getline(cin,s); + unused(&tabcompletion); // Avoid unused variable warning message. + {Stack->push<string>(s); return;} +#endif +} + +// Save a string in a local history named name. +// If store=true, store the local history in the file historyfilename(name). +#line 206 "runhistory.in" +// void saveline(string name, string value, bool store=true); +void gen_runhistory3(stack *Stack) +{ + bool store=vm::pop<bool>(Stack,true); + string value=vm::pop<string>(Stack); + string name=vm::pop<string>(Stack); +#line 207 "runhistory.in" +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + store_history(&history_save); + bool newhistory=historyMap.find(name) == historyMap.end(); + historyState& h=historyMap[name]; + h.store=store; + HISTORY_STATE& history=h.state; + history_set_history_state(&history); + + if(newhistory) + read_history(historyfilename(name).c_str()); + + if(value != "") { + add_history(value.c_str()); + if(store) { + std::ofstream hout(historyfilename(name).c_str(),std::ios::app); + hout << value << endl; + } + } + + store_history(&history); + history_set_history_state(&history_save); +#else + unused(&store); +#endif +} + +} // namespace run + +namespace trans { + +void gen_runhistory_venv(venv &ve) +{ +#line 116 "runhistory.in" + addFunc(ve, run::gen_runhistory0, stringArray(), "history", formal(primString() , "name", false, false), formal(primInt(), "n", true, false)); +#line 149 "runhistory.in" + addFunc(ve, run::gen_runhistory1, stringArray(), "history", formal(primInt(), "n", true, false)); +#line 160 "runhistory.in" + addFunc(ve, run::gen_runhistory2, primString() , "readline", formal(primString() , "prompt", true, false), formal(primString() , "name", true, false), formal(primBoolean(), "tabcompletion", true, false)); +#line 204 "runhistory.in" + addFunc(ve, run::gen_runhistory3, primVoid(), "saveline", formal(primString() , "name", false, false), formal(primString() , "value", false, false), formal(primBoolean(), "store", true, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runhistory.h b/Build/source/utils/asymptote/runhistory.h new file mode 100644 index 00000000000..50be6f77f1a --- /dev/null +++ b/Build/source/utils/asymptote/runhistory.h @@ -0,0 +1,8 @@ +/***** Autogenerated from runhistory.in; changes will be overwritten *****/ + +#ifndef runhistory_H +#define runhistory_H +namespace run { +} + +#endif // runhistory_H diff --git a/Build/source/utils/asymptote/runhistory.in b/Build/source/utils/asymptote/runhistory.in new file mode 100644 index 00000000000..69bbffcd069 --- /dev/null +++ b/Build/source/utils/asymptote/runhistory.in @@ -0,0 +1,232 @@ +/***** + * runhistory.in + * + * Runtime functions for history operations. + * + *****/ + +pair => primPair() +picture* => primPicture() +stringarray* => stringArray() + + +#include "array.h" +#include "mathop.h" + +using namespace camp; +using namespace settings; +using namespace vm; +using namespace run; + +typedef array stringarray; +using types::stringArray; + +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) +#include <readline/readline.h> +#include <readline/history.h> + +struct historyState { + bool store; + HISTORY_STATE state; +}; + +typedef mem::map<CONST string, historyState> historyMap_t; +historyMap_t historyMap; +static HISTORY_STATE history_save; + +// Store a deep copy of the current readline history in dest. +void store_history(HISTORY_STATE *dest) +{ + HISTORY_STATE *src=history_get_history_state(); + if(src) { + *dest=*src; + for(Int i=0; i < src->length; ++i) + dest->entries[i]=src->entries[i]; + free(src); + } +} + +stringarray* get_history(Int n) +{ + int N=intcast(n); + if(N <= 0) N=history_length; + else N=Min(N,history_length); + array *a=new array((size_t) N); + int offset=history_length-N+1; + for(int i=0; i < N; ++i) { + HIST_ENTRY *last=history_get(offset+i); + string s=last ? last->line : ""; + (*a)[i]=s; + } + return a; +} + +string historyfilename(const string &name) +{ + return historyname+"_"+name; +} +#endif + +namespace run { + +extern string emptystring; + +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) +int readline_startup_hook() +{ +#ifdef __CYGWIN__ + rl_set_key("\\M-[3~",rl_delete,rl_get_keymap()); + rl_set_key("\\M-[2~",rl_overwrite_mode,rl_get_keymap()); +#endif + return 0; +} + +void init_readline(bool tabcompletion) +{ + static bool first=true; + if(first) { + first=false; +#ifdef __CYGWIN__ + rl_startup_hook=readline_startup_hook; +#endif + } + rl_bind_key('\t',tabcompletion ? rl_complete : rl_insert); +} +#endif + +void cleanup() +{ +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + store_history(&history_save); + int nlines=intcast(getSetting<Int>("historylines")); + for(historyMap_t::iterator h=historyMap.begin(); h != historyMap.end(); + ++h) { + history_set_history_state(&h->second.state); + stifle_history(nlines); + if(h->second.store) write_history(historyfilename(h->first).c_str()); + } + history_set_history_state(&history_save); +#endif +} +} + +// Autogenerated routines: + + +// Return the last n lines of the history named name. +stringarray* history(string name, Int n=1) +{ +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + bool newhistory=historyMap.find(name) == historyMap.end(); + + string filename; + + if(newhistory) { + filename=historyfilename(name); + std::ifstream exists(filename.c_str()); + if(!exists) return new array(0); + } + + store_history(&history_save); + HISTORY_STATE& history=historyMap[name].state; + history_set_history_state(&history); + + if(newhistory) + read_history(filename.c_str()); + + array *a=get_history(n); + + store_history(&history); + history_set_history_state(&history_save); + + return a; +#else + unused(&n); + return new array(0); +#endif +} + +// Return the last n lines of the interactive history. +stringarray* history(Int n=0) +{ +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + return get_history(n); +#else + unused(&n); + return new array(0); +#endif +} + +// Prompt for a string using prompt, the GNU readline library, and a +// local history named name. +string readline(string prompt=emptystring, string name=emptystring, + bool tabcompletion=false) +{ + if(!(isatty(STDIN_FILENO) || getSetting<bool>("interactive"))) + return emptystring; +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + init_readline(tabcompletion); + + store_history(&history_save); + bool newhistory=historyMap.find(name) == historyMap.end(); + historyState& h=historyMap[name]; + HISTORY_STATE& history=h.state; + history_set_history_state(&history); + + if(newhistory) + read_history(historyfilename(name).c_str()); + + static char *line=NULL; + /* Return the memory to the free pool + if the buffer has already been allocated. */ + if(line) { + free(line); + line=NULL; + } + + /* Get a line from the user. */ + line=readline(prompt.c_str()); + + if(!line) cout << endl; + + history_set_history_state(&history_save); + + return line ? string(line) : emptystring; +#else + cout << prompt; + string s; + getline(cin,s); + unused(&tabcompletion); // Avoid unused variable warning message. + return s; +#endif +} + +// Save a string in a local history named name. +// If store=true, store the local history in the file historyfilename(name). +void saveline(string name, string value, bool store=true) +{ +#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) + store_history(&history_save); + bool newhistory=historyMap.find(name) == historyMap.end(); + historyState& h=historyMap[name]; + h.store=store; + HISTORY_STATE& history=h.state; + history_set_history_state(&history); + + if(newhistory) + read_history(historyfilename(name).c_str()); + + if(value != "") { + add_history(value.c_str()); + if(store) { + std::ofstream hout(historyfilename(name).c_str(),std::ios::app); + hout << value << endl; + } + } + + store_history(&history); + history_set_history_state(&history_save); +#else + unused(&store); +#endif +} diff --git a/Build/source/utils/asymptote/runlabel.cc b/Build/source/utils/asymptote/runlabel.cc new file mode 100644 index 00000000000..42a40bcc5f7 --- /dev/null +++ b/Build/source/utils/asymptote/runlabel.cc @@ -0,0 +1,511 @@ +/***** Autogenerated from runlabel.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runlabel.in" +/***** + * runlabel.in + * + * Runtime functions for label operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 16 "runlabel.in" +#include "picture.h" +#include "drawlabel.h" + +using namespace camp; +using namespace vm; +using namespace settings; + +typedef array realarray; +typedef array patharray; + +using types::realArray; +using types::pathArray; + +void cannotread(const string& s) +{ + ostringstream buf; + buf << "Cannot read from " << s; + error(buf); +} + +void cannotwrite(const string& s) +{ + ostringstream buf; + buf << "Cannot write to " << s; + error(buf); +} + +pair readpair(stringstream& s, double hscale=1.0, double vscale=1.0) +{ + double x,y; + s >> y; + s >> x; + return pair(hscale*x,vscale*y); +} + +string ASYx="/ASYx {( ) print ASYX sub 12 string cvs print} bind def"; +string ASYy="/ASYy {( ) print ASYY sub 12 string cvs print} bind def"; +string pathforall="{(M) print ASYy ASYx} {(L) print ASYy ASYx} {(C) print ASYy ASYx ASYy ASYx ASYy ASYx} {(c) print} pathforall"; +string currentpoint="print currentpoint ASYy ASYx "; +string ASYinit="/ASYX currentpoint pop def /ASYY currentpoint exch pop def "; +string ASY1="ASY1 {"+ASYinit+"/ASY1 false def} if "; + +void showpath(std::ofstream& ps) +{ + ps << ASYx << newl + << ASYy << newl + << "/ASY1 true def" << newl + << "/fill {" << ASY1 + << pathforall << " (M) " << currentpoint + << "currentpoint newpath moveto } bind def" << newl + << "/stroke {" << ASY1 << "strokepath " + << pathforall << " (M) " << currentpoint + << "currentpoint newpath moveto } bind def" << endl; +} + +array *readpath(const string& psname, bool keep, + double hscale=1.0, double vsign=1.0) +{ + double vscale=vsign*hscale; + array *P=new array(0); + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("gs")); + cmd.push_back("-q"); + cmd.push_back("-dNOPAUSE"); + cmd.push_back("-dBATCH"); + if(safe) cmd.push_back("-dSAFER"); +#ifdef __CYGWIN__ + const string null="NUL"; +#else + const string null="/dev/null"; +#endif + cmd.push_back("-sDEVICE=epswrite"); + cmd.push_back("-sOutputFile="+null); + cmd.push_back(psname); + iopipestream gs(cmd,"gs","Ghostscript"); + stringstream buf; + while(true) { + string out; + gs >> out; + if(out.empty() && !gs.running()) break; + buf << out; + } + if(verbose > 2) cout << endl; + + mem::vector<solvedKnot> nodes; + solvedKnot node; + bool cyclic=false; + bool active=false; + + while(!buf.eof()) { + char c; + buf >> c; + switch(c) { + case 'M': + { + if(active) { + if(cyclic) { + if(node.point == nodes[0].point) + nodes[0].pre=node.pre; + else { + pair delta=(nodes[0].point-node.point)*third; + node.post=node.point+delta; + nodes[0].pre=nodes[0].point-delta; + node.straight=true; + nodes.push_back(node); + } + } else { + node.post=node.point; + node.straight=false; + nodes.push_back(node); + } + P->push(path(nodes,nodes.size(),cyclic)); + nodes.clear(); + } + active=false; + cyclic=false; + node.pre=node.point=readpair(buf,hscale,vscale); + node.straight=false; + break; + } + case 'L': + { + pair point=readpair(buf,hscale,vscale); + pair delta=(point-node.point)*third; + node.post=node.point+delta; + node.straight=true; + nodes.push_back(node); + active=true; + node.pre=point-delta; + node.point=point; + break; + } + case 'C': + { + pair point=readpair(buf,hscale,vscale); + pair pre=readpair(buf,hscale,vscale); + node.post=readpair(buf,hscale,vscale); + node.straight=false; + nodes.push_back(node); + active=true; + node.pre=pre; + node.point=point; + break; + } + case 'c': + { + cyclic=true; + break; + } + } + } + + if(!keep) + unlink(psname.c_str()); + return P; +} + +// Autogenerated routines: + + + +namespace run { +#line 176 "runlabel.in" +// void label(picture *f, string *s, string *size, transform t, pair position, pair align, pen p); +void gen_runlabel0(stack *Stack) +{ + pen p=vm::pop<pen>(Stack); + pair align=vm::pop<pair>(Stack); + pair position=vm::pop<pair>(Stack); + transform t=vm::pop<transform>(Stack); + string * size=vm::pop<string *>(Stack); + string * s=vm::pop<string *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 178 "runlabel.in" + f->append(new drawLabel(*s,*size,t,position,align,p)); +} + +#line 182 "runlabel.in" +// bool labels(picture *f); +void gen_runlabel1(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 183 "runlabel.in" + {Stack->push<bool>(f->havelabels()); return;} +} + +#line 187 "runlabel.in" +// realarray* texsize(string *s, pen p=CURRENTPEN); +void gen_runlabel2(stack *Stack) +{ + pen p=vm::pop<pen>(Stack,CURRENTPEN); + string * s=vm::pop<string *>(Stack); +#line 188 "runlabel.in" + texinit(); + processDataStruct &pd=processData(); + + string texengine=getSetting<string>("tex"); + const char **abort=texabort(texengine); + setpen(pd.tex,texengine,p); + + double width,height,depth; + if(!texbounds(width,height,depth,pd.tex,*s,abort,false,true)) + {Stack->push<realarray*>(new array(0)); return;} + + array *t=new array(3); + (*t)[0]=width; + (*t)[1]=height; + (*t)[2]=depth; + {Stack->push<realarray*>(t); return;} +} + +#line 207 "runlabel.in" +// patharray* _texpath(string *s, pen p=CURRENTPEN); +void gen_runlabel3(stack *Stack) +{ + pen p=vm::pop<pen>(Stack,CURRENTPEN); + string * s=vm::pop<string *>(Stack); +#line 208 "runlabel.in" + array *P=new array(0); + if(s->empty()) {Stack->push<patharray*>(P); return;} + + string prefix=outname(); + spaceToUnderscore(prefix); + string psname=auxname(prefix,"ps"); + string texname=auxname(prefix,"tex"); + string dviname=auxname(prefix,"dvi"); + bbox b; + string texengine=getSetting<string>("tex"); + bool pdf=settings::pdf(texengine); + texfile tex(texname,b,true); + tex.miniprologue(); + tex.setfont(p); + + if(!pdf) { + tex.verbatimline("\\special{ps:"); + tex.verbatimline(ASYx); + tex.verbatimline(ASYy); + tex.verbatimline("/ASY1 true def"); + tex.verbatimline("/v {"+ASY1+"neg exch 4 copy 4 2 roll 2 copy 6 2 roll 2 copy (M) print ASYy ASYx (L) print ASYy add ASYx (L) print add ASYy add ASYx (L) print add ASYy ASYx (c) print} bind def"); + tex.verbatimline("/show {"+ASY1+ + "currentpoint newpath moveto false charpath "+ + pathforall+"} bind def}"); + } + tex.verbatimline(*s+"%"); + tex.epilogue(true); + tex.close(); + + int status=opentex(texname,prefix); + + string pdfname; + if(!status) { + if(pdf) { + pdfname=auxname(prefix,"pdf"); + std::ofstream ps(psname.c_str()); + if(!ps) cannotwrite(psname); + + showpath(ps); + + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("gs")); + cmd.push_back("-q"); + cmd.push_back("-dNOCACHE"); + cmd.push_back("-dNOPAUSE"); + cmd.push_back("-dBATCH"); + if(safe) cmd.push_back("-dSAFER"); + cmd.push_back("-sDEVICE=epswrite"); + cmd.push_back("-sOutputFile=-"); + cmd.push_back(pdfname); + iopipestream gs(cmd,"gs","Ghostscript"); + + gs.block(false); + while(true) { + string line; + gs >> line; + if(line.empty() && !gs.running()) break; + ps << line; + } + ps.close(); + } else { + mem::vector<string> dcmd; + dcmd.push_back(getSetting<string>("dvips")); + dcmd.push_back("-R"); + dcmd.push_back("-Pdownload35"); + dcmd.push_back("-D600"); + push_split(dcmd,getSetting<string>("dvipsOptions")); + if(verbose <= 2) dcmd.push_back("-q"); + dcmd.push_back("-o"+psname); + dcmd.push_back(dviname); + status=System(dcmd,0,true,"dvips"); + } + } + + if(status != 0) + error("texpath failed"); + + bool keep=getSetting<bool>("keep"); + if(!keep) { // Delete temporary files. + unlink(texname.c_str()); + if(!getSetting<bool>("keepaux")) + unlink(auxname(prefix,"aux").c_str()); + unlink(auxname(prefix,"log").c_str()); + if(pdf) + unlink(pdfname.c_str()); + else + unlink(dviname.c_str()); + if(settings::context(texengine)) { + unlink(auxname(prefix,"top").c_str()); + unlink(auxname(prefix,"tua").c_str()); + unlink(auxname(prefix,"tui").c_str()); + } + } + {Stack->push<patharray*>(pdf ? readpath(psname,keep,0.1) : readpath(psname,keep,0.12,-1.0)); return;} +} + +#line 305 "runlabel.in" +// patharray* textpath(string *s, pen p=CURRENTPEN); +void gen_runlabel4(stack *Stack) +{ + pen p=vm::pop<pen>(Stack,CURRENTPEN); + string * s=vm::pop<string *>(Stack); +#line 306 "runlabel.in" + array *P=new array(0); + if(s->empty()) {Stack->push<patharray*>(P); return;} + + string prefix=outname(); + spaceToUnderscore(prefix); + string outputname=auxname(prefix,getSetting<string>("textoutformat")); + + string textname=auxname(prefix,getSetting<string>("textextension")); + std::ofstream text(textname.c_str()); + + if(!text) cannotwrite(textname); + + text << getSetting<string>("textprologue") << newl + << p.Font() << newl + << *s << newl + << getSetting<string>("textepilogue") << endl; + text.close(); + + string psname=auxname(prefix,"ps"); + std::ofstream ps(psname.c_str()); + if(!ps) cannotwrite(psname); + + showpath(ps); + + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("textcommand")); + push_split(cmd,getSetting<string>("textcommandOptions")); + cmd.push_back(textname); + iopipestream typesetter(cmd); + + mem::vector<string> cmd2; + cmd2.push_back(getSetting<string>("gs")); + cmd2.push_back("-q"); + cmd2.push_back("-dNOCACHE"); + cmd2.push_back("-dNOPAUSE"); + cmd2.push_back("-dBATCH"); + if(safe) cmd2.push_back("-dSAFER"); + cmd2.push_back("-sDEVICE=epswrite"); + cmd2.push_back("-sOutputFile=-"); + cmd2.push_back("-"); + iopipestream gs(cmd2,"gs","Ghostscript"); + gs.block(false); + + // TODO: Simplify by connecting the pipes directly. + while(true) { + string out; + if(typesetter.isopen()) { + typesetter >> out; + if(!out.empty()) gs << out; + else if(!typesetter.running()) { + typesetter.pipeclose(); + gs.eof(); + } + } + string out2; + gs >> out2; + if(out2.empty() && !gs.running()) break; + ps << out2; + } + ps.close(); + + if(verbose > 2) cout << endl; + + bool keep=getSetting<bool>("keep"); + if(!keep) // Delete temporary files. + unlink(textname.c_str()); + {Stack->push<patharray*>(readpath(psname,keep,0.1)); return;} +} + +#line 376 "runlabel.in" +// patharray* _strokepath(path g, pen p=CURRENTPEN); +void gen_runlabel5(stack *Stack) +{ + pen p=vm::pop<pen>(Stack,CURRENTPEN); + path g=vm::pop<path>(Stack); +#line 377 "runlabel.in" + array *P=new array(0); + if(g.size() == 0) {Stack->push<patharray*>(P); return;} + + string prefix=outname(); + spaceToUnderscore(prefix); + string psname=auxname(prefix,"ps"); + bbox b; + psfile ps(psname,false); + ps.prologue(b); + ps.verbatimline(ASYx); + ps.verbatimline(ASYy); + ps.verbatimline("/stroke {"+ASYinit+pathforall+"} bind def"); + ps.resetpen(); + ps.setpen(p); + ps.write(g); + ps.strokepath(); + ps.stroke(); + ps.verbatimline("(M) "+currentpoint); + ps.epilogue(); + ps.close(); + {Stack->push<patharray*>(readpath(psname,getSetting<bool>("keep"))); return;} +} + +} // namespace run + +namespace trans { + +void gen_runlabel_venv(venv &ve) +{ +#line 176 "runlabel.in" + addFunc(ve, run::gen_runlabel0, primVoid(), "label", formal(primPicture(), "f", false, false), formal(primString(), "s", false, false), formal(primString(), "size", false, false), formal(primTransform(), "t", false, false), formal(primPair(), "position", false, false), formal(primPair(), "align", false, false), formal(primPen(), "p", false, false)); +#line 182 "runlabel.in" + addFunc(ve, run::gen_runlabel1, primBoolean(), "labels", formal(primPicture(), "f", false, false)); +#line 187 "runlabel.in" + addFunc(ve, run::gen_runlabel2, realArray(), "texsize", formal(primString(), "s", false, false), formal(primPen(), "p", true, false)); +#line 207 "runlabel.in" + addFunc(ve, run::gen_runlabel3, pathArray() , "_texpath", formal(primString(), "s", false, false), formal(primPen(), "p", true, false)); +#line 305 "runlabel.in" + addFunc(ve, run::gen_runlabel4, pathArray() , "textpath", formal(primString(), "s", false, false), formal(primPen(), "p", true, false)); +#line 376 "runlabel.in" + addFunc(ve, run::gen_runlabel5, pathArray() , "_strokepath", formal(primPath(), "g", false, false), formal(primPen(), "p", true, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runlabel.h b/Build/source/utils/asymptote/runlabel.h new file mode 100644 index 00000000000..b710d65cee1 --- /dev/null +++ b/Build/source/utils/asymptote/runlabel.h @@ -0,0 +1,8 @@ +/***** Autogenerated from runlabel.in; changes will be overwritten *****/ + +#ifndef runlabel_H +#define runlabel_H +namespace run { +} + +#endif // runlabel_H diff --git a/Build/source/utils/asymptote/runlabel.in b/Build/source/utils/asymptote/runlabel.in new file mode 100644 index 00000000000..fde2c42a031 --- /dev/null +++ b/Build/source/utils/asymptote/runlabel.in @@ -0,0 +1,399 @@ +/***** + * runlabel.in + * + * Runtime functions for label operations. + * + *****/ + +pen => primPen() +pair => primPair() +path => primPath() +picture* => primPicture() +transform => primTransform() +realarray* => realArray() +patharray* => pathArray() + +#include "picture.h" +#include "drawlabel.h" + +using namespace camp; +using namespace vm; +using namespace settings; + +typedef array realarray; +typedef array patharray; + +using types::realArray; +using types::pathArray; + +void cannotread(const string& s) +{ + ostringstream buf; + buf << "Cannot read from " << s; + error(buf); +} + +void cannotwrite(const string& s) +{ + ostringstream buf; + buf << "Cannot write to " << s; + error(buf); +} + +pair readpair(stringstream& s, double hscale=1.0, double vscale=1.0) +{ + double x,y; + s >> y; + s >> x; + return pair(hscale*x,vscale*y); +} + +string ASYx="/ASYx {( ) print ASYX sub 12 string cvs print} bind def"; +string ASYy="/ASYy {( ) print ASYY sub 12 string cvs print} bind def"; +string pathforall="{(M) print ASYy ASYx} {(L) print ASYy ASYx} {(C) print ASYy ASYx ASYy ASYx ASYy ASYx} {(c) print} pathforall"; +string currentpoint="print currentpoint ASYy ASYx "; +string ASYinit="/ASYX currentpoint pop def /ASYY currentpoint exch pop def "; +string ASY1="ASY1 {"+ASYinit+"/ASY1 false def} if "; + +void showpath(std::ofstream& ps) +{ + ps << ASYx << newl + << ASYy << newl + << "/ASY1 true def" << newl + << "/fill {" << ASY1 + << pathforall << " (M) " << currentpoint + << "currentpoint newpath moveto } bind def" << newl + << "/stroke {" << ASY1 << "strokepath " + << pathforall << " (M) " << currentpoint + << "currentpoint newpath moveto } bind def" << endl; +} + +array *readpath(const string& psname, bool keep, + double hscale=1.0, double vsign=1.0) +{ + double vscale=vsign*hscale; + array *P=new array(0); + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("gs")); + cmd.push_back("-q"); + cmd.push_back("-dNOPAUSE"); + cmd.push_back("-dBATCH"); + if(safe) cmd.push_back("-dSAFER"); +#ifdef __CYGWIN__ + const string null="NUL"; +#else + const string null="/dev/null"; +#endif + cmd.push_back("-sDEVICE=epswrite"); + cmd.push_back("-sOutputFile="+null); + cmd.push_back(psname); + iopipestream gs(cmd,"gs","Ghostscript"); + stringstream buf; + while(true) { + string out; + gs >> out; + if(out.empty() && !gs.running()) break; + buf << out; + } + if(verbose > 2) cout << endl; + + mem::vector<solvedKnot> nodes; + solvedKnot node; + bool cyclic=false; + bool active=false; + + while(!buf.eof()) { + char c; + buf >> c; + switch(c) { + case 'M': + { + if(active) { + if(cyclic) { + if(node.point == nodes[0].point) + nodes[0].pre=node.pre; + else { + pair delta=(nodes[0].point-node.point)*third; + node.post=node.point+delta; + nodes[0].pre=nodes[0].point-delta; + node.straight=true; + nodes.push_back(node); + } + } else { + node.post=node.point; + node.straight=false; + nodes.push_back(node); + } + P->push(path(nodes,nodes.size(),cyclic)); + nodes.clear(); + } + active=false; + cyclic=false; + node.pre=node.point=readpair(buf,hscale,vscale); + node.straight=false; + break; + } + case 'L': + { + pair point=readpair(buf,hscale,vscale); + pair delta=(point-node.point)*third; + node.post=node.point+delta; + node.straight=true; + nodes.push_back(node); + active=true; + node.pre=point-delta; + node.point=point; + break; + } + case 'C': + { + pair point=readpair(buf,hscale,vscale); + pair pre=readpair(buf,hscale,vscale); + node.post=readpair(buf,hscale,vscale); + node.straight=false; + nodes.push_back(node); + active=true; + node.pre=pre; + node.point=point; + break; + } + case 'c': + { + cyclic=true; + break; + } + } + } + + if(!keep) + unlink(psname.c_str()); + return P; +} + +// Autogenerated routines: + + +void label(picture *f, string *s, string *size, transform t, pair position, + pair align, pen p) +{ + f->append(new drawLabel(*s,*size,t,position,align,p)); +} + +bool labels(picture *f) +{ + return f->havelabels(); +} + +realarray *texsize(string *s, pen p=CURRENTPEN) +{ + texinit(); + processDataStruct &pd=processData(); + + string texengine=getSetting<string>("tex"); + const char **abort=texabort(texengine); + setpen(pd.tex,texengine,p); + + double width,height,depth; + if(!texbounds(width,height,depth,pd.tex,*s,abort,false,true)) + return new array(0); + + array *t=new array(3); + (*t)[0]=width; + (*t)[1]=height; + (*t)[2]=depth; + return t; +} + +patharray *_texpath(string *s, pen p=CURRENTPEN) +{ + array *P=new array(0); + if(s->empty()) return P; + + string prefix=outname(); + spaceToUnderscore(prefix); + string psname=auxname(prefix,"ps"); + string texname=auxname(prefix,"tex"); + string dviname=auxname(prefix,"dvi"); + bbox b; + string texengine=getSetting<string>("tex"); + bool pdf=settings::pdf(texengine); + texfile tex(texname,b,true); + tex.miniprologue(); + tex.setfont(p); + + if(!pdf) { + tex.verbatimline("\\special{ps:"); + tex.verbatimline(ASYx); + tex.verbatimline(ASYy); + tex.verbatimline("/ASY1 true def"); + tex.verbatimline("/v {"+ASY1+"neg exch 4 copy 4 2 roll 2 copy 6 2 roll 2 copy (M) print ASYy ASYx (L) print ASYy add ASYx (L) print add ASYy add ASYx (L) print add ASYy ASYx (c) print} bind def"); + tex.verbatimline("/show {"+ASY1+ + "currentpoint newpath moveto false charpath "+ + pathforall+"} bind def}"); + } + tex.verbatimline(*s+"%"); + tex.epilogue(true); + tex.close(); + + int status=opentex(texname,prefix); + + string pdfname; + if(!status) { + if(pdf) { + pdfname=auxname(prefix,"pdf"); + std::ofstream ps(psname.c_str()); + if(!ps) cannotwrite(psname); + + showpath(ps); + + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("gs")); + cmd.push_back("-q"); + cmd.push_back("-dNOCACHE"); + cmd.push_back("-dNOPAUSE"); + cmd.push_back("-dBATCH"); + if(safe) cmd.push_back("-dSAFER"); + cmd.push_back("-sDEVICE=epswrite"); + cmd.push_back("-sOutputFile=-"); + cmd.push_back(pdfname); + iopipestream gs(cmd,"gs","Ghostscript"); + + gs.block(false); + while(true) { + string line; + gs >> line; + if(line.empty() && !gs.running()) break; + ps << line; + } + ps.close(); + } else { + mem::vector<string> dcmd; + dcmd.push_back(getSetting<string>("dvips")); + dcmd.push_back("-R"); + dcmd.push_back("-Pdownload35"); + dcmd.push_back("-D600"); + push_split(dcmd,getSetting<string>("dvipsOptions")); + if(verbose <= 2) dcmd.push_back("-q"); + dcmd.push_back("-o"+psname); + dcmd.push_back(dviname); + status=System(dcmd,0,true,"dvips"); + } + } + + if(status != 0) + error("texpath failed"); + + bool keep=getSetting<bool>("keep"); + if(!keep) { // Delete temporary files. + unlink(texname.c_str()); + if(!getSetting<bool>("keepaux")) + unlink(auxname(prefix,"aux").c_str()); + unlink(auxname(prefix,"log").c_str()); + if(pdf) + unlink(pdfname.c_str()); + else + unlink(dviname.c_str()); + if(settings::context(texengine)) { + unlink(auxname(prefix,"top").c_str()); + unlink(auxname(prefix,"tua").c_str()); + unlink(auxname(prefix,"tui").c_str()); + } + } + return pdf ? readpath(psname,keep,0.1) : readpath(psname,keep,0.12,-1.0); +} + +patharray *textpath(string *s, pen p=CURRENTPEN) +{ + array *P=new array(0); + if(s->empty()) return P; + + string prefix=outname(); + spaceToUnderscore(prefix); + string outputname=auxname(prefix,getSetting<string>("textoutformat")); + + string textname=auxname(prefix,getSetting<string>("textextension")); + std::ofstream text(textname.c_str()); + + if(!text) cannotwrite(textname); + + text << getSetting<string>("textprologue") << newl + << p.Font() << newl + << *s << newl + << getSetting<string>("textepilogue") << endl; + text.close(); + + string psname=auxname(prefix,"ps"); + std::ofstream ps(psname.c_str()); + if(!ps) cannotwrite(psname); + + showpath(ps); + + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("textcommand")); + push_split(cmd,getSetting<string>("textcommandOptions")); + cmd.push_back(textname); + iopipestream typesetter(cmd); + + mem::vector<string> cmd2; + cmd2.push_back(getSetting<string>("gs")); + cmd2.push_back("-q"); + cmd2.push_back("-dNOCACHE"); + cmd2.push_back("-dNOPAUSE"); + cmd2.push_back("-dBATCH"); + if(safe) cmd2.push_back("-dSAFER"); + cmd2.push_back("-sDEVICE=epswrite"); + cmd2.push_back("-sOutputFile=-"); + cmd2.push_back("-"); + iopipestream gs(cmd2,"gs","Ghostscript"); + gs.block(false); + + // TODO: Simplify by connecting the pipes directly. + while(true) { + string out; + if(typesetter.isopen()) { + typesetter >> out; + if(!out.empty()) gs << out; + else if(!typesetter.running()) { + typesetter.pipeclose(); + gs.eof(); + } + } + string out2; + gs >> out2; + if(out2.empty() && !gs.running()) break; + ps << out2; + } + ps.close(); + + if(verbose > 2) cout << endl; + + bool keep=getSetting<bool>("keep"); + if(!keep) // Delete temporary files. + unlink(textname.c_str()); + return readpath(psname,keep,0.1); +} + +patharray *_strokepath(path g, pen p=CURRENTPEN) +{ + array *P=new array(0); + if(g.size() == 0) return P; + + string prefix=outname(); + spaceToUnderscore(prefix); + string psname=auxname(prefix,"ps"); + bbox b; + psfile ps(psname,false); + ps.prologue(b); + ps.verbatimline(ASYx); + ps.verbatimline(ASYy); + ps.verbatimline("/stroke {"+ASYinit+pathforall+"} bind def"); + ps.resetpen(); + ps.setpen(p); + ps.write(g); + ps.strokepath(); + ps.stroke(); + ps.verbatimline("(M) "+currentpoint); + ps.epilogue(); + ps.close(); + return readpath(psname,getSetting<bool>("keep")); +} diff --git a/Build/source/utils/asymptote/runmath.cc b/Build/source/utils/asymptote/runmath.cc new file mode 100644 index 00000000000..5cd0f0a3269 --- /dev/null +++ b/Build/source/utils/asymptote/runmath.cc @@ -0,0 +1,592 @@ +/***** Autogenerated from runmath.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runmath.in" +/***** + * runmath.in + * + * Runtime functions for math operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 12 "runmath.in" +#include "mathop.h" +#include "path.h" + +using namespace camp; + +typedef array realarray; +typedef array pairarray; + +using types::realArray; +using types::pairArray; + +using run::integeroverflow; +using vm::frame; + +const char *invalidargument="invalid argument"; + +// Return the factorial of a non-negative integer using a lookup table. +Int factorial(Int n) +{ + static Int *table; + static Int size=0; + if(size == 0) { + Int f=1; + size=2; + while(f <= Int_MAX/size) + f *= (size++); + table=new Int[size]; + table[0]=f=1; + for(Int i=1; i < size; ++i) { + f *= i; + table[i]=f; + } + } + if(n >= size) integeroverflow(0); + return table[n]; +} + +static inline Int Round(double x) +{ + return Int(x+((x >= 0) ? 0.5 : -0.5)); +} + +inline Int sgn(double x) +{ + return (x > 0.0 ? 1 : (x < 0.0 ? -1 : 0)); +} + +// Autogenerated routines: + + + +namespace run { +#line 62 "runmath.in" +// real ^(real x, Int y); +void gen_runmath0(stack *Stack) +{ + Int y=vm::pop<Int>(Stack); + real x=vm::pop<real>(Stack); +#line 63 "runmath.in" + {Stack->push<real>(pow(x,y)); return;} +} + +#line 67 "runmath.in" +// pair ^(pair z, Int y); +void gen_runmath1(stack *Stack) +{ + Int y=vm::pop<Int>(Stack); + pair z=vm::pop<pair>(Stack); +#line 68 "runmath.in" + {Stack->push<pair>(pow(z,y)); return;} +} + +#line 72 "runmath.in" +// Int quotient(Int x, Int y); +void gen_runmath2(stack *Stack) +{ + Int y=vm::pop<Int>(Stack); + Int x=vm::pop<Int>(Stack); +#line 73 "runmath.in" + if(y == 0) dividebyzero(); + if(y == -1) {Stack->push<Int>(Negate(x)); return;} +// Implementation-independent definition of integer division: round down + {Stack->push<Int>((x-portableMod(x,y))/y); return;} +} + +#line 80 "runmath.in" +// Int abs(Int x); +void gen_runmath3(stack *Stack) +{ + Int x=vm::pop<Int>(Stack); +#line 81 "runmath.in" + {Stack->push<Int>(Abs(x)); return;} +} + +#line 85 "runmath.in" +// Int sgn(real x); +void gen_runmath4(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 86 "runmath.in" + {Stack->push<Int>(sgn(x)); return;} +} + +#line 90 "runmath.in" +// Int rand(); +void gen_runmath5(stack *Stack) +{ +#line 91 "runmath.in" + {Stack->push<Int>(rand()); return;} +} + +#line 95 "runmath.in" +// void srand(Int seed); +void gen_runmath6(stack *Stack) +{ + Int seed=vm::pop<Int>(Stack); +#line 96 "runmath.in" + srand(intcast(seed)); +} + +// a random number uniformly distributed in the interval [0,1] +#line 101 "runmath.in" +// real unitrand(); +void gen_runmath7(stack *Stack) +{ +#line 102 "runmath.in" + {Stack->push<real>(((real) rand())/RAND_MAX); return;} +} + +#line 106 "runmath.in" +// Int ceil(real x); +void gen_runmath8(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 107 "runmath.in" + {Stack->push<Int>(Intcast(ceil(x))); return;} +} + +#line 111 "runmath.in" +// Int floor(real x); +void gen_runmath9(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 112 "runmath.in" + {Stack->push<Int>(Intcast(floor(x))); return;} +} + +#line 116 "runmath.in" +// Int round(real x); +void gen_runmath10(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 117 "runmath.in" + if(validInt(x)) {Stack->push<Int>(Round(x)); return;} + integeroverflow(0); +} + +#line 122 "runmath.in" +// Int Ceil(real x); +void gen_runmath11(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 123 "runmath.in" + {Stack->push<Int>(Ceil(x)); return;} +} + +#line 127 "runmath.in" +// Int Floor(real x); +void gen_runmath12(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 128 "runmath.in" + {Stack->push<Int>(Floor(x)); return;} +} + +#line 132 "runmath.in" +// Int Round(real x); +void gen_runmath13(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 133 "runmath.in" + {Stack->push<Int>(Round(Intcap(x))); return;} +} + +#line 137 "runmath.in" +// real fmod(real x, real y); +void gen_runmath14(stack *Stack) +{ + real y=vm::pop<real>(Stack); + real x=vm::pop<real>(Stack); +#line 138 "runmath.in" + if (y == 0.0) dividebyzero(); + {Stack->push<real>(fmod(x,y)); return;} +} + +#line 143 "runmath.in" +// real atan2(real y, real x); +void gen_runmath15(stack *Stack) +{ + real x=vm::pop<real>(Stack); + real y=vm::pop<real>(Stack); +#line 144 "runmath.in" + {Stack->push<real>(atan2(y,x)); return;} +} + +#line 148 "runmath.in" +// real hypot(real x, real y); +void gen_runmath16(stack *Stack) +{ + real y=vm::pop<real>(Stack); + real x=vm::pop<real>(Stack); +#line 149 "runmath.in" + {Stack->push<real>(hypot(x,y)); return;} +} + +#line 153 "runmath.in" +// real remainder(real x, real y); +void gen_runmath17(stack *Stack) +{ + real y=vm::pop<real>(Stack); + real x=vm::pop<real>(Stack); +#line 154 "runmath.in" + {Stack->push<real>(remainder(x,y)); return;} +} + +#line 158 "runmath.in" +// real J(Int n, real x); +void gen_runmath18(stack *Stack) +{ + real x=vm::pop<real>(Stack); + Int n=vm::pop<Int>(Stack); +#line 159 "runmath.in" + {Stack->push<real>(jn(n,x)); return;} +} + +#line 163 "runmath.in" +// real Y(Int n, real x); +void gen_runmath19(stack *Stack) +{ + real x=vm::pop<real>(Stack); + Int n=vm::pop<Int>(Stack); +#line 164 "runmath.in" + {Stack->push<real>(yn(n,x)); return;} +} + +#line 168 "runmath.in" +// real erf(real x); +void gen_runmath20(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 169 "runmath.in" + {Stack->push<real>(erf(x)); return;} +} + +#line 173 "runmath.in" +// real erfc(real x); +void gen_runmath21(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 174 "runmath.in" + {Stack->push<real>(erfc(x)); return;} +} + +#line 178 "runmath.in" +// Int factorial(Int n); +void gen_runmath22(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); +#line 179 "runmath.in" + if(n < 0) error(invalidargument); + {Stack->push<Int>(factorial(n)); return;} +} + +#line 183 "runmath.in" +// Int choose(Int n, Int k); +void gen_runmath23(stack *Stack) +{ + Int k=vm::pop<Int>(Stack); + Int n=vm::pop<Int>(Stack); +#line 184 "runmath.in" + if(n < 0 || k < 0 || k > n) error(invalidargument); + Int f=1; + Int r=n-k; + for(Int i=n; i > r; --i) { + if(f > Int_MAX/i) integeroverflow(0); + f=(f*i)/(n-i+1); + } + {Stack->push<Int>(f); return;} +} + +#line 194 "runmath.in" +// real gamma(real x); +void gen_runmath24(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 195 "runmath.in" +#ifdef HAVE_TGAMMA + {Stack->push<real>(tgamma(x)); return;} +#else + real lg = lgamma(x); + {Stack->push<real>(signgam*exp(lg)); return;} +#endif +} + +#line 204 "runmath.in" +// realarray* quadraticroots(real a, real b, real c); +void gen_runmath25(stack *Stack) +{ + real c=vm::pop<real>(Stack); + real b=vm::pop<real>(Stack); + real a=vm::pop<real>(Stack); +#line 205 "runmath.in" + quadraticroots q(a,b,c); + array *roots=new array(q.roots); + if(q.roots >= 1) (*roots)[0]=q.t1; + if(q.roots == 2) (*roots)[1]=q.t2; + {Stack->push<realarray*>(roots); return;} +} + +#line 213 "runmath.in" +// pairarray* quadraticroots(explicit pair a, explicit pair b, explicit pair c); +void gen_runmath26(stack *Stack) +{ + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 214 "runmath.in" + Quadraticroots q(a,b,c); + array *roots=new array(q.roots); + if(q.roots >= 1) (*roots)[0]=q.z1; + if(q.roots == 2) (*roots)[1]=q.z2; + {Stack->push<pairarray*>(roots); return;} +} + +#line 222 "runmath.in" +// realarray* cubicroots(real a, real b, real c, real d); +void gen_runmath27(stack *Stack) +{ + real d=vm::pop<real>(Stack); + real c=vm::pop<real>(Stack); + real b=vm::pop<real>(Stack); + real a=vm::pop<real>(Stack); +#line 223 "runmath.in" + cubicroots q(a,b,c,d); + array *roots=new array(q.roots); + if(q.roots >= 1) (*roots)[0]=q.t1; + if(q.roots >= 2) (*roots)[1]=q.t2; + if(q.roots == 3) (*roots)[2]=q.t3; + {Stack->push<realarray*>(roots); return;} +} + + +// Logical operations +#line 234 "runmath.in" +// bool !(bool b); +void gen_runmath28(stack *Stack) +{ + bool b=vm::pop<bool>(Stack); +#line 235 "runmath.in" + {Stack->push<bool>(!b); return;} +} + +#line 240 "runmath.in" +void boolMemEq(stack *Stack) +{ + frame * b=vm::pop<frame *>(Stack); + frame * a=vm::pop<frame *>(Stack); +#line 241 "runmath.in" + {Stack->push<bool>(a == b); return;} +} + +#line 245 "runmath.in" +void boolMemNeq(stack *Stack) +{ + frame * b=vm::pop<frame *>(Stack); + frame * a=vm::pop<frame *>(Stack); +#line 246 "runmath.in" + {Stack->push<bool>(a != b); return;} +} + +#line 250 "runmath.in" +void boolFuncEq(stack *Stack) +{ + callable * b=vm::pop<callable *>(Stack); + callable * a=vm::pop<callable *>(Stack); +#line 251 "runmath.in" + {Stack->push<bool>(a->compare(b)); return;} +} + +#line 255 "runmath.in" +void boolFuncNeq(stack *Stack) +{ + callable * b=vm::pop<callable *>(Stack); + callable * a=vm::pop<callable *>(Stack); +#line 256 "runmath.in" + {Stack->push<bool>(!(a->compare(b))); return;} +} + + +// Bit operations +#line 262 "runmath.in" +// Int AND(Int a, Int b); +void gen_runmath33(stack *Stack) +{ + Int b=vm::pop<Int>(Stack); + Int a=vm::pop<Int>(Stack); +#line 263 "runmath.in" + {Stack->push<Int>(a & b); return;} +} + +#line 268 "runmath.in" +// Int OR(Int a, Int b); +void gen_runmath34(stack *Stack) +{ + Int b=vm::pop<Int>(Stack); + Int a=vm::pop<Int>(Stack); +#line 269 "runmath.in" + {Stack->push<Int>(a | b); return;} +} + +#line 273 "runmath.in" +// Int XOR(Int a, Int b); +void gen_runmath35(stack *Stack) +{ + Int b=vm::pop<Int>(Stack); + Int a=vm::pop<Int>(Stack); +#line 274 "runmath.in" + {Stack->push<Int>(a ^ b); return;} +} + +#line 278 "runmath.in" +// Int NOT(Int a); +void gen_runmath36(stack *Stack) +{ + Int a=vm::pop<Int>(Stack); +#line 279 "runmath.in" + {Stack->push<Int>(~a); return;} +} + +} // namespace run + +namespace trans { + +void gen_runmath_venv(venv &ve) +{ +#line 62 "runmath.in" + addFunc(ve, run::gen_runmath0, primReal(), "^", formal(primReal(), "x", false, false), formal(primInt(), "y", false, false)); +#line 67 "runmath.in" + addFunc(ve, run::gen_runmath1, primPair(), "^", formal(primPair(), "z", false, false), formal(primInt(), "y", false, false)); +#line 72 "runmath.in" + addFunc(ve, run::gen_runmath2, primInt(), "quotient", formal(primInt(), "x", false, false), formal(primInt(), "y", false, false)); +#line 80 "runmath.in" + addFunc(ve, run::gen_runmath3, primInt(), "abs", formal(primInt(), "x", false, false)); +#line 85 "runmath.in" + addFunc(ve, run::gen_runmath4, primInt(), "sgn", formal(primReal(), "x", false, false)); +#line 90 "runmath.in" + addFunc(ve, run::gen_runmath5, primInt(), "rand"); +#line 95 "runmath.in" + addFunc(ve, run::gen_runmath6, primVoid(), "srand", formal(primInt(), "seed", false, false)); +#line 100 "runmath.in" + addFunc(ve, run::gen_runmath7, primReal(), "unitrand"); +#line 106 "runmath.in" + addFunc(ve, run::gen_runmath8, primInt(), "ceil", formal(primReal(), "x", false, false)); +#line 111 "runmath.in" + addFunc(ve, run::gen_runmath9, primInt(), "floor", formal(primReal(), "x", false, false)); +#line 116 "runmath.in" + addFunc(ve, run::gen_runmath10, primInt(), "round", formal(primReal(), "x", false, false)); +#line 122 "runmath.in" + addFunc(ve, run::gen_runmath11, primInt(), "Ceil", formal(primReal(), "x", false, false)); +#line 127 "runmath.in" + addFunc(ve, run::gen_runmath12, primInt(), "Floor", formal(primReal(), "x", false, false)); +#line 132 "runmath.in" + addFunc(ve, run::gen_runmath13, primInt(), "Round", formal(primReal(), "x", false, false)); +#line 137 "runmath.in" + addFunc(ve, run::gen_runmath14, primReal(), "fmod", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); +#line 143 "runmath.in" + addFunc(ve, run::gen_runmath15, primReal(), "atan2", formal(primReal(), "y", false, false), formal(primReal(), "x", false, false)); +#line 148 "runmath.in" + addFunc(ve, run::gen_runmath16, primReal(), "hypot", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); +#line 153 "runmath.in" + addFunc(ve, run::gen_runmath17, primReal(), "remainder", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); +#line 158 "runmath.in" + addFunc(ve, run::gen_runmath18, primReal(), "J", formal(primInt(), "n", false, false), formal(primReal(), "x", false, false)); +#line 163 "runmath.in" + addFunc(ve, run::gen_runmath19, primReal(), "Y", formal(primInt(), "n", false, false), formal(primReal(), "x", false, false)); +#line 168 "runmath.in" + addFunc(ve, run::gen_runmath20, primReal(), "erf", formal(primReal(), "x", false, false)); +#line 173 "runmath.in" + addFunc(ve, run::gen_runmath21, primReal(), "erfc", formal(primReal(), "x", false, false)); +#line 178 "runmath.in" + addFunc(ve, run::gen_runmath22, primInt(), "factorial", formal(primInt(), "n", false, false)); +#line 183 "runmath.in" + addFunc(ve, run::gen_runmath23, primInt(), "choose", formal(primInt(), "n", false, false), formal(primInt(), "k", false, false)); +#line 194 "runmath.in" + addFunc(ve, run::gen_runmath24, primReal(), "gamma", formal(primReal(), "x", false, false)); +#line 204 "runmath.in" + addFunc(ve, run::gen_runmath25, realArray(), "quadraticroots", formal(primReal(), "a", false, false), formal(primReal(), "b", false, false), formal(primReal(), "c", false, false)); +#line 213 "runmath.in" + addFunc(ve, run::gen_runmath26, pairArray(), "quadraticroots", formal(primPair(), "a", false, true), formal(primPair(), "b", false, true), formal(primPair(), "c", false, true)); +#line 222 "runmath.in" + addFunc(ve, run::gen_runmath27, realArray(), "cubicroots", formal(primReal(), "a", false, false), formal(primReal(), "b", false, false), formal(primReal(), "c", false, false), formal(primReal(), "d", false, false)); +#line 232 "runmath.in" + addFunc(ve, run::gen_runmath28, primBoolean(), "!", formal(primBoolean(), "b", false, false)); +#line 240 "runmath.in" + REGISTER_BLTIN(run::boolMemEq,"boolMemEq"); +#line 245 "runmath.in" + REGISTER_BLTIN(run::boolMemNeq,"boolMemNeq"); +#line 250 "runmath.in" + REGISTER_BLTIN(run::boolFuncEq,"boolFuncEq"); +#line 255 "runmath.in" + REGISTER_BLTIN(run::boolFuncNeq,"boolFuncNeq"); +#line 260 "runmath.in" + addFunc(ve, run::gen_runmath33, primInt(), "AND", formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); +#line 268 "runmath.in" + addFunc(ve, run::gen_runmath34, primInt(), "OR", formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); +#line 273 "runmath.in" + addFunc(ve, run::gen_runmath35, primInt(), "XOR", formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); +#line 278 "runmath.in" + addFunc(ve, run::gen_runmath36, primInt(), "NOT", formal(primInt(), "a", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runmath.h b/Build/source/utils/asymptote/runmath.h new file mode 100644 index 00000000000..a9e030cb732 --- /dev/null +++ b/Build/source/utils/asymptote/runmath.h @@ -0,0 +1,12 @@ +/***** Autogenerated from runmath.in; changes will be overwritten *****/ + +#ifndef runmath_H +#define runmath_H +namespace run { +void boolMemEq(vm::stack *); +void boolMemNeq(vm::stack *); +void boolFuncEq(vm::stack *); +void boolFuncNeq(vm::stack *); +} + +#endif // runmath_H diff --git a/Build/source/utils/asymptote/runmath.in b/Build/source/utils/asymptote/runmath.in new file mode 100644 index 00000000000..c31761aeb90 --- /dev/null +++ b/Build/source/utils/asymptote/runmath.in @@ -0,0 +1,281 @@ +/***** + * runmath.in + * + * Runtime functions for math operations. + * + *****/ + +pair => primPair() +realarray* => realArray() +pairarray* => pairArray() + +#include "mathop.h" +#include "path.h" + +using namespace camp; + +typedef array realarray; +typedef array pairarray; + +using types::realArray; +using types::pairArray; + +using run::integeroverflow; +using vm::frame; + +const char *invalidargument="invalid argument"; + +// Return the factorial of a non-negative integer using a lookup table. +Int factorial(Int n) +{ + static Int *table; + static Int size=0; + if(size == 0) { + Int f=1; + size=2; + while(f <= Int_MAX/size) + f *= (size++); + table=new Int[size]; + table[0]=f=1; + for(Int i=1; i < size; ++i) { + f *= i; + table[i]=f; + } + } + if(n >= size) integeroverflow(0); + return table[n]; +} + +static inline Int Round(double x) +{ + return Int(x+((x >= 0) ? 0.5 : -0.5)); +} + +inline Int sgn(double x) +{ + return (x > 0.0 ? 1 : (x < 0.0 ? -1 : 0)); +} + +// Autogenerated routines: + + +real ^(real x, Int y) +{ + return pow(x,y); +} + +pair ^(pair z, Int y) +{ + return pow(z,y); +} + +Int quotient(Int x, Int y) +{ + if(y == 0) dividebyzero(); + if(y == -1) return Negate(x); +// Implementation-independent definition of integer division: round down + return (x-portableMod(x,y))/y; +} + +Int abs(Int x) +{ + return Abs(x); +} + +Int sgn(real x) +{ + return sgn(x); +} + +Int rand() +{ + return rand(); +} + +void srand(Int seed) +{ + srand(intcast(seed)); +} + +// a random number uniformly distributed in the interval [0,1] +real unitrand() +{ + return ((real) rand())/RAND_MAX; +} + +Int ceil(real x) +{ + return Intcast(ceil(x)); +} + +Int floor(real x) +{ + return Intcast(floor(x)); +} + +Int round(real x) +{ + if(validInt(x)) return Round(x); + integeroverflow(0); +} + +Int Ceil(real x) +{ + return Ceil(x); +} + +Int Floor(real x) +{ + return Floor(x); +} + +Int Round(real x) +{ + return Round(Intcap(x)); +} + +real fmod(real x, real y) +{ + if (y == 0.0) dividebyzero(); + return fmod(x,y); +} + +real atan2(real y, real x) +{ + return atan2(y,x); +} + +real hypot(real x, real y) +{ + return hypot(x,y); +} + +real remainder(real x, real y) +{ + return remainder(x,y); +} + +real J(Int n, real x) +{ + return jn(n,x); +} + +real Y(Int n, real x) +{ + return yn(n,x); +} + +real erf(real x) +{ + return erf(x); +} + +real erfc(real x) +{ + return erfc(x); +} + +Int factorial(Int n) { + if(n < 0) error(invalidargument); + return factorial(n); +} + +Int choose(Int n, Int k) { + if(n < 0 || k < 0 || k > n) error(invalidargument); + Int f=1; + Int r=n-k; + for(Int i=n; i > r; --i) { + if(f > Int_MAX/i) integeroverflow(0); + f=(f*i)/(n-i+1); + } + return f; +} + +real gamma(real x) +{ +#ifdef HAVE_TGAMMA + return tgamma(x); +#else + real lg = lgamma(x); + return signgam*exp(lg); +#endif +} + +realarray *quadraticroots(real a, real b, real c) +{ + quadraticroots q(a,b,c); + array *roots=new array(q.roots); + if(q.roots >= 1) (*roots)[0]=q.t1; + if(q.roots == 2) (*roots)[1]=q.t2; + return roots; +} + +pairarray *quadraticroots(explicit pair a, explicit pair b, explicit pair c) +{ + Quadraticroots q(a,b,c); + array *roots=new array(q.roots); + if(q.roots >= 1) (*roots)[0]=q.z1; + if(q.roots == 2) (*roots)[1]=q.z2; + return roots; +} + +realarray *cubicroots(real a, real b, real c, real d) +{ + cubicroots q(a,b,c,d); + array *roots=new array(q.roots); + if(q.roots >= 1) (*roots)[0]=q.t1; + if(q.roots >= 2) (*roots)[1]=q.t2; + if(q.roots == 3) (*roots)[2]=q.t3; + return roots; +} + + +// Logical operations + +bool !(bool b) +{ + return !b; +} + +bool :boolMemEq(frame *a, frame *b) +{ + return a == b; +} + +bool :boolMemNeq(frame *a, frame *b) +{ + return a != b; +} + +bool :boolFuncEq(callable *a, callable *b) +{ + return a->compare(b); +} + +bool :boolFuncNeq(callable *a, callable *b) +{ + return !(a->compare(b)); +} + + +// Bit operations + +Int AND(Int a, Int b) +{ + return a & b; +} + +Int OR(Int a, Int b) +{ + return a | b; +} + +Int XOR(Int a, Int b) +{ + return a ^ b; +} + +Int NOT(Int a) +{ + return ~a; +} diff --git a/Build/source/utils/asymptote/runpair.cc b/Build/source/utils/asymptote/runpair.cc new file mode 100644 index 00000000000..3c3ee4a2e2c --- /dev/null +++ b/Build/source/utils/asymptote/runpair.cc @@ -0,0 +1,532 @@ +/***** Autogenerated from runpair.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runpair.in" +/***** + * runpair.in + * + * Runtime functions for pair operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 10 "runpair.in" +#include "pair.h" + +using namespace camp; + +namespace run { +extern pair zero; +} + +pair sin(pair z) +{ + return pair(sin(z.getx())*cosh(z.gety()),cos(z.getx())*sinh(z.gety())); +} + +pair exp(pair z) +{ + return exp(z.getx())*expi(z.gety()); +} + +pair gamma(pair z) +{ + static double p[]={0.99999999999980993,676.5203681218851,-1259.1392167224028, + 771.32342877765313,-176.61502916214059,12.507343278686905, + -0.13857109526572012,9.9843695780195716e-6, + 1.5056327351493116e-7}; + static int n=sizeof(p)/sizeof(double); + static double root2pi=sqrt(2*PI); + if(z.getx() < 0.5) + return PI/(sin(PI*z)*gamma(1.0-z)); + z -= 1.0; + pair x=p[0]; + for(int i=1; i < n; ++i) + x += p[i]/(z+i); + pair t=n-1.5+z; + return root2pi*pow(t,z+0.5)*exp(-t)*x; +} + +// Autogenerated routines: + + + +namespace run { +#line 49 "runpair.in" +void pairZero(stack *Stack) +{ +#line 50 "runpair.in" + {Stack->push<pair>(zero); return;} +} + +#line 54 "runpair.in" +void realRealToPair(stack *Stack) +{ + real y=vm::pop<real>(Stack); + real x=vm::pop<real>(Stack); +#line 55 "runpair.in" + {Stack->push<pair>(pair(x,y)); return;} +} + +#line 59 "runpair.in" +void pairNegate(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 60 "runpair.in" + {Stack->push<pair>(-z); return;} +} + +#line 64 "runpair.in" +// real xpart(pair z); +void pairXPart(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 65 "runpair.in" + {Stack->push<real>(z.getx()); return;} +} + +#line 69 "runpair.in" +// real ypart(pair z); +void pairYPart(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 70 "runpair.in" + {Stack->push<real>(z.gety()); return;} +} + +#line 74 "runpair.in" +// real length(pair z); +void gen_runpair5(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 75 "runpair.in" + {Stack->push<real>(z.length()); return;} +} + +#line 79 "runpair.in" +// real abs(pair z); +void gen_runpair6(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 80 "runpair.in" + {Stack->push<real>(z.length()); return;} +} + +#line 84 "runpair.in" +// pair sqrt(explicit pair z); +void gen_runpair7(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 85 "runpair.in" + {Stack->push<pair>(Sqrt(z)); return;} +} + +// Return the angle of z in radians. +#line 90 "runpair.in" +// real angle(pair z, bool warn=true); +void gen_runpair8(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + pair z=vm::pop<pair>(Stack); +#line 91 "runpair.in" + if(!warn && z.getx() == 0.0 && z.gety() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(z.angle()); return;} +} + +// Return the angle of z in degrees in the interval [0,360). +#line 97 "runpair.in" +// real degrees(pair z, bool warn=true); +void gen_runpair9(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + pair z=vm::pop<pair>(Stack); +#line 98 "runpair.in" + if(!warn && z.getx() == 0.0 && z.gety() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(principalBranch(degrees(z.angle()))); return;} +} + +// Convert degrees to radians. +#line 104 "runpair.in" +// real radians(real degrees); +void gen_runpair10(stack *Stack) +{ + real degrees=vm::pop<real>(Stack); +#line 105 "runpair.in" + {Stack->push<real>(radians(degrees)); return;} +} + +// Convert radians to degrees. +#line 110 "runpair.in" +// real degrees(real radians); +void gen_runpair11(stack *Stack) +{ + real radians=vm::pop<real>(Stack); +#line 111 "runpair.in" + {Stack->push<real>(degrees(radians)); return;} +} + +// Convert radians to degrees in [0,360). +#line 116 "runpair.in" +// real Degrees(real radians); +void gen_runpair12(stack *Stack) +{ + real radians=vm::pop<real>(Stack); +#line 117 "runpair.in" + {Stack->push<real>(principalBranch(degrees(radians))); return;} +} + +#line 121 "runpair.in" +// real Sin(real deg); +void gen_runpair13(stack *Stack) +{ + real deg=vm::pop<real>(Stack); +#line 122 "runpair.in" + {Stack->push<real>(sin(radians(deg))); return;} +} + +#line 126 "runpair.in" +// real Cos(real deg); +void gen_runpair14(stack *Stack) +{ + real deg=vm::pop<real>(Stack); +#line 127 "runpair.in" + {Stack->push<real>(cos(radians(deg))); return;} +} + +#line 131 "runpair.in" +// real Tan(real deg); +void gen_runpair15(stack *Stack) +{ + real deg=vm::pop<real>(Stack); +#line 132 "runpair.in" + {Stack->push<real>(tan(radians(deg))); return;} +} + +#line 136 "runpair.in" +// real aSin(real x); +void gen_runpair16(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 137 "runpair.in" + {Stack->push<real>(degrees(asin(x))); return;} +} + +#line 141 "runpair.in" +// real aCos(real x); +void gen_runpair17(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 142 "runpair.in" + {Stack->push<real>(degrees(acos(x))); return;} +} + +#line 146 "runpair.in" +// real aTan(real x); +void gen_runpair18(stack *Stack) +{ + real x=vm::pop<real>(Stack); +#line 147 "runpair.in" + {Stack->push<real>(degrees(atan(x))); return;} +} + +#line 151 "runpair.in" +// pair unit(pair z); +void gen_runpair19(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 152 "runpair.in" + {Stack->push<pair>(unit(z)); return;} +} + +#line 156 "runpair.in" +// pair dir(real degrees); +void gen_runpair20(stack *Stack) +{ + real degrees=vm::pop<real>(Stack); +#line 157 "runpair.in" + {Stack->push<pair>(expi(radians(degrees))); return;} +} + +#line 161 "runpair.in" +// pair dir(explicit pair z); +void gen_runpair21(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 162 "runpair.in" + {Stack->push<pair>(unit(z)); return;} +} + +#line 166 "runpair.in" +// pair expi(real angle); +void gen_runpair22(stack *Stack) +{ + real angle=vm::pop<real>(Stack); +#line 167 "runpair.in" + {Stack->push<pair>(expi(angle)); return;} +} + +#line 171 "runpair.in" +// pair exp(explicit pair z); +void gen_runpair23(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 172 "runpair.in" + {Stack->push<pair>(exp(z)); return;} +} + +#line 176 "runpair.in" +// pair log(explicit pair z); +void gen_runpair24(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 177 "runpair.in" + {Stack->push<pair>(pair(log(z.length()),z.angle())); return;} +} + +#line 181 "runpair.in" +// pair sin(explicit pair z); +void gen_runpair25(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 182 "runpair.in" + {Stack->push<pair>(sin(z)); return;} +} + +#line 186 "runpair.in" +// pair cos(explicit pair z); +void gen_runpair26(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 187 "runpair.in" + {Stack->push<pair>(pair(cos(z.getx())*cosh(z.gety()),-sin(z.getx())*sinh(z.gety()))); return;} +} + +// Complex Gamma function +#line 192 "runpair.in" +// pair gamma(explicit pair z); +void gen_runpair27(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 193 "runpair.in" + {Stack->push<pair>(gamma(z)); return;} +} + +#line 197 "runpair.in" +// pair conj(pair z); +void gen_runpair28(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); +#line 198 "runpair.in" + {Stack->push<pair>(conj(z)); return;} +} + +#line 202 "runpair.in" +// pair realmult(pair z, pair w); +void gen_runpair29(stack *Stack) +{ + pair w=vm::pop<pair>(Stack); + pair z=vm::pop<pair>(Stack); +#line 203 "runpair.in" + {Stack->push<pair>(pair (z.getx()*w.getx(),z.gety()*w.gety())); return;} +} + +// To avoid confusion, a dot product requires explicit pair arguments. +#line 208 "runpair.in" +// real dot(explicit pair z, explicit pair w); +void gen_runpair30(stack *Stack) +{ + pair w=vm::pop<pair>(Stack); + pair z=vm::pop<pair>(Stack); +#line 209 "runpair.in" + {Stack->push<real>(dot(z,w)); return;} +} + +#line 213 "runpair.in" +// pair bezier(pair a, pair b, pair c, pair d, real t); +void gen_runpair31(stack *Stack) +{ + real t=vm::pop<real>(Stack); + pair d=vm::pop<pair>(Stack); + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 214 "runpair.in" + real onemt=1-t; + real onemt2=onemt*onemt; + {Stack->push<pair>(onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d)); return;} +} + +#line 220 "runpair.in" +// pair bezierP(pair a, pair b, pair c, pair d, real t); +void gen_runpair32(stack *Stack) +{ + real t=vm::pop<real>(Stack); + pair d=vm::pop<pair>(Stack); + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 221 "runpair.in" + {Stack->push<pair>(3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a)); return;} +} + +#line 225 "runpair.in" +// pair bezierPP(pair a, pair b, pair c, pair d, real t); +void gen_runpair33(stack *Stack) +{ + real t=vm::pop<real>(Stack); + pair d=vm::pop<pair>(Stack); + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 226 "runpair.in" + {Stack->push<pair>(6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b)); return;} +} + +#line 230 "runpair.in" +// pair bezierPPP(pair a, pair b, pair c, pair d); +void gen_runpair34(stack *Stack) +{ + pair d=vm::pop<pair>(Stack); + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 231 "runpair.in" + {Stack->push<pair>(6.0*(d-a+3.0*(b-c))); return;} +} + +} // namespace run + +namespace trans { + +void gen_runpair_venv(venv &ve) +{ +#line 49 "runpair.in" + REGISTER_BLTIN(run::pairZero,"pairZero"); +#line 54 "runpair.in" + REGISTER_BLTIN(run::realRealToPair,"realRealToPair"); +#line 59 "runpair.in" + REGISTER_BLTIN(run::pairNegate,"pairNegate"); +#line 64 "runpair.in" + addFunc(ve, run::pairXPart, primReal(), "xpart", formal(primPair(), "z", false, false)); +#line 69 "runpair.in" + addFunc(ve, run::pairYPart, primReal(), "ypart", formal(primPair(), "z", false, false)); +#line 74 "runpair.in" + addFunc(ve, run::gen_runpair5, primReal(), "length", formal(primPair(), "z", false, false)); +#line 79 "runpair.in" + addFunc(ve, run::gen_runpair6, primReal(), "abs", formal(primPair(), "z", false, false)); +#line 84 "runpair.in" + addFunc(ve, run::gen_runpair7, primPair(), "sqrt", formal(primPair(), "z", false, true)); +#line 89 "runpair.in" + addFunc(ve, run::gen_runpair8, primReal(), "angle", formal(primPair(), "z", false, false), formal(primBoolean(), "warn", true, false)); +#line 96 "runpair.in" + addFunc(ve, run::gen_runpair9, primReal(), "degrees", formal(primPair(), "z", false, false), formal(primBoolean(), "warn", true, false)); +#line 103 "runpair.in" + addFunc(ve, run::gen_runpair10, primReal(), "radians", formal(primReal(), "degrees", false, false)); +#line 109 "runpair.in" + addFunc(ve, run::gen_runpair11, primReal(), "degrees", formal(primReal(), "radians", false, false)); +#line 115 "runpair.in" + addFunc(ve, run::gen_runpair12, primReal(), "Degrees", formal(primReal(), "radians", false, false)); +#line 121 "runpair.in" + addFunc(ve, run::gen_runpair13, primReal(), "Sin", formal(primReal(), "deg", false, false)); +#line 126 "runpair.in" + addFunc(ve, run::gen_runpair14, primReal(), "Cos", formal(primReal(), "deg", false, false)); +#line 131 "runpair.in" + addFunc(ve, run::gen_runpair15, primReal(), "Tan", formal(primReal(), "deg", false, false)); +#line 136 "runpair.in" + addFunc(ve, run::gen_runpair16, primReal(), "aSin", formal(primReal(), "x", false, false)); +#line 141 "runpair.in" + addFunc(ve, run::gen_runpair17, primReal(), "aCos", formal(primReal(), "x", false, false)); +#line 146 "runpair.in" + addFunc(ve, run::gen_runpair18, primReal(), "aTan", formal(primReal(), "x", false, false)); +#line 151 "runpair.in" + addFunc(ve, run::gen_runpair19, primPair(), "unit", formal(primPair(), "z", false, false)); +#line 156 "runpair.in" + addFunc(ve, run::gen_runpair20, primPair(), "dir", formal(primReal(), "degrees", false, false)); +#line 161 "runpair.in" + addFunc(ve, run::gen_runpair21, primPair(), "dir", formal(primPair(), "z", false, true)); +#line 166 "runpair.in" + addFunc(ve, run::gen_runpair22, primPair(), "expi", formal(primReal(), "angle", false, false)); +#line 171 "runpair.in" + addFunc(ve, run::gen_runpair23, primPair(), "exp", formal(primPair(), "z", false, true)); +#line 176 "runpair.in" + addFunc(ve, run::gen_runpair24, primPair(), "log", formal(primPair(), "z", false, true)); +#line 181 "runpair.in" + addFunc(ve, run::gen_runpair25, primPair(), "sin", formal(primPair(), "z", false, true)); +#line 186 "runpair.in" + addFunc(ve, run::gen_runpair26, primPair(), "cos", formal(primPair(), "z", false, true)); +#line 191 "runpair.in" + addFunc(ve, run::gen_runpair27, primPair(), "gamma", formal(primPair(), "z", false, true)); +#line 197 "runpair.in" + addFunc(ve, run::gen_runpair28, primPair(), "conj", formal(primPair(), "z", false, false)); +#line 202 "runpair.in" + addFunc(ve, run::gen_runpair29, primPair(), "realmult", formal(primPair(), "z", false, false), formal(primPair(), "w", false, false)); +#line 207 "runpair.in" + addFunc(ve, run::gen_runpair30, primReal(), "dot", formal(primPair(), "z", false, true), formal(primPair(), "w", false, true)); +#line 213 "runpair.in" + addFunc(ve, run::gen_runpair31, primPair(), "bezier", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false), formal(primReal(), "t", false, false)); +#line 220 "runpair.in" + addFunc(ve, run::gen_runpair32, primPair(), "bezierP", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false), formal(primReal(), "t", false, false)); +#line 225 "runpair.in" + addFunc(ve, run::gen_runpair33, primPair(), "bezierPP", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false), formal(primReal(), "t", false, false)); +#line 230 "runpair.in" + addFunc(ve, run::gen_runpair34, primPair(), "bezierPPP", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runpair.h b/Build/source/utils/asymptote/runpair.h new file mode 100644 index 00000000000..b53a7c02e9e --- /dev/null +++ b/Build/source/utils/asymptote/runpair.h @@ -0,0 +1,13 @@ +/***** Autogenerated from runpair.in; changes will be overwritten *****/ + +#ifndef runpair_H +#define runpair_H +namespace run { +void pairZero(vm::stack *); +void realRealToPair(vm::stack *); +void pairNegate(vm::stack *); +void pairXPart(vm::stack *); +void pairYPart(vm::stack *); +} + +#endif // runpair_H diff --git a/Build/source/utils/asymptote/runpair.in b/Build/source/utils/asymptote/runpair.in new file mode 100644 index 00000000000..43554902ed6 --- /dev/null +++ b/Build/source/utils/asymptote/runpair.in @@ -0,0 +1,233 @@ +/***** + * runpair.in + * + * Runtime functions for pair operations. + * + *****/ + +pair => primPair() + +#include "pair.h" + +using namespace camp; + +namespace run { +extern pair zero; +} + +pair sin(pair z) +{ + return pair(sin(z.getx())*cosh(z.gety()),cos(z.getx())*sinh(z.gety())); +} + +pair exp(pair z) +{ + return exp(z.getx())*expi(z.gety()); +} + +pair gamma(pair z) +{ + static double p[]={0.99999999999980993,676.5203681218851,-1259.1392167224028, + 771.32342877765313,-176.61502916214059,12.507343278686905, + -0.13857109526572012,9.9843695780195716e-6, + 1.5056327351493116e-7}; + static int n=sizeof(p)/sizeof(double); + static double root2pi=sqrt(2*PI); + if(z.getx() < 0.5) + return PI/(sin(PI*z)*gamma(1.0-z)); + z -= 1.0; + pair x=p[0]; + for(int i=1; i < n; ++i) + x += p[i]/(z+i); + pair t=n-1.5+z; + return root2pi*pow(t,z+0.5)*exp(-t)*x; +} + +// Autogenerated routines: + + +pair :pairZero() +{ + return zero; +} + +pair :realRealToPair(real x, real y) +{ + return pair(x,y); +} + +pair :pairNegate(pair z) +{ + return -z; +} + +real xpart:pairXPart(pair z) +{ + return z.getx(); +} + +real ypart:pairYPart(pair z) +{ + return z.gety(); +} + +real length(pair z) +{ + return z.length(); +} + +real abs(pair z) +{ + return z.length(); +} + +pair sqrt(explicit pair z) +{ + return Sqrt(z); +} + +// Return the angle of z in radians. +real angle(pair z, bool warn=true) +{ + if(!warn && z.getx() == 0.0 && z.gety() == 0.0) return 0.0; + return z.angle(); +} + +// Return the angle of z in degrees in the interval [0,360). +real degrees(pair z, bool warn=true) +{ + if(!warn && z.getx() == 0.0 && z.gety() == 0.0) return 0.0; + return principalBranch(degrees(z.angle())); +} + +// Convert degrees to radians. +real radians(real degrees) +{ + return radians(degrees); +} + +// Convert radians to degrees. +real degrees(real radians) +{ + return degrees(radians); +} + +// Convert radians to degrees in [0,360). +real Degrees(real radians) +{ + return principalBranch(degrees(radians)); +} + +real Sin(real deg) +{ + return sin(radians(deg)); +} + +real Cos(real deg) +{ + return cos(radians(deg)); +} + +real Tan(real deg) +{ + return tan(radians(deg)); +} + +real aSin(real x) +{ + return degrees(asin(x)); +} + +real aCos(real x) +{ + return degrees(acos(x)); +} + +real aTan(real x) +{ + return degrees(atan(x)); +} + +pair unit(pair z) +{ + return unit(z); +} + +pair dir(real degrees) +{ + return expi(radians(degrees)); +} + +pair dir(explicit pair z) +{ + return unit(z); +} + +pair expi(real angle) +{ + return expi(angle); +} + +pair exp(explicit pair z) +{ + return exp(z); +} + +pair log(explicit pair z) +{ + return pair(log(z.length()),z.angle()); +} + +pair sin(explicit pair z) +{ + return sin(z); +} + +pair cos(explicit pair z) +{ + return pair(cos(z.getx())*cosh(z.gety()),-sin(z.getx())*sinh(z.gety())); +} + +// Complex Gamma function +pair gamma(explicit pair z) +{ + return gamma(z); +} + +pair conj(pair z) +{ + return conj(z); +} + +pair realmult(pair z, pair w) +{ + return pair (z.getx()*w.getx(),z.gety()*w.gety()); +} + +// To avoid confusion, a dot product requires explicit pair arguments. +real dot(explicit pair z, explicit pair w) +{ + return dot(z,w); +} + +pair bezier(pair a, pair b, pair c, pair d, real t) +{ + real onemt=1-t; + real onemt2=onemt*onemt; + return onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d); +} + +pair bezierP(pair a, pair b, pair c, pair d, real t) +{ + return 3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a); +} + +pair bezierPP(pair a, pair b, pair c, pair d, real t) +{ + return 6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b); +} + +pair bezierPPP(pair a, pair b, pair c, pair d) +{ + return 6.0*(d-a+3.0*(b-c)); +} diff --git a/Build/source/utils/asymptote/runpath.cc b/Build/source/utils/asymptote/runpath.cc new file mode 100644 index 00000000000..a37a77c58fa --- /dev/null +++ b/Build/source/utils/asymptote/runpath.cc @@ -0,0 +1,698 @@ +/***** Autogenerated from runpath.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runpath.in" +/***** + * runpicture.in + * + * Runtime functions for picture operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 16 "runpath.in" +#include "path.h" +#include "arrayop.h" +#include "predicates.h" + +using namespace camp; +using namespace vm; + +typedef array realarray; +typedef array realarray2; +typedef array patharray; + +using types::realArray; +using types::realArray2; +using types::pathArray; + +Int windingnumber(array *p, camp::pair z) +{ + size_t size=checkArray(p); + Int count=0; + for(size_t i=0; i < size; i++) + count += read<path *>(p,i)->windingnumber(z); + return count; +} + +// Autogenerated routines: + + + +namespace run { +#line 43 "runpath.in" +void nullPath(stack *Stack) +{ +#line 44 "runpath.in" + {Stack->push<path>(nullpath); return;} +} + +#line 48 "runpath.in" +// bool ==(path a, path b); +void gen_runpath1(stack *Stack) +{ + path b=vm::pop<path>(Stack); + path a=vm::pop<path>(Stack); +#line 49 "runpath.in" + {Stack->push<bool>(a == b); return;} +} + +#line 53 "runpath.in" +// bool !=(path a, path b); +void gen_runpath2(stack *Stack) +{ + path b=vm::pop<path>(Stack); + path a=vm::pop<path>(Stack); +#line 54 "runpath.in" + {Stack->push<bool>(!(a == b)); return;} +} + +#line 58 "runpath.in" +// pair point(path p, Int t); +void gen_runpath3(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 59 "runpath.in" + {Stack->push<pair>(p.point((Int) t)); return;} +} + +#line 63 "runpath.in" +// pair point(path p, real t); +void gen_runpath4(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 64 "runpath.in" + {Stack->push<pair>(p.point(t)); return;} +} + +#line 68 "runpath.in" +// pair precontrol(path p, Int t); +void gen_runpath5(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 69 "runpath.in" + {Stack->push<pair>(p.precontrol((Int) t)); return;} +} + +#line 73 "runpath.in" +// pair precontrol(path p, real t); +void gen_runpath6(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 74 "runpath.in" + {Stack->push<pair>(p.precontrol(t)); return;} +} + +#line 78 "runpath.in" +// pair postcontrol(path p, Int t); +void gen_runpath7(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 79 "runpath.in" + {Stack->push<pair>(p.postcontrol((Int) t)); return;} +} + +#line 83 "runpath.in" +// pair postcontrol(path p, real t); +void gen_runpath8(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 84 "runpath.in" + {Stack->push<pair>(p.postcontrol(t)); return;} +} + +#line 88 "runpath.in" +// pair dir(path p, Int t, Int sign=0, bool normalize=true); +void gen_runpath9(stack *Stack) +{ + bool normalize=vm::pop<bool>(Stack,true); + Int sign=vm::pop<Int>(Stack,0); + Int t=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 89 "runpath.in" + {Stack->push<pair>(p.dir(t,sign,normalize)); return;} +} + +#line 93 "runpath.in" +// pair dir(path p, real t, bool normalize=true); +void gen_runpath10(stack *Stack) +{ + bool normalize=vm::pop<bool>(Stack,true); + real t=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 94 "runpath.in" + {Stack->push<pair>(p.dir(t,normalize)); return;} +} + +#line 98 "runpath.in" +// pair accel(path p, Int t, Int sign=0); +void gen_runpath11(stack *Stack) +{ + Int sign=vm::pop<Int>(Stack,0); + Int t=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 99 "runpath.in" + {Stack->push<pair>(p.accel(t,sign)); return;} +} + +#line 103 "runpath.in" +// pair accel(path p, real t); +void gen_runpath12(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 104 "runpath.in" + {Stack->push<pair>(p.accel(t)); return;} +} + +#line 108 "runpath.in" +// real radius(path p, real t); +void gen_runpath13(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 109 "runpath.in" + pair v=p.dir(t,false); + pair a=p.accel(t); + real d=dot(a,v); + real v2=v.abs2(); + real a2=a.abs2(); + real denom=v2*a2-d*d; + real r=v2*sqrt(v2); + {Stack->push<real>(denom > 0 ? r/sqrt(denom) : 0.0); return;} +} + +#line 120 "runpath.in" +// path reverse(path p); +void gen_runpath14(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 121 "runpath.in" + {Stack->push<path>(p.reverse()); return;} +} + +#line 125 "runpath.in" +// path subpath(path p, Int a, Int b); +void gen_runpath15(stack *Stack) +{ + Int b=vm::pop<Int>(Stack); + Int a=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 126 "runpath.in" + {Stack->push<path>(p.subpath((Int) a, (Int) b)); return;} +} + +#line 130 "runpath.in" +// path subpath(path p, real a, real b); +void gen_runpath16(stack *Stack) +{ + real b=vm::pop<real>(Stack); + real a=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 131 "runpath.in" + {Stack->push<path>(p.subpath(a,b)); return;} +} + +#line 135 "runpath.in" +// path nurb(pair z0, pair z1, pair z2, pair z3, real w0, real w1, real w2, real w3, Int m); +void gen_runpath17(stack *Stack) +{ + Int m=vm::pop<Int>(Stack); + real w3=vm::pop<real>(Stack); + real w2=vm::pop<real>(Stack); + real w1=vm::pop<real>(Stack); + real w0=vm::pop<real>(Stack); + pair z3=vm::pop<pair>(Stack); + pair z2=vm::pop<pair>(Stack); + pair z1=vm::pop<pair>(Stack); + pair z0=vm::pop<pair>(Stack); +#line 137 "runpath.in" + {Stack->push<path>(nurb(z0,z1,z2,z3,w0,w1,w2,w3,m)); return;} +} + +#line 141 "runpath.in" +// Int length(path p); +void gen_runpath18(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 142 "runpath.in" + {Stack->push<Int>(p.length()); return;} +} + +#line 146 "runpath.in" +// bool cyclic(path p); +void gen_runpath19(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 147 "runpath.in" + {Stack->push<bool>(p.cyclic()); return;} +} + +#line 151 "runpath.in" +// bool straight(path p, Int t); +void gen_runpath20(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path p=vm::pop<path>(Stack); +#line 152 "runpath.in" + {Stack->push<bool>(p.straight(t)); return;} +} + +#line 156 "runpath.in" +// path unstraighten(path p); +void gen_runpath21(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 157 "runpath.in" + {Stack->push<path>(p.unstraighten()); return;} +} + +#line 161 "runpath.in" +// bool piecewisestraight(path p); +void gen_runpath22(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 162 "runpath.in" + {Stack->push<bool>(p.piecewisestraight()); return;} +} + +#line 166 "runpath.in" +// real arclength(path p); +void gen_runpath23(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 167 "runpath.in" + {Stack->push<real>(p.arclength()); return;} +} + +#line 171 "runpath.in" +// real arctime(path p, real dval); +void gen_runpath24(stack *Stack) +{ + real dval=vm::pop<real>(Stack); + path p=vm::pop<path>(Stack); +#line 172 "runpath.in" + {Stack->push<real>(p.arctime(dval)); return;} +} + +#line 176 "runpath.in" +// real dirtime(path p, pair z); +void gen_runpath25(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); + path p=vm::pop<path>(Stack); +#line 177 "runpath.in" + {Stack->push<real>(p.directiontime(z)); return;} +} + +#line 181 "runpath.in" +// realarray* intersect(path p, path q, real fuzz=-1); +void gen_runpath26(stack *Stack) +{ + real fuzz=vm::pop<real>(Stack,-1); + path q=vm::pop<path>(Stack); + path p=vm::pop<path>(Stack); +#line 182 "runpath.in" + bool exact=fuzz <= 0.0; + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + std::vector<real> S,T; + real s,t; + if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { + array *V=new array(2); + (*V)[0]=s; + (*V)[1]=t; + {Stack->push<realarray*>(V); return;} + } + {Stack->push<realarray*>(new array(0)); return;} +} + +#line 198 "runpath.in" +// realarray2* intersections(path p, path q, real fuzz=-1); +void gen_runpath27(stack *Stack) +{ + real fuzz=vm::pop<real>(Stack,-1); + path q=vm::pop<path>(Stack); + path p=vm::pop<path>(Stack); +#line 199 "runpath.in" + bool exact=fuzz <= 0.0; + if(fuzz < 0.0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + real s,t; + std::vector<real> S,T; + intersections(s,t,S,T,p,q,fuzz,false,true); + size_t n=S.size(); + if(n == 0 && !exact) { + if(intersections(s,t,S,T,p,q,fuzz,true,false)) { + array *V=new array(1); + array *Vi=new array(2); + (*V)[0]=Vi; + (*Vi)[0]=s; + (*Vi)[1]=t; + {Stack->push<realarray2*>(V); return;} + } + } + array *V=new array(n); + for(size_t i=0; i < n; ++i) { + array *Vi=new array(2); + (*V)[i]=Vi; + (*Vi)[0]=S[i]; + (*Vi)[1]=T[i]; + } + stable_sort(V->begin(),V->end(),run::compare2<real>()); + {Stack->push<realarray2*>(V); return;} +} + +#line 229 "runpath.in" +// realarray* intersections(path p, explicit pair a, explicit pair b, real fuzz=-1); +void gen_runpath28(stack *Stack) +{ + real fuzz=vm::pop<real>(Stack,-1); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); + path p=vm::pop<path>(Stack); +#line 230 "runpath.in" + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(a),length(b))); + std::vector<real> S; + intersections(S,p,a,b,fuzz); + sort(S.begin(),S.end()); + size_t n=S.size(); + array *V=new array(n); + for(size_t i=0; i < n; ++i) + (*V)[i]=S[i]; + {Stack->push<realarray*>(V); return;} +} + +// Return the intersection point of the extensions of the line segments +// PQ and pq. +#line 246 "runpath.in" +// pair extension(pair P, pair Q, pair p, pair q); +void gen_runpath29(stack *Stack) +{ + pair q=vm::pop<pair>(Stack); + pair p=vm::pop<pair>(Stack); + pair Q=vm::pop<pair>(Stack); + pair P=vm::pop<pair>(Stack); +#line 247 "runpath.in" + pair ac=P-Q; + pair bd=q-p; + real det=ac.getx()*bd.gety()-ac.gety()*bd.getx(); + if(det == 0) {Stack->push<pair>(pair(infinity,infinity)); return;} + {Stack->push<pair>(P+((p.getx()-P.getx())*bd.gety()-(p.gety()-P.gety())*bd.getx())*ac/det); return;} +} + +#line 255 "runpath.in" +// Int size(path p); +void gen_runpath30(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 256 "runpath.in" + {Stack->push<Int>(p.size()); return;} +} + +#line 260 "runpath.in" +// path &(path p, path q); +void gen_runpath31(stack *Stack) +{ + path q=vm::pop<path>(Stack); + path p=vm::pop<path>(Stack); +#line 261 "runpath.in" + {Stack->push<path>(camp::concat(p,q)); return;} +} + +#line 265 "runpath.in" +// pair min(path p); +void gen_runpath32(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 266 "runpath.in" + {Stack->push<pair>(p.min()); return;} +} + +#line 270 "runpath.in" +// pair max(path p); +void gen_runpath33(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 271 "runpath.in" + {Stack->push<pair>(p.max()); return;} +} + +#line 275 "runpath.in" +// realarray* mintimes(path p); +void gen_runpath34(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 276 "runpath.in" + array *V=new array(2); + pair z=p.mintimes(); + (*V)[0]=z.getx(); + (*V)[1]=z.gety(); + {Stack->push<realarray*>(V); return;} +} + +#line 284 "runpath.in" +// realarray* maxtimes(path p); +void gen_runpath35(stack *Stack) +{ + path p=vm::pop<path>(Stack); +#line 285 "runpath.in" + array *V=new array(2); + pair z=p.maxtimes(); + (*V)[0]=z.getx(); + (*V)[1]=z.gety(); + {Stack->push<realarray*>(V); return;} +} + +#line 293 "runpath.in" +// real relativedistance(real theta, real phi, real t, bool atleast); +void gen_runpath36(stack *Stack) +{ + bool atleast=vm::pop<bool>(Stack); + real t=vm::pop<real>(Stack); + real phi=vm::pop<real>(Stack); + real theta=vm::pop<real>(Stack); +#line 294 "runpath.in" + {Stack->push<real>(camp::velocity(theta,phi,tension(t,atleast))); return;} +} + +#line 298 "runpath.in" +// Int windingnumber(patharray *p, pair z); +void gen_runpath37(stack *Stack) +{ + pair z=vm::pop<pair>(Stack); + patharray * p=vm::pop<patharray *>(Stack); +#line 299 "runpath.in" + {Stack->push<Int>(windingnumber(p,z)); return;} +} + +#line 303 "runpath.in" +// bool inside(explicit patharray *g, pair z, pen fillrule=CURRENTPEN); +void gen_runpath38(stack *Stack) +{ + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + pair z=vm::pop<pair>(Stack); + patharray * g=vm::pop<patharray *>(Stack); +#line 304 "runpath.in" + {Stack->push<bool>(fillrule.inside(windingnumber(g,z))); return;} +} + +#line 308 "runpath.in" +// bool inside(path g, pair z, pen fillrule=CURRENTPEN); +void gen_runpath39(stack *Stack) +{ + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + pair z=vm::pop<pair>(Stack); + path g=vm::pop<path>(Stack); +#line 309 "runpath.in" + {Stack->push<bool>(fillrule.inside(g.windingnumber(z))); return;} +} + +// Determine the side of a--b that c lies on +// (negative=left, zero=on line, positive=right). +#line 315 "runpath.in" +// real side(pair a, pair b, pair c); +void gen_runpath40(stack *Stack) +{ + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 316 "runpath.in" + {Stack->push<real>(orient2d(a,b,c)); return;} +} + +// Determine the side of the counterclockwise circle through a,b,c that d +// lies on (negative=inside, 0=on circle, positive=right). +#line 322 "runpath.in" +// real incircle(pair a, pair b, pair c, pair d); +void gen_runpath41(stack *Stack) +{ + pair d=vm::pop<pair>(Stack); + pair c=vm::pop<pair>(Stack); + pair b=vm::pop<pair>(Stack); + pair a=vm::pop<pair>(Stack); +#line 323 "runpath.in" + {Stack->push<real>(incircle(a.getx(),a.gety(),b.getx(),b.gety(),c.getx(),c.gety(), + d.getx(),d.gety())); return;} +} + +} // namespace run + +namespace trans { + +void gen_runpath_venv(venv &ve) +{ +#line 43 "runpath.in" + REGISTER_BLTIN(run::nullPath,"nullPath"); +#line 48 "runpath.in" + addFunc(ve, run::gen_runpath1, primBoolean(), "==", formal(primPath(), "a", false, false), formal(primPath(), "b", false, false)); +#line 53 "runpath.in" + addFunc(ve, run::gen_runpath2, primBoolean(), "!=", formal(primPath(), "a", false, false), formal(primPath(), "b", false, false)); +#line 58 "runpath.in" + addFunc(ve, run::gen_runpath3, primPair(), "point", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); +#line 63 "runpath.in" + addFunc(ve, run::gen_runpath4, primPair(), "point", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); +#line 68 "runpath.in" + addFunc(ve, run::gen_runpath5, primPair(), "precontrol", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); +#line 73 "runpath.in" + addFunc(ve, run::gen_runpath6, primPair(), "precontrol", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); +#line 78 "runpath.in" + addFunc(ve, run::gen_runpath7, primPair(), "postcontrol", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); +#line 83 "runpath.in" + addFunc(ve, run::gen_runpath8, primPair(), "postcontrol", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); +#line 88 "runpath.in" + addFunc(ve, run::gen_runpath9, primPair(), "dir", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false), formal(primBoolean(), "normalize", true, false)); +#line 93 "runpath.in" + addFunc(ve, run::gen_runpath10, primPair(), "dir", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false), formal(primBoolean(), "normalize", true, false)); +#line 98 "runpath.in" + addFunc(ve, run::gen_runpath11, primPair(), "accel", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false)); +#line 103 "runpath.in" + addFunc(ve, run::gen_runpath12, primPair(), "accel", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); +#line 108 "runpath.in" + addFunc(ve, run::gen_runpath13, primReal(), "radius", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); +#line 120 "runpath.in" + addFunc(ve, run::gen_runpath14, primPath(), "reverse", formal(primPath(), "p", false, false)); +#line 125 "runpath.in" + addFunc(ve, run::gen_runpath15, primPath(), "subpath", formal(primPath(), "p", false, false), formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); +#line 130 "runpath.in" + addFunc(ve, run::gen_runpath16, primPath(), "subpath", formal(primPath(), "p", false, false), formal(primReal(), "a", false, false), formal(primReal(), "b", false, false)); +#line 135 "runpath.in" + addFunc(ve, run::gen_runpath17, primPath(), "nurb", formal(primPair(), "z0", false, false), formal(primPair(), "z1", false, false), formal(primPair(), "z2", false, false), formal(primPair(), "z3", false, false), formal(primReal(), "w0", false, false), formal(primReal(), "w1", false, false), formal(primReal(), "w2", false, false), formal(primReal(), "w3", false, false), formal(primInt(), "m", false, false)); +#line 141 "runpath.in" + addFunc(ve, run::gen_runpath18, primInt(), "length", formal(primPath(), "p", false, false)); +#line 146 "runpath.in" + addFunc(ve, run::gen_runpath19, primBoolean(), "cyclic", formal(primPath(), "p", false, false)); +#line 151 "runpath.in" + addFunc(ve, run::gen_runpath20, primBoolean(), "straight", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); +#line 156 "runpath.in" + addFunc(ve, run::gen_runpath21, primPath(), "unstraighten", formal(primPath(), "p", false, false)); +#line 161 "runpath.in" + addFunc(ve, run::gen_runpath22, primBoolean(), "piecewisestraight", formal(primPath(), "p", false, false)); +#line 166 "runpath.in" + addFunc(ve, run::gen_runpath23, primReal(), "arclength", formal(primPath(), "p", false, false)); +#line 171 "runpath.in" + addFunc(ve, run::gen_runpath24, primReal(), "arctime", formal(primPath(), "p", false, false), formal(primReal(), "dval", false, false)); +#line 176 "runpath.in" + addFunc(ve, run::gen_runpath25, primReal(), "dirtime", formal(primPath(), "p", false, false), formal(primPair(), "z", false, false)); +#line 181 "runpath.in" + addFunc(ve, run::gen_runpath26, realArray(), "intersect", formal(primPath(), "p", false, false), formal(primPath(), "q", false, false), formal(primReal(), "fuzz", true, false)); +#line 198 "runpath.in" + addFunc(ve, run::gen_runpath27, realArray2(), "intersections", formal(primPath(), "p", false, false), formal(primPath(), "q", false, false), formal(primReal(), "fuzz", true, false)); +#line 229 "runpath.in" + addFunc(ve, run::gen_runpath28, realArray(), "intersections", formal(primPath(), "p", false, false), formal(primPair(), "a", false, true), formal(primPair(), "b", false, true), formal(primReal(), "fuzz", true, false)); +#line 244 "runpath.in" + addFunc(ve, run::gen_runpath29, primPair(), "extension", formal(primPair(), "p", false, false), formal(primPair(), "q", false, false), formal(primPair(), "p", false, false), formal(primPair(), "q", false, false)); +#line 255 "runpath.in" + addFunc(ve, run::gen_runpath30, primInt(), "size", formal(primPath(), "p", false, false)); +#line 260 "runpath.in" + addFunc(ve, run::gen_runpath31, primPath(), "&", formal(primPath(), "p", false, false), formal(primPath(), "q", false, false)); +#line 265 "runpath.in" + addFunc(ve, run::gen_runpath32, primPair(), "min", formal(primPath(), "p", false, false)); +#line 270 "runpath.in" + addFunc(ve, run::gen_runpath33, primPair(), "max", formal(primPath(), "p", false, false)); +#line 275 "runpath.in" + addFunc(ve, run::gen_runpath34, realArray(), "mintimes", formal(primPath(), "p", false, false)); +#line 284 "runpath.in" + addFunc(ve, run::gen_runpath35, realArray(), "maxtimes", formal(primPath(), "p", false, false)); +#line 293 "runpath.in" + addFunc(ve, run::gen_runpath36, primReal(), "relativedistance", formal(primReal(), "theta", false, false), formal(primReal(), "phi", false, false), formal(primReal(), "t", false, false), formal(primBoolean(), "atleast", false, false)); +#line 298 "runpath.in" + addFunc(ve, run::gen_runpath37, primInt(), "windingnumber", formal(pathArray() , "p", false, false), formal(primPair(), "z", false, false)); +#line 303 "runpath.in" + addFunc(ve, run::gen_runpath38, primBoolean(), "inside", formal(pathArray() , "g", false, true), formal(primPair(), "z", false, false), formal(primPen(), "fillrule", true, false)); +#line 308 "runpath.in" + addFunc(ve, run::gen_runpath39, primBoolean(), "inside", formal(primPath(), "g", false, false), formal(primPair(), "z", false, false), formal(primPen(), "fillrule", true, false)); +#line 313 "runpath.in" + addFunc(ve, run::gen_runpath40, primReal(), "side", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false)); +#line 320 "runpath.in" + addFunc(ve, run::gen_runpath41, primReal(), "incircle", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runpath.h b/Build/source/utils/asymptote/runpath.h new file mode 100644 index 00000000000..18ee20cb57f --- /dev/null +++ b/Build/source/utils/asymptote/runpath.h @@ -0,0 +1,9 @@ +/***** Autogenerated from runpath.in; changes will be overwritten *****/ + +#ifndef runpath_H +#define runpath_H +namespace run { +void nullPath(vm::stack *); +} + +#endif // runpath_H diff --git a/Build/source/utils/asymptote/runpath.in b/Build/source/utils/asymptote/runpath.in new file mode 100644 index 00000000000..a9445d4104c --- /dev/null +++ b/Build/source/utils/asymptote/runpath.in @@ -0,0 +1,326 @@ +/***** + * runpicture.in + * + * Runtime functions for picture operations. + * + *****/ + +pen => primPen() +pair => primPair() +path => primPath() +realarray* => realArray() +realarray2* => realArray2() +patharray* => pathArray() +penarray* => penArray() + +#include "path.h" +#include "arrayop.h" +#include "predicates.h" + +using namespace camp; +using namespace vm; + +typedef array realarray; +typedef array realarray2; +typedef array patharray; + +using types::realArray; +using types::realArray2; +using types::pathArray; + +Int windingnumber(array *p, camp::pair z) +{ + size_t size=checkArray(p); + Int count=0; + for(size_t i=0; i < size; i++) + count += read<path *>(p,i)->windingnumber(z); + return count; +} + +// Autogenerated routines: + + +path :nullPath() +{ + return nullpath; +} + +bool ==(path a, path b) +{ + return a == b; +} + +bool !=(path a, path b) +{ + return !(a == b); +} + +pair point(path p, Int t) +{ + return p.point((Int) t); +} + +pair point(path p, real t) +{ + return p.point(t); +} + +pair precontrol(path p, Int t) +{ + return p.precontrol((Int) t); +} + +pair precontrol(path p, real t) +{ + return p.precontrol(t); +} + +pair postcontrol(path p, Int t) +{ + return p.postcontrol((Int) t); +} + +pair postcontrol(path p, real t) +{ + return p.postcontrol(t); +} + +pair dir(path p, Int t, Int sign=0, bool normalize=true) +{ + return p.dir(t,sign,normalize); +} + +pair dir(path p, real t, bool normalize=true) +{ + return p.dir(t,normalize); +} + +pair accel(path p, Int t, Int sign=0) +{ + return p.accel(t,sign); +} + +pair accel(path p, real t) +{ + return p.accel(t); +} + +real radius(path p, real t) +{ + pair v=p.dir(t,false); + pair a=p.accel(t); + real d=dot(a,v); + real v2=v.abs2(); + real a2=a.abs2(); + real denom=v2*a2-d*d; + real r=v2*sqrt(v2); + return denom > 0 ? r/sqrt(denom) : 0.0; +} + +path reverse(path p) +{ + return p.reverse(); +} + +path subpath(path p, Int a, Int b) +{ + return p.subpath((Int) a, (Int) b); +} + +path subpath(path p, real a, real b) +{ + return p.subpath(a,b); +} + +path nurb(pair z0, pair z1, pair z2, pair z3, + real w0, real w1, real w2, real w3, Int m) +{ + return nurb(z0,z1,z2,z3,w0,w1,w2,w3,m); +} + +Int length(path p) +{ + return p.length(); +} + +bool cyclic(path p) +{ + return p.cyclic(); +} + +bool straight(path p, Int t) +{ + return p.straight(t); +} + +path unstraighten(path p) +{ + return p.unstraighten(); +} + +bool piecewisestraight(path p) +{ + return p.piecewisestraight(); +} + +real arclength(path p) +{ + return p.arclength(); +} + +real arctime(path p, real dval) +{ + return p.arctime(dval); +} + +real dirtime(path p, pair z) +{ + return p.directiontime(z); +} + +realarray* intersect(path p, path q, real fuzz=-1) +{ + bool exact=fuzz <= 0.0; + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + std::vector<real> S,T; + real s,t; + if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { + array *V=new array(2); + (*V)[0]=s; + (*V)[1]=t; + return V; + } + return new array(0); +} + +realarray2* intersections(path p, path q, real fuzz=-1) +{ + bool exact=fuzz <= 0.0; + if(fuzz < 0.0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + real s,t; + std::vector<real> S,T; + intersections(s,t,S,T,p,q,fuzz,false,true); + size_t n=S.size(); + if(n == 0 && !exact) { + if(intersections(s,t,S,T,p,q,fuzz,true,false)) { + array *V=new array(1); + array *Vi=new array(2); + (*V)[0]=Vi; + (*Vi)[0]=s; + (*Vi)[1]=t; + return V; + } + } + array *V=new array(n); + for(size_t i=0; i < n; ++i) { + array *Vi=new array(2); + (*V)[i]=Vi; + (*Vi)[0]=S[i]; + (*Vi)[1]=T[i]; + } + stable_sort(V->begin(),V->end(),run::compare2<real>()); + return V; +} + +realarray* intersections(path p, explicit pair a, explicit pair b, real fuzz=-1) +{ + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(a),length(b))); + std::vector<real> S; + intersections(S,p,a,b,fuzz); + sort(S.begin(),S.end()); + size_t n=S.size(); + array *V=new array(n); + for(size_t i=0; i < n; ++i) + (*V)[i]=S[i]; + return V; +} + +// Return the intersection point of the extensions of the line segments +// PQ and pq. +pair extension(pair P, pair Q, pair p, pair q) +{ + pair ac=P-Q; + pair bd=q-p; + real det=ac.getx()*bd.gety()-ac.gety()*bd.getx(); + if(det == 0) return pair(infinity,infinity); + return P+((p.getx()-P.getx())*bd.gety()-(p.gety()-P.gety())*bd.getx())*ac/det; +} + +Int size(path p) +{ + return p.size(); +} + +path &(path p, path q) +{ + return camp::concat(p,q); +} + +pair min(path p) +{ + return p.min(); +} + +pair max(path p) +{ + return p.max(); +} + +realarray *mintimes(path p) +{ + array *V=new array(2); + pair z=p.mintimes(); + (*V)[0]=z.getx(); + (*V)[1]=z.gety(); + return V; +} + +realarray *maxtimes(path p) +{ + array *V=new array(2); + pair z=p.maxtimes(); + (*V)[0]=z.getx(); + (*V)[1]=z.gety(); + return V; +} + +real relativedistance(real theta, real phi, real t, bool atleast) +{ + return camp::velocity(theta,phi,tension(t,atleast)); +} + +Int windingnumber(patharray *p, pair z) +{ + return windingnumber(p,z); +} + +bool inside(explicit patharray *g, pair z, pen fillrule=CURRENTPEN) +{ + return fillrule.inside(windingnumber(g,z)); +} + +bool inside(path g, pair z, pen fillrule=CURRENTPEN) +{ + return fillrule.inside(g.windingnumber(z)); +} + +// Determine the side of a--b that c lies on +// (negative=left, zero=on line, positive=right). +real side(pair a, pair b, pair c) +{ + return orient2d(a,b,c); +} + +// Determine the side of the counterclockwise circle through a,b,c that d +// lies on (negative=inside, 0=on circle, positive=right). +real incircle(pair a, pair b, pair c, pair d) +{ + return incircle(a.getx(),a.gety(),b.getx(),b.gety(),c.getx(),c.gety(), + d.getx(),d.gety()); +} diff --git a/Build/source/utils/asymptote/runpath3d.cc b/Build/source/utils/asymptote/runpath3d.cc new file mode 100644 index 00000000000..9e7444fe227 --- /dev/null +++ b/Build/source/utils/asymptote/runpath3d.cc @@ -0,0 +1,673 @@ +/***** Autogenerated from runpath3d.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runpath3d.in" +/***** + * runpath3.in + * + * Runtime functions for path3 operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 17 "runpath3d.in" +#include "path3.h" +#include "array.h" +#include "drawsurface.h" + +using namespace camp; +using namespace vm; + +typedef array boolarray; +typedef array realarray; +typedef array realarray2; +typedef array triplearray; +typedef array triplearray2; + +using types::booleanArray; +using types::realArray; +using types::realArray2; +using types::tripleArray; +using types::tripleArray2; + +// Autogenerated routines: + + + +namespace run { +#line 39 "runpath3d.in" +// path3 path3(triplearray *pre, triplearray *point, triplearray *post, boolarray *straight, bool cyclic); +void gen_runpath3d0(stack *Stack) +{ + bool cyclic=vm::pop<bool>(Stack); + boolarray * straight=vm::pop<boolarray *>(Stack); + triplearray * post=vm::pop<triplearray *>(Stack); + triplearray * point=vm::pop<triplearray *>(Stack); + triplearray * pre=vm::pop<triplearray *>(Stack); +#line 41 "runpath3d.in" + size_t n=checkArrays(pre,point); + checkEqual(n,checkArray(post)); + checkEqual(n,checkArray(straight)); + mem::vector<solvedKnot3> nodes(n); + for(size_t i=0; i < n; ++i) { + nodes[i].pre=read<triple>(pre,i); + nodes[i].point=read<triple>(point,i); + nodes[i].post=read<triple>(post,i); + nodes[i].straight=read<bool>(straight,i); + } + + {Stack->push<path3>(path3(nodes,(Int) n,cyclic)); return;} +} + +#line 56 "runpath3d.in" +void nullPath3(stack *Stack) +{ +#line 57 "runpath3d.in" + {Stack->push<path3>(nullpath3); return;} +} + +#line 61 "runpath3d.in" +// bool ==(path3 a, path3 b); +void gen_runpath3d2(stack *Stack) +{ + path3 b=vm::pop<path3>(Stack); + path3 a=vm::pop<path3>(Stack); +#line 62 "runpath3d.in" + {Stack->push<bool>(a == b); return;} +} + +#line 66 "runpath3d.in" +// bool !=(path3 a, path3 b); +void gen_runpath3d3(stack *Stack) +{ + path3 b=vm::pop<path3>(Stack); + path3 a=vm::pop<path3>(Stack); +#line 67 "runpath3d.in" + {Stack->push<bool>(!(a == b)); return;} +} + +#line 71 "runpath3d.in" +// triple point(path3 p, Int t); +void gen_runpath3d4(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 72 "runpath3d.in" + {Stack->push<triple>(p.point((Int) t)); return;} +} + +#line 76 "runpath3d.in" +// triple point(path3 p, real t); +void gen_runpath3d5(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 77 "runpath3d.in" + {Stack->push<triple>(p.point(t)); return;} +} + +#line 81 "runpath3d.in" +// triple precontrol(path3 p, Int t); +void gen_runpath3d6(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 82 "runpath3d.in" + {Stack->push<triple>(p.precontrol((Int) t)); return;} +} + +#line 86 "runpath3d.in" +// triple precontrol(path3 p, real t); +void gen_runpath3d7(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 87 "runpath3d.in" + {Stack->push<triple>(p.precontrol(t)); return;} +} + +#line 91 "runpath3d.in" +// triple postcontrol(path3 p, Int t); +void gen_runpath3d8(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 92 "runpath3d.in" + {Stack->push<triple>(p.postcontrol((Int) t)); return;} +} + +#line 96 "runpath3d.in" +// triple postcontrol(path3 p, real t); +void gen_runpath3d9(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 97 "runpath3d.in" + {Stack->push<triple>(p.postcontrol(t)); return;} +} + +#line 101 "runpath3d.in" +// triple dir(path3 p, Int t, Int sign=0, bool normalize=true); +void gen_runpath3d10(stack *Stack) +{ + bool normalize=vm::pop<bool>(Stack,true); + Int sign=vm::pop<Int>(Stack,0); + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 102 "runpath3d.in" + {Stack->push<triple>(p.dir(t,sign,normalize)); return;} +} + +#line 106 "runpath3d.in" +// triple dir(path3 p, real t, bool normalize=true); +void gen_runpath3d11(stack *Stack) +{ + bool normalize=vm::pop<bool>(Stack,true); + real t=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 107 "runpath3d.in" + {Stack->push<triple>(p.dir(t,normalize)); return;} +} + +#line 111 "runpath3d.in" +// triple accel(path3 p, Int t, Int sign=0); +void gen_runpath3d12(stack *Stack) +{ + Int sign=vm::pop<Int>(Stack,0); + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 112 "runpath3d.in" + {Stack->push<triple>(p.accel(t,sign)); return;} +} + +#line 116 "runpath3d.in" +// triple accel(path3 p, real t); +void gen_runpath3d13(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 117 "runpath3d.in" + {Stack->push<triple>(p.accel(t)); return;} +} + +#line 121 "runpath3d.in" +// real radius(path3 p, real t); +void gen_runpath3d14(stack *Stack) +{ + real t=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 122 "runpath3d.in" + triple v=p.dir(t,false); + triple a=p.accel(t); + real d=dot(a,v); + real v2=v.abs2(); + real a2=a.abs2(); + real denom=v2*a2-d*d; + real r=v2*sqrt(v2); + {Stack->push<real>(denom > 0 ? r/sqrt(denom) : 0.0); return;} +} + +#line 133 "runpath3d.in" +// real radius(triple z0, triple c0, triple c1, triple z1, real t); +void gen_runpath3d15(stack *Stack) +{ + real t=vm::pop<real>(Stack); + triple z1=vm::pop<triple>(Stack); + triple c1=vm::pop<triple>(Stack); + triple c0=vm::pop<triple>(Stack); + triple z0=vm::pop<triple>(Stack); +#line 134 "runpath3d.in" + triple v=(3.0*(z1-z0)+9.0*(c0-c1))*t*t+(6.0*(z0+c1)-12.0*c0)*t+3.0*(c0-z0); + triple a=6.0*(z1-z0+3.0*(c0-c1))*t+6.0*(z0+c1)-12.0*c0; + real d=dot(a,v); + real v2=v.abs2(); + real a2=a.abs2(); + real denom=v2*a2-d*d; + real r=v2*sqrt(v2); + {Stack->push<real>(denom > 0 ? r/sqrt(denom) : 0.0); return;} +} + +#line 145 "runpath3d.in" +// path3 reverse(path3 p); +void gen_runpath3d16(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 146 "runpath3d.in" + {Stack->push<path3>(p.reverse()); return;} +} + +#line 150 "runpath3d.in" +// path3 subpath(path3 p, Int a, Int b); +void gen_runpath3d17(stack *Stack) +{ + Int b=vm::pop<Int>(Stack); + Int a=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 151 "runpath3d.in" + {Stack->push<path3>(p.subpath((Int) a, (Int) b)); return;} +} + +#line 155 "runpath3d.in" +// path3 subpath(path3 p, real a, real b); +void gen_runpath3d18(stack *Stack) +{ + real b=vm::pop<real>(Stack); + real a=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 156 "runpath3d.in" + {Stack->push<path3>(p.subpath(a,b)); return;} +} + +#line 160 "runpath3d.in" +// Int length(path3 p); +void gen_runpath3d19(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 161 "runpath3d.in" + {Stack->push<Int>(p.length()); return;} +} + +#line 165 "runpath3d.in" +// bool cyclic(path3 p); +void gen_runpath3d20(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 166 "runpath3d.in" + {Stack->push<bool>(p.cyclic()); return;} +} + +#line 170 "runpath3d.in" +// bool straight(path3 p, Int t); +void gen_runpath3d21(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 171 "runpath3d.in" + {Stack->push<bool>(p.straight(t)); return;} +} + +// Return the maximum perpendicular deviation of segment i of path3 g +// from a straight line. +#line 177 "runpath3d.in" +// real straightness(path3 p, Int t); +void gen_runpath3d22(stack *Stack) +{ + Int t=vm::pop<Int>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 178 "runpath3d.in" + if(p.straight(t)) {Stack->push<real>(0); return;} + triple z0=p.point(t); + triple u=unit(p.point(t+1)-z0); + {Stack->push<real>(::max(length(perp(p.postcontrol(t)-z0,u)), + length(perp(p.precontrol(t+1)-z0,u)))); return;} +} + +// Return the maximum perpendicular deviation of z0..controls c0 and c1..z1 +// from a straight line. +#line 188 "runpath3d.in" +// real straightness(triple z0, triple c0, triple c1, triple z1); +void gen_runpath3d23(stack *Stack) +{ + triple z1=vm::pop<triple>(Stack); + triple c1=vm::pop<triple>(Stack); + triple c0=vm::pop<triple>(Stack); + triple z0=vm::pop<triple>(Stack); +#line 189 "runpath3d.in" + triple u=unit(z1-z0); + {Stack->push<real>(::max(length(perp(c0-z0,u)),length(perp(c1-z0,u)))); return;} +} + +#line 194 "runpath3d.in" +// bool piecewisestraight(path3 p); +void gen_runpath3d24(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 195 "runpath3d.in" + {Stack->push<bool>(p.piecewisestraight()); return;} +} + +#line 199 "runpath3d.in" +// real arclength(path3 p); +void gen_runpath3d25(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 200 "runpath3d.in" + {Stack->push<real>(p.arclength()); return;} +} + +#line 204 "runpath3d.in" +// real arctime(path3 p, real dval); +void gen_runpath3d26(stack *Stack) +{ + real dval=vm::pop<real>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 205 "runpath3d.in" + {Stack->push<real>(p.arctime(dval)); return;} +} + +#line 209 "runpath3d.in" +// realarray* intersect(path3 p, path3 q, real fuzz=-1); +void gen_runpath3d27(stack *Stack) +{ + real fuzz=vm::pop<real>(Stack,-1); + path3 q=vm::pop<path3>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 210 "runpath3d.in" + bool exact=fuzz <= 0.0; + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + + std::vector<real> S,T; + real s,t; + if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { + array *V=new array(2); + (*V)[0]=s; + (*V)[1]=t; + {Stack->push<realarray*>(V); return;} + } else + {Stack->push<realarray*>(new array(0)); return;} +} + +#line 227 "runpath3d.in" +// realarray2* intersections(path3 p, path3 q, real fuzz=-1); +void gen_runpath3d28(stack *Stack) +{ + real fuzz=vm::pop<real>(Stack,-1); + path3 q=vm::pop<path3>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 228 "runpath3d.in" + bool exact=fuzz <= 0.0; + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + bool single=!exact; + + real s,t; + std::vector<real> S,T; + bool found=intersections(s,t,S,T,p,q,fuzz,single,exact); + if(!found) {Stack->push<realarray2*>(new array(0)); return;} + array *V; + if(single) { + V=new array(1); + array *Vi=new array(2); + (*V)[0]=Vi; + (*Vi)[0]=s; + (*Vi)[1]=t; + } else { + size_t n=S.size(); + V=new array(n); + for(size_t i=0; i < n; ++i) { + array *Vi=new array(2); + (*V)[i]=Vi; + (*Vi)[0]=S[i]; + (*Vi)[1]=T[i]; + } + } + stable_sort(V->begin(),V->end(),run::compare2<real>()); + {Stack->push<realarray2*>(V); return;} +} + +#line 260 "runpath3d.in" +// realarray2* intersections(path3 p, triplearray2 *P, real fuzz=-1); +void gen_runpath3d29(stack *Stack) +{ + real fuzz=vm::pop<real>(Stack,-1); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 261 "runpath3d.in" + triple *A=copyTripleArray2C(P,true,4); + if(fuzz <= 0) fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + norm(A,16)); + std::vector<real> T,U,V; + intersections(T,U,V,p,A,fuzz); + delete[] A; + size_t n=T.size(); + array *W=new array(n); + for(size_t i=0; i < n; ++i) { + array *Wi=new array(3); + (*W)[i]=Wi; + (*Wi)[0]=T[i]; + (*Wi)[1]=U[i]; + (*Wi)[2]=V[i]; + } + {Stack->push<realarray2*>(W); return;} // Sorting will done in asy. +} + +#line 280 "runpath3d.in" +// Int size(path3 p); +void gen_runpath3d30(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 281 "runpath3d.in" + {Stack->push<Int>(p.size()); return;} +} + +#line 285 "runpath3d.in" +// path3 &(path3 p, path3 q); +void gen_runpath3d31(stack *Stack) +{ + path3 q=vm::pop<path3>(Stack); + path3 p=vm::pop<path3>(Stack); +#line 286 "runpath3d.in" + {Stack->push<path3>(camp::concat(p,q)); return;} +} + +#line 290 "runpath3d.in" +// triple min(path3 p); +void gen_runpath3d32(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 291 "runpath3d.in" + {Stack->push<triple>(p.min()); return;} +} + +#line 295 "runpath3d.in" +// triple max(path3 p); +void gen_runpath3d33(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 296 "runpath3d.in" + {Stack->push<triple>(p.max()); return;} +} + +#line 300 "runpath3d.in" +// realarray* mintimes(path3 p); +void gen_runpath3d34(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 301 "runpath3d.in" + array *V=new array(3); + triple v=p.mintimes(); + (*V)[0]=v.getx(); + (*V)[1]=v.gety(); + (*V)[2]=v.getz(); + {Stack->push<realarray*>(V); return;} +} + +#line 310 "runpath3d.in" +// realarray* maxtimes(path3 p); +void gen_runpath3d35(stack *Stack) +{ + path3 p=vm::pop<path3>(Stack); +#line 311 "runpath3d.in" + array *V=new array(3); + triple v=p.maxtimes(); + (*V)[0]=v.getx(); + (*V)[1]=v.gety(); + (*V)[2]=v.getz(); + {Stack->push<realarray*>(V); return;} +} + +#line 320 "runpath3d.in" +// path3 *(realarray2 *t, path3 g); +void gen_runpath3d36(stack *Stack) +{ + path3 g=vm::pop<path3>(Stack); + realarray2 * t=vm::pop<realarray2 *>(Stack); +#line 321 "runpath3d.in" + {Stack->push<path3>(transformed(*t,g)); return;} +} + +#line 325 "runpath3d.in" +// pair minratio(path3 g); +void gen_runpath3d37(stack *Stack) +{ + path3 g=vm::pop<path3>(Stack); +#line 326 "runpath3d.in" + {Stack->push<pair>(g.ratio(::min)); return;} +} + +#line 330 "runpath3d.in" +// pair maxratio(path3 g); +void gen_runpath3d38(stack *Stack) +{ + path3 g=vm::pop<path3>(Stack); +#line 331 "runpath3d.in" + {Stack->push<pair>(g.ratio(::max)); return;} +} + +} // namespace run + +namespace trans { + +void gen_runpath3d_venv(venv &ve) +{ +#line 39 "runpath3d.in" + addFunc(ve, run::gen_runpath3d0, primPath3(), "path3", formal(tripleArray(), "pre", false, false), formal(tripleArray(), "point", false, false), formal(tripleArray(), "post", false, false), formal(booleanArray(), "straight", false, false), formal(primBoolean(), "cyclic", false, false)); +#line 56 "runpath3d.in" + REGISTER_BLTIN(run::nullPath3,"nullPath3"); +#line 61 "runpath3d.in" + addFunc(ve, run::gen_runpath3d2, primBoolean(), "==", formal(primPath3(), "a", false, false), formal(primPath3(), "b", false, false)); +#line 66 "runpath3d.in" + addFunc(ve, run::gen_runpath3d3, primBoolean(), "!=", formal(primPath3(), "a", false, false), formal(primPath3(), "b", false, false)); +#line 71 "runpath3d.in" + addFunc(ve, run::gen_runpath3d4, primTriple(), "point", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); +#line 76 "runpath3d.in" + addFunc(ve, run::gen_runpath3d5, primTriple(), "point", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); +#line 81 "runpath3d.in" + addFunc(ve, run::gen_runpath3d6, primTriple(), "precontrol", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); +#line 86 "runpath3d.in" + addFunc(ve, run::gen_runpath3d7, primTriple(), "precontrol", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); +#line 91 "runpath3d.in" + addFunc(ve, run::gen_runpath3d8, primTriple(), "postcontrol", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); +#line 96 "runpath3d.in" + addFunc(ve, run::gen_runpath3d9, primTriple(), "postcontrol", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); +#line 101 "runpath3d.in" + addFunc(ve, run::gen_runpath3d10, primTriple(), "dir", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false), formal(primBoolean(), "normalize", true, false)); +#line 106 "runpath3d.in" + addFunc(ve, run::gen_runpath3d11, primTriple(), "dir", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false), formal(primBoolean(), "normalize", true, false)); +#line 111 "runpath3d.in" + addFunc(ve, run::gen_runpath3d12, primTriple(), "accel", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false)); +#line 116 "runpath3d.in" + addFunc(ve, run::gen_runpath3d13, primTriple(), "accel", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); +#line 121 "runpath3d.in" + addFunc(ve, run::gen_runpath3d14, primReal(), "radius", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); +#line 133 "runpath3d.in" + addFunc(ve, run::gen_runpath3d15, primReal(), "radius", formal(primTriple(), "z0", false, false), formal(primTriple(), "c0", false, false), formal(primTriple(), "c1", false, false), formal(primTriple(), "z1", false, false), formal(primReal(), "t", false, false)); +#line 145 "runpath3d.in" + addFunc(ve, run::gen_runpath3d16, primPath3(), "reverse", formal(primPath3(), "p", false, false)); +#line 150 "runpath3d.in" + addFunc(ve, run::gen_runpath3d17, primPath3(), "subpath", formal(primPath3(), "p", false, false), formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); +#line 155 "runpath3d.in" + addFunc(ve, run::gen_runpath3d18, primPath3(), "subpath", formal(primPath3(), "p", false, false), formal(primReal(), "a", false, false), formal(primReal(), "b", false, false)); +#line 160 "runpath3d.in" + addFunc(ve, run::gen_runpath3d19, primInt(), "length", formal(primPath3(), "p", false, false)); +#line 165 "runpath3d.in" + addFunc(ve, run::gen_runpath3d20, primBoolean(), "cyclic", formal(primPath3(), "p", false, false)); +#line 170 "runpath3d.in" + addFunc(ve, run::gen_runpath3d21, primBoolean(), "straight", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); +#line 175 "runpath3d.in" + addFunc(ve, run::gen_runpath3d22, primReal(), "straightness", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); +#line 186 "runpath3d.in" + addFunc(ve, run::gen_runpath3d23, primReal(), "straightness", formal(primTriple(), "z0", false, false), formal(primTriple(), "c0", false, false), formal(primTriple(), "c1", false, false), formal(primTriple(), "z1", false, false)); +#line 194 "runpath3d.in" + addFunc(ve, run::gen_runpath3d24, primBoolean(), "piecewisestraight", formal(primPath3(), "p", false, false)); +#line 199 "runpath3d.in" + addFunc(ve, run::gen_runpath3d25, primReal(), "arclength", formal(primPath3(), "p", false, false)); +#line 204 "runpath3d.in" + addFunc(ve, run::gen_runpath3d26, primReal(), "arctime", formal(primPath3(), "p", false, false), formal(primReal(), "dval", false, false)); +#line 209 "runpath3d.in" + addFunc(ve, run::gen_runpath3d27, realArray(), "intersect", formal(primPath3(), "p", false, false), formal(primPath3(), "q", false, false), formal(primReal(), "fuzz", true, false)); +#line 227 "runpath3d.in" + addFunc(ve, run::gen_runpath3d28, realArray2(), "intersections", formal(primPath3(), "p", false, false), formal(primPath3(), "q", false, false), formal(primReal(), "fuzz", true, false)); +#line 260 "runpath3d.in" + addFunc(ve, run::gen_runpath3d29, realArray2(), "intersections", formal(primPath3(), "p", false, false), formal(tripleArray2(), "p", false, false), formal(primReal(), "fuzz", true, false)); +#line 280 "runpath3d.in" + addFunc(ve, run::gen_runpath3d30, primInt(), "size", formal(primPath3(), "p", false, false)); +#line 285 "runpath3d.in" + addFunc(ve, run::gen_runpath3d31, primPath3(), "&", formal(primPath3(), "p", false, false), formal(primPath3(), "q", false, false)); +#line 290 "runpath3d.in" + addFunc(ve, run::gen_runpath3d32, primTriple(), "min", formal(primPath3(), "p", false, false)); +#line 295 "runpath3d.in" + addFunc(ve, run::gen_runpath3d33, primTriple(), "max", formal(primPath3(), "p", false, false)); +#line 300 "runpath3d.in" + addFunc(ve, run::gen_runpath3d34, realArray(), "mintimes", formal(primPath3(), "p", false, false)); +#line 310 "runpath3d.in" + addFunc(ve, run::gen_runpath3d35, realArray(), "maxtimes", formal(primPath3(), "p", false, false)); +#line 320 "runpath3d.in" + addFunc(ve, run::gen_runpath3d36, primPath3(), "*", formal(realArray2(), "t", false, false), formal(primPath3(), "g", false, false)); +#line 325 "runpath3d.in" + addFunc(ve, run::gen_runpath3d37, primPair(), "minratio", formal(primPath3(), "g", false, false)); +#line 330 "runpath3d.in" + addFunc(ve, run::gen_runpath3d38, primPair(), "maxratio", formal(primPath3(), "g", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runpath3d.h b/Build/source/utils/asymptote/runpath3d.h new file mode 100644 index 00000000000..cdb64804604 --- /dev/null +++ b/Build/source/utils/asymptote/runpath3d.h @@ -0,0 +1,9 @@ +/***** Autogenerated from runpath3d.in; changes will be overwritten *****/ + +#ifndef runpath3d_H +#define runpath3d_H +namespace run { +void nullPath3(vm::stack *); +} + +#endif // runpath3d_H diff --git a/Build/source/utils/asymptote/runpath3d.in b/Build/source/utils/asymptote/runpath3d.in new file mode 100644 index 00000000000..31c3bbb64e3 --- /dev/null +++ b/Build/source/utils/asymptote/runpath3d.in @@ -0,0 +1,333 @@ +/***** + * runpath3.in + * + * Runtime functions for path3 operations. + * + *****/ + +pair => primPair() +triple => primTriple() +path3 => primPath3() +boolarray* => booleanArray() +realarray* => realArray() +realarray2* => realArray2() +triplearray* => tripleArray() +triplearray2* => tripleArray2() + +#include "path3.h" +#include "array.h" +#include "drawsurface.h" + +using namespace camp; +using namespace vm; + +typedef array boolarray; +typedef array realarray; +typedef array realarray2; +typedef array triplearray; +typedef array triplearray2; + +using types::booleanArray; +using types::realArray; +using types::realArray2; +using types::tripleArray; +using types::tripleArray2; + +// Autogenerated routines: + + +path3 path3(triplearray *pre, triplearray *point, triplearray *post, + boolarray *straight, bool cyclic) +{ + size_t n=checkArrays(pre,point); + checkEqual(n,checkArray(post)); + checkEqual(n,checkArray(straight)); + mem::vector<solvedKnot3> nodes(n); + for(size_t i=0; i < n; ++i) { + nodes[i].pre=read<triple>(pre,i); + nodes[i].point=read<triple>(point,i); + nodes[i].post=read<triple>(post,i); + nodes[i].straight=read<bool>(straight,i); + } + + return path3(nodes,(Int) n,cyclic); +} + +path3 :nullPath3() +{ + return nullpath3; +} + +bool ==(path3 a, path3 b) +{ + return a == b; +} + +bool !=(path3 a, path3 b) +{ + return !(a == b); +} + +triple point(path3 p, Int t) +{ + return p.point((Int) t); +} + +triple point(path3 p, real t) +{ + return p.point(t); +} + +triple precontrol(path3 p, Int t) +{ + return p.precontrol((Int) t); +} + +triple precontrol(path3 p, real t) +{ + return p.precontrol(t); +} + +triple postcontrol(path3 p, Int t) +{ + return p.postcontrol((Int) t); +} + +triple postcontrol(path3 p, real t) +{ + return p.postcontrol(t); +} + +triple dir(path3 p, Int t, Int sign=0, bool normalize=true) +{ + return p.dir(t,sign,normalize); +} + +triple dir(path3 p, real t, bool normalize=true) +{ + return p.dir(t,normalize); +} + +triple accel(path3 p, Int t, Int sign=0) +{ + return p.accel(t,sign); +} + +triple accel(path3 p, real t) +{ + return p.accel(t); +} + +real radius(path3 p, real t) +{ + triple v=p.dir(t,false); + triple a=p.accel(t); + real d=dot(a,v); + real v2=v.abs2(); + real a2=a.abs2(); + real denom=v2*a2-d*d; + real r=v2*sqrt(v2); + return denom > 0 ? r/sqrt(denom) : 0.0; +} + +real radius(triple z0, triple c0, triple c1, triple z1, real t) +{ + triple v=(3.0*(z1-z0)+9.0*(c0-c1))*t*t+(6.0*(z0+c1)-12.0*c0)*t+3.0*(c0-z0); + triple a=6.0*(z1-z0+3.0*(c0-c1))*t+6.0*(z0+c1)-12.0*c0; + real d=dot(a,v); + real v2=v.abs2(); + real a2=a.abs2(); + real denom=v2*a2-d*d; + real r=v2*sqrt(v2); + return denom > 0 ? r/sqrt(denom) : 0.0; +} + +path3 reverse(path3 p) +{ + return p.reverse(); +} + +path3 subpath(path3 p, Int a, Int b) +{ + return p.subpath((Int) a, (Int) b); +} + +path3 subpath(path3 p, real a, real b) +{ + return p.subpath(a,b); +} + +Int length(path3 p) +{ + return p.length(); +} + +bool cyclic(path3 p) +{ + return p.cyclic(); +} + +bool straight(path3 p, Int t) +{ + return p.straight(t); +} + +// Return the maximum perpendicular deviation of segment i of path3 g +// from a straight line. +real straightness(path3 p, Int t) +{ + if(p.straight(t)) return 0; + triple z0=p.point(t); + triple u=unit(p.point(t+1)-z0); + return ::max(length(perp(p.postcontrol(t)-z0,u)), + length(perp(p.precontrol(t+1)-z0,u))); +} + +// Return the maximum perpendicular deviation of z0..controls c0 and c1..z1 +// from a straight line. +real straightness(triple z0, triple c0, triple c1, triple z1) +{ + triple u=unit(z1-z0); + return ::max(length(perp(c0-z0,u)),length(perp(c1-z0,u))); +} + +bool piecewisestraight(path3 p) +{ + return p.piecewisestraight(); +} + +real arclength(path3 p) +{ + return p.arclength(); +} + +real arctime(path3 p, real dval) +{ + return p.arctime(dval); +} + +realarray* intersect(path3 p, path3 q, real fuzz=-1) +{ + bool exact=fuzz <= 0.0; + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + + std::vector<real> S,T; + real s,t; + if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { + array *V=new array(2); + (*V)[0]=s; + (*V)[1]=t; + return V; + } else + return new array(0); +} + +realarray2* intersections(path3 p, path3 q, real fuzz=-1) +{ + bool exact=fuzz <= 0.0; + if(fuzz < 0) + fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + ::max(length(q.max()),length(q.min()))); + bool single=!exact; + + real s,t; + std::vector<real> S,T; + bool found=intersections(s,t,S,T,p,q,fuzz,single,exact); + if(!found) return new array(0); + array *V; + if(single) { + V=new array(1); + array *Vi=new array(2); + (*V)[0]=Vi; + (*Vi)[0]=s; + (*Vi)[1]=t; + } else { + size_t n=S.size(); + V=new array(n); + for(size_t i=0; i < n; ++i) { + array *Vi=new array(2); + (*V)[i]=Vi; + (*Vi)[0]=S[i]; + (*Vi)[1]=T[i]; + } + } + stable_sort(V->begin(),V->end(),run::compare2<real>()); + return V; +} + +realarray2* intersections(path3 p, triplearray2 *P, real fuzz=-1) +{ + triple *A=copyTripleArray2C(P,true,4); + if(fuzz <= 0) fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), + norm(A,16)); + std::vector<real> T,U,V; + intersections(T,U,V,p,A,fuzz); + delete[] A; + size_t n=T.size(); + array *W=new array(n); + for(size_t i=0; i < n; ++i) { + array *Wi=new array(3); + (*W)[i]=Wi; + (*Wi)[0]=T[i]; + (*Wi)[1]=U[i]; + (*Wi)[2]=V[i]; + } + return W; // Sorting will done in asy. +} + +Int size(path3 p) +{ + return p.size(); +} + +path3 &(path3 p, path3 q) +{ + return camp::concat(p,q); +} + +triple min(path3 p) +{ + return p.min(); +} + +triple max(path3 p) +{ + return p.max(); +} + +realarray *mintimes(path3 p) +{ + array *V=new array(3); + triple v=p.mintimes(); + (*V)[0]=v.getx(); + (*V)[1]=v.gety(); + (*V)[2]=v.getz(); + return V; +} + +realarray *maxtimes(path3 p) +{ + array *V=new array(3); + triple v=p.maxtimes(); + (*V)[0]=v.getx(); + (*V)[1]=v.gety(); + (*V)[2]=v.getz(); + return V; +} + +path3 Operator *(realarray2 *t, path3 g) +{ + return transformed(*t,g); +} + +pair minratio(path3 g) +{ + return g.ratio(::min); +} + +pair maxratio(path3 g) +{ + return g.ratio(::max); +} diff --git a/Build/source/utils/asymptote/runpicture.cc b/Build/source/utils/asymptote/runpicture.cc new file mode 100644 index 00000000000..af54095d3f9 --- /dev/null +++ b/Build/source/utils/asymptote/runpicture.cc @@ -0,0 +1,1066 @@ +/***** Autogenerated from runpicture.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runpicture.in" +/***** + * runpicture.in + * + * Runtime functions for picture operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 27 "runpicture.in" +#include "picture.h" +#include "drawelement.h" +#include "path.h" +#include "array.h" +#include "arrayop.h" +#include "drawpath.h" +#include "drawfill.h" +#include "drawclipbegin.h" +#include "drawclipend.h" +#include "drawgsave.h" +#include "drawgrestore.h" +#include "drawgroup.h" +#include "drawverbatim.h" +#include "drawlabel.h" +#include "drawlayer.h" +#include "drawimage.h" +#include "drawpath3.h" +#include "drawsurface.h" + +using namespace camp; +using namespace settings; +using namespace vm; + +typedef array Intarray; +typedef array realarray; +typedef array realarray2; +typedef array pairarray; +typedef array pairarray2; +typedef array triplearray; +typedef array triplearray2; +typedef array patharray; +typedef array penarray; +typedef array penarray2; + +typedef callable callableTransform; + +using types::IntArray; +using types::realArray; +using types::realArray2; +using types::pairArray; +using types::pairArray2; +using types::tripleArray; +using types::tripleArray2; +using types::pathArray; +using types::penArray; +using types::penArray2; + +function *transformFunction() +{ + return new function(primTransform()); +} + +// Ignore unclosed begingroups but not spurious endgroups. +const char *nobegin="endgroup without matching begingroup"; + +array *emptyarray=new array(0); + +array *nop(array *a) +{ + return a; +} + +// Autogenerated routines: + + + +namespace run { +#line 92 "runpicture.in" +void newPicture(stack *Stack) +{ +#line 93 "runpicture.in" + {Stack->push<picture*>(new picture()); return;} +} + +#line 97 "runpicture.in" +// bool empty(picture *f); +void gen_runpicture1(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 98 "runpicture.in" + {Stack->push<bool>(f->null()); return;} +} + +#line 102 "runpicture.in" +// void erase(picture *f); +void gen_runpicture2(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 103 "runpicture.in" + f->nodes.clear(); +} + +#line 107 "runpicture.in" +// pair min(picture *f); +void gen_runpicture3(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 108 "runpicture.in" + {Stack->push<pair>(f->bounds().Min()); return;} +} + +#line 112 "runpicture.in" +// pair max(picture *f); +void gen_runpicture4(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 113 "runpicture.in" + {Stack->push<pair>(f->bounds().Max()); return;} +} + +#line 117 "runpicture.in" +// void _draw(picture *f, path g, pen p); +void gen_runpicture5(stack *Stack) +{ + pen p=vm::pop<pen>(Stack); + path g=vm::pop<path>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 118 "runpicture.in" + f->append(new drawPath(g,p)); +} + +#line 122 "runpicture.in" +// void fill(picture *f, patharray *g, pen p=CURRENTPEN, bool copy=true); +void gen_runpicture6(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + pen p=vm::pop<pen>(Stack,CURRENTPEN); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 123 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawFill(*copyarray(g),false,p)); +} + +#line 128 "runpicture.in" +// void latticeshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray2 *p, bool copy=true); +void gen_runpicture7(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + penarray2 * p=vm::pop<penarray2 *>(Stack); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 130 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawLatticeShade(*copyarray(g),stroke,fillrule,*copyarray(p))); +} + +#line 135 "runpicture.in" +// void axialshade(picture *f, patharray *g, bool stroke=false, pen pena, pair a, pen penb, pair b, bool copy=true); +void gen_runpicture8(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + pair b=vm::pop<pair>(Stack); + pen penb=vm::pop<pen>(Stack); + pair a=vm::pop<pair>(Stack); + pen pena=vm::pop<pen>(Stack); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 137 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawAxialShade(*copyarray(g),stroke,pena,a,penb,b)); +} + +#line 142 "runpicture.in" +// void radialshade(picture *f, patharray *g, bool stroke=false, pen pena, pair a, real ra, pen penb, pair b, real rb, bool copy=true); +void gen_runpicture9(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + real rb=vm::pop<real>(Stack); + pair b=vm::pop<pair>(Stack); + pen penb=vm::pop<pen>(Stack); + real ra=vm::pop<real>(Stack); + pair a=vm::pop<pair>(Stack); + pen pena=vm::pop<pen>(Stack); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 144 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawRadialShade(*copyarray(g),stroke,pena,a,ra,penb,b,rb)); +} + +#line 149 "runpicture.in" +// void gouraudshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray *p, pairarray *z, Intarray *edges, bool copy=true); +void gen_runpicture10(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + Intarray * edges=vm::pop<Intarray *>(Stack); + pairarray * z=vm::pop<pairarray *>(Stack); + penarray * p=vm::pop<penarray *>(Stack); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 152 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + checkArrays(p,z); + checkArrays(z,edges); + f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), + *copyarray(z),*copyarray(edges))); +} + +#line 160 "runpicture.in" +// void gouraudshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray *p, Intarray *edges, bool copy=true); +void gen_runpicture11(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + Intarray * edges=vm::pop<Intarray *>(Stack); + penarray * p=vm::pop<penarray *>(Stack); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 163 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + size_t n=checkArrays(p,edges); + size_t m=checkArray(g); + array *z=new array(n); + Int k=0; + Int in=(Int) n; + for(size_t j=0; j < m; ++j) { + path *P=read<path *>(g,j); + assert(P); + Int stop=Min(P->size(),in-k); + mem::vector<solvedKnot>& nodes=P->Nodes(); + for(Int i=0; i < stop; ++i) + (*z)[k++]=nodes[i].point; + } + checkArrays(p,z); + + f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), + *z,*copyarray(edges))); +} + +#line 184 "runpicture.in" +// void tensorshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray2 *p, patharray *b=NULL, pairarray2 *z=emptyarray, bool copy=true); +void gen_runpicture12(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + pairarray2 * z=vm::pop<pairarray2 *>(Stack,emptyarray); + patharray * b=vm::pop<patharray *>(Stack,NULL); + penarray2 * p=vm::pop<penarray2 *>(Stack); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 187 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + array *(*copyarray2)(array *a)=copy ? copyArray2: nop; + if(b == NULL) b=g; + size_t n=checkArrays(p,b); + size_t nz=checkArray(z); + if(nz != 0) + checkEqual(nz,n); + f->append(new drawTensorShade(*copyarray(g),stroke,fillrule,*copyarray2(p), + *copyarray(b),*copyarray2(z))); +} + +#line 199 "runpicture.in" +// void functionshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, string shader=emptystring, bool copy=true); +void gen_runpicture13(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + string shader=vm::pop<string>(Stack,emptystring); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 202 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawFunctionShade(*copyarray(g),stroke,fillrule,shader)); +} + +// Clip a picture to a superpath using the given fill rule. +// Subsequent additions to the picture will not be affected by the clipping. +#line 209 "runpicture.in" +// void clip(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, bool copy=true); +void gen_runpicture14(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 211 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + drawClipBegin *begin=new drawClipBegin(*copyarray(g),stroke,fillrule,true); + f->enclose(begin,new drawClipEnd(true,begin)); +} + +#line 217 "runpicture.in" +// void beginclip(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, bool copy=true); +void gen_runpicture15(stack *Stack) +{ + bool copy=vm::pop<bool>(Stack,true); + pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); + bool stroke=vm::pop<bool>(Stack,false); + patharray * g=vm::pop<patharray *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 219 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawClipBegin(*copyarray(g),stroke,fillrule,false)); +} + +#line 224 "runpicture.in" +// void endclip(picture *f); +void gen_runpicture16(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 225 "runpicture.in" + f->append(new drawClipEnd(false)); +} + +#line 229 "runpicture.in" +// void gsave(picture *f); +void gen_runpicture17(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 230 "runpicture.in" + f->append(new drawGsave()); +} + +#line 234 "runpicture.in" +// void grestore(picture *f); +void gen_runpicture18(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 235 "runpicture.in" + f->append(new drawGrestore()); +} + +#line 239 "runpicture.in" +// void begingroup(picture *f, string name=emptystring); +void gen_runpicture19(stack *Stack) +{ + string name=vm::pop<string>(Stack,emptystring); + picture * f=vm::pop<picture *>(Stack); +#line 240 "runpicture.in" + f->append(new drawBegin(name)); +} + +#line 244 "runpicture.in" +// void endgroup(picture *f); +void gen_runpicture20(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 245 "runpicture.in" + f->append(new drawEnd()); +} + +#line 249 "runpicture.in" +// void add(picture *dest, picture *src); +void gen_runpicture21(stack *Stack) +{ + picture * src=vm::pop<picture *>(Stack); + picture * dest=vm::pop<picture *>(Stack); +#line 250 "runpicture.in" + dest->add(*src); +} + +#line 254 "runpicture.in" +// void prepend(picture *dest, picture *src); +void gen_runpicture22(stack *Stack) +{ + picture * src=vm::pop<picture *>(Stack); + picture * dest=vm::pop<picture *>(Stack); +#line 255 "runpicture.in" + dest->prepend(*src); +} + +#line 259 "runpicture.in" +// void postscript(picture *f, string s); +void gen_runpicture23(stack *Stack) +{ + string s=vm::pop<string>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 260 "runpicture.in" + f->append(new drawVerbatim(PostScript,s)); +} + +#line 264 "runpicture.in" +// void tex(picture *f, string s); +void gen_runpicture24(stack *Stack) +{ + string s=vm::pop<string>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 265 "runpicture.in" + f->append(new drawVerbatim(TeX,s)); +} + +#line 269 "runpicture.in" +// void postscript(picture *f, string s, pair min, pair max); +void gen_runpicture25(stack *Stack) +{ + pair max=vm::pop<pair>(Stack); + pair min=vm::pop<pair>(Stack); + string s=vm::pop<string>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 270 "runpicture.in" + f->append(new drawVerbatim(PostScript,s,min,max)); +} + +#line 274 "runpicture.in" +// void tex(picture *f, string s, pair min, pair max); +void gen_runpicture26(stack *Stack) +{ + pair max=vm::pop<pair>(Stack); + pair min=vm::pop<pair>(Stack); + string s=vm::pop<string>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 275 "runpicture.in" + f->append(new drawVerbatim(TeX,s,min,max)); +} + +#line 279 "runpicture.in" +// void texpreamble(string s); +void gen_runpicture27(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 280 "runpicture.in" + string t=s+"\n"; + processDataStruct &pd=processData(); + pd.TeXpipepreamble.push_back(t); + pd.TeXpreamble.push_back(t); +} + +#line 287 "runpicture.in" +// void deletepreamble(); +void gen_runpicture28(stack *) +{ +#line 288 "runpicture.in" + if(getSetting<bool>("inlinetex")) { + unlink(auxname(outname(),"pre").c_str()); + } +} + +#line 294 "runpicture.in" +// void _labelpath(picture *f, string s, string size, path g, string justify, pair offset, pen p); +void gen_runpicture29(stack *Stack) +{ + pen p=vm::pop<pen>(Stack); + pair offset=vm::pop<pair>(Stack); + string justify=vm::pop<string>(Stack); + path g=vm::pop<path>(Stack); + string size=vm::pop<string>(Stack); + string s=vm::pop<string>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 296 "runpicture.in" + f->append(new drawLabelPath(s,size,g,justify,offset,p)); +} + +#line 300 "runpicture.in" +// void texreset(); +void gen_runpicture30(stack *) +{ +#line 301 "runpicture.in" + processDataStruct &pd=processData(); + pd.TeXpipepreamble.clear(); + pd.TeXpreamble.clear(); + pd.tex.pipeclose(); +} + +#line 308 "runpicture.in" +// void layer(picture *f); +void gen_runpicture31(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 309 "runpicture.in" + f->append(new drawLayer()); +} + +#line 313 "runpicture.in" +// void newpage(picture *f); +void gen_runpicture32(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 314 "runpicture.in" + f->append(new drawNewPage()); +} + +#line 318 "runpicture.in" +// void _image(picture *f, realarray2 *data, pair initial, pair final, penarray *palette=NULL, transform t=identity, bool copy=true, bool antialias=false); +void gen_runpicture33(stack *Stack) +{ + bool antialias=vm::pop<bool>(Stack,false); + bool copy=vm::pop<bool>(Stack,true); + transform t=vm::pop<transform>(Stack,identity); + penarray * palette=vm::pop<penarray *>(Stack,NULL); + pair final=vm::pop<pair>(Stack); + pair initial=vm::pop<pair>(Stack); + realarray2 * data=vm::pop<realarray2 *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 321 "runpicture.in" + array *(*copyarray)(array *a)=copy ? copyArray: nop; + array *(*copyarray2)(array *a)=copy ? copyArray2: nop; + f->append(new drawImage(*copyarray2(data),*copyarray(palette), + t*matrix(initial,final),antialias)); +} + +#line 328 "runpicture.in" +// void _image(picture *f, penarray2 *data, pair initial, pair final, transform t=identity, bool copy=true, bool antialias=false); +void gen_runpicture34(stack *Stack) +{ + bool antialias=vm::pop<bool>(Stack,false); + bool copy=vm::pop<bool>(Stack,true); + transform t=vm::pop<transform>(Stack,identity); + pair final=vm::pop<pair>(Stack); + pair initial=vm::pop<pair>(Stack); + penarray2 * data=vm::pop<penarray2 *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 330 "runpicture.in" + array *(*copyarray2)(array *a)=copy ? copyArray2: nop; + f->append(new drawImage(*copyarray2(data),t*matrix(initial,final),antialias)); +} + +#line 335 "runpicture.in" +// string nativeformat(); +void gen_runpicture35(stack *Stack) +{ +#line 336 "runpicture.in" + {Stack->push<string>(nativeformat()); return;} +} + +#line 340 "runpicture.in" +// bool latex(); +void gen_runpicture36(stack *Stack) +{ +#line 341 "runpicture.in" + {Stack->push<bool>(latex(getSetting<string>("tex"))); return;} +} + +#line 345 "runpicture.in" +// bool pdf(); +void gen_runpicture37(stack *Stack) +{ +#line 346 "runpicture.in" + {Stack->push<bool>(pdf(getSetting<string>("tex"))); return;} +} + +#line 350 "runpicture.in" +// void shipout(string prefix=emptystring, picture *f, picture *preamble=NULL, string format=emptystring, bool wait=false, bool view=true, callableTransform *xform); +void gen_runpicture38(stack *Stack) +{ + callableTransform * xform=vm::pop<callableTransform *>(Stack); + bool view=vm::pop<bool>(Stack,true); + bool wait=vm::pop<bool>(Stack,false); + string format=vm::pop<string>(Stack,emptystring); + picture * preamble=vm::pop<picture *>(Stack,NULL); + picture * f=vm::pop<picture *>(Stack); + string prefix=vm::pop<string>(Stack,emptystring); +#line 353 "runpicture.in" + if(prefix.empty()) prefix=outname(); + + picture *result=new picture; + unsigned level=0; + picture::nodelist::iterator p; + for(p = f->nodes.begin(); p != f->nodes.end(); ++p) { + xform->call(Stack); + transform t=pop<transform>(Stack); + static transform Zero=transform(0.0,0.0,0.0,0.0,0.0,0.0); + bool Delete=(t == Zero); + picture *group=new picture; + assert(*p); + if((*p)->endgroup()) error(nobegin); + if((*p)->begingroup()) { + ++level; + while(p != f->nodes.end() && level) { + if(!Delete) { + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + } + ++p; + if(p == f->nodes.end()) break; + assert(*p); + if((*p)->begingroup()) ++level; + if((*p)->endgroup()) { + if(level) --level; + else error(nobegin); + } + } + } + if(p == f->nodes.end()) break; + assert(*p); + if(!Delete) { + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + result->add(*group); + } + } + + result->shipout(preamble,prefix,format,0.0,wait,view); +} + +#line 396 "runpicture.in" +// void shipout3(string prefix, picture *f, string format=emptystring, real width, real height, real angle, real zoom, triple m, triple M, pair shift, realarray2 *t, realarray *background, triplearray *lights, realarray2 *diffuse, realarray2 *ambient, realarray2 *specular, bool viewportlighting, bool view=true); +void gen_runpicture39(stack *Stack) +{ + bool view=vm::pop<bool>(Stack,true); + bool viewportlighting=vm::pop<bool>(Stack); + realarray2 * specular=vm::pop<realarray2 *>(Stack); + realarray2 * ambient=vm::pop<realarray2 *>(Stack); + realarray2 * diffuse=vm::pop<realarray2 *>(Stack); + triplearray * lights=vm::pop<triplearray *>(Stack); + realarray * background=vm::pop<realarray *>(Stack); + realarray2 * t=vm::pop<realarray2 *>(Stack); + pair shift=vm::pop<pair>(Stack); + triple M=vm::pop<triple>(Stack); + triple m=vm::pop<triple>(Stack); + real zoom=vm::pop<real>(Stack); + real angle=vm::pop<real>(Stack); + real height=vm::pop<real>(Stack); + real width=vm::pop<real>(Stack); + string format=vm::pop<string>(Stack,emptystring); + picture * f=vm::pop<picture *>(Stack); + string prefix=vm::pop<string>(Stack); +#line 402 "runpicture.in" + size_t n=checkArrays(lights,diffuse); + checkEqual(n,checkArray(ambient)); + checkEqual(n,checkArray(specular)); + + real *T=copyArray2C(t,true,4); + triple *Lights=copyTripleArrayC(lights); + real* Background=copyArrayC(background); + real *Diffuse=copyArray2C(diffuse,false,4); + real *Ambient=copyArray2C(ambient,false,4); + real *Specular=copyArray2C(specular,false,4); + + f->shipout3(prefix,format,width,height,angle,zoom,m,M,shift,T,Background,n, + Lights,Diffuse,Ambient,Specular,viewportlighting,view); + + delete[] Specular; + delete[] Ambient; + delete[] Diffuse; + delete[] Background; + delete[] Lights; + delete[] T; +} + +#line 425 "runpicture.in" +// void shipout3(string prefix, picture *f); +void gen_runpicture40(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); + string prefix=vm::pop<string>(Stack); +#line 426 "runpicture.in" + f->shipout3(prefix); +} + +#line 430 "runpicture.in" +// void deconstruct(picture *f, picture *preamble=NULL, real magnification=1, callableTransform *xform); +void gen_runpicture41(stack *Stack) +{ + callableTransform * xform=vm::pop<callableTransform *>(Stack); + real magnification=vm::pop<real>(Stack,1); + picture * preamble=vm::pop<picture *>(Stack,NULL); + picture * f=vm::pop<picture *>(Stack); +#line 432 "runpicture.in" + unsigned level=0; + unsigned n=0; + + string prefix=outname(); + const string xformat="png"; + + static long arg_max=sysconf(_SC_ARG_MAX); + const unsigned maxargs=::min(arg_max/(prefix.size()+xformat.size()+25ul), + 256ul); + + cout << maxargs << newl; + + string preformat=nativeformat(); + const string Done="Done"; + const string Error="Error"; + + mem::vector<string> cmd; + + // Enforce ghostscript limitations. + magnification=::max(magnification,0.0001); + real res=::min(::max(magnification*72.0,2.0),8192.0); + + const char *converter=NULL, *hint=NULL; + + if(magnification > 0.0) { + mem::list<string> nameStack; + string outname; + unsigned arg=0; + unsigned batch=0; + for(picture::nodelist::iterator p=f->nodes.begin();;) { + if(p == f->nodes.end()) break; + if(arg == 0) { + cmd.clear(); + ostringstream buf; + buf << batch << "_"; + outname=buildname(prefix+buf.str()+"%d",xformat,""); + converter="gs"; + hint="Ghostscript"; + cmd.push_back(getSetting<string>(converter)); + cmd.push_back("-q"); + cmd.push_back("-dNOPAUSE"); + cmd.push_back("-dBATCH"); + cmd.push_back("-sDEVICE=pngalpha"); + cmd.push_back("-dEPSCrop"); + if(safe) + cmd.push_back("-dSAFER"); + cmd.push_back("-r"+String(res)+"x"+String(res)); + cmd.push_back("-sOutputFile="+outname); + } + + picture *group=new picture; + xform->call(Stack); + transform t=pop<transform>(Stack); + assert(*p); + if((*p)->endgroup()) { + cout << Error << endl; + error(nobegin); + } + if((*p)->begingroup()) { + ++level; + while(p != f->nodes.end() && level) { + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + ++p; + if(p == f->nodes.end()) break; + assert(*p); + if((*p)->begingroup()) ++level; + if((*p)->endgroup()) { + if(level) --level; + else { + cout << Error << endl; + error(nobegin); + } + } + } + } + if(p != f->nodes.end()) { + assert(*p); + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + bbox b; + ostringstream buf; + buf << prefix << "_" << n; + group->shipout(preamble,buf.str(),preformat,magnification,false,false); + string Preformat=group->Transparency() ? "pdf" : preformat; + string name=buildname(buf.str(),Preformat); + nameStack.push_back(name); + cmd.push_back(name); + b=group->bounds(); + b *= magnification; + + cout << b << newl; + ++n; + ++p; + ++arg; + } + + if(p == f->nodes.end() || arg >= maxargs) { + arg=0; + ++batch; + cout.flush(); + + int status=System(cmd,0,true,converter,hint); + if(status) { + cout << Error << endl; + error("deconstruct failed"); + } + } + } + + if(!getSetting<bool>("keep")) { + for(mem::list<string>::iterator p=nameStack.begin(); + p != nameStack.end(); ++p) + unlink(p->c_str()); + } + + cout << Done << endl; + } +} + + +// Three-dimensional picture and surface operations + +// Bezier curve +#line 557 "runpicture.in" +// void _draw(picture *f, path3 g, pen p, string name=emptystring); +void gen_runpicture42(stack *Stack) +{ + string name=vm::pop<string>(Stack,emptystring); + pen p=vm::pop<pen>(Stack); + path3 g=vm::pop<path3>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 558 "runpicture.in" + if(g.size() > 0) + f->append(new drawPath3(g,p,name)); +} + +// Bezier patch +#line 564 "runpicture.in" +// void draw(picture *f, triplearray2 *P, bool straight, penarray *p, real opacity, real shininess, real PRCshininess, real granularity, triple normal, penarray *colors, bool lighton, string name=emptystring); +void gen_runpicture43(stack *Stack) +{ + string name=vm::pop<string>(Stack,emptystring); + bool lighton=vm::pop<bool>(Stack); + penarray * colors=vm::pop<penarray *>(Stack); + triple normal=vm::pop<triple>(Stack); + real granularity=vm::pop<real>(Stack); + real PRCshininess=vm::pop<real>(Stack); + real shininess=vm::pop<real>(Stack); + real opacity=vm::pop<real>(Stack); + penarray * p=vm::pop<penarray *>(Stack); + bool straight=vm::pop<bool>(Stack); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 567 "runpicture.in" + f->append(new drawSurface(*P,straight,*p,opacity,shininess,PRCshininess, + granularity,normal,*colors,lighton,name)); +} + +// General NURBS surface +#line 573 "runpicture.in" +// void draw(picture *f, triplearray2 *P, realarray *uknot, realarray *vknot, realarray2 *weights=emptyarray, penarray *p, real opacity, real shininess, real PRCshininess, real granularity, penarray *colors, bool lighton, string name=emptystring); +void gen_runpicture44(stack *Stack) +{ + string name=vm::pop<string>(Stack,emptystring); + bool lighton=vm::pop<bool>(Stack); + penarray * colors=vm::pop<penarray *>(Stack); + real granularity=vm::pop<real>(Stack); + real PRCshininess=vm::pop<real>(Stack); + real shininess=vm::pop<real>(Stack); + real opacity=vm::pop<real>(Stack); + penarray * p=vm::pop<penarray *>(Stack); + realarray2 * weights=vm::pop<realarray2 *>(Stack,emptyarray); + realarray * vknot=vm::pop<realarray *>(Stack); + realarray * uknot=vm::pop<realarray *>(Stack); + triplearray2 * P=vm::pop<triplearray2 *>(Stack); + picture * f=vm::pop<picture *>(Stack); +#line 577 "runpicture.in" + f->append(new drawNurbs(*P,uknot,vknot,weights,*p,opacity,shininess, + PRCshininess,granularity,*colors,lighton,name)); +} + +#line 582 "runpicture.in" +// triple min3(picture *f); +void gen_runpicture45(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 583 "runpicture.in" + {Stack->push<triple>(f->bounds3().Min()); return;} +} + +#line 587 "runpicture.in" +// triple max3(picture *f); +void gen_runpicture46(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 588 "runpicture.in" + {Stack->push<triple>(f->bounds3().Max()); return;} +} + +#line 592 "runpicture.in" +// pair minratio(picture *f); +void gen_runpicture47(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 593 "runpicture.in" + {Stack->push<pair>(f->ratio(::min)); return;} +} + +#line 597 "runpicture.in" +// pair maxratio(picture *f); +void gen_runpicture48(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 598 "runpicture.in" + {Stack->push<pair>(f->ratio(::max)); return;} +} + +#line 602 "runpicture.in" +// bool is3D(picture *f); +void gen_runpicture49(stack *Stack) +{ + picture * f=vm::pop<picture *>(Stack); +#line 603 "runpicture.in" + {Stack->push<bool>(f->have3D()); return;} +} + +} // namespace run + +namespace trans { + +void gen_runpicture_venv(venv &ve) +{ +#line 92 "runpicture.in" + REGISTER_BLTIN(run::newPicture,"newPicture"); +#line 97 "runpicture.in" + addFunc(ve, run::gen_runpicture1, primBoolean(), "empty", formal(primPicture(), "f", false, false)); +#line 102 "runpicture.in" + addFunc(ve, run::gen_runpicture2, primVoid(), "erase", formal(primPicture(), "f", false, false)); +#line 107 "runpicture.in" + addFunc(ve, run::gen_runpicture3, primPair(), "min", formal(primPicture(), "f", false, false)); +#line 112 "runpicture.in" + addFunc(ve, run::gen_runpicture4, primPair(), "max", formal(primPicture(), "f", false, false)); +#line 117 "runpicture.in" + addFunc(ve, run::gen_runpicture5, primVoid(), "_draw", formal(primPicture(), "f", false, false), formal(primPath(), "g", false, false), formal(primPen(), "p", false, false)); +#line 122 "runpicture.in" + addFunc(ve, run::gen_runpicture6, primVoid(), "fill", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primPen(), "p", true, false), formal(primBoolean(), "copy", true, false)); +#line 128 "runpicture.in" + addFunc(ve, run::gen_runpicture7, primVoid(), "latticeshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray2() , "p", false, false), formal(primBoolean(), "copy", true, false)); +#line 135 "runpicture.in" + addFunc(ve, run::gen_runpicture8, primVoid(), "axialshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "pena", false, false), formal(primPair(), "a", false, false), formal(primPen(), "penb", false, false), formal(primPair(), "b", false, false), formal(primBoolean(), "copy", true, false)); +#line 142 "runpicture.in" + addFunc(ve, run::gen_runpicture9, primVoid(), "radialshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "pena", false, false), formal(primPair(), "a", false, false), formal(primReal(), "ra", false, false), formal(primPen(), "penb", false, false), formal(primPair(), "b", false, false), formal(primReal(), "rb", false, false), formal(primBoolean(), "copy", true, false)); +#line 149 "runpicture.in" + addFunc(ve, run::gen_runpicture10, primVoid(), "gouraudshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray() , "p", false, false), formal(pairArray(), "z", false, false), formal(IntArray(), "edges", false, false), formal(primBoolean(), "copy", true, false)); +#line 160 "runpicture.in" + addFunc(ve, run::gen_runpicture11, primVoid(), "gouraudshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray() , "p", false, false), formal(IntArray(), "edges", false, false), formal(primBoolean(), "copy", true, false)); +#line 184 "runpicture.in" + addFunc(ve, run::gen_runpicture12, primVoid(), "tensorshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray2() , "p", false, false), formal(pathArray() , "b", true, false), formal(pairArray2(), "z", true, false), formal(primBoolean(), "copy", true, false)); +#line 199 "runpicture.in" + addFunc(ve, run::gen_runpicture13, primVoid(), "functionshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(primString() , "shader", true, false), formal(primBoolean(), "copy", true, false)); +#line 207 "runpicture.in" + addFunc(ve, run::gen_runpicture14, primVoid(), "clip", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(primBoolean(), "copy", true, false)); +#line 217 "runpicture.in" + addFunc(ve, run::gen_runpicture15, primVoid(), "beginclip", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(primBoolean(), "copy", true, false)); +#line 224 "runpicture.in" + addFunc(ve, run::gen_runpicture16, primVoid(), "endclip", formal(primPicture(), "f", false, false)); +#line 229 "runpicture.in" + addFunc(ve, run::gen_runpicture17, primVoid(), "gsave", formal(primPicture(), "f", false, false)); +#line 234 "runpicture.in" + addFunc(ve, run::gen_runpicture18, primVoid(), "grestore", formal(primPicture(), "f", false, false)); +#line 239 "runpicture.in" + addFunc(ve, run::gen_runpicture19, primVoid(), "begingroup", formal(primPicture(), "f", false, false), formal(primString() , "name", true, false)); +#line 244 "runpicture.in" + addFunc(ve, run::gen_runpicture20, primVoid(), "endgroup", formal(primPicture(), "f", false, false)); +#line 249 "runpicture.in" + addFunc(ve, run::gen_runpicture21, primVoid(), "add", formal(primPicture(), "dest", false, false), formal(primPicture(), "src", false, false)); +#line 254 "runpicture.in" + addFunc(ve, run::gen_runpicture22, primVoid(), "prepend", formal(primPicture(), "dest", false, false), formal(primPicture(), "src", false, false)); +#line 259 "runpicture.in" + addFunc(ve, run::gen_runpicture23, primVoid(), "postscript", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false)); +#line 264 "runpicture.in" + addFunc(ve, run::gen_runpicture24, primVoid(), "tex", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false)); +#line 269 "runpicture.in" + addFunc(ve, run::gen_runpicture25, primVoid(), "postscript", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false), formal(primPair(), "min", false, false), formal(primPair(), "max", false, false)); +#line 274 "runpicture.in" + addFunc(ve, run::gen_runpicture26, primVoid(), "tex", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false), formal(primPair(), "min", false, false), formal(primPair(), "max", false, false)); +#line 279 "runpicture.in" + addFunc(ve, run::gen_runpicture27, primVoid(), "texpreamble", formal(primString() , "s", false, false)); +#line 287 "runpicture.in" + addFunc(ve, run::gen_runpicture28, primVoid(), "deletepreamble"); +#line 294 "runpicture.in" + addFunc(ve, run::gen_runpicture29, primVoid(), "_labelpath", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false), formal(primString() , "size", false, false), formal(primPath(), "g", false, false), formal(primString() , "justify", false, false), formal(primPair(), "offset", false, false), formal(primPen(), "p", false, false)); +#line 300 "runpicture.in" + addFunc(ve, run::gen_runpicture30, primVoid(), "texreset"); +#line 308 "runpicture.in" + addFunc(ve, run::gen_runpicture31, primVoid(), "layer", formal(primPicture(), "f", false, false)); +#line 313 "runpicture.in" + addFunc(ve, run::gen_runpicture32, primVoid(), "newpage", formal(primPicture(), "f", false, false)); +#line 318 "runpicture.in" + addFunc(ve, run::gen_runpicture33, primVoid(), "_image", formal(primPicture(), "f", false, false), formal(realArray2(), "data", false, false), formal(primPair(), "initial", false, false), formal(primPair(), "final", false, false), formal(penArray() , "palette", true, false), formal(primTransform(), "t", true, false), formal(primBoolean(), "copy", true, false), formal(primBoolean(), "antialias", true, false)); +#line 328 "runpicture.in" + addFunc(ve, run::gen_runpicture34, primVoid(), "_image", formal(primPicture(), "f", false, false), formal(penArray2() , "data", false, false), formal(primPair(), "initial", false, false), formal(primPair(), "final", false, false), formal(primTransform(), "t", true, false), formal(primBoolean(), "copy", true, false), formal(primBoolean(), "antialias", true, false)); +#line 335 "runpicture.in" + addFunc(ve, run::gen_runpicture35, primString() , "nativeformat"); +#line 340 "runpicture.in" + addFunc(ve, run::gen_runpicture36, primBoolean(), "latex"); +#line 345 "runpicture.in" + addFunc(ve, run::gen_runpicture37, primBoolean(), "pdf"); +#line 350 "runpicture.in" + addFunc(ve, run::gen_runpicture38, primVoid(), "shipout", formal(primString() , "prefix", true, false), formal(primPicture(), "f", false, false), formal(primPicture(), "preamble", true, false), formal(primString() , "format", true, false), formal(primBoolean(), "wait", true, false), formal(primBoolean(), "view", true, false), formal(transformFunction(), "xform", false, false)); +#line 396 "runpicture.in" + addFunc(ve, run::gen_runpicture39, primVoid(), "shipout3", formal(primString() , "prefix", false, false), formal(primPicture(), "f", false, false), formal(primString() , "format", true, false), formal(primReal(), "width", false, false), formal(primReal(), "height", false, false), formal(primReal(), "angle", false, false), formal(primReal(), "zoom", false, false), formal(primTriple(), "m", false, false), formal(primTriple(), "m", false, false), formal(primPair(), "shift", false, false), formal(realArray2(), "t", false, false), formal(realArray(), "background", false, false), formal(tripleArray(), "lights", false, false), formal(realArray2(), "diffuse", false, false), formal(realArray2(), "ambient", false, false), formal(realArray2(), "specular", false, false), formal(primBoolean(), "viewportlighting", false, false), formal(primBoolean(), "view", true, false)); +#line 425 "runpicture.in" + addFunc(ve, run::gen_runpicture40, primVoid(), "shipout3", formal(primString() , "prefix", false, false), formal(primPicture(), "f", false, false)); +#line 430 "runpicture.in" + addFunc(ve, run::gen_runpicture41, primVoid(), "deconstruct", formal(primPicture(), "f", false, false), formal(primPicture(), "preamble", true, false), formal(primReal(), "magnification", true, false), formal(transformFunction(), "xform", false, false)); +#line 553 "runpicture.in" + addFunc(ve, run::gen_runpicture42, primVoid(), "_draw", formal(primPicture(), "f", false, false), formal(primPath3(), "g", false, false), formal(primPen(), "p", false, false), formal(primString() , "name", true, false)); +#line 563 "runpicture.in" + addFunc(ve, run::gen_runpicture43, primVoid(), "draw", formal(primPicture(), "f", false, false), formal(tripleArray2(), "p", false, false), formal(primBoolean(), "straight", false, false), formal(penArray() , "p", false, false), formal(primReal(), "opacity", false, false), formal(primReal(), "shininess", false, false), formal(primReal(), "prcshininess", false, false), formal(primReal(), "granularity", false, false), formal(primTriple(), "normal", false, false), formal(penArray() , "colors", false, false), formal(primBoolean(), "lighton", false, false), formal(primString() , "name", true, false)); +#line 572 "runpicture.in" + addFunc(ve, run::gen_runpicture44, primVoid(), "draw", formal(primPicture(), "f", false, false), formal(tripleArray2(), "p", false, false), formal(realArray(), "uknot", false, false), formal(realArray(), "vknot", false, false), formal(realArray2(), "weights", true, false), formal(penArray() , "p", false, false), formal(primReal(), "opacity", false, false), formal(primReal(), "shininess", false, false), formal(primReal(), "prcshininess", false, false), formal(primReal(), "granularity", false, false), formal(penArray() , "colors", false, false), formal(primBoolean(), "lighton", false, false), formal(primString() , "name", true, false)); +#line 582 "runpicture.in" + addFunc(ve, run::gen_runpicture45, primTriple(), "min3", formal(primPicture(), "f", false, false)); +#line 587 "runpicture.in" + addFunc(ve, run::gen_runpicture46, primTriple(), "max3", formal(primPicture(), "f", false, false)); +#line 592 "runpicture.in" + addFunc(ve, run::gen_runpicture47, primPair(), "minratio", formal(primPicture(), "f", false, false)); +#line 597 "runpicture.in" + addFunc(ve, run::gen_runpicture48, primPair(), "maxratio", formal(primPicture(), "f", false, false)); +#line 602 "runpicture.in" + addFunc(ve, run::gen_runpicture49, primBoolean(), "is3D", formal(primPicture(), "f", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runpicture.h b/Build/source/utils/asymptote/runpicture.h new file mode 100644 index 00000000000..db7db842482 --- /dev/null +++ b/Build/source/utils/asymptote/runpicture.h @@ -0,0 +1,9 @@ +/***** Autogenerated from runpicture.in; changes will be overwritten *****/ + +#ifndef runpicture_H +#define runpicture_H +namespace run { +void newPicture(vm::stack *); +} + +#endif // runpicture_H diff --git a/Build/source/utils/asymptote/runpicture.in b/Build/source/utils/asymptote/runpicture.in new file mode 100644 index 00000000000..20686c1b6b7 --- /dev/null +++ b/Build/source/utils/asymptote/runpicture.in @@ -0,0 +1,605 @@ +/***** + * runpicture.in + * + * Runtime functions for picture operations. + * + *****/ + +pen => primPen() +pair => primPair() +triple => primTriple() +path => primPath() +path3 => primPath3() +picture* => primPicture() +Intarray* => IntArray() +realarray* => realArray() +realarray2* => realArray2() +patharray* => pathArray() +penarray* => penArray() +penarray2* => penArray2() +pairarray* => pairArray() +pairarray2* => pairArray2() +triplearray* => tripleArray() +triplearray2* => tripleArray2() +transform => primTransform() +callableTransform* => transformFunction() + +#include "picture.h" +#include "drawelement.h" +#include "path.h" +#include "array.h" +#include "arrayop.h" +#include "drawpath.h" +#include "drawfill.h" +#include "drawclipbegin.h" +#include "drawclipend.h" +#include "drawgsave.h" +#include "drawgrestore.h" +#include "drawgroup.h" +#include "drawverbatim.h" +#include "drawlabel.h" +#include "drawlayer.h" +#include "drawimage.h" +#include "drawpath3.h" +#include "drawsurface.h" + +using namespace camp; +using namespace settings; +using namespace vm; + +typedef array Intarray; +typedef array realarray; +typedef array realarray2; +typedef array pairarray; +typedef array pairarray2; +typedef array triplearray; +typedef array triplearray2; +typedef array patharray; +typedef array penarray; +typedef array penarray2; + +typedef callable callableTransform; + +using types::IntArray; +using types::realArray; +using types::realArray2; +using types::pairArray; +using types::pairArray2; +using types::tripleArray; +using types::tripleArray2; +using types::pathArray; +using types::penArray; +using types::penArray2; + +function *transformFunction() +{ + return new function(primTransform()); +} + +// Ignore unclosed begingroups but not spurious endgroups. +const char *nobegin="endgroup without matching begingroup"; + +array *emptyarray=new array(0); + +array *nop(array *a) +{ + return a; +} + +// Autogenerated routines: + + +picture* :newPicture() +{ + return new picture(); +} + +bool empty(picture *f) +{ + return f->null(); +} + +void erase(picture *f) +{ + f->nodes.clear(); +} + +pair min(picture *f) +{ + return f->bounds().Min(); +} + +pair max(picture *f) +{ + return f->bounds().Max(); +} + +void _draw(picture *f, path g, pen p) +{ + f->append(new drawPath(g,p)); +} + +void fill(picture *f, patharray *g, pen p=CURRENTPEN, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawFill(*copyarray(g),false,p)); +} + +void latticeshade(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, penarray2 *p, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawLatticeShade(*copyarray(g),stroke,fillrule,*copyarray(p))); +} + +void axialshade(picture *f, patharray *g, bool stroke=false, pen pena, pair a, + pen penb, pair b, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawAxialShade(*copyarray(g),stroke,pena,a,penb,b)); +} + +void radialshade(picture *f, patharray *g, bool stroke=false, pen pena, + pair a, real ra, pen penb, pair b, real rb, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawRadialShade(*copyarray(g),stroke,pena,a,ra,penb,b,rb)); +} + +void gouraudshade(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, penarray *p, pairarray *z, + Intarray *edges, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + checkArrays(p,z); + checkArrays(z,edges); + f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), + *copyarray(z),*copyarray(edges))); +} + +void gouraudshade(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, penarray *p, Intarray *edges, + bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + size_t n=checkArrays(p,edges); + size_t m=checkArray(g); + array *z=new array(n); + Int k=0; + Int in=(Int) n; + for(size_t j=0; j < m; ++j) { + path *P=read<path *>(g,j); + assert(P); + Int stop=Min(P->size(),in-k); + mem::vector<solvedKnot>& nodes=P->Nodes(); + for(Int i=0; i < stop; ++i) + (*z)[k++]=nodes[i].point; + } + checkArrays(p,z); + + f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), + *z,*copyarray(edges))); +} + +void tensorshade(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, penarray2 *p, patharray *b=NULL, + pairarray2 *z=emptyarray, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + array *(*copyarray2)(array *a)=copy ? copyArray2: nop; + if(b == NULL) b=g; + size_t n=checkArrays(p,b); + size_t nz=checkArray(z); + if(nz != 0) + checkEqual(nz,n); + f->append(new drawTensorShade(*copyarray(g),stroke,fillrule,*copyarray2(p), + *copyarray(b),*copyarray2(z))); +} + +void functionshade(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, string shader=emptystring, + bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawFunctionShade(*copyarray(g),stroke,fillrule,shader)); +} + +// Clip a picture to a superpath using the given fill rule. +// Subsequent additions to the picture will not be affected by the clipping. +void clip(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + drawClipBegin *begin=new drawClipBegin(*copyarray(g),stroke,fillrule,true); + f->enclose(begin,new drawClipEnd(true,begin)); +} + +void beginclip(picture *f, patharray *g, bool stroke=false, + pen fillrule=CURRENTPEN, bool copy=true) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + f->append(new drawClipBegin(*copyarray(g),stroke,fillrule,false)); +} + +void endclip(picture *f) +{ + f->append(new drawClipEnd(false)); +} + +void gsave(picture *f) +{ + f->append(new drawGsave()); +} + +void grestore(picture *f) +{ + f->append(new drawGrestore()); +} + +void begingroup(picture *f, string name=emptystring) +{ + f->append(new drawBegin(name)); +} + +void endgroup(picture *f) +{ + f->append(new drawEnd()); +} + +void add(picture *dest, picture *src) +{ + dest->add(*src); +} + +void prepend(picture *dest, picture *src) +{ + dest->prepend(*src); +} + +void postscript(picture *f, string s) +{ + f->append(new drawVerbatim(PostScript,s)); +} + +void tex(picture *f, string s) +{ + f->append(new drawVerbatim(TeX,s)); +} + +void postscript(picture *f, string s, pair min, pair max) +{ + f->append(new drawVerbatim(PostScript,s,min,max)); +} + +void tex(picture *f, string s, pair min, pair max) +{ + f->append(new drawVerbatim(TeX,s,min,max)); +} + +void texpreamble(string s) +{ + string t=s+"\n"; + processDataStruct &pd=processData(); + pd.TeXpipepreamble.push_back(t); + pd.TeXpreamble.push_back(t); +} + +void deletepreamble() +{ + if(getSetting<bool>("inlinetex")) { + unlink(auxname(outname(),"pre").c_str()); + } +} + +void _labelpath(picture *f, string s, string size, path g, string justify, + pair offset, pen p) +{ + f->append(new drawLabelPath(s,size,g,justify,offset,p)); +} + +void texreset() +{ + processDataStruct &pd=processData(); + pd.TeXpipepreamble.clear(); + pd.TeXpreamble.clear(); + pd.tex.pipeclose(); +} + +void layer(picture *f) +{ + f->append(new drawLayer()); +} + +void newpage(picture *f) +{ + f->append(new drawNewPage()); +} + +void _image(picture *f, realarray2 *data, pair initial, pair final, + penarray *palette=NULL, transform t=identity, bool copy=true, + bool antialias=false) +{ + array *(*copyarray)(array *a)=copy ? copyArray: nop; + array *(*copyarray2)(array *a)=copy ? copyArray2: nop; + f->append(new drawImage(*copyarray2(data),*copyarray(palette), + t*matrix(initial,final),antialias)); +} + +void _image(picture *f, penarray2 *data, pair initial, pair final, + transform t=identity, bool copy=true, bool antialias=false) +{ + array *(*copyarray2)(array *a)=copy ? copyArray2: nop; + f->append(new drawImage(*copyarray2(data),t*matrix(initial,final),antialias)); +} + +string nativeformat() +{ + return nativeformat(); +} + +bool latex() +{ + return latex(getSetting<string>("tex")); +} + +bool pdf() +{ + return pdf(getSetting<string>("tex")); +} + +void shipout(string prefix=emptystring, picture *f, picture *preamble=NULL, + string format=emptystring, bool wait=false, bool view=true, + callableTransform *xform) +{ + if(prefix.empty()) prefix=outname(); + + picture *result=new picture; + unsigned level=0; + picture::nodelist::iterator p; + for(p = f->nodes.begin(); p != f->nodes.end(); ++p) { + xform->call(Stack); + transform t=pop<transform>(Stack); + static transform Zero=transform(0.0,0.0,0.0,0.0,0.0,0.0); + bool Delete=(t == Zero); + picture *group=new picture; + assert(*p); + if((*p)->endgroup()) error(nobegin); + if((*p)->begingroup()) { + ++level; + while(p != f->nodes.end() && level) { + if(!Delete) { + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + } + ++p; + if(p == f->nodes.end()) break; + assert(*p); + if((*p)->begingroup()) ++level; + if((*p)->endgroup()) { + if(level) --level; + else error(nobegin); + } + } + } + if(p == f->nodes.end()) break; + assert(*p); + if(!Delete) { + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + result->add(*group); + } + } + + result->shipout(preamble,prefix,format,0.0,wait,view); +} + +void shipout3(string prefix, picture *f, string format=emptystring, + real width, real height, real angle, real zoom, + triple m, triple M, pair shift, realarray2 *t, + realarray *background, triplearray *lights, realarray2 *diffuse, + realarray2 *ambient, realarray2 *specular, + bool viewportlighting, bool view=true) +{ + size_t n=checkArrays(lights,diffuse); + checkEqual(n,checkArray(ambient)); + checkEqual(n,checkArray(specular)); + + real *T=copyArray2C(t,true,4); + triple *Lights=copyTripleArrayC(lights); + real* Background=copyArrayC(background); + real *Diffuse=copyArray2C(diffuse,false,4); + real *Ambient=copyArray2C(ambient,false,4); + real *Specular=copyArray2C(specular,false,4); + + f->shipout3(prefix,format,width,height,angle,zoom,m,M,shift,T,Background,n, + Lights,Diffuse,Ambient,Specular,viewportlighting,view); + + delete[] Specular; + delete[] Ambient; + delete[] Diffuse; + delete[] Background; + delete[] Lights; + delete[] T; +} + +void shipout3(string prefix, picture *f) +{ + f->shipout3(prefix); +} + +void deconstruct(picture *f, picture *preamble=NULL, real magnification=1, + callableTransform *xform) +{ + unsigned level=0; + unsigned n=0; + + string prefix=outname(); + const string xformat="png"; + + static long arg_max=sysconf(_SC_ARG_MAX); + const unsigned maxargs=::min(arg_max/(prefix.size()+xformat.size()+25ul), + 256ul); + + cout << maxargs << newl; + + string preformat=nativeformat(); + const string Done="Done"; + const string Error="Error"; + + mem::vector<string> cmd; + + // Enforce ghostscript limitations. + magnification=::max(magnification,0.0001); + real res=::min(::max(magnification*72.0,2.0),8192.0); + + const char *converter=NULL, *hint=NULL; + + if(magnification > 0.0) { + mem::list<string> nameStack; + string outname; + unsigned arg=0; + unsigned batch=0; + for(picture::nodelist::iterator p=f->nodes.begin();;) { + if(p == f->nodes.end()) break; + if(arg == 0) { + cmd.clear(); + ostringstream buf; + buf << batch << "_"; + outname=buildname(prefix+buf.str()+"%d",xformat,""); + converter="gs"; + hint="Ghostscript"; + cmd.push_back(getSetting<string>(converter)); + cmd.push_back("-q"); + cmd.push_back("-dNOPAUSE"); + cmd.push_back("-dBATCH"); + cmd.push_back("-sDEVICE=pngalpha"); + cmd.push_back("-dEPSCrop"); + if(safe) + cmd.push_back("-dSAFER"); + cmd.push_back("-r"+String(res)+"x"+String(res)); + cmd.push_back("-sOutputFile="+outname); + } + + picture *group=new picture; + xform->call(Stack); + transform t=pop<transform>(Stack); + assert(*p); + if((*p)->endgroup()) { + cout << Error << endl; + error(nobegin); + } + if((*p)->begingroup()) { + ++level; + while(p != f->nodes.end() && level) { + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + ++p; + if(p == f->nodes.end()) break; + assert(*p); + if((*p)->begingroup()) ++level; + if((*p)->endgroup()) { + if(level) --level; + else { + cout << Error << endl; + error(nobegin); + } + } + } + } + if(p != f->nodes.end()) { + assert(*p); + drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); + group->append(e); + bbox b; + ostringstream buf; + buf << prefix << "_" << n; + group->shipout(preamble,buf.str(),preformat,magnification,false,false); + string Preformat=group->Transparency() ? "pdf" : preformat; + string name=buildname(buf.str(),Preformat); + nameStack.push_back(name); + cmd.push_back(name); + b=group->bounds(); + b *= magnification; + + cout << b << newl; + ++n; + ++p; + ++arg; + } + + if(p == f->nodes.end() || arg >= maxargs) { + arg=0; + ++batch; + cout.flush(); + + int status=System(cmd,0,true,converter,hint); + if(status) { + cout << Error << endl; + error("deconstruct failed"); + } + } + } + + if(!getSetting<bool>("keep")) { + for(mem::list<string>::iterator p=nameStack.begin(); + p != nameStack.end(); ++p) + unlink(p->c_str()); + } + + cout << Done << endl; + } +} + + +// Three-dimensional picture and surface operations + +// Bezier curve +void _draw(picture *f, path3 g, pen p, string name=emptystring) +{ + if(g.size() > 0) + f->append(new drawPath3(g,p,name)); +} + +// Bezier patch +void draw(picture *f, triplearray2 *P, bool straight, penarray *p, real opacity, + real shininess, real PRCshininess, real granularity, triple normal, + penarray *colors, bool lighton, string name=emptystring) +{ + f->append(new drawSurface(*P,straight,*p,opacity,shininess,PRCshininess, + granularity,normal,*colors,lighton,name)); +} + +// General NURBS surface +void draw(picture *f, triplearray2 *P, realarray *uknot, realarray *vknot, + realarray2 *weights=emptyarray, penarray *p, + real opacity, real shininess, real PRCshininess, real granularity, + penarray *colors, bool lighton, string name=emptystring) +{ + f->append(new drawNurbs(*P,uknot,vknot,weights,*p,opacity,shininess, + PRCshininess,granularity,*colors,lighton,name)); +} + +triple min3(picture *f) +{ + return f->bounds3().Min(); +} + +triple max3(picture *f) +{ + return f->bounds3().Max(); +} + +pair minratio(picture *f) +{ + return f->ratio(::min); +} + +pair maxratio(picture *f) +{ + return f->ratio(::max); +} + +bool is3D(picture *f) +{ + return f->have3D(); +} diff --git a/Build/source/utils/asymptote/runstring.cc b/Build/source/utils/asymptote/runstring.cc new file mode 100644 index 00000000000..af900a9be49 --- /dev/null +++ b/Build/source/utils/asymptote/runstring.cc @@ -0,0 +1,602 @@ +/***** Autogenerated from runstring.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runstring.in" +/***** + * runstring.in + * + * Runtime functions for string operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 10 "runstring.in" +#include <cfloat> +#include <string.h> +#include <algorithm> + +#include "array.h" + +using namespace camp; +using namespace vm; +using namespace settings; + +typedef array stringarray; +typedef array stringarray2; + +using types::stringArray; +using types::stringArray2; + +namespace types { +extern const char *names[]; +} + +namespace run { +extern string emptystring; +} + +static const string defaulttimeformat=string("%a %b %d %T %Z %Y"); +#ifdef HAVE_STRFTIME +static const size_t nTime=256; +static char Time[nTime]; +#endif + +void checkformat(const char *ptr, bool intformat) +{ + while(*ptr != '\0') { + if(*ptr != '%') /* While we have regular characters, print them. */ + ptr++; + else { /* We've got a format specifier. */ + ptr++; + + while(*ptr && strchr ("-+ #0'I", *ptr)) /* Move past flags. */ + *ptr++; + + if(*ptr == '*') + ptr++; + else while(isdigit(*ptr)) /* Handle explicit numeric value. */ + ptr++; + + if(*ptr == '.') { + *ptr++; /* Go past the period. */ + if(*ptr == '*') { + ptr++; + } else + while(isdigit(*ptr)) /* Handle explicit numeric value. */ + *ptr++; + } + while(*ptr && strchr ("hlL", *ptr)) + *ptr++; + + if(*ptr == '%') ++ptr; + else if(*ptr != '\0') { + if(intformat) { + switch(*ptr) { + case 'd': + case 'i': + case 'o': + case 'u': + case 'x': + case 'X': + case 'c': + break; + default: + ostringstream buf; + buf << "Invalid format '" << *ptr << "' for type " + << types::names[types::ty_Int]; + error(buf); + break; + } + } else { + switch(*ptr) { + case 'f': + case 'F': + case 'e': + case 'E': + case 'g': + case 'G': + break; + default: + ostringstream buf; + buf << "Invalid format '" << *ptr << "' for type " + << types::names[types::ty_real]; + error(buf); + break; + } + } + } + } /* End of else statement */ + } +} + +// Autogenerated routines: + + + +namespace run { +// String operations +#line 112 "runstring.in" +void emptyString(stack *Stack) +{ +#line 113 "runstring.in" + {Stack->push<string>(emptystring); return;} +} + +#line 118 "runstring.in" +// Int length(string *s); +void gen_runstring1(stack *Stack) +{ + string * s=vm::pop<string *>(Stack); +#line 119 "runstring.in" + {Stack->push<Int>((Int) s->length()); return;} +} + +#line 123 "runstring.in" +// Int find(string *s, string t, Int pos=0); +void gen_runstring2(stack *Stack) +{ + Int pos=vm::pop<Int>(Stack,0); + string t=vm::pop<string>(Stack); + string * s=vm::pop<string *>(Stack); +#line 124 "runstring.in" + size_t n=s->find(t,pos); + {Stack->push<Int>(n == string::npos ? (Int) -1 : (Int) n); return;} +} + +#line 129 "runstring.in" +// Int rfind(string *s, string t, Int pos=-1); +void gen_runstring3(stack *Stack) +{ + Int pos=vm::pop<Int>(Stack,-1); + string t=vm::pop<string>(Stack); + string * s=vm::pop<string *>(Stack); +#line 130 "runstring.in" + size_t n=s->rfind(t,pos); + {Stack->push<Int>(n == string::npos ? (Int) -1 : (Int) n); return;} +} + +#line 135 "runstring.in" +// string reverse(string s); +void gen_runstring4(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 136 "runstring.in" + reverse(s.begin(),s.end()); + {Stack->push<string>(s); return;} +} + +#line 141 "runstring.in" +// string insert(string s, Int pos, string t); +void gen_runstring5(stack *Stack) +{ + string t=vm::pop<string>(Stack); + Int pos=vm::pop<Int>(Stack); + string s=vm::pop<string>(Stack); +#line 142 "runstring.in" + if ((size_t) pos < s.length()) + {Stack->push<string>(s.insert(pos,t)); return;} + {Stack->push<string>(s); return;} +} + +#line 148 "runstring.in" +// string substr(string* s, Int pos, Int n=-1); +void gen_runstring6(stack *Stack) +{ + Int n=vm::pop<Int>(Stack,-1); + Int pos=vm::pop<Int>(Stack); + string* s=vm::pop<string*>(Stack); +#line 149 "runstring.in" + if ((size_t) pos < s->length()) + {Stack->push<string>(s->substr(pos,n)); return;} + {Stack->push<string>(emptystring); return;} +} + +#line 155 "runstring.in" +// string erase(string s, Int pos, Int n); +void gen_runstring7(stack *Stack) +{ + Int n=vm::pop<Int>(Stack); + Int pos=vm::pop<Int>(Stack); + string s=vm::pop<string>(Stack); +#line 156 "runstring.in" + if ((size_t) pos < s.length()) + {Stack->push<string>(s.erase(pos,n)); return;} + {Stack->push<string>(s); return;} +} + +#line 162 "runstring.in" +// string downcase(string s); +void gen_runstring8(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 163 "runstring.in" + std::transform(s.begin(),s.end(),s.begin(),tolower); + {Stack->push<string>(s); return;} +} + +#line 168 "runstring.in" +// string upcase(string s); +void gen_runstring9(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 169 "runstring.in" + std::transform(s.begin(),s.end(),s.begin(),toupper); + {Stack->push<string>(s); return;} +} + +// returns a string constructed by translating all occurrences of the string +// from in an array of string pairs {from,to} to the string to in string s. +#line 176 "runstring.in" +// string replace(string *S, stringarray2 *translate); +void gen_runstring10(stack *Stack) +{ + stringarray2 * translate=vm::pop<stringarray2 *>(Stack); + string * S=vm::pop<string *>(Stack); +#line 177 "runstring.in" + size_t size=checkArray(translate); + for(size_t i=0; i < size; i++) { + array *a=read<array*>(translate,i); + checkArray(a); + } + const char *p=S->c_str(); + ostringstream buf; + while(*p) { + for(size_t i=0; i < size;) { + array *a=read<array*>(translate,i); + string* from=read<string*>(a,0); + size_t len=from->length(); + if(strncmp(p,from->c_str(),len) != 0) {i++; continue;} + buf << read<string>(a,1); + p += len; + if(*p == 0) {Stack->push<string>(buf.str()); return;} + i=0; + } + buf << *(p++); + } + {Stack->push<string>(buf.str()); return;} +} + +#line 201 "runstring.in" +// string format(string *format, Int x); +void gen_runstring11(stack *Stack) +{ + Int x=vm::pop<Int>(Stack); + string * format=vm::pop<string *>(Stack); +#line 202 "runstring.in" + const char *f=format->c_str(); + + checkformat(f,true); + + Int size=snprintf(NULL,0,f,x)+1; + if(size < 1) size=255; // Workaround for non-C99 compliant systems. + char *buf=new char[size]; + snprintf(buf,size,f,x); + string s=string(buf); + delete[] buf; + {Stack->push<string>(s); return;} +} + +#line 216 "runstring.in" +// string format(string *format, real x, string locale=emptystring); +void gen_runstring12(stack *Stack) +{ + string locale=vm::pop<string>(Stack,emptystring); + real x=vm::pop<real>(Stack); + string * format=vm::pop<string *>(Stack); +#line 217 "runstring.in" + bool tex=getSetting<string>("tex") != "none"; + bool texify=false; + ostringstream out; + + checkformat(format->c_str(),false); + + const char *phantom="\\phantom{+}"; + const char *p0=format->c_str(); + + const char *p=p0; + const char *start=NULL; + char prev=0; + while(*p != 0) { + char curr=*p; + if(tex && curr == '$' && prev != '\\') texify=true; + prev=curr; + if(curr == '%') { + p++; + if(*p != '%') {start=p-1; break;} + } + out << *(p++); + } + + if(!start) {Stack->push<string>(out.str()); return;} + + // Allow at most 1 argument + while(*p != 0) { + if(*p == '*' || *p == '$') {Stack->push<string>(out.str()); return;} + if(isupper(*p) || islower(*p)) {p++; break;} + p++; + } + + const char *tail=p; + string f=format->substr(start-p0,tail-start); + + const char *oldlocale=NULL; + if(!locale.empty()) { + oldlocale=setlocale(LC_ALL,NULL); + if(oldlocale) oldlocale=StrdupNoGC(oldlocale); + setlocale(LC_ALL,locale.c_str()); + } + + Int size=snprintf(NULL,0,f.c_str(),x)+1; + if(size < 1) size=255; // Workaround for non-C99 compliant systems. + char *buf=new char[size]; + snprintf(buf,size,f.c_str(),x); + + if(oldlocale) { + setlocale(LC_ALL,oldlocale); + delete[] oldlocale; + } + + bool trailingzero=f.find("#") < string::npos; + bool plus=f.find("+") < string::npos; + bool space=f.find(" ") < string::npos; + + char *q=buf; // beginning of formatted number + + if(*q == ' ') { + out << phantom; + q++; + } + + const char decimal=*(localeconv()->decimal_point); + + // Remove any spurious sign + if(*q == '-' || *q == '+') { + p=q+1; + bool zero=true; + while(*p != 0) { + if(!isdigit(*p) && *p != decimal) break; + if(isdigit(*p) && *p != '0') {zero=false; break;} + p++; + } + if(zero) { + q++; + if(plus || space) out << phantom; + } + } + + const char *r=p=q; + bool dp=false; + while(*r != 0 && (isdigit(*r) || *r == decimal || *r == '+' || *r == '-')) { + if(*r == decimal) dp=true; + r++; + } + if(dp) { // Remove trailing zeros and/or decimal point + r--; + unsigned n=0; + while(r > q && *r == '0') {r--; n++;} + if(*r == decimal) {r--; n++;} + while(q <= r) out << *(q++); + if(!trailingzero) q += n; + } + + bool zero=(r == p && *r == '0') && !trailingzero; + + // Translate "E+/E-/e+/e-" exponential notation to TeX + while(*q != 0) { + if(texify && (*q == 'E' || *q == 'e') && + (*(q+1) == '+' || *(q+1) == '-')) { + if(!zero) out << "\\!\\times\\!10^{"; + bool plus=(*(q+1) == '+'); + q++; + if(plus) q++; + if(*q == '-') out << *(q++); + while(*q == '0' && (zero || isdigit(*(q+1)))) q++; + while(isdigit(*q)) out << *(q++); + if(!zero) + out << "}"; + break; + } + out << *(q++); + } + + while(*tail != 0) + out << *(tail++); + + delete[] buf; + + {Stack->push<string>(out.str()); return;} +} + +#line 341 "runstring.in" +// Int hex(string s); +void gen_runstring13(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 342 "runstring.in" + istringstream is(s); + is.setf(std::ios::hex,std::ios::basefield); + Int value; + if(is && is >> value && ((is >> std::ws).eof())) {Stack->push<Int>(value); return;} + ostringstream buf; + buf << "invalid hexidecimal cast from string \"" << s << "\""; + error(buf); +} + +#line 352 "runstring.in" +// string string(Int x); +void gen_runstring14(stack *Stack) +{ + Int x=vm::pop<Int>(Stack); +#line 353 "runstring.in" + ostringstream buf; + buf << x; + {Stack->push<string>(buf.str()); return;} +} + +#line 359 "runstring.in" +// string string(real x, Int digits=DBL_DIG); +void gen_runstring15(stack *Stack) +{ + Int digits=vm::pop<Int>(Stack,DBL_DIG); + real x=vm::pop<real>(Stack); +#line 360 "runstring.in" + ostringstream buf; + buf.precision(digits); + buf << x; + {Stack->push<string>(buf.str()); return;} +} + +#line 367 "runstring.in" +// string time(string format=defaulttimeformat); +void gen_runstring16(stack *Stack) +{ + string format=vm::pop<string>(Stack,defaulttimeformat); +#line 368 "runstring.in" +#ifdef HAVE_STRFTIME + const time_t bintime=time(NULL); + if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) {Stack->push<string>(""); return;} + {Stack->push<string>(Time); return;} +#else + {Stack->push<string>(format); return;} +#endif +} + +#line 378 "runstring.in" +// string time(Int seconds, string format=defaulttimeformat); +void gen_runstring17(stack *Stack) +{ + string format=vm::pop<string>(Stack,defaulttimeformat); + Int seconds=vm::pop<Int>(Stack); +#line 379 "runstring.in" +#ifdef HAVE_STRFTIME + const time_t bintime=seconds; + if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) {Stack->push<string>(""); return;} + {Stack->push<string>(Time); return;} +#else +// Avoid unused variable warning messages + unused(&seconds); + {Stack->push<string>(format); return;} +#endif +} + +#line 391 "runstring.in" +// Int seconds(string t=emptystring, string format=emptystring); +void gen_runstring18(stack *Stack) +{ + string format=vm::pop<string>(Stack,emptystring); + string t=vm::pop<string>(Stack,emptystring); +#line 392 "runstring.in" +#if defined(HAVE_STRPTIME) + const time_t bintime=time(NULL); + tm tm=*localtime(&bintime); + if(t != "" && !strptime(t.c_str(),format.c_str(),&tm)) {Stack->push<Int>(-1); return;} + {Stack->push<Int>((Int) mktime(&tm)); return;} +#else + {Stack->push<Int>(-1); return;} +#endif +} + +} // namespace run + +namespace trans { + +void gen_runstring_venv(venv &ve) +{ +#line 111 "runstring.in" + REGISTER_BLTIN(run::emptyString,"emptyString"); +#line 118 "runstring.in" + addFunc(ve, run::gen_runstring1, primInt(), "length", formal(primString(), "s", false, false)); +#line 123 "runstring.in" + addFunc(ve, run::gen_runstring2, primInt(), "find", formal(primString(), "s", false, false), formal(primString() , "t", false, false), formal(primInt(), "pos", true, false)); +#line 129 "runstring.in" + addFunc(ve, run::gen_runstring3, primInt(), "rfind", formal(primString(), "s", false, false), formal(primString() , "t", false, false), formal(primInt(), "pos", true, false)); +#line 135 "runstring.in" + addFunc(ve, run::gen_runstring4, primString() , "reverse", formal(primString() , "s", false, false)); +#line 141 "runstring.in" + addFunc(ve, run::gen_runstring5, primString() , "insert", formal(primString() , "s", false, false), formal(primInt(), "pos", false, false), formal(primString() , "t", false, false)); +#line 148 "runstring.in" + addFunc(ve, run::gen_runstring6, primString() , "substr", formal(primString(), "s", false, false), formal(primInt(), "pos", false, false), formal(primInt(), "n", true, false)); +#line 155 "runstring.in" + addFunc(ve, run::gen_runstring7, primString() , "erase", formal(primString() , "s", false, false), formal(primInt(), "pos", false, false), formal(primInt(), "n", false, false)); +#line 162 "runstring.in" + addFunc(ve, run::gen_runstring8, primString() , "downcase", formal(primString() , "s", false, false)); +#line 168 "runstring.in" + addFunc(ve, run::gen_runstring9, primString() , "upcase", formal(primString() , "s", false, false)); +#line 174 "runstring.in" + addFunc(ve, run::gen_runstring10, primString() , "replace", formal(primString(), "s", false, false), formal(stringArray2(), "translate", false, false)); +#line 201 "runstring.in" + addFunc(ve, run::gen_runstring11, primString() , "format", formal(primString(), "format", false, false), formal(primInt(), "x", false, false)); +#line 216 "runstring.in" + addFunc(ve, run::gen_runstring12, primString() , "format", formal(primString(), "format", false, false), formal(primReal(), "x", false, false), formal(primString() , "locale", true, false)); +#line 341 "runstring.in" + addFunc(ve, run::gen_runstring13, primInt(), "hex", formal(primString() , "s", false, false)); +#line 352 "runstring.in" + addFunc(ve, run::gen_runstring14, primString() , "string", formal(primInt(), "x", false, false)); +#line 359 "runstring.in" + addFunc(ve, run::gen_runstring15, primString() , "string", formal(primReal(), "x", false, false), formal(primInt(), "digits", true, false)); +#line 367 "runstring.in" + addFunc(ve, run::gen_runstring16, primString() , "time", formal(primString() , "format", true, false)); +#line 378 "runstring.in" + addFunc(ve, run::gen_runstring17, primString() , "time", formal(primInt(), "seconds", false, false), formal(primString() , "format", true, false)); +#line 391 "runstring.in" + addFunc(ve, run::gen_runstring18, primInt(), "seconds", formal(primString() , "t", true, false), formal(primString() , "format", true, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runstring.h b/Build/source/utils/asymptote/runstring.h new file mode 100644 index 00000000000..0092cf5d57a --- /dev/null +++ b/Build/source/utils/asymptote/runstring.h @@ -0,0 +1,9 @@ +/***** Autogenerated from runstring.in; changes will be overwritten *****/ + +#ifndef runstring_H +#define runstring_H +namespace run { +void emptyString(vm::stack *); +} + +#endif // runstring_H diff --git a/Build/source/utils/asymptote/runstring.in b/Build/source/utils/asymptote/runstring.in new file mode 100644 index 00000000000..2d2c375a605 --- /dev/null +++ b/Build/source/utils/asymptote/runstring.in @@ -0,0 +1,401 @@ +/***** + * runstring.in + * + * Runtime functions for string operations. + * + *****/ + +stringarray2* => stringArray2() + +#include <cfloat> +#include <string.h> +#include <algorithm> + +#include "array.h" + +using namespace camp; +using namespace vm; +using namespace settings; + +typedef array stringarray; +typedef array stringarray2; + +using types::stringArray; +using types::stringArray2; + +namespace types { +extern const char *names[]; +} + +namespace run { +extern string emptystring; +} + +static const string defaulttimeformat=string("%a %b %d %T %Z %Y"); +#ifdef HAVE_STRFTIME +static const size_t nTime=256; +static char Time[nTime]; +#endif + +void checkformat(const char *ptr, bool intformat) +{ + while(*ptr != '\0') { + if(*ptr != '%') /* While we have regular characters, print them. */ + ptr++; + else { /* We've got a format specifier. */ + ptr++; + + while(*ptr && strchr ("-+ #0'I", *ptr)) /* Move past flags. */ + *ptr++; + + if(*ptr == '*') + ptr++; + else while(isdigit(*ptr)) /* Handle explicit numeric value. */ + ptr++; + + if(*ptr == '.') { + *ptr++; /* Go past the period. */ + if(*ptr == '*') { + ptr++; + } else + while(isdigit(*ptr)) /* Handle explicit numeric value. */ + *ptr++; + } + while(*ptr && strchr ("hlL", *ptr)) + *ptr++; + + if(*ptr == '%') ++ptr; + else if(*ptr != '\0') { + if(intformat) { + switch(*ptr) { + case 'd': + case 'i': + case 'o': + case 'u': + case 'x': + case 'X': + case 'c': + break; + default: + ostringstream buf; + buf << "Invalid format '" << *ptr << "' for type " + << types::names[types::ty_Int]; + error(buf); + break; + } + } else { + switch(*ptr) { + case 'f': + case 'F': + case 'e': + case 'E': + case 'g': + case 'G': + break; + default: + ostringstream buf; + buf << "Invalid format '" << *ptr << "' for type " + << types::names[types::ty_real]; + error(buf); + break; + } + } + } + } /* End of else statement */ + } +} + +// Autogenerated routines: + + +// String operations + +string :emptyString() +{ + return emptystring; +} + +Int length(string *s) +{ + return (Int) s->length(); +} + +Int find(string *s, string t, Int pos=0) +{ + size_t n=s->find(t,pos); + return n == string::npos ? (Int) -1 : (Int) n; +} + +Int rfind(string *s, string t, Int pos=-1) +{ + size_t n=s->rfind(t,pos); + return n == string::npos ? (Int) -1 : (Int) n; +} + +string reverse(string s) +{ + reverse(s.begin(),s.end()); + return s; +} + +string insert(string s, Int pos, string t) +{ + if ((size_t) pos < s.length()) + return s.insert(pos,t); + return s; +} + +string substr(string* s, Int pos, Int n=-1) +{ + if ((size_t) pos < s->length()) + return s->substr(pos,n); + return emptystring; +} + +string erase(string s, Int pos, Int n) +{ + if ((size_t) pos < s.length()) + return s.erase(pos,n); + return s; +} + +string downcase(string s) +{ + std::transform(s.begin(),s.end(),s.begin(),tolower); + return s; +} + +string upcase(string s) +{ + std::transform(s.begin(),s.end(),s.begin(),toupper); + return s; +} + +// returns a string constructed by translating all occurrences of the string +// from in an array of string pairs {from,to} to the string to in string s. +string replace(string *S, stringarray2 *translate) +{ + size_t size=checkArray(translate); + for(size_t i=0; i < size; i++) { + array *a=read<array*>(translate,i); + checkArray(a); + } + const char *p=S->c_str(); + ostringstream buf; + while(*p) { + for(size_t i=0; i < size;) { + array *a=read<array*>(translate,i); + string* from=read<string*>(a,0); + size_t len=from->length(); + if(strncmp(p,from->c_str(),len) != 0) {i++; continue;} + buf << read<string>(a,1); + p += len; + if(*p == 0) return buf.str(); + i=0; + } + buf << *(p++); + } + return buf.str(); +} + +string format(string *format, Int x) +{ + const char *f=format->c_str(); + + checkformat(f,true); + + Int size=snprintf(NULL,0,f,x)+1; + if(size < 1) size=255; // Workaround for non-C99 compliant systems. + char *buf=new char[size]; + snprintf(buf,size,f,x); + string s=string(buf); + delete[] buf; + return s; +} + +string format(string *format, real x, string locale=emptystring) +{ + bool tex=getSetting<string>("tex") != "none"; + bool texify=false; + ostringstream out; + + checkformat(format->c_str(),false); + + const char *phantom="\\phantom{+}"; + const char *p0=format->c_str(); + + const char *p=p0; + const char *start=NULL; + char prev=0; + while(*p != 0) { + char curr=*p; + if(tex && curr == '$' && prev != '\\') texify=true; + prev=curr; + if(curr == '%') { + p++; + if(*p != '%') {start=p-1; break;} + } + out << *(p++); + } + + if(!start) return out.str(); + + // Allow at most 1 argument + while(*p != 0) { + if(*p == '*' || *p == '$') return out.str(); + if(isupper(*p) || islower(*p)) {p++; break;} + p++; + } + + const char *tail=p; + string f=format->substr(start-p0,tail-start); + + const char *oldlocale=NULL; + if(!locale.empty()) { + oldlocale=setlocale(LC_ALL,NULL); + if(oldlocale) oldlocale=StrdupNoGC(oldlocale); + setlocale(LC_ALL,locale.c_str()); + } + + Int size=snprintf(NULL,0,f.c_str(),x)+1; + if(size < 1) size=255; // Workaround for non-C99 compliant systems. + char *buf=new char[size]; + snprintf(buf,size,f.c_str(),x); + + if(oldlocale) { + setlocale(LC_ALL,oldlocale); + delete[] oldlocale; + } + + bool trailingzero=f.find("#") < string::npos; + bool plus=f.find("+") < string::npos; + bool space=f.find(" ") < string::npos; + + char *q=buf; // beginning of formatted number + + if(*q == ' ') { + out << phantom; + q++; + } + + const char decimal=*(localeconv()->decimal_point); + + // Remove any spurious sign + if(*q == '-' || *q == '+') { + p=q+1; + bool zero=true; + while(*p != 0) { + if(!isdigit(*p) && *p != decimal) break; + if(isdigit(*p) && *p != '0') {zero=false; break;} + p++; + } + if(zero) { + q++; + if(plus || space) out << phantom; + } + } + + const char *r=p=q; + bool dp=false; + while(*r != 0 && (isdigit(*r) || *r == decimal || *r == '+' || *r == '-')) { + if(*r == decimal) dp=true; + r++; + } + if(dp) { // Remove trailing zeros and/or decimal point + r--; + unsigned n=0; + while(r > q && *r == '0') {r--; n++;} + if(*r == decimal) {r--; n++;} + while(q <= r) out << *(q++); + if(!trailingzero) q += n; + } + + bool zero=(r == p && *r == '0') && !trailingzero; + + // Translate "E+/E-/e+/e-" exponential notation to TeX + while(*q != 0) { + if(texify && (*q == 'E' || *q == 'e') && + (*(q+1) == '+' || *(q+1) == '-')) { + if(!zero) out << "\\!\\times\\!10^{"; + bool plus=(*(q+1) == '+'); + q++; + if(plus) q++; + if(*q == '-') out << *(q++); + while(*q == '0' && (zero || isdigit(*(q+1)))) q++; + while(isdigit(*q)) out << *(q++); + if(!zero) + out << "}"; + break; + } + out << *(q++); + } + + while(*tail != 0) + out << *(tail++); + + delete[] buf; + + return out.str(); +} + +Int hex(string s) +{ + istringstream is(s); + is.setf(std::ios::hex,std::ios::basefield); + Int value; + if(is && is >> value && ((is >> std::ws).eof())) return value; + ostringstream buf; + buf << "invalid hexidecimal cast from string \"" << s << "\""; + error(buf); +} + +string string(Int x) +{ + ostringstream buf; + buf << x; + return buf.str(); +} + +string string(real x, Int digits=DBL_DIG) +{ + ostringstream buf; + buf.precision(digits); + buf << x; + return buf.str(); +} + +string time(string format=defaulttimeformat) +{ +#ifdef HAVE_STRFTIME + const time_t bintime=time(NULL); + if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) return ""; + return Time; +#else + return format; +#endif +} + +string time(Int seconds, string format=defaulttimeformat) +{ +#ifdef HAVE_STRFTIME + const time_t bintime=seconds; + if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) return ""; + return Time; +#else +// Avoid unused variable warning messages + unused(&seconds); + return format; +#endif +} + +Int seconds(string t=emptystring, string format=emptystring) +{ +#if defined(HAVE_STRPTIME) + const time_t bintime=time(NULL); + tm tm=*localtime(&bintime); + if(t != "" && !strptime(t.c_str(),format.c_str(),&tm)) return -1; + return (Int) mktime(&tm); +#else + return -1; +#endif +} diff --git a/Build/source/utils/asymptote/runsystem.cc b/Build/source/utils/asymptote/runsystem.cc new file mode 100644 index 00000000000..e657a24a1e7 --- /dev/null +++ b/Build/source/utils/asymptote/runsystem.cc @@ -0,0 +1,438 @@ +/***** Autogenerated from runsystem.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runsystem.in" +/***** + * runsystem.in + * + * Runtime functions for system operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 12 "runsystem.in" +#include "process.h" +#include "stack.h" +#include "locate.h" + +using namespace camp; +using namespace settings; +using vm::bpinfo; +using vm::bplist; +using vm::getPos; +using vm::default_t; +using vm::nullfunc; +using vm::item; +using absyntax::runnable; + +typedef callable callableBp; + +namespace run { +extern default_t def; +extern string emptystring; +} + +function *voidFunction() +{ + return new function(primVoid()); +} + +function *breakpointFunction() +{ + return new function(primString(),primString(),primInt(),primInt(), + primCode()); +} + +void clear(string file, Int line, bool warn=false) +{ + bpinfo bp(file,line); + for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) { + if(*p == bp) { + cout << "cleared breakpoint at " << file << ": " << line << endl; + bplist.remove(bp); + return; + } + } + if(warn) + cout << "No such breakpoint at " << file << ": " << line << endl; +} + +namespace run { +void breakpoint(stack *Stack, runnable *r) +{ + callable *atBreakpointFunction=processData().atBreakpointFunction; + if(atBreakpointFunction && + !nullfunc::instance()->compare(atBreakpointFunction)) { + position curPos=getPos(); + Stack->push<string>(curPos.filename()); + Stack->push<Int>((Int) curPos.Line()); + Stack->push<Int>((Int) curPos.Column()); + Stack->push(r ? r : item(run::def)); + atBreakpointFunction->call(Stack); // returns a string + } else Stack->push<string>(""); +} +} + +string convertname(string name, const string& format, bool check=true) +{ + if(name.empty()) + return buildname(outname(),format,""); + else + if(check) checkLocal(name); + return format.empty() ? name : format+":"+name; +} + +namespace run { +void purge(Int divisor=0) +{ +#ifdef USEGC + if(divisor > 0) GC_set_free_space_divisor((GC_word) divisor); + GC_gcollect(); +#endif +} + +void updateFunction(stack *Stack) +{ + callable *atUpdateFunction=processData().atUpdateFunction; + if(atUpdateFunction && !nullfunc::instance()->compare(atUpdateFunction)) + atUpdateFunction->call(Stack); +} + +void exitFunction(stack *Stack) +{ + callable *atExitFunction=processData().atExitFunction; + if(atExitFunction && !nullfunc::instance()->compare(atExitFunction)) + atExitFunction->call(Stack); +} +} + +// Autogenerated routines: + + +namespace run { +#line 109 "runsystem.in" +// void atupdate(callable *f); +void gen_runsystem0(stack *Stack) +{ + callable * f=vm::pop<callable *>(Stack); +#line 110 "runsystem.in" + processData().atUpdateFunction=f; +} + +#line 114 "runsystem.in" +// callable* atupdate(); +void gen_runsystem1(stack *Stack) +{ +#line 115 "runsystem.in" + {Stack->push<callable*>(processData().atUpdateFunction); return;} +} + +#line 119 "runsystem.in" +// void atexit(callable *f); +void gen_runsystem2(stack *Stack) +{ + callable * f=vm::pop<callable *>(Stack); +#line 120 "runsystem.in" + processData().atExitFunction=f; +} + +#line 124 "runsystem.in" +// callable* atexit(); +void gen_runsystem3(stack *Stack) +{ +#line 125 "runsystem.in" + {Stack->push<callable*>(processData().atExitFunction); return;} +} + +#line 129 "runsystem.in" +// void atbreakpoint(callableBp *f); +void gen_runsystem4(stack *Stack) +{ + callableBp * f=vm::pop<callableBp *>(Stack); +#line 130 "runsystem.in" + processData().atBreakpointFunction=f; +} + +#line 134 "runsystem.in" +// void breakpoint(runnable *s=NULL); +void gen_runsystem5(stack *Stack) +{ + runnable * s=vm::pop<runnable *>(Stack,NULL); +#line 135 "runsystem.in" + breakpoint(Stack,s); +} + +#line 139 "runsystem.in" +// string locatefile(string file); +void gen_runsystem6(stack *Stack) +{ + string file=vm::pop<string>(Stack); +#line 140 "runsystem.in" + {Stack->push<string>(locateFile(file)); return;} +} + +#line 144 "runsystem.in" +// void stop(string file, Int line, runnable *s=NULL); +void gen_runsystem7(stack *Stack) +{ + runnable * s=vm::pop<runnable *>(Stack,NULL); + Int line=vm::pop<Int>(Stack); + string file=vm::pop<string>(Stack); +#line 145 "runsystem.in" + file=locateFile(file); + clear(file,line); + cout << "setting breakpoint at " << file << ": " << line << endl; + bplist.push_back(bpinfo(file,line,s)); +} + +#line 152 "runsystem.in" +// void breakpoints(); +void gen_runsystem8(stack *) +{ +#line 153 "runsystem.in" + for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) + cout << p->f.name() << ": " << p->f.line() << endl; +} + +#line 158 "runsystem.in" +// void clear(string file, Int line); +void gen_runsystem9(stack *Stack) +{ + Int line=vm::pop<Int>(Stack); + string file=vm::pop<string>(Stack); +#line 159 "runsystem.in" + file=locateFile(file); + clear(file,line,true); +} + +#line 164 "runsystem.in" +// void clear(); +void gen_runsystem10(stack *) +{ +#line 165 "runsystem.in" + bplist.clear(); +} + +#line 169 "runsystem.in" +// void warn(string s); +void gen_runsystem11(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 170 "runsystem.in" + Warn(s); +} + +#line 174 "runsystem.in" +// void nowarn(string s); +void gen_runsystem12(stack *Stack) +{ + string s=vm::pop<string>(Stack); +#line 175 "runsystem.in" + noWarn(s); +} + +#line 179 "runsystem.in" +// void warning(string s, string t, bool position=false); +void gen_runsystem13(stack *Stack) +{ + bool position=vm::pop<bool>(Stack,false); + string t=vm::pop<string>(Stack); + string s=vm::pop<string>(Stack); +#line 180 "runsystem.in" + if(settings::warn(s)) { + em.warning(position ? getPos() : nullPos,s); + em << t; + } +} + +// Strip directory from string +#line 188 "runsystem.in" +// string stripdirectory(string *s); +void gen_runsystem14(stack *Stack) +{ + string * s=vm::pop<string *>(Stack); +#line 189 "runsystem.in" + {Stack->push<string>(stripDir(*s)); return;} +} + +// Strip directory from string +#line 194 "runsystem.in" +// string stripfile(string *s); +void gen_runsystem15(stack *Stack) +{ + string * s=vm::pop<string *>(Stack); +#line 195 "runsystem.in" + {Stack->push<string>(stripFile(*s)); return;} +} + +// Strip file extension from string +#line 200 "runsystem.in" +// string stripextension(string *s); +void gen_runsystem16(stack *Stack) +{ + string * s=vm::pop<string *>(Stack); +#line 201 "runsystem.in" + {Stack->push<string>(stripExt(*s)); return;} +} + +// Call ImageMagick convert. +#line 206 "runsystem.in" +// Int convert(string args=emptystring, string file=emptystring, string format=emptystring); +void gen_runsystem17(stack *Stack) +{ + string format=vm::pop<string>(Stack,emptystring); + string file=vm::pop<string>(Stack,emptystring); + string args=vm::pop<string>(Stack,emptystring); +#line 208 "runsystem.in" + string name=convertname(file,format); + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("convert")); + push_split(cmd,args); + cmd.push_back(name); + bool quiet=verbose <= 1; + Int ret=System(cmd,quiet ? 1 : 0,true,"convert", + "your ImageMagick convert utility"); + + if(ret == 0 && verbose > 0) + cout << "Wrote " << ((file.empty()) ? name : file) << endl; + + {Stack->push<Int>(ret); return;} +} + +// Call ImageMagick animate. +#line 225 "runsystem.in" +// Int animate(string args=emptystring, string file=emptystring, string format=emptystring); +void gen_runsystem18(stack *Stack) +{ + string format=vm::pop<string>(Stack,emptystring); + string file=vm::pop<string>(Stack,emptystring); + string args=vm::pop<string>(Stack,emptystring); +#line 227 "runsystem.in" +#ifndef __CYGWIN__ + string name=convertname(file,format,false); + if(view()) { + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("animate")); + push_split(cmd,args); + cmd.push_back(name); + {Stack->push<Int>(System(cmd,0,false,"animate","your animated GIF viewer")); return;} + } +#endif + {Stack->push<Int>(0); return;} +} + +#line 241 "runsystem.in" +// void purge(Int divisor=0); +void gen_runsystem19(stack *Stack) +{ + Int divisor=vm::pop<Int>(Stack,0); +#line 242 "runsystem.in" + purge(divisor); +} + +} // namespace run + +namespace trans { + +void gen_runsystem_venv(venv &ve) +{ +#line 109 "runsystem.in" + addFunc(ve, run::gen_runsystem0, primVoid(), "atupdate", formal(voidFunction(), "f", false, false)); +#line 114 "runsystem.in" + addFunc(ve, run::gen_runsystem1, voidFunction(), "atupdate"); +#line 119 "runsystem.in" + addFunc(ve, run::gen_runsystem2, primVoid(), "atexit", formal(voidFunction(), "f", false, false)); +#line 124 "runsystem.in" + addFunc(ve, run::gen_runsystem3, voidFunction(), "atexit"); +#line 129 "runsystem.in" + addFunc(ve, run::gen_runsystem4, primVoid(), "atbreakpoint", formal(breakpointFunction(), "f", false, false)); +#line 134 "runsystem.in" + addFunc(ve, run::gen_runsystem5, primVoid(), "breakpoint", formal(primCode(), "s", true, false)); +#line 139 "runsystem.in" + addFunc(ve, run::gen_runsystem6, primString() , "locatefile", formal(primString() , "file", false, false)); +#line 144 "runsystem.in" + addFunc(ve, run::gen_runsystem7, primVoid(), "stop", formal(primString() , "file", false, false), formal(primInt(), "line", false, false), formal(primCode(), "s", true, false)); +#line 152 "runsystem.in" + addFunc(ve, run::gen_runsystem8, primVoid(), "breakpoints"); +#line 158 "runsystem.in" + addFunc(ve, run::gen_runsystem9, primVoid(), "clear", formal(primString() , "file", false, false), formal(primInt(), "line", false, false)); +#line 164 "runsystem.in" + addFunc(ve, run::gen_runsystem10, primVoid(), "clear"); +#line 169 "runsystem.in" + addFunc(ve, run::gen_runsystem11, primVoid(), "warn", formal(primString() , "s", false, false)); +#line 174 "runsystem.in" + addFunc(ve, run::gen_runsystem12, primVoid(), "nowarn", formal(primString() , "s", false, false)); +#line 179 "runsystem.in" + addFunc(ve, run::gen_runsystem13, primVoid(), "warning", formal(primString() , "s", false, false), formal(primString() , "t", false, false), formal(primBoolean(), "position", true, false)); +#line 187 "runsystem.in" + addFunc(ve, run::gen_runsystem14, primString() , "stripdirectory", formal(primString(), "s", false, false)); +#line 193 "runsystem.in" + addFunc(ve, run::gen_runsystem15, primString() , "stripfile", formal(primString(), "s", false, false)); +#line 199 "runsystem.in" + addFunc(ve, run::gen_runsystem16, primString() , "stripextension", formal(primString(), "s", false, false)); +#line 205 "runsystem.in" + addFunc(ve, run::gen_runsystem17, primInt(), "convert", formal(primString() , "args", true, false), formal(primString() , "file", true, false), formal(primString() , "format", true, false)); +#line 224 "runsystem.in" + addFunc(ve, run::gen_runsystem18, primInt(), "animate", formal(primString() , "args", true, false), formal(primString() , "file", true, false), formal(primString() , "format", true, false)); +#line 241 "runsystem.in" + addFunc(ve, run::gen_runsystem19, primVoid(), "purge", formal(primInt(), "divisor", true, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runsystem.h b/Build/source/utils/asymptote/runsystem.h new file mode 100644 index 00000000000..f6912e10760 --- /dev/null +++ b/Build/source/utils/asymptote/runsystem.h @@ -0,0 +1,8 @@ +/***** Autogenerated from runsystem.in; changes will be overwritten *****/ + +#ifndef runsystem_H +#define runsystem_H +namespace run { +} + +#endif // runsystem_H diff --git a/Build/source/utils/asymptote/runsystem.in b/Build/source/utils/asymptote/runsystem.in new file mode 100644 index 00000000000..cf0cf6af053 --- /dev/null +++ b/Build/source/utils/asymptote/runsystem.in @@ -0,0 +1,244 @@ +/***** + * runsystem.in + * + * Runtime functions for system operations. + * + *****/ + +callable* => voidFunction() +callableBp* => breakpointFunction() +runnable* => primCode() + +#include "process.h" +#include "stack.h" +#include "locate.h" + +using namespace camp; +using namespace settings; +using vm::bpinfo; +using vm::bplist; +using vm::getPos; +using vm::default_t; +using vm::nullfunc; +using vm::item; +using absyntax::runnable; + +typedef callable callableBp; + +namespace run { +extern default_t def; +extern string emptystring; +} + +function *voidFunction() +{ + return new function(primVoid()); +} + +function *breakpointFunction() +{ + return new function(primString(),primString(),primInt(),primInt(), + primCode()); +} + +void clear(string file, Int line, bool warn=false) +{ + bpinfo bp(file,line); + for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) { + if(*p == bp) { + cout << "cleared breakpoint at " << file << ": " << line << endl; + bplist.remove(bp); + return; + } + } + if(warn) + cout << "No such breakpoint at " << file << ": " << line << endl; +} + +namespace run { +void breakpoint(stack *Stack, runnable *r) +{ + callable *atBreakpointFunction=processData().atBreakpointFunction; + if(atBreakpointFunction && + !nullfunc::instance()->compare(atBreakpointFunction)) { + position curPos=getPos(); + Stack->push<string>(curPos.filename()); + Stack->push<Int>((Int) curPos.Line()); + Stack->push<Int>((Int) curPos.Column()); + Stack->push(r ? r : item(run::def)); + atBreakpointFunction->call(Stack); // returns a string + } else Stack->push<string>(""); +} +} + +string convertname(string name, const string& format, bool check=true) +{ + if(name.empty()) + return buildname(outname(),format,""); + else + if(check) checkLocal(name); + return format.empty() ? name : format+":"+name; +} + +namespace run { +void purge(Int divisor=0) +{ +#ifdef USEGC + if(divisor > 0) GC_set_free_space_divisor((GC_word) divisor); + GC_gcollect(); +#endif +} + +void updateFunction(stack *Stack) +{ + callable *atUpdateFunction=processData().atUpdateFunction; + if(atUpdateFunction && !nullfunc::instance()->compare(atUpdateFunction)) + atUpdateFunction->call(Stack); +} + +void exitFunction(stack *Stack) +{ + callable *atExitFunction=processData().atExitFunction; + if(atExitFunction && !nullfunc::instance()->compare(atExitFunction)) + atExitFunction->call(Stack); +} +} + +// Autogenerated routines: + +void atupdate(callable *f) +{ + processData().atUpdateFunction=f; +} + +callable *atupdate() +{ + return processData().atUpdateFunction; +} + +void atexit(callable *f) +{ + processData().atExitFunction=f; +} + +callable *atexit() +{ + return processData().atExitFunction; +} + +void atbreakpoint(callableBp *f) +{ + processData().atBreakpointFunction=f; +} + +void breakpoint(runnable *s=NULL) +{ + breakpoint(Stack,s); +} + +string locatefile(string file) +{ + return locateFile(file); +} + +void stop(string file, Int line, runnable *s=NULL) +{ + file=locateFile(file); + clear(file,line); + cout << "setting breakpoint at " << file << ": " << line << endl; + bplist.push_back(bpinfo(file,line,s)); +} + +void breakpoints() +{ + for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) + cout << p->f.name() << ": " << p->f.line() << endl; +} + +void clear(string file, Int line) +{ + file=locateFile(file); + clear(file,line,true); +} + +void clear() +{ + bplist.clear(); +} + +void warn(string s) +{ + Warn(s); +} + +void nowarn(string s) +{ + noWarn(s); +} + +void warning(string s, string t, bool position=false) +{ + if(settings::warn(s)) { + em.warning(position ? getPos() : nullPos,s); + em << t; + } +} + +// Strip directory from string +string stripdirectory(string *s) +{ + return stripDir(*s); +} + +// Strip directory from string +string stripfile(string *s) +{ + return stripFile(*s); +} + +// Strip file extension from string +string stripextension(string *s) +{ + return stripExt(*s); +} + +// Call ImageMagick convert. +Int convert(string args=emptystring, string file=emptystring, + string format=emptystring) +{ + string name=convertname(file,format); + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("convert")); + push_split(cmd,args); + cmd.push_back(name); + bool quiet=verbose <= 1; + Int ret=System(cmd,quiet ? 1 : 0,true,"convert", + "your ImageMagick convert utility"); + + if(ret == 0 && verbose > 0) + cout << "Wrote " << ((file.empty()) ? name : file) << endl; + + return ret; +} + +// Call ImageMagick animate. +Int animate(string args=emptystring, string file=emptystring, + string format=emptystring) +{ +#ifndef __CYGWIN__ + string name=convertname(file,format,false); + if(view()) { + mem::vector<string> cmd; + cmd.push_back(getSetting<string>("animate")); + push_split(cmd,args); + cmd.push_back(name); + return System(cmd,0,false,"animate","your animated GIF viewer"); + } +#endif + return 0; +} + +void purge(Int divisor=0) +{ + purge(divisor); +} diff --git a/Build/source/utils/asymptote/runtime.cc b/Build/source/utils/asymptote/runtime.cc index 2caa6a4acfc..8f90575a328 100644 --- a/Build/source/utils/asymptote/runtime.cc +++ b/Build/source/utils/asymptote/runtime.cc @@ -36,16 +36,48 @@ #include "builtin.h" #include "entry.h" #include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" using vm::stack; using vm::error; +using vm::array; +using vm::callable; using types::formal; +using types::function; +using camp::triple; #define PRIMITIVE(name,Name,asyName) using types::prim##Name; #include <primitives.h> #undef PRIMITIVE +typedef double real; + void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen #line 55 "runtime.in" #include <cfloat> @@ -62,21 +94,9 @@ void unused(void *); #include "path.h" #include "path3.h" #include "pen.h" +#include "drawpath.h" #include "guide.h" #include "picture.h" -#include "drawpath.h" -#include "drawpath3.h" -#include "drawsurface.h" -#include "drawfill.h" -#include "drawclipbegin.h" -#include "drawclipend.h" -#include "drawlabel.h" -#include "drawverbatim.h" -#include "drawgsave.h" -#include "drawgrestore.h" -#include "drawlayer.h" -#include "drawimage.h" -#include "drawgroup.h" #include "fileio.h" #include "genv.h" #include "builtin.h" @@ -92,18 +112,7 @@ void unused(void *); #include "lexical.h" #include "process.h" #include "arrayop.h" -#include "predicates.h" -#include "Delaunay.h" -#ifdef HAVE_LIBFFTW3 -#include "fftw++.h" -#endif - -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) -#include <readline/readline.h> -#include <readline/history.h> -#endif - #if defined(USEGC) && defined(GC_DEBUG) && defined(GC_BACKTRACE) extern "C" { void *GC_generate_random_valid_address(void); @@ -123,10 +132,6 @@ using vm::stack; using camp::transform; using absyntax::runnable; -typedef double real; - -#define CURRENTPEN processData().currentpen - typedef array boolarray; typedef array Intarray; typedef array Intarray2; @@ -176,27 +181,11 @@ using types::stringArray; using types::stringArray2; using types::formal; -function *voidFunction() -{ - return new function(primVoid()); -} - -function *breakpointFunction() -{ - return new function(primString(),primString(),primInt(),primInt(), - primCode()); -} - function *realRealFunction() { return new function(primReal(),primReal()); } -function *transformFunction() -{ - return new function(primTransform()); -} - function *realTripleFunction() { return new function(primReal(),primTriple()); @@ -209,326 +198,9 @@ namespace vm { namespace run { -const char *invalidargument="invalid argument"; const char *arrayempty="cannot take min or max of empty array"; const char *noruntime="no runtime environment for embedded eval"; -// Return the factorial of a non-negative integer using a lookup table. -Int factorial(Int n) -{ - static Int *table; - static Int size=0; - if(size == 0) { - Int f=1; - size=2; - while(f <= Int_MAX/size) - f *= (size++); - table=new Int[size]; - table[0]=f=1; - for(Int i=1; i < size; ++i) { - f *= i; - table[i]=f; - } - } - if(n >= size) integeroverflow(0); - return table[n]; -} - -static inline Int Round(double x) -{ - return Int(x+((x >= 0) ? 0.5 : -0.5)); -} - -inline Int sgn(double x) -{ - return (x > 0.0 ? 1 : (x < 0.0 ? -1 : 0)); -} - -void outOfBounds(const char *op, size_t len, Int n) -{ - ostringstream buf; - buf << op << " array of length " << len << " with out-of-bounds index " << n; - error(buf); -} - -inline item& arrayRead(array *a, Int n) -{ - size_t len=checkArray(a); - bool cyclic=a->cyclic(); - if(cyclic && len > 0) n=imod(n,len); - else if(n < 0 || n >= (Int) len) outOfBounds("reading",len,n); - return (*a)[(unsigned) n]; -} - -// Helper function to create deep arrays. -static array* deepArray(Int depth, Int *dims) -{ - assert(depth > 0); - - if (depth == 1) { - return new array(dims[0]); - } else { - Int length = dims[0]; - depth--; dims++; - - array *a = new array(length); - - for (Int index = 0; index < length; index++) { - (*a)[index] = deepArray(depth, dims); - } - return a; - } -} - -array *nop(array *a) -{ - return a; -} - -array *Identity(Int n) -{ - size_t N=(size_t) n; - array *c=new array(N); - for(size_t i=0; i < N; ++i) { - array *ci=new array(N); - (*c)[i]=ci; - for(size_t j=0; j < N; ++j) - (*ci)[j]=0.0; - (*ci)[i]=1.0; - } - return c; -} - -array *copyArray(array *a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) - (*c)[i]=(*a)[i]; - return c; -} - -inline size_t checkdimension(array *a, size_t dim) -{ - size_t size=checkArray(a); - if(dim && size != dim) { - ostringstream buf; - buf << "array of length " << dim << " expected"; - error(buf); - } - return size; -} - -double *copyArrayC(array *a, size_t dim=0) -{ - size_t size=checkdimension(a,dim); - double *c=new double[size]; - for(size_t i=0; i < size; i++) - c[i]=read<double>(a,i); - return c; -} - -triple *copyTripleArrayC(array *a, size_t dim=0) -{ - size_t size=checkdimension(a,dim); - triple *c=new triple[size]; - for(size_t i=0; i < size; i++) - c[i]=read<triple>(a,i); - return c; -} - -array *copyArray2(array *a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - array *ci=new array(aisize); - (*c)[i]=ci; - for(size_t j=0; j < aisize; j++) - (*ci)[j]=(*ai)[j]; - } - return c; -} - -array *copyArray3(array *a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - array *ci=new array(aisize); - (*c)[i]=ci; - for(size_t j=0; j < aisize; j++) { - array *aij=read<array*>(ai,j); - size_t aijsize=checkArray(aij); - array *cij=new array(aijsize); - (*ci)[j]=cij; - for(size_t k=0; k < aijsize; k++) - (*cij)[k]=(*aij)[k]; - } - } - return c; -} - -double *copyArray2C(array *a, bool square=true, size_t dim2=0) -{ - size_t n=checkArray(a); - size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); - if(n > 0 && dim2 && m != dim2) { - ostringstream buf; - buf << "second matrix dimension must be " << dim2; - error(buf); - } - - double *c=new double[n*m]; - for(size_t i=0; i < n; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - if(aisize == m) { - double *ci=c+i*m; - for(size_t j=0; j < m; j++) - ci[j]=read<double>(ai,j); - } else - error(square ? "matrix must be square" : "matrix must be rectangular"); - } - return c; -} - -triple *copyTripleArray2C(array *a, bool square=true, size_t dim2=0) -{ - size_t n=checkArray(a); - size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); - if(n > 0 && dim2 && m != dim2) { - ostringstream buf; - buf << "second matrix dimension must be " << dim2; - error(buf); - } - - triple *c=new triple[n*m]; - for(size_t i=0; i < n; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - if(aisize == m) { - triple *ci=c+i*m; - for(size_t j=0; j < m; j++) - ci[j]=read<triple>(ai,j); - } else - error(square ? "matrix must be square" : "matrix must be rectangular"); - } - return c; -} - -double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0) -{ - size_t n=checkArray(a); - size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); - if(n > 0 && dim2 && m != dim2) { - ostringstream buf; - buf << "second matrix dimension must be " << dim2; - error(buf); - } - - size_t nm=n*m; - double *cx=new double[3*nm]; - double *cy=cx+nm; - double *cz=cx+2*nm; - for(size_t i=0; i < n; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - if(aisize == m) { - double *xi=cx+i*m; - double *yi=cy+i*m; - double *zi=cz+i*m; - for(size_t j=0; j < m; j++) { - triple v=read<triple>(ai,j); - xi[j]=v.getx(); - yi[j]=v.gety(); - zi[j]=v.getz(); - } - } else - error(square ? "matrix must be square" : "matrix must be rectangular"); - } - return cx; -} - -static const char *incommensurate="Incommensurate matrices"; -static const char *singular="Singular matrix"; -static size_t *pivot,*Row,*Col; - -triple operator *(const array& t, const triple& v) -{ - size_t n=checkArray(&t); - if(n != 4) error(incommensurate); - array *t0=read<array*>(t,0); - array *t1=read<array*>(t,1); - array *t2=read<array*>(t,2); - array *t3=read<array*>(t,3); - - if(checkArray(t0) != 4 || checkArray(t1) != 4 || - checkArray(t2) != 4 || checkArray(t3) != 4) - error(incommensurate); - - double x=v.getx(); - double y=v.gety(); - double z=v.getz(); - - double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ - read<real>(t3,3); - if(f == 0.0) run::dividebyzero(); - f=1.0/f; - - return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ - read<real>(t0,3))*f, - (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ - read<real>(t1,3))*f, - (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z+ - read<real>(t2,3))*f); -} - -triple multshiftless(const array& t, const triple& v) -{ - size_t n=checkArray(&t); - if(n != 4) error(incommensurate); - array *t0=read<array*>(t,0); - array *t1=read<array*>(t,1); - array *t2=read<array*>(t,2); - array *t3=read<array*>(t,3); - - if(checkArray(t0) != 4 || checkArray(t1) != 4 || - checkArray(t2) != 4 || checkArray(t3) != 4) - error(incommensurate); - - double x=v.getx(); - double y=v.gety(); - double z=v.getz(); - - double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ - read<real>(t3,3); - if(f == 0.0) run::dividebyzero(); - f=1.0/f; - - return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z)*f, - (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z)*f, - (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z)*f); -} - -static inline void inverseAllocate(size_t n) -{ - pivot=new size_t[n]; - Row=new size_t[n]; - Col=new size_t[n]; -} - -static inline void inverseDeallocate() -{ - delete[] pivot; - delete[] Row; - delete[] Col; -} - void writestring(stack *s) { callable *suffix=pop<callable *>(s,NULL); @@ -546,547 +218,18 @@ void writestring(stack *s) } } -void checkSquare(array *a) -{ - size_t n=checkArray(a); - for(size_t i=0; i < n; i++) - if(checkArray(read<array*>(a,i)) != n) - error("matrix a must be square"); -} - -// Crout's algorithm for computing the LU decomposition of a square matrix. -// cf. routine ludcmp (Press et al., Numerical Recipes, 1991). -Int LUdecompose(double *a, size_t n, size_t* index, bool warn=true) -{ - double *vv=new double[n]; - Int swap=1; - for(size_t i=0; i < n; ++i) { - double big=0.0; - double *ai=a+i*n; - for(size_t j=0; j < n; ++j) { - double temp=fabs(ai[j]); - if(temp > big) big=temp; - } - if(big == 0.0) { - delete[] vv; - if(warn) error(singular); - else return 0; - } - vv[i]=1.0/big; - } - for(size_t j=0; j < n; ++j) { - for(size_t i=0; i < j; ++i) { - double *ai=a+i*n; - double sum=ai[j]; - for(size_t k=0; k < i; ++k) { - sum -= ai[k]*a[k*n+j]; - } - ai[j]=sum; - } - double big=0.0; - size_t imax=j; - for(size_t i=j; i < n; ++i) { - double *ai=a+i*n; - double sum=ai[j]; - for(size_t k=0; k < j; ++k) - sum -= ai[k]*a[k*n+j]; - ai[j]=sum; - double temp=vv[i]*fabs(sum); - if(temp >= big) { - big=temp; - imax=i; - } - } - double *aj=a+j*n; - double *aimax=a+imax*n; - if(j != imax) { - for(size_t k=0; k < n; ++k) { - double temp=aimax[k]; - aimax[k]=aj[k]; - aj[k]=temp; - } - swap *= -1; - vv[imax]=vv[j]; - } - if(index) - index[j]=imax; - if(j != n) { - double denom=aj[j]; - if(denom == 0.0) { - delete[] vv; - if(warn) error(singular); - else return 0; - } - for(size_t i=j+1; i < n; ++i) - a[i*n+j] /= denom; - } - } - delete[] vv; - return swap; -} - -void dividebyzero(size_t i) -{ - ostringstream buf; - if(i > 0) buf << "array element " << i << ": "; - buf << "Divide by zero"; - error(buf); -} - -void integeroverflow(size_t i) -{ - ostringstream buf; - if(i > 0) buf << "array element " << i << ": "; - buf << "Integer overflow"; - error(buf); -} - -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) -struct historyState { - bool store; - HISTORY_STATE state; -}; - -typedef mem::map<CONST string, historyState> historyMap_t; -historyMap_t historyMap; -static HISTORY_STATE history_save; - -// Store a deep copy of the current readline history in dest. -void store_history(HISTORY_STATE *dest) -{ - HISTORY_STATE *src=history_get_history_state(); - if(src) { - *dest=*src; - for(Int i=0; i < src->length; ++i) - dest->entries[i]=src->entries[i]; - free(src); - } -} - -stringarray* get_history(Int n) -{ - int N=intcast(n); - if(N <= 0) N=history_length; - else N=Min(N,history_length); - array *a=new array((size_t) N); - int offset=history_length-N+1; - for(int i=0; i < N; ++i) { - HIST_ENTRY *last=history_get(offset+i); - string s=last ? last->line : ""; - (*a)[i]=s; - } - return a; -} - -string historyfilename(const string &name) -{ - return historyname+"_"+name; -} -#endif - -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) -int readline_startup_hook() -{ -#ifdef __CYGWIN__ - rl_set_key("\\M-[3~",rl_delete,rl_get_keymap()); - rl_set_key("\\M-[2~",rl_overwrite_mode,rl_get_keymap()); -#endif - return 0; -} - -void init_readline(bool tabcompletion=true) -{ - static bool first=true; - if(first) { - first=false; -#ifdef __CYGWIN__ - rl_startup_hook=readline_startup_hook; -#endif - } - rl_bind_key('\t',tabcompletion ? rl_complete : rl_insert); -} -#endif - -void cleanup() -{ -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - store_history(&history_save); - int nlines=intcast(getSetting<Int>("historylines")); - for(historyMap_t::iterator h=historyMap.begin(); h != historyMap.end(); - ++h) { - history_set_history_state(&h->second.state); - stifle_history(nlines); - if(h->second.store) write_history(historyfilename(h->first).c_str()); - } - history_set_history_state(&history_save); -#endif -} - -void purge(Int divisor=0) -{ -#ifdef USEGC - if(divisor > 0) GC_set_free_space_divisor((GC_word) divisor); - GC_gcollect(); -#endif -} - -void updateFunction(stack *Stack) -{ - callable *atUpdateFunction=processData().atUpdateFunction; - if(atUpdateFunction && !nullfunc::instance()->compare(atUpdateFunction)) - atUpdateFunction->call(Stack); -} - -void exitFunction(stack *Stack) -{ - callable *atExitFunction=processData().atExitFunction; - if(atExitFunction && !nullfunc::instance()->compare(atExitFunction)) - atExitFunction->call(Stack); -} - default_t def; string emptystring; -array *emptyarray=new array(0); -string commentchar="#"; pair zero; -void breakpoint(stack *Stack, runnable *r) -{ - callable *atBreakpointFunction=processData().atBreakpointFunction; - if(atBreakpointFunction && - !nullfunc::instance()->compare(atBreakpointFunction)) { - position curPos=getPos(); - Stack->push<string>(curPos.filename()); - Stack->push<Int>((Int) curPos.Line()); - Stack->push<Int>((Int) curPos.Column()); - Stack->push(r ? r : item(def)); - atBreakpointFunction->call(Stack); // returns a string - } else Stack->push<string>(""); -} - -} - -namespace types { -extern const char *names[]; -} - -void checkformat(const char *ptr, bool intformat) -{ - while(*ptr != '\0') { - if(*ptr != '%') /* While we have regular characters, print them. */ - ptr++; - else { /* We've got a format specifier. */ - ptr++; - - while(*ptr && strchr ("-+ #0'I", *ptr)) /* Move past flags. */ - *ptr++; - - if(*ptr == '*') - ptr++; - else while(isdigit(*ptr)) /* Handle explicit numeric value. */ - ptr++; - - if(*ptr == '.') { - *ptr++; /* Go past the period. */ - if(*ptr == '*') { - ptr++; - } else - while(isdigit(*ptr)) /* Handle explicit numeric value. */ - *ptr++; - } - while(*ptr && strchr ("hlL", *ptr)) - *ptr++; - - if(*ptr == '%') ++ptr; - else if(*ptr != '\0') { - if(intformat) { - switch(*ptr) { - case 'd': - case 'i': - case 'o': - case 'u': - case 'x': - case 'X': - case 'c': - break; - default: - ostringstream buf; - buf << "Invalid format '" << *ptr << "' for type " - << types::names[types::ty_Int]; - error(buf); - break; - } - } else { - switch(*ptr) { - case 'f': - case 'F': - case 'e': - case 'E': - case 'g': - case 'G': - break; - default: - ostringstream buf; - buf << "Invalid format '" << *ptr << "' for type " - << types::names[types::ty_real]; - error(buf); - break; - } - } - } - } /* End of else statement */ - } -} - -// Return an angle in the interval [0,360). -inline double principalBranch(double deg) -{ - if(deg < 0) deg += 360; - return deg; } static string defaulttransparency=string("Compatible"); -static const string defaulttimeformat=string("%a %b %d %T %Z %Y"); -#ifdef HAVE_STRFTIME -static const size_t nTime=256; -static char Time[nTime]; -#endif - -void clear(string file, Int line, bool warn=false) -{ - bpinfo bp(file,line); - for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) { - if(*p == bp) { - cout << "cleared breakpoint at " << file << ": " << line << endl; - bplist.remove(bp); - return; - } - } - if(warn) - cout << "No such breakpoint at " << file << ": " << line << endl; -} - -Int windingnumber(array *p, camp::pair z) -{ - size_t size=checkArray(p); - Int count=0; - for(size_t i=0; i < size; i++) - count += read<path *>(p,i)->windingnumber(z); - return count; -} - -string convertname(string name, const string& format, bool check=true) -{ - if(name.empty()) - return buildname(outname(),format,""); - else - if(check) checkLocal(name); - return format.empty() ? name : format+":"+name; -} - -callable *Func; -stack *FuncStack; -double wrapFunction(double x) -{ - FuncStack->push(x); - Func->call(FuncStack); - return pop<double>(FuncStack); -} - -callable *compareFunc; -bool compareFunction(const vm::item& i, const vm::item& j) -{ - FuncStack->push(i); - FuncStack->push(j); - compareFunc->call(FuncStack); - return pop<bool>(FuncStack); -} void unused(void *) { } -pair readpair(stringstream& s, double hscale=1.0, double vscale=1.0) -{ - double x,y; - s >> y; - s >> x; - return pair(hscale*x,vscale*y); -} - -// Ignore unclosed begingroups but not spurious endgroups. -const char *nobegin="endgroup without matching begingroup"; - -// Return the component of vector v perpendicular to a unit vector u. -inline triple perp(triple v, triple u) -{ - return v-dot(v,u)*u; -} - -string ASYx="/ASYx {( ) print ASYX sub 12 string cvs print} bind def"; -string ASYy="/ASYy {( ) print ASYY sub 12 string cvs print} bind def"; -string pathforall="{(M) print ASYy ASYx} {(L) print ASYy ASYx} {(C) print ASYy ASYx ASYy ASYx ASYy ASYx} {(c) print} pathforall"; -string currentpoint="print currentpoint ASYy ASYx "; -string ASYinit="/ASYX currentpoint pop def /ASYY currentpoint exch pop def "; -string ASY1="ASY1 {"+ASYinit+"/ASY1 false def} if "; - -void showpath(std::ofstream& ps) -{ - ps << ASYx << newl - << ASYy << newl - << "/ASY1 true def" << newl - << "/fill {" << ASY1 - << pathforall << " (M) " << currentpoint - << "currentpoint newpath moveto } bind def" << newl - << "/stroke {" << ASY1 << "strokepath " - << pathforall << " (M) " << currentpoint - << "currentpoint newpath moveto } bind def" << endl; -} - -array *readpath(const string& psname, bool keep, - double hscale=1.0, double vsign=1.0) -{ - double vscale=vsign*hscale; - array *P=new array(0); - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("gs")); - cmd.push_back("-q"); - cmd.push_back("-dNOPAUSE"); - cmd.push_back("-dBATCH"); - if(safe) cmd.push_back("-dSAFER"); -#ifdef __CYGWIN__ - const string null="NUL"; -#else - const string null="/dev/null"; -#endif - cmd.push_back("-sDEVICE=epswrite"); - cmd.push_back("-sOutputFile="+null); - cmd.push_back(psname); - iopipestream gs(cmd,"gs","Ghostscript"); - stringstream buf; - while(true) { - string out; - gs >> out; - if(out.empty() && !gs.running()) break; - buf << out; - } - if(verbose > 2) cout << endl; - - mem::vector<solvedKnot> nodes; - solvedKnot node; - bool cyclic=false; - bool active=false; - - while(!buf.eof()) { - char c; - buf >> c; - switch(c) { - case 'M': - { - if(active) { - if(cyclic) { - if(node.point == nodes[0].point) - nodes[0].pre=node.pre; - else { - pair delta=(nodes[0].point-node.point)*third; - node.post=node.point+delta; - nodes[0].pre=nodes[0].point-delta; - node.straight=true; - nodes.push_back(node); - } - } else { - node.post=node.point; - node.straight=false; - nodes.push_back(node); - } - P->push(path(nodes,nodes.size(),cyclic)); - nodes.clear(); - } - active=false; - cyclic=false; - node.pre=node.point=readpair(buf,hscale,vscale); - node.straight=false; - break; - } - case 'L': - { - pair point=readpair(buf,hscale,vscale); - pair delta=(point-node.point)*third; - node.post=node.point+delta; - node.straight=true; - nodes.push_back(node); - active=true; - node.pre=point-delta; - node.point=point; - break; - } - case 'C': - { - pair point=readpair(buf,hscale,vscale); - pair pre=readpair(buf,hscale,vscale); - node.post=readpair(buf,hscale,vscale); - node.straight=false; - nodes.push_back(node); - active=true; - node.pre=pre; - node.point=point; - break; - } - case 'c': - { - cyclic=true; - break; - } - } - } - - if(!keep) - unlink(psname.c_str()); - return P; -} - -pair sin(pair z) -{ - return pair(sin(z.getx())*cosh(z.gety()),cos(z.getx())*sinh(z.gety())); -} - -pair exp(pair z) -{ - return exp(z.getx())*expi(z.gety()); -} - -pair gamma(pair z) -{ - static double p[]={0.99999999999980993,676.5203681218851,-1259.1392167224028, - 771.32342877765313,-176.61502916214059,12.507343278686905, - -0.13857109526572012,9.9843695780195716e-6, - 1.5056327351493116e-7}; - static int n=sizeof(p)/sizeof(double); - static double root2pi=sqrt(2*PI); - if(z.getx() < 0.5) - return PI/(sin(PI*z)*gamma(1.0-z)); - z -= 1.0; - pair x=p[0]; - for(int i=1; i < n; ++i) - x += p[i]/(z+i); - pair t=n-1.5+z; - return root2pi*pow(t,z+0.5)*exp(-t)*x; -} - -void cannotread(const string& s) -{ - ostringstream buf; - buf << "Cannot read from " << s; - error(buf); -} - -void cannotwrite(const string& s) -{ - ostringstream buf; - buf << "Cannot write to " << s; - error(buf); -} - // Autogenerated routines: @@ -1094,45 +237,45 @@ void cannotwrite(const string& s) namespace run { // Initializers -#line 1099 "runtime.in" +#line 210 "runtime.in" void IntZero(stack *Stack) { -#line 1100 "runtime.in" +#line 211 "runtime.in" {Stack->push<Int>(0); return;} } -#line 1105 "runtime.in" +#line 216 "runtime.in" void realZero(stack *Stack) { -#line 1106 "runtime.in" +#line 217 "runtime.in" {Stack->push<real>(0.0); return;} } -#line 1110 "runtime.in" +#line 221 "runtime.in" void boolFalse(stack *Stack) { -#line 1111 "runtime.in" +#line 222 "runtime.in" {Stack->push<bool>(false); return;} } -#line 1115 "runtime.in" +#line 226 "runtime.in" void pushNullArray(stack *Stack) { -#line 1116 "runtime.in" +#line 227 "runtime.in" {Stack->push<array*>(0); return;} } -#line 1120 "runtime.in" +#line 231 "runtime.in" void pushNullRecord(stack *Stack) { -#line 1121 "runtime.in" +#line 232 "runtime.in" {Stack->push<frame*>(0); return;} } -#line 1125 "runtime.in" +#line 236 "runtime.in" void pushNullFunction(stack *Stack) { -#line 1126 "runtime.in" +#line 237 "runtime.in" {Stack->push(nullfunc::instance()); return;} } @@ -1141,1306 +284,248 @@ void pushNullFunction(stack *Stack) // Put the default value token on the stack (in place of an argument when // making a function call). -#line 1135 "runtime.in" +#line 246 "runtime.in" void pushDefault(stack *Stack) { -#line 1136 "runtime.in" +#line 247 "runtime.in" {Stack->push(def); return;} } // Test if the value on the stack is the default value token. -#line 1142 "runtime.in" +#line 253 "runtime.in" void isDefault(stack *Stack) { item i=vm::pop(Stack); -#line 1143 "runtime.in" +#line 254 "runtime.in" {Stack->push<bool>(isdefault(i)); return;} } -// Logical operations -#line 1149 "runtime.in" -// bool !(bool b); -void gen_runtime8(stack *Stack) -{ - bool b=vm::pop<bool>(Stack); -#line 1150 "runtime.in" - {Stack->push<bool>(!b); return;} -} - -#line 1155 "runtime.in" -void boolMemEq(stack *Stack) -{ - frame * b=vm::pop<frame *>(Stack); - frame * a=vm::pop<frame *>(Stack); -#line 1156 "runtime.in" - {Stack->push<bool>(a == b); return;} -} - -#line 1160 "runtime.in" -void boolMemNeq(stack *Stack) -{ - frame * b=vm::pop<frame *>(Stack); - frame * a=vm::pop<frame *>(Stack); -#line 1161 "runtime.in" - {Stack->push<bool>(a != b); return;} -} - -#line 1165 "runtime.in" -void boolFuncEq(stack *Stack) -{ - callable * b=vm::pop<callable *>(Stack); - callable * a=vm::pop<callable *>(Stack); -#line 1166 "runtime.in" - {Stack->push<bool>(a->compare(b)); return;} -} - -#line 1170 "runtime.in" -void boolFuncNeq(stack *Stack) -{ - callable * b=vm::pop<callable *>(Stack); - callable * a=vm::pop<callable *>(Stack); -#line 1171 "runtime.in" - {Stack->push<bool>(!(a->compare(b))); return;} -} - - -// Bit operations -#line 1177 "runtime.in" -// Int AND(Int a, Int b); -void gen_runtime13(stack *Stack) -{ - Int b=vm::pop<Int>(Stack); - Int a=vm::pop<Int>(Stack); -#line 1178 "runtime.in" - {Stack->push<Int>(a & b); return;} -} - -#line 1183 "runtime.in" -// Int OR(Int a, Int b); -void gen_runtime14(stack *Stack) -{ - Int b=vm::pop<Int>(Stack); - Int a=vm::pop<Int>(Stack); -#line 1184 "runtime.in" - {Stack->push<Int>(a | b); return;} -} - -#line 1188 "runtime.in" -// Int XOR(Int a, Int b); -void gen_runtime15(stack *Stack) -{ - Int b=vm::pop<Int>(Stack); - Int a=vm::pop<Int>(Stack); -#line 1189 "runtime.in" - {Stack->push<Int>(a ^ b); return;} -} - -#line 1193 "runtime.in" -// Int NOT(Int a); -void gen_runtime16(stack *Stack) -{ - Int a=vm::pop<Int>(Stack); -#line 1194 "runtime.in" - {Stack->push<Int>(~a); return;} -} - - // Casts -#line 1200 "runtime.in" +#line 260 "runtime.in" void pairToGuide(stack *Stack) { pair z=vm::pop<pair>(Stack); -#line 1201 "runtime.in" +#line 261 "runtime.in" {Stack->push<guide*>(new pairguide(z)); return;} } -#line 1206 "runtime.in" +#line 266 "runtime.in" void pathToGuide(stack *Stack) { path p=vm::pop<path>(Stack); -#line 1207 "runtime.in" +#line 267 "runtime.in" {Stack->push<guide*>(new pathguide(p)); return;} } -#line 1211 "runtime.in" +#line 271 "runtime.in" void guideToPath(stack *Stack) { guide * g=vm::pop<guide *>(Stack); -#line 1212 "runtime.in" +#line 272 "runtime.in" {Stack->push<path>(g->solve()); return;} } -// Picture operations -#line 1218 "runtime.in" -void newPicture(stack *Stack) -{ -#line 1219 "runtime.in" - {Stack->push<picture*>(new picture()); return;} -} - -#line 1224 "runtime.in" -// bool empty(picture *f); -void gen_runtime21(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1225 "runtime.in" - {Stack->push<bool>(f->null()); return;} -} - -#line 1229 "runtime.in" -// void erase(picture *f); -void gen_runtime22(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1230 "runtime.in" - f->nodes.clear(); -} - -#line 1234 "runtime.in" -// pair min(picture *f); -void gen_runtime23(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1235 "runtime.in" - {Stack->push<pair>(f->bounds().Min()); return;} -} - -#line 1239 "runtime.in" -// pair max(picture *f); -void gen_runtime24(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1240 "runtime.in" - {Stack->push<pair>(f->bounds().Max()); return;} -} - -#line 1244 "runtime.in" -// void label(picture *f, string *s, string *size, transform t, pair position, pair align, pen p); -void gen_runtime25(stack *Stack) -{ - pen p=vm::pop<pen>(Stack); - pair align=vm::pop<pair>(Stack); - pair position=vm::pop<pair>(Stack); - transform t=vm::pop<transform>(Stack); - string * size=vm::pop<string *>(Stack); - string * s=vm::pop<string *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1246 "runtime.in" - f->append(new drawLabel(*s,*size,t,position,align,p)); -} - -#line 1250 "runtime.in" -// bool labels(picture *f); -void gen_runtime26(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1251 "runtime.in" - {Stack->push<bool>(f->havelabels()); return;} -} - -#line 1255 "runtime.in" -// realarray* texsize(string *s, pen p=CURRENTPEN); -void gen_runtime27(stack *Stack) -{ - pen p=vm::pop<pen>(Stack,CURRENTPEN); - string * s=vm::pop<string *>(Stack); -#line 1256 "runtime.in" - texinit(); - processDataStruct &pd=processData(); - - string texengine=getSetting<string>("tex"); - const char **abort=texabort(texengine); - setpen(pd.tex,texengine,p); - - double width,height,depth; - if(!texbounds(width,height,depth,pd.tex,*s,abort,false,true)) - {Stack->push<realarray*>(new array(0)); return;} - - array *t=new array(3); - (*t)[0]=width; - (*t)[1]=height; - (*t)[2]=depth; - {Stack->push<realarray*>(t); return;} -} - -#line 1275 "runtime.in" -// patharray* _texpath(string *s, pen p=CURRENTPEN); -void gen_runtime28(stack *Stack) -{ - pen p=vm::pop<pen>(Stack,CURRENTPEN); - string * s=vm::pop<string *>(Stack); -#line 1276 "runtime.in" - array *P=new array(0); - if(s->empty()) {Stack->push<patharray*>(P); return;} - - string prefix=outname(); - spaceToUnderscore(prefix); - string psname=auxname(prefix,"ps"); - string texname=auxname(prefix,"tex"); - string dviname=auxname(prefix,"dvi"); - bbox b; - string texengine=getSetting<string>("tex"); - bool pdf=settings::pdf(texengine); - texfile tex(texname,b,true); - tex.miniprologue(); - tex.setfont(p); - - if(!pdf) { - tex.verbatimline("\\special{ps:"); - tex.verbatimline(ASYx); - tex.verbatimline(ASYy); - tex.verbatimline("/ASY1 true def"); - tex.verbatimline("/v {"+ASY1+"neg exch 4 copy 4 2 roll 2 copy 6 2 roll 2 copy (M) print ASYy ASYx (L) print ASYy add ASYx (L) print add ASYy add ASYx (L) print add ASYy ASYx (c) print} bind def"); - tex.verbatimline("/show {"+ASY1+ - "currentpoint newpath moveto false charpath "+ - pathforall+"} bind def}"); - } - tex.verbatimline(*s+"%"); - tex.epilogue(true); - tex.close(); - - int status=opentex(texname,prefix); - - string pdfname; - if(!status) { - if(pdf) { - pdfname=auxname(prefix,"pdf"); - std::ofstream ps(psname.c_str()); - if(!ps) cannotwrite(psname); - - showpath(ps); - - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("gs")); - cmd.push_back("-q"); - cmd.push_back("-dNOCACHE"); - cmd.push_back("-dNOPAUSE"); - cmd.push_back("-dBATCH"); - if(safe) cmd.push_back("-dSAFER"); - cmd.push_back("-sDEVICE=epswrite"); - cmd.push_back("-sOutputFile=-"); - cmd.push_back(pdfname); - iopipestream gs(cmd,"gs","Ghostscript"); - - gs.block(false); - while(true) { - string line; - gs >> line; - if(line.empty() && !gs.running()) break; - ps << line; - } - ps.close(); - } else { - mem::vector<string> dcmd; - dcmd.push_back(getSetting<string>("dvips")); - dcmd.push_back("-R"); - dcmd.push_back("-Pdownload35"); - dcmd.push_back("-D600"); - push_split(dcmd,getSetting<string>("dvipsOptions")); - if(verbose <= 2) dcmd.push_back("-q"); - dcmd.push_back("-o"+psname); - dcmd.push_back(dviname); - status=System(dcmd,0,true,"dvips"); - } - } - - if(status != 0) - error("texpath failed"); - - bool keep=getSetting<bool>("keep"); - if(!keep) { // Delete temporary files. - unlink(texname.c_str()); - if(!getSetting<bool>("keepaux")) - unlink(auxname(prefix,"aux").c_str()); - unlink(auxname(prefix,"log").c_str()); - if(pdf) - unlink(pdfname.c_str()); - else - unlink(dviname.c_str()); - if(settings::context(texengine)) { - unlink(auxname(prefix,"top").c_str()); - unlink(auxname(prefix,"tua").c_str()); - unlink(auxname(prefix,"tui").c_str()); - } - } - {Stack->push<patharray*>(pdf ? readpath(psname,keep,0.1) : readpath(psname,keep,0.12,-1.0)); return;} -} - -#line 1373 "runtime.in" -// patharray* textpath(string *s, pen p=CURRENTPEN); -void gen_runtime29(stack *Stack) -{ - pen p=vm::pop<pen>(Stack,CURRENTPEN); - string * s=vm::pop<string *>(Stack); -#line 1374 "runtime.in" - array *P=new array(0); - if(s->empty()) {Stack->push<patharray*>(P); return;} - - string prefix=outname(); - spaceToUnderscore(prefix); - string outputname=auxname(prefix,getSetting<string>("textoutformat")); - - string textname=auxname(prefix,getSetting<string>("textextension")); - std::ofstream text(textname.c_str()); - - if(!text) cannotwrite(textname); - - text << getSetting<string>("textprologue") << newl - << p.Font() << newl - << *s << newl - << getSetting<string>("textepilogue") << endl; - text.close(); - - string psname=auxname(prefix,"ps"); - std::ofstream ps(psname.c_str()); - if(!ps) cannotwrite(psname); - - showpath(ps); - - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("textcommand")); - push_split(cmd,getSetting<string>("textcommandOptions")); - cmd.push_back(textname); - iopipestream typesetter(cmd); - - mem::vector<string> cmd2; - cmd2.push_back(getSetting<string>("gs")); - cmd2.push_back("-q"); - cmd2.push_back("-dNOCACHE"); - cmd2.push_back("-dNOPAUSE"); - cmd2.push_back("-dBATCH"); - if(safe) cmd2.push_back("-dSAFER"); - cmd2.push_back("-sDEVICE=epswrite"); - cmd2.push_back("-sOutputFile=-"); - cmd2.push_back("-"); - iopipestream gs(cmd2,"gs","Ghostscript"); - gs.block(false); - - // TODO: Simplify by connecting the pipes directly. - while(true) { - string out; - if(typesetter.isopen()) { - typesetter >> out; - if(!out.empty()) gs << out; - else if(!typesetter.running()) { - typesetter.pipeclose(); - gs.eof(); - } - } - string out2; - gs >> out2; - if(out2.empty() && !gs.running()) break; - ps << out2; - } - ps.close(); - - if(verbose > 2) cout << endl; - - bool keep=getSetting<bool>("keep"); - if(!keep) // Delete temporary files. - unlink(textname.c_str()); - {Stack->push<patharray*>(readpath(psname,keep,0.1)); return;} -} - -#line 1444 "runtime.in" -// patharray* _strokepath(path g, pen p=CURRENTPEN); -void gen_runtime30(stack *Stack) -{ - pen p=vm::pop<pen>(Stack,CURRENTPEN); - path g=vm::pop<path>(Stack); -#line 1445 "runtime.in" - array *P=new array(0); - if(g.size() == 0) {Stack->push<patharray*>(P); return;} - - string prefix=outname(); - spaceToUnderscore(prefix); - string psname=auxname(prefix,"ps"); - bbox b; - psfile ps(psname,false); - ps.prologue(b); - ps.verbatimline(ASYx); - ps.verbatimline(ASYy); - ps.verbatimline("/stroke {"+ASYinit+pathforall+"} bind def"); - ps.resetpen(); - ps.setpen(p); - ps.write(g); - ps.strokepath(); - ps.stroke(); - ps.verbatimline("(M) "+currentpoint); - ps.epilogue(); - ps.close(); - {Stack->push<patharray*>(readpath(psname,getSetting<bool>("keep"))); return;} -} - -#line 1469 "runtime.in" -// void _draw(picture *f, path g, pen p); -void gen_runtime31(stack *Stack) -{ - pen p=vm::pop<pen>(Stack); - path g=vm::pop<path>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1470 "runtime.in" - f->append(new drawPath(g,p)); -} - -#line 1474 "runtime.in" -// void fill(picture *f, patharray *g, pen p=CURRENTPEN, bool copy=true); -void gen_runtime32(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - pen p=vm::pop<pen>(Stack,CURRENTPEN); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1475 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawFill(*copyarray(g),false,p)); -} - -#line 1480 "runtime.in" -// void latticeshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray2 *p, bool copy=true); -void gen_runtime33(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - penarray2 * p=vm::pop<penarray2 *>(Stack); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1482 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawLatticeShade(*copyarray(g),stroke,fillrule,*copyarray(p))); -} - -#line 1487 "runtime.in" -// void axialshade(picture *f, patharray *g, bool stroke=false, pen pena, pair a, pen penb, pair b, bool copy=true); -void gen_runtime34(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - pair b=vm::pop<pair>(Stack); - pen penb=vm::pop<pen>(Stack); - pair a=vm::pop<pair>(Stack); - pen pena=vm::pop<pen>(Stack); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1489 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawAxialShade(*copyarray(g),stroke,pena,a,penb,b)); -} - -#line 1494 "runtime.in" -// void radialshade(picture *f, patharray *g, bool stroke=false, pen pena, pair a, real ra, pen penb, pair b, real rb, bool copy=true); -void gen_runtime35(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - real rb=vm::pop<real>(Stack); - pair b=vm::pop<pair>(Stack); - pen penb=vm::pop<pen>(Stack); - real ra=vm::pop<real>(Stack); - pair a=vm::pop<pair>(Stack); - pen pena=vm::pop<pen>(Stack); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1496 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawRadialShade(*copyarray(g),stroke,pena,a,ra,penb,b,rb)); -} - -#line 1501 "runtime.in" -// void gouraudshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray *p, pairarray *z, Intarray *edges, bool copy=true); -void gen_runtime36(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - Intarray * edges=vm::pop<Intarray *>(Stack); - pairarray * z=vm::pop<pairarray *>(Stack); - penarray * p=vm::pop<penarray *>(Stack); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1504 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - checkArrays(p,z); - checkArrays(z,edges); - f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), - *copyarray(z),*copyarray(edges))); -} - -#line 1512 "runtime.in" -// void gouraudshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray *p, Intarray *edges, bool copy=true); -void gen_runtime37(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - Intarray * edges=vm::pop<Intarray *>(Stack); - penarray * p=vm::pop<penarray *>(Stack); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1515 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - size_t n=checkArrays(p,edges); - size_t m=checkArray(g); - array *z=new array(n); - Int k=0; - Int in=(Int) n; - for(size_t j=0; j < m; ++j) { - path *P=read<path *>(g,j); - assert(P); - Int stop=Min(P->size(),in-k); - mem::vector<solvedKnot>& nodes=P->Nodes(); - for(Int i=0; i < stop; ++i) - (*z)[k++]=nodes[i].point; - } - checkArrays(p,z); - - f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), - *z,*copyarray(edges))); -} - -#line 1536 "runtime.in" -// void tensorshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, penarray2 *p, patharray *b=NULL, pairarray2 *z=emptyarray, bool copy=true); -void gen_runtime38(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - pairarray2 * z=vm::pop<pairarray2 *>(Stack,emptyarray); - patharray * b=vm::pop<patharray *>(Stack,NULL); - penarray2 * p=vm::pop<penarray2 *>(Stack); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1539 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - array *(*copyarray2)(array *a)=copy ? copyArray2: nop; - if(b == NULL) b=g; - size_t n=checkArrays(p,b); - size_t nz=checkArray(z); - if(nz != 0) - checkEqual(nz,n); - f->append(new drawTensorShade(*copyarray(g),stroke,fillrule,*copyarray2(p), - *copyarray(b),*copyarray2(z))); -} - -#line 1551 "runtime.in" -// void functionshade(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, string shader=emptystring, bool copy=true); -void gen_runtime39(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - string shader=vm::pop<string>(Stack,emptystring); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1554 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawFunctionShade(*copyarray(g),stroke,fillrule,shader)); -} - -// Clip a picture to a superpath using the given fill rule. -// Subsequent additions to the picture will not be affected by the clipping. -#line 1561 "runtime.in" -// void clip(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, bool copy=true); -void gen_runtime40(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1563 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - drawClipBegin *begin=new drawClipBegin(*copyarray(g),stroke,fillrule,true); - f->enclose(begin,new drawClipEnd(true,begin)); -} - -#line 1569 "runtime.in" -// void beginclip(picture *f, patharray *g, bool stroke=false, pen fillrule=CURRENTPEN, bool copy=true); -void gen_runtime41(stack *Stack) -{ - bool copy=vm::pop<bool>(Stack,true); - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - bool stroke=vm::pop<bool>(Stack,false); - patharray * g=vm::pop<patharray *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1571 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawClipBegin(*copyarray(g),stroke,fillrule,false)); -} - -#line 1576 "runtime.in" -// void endclip(picture *f); -void gen_runtime42(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1577 "runtime.in" - f->append(new drawClipEnd(false)); -} - -#line 1581 "runtime.in" -// void gsave(picture *f); -void gen_runtime43(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1582 "runtime.in" - f->append(new drawGsave()); -} - -#line 1586 "runtime.in" -// void grestore(picture *f); -void gen_runtime44(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1587 "runtime.in" - f->append(new drawGrestore()); -} - -#line 1591 "runtime.in" -// void begingroup(picture *f); -void gen_runtime45(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1592 "runtime.in" - f->append(new drawBegin()); -} - -#line 1596 "runtime.in" -// void endgroup(picture *f); -void gen_runtime46(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1597 "runtime.in" - f->append(new drawEnd()); -} - -#line 1601 "runtime.in" -// void add(picture *dest, picture *src); -void gen_runtime47(stack *Stack) -{ - picture * src=vm::pop<picture *>(Stack); - picture * dest=vm::pop<picture *>(Stack); -#line 1602 "runtime.in" - dest->add(*src); -} - -#line 1606 "runtime.in" -// void prepend(picture *dest, picture *src); -void gen_runtime48(stack *Stack) -{ - picture * src=vm::pop<picture *>(Stack); - picture * dest=vm::pop<picture *>(Stack); -#line 1607 "runtime.in" - dest->prepend(*src); -} - -#line 1611 "runtime.in" -// void postscript(picture *f, string s); -void gen_runtime49(stack *Stack) -{ - string s=vm::pop<string>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1612 "runtime.in" - f->append(new drawVerbatim(PostScript,s)); -} - -#line 1616 "runtime.in" -// void tex(picture *f, string s); -void gen_runtime50(stack *Stack) -{ - string s=vm::pop<string>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1617 "runtime.in" - f->append(new drawVerbatim(TeX,s)); -} - -#line 1621 "runtime.in" -// void postscript(picture *f, string s, pair min, pair max); -void gen_runtime51(stack *Stack) -{ - pair max=vm::pop<pair>(Stack); - pair min=vm::pop<pair>(Stack); - string s=vm::pop<string>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1622 "runtime.in" - f->append(new drawVerbatim(PostScript,s,min,max)); -} - -#line 1626 "runtime.in" -// void tex(picture *f, string s, pair min, pair max); -void gen_runtime52(stack *Stack) -{ - pair max=vm::pop<pair>(Stack); - pair min=vm::pop<pair>(Stack); - string s=vm::pop<string>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1627 "runtime.in" - f->append(new drawVerbatim(TeX,s,min,max)); -} - -#line 1631 "runtime.in" -// void texpreamble(string s); -void gen_runtime53(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 1632 "runtime.in" - string t=s+"\n"; - processDataStruct &pd=processData(); - pd.TeXpipepreamble.push_back(t); - pd.TeXpreamble.push_back(t); -} - -#line 1639 "runtime.in" -// void deletepreamble(); -void gen_runtime54(stack *) -{ -#line 1640 "runtime.in" - if(getSetting<bool>("inlinetex")) { - unlink(auxname(outname(),"pre").c_str()); - } -} - -#line 1646 "runtime.in" -// void _labelpath(picture *f, string s, string size, path g, string justify, pair offset, pen p); -void gen_runtime55(stack *Stack) -{ - pen p=vm::pop<pen>(Stack); - pair offset=vm::pop<pair>(Stack); - string justify=vm::pop<string>(Stack); - path g=vm::pop<path>(Stack); - string size=vm::pop<string>(Stack); - string s=vm::pop<string>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1648 "runtime.in" - f->append(new drawLabelPath(s,size,g,justify,offset,p)); -} - -#line 1652 "runtime.in" -// void texreset(); -void gen_runtime56(stack *) -{ -#line 1653 "runtime.in" - processDataStruct &pd=processData(); - pd.TeXpipepreamble.clear(); - pd.TeXpreamble.clear(); - pd.tex.pipeclose(); -} - -#line 1660 "runtime.in" -// void layer(picture *f); -void gen_runtime57(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1661 "runtime.in" - f->append(new drawLayer()); -} - -#line 1665 "runtime.in" -// void newpage(picture *f); -void gen_runtime58(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 1666 "runtime.in" - f->append(new drawNewPage()); -} - -#line 1670 "runtime.in" -// void _image(picture *f, realarray2 *data, pair initial, pair final, penarray *palette=NULL, transform t=identity, bool copy=true, bool antialias=false); -void gen_runtime59(stack *Stack) -{ - bool antialias=vm::pop<bool>(Stack,false); - bool copy=vm::pop<bool>(Stack,true); - transform t=vm::pop<transform>(Stack,identity); - penarray * palette=vm::pop<penarray *>(Stack,NULL); - pair final=vm::pop<pair>(Stack); - pair initial=vm::pop<pair>(Stack); - realarray2 * data=vm::pop<realarray2 *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1673 "runtime.in" - array *(*copyarray)(array *a)=copy ? copyArray: nop; - array *(*copyarray2)(array *a)=copy ? copyArray2: nop; - f->append(new drawImage(*copyarray2(data),*copyarray(palette), - t*matrix(initial,final),antialias)); -} - -#line 1680 "runtime.in" -// void _image(picture *f, penarray2 *data, pair initial, pair final, transform t=identity, bool copy=true, bool antialias=false); -void gen_runtime60(stack *Stack) -{ - bool antialias=vm::pop<bool>(Stack,false); - bool copy=vm::pop<bool>(Stack,true); - transform t=vm::pop<transform>(Stack,identity); - pair final=vm::pop<pair>(Stack); - pair initial=vm::pop<pair>(Stack); - penarray2 * data=vm::pop<penarray2 *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 1682 "runtime.in" - array *(*copyarray2)(array *a)=copy ? copyArray2: nop; - f->append(new drawImage(*copyarray2(data),t*matrix(initial,final),antialias)); -} - -#line 1687 "runtime.in" -// string nativeformat(); -void gen_runtime61(stack *Stack) -{ -#line 1688 "runtime.in" - {Stack->push<string>(nativeformat()); return;} -} - -#line 1692 "runtime.in" -// bool latex(); -void gen_runtime62(stack *Stack) -{ -#line 1693 "runtime.in" - {Stack->push<bool>(latex(getSetting<string>("tex"))); return;} -} - -#line 1697 "runtime.in" -// bool pdf(); -void gen_runtime63(stack *Stack) -{ -#line 1698 "runtime.in" - {Stack->push<bool>(pdf(getSetting<string>("tex"))); return;} -} - -#line 1702 "runtime.in" -// void shipout(string prefix=emptystring, picture *f, picture *preamble=NULL, string format=emptystring, bool wait=false, bool view=true, callableTransform *xform); -void gen_runtime64(stack *Stack) -{ - callableTransform * xform=vm::pop<callableTransform *>(Stack); - bool view=vm::pop<bool>(Stack,true); - bool wait=vm::pop<bool>(Stack,false); - string format=vm::pop<string>(Stack,emptystring); - picture * preamble=vm::pop<picture *>(Stack,NULL); - picture * f=vm::pop<picture *>(Stack); - string prefix=vm::pop<string>(Stack,emptystring); -#line 1705 "runtime.in" - if(prefix.empty()) prefix=outname(); - - picture *result=new picture; - unsigned level=0; - picture::nodelist::iterator p; - for(p = f->nodes.begin(); p != f->nodes.end(); ++p) { - xform->call(Stack); - transform t=pop<transform>(Stack); - static transform Zero=transform(0.0,0.0,0.0,0.0,0.0,0.0); - bool Delete=(t == Zero); - picture *group=new picture; - assert(*p); - if((*p)->endgroup()) error(nobegin); - if((*p)->begingroup()) { - ++level; - while(p != f->nodes.end() && level) { - if(!Delete) { - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - } - ++p; - if(p == f->nodes.end()) break; - assert(*p); - if((*p)->begingroup()) ++level; - if((*p)->endgroup()) { - if(level) --level; - else error(nobegin); - } - } - } - if(p == f->nodes.end()) break; - assert(*p); - if(!Delete) { - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - result->add(*group); - } - } - - result->shipout(preamble,prefix,format,0.0,wait,view); -} - -#line 1748 "runtime.in" -// void shipout3(string prefix, picture *f, string format=emptystring, real width, real height, real angle, real zoom, triple m, triple M, pair shift, realarray2 *t, realarray *background, triplearray *lights, realarray2 *diffuse, realarray2 *ambient, realarray2 *specular, bool viewportlighting, bool view=true); -void gen_runtime65(stack *Stack) -{ - bool view=vm::pop<bool>(Stack,true); - bool viewportlighting=vm::pop<bool>(Stack); - realarray2 * specular=vm::pop<realarray2 *>(Stack); - realarray2 * ambient=vm::pop<realarray2 *>(Stack); - realarray2 * diffuse=vm::pop<realarray2 *>(Stack); - triplearray * lights=vm::pop<triplearray *>(Stack); - realarray * background=vm::pop<realarray *>(Stack); - realarray2 * t=vm::pop<realarray2 *>(Stack); - pair shift=vm::pop<pair>(Stack); - triple M=vm::pop<triple>(Stack); - triple m=vm::pop<triple>(Stack); - real zoom=vm::pop<real>(Stack); - real angle=vm::pop<real>(Stack); - real height=vm::pop<real>(Stack); - real width=vm::pop<real>(Stack); - string format=vm::pop<string>(Stack,emptystring); - picture * f=vm::pop<picture *>(Stack); - string prefix=vm::pop<string>(Stack); -#line 1754 "runtime.in" - size_t n=checkArrays(lights,diffuse); - checkEqual(n,checkArray(ambient)); - checkEqual(n,checkArray(specular)); - - f->shipout3(prefix,format,width,height,angle,zoom,m,M,shift, - copyArray2C(t,true,4), - copyArrayC(background),n,copyTripleArrayC(lights), - copyArray2C(diffuse,false,4),copyArray2C(ambient,false,4), - copyArray2C(specular,false,4),viewportlighting,view); -} - -#line 1766 "runtime.in" -// void shipout3(string prefix, picture *f); -void gen_runtime66(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); - string prefix=vm::pop<string>(Stack); -#line 1767 "runtime.in" - f->shipout3(prefix); -} - -#line 1771 "runtime.in" -// void deconstruct(picture *f, picture *preamble=NULL, real magnification=1, callableTransform *xform); -void gen_runtime67(stack *Stack) -{ - callableTransform * xform=vm::pop<callableTransform *>(Stack); - real magnification=vm::pop<real>(Stack,1); - picture * preamble=vm::pop<picture *>(Stack,NULL); - picture * f=vm::pop<picture *>(Stack); -#line 1773 "runtime.in" - unsigned level=0; - unsigned n=0; - - string prefix=outname(); - const string xformat="png"; - - static long arg_max=sysconf(_SC_ARG_MAX); - const unsigned maxargs=::min(arg_max/(prefix.size()+xformat.size()+25ul), - 256ul); - - cout << maxargs << newl; - - string preformat=nativeformat(); - const string Done="Done"; - const string Error="Error"; - - mem::vector<string> cmd; - - // Enforce ghostscript limitations. - magnification=::max(magnification,0.0001); - real res=::min(::max(magnification*72.0,2.0),8192.0); - - const char *converter=NULL, *hint=NULL; - - if(magnification > 0.0) { - mem::list<string> nameStack; - string outname; - unsigned arg=0; - unsigned batch=0; - for(picture::nodelist::iterator p=f->nodes.begin();;) { - if(p == f->nodes.end()) break; - if(arg == 0) { - cmd.clear(); - ostringstream buf; - buf << batch << "_"; - outname=buildname(prefix+buf.str()+"%d",xformat,""); - converter="gs"; - hint="Ghostscript"; - cmd.push_back(getSetting<string>(converter)); - cmd.push_back("-q"); - cmd.push_back("-dNOPAUSE"); - cmd.push_back("-dBATCH"); - cmd.push_back("-sDEVICE=pngalpha"); - cmd.push_back("-dEPSCrop"); - if(safe) - cmd.push_back("-dSAFER"); - cmd.push_back("-r"+String(res)+"x"+String(res)); - cmd.push_back("-sOutputFile="+outname); - } - - picture *group=new picture; - xform->call(Stack); - transform t=pop<transform>(Stack); - assert(*p); - if((*p)->endgroup()) { - cout << Error << endl; - error(nobegin); - } - if((*p)->begingroup()) { - ++level; - while(p != f->nodes.end() && level) { - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - ++p; - if(p == f->nodes.end()) break; - assert(*p); - if((*p)->begingroup()) ++level; - if((*p)->endgroup()) { - if(level) --level; - else { - cout << Error << endl; - error(nobegin); - } - } - } - } - if(p != f->nodes.end()) { - assert(*p); - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - bbox b; - ostringstream buf; - buf << prefix << "_" << n; - group->shipout(preamble,buf.str(),preformat,magnification,false,false); - string Preformat=group->Transparency() ? "pdf" : preformat; - string name=buildname(buf.str(),Preformat); - nameStack.push_back(name); - cmd.push_back(name); - b=group->bounds(); - b *= magnification; - - cout << b << newl; - ++n; - ++p; - ++arg; - } - - if(p == f->nodes.end() || arg >= maxargs) { - arg=0; - ++batch; - cout.flush(); - - int status=System(cmd,0,true,converter,hint); - if(status) { - cout << Error << endl; - error("deconstruct failed"); - } - } - } - - if(!getSetting<bool>("keep")) { - for(mem::list<string>::iterator p=nameStack.begin(); - p != nameStack.end(); ++p) - unlink(p->c_str()); - } - - cout << Done << endl; - } -} - -#line 1894 "runtime.in" -// void purge(Int divisor=0); -void gen_runtime68(stack *Stack) -{ - Int divisor=vm::pop<Int>(Stack,0); -#line 1895 "runtime.in" - purge(divisor); -} - - // Pen operations -#line 1901 "runtime.in" +#line 278 "runtime.in" void newPen(stack *Stack) { -#line 1902 "runtime.in" +#line 279 "runtime.in" {Stack->push<pen>(pen()); return;} } -#line 1907 "runtime.in" +#line 284 "runtime.in" // bool ==(pen a, pen b); -void gen_runtime70(stack *Stack) +void gen_runtime12(stack *Stack) { pen b=vm::pop<pen>(Stack); pen a=vm::pop<pen>(Stack); -#line 1908 "runtime.in" +#line 285 "runtime.in" {Stack->push<bool>(a == b); return;} } -#line 1912 "runtime.in" +#line 289 "runtime.in" // bool !=(pen a, pen b); -void gen_runtime71(stack *Stack) +void gen_runtime13(stack *Stack) { pen b=vm::pop<pen>(Stack); pen a=vm::pop<pen>(Stack); -#line 1913 "runtime.in" +#line 290 "runtime.in" {Stack->push<bool>(a != b); return;} } -#line 1917 "runtime.in" +#line 294 "runtime.in" // pen +(pen a, pen b); -void gen_runtime72(stack *Stack) +void gen_runtime14(stack *Stack) { pen b=vm::pop<pen>(Stack); pen a=vm::pop<pen>(Stack); -#line 1918 "runtime.in" +#line 295 "runtime.in" {Stack->push<pen>(a+b); return;} } -#line 1922 "runtime.in" +#line 299 "runtime.in" // pen *(real a, pen b); -void gen_runtime73(stack *Stack) +void gen_runtime15(stack *Stack) { pen b=vm::pop<pen>(Stack); real a=vm::pop<real>(Stack); -#line 1923 "runtime.in" +#line 300 "runtime.in" {Stack->push<pen>(a*b); return;} } -#line 1927 "runtime.in" +#line 304 "runtime.in" // pen *(pen a, real b); -void gen_runtime74(stack *Stack) +void gen_runtime16(stack *Stack) { real b=vm::pop<real>(Stack); pen a=vm::pop<pen>(Stack); -#line 1928 "runtime.in" +#line 305 "runtime.in" {Stack->push<pen>(b*a); return;} } -#line 1932 "runtime.in" +#line 309 "runtime.in" // pair max(pen p); -void gen_runtime75(stack *Stack) +void gen_runtime17(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1933 "runtime.in" +#line 310 "runtime.in" {Stack->push<pair>(p.bounds().Max()); return;} } -#line 1937 "runtime.in" +#line 314 "runtime.in" // pair min(pen p); -void gen_runtime76(stack *Stack) +void gen_runtime18(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1938 "runtime.in" +#line 315 "runtime.in" {Stack->push<pair>(p.bounds().Min()); return;} } // Reset the meaning of pen default attributes. -#line 1943 "runtime.in" +#line 320 "runtime.in" // void resetdefaultpen(); -void gen_runtime77(stack *) +void gen_runtime19(stack *) { -#line 1944 "runtime.in" +#line 321 "runtime.in" processData().defaultpen=camp::pen::initialpen(); } -#line 1948 "runtime.in" +#line 325 "runtime.in" // void defaultpen(pen p); -void gen_runtime78(stack *Stack) +void gen_runtime20(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1949 "runtime.in" +#line 326 "runtime.in" processData().defaultpen=pen(resolvepen,p); } -#line 1953 "runtime.in" +#line 330 "runtime.in" // pen defaultpen(); -void gen_runtime79(stack *Stack) +void gen_runtime21(stack *Stack) { -#line 1954 "runtime.in" +#line 331 "runtime.in" {Stack->push<pen>(processData().defaultpen); return;} } -#line 1958 "runtime.in" +#line 335 "runtime.in" // bool invisible(pen p); -void gen_runtime80(stack *Stack) +void gen_runtime22(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1959 "runtime.in" +#line 336 "runtime.in" {Stack->push<bool>(p.invisible()); return;} } -#line 1963 "runtime.in" +#line 340 "runtime.in" // pen invisible(); -void gen_runtime81(stack *Stack) +void gen_runtime23(stack *Stack) { -#line 1964 "runtime.in" +#line 341 "runtime.in" {Stack->push<pen>(pen(invisiblepen)); return;} } -#line 1968 "runtime.in" +#line 345 "runtime.in" // pen gray(pen p); -void gen_runtime82(stack *Stack) +void gen_runtime24(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1969 "runtime.in" +#line 346 "runtime.in" p.togrey(); {Stack->push<pen>(p); return;} } -#line 1974 "runtime.in" +#line 351 "runtime.in" // pen rgb(pen p); -void gen_runtime83(stack *Stack) +void gen_runtime25(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1975 "runtime.in" +#line 352 "runtime.in" p.torgb(); {Stack->push<pen>(p); return;} } -#line 1980 "runtime.in" +#line 357 "runtime.in" // pen cmyk(pen p); -void gen_runtime84(stack *Stack) +void gen_runtime26(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 1981 "runtime.in" +#line 358 "runtime.in" p.tocmyk(); {Stack->push<pen>(p); return;} } -#line 1986 "runtime.in" +#line 363 "runtime.in" // pen interp(pen a, pen b, real t); -void gen_runtime85(stack *Stack) +void gen_runtime27(stack *Stack) { real t=vm::pop<real>(Stack); pen b=vm::pop<pen>(Stack); pen a=vm::pop<pen>(Stack); -#line 1987 "runtime.in" +#line 364 "runtime.in" {Stack->push<pen>(interpolate(a,b,t)); return;} } -#line 1991 "runtime.in" +#line 368 "runtime.in" // pen rgb(real r, real g, real b); -void gen_runtime86(stack *Stack) +void gen_runtime28(stack *Stack) { real b=vm::pop<real>(Stack); real g=vm::pop<real>(Stack); real r=vm::pop<real>(Stack); -#line 1992 "runtime.in" +#line 369 "runtime.in" {Stack->push<pen>(pen(r,g,b)); return;} } -#line 1996 "runtime.in" +#line 373 "runtime.in" // pen cmyk(real c, real m, real y, real k); -void gen_runtime87(stack *Stack) +void gen_runtime29(stack *Stack) { real k=vm::pop<real>(Stack); real y=vm::pop<real>(Stack); real m=vm::pop<real>(Stack); real c=vm::pop<real>(Stack); -#line 1997 "runtime.in" +#line 374 "runtime.in" {Stack->push<pen>(pen(c,m,y,k)); return;} } -#line 2001 "runtime.in" +#line 378 "runtime.in" // pen gray(real gray); -void gen_runtime88(stack *Stack) +void gen_runtime30(stack *Stack) { real gray=vm::pop<real>(Stack); -#line 2002 "runtime.in" +#line 379 "runtime.in" {Stack->push<pen>(pen(gray)); return;} } -#line 2006 "runtime.in" +#line 383 "runtime.in" // realarray* colors(pen p); -void gen_runtime89(stack *Stack) +void gen_runtime31(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2007 "runtime.in" +#line 384 "runtime.in" size_t n=ColorComponents[p.colorspace()]; array *a=new array(n); @@ -2467,60 +552,60 @@ void gen_runtime89(stack *Stack) {Stack->push<realarray*>(a); return;} } -#line 2034 "runtime.in" +#line 411 "runtime.in" // string colorspace(pen p); -void gen_runtime90(stack *Stack) +void gen_runtime32(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2035 "runtime.in" +#line 412 "runtime.in" string s=ColorDeviceSuffix[p.colorspace()]; std::transform(s.begin(),s.end(),s.begin(),tolower); {Stack->push<string>(s); return;} } -#line 2041 "runtime.in" +#line 418 "runtime.in" // pen pattern(string *s); -void gen_runtime91(stack *Stack) +void gen_runtime33(stack *Stack) { string * s=vm::pop<string *>(Stack); -#line 2042 "runtime.in" +#line 419 "runtime.in" {Stack->push<pen>(pen(setpattern,*s)); return;} } -#line 2046 "runtime.in" +#line 423 "runtime.in" // string pattern(pen p); -void gen_runtime92(stack *Stack) +void gen_runtime34(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2047 "runtime.in" +#line 424 "runtime.in" {Stack->push<string>(p.fillpattern()); return;} } -#line 2051 "runtime.in" +#line 428 "runtime.in" // pen fillrule(Int n); -void gen_runtime93(stack *Stack) +void gen_runtime35(stack *Stack) { Int n=vm::pop<Int>(Stack); -#line 2052 "runtime.in" +#line 429 "runtime.in" {Stack->push<pen>(pen(n >= 0 && n < nFill ? (FillRule) n : DEFFILL)); return;} } -#line 2056 "runtime.in" +#line 433 "runtime.in" // Int fillrule(pen p); -void gen_runtime94(stack *Stack) +void gen_runtime36(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2057 "runtime.in" +#line 434 "runtime.in" {Stack->push<Int>(p.Fillrule()); return;} } -#line 2061 "runtime.in" +#line 438 "runtime.in" // pen opacity(real opacity=1.0, string blend=defaulttransparency); -void gen_runtime95(stack *Stack) +void gen_runtime37(stack *Stack) { string blend=vm::pop<string>(Stack,defaulttransparency); real opacity=vm::pop<real>(Stack,1.0); -#line 2062 "runtime.in" +#line 439 "runtime.in" for(Int i=0; i < nBlendMode; ++i) if(blend == BlendMode[i]) {Stack->push<pen>(pen(Transparency(blend,opacity))); return;} @@ -2529,301 +614,301 @@ void gen_runtime95(stack *Stack) error(buf); } -#line 2071 "runtime.in" +#line 448 "runtime.in" // real opacity(pen p); -void gen_runtime96(stack *Stack) +void gen_runtime38(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2072 "runtime.in" +#line 449 "runtime.in" {Stack->push<real>(p.opacity()); return;} } -#line 2076 "runtime.in" +#line 453 "runtime.in" // string blend(pen p); -void gen_runtime97(stack *Stack) +void gen_runtime39(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2077 "runtime.in" +#line 454 "runtime.in" {Stack->push<string>(p.blend()); return;} } -#line 2081 "runtime.in" +#line 458 "runtime.in" // pen linetype(string *s, real offset=0, bool scale=true, bool adjust=true); -void gen_runtime98(stack *Stack) +void gen_runtime40(stack *Stack) { bool adjust=vm::pop<bool>(Stack,true); bool scale=vm::pop<bool>(Stack,true); real offset=vm::pop<real>(Stack,0); string * s=vm::pop<string *>(Stack); -#line 2082 "runtime.in" +#line 459 "runtime.in" {Stack->push<pen>(pen(LineType(*s,offset,scale,adjust))); return;} } -#line 2086 "runtime.in" +#line 463 "runtime.in" // string linetype(pen p=CURRENTPEN); -void gen_runtime99(stack *Stack) +void gen_runtime41(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2087 "runtime.in" +#line 464 "runtime.in" {Stack->push<string>(p.stroke()); return;} } -#line 2091 "runtime.in" +#line 468 "runtime.in" // real offset(pen p); -void gen_runtime100(stack *Stack) +void gen_runtime42(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2092 "runtime.in" +#line 469 "runtime.in" {Stack->push<real>(p.linetype().offset); return;} } -#line 2096 "runtime.in" +#line 473 "runtime.in" // bool scale(pen p); -void gen_runtime101(stack *Stack) +void gen_runtime43(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2097 "runtime.in" +#line 474 "runtime.in" {Stack->push<bool>(p.linetype().scale); return;} } -#line 2101 "runtime.in" +#line 478 "runtime.in" // bool adjust(pen p); -void gen_runtime102(stack *Stack) +void gen_runtime44(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2102 "runtime.in" +#line 479 "runtime.in" {Stack->push<bool>(p.linetype().adjust); return;} } -#line 2106 "runtime.in" +#line 483 "runtime.in" // pen adjust(pen p, real arclength, bool cyclic); -void gen_runtime103(stack *Stack) +void gen_runtime45(stack *Stack) { bool cyclic=vm::pop<bool>(Stack); real arclength=vm::pop<real>(Stack); pen p=vm::pop<pen>(Stack); -#line 2107 "runtime.in" +#line 484 "runtime.in" {Stack->push<pen>(adjustdash(p,arclength,cyclic)); return;} } -#line 2111 "runtime.in" +#line 488 "runtime.in" // pen linecap(Int n); -void gen_runtime104(stack *Stack) +void gen_runtime46(stack *Stack) { Int n=vm::pop<Int>(Stack); -#line 2112 "runtime.in" +#line 489 "runtime.in" {Stack->push<pen>(pen(setlinecap,n >= 0 && n < nCap ? n : DEFCAP)); return;} } -#line 2116 "runtime.in" +#line 493 "runtime.in" // Int linecap(pen p=CURRENTPEN); -void gen_runtime105(stack *Stack) +void gen_runtime47(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2117 "runtime.in" +#line 494 "runtime.in" {Stack->push<Int>(p.cap()); return;} } -#line 2121 "runtime.in" +#line 498 "runtime.in" // pen linejoin(Int n); -void gen_runtime106(stack *Stack) +void gen_runtime48(stack *Stack) { Int n=vm::pop<Int>(Stack); -#line 2122 "runtime.in" +#line 499 "runtime.in" {Stack->push<pen>(pen(setlinejoin,n >= 0 && n < nJoin ? n : DEFJOIN)); return;} } -#line 2126 "runtime.in" +#line 503 "runtime.in" // Int linejoin(pen p=CURRENTPEN); -void gen_runtime107(stack *Stack) +void gen_runtime49(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2127 "runtime.in" +#line 504 "runtime.in" {Stack->push<Int>(p.join()); return;} } -#line 2131 "runtime.in" +#line 508 "runtime.in" // pen miterlimit(real x); -void gen_runtime108(stack *Stack) +void gen_runtime50(stack *Stack) { real x=vm::pop<real>(Stack); -#line 2132 "runtime.in" +#line 509 "runtime.in" {Stack->push<pen>(pen(setmiterlimit,x >= 1.0 ? x : DEFJOIN)); return;} } -#line 2136 "runtime.in" +#line 513 "runtime.in" // real miterlimit(pen p=CURRENTPEN); -void gen_runtime109(stack *Stack) +void gen_runtime51(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2137 "runtime.in" +#line 514 "runtime.in" {Stack->push<real>(p.miter()); return;} } -#line 2141 "runtime.in" +#line 518 "runtime.in" // pen linewidth(real x); -void gen_runtime110(stack *Stack) +void gen_runtime52(stack *Stack) { real x=vm::pop<real>(Stack); -#line 2142 "runtime.in" +#line 519 "runtime.in" {Stack->push<pen>(pen(setlinewidth,x >= 0.0 ? x : DEFWIDTH)); return;} } -#line 2146 "runtime.in" +#line 523 "runtime.in" // real linewidth(pen p=CURRENTPEN); -void gen_runtime111(stack *Stack) +void gen_runtime53(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2147 "runtime.in" +#line 524 "runtime.in" {Stack->push<real>(p.width()); return;} } -#line 2151 "runtime.in" +#line 528 "runtime.in" // pen fontcommand(string *s); -void gen_runtime112(stack *Stack) +void gen_runtime54(stack *Stack) { string * s=vm::pop<string *>(Stack); -#line 2152 "runtime.in" +#line 529 "runtime.in" {Stack->push<pen>(pen(setfont,*s)); return;} } -#line 2156 "runtime.in" +#line 533 "runtime.in" // string font(pen p=CURRENTPEN); -void gen_runtime113(stack *Stack) +void gen_runtime55(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2157 "runtime.in" +#line 534 "runtime.in" {Stack->push<string>(p.Font()); return;} } -#line 2161 "runtime.in" +#line 538 "runtime.in" // pen fontsize(real size, real lineskip); -void gen_runtime114(stack *Stack) +void gen_runtime56(stack *Stack) { real lineskip=vm::pop<real>(Stack); real size=vm::pop<real>(Stack); -#line 2162 "runtime.in" +#line 539 "runtime.in" {Stack->push<pen>(pen(setfontsize,size > 0.0 ? size : 0.0, lineskip > 0.0 ? lineskip : 0.0)); return;} } -#line 2167 "runtime.in" +#line 544 "runtime.in" // real fontsize(pen p=CURRENTPEN); -void gen_runtime115(stack *Stack) +void gen_runtime57(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2168 "runtime.in" +#line 545 "runtime.in" {Stack->push<real>(p.size()); return;} } -#line 2172 "runtime.in" +#line 549 "runtime.in" // real lineskip(pen p=CURRENTPEN); -void gen_runtime116(stack *Stack) +void gen_runtime58(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2173 "runtime.in" +#line 550 "runtime.in" {Stack->push<real>(p.Lineskip()); return;} } -#line 2177 "runtime.in" +#line 554 "runtime.in" // pen overwrite(Int n); -void gen_runtime117(stack *Stack) +void gen_runtime59(stack *Stack) { Int n=vm::pop<Int>(Stack); -#line 2178 "runtime.in" +#line 555 "runtime.in" {Stack->push<pen>(pen(setoverwrite,n >= 0 && n < nOverwrite ? (overwrite_t) n : DEFWRITE)); return;} } -#line 2183 "runtime.in" +#line 560 "runtime.in" // Int overwrite(pen p=CURRENTPEN); -void gen_runtime118(stack *Stack) +void gen_runtime60(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2184 "runtime.in" +#line 561 "runtime.in" {Stack->push<Int>(p.Overwrite()); return;} } -#line 2188 "runtime.in" +#line 565 "runtime.in" // pen basealign(Int n); -void gen_runtime119(stack *Stack) +void gen_runtime61(stack *Stack) { Int n=vm::pop<Int>(Stack); -#line 2189 "runtime.in" +#line 566 "runtime.in" {Stack->push<pen>(pen(n >= 0 && n < nBaseLine ? (BaseLine) n : DEFBASE)); return;} } -#line 2193 "runtime.in" +#line 570 "runtime.in" // Int basealign(pen p=CURRENTPEN); -void gen_runtime120(stack *Stack) +void gen_runtime62(stack *Stack) { pen p=vm::pop<pen>(Stack,CURRENTPEN); -#line 2194 "runtime.in" +#line 571 "runtime.in" {Stack->push<Int>(p.Baseline()); return;} } -#line 2198 "runtime.in" +#line 575 "runtime.in" // transform transform(pen p); -void gen_runtime121(stack *Stack) +void gen_runtime63(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2199 "runtime.in" +#line 576 "runtime.in" {Stack->push<transform>(p.getTransform()); return;} } -#line 2203 "runtime.in" +#line 580 "runtime.in" // path nib(pen p); -void gen_runtime122(stack *Stack) +void gen_runtime64(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2204 "runtime.in" +#line 581 "runtime.in" {Stack->push<path>(p.Path()); return;} } -#line 2208 "runtime.in" +#line 585 "runtime.in" // pen makepen(path p); -void gen_runtime123(stack *Stack) +void gen_runtime65(stack *Stack) { path p=vm::pop<path>(Stack); -#line 2209 "runtime.in" +#line 586 "runtime.in" {Stack->push<pen>(pen(p)); return;} } -#line 2213 "runtime.in" +#line 590 "runtime.in" // pen colorless(pen p); -void gen_runtime124(stack *Stack) +void gen_runtime66(stack *Stack) { pen p=vm::pop<pen>(Stack); -#line 2214 "runtime.in" +#line 591 "runtime.in" p.colorless(); {Stack->push<pen>(p); return;} } // Interactive mode -#line 2220 "runtime.in" +#line 597 "runtime.in" // bool interactive(); -void gen_runtime125(stack *Stack) +void gen_runtime67(stack *Stack) { -#line 2221 "runtime.in" +#line 598 "runtime.in" {Stack->push<bool>(interact::interactive); return;} } -#line 2226 "runtime.in" +#line 603 "runtime.in" // bool uptodate(); -void gen_runtime126(stack *Stack) +void gen_runtime68(stack *Stack) { -#line 2227 "runtime.in" +#line 604 "runtime.in" {Stack->push<bool>(interact::uptodate); return;} } // System commands -#line 2233 "runtime.in" +#line 610 "runtime.in" // Int system(stringarray *s); -void gen_runtime127(stack *Stack) +void gen_runtime69(stack *Stack) { stringarray * s=vm::pop<stringarray *>(Stack); -#line 2234 "runtime.in" +#line 611 "runtime.in" if(safe) error("system() call disabled; override with option -nosafe"); size_t size=checkArray(s); if(size == 0) {Stack->push<Int>(0); return;} @@ -2833,57 +918,57 @@ void gen_runtime127(stack *Stack) {Stack->push<Int>(System(cmd)); return;} } -#line 2245 "runtime.in" +#line 622 "runtime.in" // bool view(); -void gen_runtime128(stack *Stack) +void gen_runtime70(stack *Stack) { -#line 2246 "runtime.in" +#line 623 "runtime.in" {Stack->push<bool>(view()); return;} } -#line 2250 "runtime.in" +#line 627 "runtime.in" // string asydir(); -void gen_runtime129(stack *Stack) +void gen_runtime71(stack *Stack) { -#line 2251 "runtime.in" +#line 628 "runtime.in" {Stack->push<string>(systemDir); return;} } -#line 2255 "runtime.in" +#line 632 "runtime.in" // string locale(string s=emptystring); -void gen_runtime130(stack *Stack) +void gen_runtime72(stack *Stack) { string s=vm::pop<string>(Stack,emptystring); -#line 2256 "runtime.in" +#line 633 "runtime.in" char *L=setlocale(LC_ALL,s.empty() ? NULL : s.c_str()); {Stack->push<string>(L != NULL ? string(L) : ""); return;} } -#line 2261 "runtime.in" +#line 638 "runtime.in" // void abort(string s=emptystring); -void gen_runtime131(stack *Stack) +void gen_runtime73(stack *Stack) { string s=vm::pop<string>(Stack,emptystring); -#line 2262 "runtime.in" +#line 639 "runtime.in" if(s.empty()) throw handled_error(); error(s.c_str()); } -#line 2267 "runtime.in" +#line 644 "runtime.in" // void exit(); -void gen_runtime132(stack *) +void gen_runtime74(stack *) { -#line 2268 "runtime.in" +#line 645 "runtime.in" throw quit(); } -#line 2272 "runtime.in" +#line 649 "runtime.in" // void assert(bool b, string s=emptystring); -void gen_runtime133(stack *Stack) +void gen_runtime75(stack *Stack) { string s=vm::pop<string>(Stack,emptystring); bool b=vm::pop<bool>(Stack); -#line 2273 "runtime.in" +#line 650 "runtime.in" flush(cout); if(!b) { ostringstream buf; @@ -2893,34 +978,34 @@ void gen_runtime133(stack *Stack) } } -#line 2283 "runtime.in" +#line 660 "runtime.in" // void sleep(Int seconds); -void gen_runtime134(stack *Stack) +void gen_runtime76(stack *Stack) { Int seconds=vm::pop<Int>(Stack); -#line 2284 "runtime.in" +#line 661 "runtime.in" if(seconds <= 0) return; sleep(seconds); } -#line 2289 "runtime.in" +#line 666 "runtime.in" // void usleep(Int microseconds); -void gen_runtime135(stack *Stack) +void gen_runtime77(stack *Stack) { Int microseconds=vm::pop<Int>(Stack); -#line 2290 "runtime.in" +#line 667 "runtime.in" if(microseconds <= 0) return; usleep((unsigned long) microseconds); } -#line 2295 "runtime.in" +#line 672 "runtime.in" // void _eval(string *s, bool embedded, bool interactiveWrite=false); -void gen_runtime136(stack *Stack) +void gen_runtime78(stack *Stack) { bool interactiveWrite=vm::pop<bool>(Stack,false); bool embedded=vm::pop<bool>(Stack); string * s=vm::pop<string *>(Stack); -#line 2296 "runtime.in" +#line 673 "runtime.in" if(embedded) { trans::coenv *e=Stack->getEnvironment(); vm::interactiveStack *is=dynamic_cast<vm::interactiveStack *>(Stack); @@ -2932,13 +1017,13 @@ void gen_runtime136(stack *Stack) runString(*s,interactiveWrite); } -#line 2308 "runtime.in" +#line 685 "runtime.in" // void _eval(runnable *s, bool embedded); -void gen_runtime137(stack *Stack) +void gen_runtime79(stack *Stack) { bool embedded=vm::pop<bool>(Stack); runnable * s=vm::pop<runnable *>(Stack); -#line 2309 "runtime.in" +#line 686 "runtime.in" absyntax::block *ast=new absyntax::block(s->getPos(), false); ast->add(s); @@ -2953,42 +1038,42 @@ void gen_runtime137(stack *Stack) runCode(ast); } -#line 2324 "runtime.in" +#line 701 "runtime.in" // string location(); -void gen_runtime138(stack *Stack) +void gen_runtime80(stack *Stack) { -#line 2325 "runtime.in" +#line 702 "runtime.in" ostringstream buf; buf << getPos(); {Stack->push<string>(buf.str()); return;} } // Wrapper for the stack::load() method. -#line 2331 "runtime.in" +#line 708 "runtime.in" void loadModule(stack *Stack) { string * index=vm::pop<string *>(Stack); -#line 2332 "runtime.in" +#line 709 "runtime.in" Stack->load(*index); } -#line 2336 "runtime.in" +#line 713 "runtime.in" // string cd(string s=emptystring); -void gen_runtime140(stack *Stack) +void gen_runtime82(stack *Stack) { string s=vm::pop<string>(Stack,emptystring); -#line 2337 "runtime.in" +#line 714 "runtime.in" if(!s.empty() && !globalwrite()) writeDisabled(); {Stack->push<string>(setPath(s.c_str())); return;} } -#line 2342 "runtime.in" +#line 719 "runtime.in" // void list(string *s, bool imports=false); -void gen_runtime141(stack *Stack) +void gen_runtime83(stack *Stack) { bool imports=vm::pop<bool>(Stack,false); string * s=vm::pop<string *>(Stack); -#line 2343 "runtime.in" +#line 720 "runtime.in" if(*s == "-") return; trans::genv ge; symbol *name=symbol::trans(*s); @@ -2997,1014 +1082,19 @@ void gen_runtime141(stack *Stack) } -// Path operations -#line 2353 "runtime.in" -void nullPath(stack *Stack) -{ -#line 2354 "runtime.in" - {Stack->push<path>(nullpath); return;} -} - -#line 2359 "runtime.in" -// bool ==(path a, path b); -void gen_runtime143(stack *Stack) -{ - path b=vm::pop<path>(Stack); - path a=vm::pop<path>(Stack); -#line 2360 "runtime.in" - {Stack->push<bool>(a == b); return;} -} - -#line 2364 "runtime.in" -// bool !=(path a, path b); -void gen_runtime144(stack *Stack) -{ - path b=vm::pop<path>(Stack); - path a=vm::pop<path>(Stack); -#line 2365 "runtime.in" - {Stack->push<bool>(!(a == b)); return;} -} - -#line 2369 "runtime.in" -// pair point(path p, Int t); -void gen_runtime145(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2370 "runtime.in" - {Stack->push<pair>(p.point((Int) t)); return;} -} - -#line 2374 "runtime.in" -// pair point(path p, real t); -void gen_runtime146(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2375 "runtime.in" - {Stack->push<pair>(p.point(t)); return;} -} - -#line 2379 "runtime.in" -// pair precontrol(path p, Int t); -void gen_runtime147(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2380 "runtime.in" - {Stack->push<pair>(p.precontrol((Int) t)); return;} -} - -#line 2384 "runtime.in" -// pair precontrol(path p, real t); -void gen_runtime148(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2385 "runtime.in" - {Stack->push<pair>(p.precontrol(t)); return;} -} - -#line 2389 "runtime.in" -// pair postcontrol(path p, Int t); -void gen_runtime149(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2390 "runtime.in" - {Stack->push<pair>(p.postcontrol((Int) t)); return;} -} - -#line 2394 "runtime.in" -// pair postcontrol(path p, real t); -void gen_runtime150(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2395 "runtime.in" - {Stack->push<pair>(p.postcontrol(t)); return;} -} - -#line 2399 "runtime.in" -// pair dir(path p, Int t, Int sign=0, bool normalize=true); -void gen_runtime151(stack *Stack) -{ - bool normalize=vm::pop<bool>(Stack,true); - Int sign=vm::pop<Int>(Stack,0); - Int t=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2400 "runtime.in" - {Stack->push<pair>(p.dir(t,sign,normalize)); return;} -} - -#line 2404 "runtime.in" -// pair dir(path p, real t, bool normalize=true); -void gen_runtime152(stack *Stack) -{ - bool normalize=vm::pop<bool>(Stack,true); - real t=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2405 "runtime.in" - {Stack->push<pair>(p.dir(t,normalize)); return;} -} - -#line 2409 "runtime.in" -// pair accel(path p, Int t, Int sign=0); -void gen_runtime153(stack *Stack) -{ - Int sign=vm::pop<Int>(Stack,0); - Int t=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2410 "runtime.in" - {Stack->push<pair>(p.accel(t,sign)); return;} -} - -#line 2414 "runtime.in" -// pair accel(path p, real t); -void gen_runtime154(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2415 "runtime.in" - {Stack->push<pair>(p.accel(t)); return;} -} - -#line 2419 "runtime.in" -// real radius(path p, real t); -void gen_runtime155(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2420 "runtime.in" - pair v=p.dir(t,false); - pair a=p.accel(t); - real d=dot(a,v); - real v2=v.abs2(); - real a2=a.abs2(); - real denom=v2*a2-d*d; - real r=v2*sqrt(v2); - {Stack->push<real>(denom > 0 ? r/sqrt(denom) : 0.0); return;} -} - -#line 2431 "runtime.in" -// path reverse(path p); -void gen_runtime156(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2432 "runtime.in" - {Stack->push<path>(p.reverse()); return;} -} - -#line 2436 "runtime.in" -// path subpath(path p, Int a, Int b); -void gen_runtime157(stack *Stack) -{ - Int b=vm::pop<Int>(Stack); - Int a=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2437 "runtime.in" - {Stack->push<path>(p.subpath((Int) a, (Int) b)); return;} -} - -#line 2441 "runtime.in" -// path subpath(path p, real a, real b); -void gen_runtime158(stack *Stack) -{ - real b=vm::pop<real>(Stack); - real a=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2442 "runtime.in" - {Stack->push<path>(p.subpath(a,b)); return;} -} - -#line 2446 "runtime.in" -// path nurb(pair z0, pair z1, pair z2, pair z3, real w0, real w1, real w2, real w3, Int m); -void gen_runtime159(stack *Stack) -{ - Int m=vm::pop<Int>(Stack); - real w3=vm::pop<real>(Stack); - real w2=vm::pop<real>(Stack); - real w1=vm::pop<real>(Stack); - real w0=vm::pop<real>(Stack); - pair z3=vm::pop<pair>(Stack); - pair z2=vm::pop<pair>(Stack); - pair z1=vm::pop<pair>(Stack); - pair z0=vm::pop<pair>(Stack); -#line 2448 "runtime.in" - {Stack->push<path>(nurb(z0,z1,z2,z3,w0,w1,w2,w3,m)); return;} -} - -#line 2452 "runtime.in" -// Int length(path p); -void gen_runtime160(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2453 "runtime.in" - {Stack->push<Int>(p.length()); return;} -} - -#line 2457 "runtime.in" -// bool cyclic(path p); -void gen_runtime161(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2458 "runtime.in" - {Stack->push<bool>(p.cyclic()); return;} -} - -#line 2462 "runtime.in" -// bool straight(path p, Int t); -void gen_runtime162(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path p=vm::pop<path>(Stack); -#line 2463 "runtime.in" - {Stack->push<bool>(p.straight(t)); return;} -} - -#line 2467 "runtime.in" -// path unstraighten(path p); -void gen_runtime163(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2468 "runtime.in" - {Stack->push<path>(p.unstraighten()); return;} -} - -#line 2472 "runtime.in" -// bool piecewisestraight(path p); -void gen_runtime164(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2473 "runtime.in" - {Stack->push<bool>(p.piecewisestraight()); return;} -} - -#line 2477 "runtime.in" -// real arclength(path p); -void gen_runtime165(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2478 "runtime.in" - {Stack->push<real>(p.arclength()); return;} -} - -#line 2482 "runtime.in" -// real arctime(path p, real dval); -void gen_runtime166(stack *Stack) -{ - real dval=vm::pop<real>(Stack); - path p=vm::pop<path>(Stack); -#line 2483 "runtime.in" - {Stack->push<real>(p.arctime(dval)); return;} -} - -#line 2487 "runtime.in" -// real dirtime(path p, pair z); -void gen_runtime167(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); - path p=vm::pop<path>(Stack); -#line 2488 "runtime.in" - {Stack->push<real>(p.directiontime(z)); return;} -} - -#line 2492 "runtime.in" -// realarray* intersect(path p, path q, real fuzz=-1); -void gen_runtime168(stack *Stack) -{ - real fuzz=vm::pop<real>(Stack,-1); - path q=vm::pop<path>(Stack); - path p=vm::pop<path>(Stack); -#line 2493 "runtime.in" - bool exact=fuzz <= 0.0; - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - std::vector<real> S,T; - real s,t; - if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { - array *V=new array(2); - (*V)[0]=s; - (*V)[1]=t; - {Stack->push<realarray*>(V); return;} - } - {Stack->push<realarray*>(new array(0)); return;} -} - -#line 2509 "runtime.in" -// realarray2* intersections(path p, path q, real fuzz=-1); -void gen_runtime169(stack *Stack) -{ - real fuzz=vm::pop<real>(Stack,-1); - path q=vm::pop<path>(Stack); - path p=vm::pop<path>(Stack); -#line 2510 "runtime.in" - bool exact=fuzz <= 0.0; - if(fuzz < 0.0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - real s,t; - std::vector<real> S,T; - intersections(s,t,S,T,p,q,fuzz,false,true); - size_t n=S.size(); - if(n == 0 && !exact) { - if(intersections(s,t,S,T,p,q,fuzz,true,false)) { - array *V=new array(1); - array *Vi=new array(2); - (*V)[0]=Vi; - (*Vi)[0]=s; - (*Vi)[1]=t; - {Stack->push<realarray2*>(V); return;} - } - } - array *V=new array(n); - for(size_t i=0; i < n; ++i) { - array *Vi=new array(2); - (*V)[i]=Vi; - (*Vi)[0]=S[i]; - (*Vi)[1]=T[i]; - } - stable_sort(V->begin(),V->end(),run::compare2<real>()); - {Stack->push<realarray2*>(V); return;} -} - -#line 2540 "runtime.in" -// realarray* intersections(path p, explicit pair a, explicit pair b, real fuzz=-1); -void gen_runtime170(stack *Stack) -{ - real fuzz=vm::pop<real>(Stack,-1); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); - path p=vm::pop<path>(Stack); -#line 2541 "runtime.in" - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(a),length(b))); - std::vector<real> S; - intersections(S,p,a,b,fuzz); - sort(S.begin(),S.end()); - size_t n=S.size(); - array *V=new array(n); - for(size_t i=0; i < n; ++i) - (*V)[i]=S[i]; - {Stack->push<realarray*>(V); return;} -} - -// Return the intersection point of the extensions of the line segments -// PQ and pq. -#line 2557 "runtime.in" -// pair extension(pair P, pair Q, pair p, pair q); -void gen_runtime171(stack *Stack) -{ - pair q=vm::pop<pair>(Stack); - pair p=vm::pop<pair>(Stack); - pair Q=vm::pop<pair>(Stack); - pair P=vm::pop<pair>(Stack); -#line 2558 "runtime.in" - pair ac=P-Q; - pair bd=q-p; - real det=ac.getx()*bd.gety()-ac.gety()*bd.getx(); - if(det == 0) {Stack->push<pair>(pair(infinity,infinity)); return;} - {Stack->push<pair>(P+((p.getx()-P.getx())*bd.gety()-(p.gety()-P.gety())*bd.getx())*ac/det); return;} -} - -#line 2566 "runtime.in" -// Int size(path p); -void gen_runtime172(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2567 "runtime.in" - {Stack->push<Int>(p.size()); return;} -} - -#line 2571 "runtime.in" -// path &(path p, path q); -void gen_runtime173(stack *Stack) -{ - path q=vm::pop<path>(Stack); - path p=vm::pop<path>(Stack); -#line 2572 "runtime.in" - {Stack->push<path>(camp::concat(p,q)); return;} -} - -#line 2576 "runtime.in" -// pair min(path p); -void gen_runtime174(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2577 "runtime.in" - {Stack->push<pair>(p.min()); return;} -} - -#line 2581 "runtime.in" -// pair max(path p); -void gen_runtime175(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2582 "runtime.in" - {Stack->push<pair>(p.max()); return;} -} - -#line 2586 "runtime.in" -// realarray* mintimes(path p); -void gen_runtime176(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2587 "runtime.in" - array *V=new array(2); - pair z=p.mintimes(); - (*V)[0]=z.getx(); - (*V)[1]=z.gety(); - {Stack->push<realarray*>(V); return;} -} - -#line 2595 "runtime.in" -// realarray* maxtimes(path p); -void gen_runtime177(stack *Stack) -{ - path p=vm::pop<path>(Stack); -#line 2596 "runtime.in" - array *V=new array(2); - pair z=p.maxtimes(); - (*V)[0]=z.getx(); - (*V)[1]=z.gety(); - {Stack->push<realarray*>(V); return;} -} - -#line 2604 "runtime.in" -// real relativedistance(real theta, real phi, real t, bool atleast); -void gen_runtime178(stack *Stack) -{ - bool atleast=vm::pop<bool>(Stack); - real t=vm::pop<real>(Stack); - real phi=vm::pop<real>(Stack); - real theta=vm::pop<real>(Stack); -#line 2605 "runtime.in" - {Stack->push<real>(camp::velocity(theta,phi,tension(t,atleast))); return;} -} - -#line 2609 "runtime.in" -// Int windingnumber(patharray *p, pair z); -void gen_runtime179(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); - patharray * p=vm::pop<patharray *>(Stack); -#line 2610 "runtime.in" - {Stack->push<Int>(windingnumber(p,z)); return;} -} - -#line 2614 "runtime.in" -// bool inside(explicit patharray *g, pair z, pen fillrule=CURRENTPEN); -void gen_runtime180(stack *Stack) -{ - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - pair z=vm::pop<pair>(Stack); - patharray * g=vm::pop<patharray *>(Stack); -#line 2615 "runtime.in" - {Stack->push<bool>(fillrule.inside(windingnumber(g,z))); return;} -} - -#line 2619 "runtime.in" -// bool inside(path g, pair z, pen fillrule=CURRENTPEN); -void gen_runtime181(stack *Stack) -{ - pen fillrule=vm::pop<pen>(Stack,CURRENTPEN); - pair z=vm::pop<pair>(Stack); - path g=vm::pop<path>(Stack); -#line 2620 "runtime.in" - {Stack->push<bool>(fillrule.inside(g.windingnumber(z))); return;} -} - -// Determine the side of a--b that c lies on -// (negative=left, zero=on line, positive=right). -#line 2626 "runtime.in" -// real side(pair a, pair b, pair c); -void gen_runtime182(stack *Stack) -{ - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 2627 "runtime.in" - {Stack->push<real>(orient2d(a,b,c)); return;} -} - -// Determine the side of the counterclockwise circle through a,b,c that d -// lies on (negative=inside, 0=on circle, positive=right). -#line 2633 "runtime.in" -// real incircle(pair a, pair b, pair c, pair d); -void gen_runtime183(stack *Stack) -{ - pair d=vm::pop<pair>(Stack); - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 2634 "runtime.in" - {Stack->push<real>(incircle(a.getx(),a.gety(),b.getx(),b.gety(),c.getx(),c.gety(), - d.getx(),d.gety())); return;} -} - - -// Path3 operations -#line 2641 "runtime.in" -// path3 path3(triplearray *pre, triplearray *point, triplearray *post, boolarray *straight, bool cyclic); -void gen_runtime184(stack *Stack) -{ - bool cyclic=vm::pop<bool>(Stack); - boolarray * straight=vm::pop<boolarray *>(Stack); - triplearray * post=vm::pop<triplearray *>(Stack); - triplearray * point=vm::pop<triplearray *>(Stack); - triplearray * pre=vm::pop<triplearray *>(Stack); -#line 2643 "runtime.in" - size_t n=checkArrays(pre,point); - checkEqual(n,checkArray(post)); - checkEqual(n,checkArray(straight)); - mem::vector<solvedKnot3> nodes(n); - for(size_t i=0; i < n; ++i) { - nodes[i].pre=read<triple>(pre,i); - nodes[i].point=read<triple>(point,i); - nodes[i].post=read<triple>(post,i); - nodes[i].straight=read<bool>(straight,i); - } - - {Stack->push<path3>(path3(nodes,(Int) n,cyclic)); return;} -} - -#line 2659 "runtime.in" -void nullPath3(stack *Stack) -{ -#line 2660 "runtime.in" - {Stack->push<path3>(nullpath3); return;} -} - -#line 2664 "runtime.in" -// bool ==(path3 a, path3 b); -void gen_runtime186(stack *Stack) -{ - path3 b=vm::pop<path3>(Stack); - path3 a=vm::pop<path3>(Stack); -#line 2665 "runtime.in" - {Stack->push<bool>(a == b); return;} -} - -#line 2669 "runtime.in" -// bool !=(path3 a, path3 b); -void gen_runtime187(stack *Stack) -{ - path3 b=vm::pop<path3>(Stack); - path3 a=vm::pop<path3>(Stack); -#line 2670 "runtime.in" - {Stack->push<bool>(!(a == b)); return;} -} - -#line 2674 "runtime.in" -// triple point(path3 p, Int t); -void gen_runtime188(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2675 "runtime.in" - {Stack->push<triple>(p.point((Int) t)); return;} -} - -#line 2679 "runtime.in" -// triple point(path3 p, real t); -void gen_runtime189(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2680 "runtime.in" - {Stack->push<triple>(p.point(t)); return;} -} - -#line 2684 "runtime.in" -// triple precontrol(path3 p, Int t); -void gen_runtime190(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2685 "runtime.in" - {Stack->push<triple>(p.precontrol((Int) t)); return;} -} - -#line 2689 "runtime.in" -// triple precontrol(path3 p, real t); -void gen_runtime191(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2690 "runtime.in" - {Stack->push<triple>(p.precontrol(t)); return;} -} - -#line 2694 "runtime.in" -// triple postcontrol(path3 p, Int t); -void gen_runtime192(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2695 "runtime.in" - {Stack->push<triple>(p.postcontrol((Int) t)); return;} -} - -#line 2699 "runtime.in" -// triple postcontrol(path3 p, real t); -void gen_runtime193(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2700 "runtime.in" - {Stack->push<triple>(p.postcontrol(t)); return;} -} - -#line 2704 "runtime.in" -// triple dir(path3 p, Int t, Int sign=0, bool normalize=true); -void gen_runtime194(stack *Stack) -{ - bool normalize=vm::pop<bool>(Stack,true); - Int sign=vm::pop<Int>(Stack,0); - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2705 "runtime.in" - {Stack->push<triple>(p.dir(t,sign,normalize)); return;} -} - -#line 2709 "runtime.in" -// triple dir(path3 p, real t, bool normalize=true); -void gen_runtime195(stack *Stack) -{ - bool normalize=vm::pop<bool>(Stack,true); - real t=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2710 "runtime.in" - {Stack->push<triple>(p.dir(t,normalize)); return;} -} - -#line 2714 "runtime.in" -// triple accel(path3 p, Int t, Int sign=0); -void gen_runtime196(stack *Stack) -{ - Int sign=vm::pop<Int>(Stack,0); - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2715 "runtime.in" - {Stack->push<triple>(p.accel(t,sign)); return;} -} - -#line 2719 "runtime.in" -// triple accel(path3 p, real t); -void gen_runtime197(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2720 "runtime.in" - {Stack->push<triple>(p.accel(t)); return;} -} - -#line 2724 "runtime.in" -// real radius(path3 p, real t); -void gen_runtime198(stack *Stack) -{ - real t=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2725 "runtime.in" - triple v=p.dir(t,false); - triple a=p.accel(t); - real d=dot(a,v); - real v2=v.abs2(); - real a2=a.abs2(); - real denom=v2*a2-d*d; - real r=v2*sqrt(v2); - {Stack->push<real>(denom > 0 ? r/sqrt(denom) : 0.0); return;} -} - -#line 2736 "runtime.in" -// real radius(triple z0, triple c0, triple c1, triple z1, real t); -void gen_runtime199(stack *Stack) -{ - real t=vm::pop<real>(Stack); - triple z1=vm::pop<triple>(Stack); - triple c1=vm::pop<triple>(Stack); - triple c0=vm::pop<triple>(Stack); - triple z0=vm::pop<triple>(Stack); -#line 2737 "runtime.in" - triple v=(3.0*(z1-z0)+9.0*(c0-c1))*t*t+(6.0*(z0+c1)-12.0*c0)*t+3.0*(c0-z0); - triple a=6.0*(z1-z0+3.0*(c0-c1))*t+6.0*(z0+c1)-12.0*c0; - real d=dot(a,v); - real v2=v.abs2(); - real a2=a.abs2(); - real denom=v2*a2-d*d; - real r=v2*sqrt(v2); - {Stack->push<real>(denom > 0 ? r/sqrt(denom) : 0.0); return;} -} - -#line 2748 "runtime.in" -// path3 reverse(path3 p); -void gen_runtime200(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2749 "runtime.in" - {Stack->push<path3>(p.reverse()); return;} -} - -#line 2753 "runtime.in" -// path3 subpath(path3 p, Int a, Int b); -void gen_runtime201(stack *Stack) -{ - Int b=vm::pop<Int>(Stack); - Int a=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2754 "runtime.in" - {Stack->push<path3>(p.subpath((Int) a, (Int) b)); return;} -} - -#line 2758 "runtime.in" -// path3 subpath(path3 p, real a, real b); -void gen_runtime202(stack *Stack) -{ - real b=vm::pop<real>(Stack); - real a=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2759 "runtime.in" - {Stack->push<path3>(p.subpath(a,b)); return;} -} - -#line 2763 "runtime.in" -// Int length(path3 p); -void gen_runtime203(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2764 "runtime.in" - {Stack->push<Int>(p.length()); return;} -} - -#line 2768 "runtime.in" -// bool cyclic(path3 p); -void gen_runtime204(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2769 "runtime.in" - {Stack->push<bool>(p.cyclic()); return;} -} - -#line 2773 "runtime.in" -// bool straight(path3 p, Int t); -void gen_runtime205(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2774 "runtime.in" - {Stack->push<bool>(p.straight(t)); return;} -} - -// Return the component of vector v perpendicular to a unit vector u. -#line 2779 "runtime.in" -// triple perp(triple v, triple u); -void gen_runtime206(stack *Stack) -{ - triple u=vm::pop<triple>(Stack); - triple v=vm::pop<triple>(Stack); -#line 2780 "runtime.in" - {Stack->push<triple>(perp(v,u)); return;} -} - -// Return the maximum perpendicular deviation of segment i of path3 g -// from a straight line. -#line 2786 "runtime.in" -// real straightness(path3 p, Int t); -void gen_runtime207(stack *Stack) -{ - Int t=vm::pop<Int>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2787 "runtime.in" - if(p.straight(t)) {Stack->push<real>(0); return;} - triple z0=p.point(t); - triple u=unit(p.point(t+1)-z0); - {Stack->push<real>(::max(length(perp(p.postcontrol(t)-z0,u)), - length(perp(p.precontrol(t+1)-z0,u)))); return;} -} - -// Return the maximum perpendicular deviation of z0..controls c0 and c1..z1 -// from a straight line. -#line 2797 "runtime.in" -// real straightness(triple z0, triple c0, triple c1, triple z1); -void gen_runtime208(stack *Stack) -{ - triple z1=vm::pop<triple>(Stack); - triple c1=vm::pop<triple>(Stack); - triple c0=vm::pop<triple>(Stack); - triple z0=vm::pop<triple>(Stack); -#line 2798 "runtime.in" - triple u=unit(z1-z0); - {Stack->push<real>(::max(length(perp(c0-z0,u)),length(perp(c1-z0,u)))); return;} -} - -#line 2803 "runtime.in" -// bool piecewisestraight(path3 p); -void gen_runtime209(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2804 "runtime.in" - {Stack->push<bool>(p.piecewisestraight()); return;} -} - -#line 2808 "runtime.in" -// real arclength(path3 p); -void gen_runtime210(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2809 "runtime.in" - {Stack->push<real>(p.arclength()); return;} -} - -#line 2813 "runtime.in" -// real arctime(path3 p, real dval); -void gen_runtime211(stack *Stack) -{ - real dval=vm::pop<real>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2814 "runtime.in" - {Stack->push<real>(p.arctime(dval)); return;} -} - -#line 2818 "runtime.in" -// realarray* intersect(path3 p, path3 q, real fuzz=-1); -void gen_runtime212(stack *Stack) -{ - real fuzz=vm::pop<real>(Stack,-1); - path3 q=vm::pop<path3>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2819 "runtime.in" - bool exact=fuzz <= 0.0; - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - - std::vector<real> S,T; - real s,t; - if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { - array *V=new array(2); - (*V)[0]=s; - (*V)[1]=t; - {Stack->push<realarray*>(V); return;} - } else - {Stack->push<realarray*>(new array(0)); return;} -} - -#line 2836 "runtime.in" -// realarray2* intersections(path3 p, path3 q, real fuzz=-1); -void gen_runtime213(stack *Stack) -{ - real fuzz=vm::pop<real>(Stack,-1); - path3 q=vm::pop<path3>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2837 "runtime.in" - bool exact=fuzz <= 0.0; - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - bool single=!exact; - - real s,t; - std::vector<real> S,T; - bool found=intersections(s,t,S,T,p,q,fuzz,single,exact); - if(!found) {Stack->push<realarray2*>(new array(0)); return;} - array *V; - if(single) { - V=new array(1); - array *Vi=new array(2); - (*V)[0]=Vi; - (*Vi)[0]=s; - (*Vi)[1]=t; - } else { - size_t n=S.size(); - V=new array(n); - for(size_t i=0; i < n; ++i) { - array *Vi=new array(2); - (*V)[i]=Vi; - (*Vi)[0]=S[i]; - (*Vi)[1]=T[i]; - } - } - stable_sort(V->begin(),V->end(),run::compare2<real>()); - {Stack->push<realarray2*>(V); return;} -} - -#line 2869 "runtime.in" -// realarray2* intersections(path3 p, triplearray2 *P, real fuzz=-1); -void gen_runtime214(stack *Stack) -{ - real fuzz=vm::pop<real>(Stack,-1); - triplearray2 * P=vm::pop<triplearray2 *>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2870 "runtime.in" - triple *A=copyTripleArray2C(P,true,4); - if(fuzz <= 0) fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - norm(A,16)); - std::vector<real> T,U,V; - intersections(T,U,V,p,A,fuzz); - delete[] A; - size_t n=T.size(); - array *W=new array(n); - for(size_t i=0; i < n; ++i) { - array *Wi=new array(3); - (*W)[i]=Wi; - (*Wi)[0]=T[i]; - (*Wi)[1]=U[i]; - (*Wi)[2]=V[i]; - } - {Stack->push<realarray2*>(W); return;} // Sorting will done in asy. -} - -#line 2889 "runtime.in" -// Int size(path3 p); -void gen_runtime215(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2890 "runtime.in" - {Stack->push<Int>(p.size()); return;} -} - -#line 2894 "runtime.in" -// path3 &(path3 p, path3 q); -void gen_runtime216(stack *Stack) -{ - path3 q=vm::pop<path3>(Stack); - path3 p=vm::pop<path3>(Stack); -#line 2895 "runtime.in" - {Stack->push<path3>(camp::concat(p,q)); return;} -} - -#line 2899 "runtime.in" -// triple min(path3 p); -void gen_runtime217(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2900 "runtime.in" - {Stack->push<triple>(p.min()); return;} -} - -#line 2904 "runtime.in" -// triple max(path3 p); -void gen_runtime218(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2905 "runtime.in" - {Stack->push<triple>(p.max()); return;} -} - -#line 2909 "runtime.in" -// realarray* mintimes(path3 p); -void gen_runtime219(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2910 "runtime.in" - array *V=new array(3); - triple v=p.mintimes(); - (*V)[0]=v.getx(); - (*V)[1]=v.gety(); - (*V)[2]=v.getz(); - {Stack->push<realarray*>(V); return;} -} - -#line 2919 "runtime.in" -// realarray* maxtimes(path3 p); -void gen_runtime220(stack *Stack) -{ - path3 p=vm::pop<path3>(Stack); -#line 2920 "runtime.in" - array *V=new array(3); - triple v=p.maxtimes(); - (*V)[0]=v.getx(); - (*V)[1]=v.gety(); - (*V)[2]=v.getz(); - {Stack->push<realarray*>(V); return;} -} - -#line 2929 "runtime.in" -// path3 *(realarray2 *t, path3 g); -void gen_runtime221(stack *Stack) -{ - path3 g=vm::pop<path3>(Stack); - realarray2 * t=vm::pop<realarray2 *>(Stack); -#line 2930 "runtime.in" - {Stack->push<path3>(transformed(*t,g)); return;} -} - - // Guide operations -#line 2936 "runtime.in" +#line 730 "runtime.in" void nullGuide(stack *Stack) { -#line 2937 "runtime.in" +#line 731 "runtime.in" {Stack->push<guide*>(new pathguide(path())); return;} } -#line 2942 "runtime.in" +#line 736 "runtime.in" void dotsGuide(stack *Stack) { guidearray * a=vm::pop<guidearray *>(Stack); -#line 2943 "runtime.in" +#line 737 "runtime.in" guidevector v; size_t size=checkArray(a); for (size_t i=0; i < size; ++i) @@ -4013,11 +1103,11 @@ void dotsGuide(stack *Stack) {Stack->push<guide*>(new multiguide(v)); return;} } -#line 2952 "runtime.in" +#line 746 "runtime.in" void dashesGuide(stack *Stack) { guidearray * a=vm::pop<guidearray *>(Stack); -#line 2953 "runtime.in" +#line 747 "runtime.in" static camp::curlSpec curly; static specguide curlout(&curly, camp::OUT); static specguide curlin(&curly, camp::IN); @@ -4043,179 +1133,179 @@ void dashesGuide(stack *Stack) {Stack->push<guide*>(new multiguide(v)); return;} } -#line 2979 "runtime.in" +#line 773 "runtime.in" void newCycleToken(stack *Stack) { -#line 2980 "runtime.in" +#line 774 "runtime.in" {Stack->push<cycleToken>(cycleToken()); return;} } -#line 2984 "runtime.in" +#line 778 "runtime.in" // guide* operator cast(cycleToken tok); -void gen_runtime226(stack *Stack) +void gen_runtime88(stack *Stack) { cycleToken tok=vm::pop<cycleToken>(Stack); -#line 2985 "runtime.in" +#line 779 "runtime.in" // Avoid unused variable warning messages. unused(&tok); {Stack->push<guide*>(new cycletokguide()); return;} } -#line 2991 "runtime.in" +#line 785 "runtime.in" // guide* operator spec(pair z, Int p); -void gen_runtime227(stack *Stack) +void gen_runtime89(stack *Stack) { Int p=vm::pop<Int>(Stack); pair z=vm::pop<pair>(Stack); -#line 2992 "runtime.in" +#line 786 "runtime.in" camp::side d=(camp::side) p; camp::dirSpec *sp=new camp::dirSpec(z); {Stack->push<guide*>(new specguide(sp,d)); return;} } -#line 2999 "runtime.in" +#line 793 "runtime.in" // curlSpecifier operator curl(real gamma, Int p); -void gen_runtime228(stack *Stack) +void gen_runtime90(stack *Stack) { Int p=vm::pop<Int>(Stack); real gamma=vm::pop<real>(Stack); -#line 3000 "runtime.in" +#line 794 "runtime.in" camp::side s=(camp::side) p; {Stack->push<curlSpecifier>(curlSpecifier(gamma,s)); return;} } -#line 3005 "runtime.in" +#line 799 "runtime.in" void curlSpecifierValuePart(stack *Stack) { curlSpecifier spec=vm::pop<curlSpecifier>(Stack); -#line 3006 "runtime.in" +#line 800 "runtime.in" {Stack->push<real>(spec.getValue()); return;} } -#line 3010 "runtime.in" +#line 804 "runtime.in" void curlSpecifierSidePart(stack *Stack) { curlSpecifier spec=vm::pop<curlSpecifier>(Stack); -#line 3011 "runtime.in" +#line 805 "runtime.in" {Stack->push<Int>(spec.getSide()); return;} } -#line 3015 "runtime.in" +#line 809 "runtime.in" // guide* operator cast(curlSpecifier spec); -void gen_runtime231(stack *Stack) +void gen_runtime93(stack *Stack) { curlSpecifier spec=vm::pop<curlSpecifier>(Stack); -#line 3016 "runtime.in" +#line 810 "runtime.in" {Stack->push<guide*>(new specguide(spec)); return;} } -#line 3020 "runtime.in" +#line 814 "runtime.in" // tensionSpecifier operator tension(real tout, real tin, bool atleast); -void gen_runtime232(stack *Stack) +void gen_runtime94(stack *Stack) { bool atleast=vm::pop<bool>(Stack); real tin=vm::pop<real>(Stack); real tout=vm::pop<real>(Stack); -#line 3021 "runtime.in" +#line 815 "runtime.in" {Stack->push<tensionSpecifier>(tensionSpecifier(tout, tin, atleast)); return;} } -#line 3025 "runtime.in" +#line 819 "runtime.in" void tensionSpecifierOutPart(stack *Stack) { tensionSpecifier t=vm::pop<tensionSpecifier>(Stack); -#line 3026 "runtime.in" +#line 820 "runtime.in" {Stack->push<real>(t.getOut()); return;} } -#line 3030 "runtime.in" +#line 824 "runtime.in" void tensionSpecifierInPart(stack *Stack) { tensionSpecifier t=vm::pop<tensionSpecifier>(Stack); -#line 3031 "runtime.in" +#line 825 "runtime.in" {Stack->push<real>(t.getIn()); return;} } -#line 3035 "runtime.in" +#line 829 "runtime.in" void tensionSpecifierAtleastPart(stack *Stack) { tensionSpecifier t=vm::pop<tensionSpecifier>(Stack); -#line 3036 "runtime.in" +#line 830 "runtime.in" {Stack->push<bool>(t.getAtleast()); return;} } -#line 3040 "runtime.in" +#line 834 "runtime.in" // guide* operator cast(tensionSpecifier t); -void gen_runtime236(stack *Stack) +void gen_runtime98(stack *Stack) { tensionSpecifier t=vm::pop<tensionSpecifier>(Stack); -#line 3041 "runtime.in" +#line 835 "runtime.in" {Stack->push<guide*>(new tensionguide(t)); return;} } -#line 3045 "runtime.in" +#line 839 "runtime.in" // guide* operator controls(pair zout, pair zin); -void gen_runtime237(stack *Stack) +void gen_runtime99(stack *Stack) { pair zin=vm::pop<pair>(Stack); pair zout=vm::pop<pair>(Stack); -#line 3046 "runtime.in" +#line 840 "runtime.in" {Stack->push<guide*>(new controlguide(zout, zin)); return;} } -#line 3050 "runtime.in" +#line 844 "runtime.in" // Int size(guide *g); -void gen_runtime238(stack *Stack) +void gen_runtime100(stack *Stack) { guide * g=vm::pop<guide *>(Stack); -#line 3051 "runtime.in" +#line 845 "runtime.in" flatguide f; g->flatten(f,false); {Stack->push<Int>(f.size()); return;} } -#line 3057 "runtime.in" +#line 851 "runtime.in" // Int length(guide *g); -void gen_runtime239(stack *Stack) +void gen_runtime101(stack *Stack) { guide * g=vm::pop<guide *>(Stack); -#line 3058 "runtime.in" +#line 852 "runtime.in" flatguide f; g->flatten(f,false); {Stack->push<Int>(g->cyclic() ? f.size() : f.size()-1); return;} } -#line 3064 "runtime.in" +#line 858 "runtime.in" // bool cyclic(guide *g); -void gen_runtime240(stack *Stack) +void gen_runtime102(stack *Stack) { guide * g=vm::pop<guide *>(Stack); -#line 3065 "runtime.in" +#line 859 "runtime.in" flatguide f; g->flatten(f,false); {Stack->push<bool>(g->cyclic()); return;} } -#line 3071 "runtime.in" +#line 865 "runtime.in" // pair point(guide *g, Int t); -void gen_runtime241(stack *Stack) +void gen_runtime103(stack *Stack) { Int t=vm::pop<Int>(Stack); guide * g=vm::pop<guide *>(Stack); -#line 3072 "runtime.in" +#line 866 "runtime.in" flatguide f; g->flatten(f,false); {Stack->push<pair>(f.Nodes(adjustedIndex(t,f.size(),g->cyclic())).z); return;} } -#line 3078 "runtime.in" +#line 872 "runtime.in" // pairarray* dirSpecifier(guide *g, Int t); -void gen_runtime242(stack *Stack) +void gen_runtime104(stack *Stack) { Int t=vm::pop<Int>(Stack); guide * g=vm::pop<guide *>(Stack); -#line 3079 "runtime.in" +#line 873 "runtime.in" flatguide f; g->flatten(f,false); Int n=f.size(); @@ -4226,13 +1316,13 @@ void gen_runtime242(stack *Stack) {Stack->push<pairarray*>(c); return;} } -#line 3090 "runtime.in" +#line 884 "runtime.in" // pairarray* controlSpecifier(guide *g, Int t); -void gen_runtime243(stack *Stack) +void gen_runtime105(stack *Stack) { Int t=vm::pop<Int>(Stack); guide * g=vm::pop<guide *>(Stack); -#line 3091 "runtime.in" +#line 885 "runtime.in" flatguide f; g->flatten(f,false); Int n=f.size(); @@ -4248,13 +1338,13 @@ void gen_runtime243(stack *Stack) } else {Stack->push<pairarray*>(new array(0)); return;} } -#line 3107 "runtime.in" +#line 901 "runtime.in" // tensionSpecifier tensionSpecifier(guide *g, Int t); -void gen_runtime244(stack *Stack) +void gen_runtime106(stack *Stack) { Int t=vm::pop<Int>(Stack); guide * g=vm::pop<guide *>(Stack); -#line 3108 "runtime.in" +#line 902 "runtime.in" flatguide f; g->flatten(f,false); Int n=f.size(); @@ -4263,13 +1353,13 @@ void gen_runtime244(stack *Stack) {Stack->push<tensionSpecifier>(tensionSpecifier(curr.tout.val,f.Nodes(t+1).tin.val,curr.tout.atleast)); return;} } -#line 3117 "runtime.in" +#line 911 "runtime.in" // realarray* curlSpecifier(guide *g, Int t); -void gen_runtime245(stack *Stack) +void gen_runtime107(stack *Stack) { Int t=vm::pop<Int>(Stack); guide * g=vm::pop<guide *>(Stack); -#line 3118 "runtime.in" +#line 912 "runtime.in" flatguide f; g->flatten(f,false); Int n=f.size(); @@ -4282,12 +1372,12 @@ void gen_runtime245(stack *Stack) {Stack->push<realarray*>(c); return;} } -#line 3131 "runtime.in" +#line 925 "runtime.in" // guide* reverse(guide *g); -void gen_runtime246(stack *Stack) +void gen_runtime108(stack *Stack) { guide * g=vm::pop<guide *>(Stack); -#line 3132 "runtime.in" +#line 926 "runtime.in" flatguide f; g->flatten(f,false); if(f.precyclic()) @@ -4340,736 +1430,11 @@ void gen_runtime246(stack *Stack) {Stack->push<guide*>(new multiguide(v)); return;} } - -// Three-dimensional picture and surface operations -#line 3187 "runtime.in" -// void _draw(picture *f, path3 g, pen p); -void gen_runtime247(stack *Stack) -{ - pen p=vm::pop<pen>(Stack); - path3 g=vm::pop<path3>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 3188 "runtime.in" - if(g.size() > 0) - f->append(new drawPath3(g,p)); -} - -#line 3194 "runtime.in" -// void draw(picture *f, triplearray2 *g, bool straight, penarray *p, real opacity, real shininess, real PRCshininess, real granularity, triple normal, bool lighton, penarray *colors); -void gen_runtime248(stack *Stack) -{ - penarray * colors=vm::pop<penarray *>(Stack); - bool lighton=vm::pop<bool>(Stack); - triple normal=vm::pop<triple>(Stack); - real granularity=vm::pop<real>(Stack); - real PRCshininess=vm::pop<real>(Stack); - real shininess=vm::pop<real>(Stack); - real opacity=vm::pop<real>(Stack); - penarray * p=vm::pop<penarray *>(Stack); - bool straight=vm::pop<bool>(Stack); - triplearray2 * g=vm::pop<triplearray2 *>(Stack); - picture * f=vm::pop<picture *>(Stack); -#line 3197 "runtime.in" - f->append(new drawSurface(*g,straight,*p,opacity,shininess,PRCshininess, - granularity,normal,lighton,*colors)); -} - -#line 3202 "runtime.in" -// triple min3(picture *f); -void gen_runtime249(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 3203 "runtime.in" - {Stack->push<triple>(f->bounds3().Min()); return;} -} - -#line 3207 "runtime.in" -// triple max3(picture *f); -void gen_runtime250(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 3208 "runtime.in" - {Stack->push<triple>(f->bounds3().Max()); return;} -} - -#line 3212 "runtime.in" -// pair minratio(picture *f); -void gen_runtime251(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 3213 "runtime.in" - {Stack->push<pair>(f->ratio(::min)); return;} -} - -#line 3217 "runtime.in" -// pair maxratio(picture *f); -void gen_runtime252(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 3218 "runtime.in" - {Stack->push<pair>(f->ratio(::max)); return;} -} - -#line 3222 "runtime.in" -// triple minbezier(triplearray2 *P, triple b); -void gen_runtime253(stack *Stack) -{ - triple b=vm::pop<triple>(Stack); - triplearray2 * P=vm::pop<triplearray2 *>(Stack); -#line 3223 "runtime.in" - real *A=copyTripleArray2Components(P,true,4); - b=triple(bound(A,::min,b.getx(),sqrtFuzz*norm(A,16)), - bound(A+16,::min,b.gety(),sqrtFuzz*norm(A+16,16)), - bound(A+32,::min,b.getz(),sqrtFuzz*norm(A+32,16))); - delete[] A; - {Stack->push<triple>(b); return;} -} - -#line 3232 "runtime.in" -// triple maxbezier(triplearray2 *P, triple b); -void gen_runtime254(stack *Stack) -{ - triple b=vm::pop<triple>(Stack); - triplearray2 * P=vm::pop<triplearray2 *>(Stack); -#line 3233 "runtime.in" - real *A=copyTripleArray2Components(P,true,4); - b=triple(bound(A,::max,b.getx(),sqrtFuzz*norm(A,16)), - bound(A+16,::max,b.gety(),sqrtFuzz*norm(A+16,16)), - bound(A+32,::max,b.getz(),sqrtFuzz*norm(A+32,16))); - delete[] A; - {Stack->push<triple>(b); return;} -} - -#line 3242 "runtime.in" -// pair minratio(triplearray2 *P, pair b); -void gen_runtime255(stack *Stack) -{ - pair b=vm::pop<pair>(Stack); - triplearray2 * P=vm::pop<triplearray2 *>(Stack); -#line 3243 "runtime.in" - triple *A=copyTripleArray2C(P,true,4); - real fuzz=sqrtFuzz*norm(A,16); - b=pair(bound(A,::min,xratio,b.getx(),fuzz), - bound(A,::min,yratio,b.gety(),fuzz)); - delete[] A; - {Stack->push<pair>(b); return;} -} - -#line 3252 "runtime.in" -// pair maxratio(triplearray2 *P, pair b); -void gen_runtime256(stack *Stack) -{ - pair b=vm::pop<pair>(Stack); - triplearray2 * P=vm::pop<triplearray2 *>(Stack); -#line 3253 "runtime.in" - triple *A=copyTripleArray2C(P,true,4); - real fuzz=sqrtFuzz*norm(A,16); - b=pair(bound(A,::max,xratio,b.getx(),fuzz), - bound(A,::max,yratio,b.gety(),fuzz)); - delete[] A; - {Stack->push<pair>(b); return;} -} - -#line 3262 "runtime.in" -// pair minratio(path3 g); -void gen_runtime257(stack *Stack) -{ - path3 g=vm::pop<path3>(Stack); -#line 3263 "runtime.in" - {Stack->push<pair>(g.ratio(::min)); return;} -} - -#line 3267 "runtime.in" -// pair maxratio(path3 g); -void gen_runtime258(stack *Stack) -{ - path3 g=vm::pop<path3>(Stack); -#line 3268 "runtime.in" - {Stack->push<pair>(g.ratio(::max)); return;} -} - -#line 3272 "runtime.in" -// real norm(realarray *a); -void gen_runtime259(stack *Stack) -{ - realarray * a=vm::pop<realarray *>(Stack); -#line 3273 "runtime.in" - size_t n=checkArray(a); - real M=0.0; - for(size_t i=0; i < n; ++i) { - real x=fabs(vm::read<real>(a,i)); - if(x > M) M=x; - } - {Stack->push<real>(M); return;} -} - -#line 3283 "runtime.in" -// real norm(realarray2 *a); -void gen_runtime260(stack *Stack) -{ - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 3284 "runtime.in" - size_t n=checkArray(a); - real M=0.0; - for(size_t i=0; i < n; ++i) { - vm::array *ai=vm::read<vm::array*>(a,i); - size_t m=checkArray(ai); - for(size_t j=0; j < m; ++j) { - real a=fabs(vm::read<real>(ai,j)); - if(a > M) M=a; - } - } - {Stack->push<real>(M); return;} -} - -#line 3298 "runtime.in" -// real norm(triplearray2 *a); -void gen_runtime261(stack *Stack) -{ - triplearray2 * a=vm::pop<triplearray2 *>(Stack); -#line 3299 "runtime.in" - size_t n=checkArray(a); - real M=0.0; - for(size_t i=0; i < n; ++i) { - vm::array *ai=vm::read<vm::array*>(a,i); - size_t m=checkArray(ai); - for(size_t j=0; j < m; ++j) { - real a=vm::read<triple>(ai,j).abs2(); - if(a > M) M=a; - } - } - {Stack->push<real>(sqrt(M)); return;} -} - -#line 3313 "runtime.in" -// real change2(triplearray2 *a); -void gen_runtime262(stack *Stack) -{ - triplearray2 * a=vm::pop<triplearray2 *>(Stack); -#line 3314 "runtime.in" - size_t n=checkArray(a); - if(n == 0) {Stack->push<real>(0.0); return;} - - vm::array *a0=vm::read<vm::array*>(a,0); - size_t m=checkArray(a0); - if(m == 0) {Stack->push<real>(0.0); return;} - triple a00=vm::read<triple>(a0,0); - real M=0.0; - - for(size_t i=0; i < n; ++i) { - vm::array *ai=vm::read<vm::array*>(a,i); - size_t m=checkArray(ai); - for(size_t j=0; j < m; ++j) { - real a=(vm::read<triple>(ai,j)-a00).abs2(); - if(a > M) M=a; - } - } - {Stack->push<real>(M); return;} -} - -#line 3335 "runtime.in" -// bool is3D(picture *f); -void gen_runtime263(stack *Stack) -{ - picture * f=vm::pop<picture *>(Stack); -#line 3336 "runtime.in" - {Stack->push<bool>(f->have3D()); return;} -} - -#line 3340 "runtime.in" -// pair bezier(pair a, pair b, pair c, pair d, real t); -void gen_runtime264(stack *Stack) -{ - real t=vm::pop<real>(Stack); - pair d=vm::pop<pair>(Stack); - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 3341 "runtime.in" - real onemt=1-t; - real onemt2=onemt*onemt; - {Stack->push<pair>(onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d)); return;} -} - -#line 3347 "runtime.in" -// pair bezierP(pair a, pair b, pair c, pair d, real t); -void gen_runtime265(stack *Stack) -{ - real t=vm::pop<real>(Stack); - pair d=vm::pop<pair>(Stack); - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 3348 "runtime.in" - {Stack->push<pair>(3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a)); return;} -} - -#line 3352 "runtime.in" -// pair bezierPP(pair a, pair b, pair c, pair d, real t); -void gen_runtime266(stack *Stack) -{ - real t=vm::pop<real>(Stack); - pair d=vm::pop<pair>(Stack); - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 3353 "runtime.in" - {Stack->push<pair>(6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b)); return;} -} - -#line 3357 "runtime.in" -// pair bezierPPP(pair a, pair b, pair c, pair d); -void gen_runtime267(stack *Stack) -{ - pair d=vm::pop<pair>(Stack); - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 3358 "runtime.in" - {Stack->push<pair>(6.0*(d-a+3.0*(b-c))); return;} -} - -#line 3362 "runtime.in" -// triple bezier(triple a, triple b, triple c, triple d, real t); -void gen_runtime268(stack *Stack) -{ - real t=vm::pop<real>(Stack); - triple d=vm::pop<triple>(Stack); - triple c=vm::pop<triple>(Stack); - triple b=vm::pop<triple>(Stack); - triple a=vm::pop<triple>(Stack); -#line 3363 "runtime.in" - real onemt=1-t; - real onemt2=onemt*onemt; - {Stack->push<triple>(onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d)); return;} -} - -#line 3369 "runtime.in" -// triple bezierP(triple a, triple b, triple c, triple d, real t); -void gen_runtime269(stack *Stack) -{ - real t=vm::pop<real>(Stack); - triple d=vm::pop<triple>(Stack); - triple c=vm::pop<triple>(Stack); - triple b=vm::pop<triple>(Stack); - triple a=vm::pop<triple>(Stack); -#line 3370 "runtime.in" - {Stack->push<triple>(3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a)); return;} -} - -#line 3374 "runtime.in" -// triple bezierPP(triple a, triple b, triple c, triple d, real t); -void gen_runtime270(stack *Stack) -{ - real t=vm::pop<real>(Stack); - triple d=vm::pop<triple>(Stack); - triple c=vm::pop<triple>(Stack); - triple b=vm::pop<triple>(Stack); - triple a=vm::pop<triple>(Stack); -#line 3375 "runtime.in" - {Stack->push<triple>(6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b)); return;} -} - -#line 3379 "runtime.in" -// triple bezierPPP(triple a, triple b, triple c, triple d); -void gen_runtime271(stack *Stack) -{ - triple d=vm::pop<triple>(Stack); - triple c=vm::pop<triple>(Stack); - triple b=vm::pop<triple>(Stack); - triple a=vm::pop<triple>(Stack); -#line 3380 "runtime.in" - {Stack->push<triple>(6.0*(d-a+3.0*(b-c))); return;} -} - - -// String operations -#line 3386 "runtime.in" -void emptyString(stack *Stack) -{ -#line 3387 "runtime.in" - {Stack->push<string>(emptystring); return;} -} - -#line 3392 "runtime.in" -// Int length(string *s); -void gen_runtime273(stack *Stack) -{ - string * s=vm::pop<string *>(Stack); -#line 3393 "runtime.in" - {Stack->push<Int>((Int) s->length()); return;} -} - -#line 3397 "runtime.in" -// Int find(string *s, string t, Int pos=0); -void gen_runtime274(stack *Stack) -{ - Int pos=vm::pop<Int>(Stack,0); - string t=vm::pop<string>(Stack); - string * s=vm::pop<string *>(Stack); -#line 3398 "runtime.in" - size_t n=s->find(t,pos); - {Stack->push<Int>(n == string::npos ? (Int) -1 : (Int) n); return;} -} - -#line 3403 "runtime.in" -// Int rfind(string *s, string t, Int pos=-1); -void gen_runtime275(stack *Stack) -{ - Int pos=vm::pop<Int>(Stack,-1); - string t=vm::pop<string>(Stack); - string * s=vm::pop<string *>(Stack); -#line 3404 "runtime.in" - size_t n=s->rfind(t,pos); - {Stack->push<Int>(n == string::npos ? (Int) -1 : (Int) n); return;} -} - -#line 3409 "runtime.in" -// string reverse(string s); -void gen_runtime276(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 3410 "runtime.in" - reverse(s.begin(),s.end()); - {Stack->push<string>(s); return;} -} - -#line 3415 "runtime.in" -// string insert(string s, Int pos, string t); -void gen_runtime277(stack *Stack) -{ - string t=vm::pop<string>(Stack); - Int pos=vm::pop<Int>(Stack); - string s=vm::pop<string>(Stack); -#line 3416 "runtime.in" - if ((size_t) pos < s.length()) - {Stack->push<string>(s.insert(pos,t)); return;} - {Stack->push<string>(s); return;} -} - -#line 3422 "runtime.in" -// string substr(string* s, Int pos, Int n=-1); -void gen_runtime278(stack *Stack) -{ - Int n=vm::pop<Int>(Stack,-1); - Int pos=vm::pop<Int>(Stack); - string* s=vm::pop<string*>(Stack); -#line 3423 "runtime.in" - if ((size_t) pos < s->length()) - {Stack->push<string>(s->substr(pos,n)); return;} - {Stack->push<string>(emptystring); return;} -} - -#line 3429 "runtime.in" -// string erase(string s, Int pos, Int n); -void gen_runtime279(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - Int pos=vm::pop<Int>(Stack); - string s=vm::pop<string>(Stack); -#line 3430 "runtime.in" - if ((size_t) pos < s.length()) - {Stack->push<string>(s.erase(pos,n)); return;} - {Stack->push<string>(s); return;} -} - -#line 3436 "runtime.in" -// string downcase(string s); -void gen_runtime280(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 3437 "runtime.in" - std::transform(s.begin(),s.end(),s.begin(),tolower); - {Stack->push<string>(s); return;} -} - -#line 3442 "runtime.in" -// string upcase(string s); -void gen_runtime281(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 3443 "runtime.in" - std::transform(s.begin(),s.end(),s.begin(),toupper); - {Stack->push<string>(s); return;} -} - -// returns a string constructed by translating all occurrences of the string -// from in an array of string pairs {from,to} to the string to in string s. -#line 3450 "runtime.in" -// string replace(string *S, stringarray2 *translate); -void gen_runtime282(stack *Stack) -{ - stringarray2 * translate=vm::pop<stringarray2 *>(Stack); - string * S=vm::pop<string *>(Stack); -#line 3451 "runtime.in" - size_t size=checkArray(translate); - for(size_t i=0; i < size; i++) { - array *a=read<array*>(translate,i); - checkArray(a); - } - const char *p=S->c_str(); - ostringstream buf; - while(*p) { - for(size_t i=0; i < size;) { - array *a=read<array*>(translate,i); - string* from=read<string*>(a,0); - size_t len=from->length(); - if(strncmp(p,from->c_str(),len) != 0) {i++; continue;} - buf << read<string>(a,1); - p += len; - if(*p == 0) {Stack->push<string>(buf.str()); return;} - i=0; - } - buf << *(p++); - } - {Stack->push<string>(buf.str()); return;} -} - -#line 3475 "runtime.in" -// string format(string *format, Int x); -void gen_runtime283(stack *Stack) -{ - Int x=vm::pop<Int>(Stack); - string * format=vm::pop<string *>(Stack); -#line 3476 "runtime.in" - const char *f=format->c_str(); - - checkformat(f,true); - - Int size=snprintf(NULL,0,f,x)+1; - if(size < 1) size=255; // Workaround for non-C99 compliant systems. - char *buf=new char[size]; - snprintf(buf,size,f,x); - string s=string(buf); - delete[] buf; - {Stack->push<string>(s); return;} -} - -#line 3490 "runtime.in" -// string format(string *format, real x, string locale=emptystring); -void gen_runtime284(stack *Stack) -{ - string locale=vm::pop<string>(Stack,emptystring); - real x=vm::pop<real>(Stack); - string * format=vm::pop<string *>(Stack); -#line 3491 "runtime.in" - bool tex=getSetting<string>("tex") != "none"; - bool texify=false; - ostringstream out; - - checkformat(format->c_str(),false); - - const char *phantom="\\phantom{+}"; - const char *p0=format->c_str(); - - const char *p=p0; - const char *start=NULL; - char prev=0; - while(*p != 0) { - char curr=*p; - if(tex && curr == '$' && prev != '\\') texify=true; - prev=curr; - if(curr == '%') { - p++; - if(*p != '%') {start=p-1; break;} - } - out << *(p++); - } - - if(!start) {Stack->push<string>(out.str()); return;} - - // Allow at most 1 argument - while(*p != 0) { - if(*p == '*' || *p == '$') {Stack->push<string>(out.str()); return;} - if(isupper(*p) || islower(*p)) {p++; break;} - p++; - } - - const char *tail=p; - string f=format->substr(start-p0,tail-start); - - const char *oldlocale=NULL; - if(!locale.empty()) { - oldlocale=setlocale(LC_ALL,NULL); - if(oldlocale) oldlocale=StrdupNoGC(oldlocale); - setlocale(LC_ALL,locale.c_str()); - } - - Int size=snprintf(NULL,0,f.c_str(),x)+1; - if(size < 1) size=255; // Workaround for non-C99 compliant systems. - char *buf=new char[size]; - snprintf(buf,size,f.c_str(),x); - - if(oldlocale) { - setlocale(LC_ALL,oldlocale); - delete[] oldlocale; - } - - bool trailingzero=f.find("#") < string::npos; - bool plus=f.find("+") < string::npos; - bool space=f.find(" ") < string::npos; - - char *q=buf; // beginning of formatted number - - if(*q == ' ') { - out << phantom; - q++; - } - - const char decimal=*(localeconv()->decimal_point); - - // Remove any spurious sign - if(*q == '-' || *q == '+') { - p=q+1; - bool zero=true; - while(*p != 0) { - if(!isdigit(*p) && *p != decimal) break; - if(isdigit(*p) && *p != '0') {zero=false; break;} - p++; - } - if(zero) { - q++; - if(plus || space) out << phantom; - } - } - - const char *r=p=q; - bool dp=false; - while(*r != 0 && (isdigit(*r) || *r == decimal || *r == '+' || *r == '-')) { - if(*r == decimal) dp=true; - r++; - } - if(dp) { // Remove trailing zeros and/or decimal point - r--; - unsigned n=0; - while(r > q && *r == '0') {r--; n++;} - if(*r == decimal) {r--; n++;} - while(q <= r) out << *(q++); - if(!trailingzero) q += n; - } - - bool zero=(r == p && *r == '0') && !trailingzero; - - // Translate "E+/E-/e+/e-" exponential notation to TeX - while(*q != 0) { - if(texify && (*q == 'E' || *q == 'e') && - (*(q+1) == '+' || *(q+1) == '-')) { - if(!zero) out << "\\!\\times\\!10^{"; - bool plus=(*(q+1) == '+'); - q++; - if(plus) q++; - if(*q == '-') out << *(q++); - while(*q == '0' && (zero || isdigit(*(q+1)))) q++; - while(isdigit(*q)) out << *(q++); - if(!zero) - out << "}"; - break; - } - out << *(q++); - } - - while(*tail != 0) - out << *(tail++); - - delete[] buf; - - {Stack->push<string>(out.str()); return;} -} - -#line 3615 "runtime.in" -// Int hex(string s); -void gen_runtime285(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 3616 "runtime.in" - istringstream is(s); - is.setf(std::ios::hex,std::ios::basefield); - Int value; - if(is && is >> value && ((is >> std::ws).eof())) {Stack->push<Int>(value); return;} - ostringstream buf; - buf << "invalid hexidecimal cast from string \"" << s << "\""; - error(buf); -} - -#line 3626 "runtime.in" -// string string(Int x); -void gen_runtime286(stack *Stack) -{ - Int x=vm::pop<Int>(Stack); -#line 3627 "runtime.in" - ostringstream buf; - buf << x; - {Stack->push<string>(buf.str()); return;} -} - -#line 3633 "runtime.in" -// string string(real x, Int digits=DBL_DIG); -void gen_runtime287(stack *Stack) -{ - Int digits=vm::pop<Int>(Stack,DBL_DIG); - real x=vm::pop<real>(Stack); -#line 3634 "runtime.in" - ostringstream buf; - buf.precision(digits); - buf << x; - {Stack->push<string>(buf.str()); return;} -} - -#line 3641 "runtime.in" -// string time(string format=defaulttimeformat); -void gen_runtime288(stack *Stack) -{ - string format=vm::pop<string>(Stack,defaulttimeformat); -#line 3642 "runtime.in" -#ifdef HAVE_STRFTIME - const time_t bintime=time(NULL); - if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) {Stack->push<string>(""); return;} - {Stack->push<string>(Time); return;} -#else - {Stack->push<string>(format); return;} -#endif -} - -#line 3652 "runtime.in" -// string time(Int seconds, string format=defaulttimeformat); -void gen_runtime289(stack *Stack) -{ - string format=vm::pop<string>(Stack,defaulttimeformat); - Int seconds=vm::pop<Int>(Stack); -#line 3653 "runtime.in" -#ifdef HAVE_STRFTIME - const time_t bintime=seconds; - if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) {Stack->push<string>(""); return;} - {Stack->push<string>(Time); return;} -#else -// Avoid unused variable warning messages - unused(&seconds); - {Stack->push<string>(format); return;} -#endif -} - -#line 3665 "runtime.in" -// Int seconds(string t=emptystring, string format=emptystring); -void gen_runtime290(stack *Stack) -{ - string format=vm::pop<string>(Stack,emptystring); - string t=vm::pop<string>(Stack,emptystring); -#line 3666 "runtime.in" -#if defined(HAVE_STRPTIME) - const time_t bintime=time(NULL); - tm tm=*localtime(&bintime); - if(t != "" && !strptime(t.c_str(),format.c_str(),&tm)) {Stack->push<Int>(-1); return;} - {Stack->push<Int>((Int) mktime(&tm)); return;} -#else - {Stack->push<Int>(-1); return;} -#endif -} - -#line 3677 "runtime.in" +#line 980 "runtime.in" // realarray* _cputime(); -void gen_runtime291(stack *Stack) +void gen_runtime109(stack *Stack) { -#line 3678 "runtime.in" +#line 981 "runtime.in" static const real ticktime=1.0/sysconf(_SC_CLK_TCK); struct tms buf; @@ -5083,415 +1448,104 @@ void gen_runtime291(stack *Stack) } -// Math -#line 3693 "runtime.in" -// real ^(real x, Int y); -void gen_runtime292(stack *Stack) -{ - Int y=vm::pop<Int>(Stack); - real x=vm::pop<real>(Stack); -#line 3694 "runtime.in" - {Stack->push<real>(pow(x,y)); return;} -} - -#line 3699 "runtime.in" -// pair ^(pair z, Int y); -void gen_runtime293(stack *Stack) -{ - Int y=vm::pop<Int>(Stack); - pair z=vm::pop<pair>(Stack); -#line 3700 "runtime.in" - {Stack->push<pair>(pow(z,y)); return;} -} - -#line 3704 "runtime.in" -// Int quotient(Int x, Int y); -void gen_runtime294(stack *Stack) -{ - Int y=vm::pop<Int>(Stack); - Int x=vm::pop<Int>(Stack); -#line 3705 "runtime.in" - if(y == 0) dividebyzero(); - if(y == -1) {Stack->push<Int>(Negate(x)); return;} -// Implementation-independent definition of integer division: round down - {Stack->push<Int>((x-portableMod(x,y))/y); return;} -} - -#line 3712 "runtime.in" -// Int abs(Int x); -void gen_runtime295(stack *Stack) -{ - Int x=vm::pop<Int>(Stack); -#line 3713 "runtime.in" - {Stack->push<Int>(Abs(x)); return;} -} - -#line 3717 "runtime.in" -// Int sgn(real x); -void gen_runtime296(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3718 "runtime.in" - {Stack->push<Int>(sgn(x)); return;} -} - -#line 3722 "runtime.in" -// Int rand(); -void gen_runtime297(stack *Stack) -{ -#line 3723 "runtime.in" - {Stack->push<Int>(rand()); return;} -} - -#line 3727 "runtime.in" -// void srand(Int seed); -void gen_runtime298(stack *Stack) -{ - Int seed=vm::pop<Int>(Stack); -#line 3728 "runtime.in" - srand(intcast(seed)); -} - -// a random number uniformly distributed in the interval [0,1] -#line 3733 "runtime.in" -// real unitrand(); -void gen_runtime299(stack *Stack) -{ -#line 3734 "runtime.in" - {Stack->push<real>(((real) rand())/RAND_MAX); return;} -} - -#line 3738 "runtime.in" -// Int ceil(real x); -void gen_runtime300(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3739 "runtime.in" - {Stack->push<Int>(Intcast(ceil(x))); return;} -} - -#line 3743 "runtime.in" -// Int floor(real x); -void gen_runtime301(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3744 "runtime.in" - {Stack->push<Int>(Intcast(floor(x))); return;} -} - -#line 3748 "runtime.in" -// Int round(real x); -void gen_runtime302(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3749 "runtime.in" - if(validInt(x)) {Stack->push<Int>(Round(x)); return;} - integeroverflow(0); -} - -#line 3754 "runtime.in" -// Int Ceil(real x); -void gen_runtime303(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3755 "runtime.in" - {Stack->push<Int>(Ceil(x)); return;} -} - -#line 3759 "runtime.in" -// Int Floor(real x); -void gen_runtime304(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3760 "runtime.in" - {Stack->push<Int>(Floor(x)); return;} -} - -#line 3764 "runtime.in" -// Int Round(real x); -void gen_runtime305(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3765 "runtime.in" - {Stack->push<Int>(Round(Intcap(x))); return;} -} - -#line 3769 "runtime.in" -// real fmod(real x, real y); -void gen_runtime306(stack *Stack) -{ - real y=vm::pop<real>(Stack); - real x=vm::pop<real>(Stack); -#line 3770 "runtime.in" - if (y == 0.0) dividebyzero(); - {Stack->push<real>(fmod(x,y)); return;} -} - -#line 3775 "runtime.in" -// real atan2(real y, real x); -void gen_runtime307(stack *Stack) -{ - real x=vm::pop<real>(Stack); - real y=vm::pop<real>(Stack); -#line 3776 "runtime.in" - {Stack->push<real>(atan2(y,x)); return;} -} - -#line 3780 "runtime.in" -// real hypot(real x, real y); -void gen_runtime308(stack *Stack) -{ - real y=vm::pop<real>(Stack); - real x=vm::pop<real>(Stack); -#line 3781 "runtime.in" - {Stack->push<real>(hypot(x,y)); return;} -} - -#line 3785 "runtime.in" -// real remainder(real x, real y); -void gen_runtime309(stack *Stack) -{ - real y=vm::pop<real>(Stack); - real x=vm::pop<real>(Stack); -#line 3786 "runtime.in" - {Stack->push<real>(remainder(x,y)); return;} -} - -#line 3790 "runtime.in" -// real J(Int n, real x); -void gen_runtime310(stack *Stack) -{ - real x=vm::pop<real>(Stack); - Int n=vm::pop<Int>(Stack); -#line 3791 "runtime.in" - {Stack->push<real>(jn(n,x)); return;} -} - -#line 3795 "runtime.in" -// real Y(Int n, real x); -void gen_runtime311(stack *Stack) -{ - real x=vm::pop<real>(Stack); - Int n=vm::pop<Int>(Stack); -#line 3796 "runtime.in" - {Stack->push<real>(yn(n,x)); return;} -} - -#line 3800 "runtime.in" -// real erf(real x); -void gen_runtime312(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3801 "runtime.in" - {Stack->push<real>(erf(x)); return;} -} - -#line 3805 "runtime.in" -// real erfc(real x); -void gen_runtime313(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3806 "runtime.in" - {Stack->push<real>(erfc(x)); return;} -} - -#line 3810 "runtime.in" -// Int factorial(Int n); -void gen_runtime314(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); -#line 3811 "runtime.in" - if(n < 0) error(invalidargument); - {Stack->push<Int>(factorial(n)); return;} -} - -#line 3815 "runtime.in" -// Int choose(Int n, Int k); -void gen_runtime315(stack *Stack) -{ - Int k=vm::pop<Int>(Stack); - Int n=vm::pop<Int>(Stack); -#line 3816 "runtime.in" - if(n < 0 || k < 0 || k > n) error(invalidargument); - Int f=1; - Int r=n-k; - for(Int i=n; i > r; --i) { - if(f > Int_MAX/i) integeroverflow(0); - f=(f*i)/(n-i+1); - } - {Stack->push<Int>(f); return;} -} - -#line 3826 "runtime.in" -// real gamma(real x); -void gen_runtime316(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 3827 "runtime.in" -#ifdef HAVE_TGAMMA - {Stack->push<real>(tgamma(x)); return;} -#else - real lg = lgamma(x); - {Stack->push<real>(signgam*exp(lg)); return;} -#endif -} - -// Complex Gamma function -#line 3837 "runtime.in" -// pair gamma(explicit pair z); -void gen_runtime317(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 3838 "runtime.in" - {Stack->push<pair>(gamma(z)); return;} -} - -#line 3842 "runtime.in" -// realarray* quadraticroots(real a, real b, real c); -void gen_runtime318(stack *Stack) -{ - real c=vm::pop<real>(Stack); - real b=vm::pop<real>(Stack); - real a=vm::pop<real>(Stack); -#line 3843 "runtime.in" - quadraticroots q(a,b,c); - array *roots=new array(q.roots); - if(q.roots >= 1) (*roots)[0]=q.t1; - if(q.roots == 2) (*roots)[1]=q.t2; - {Stack->push<realarray*>(roots); return;} -} - -#line 3851 "runtime.in" -// pairarray* quadraticroots(explicit pair a, explicit pair b, explicit pair c); -void gen_runtime319(stack *Stack) -{ - pair c=vm::pop<pair>(Stack); - pair b=vm::pop<pair>(Stack); - pair a=vm::pop<pair>(Stack); -#line 3852 "runtime.in" - Quadraticroots q(a,b,c); - array *roots=new array(q.roots); - if(q.roots >= 1) (*roots)[0]=q.z1; - if(q.roots == 2) (*roots)[1]=q.z2; - {Stack->push<pairarray*>(roots); return;} -} - -#line 3860 "runtime.in" -// realarray* cubicroots(real a, real b, real c, real d); -void gen_runtime320(stack *Stack) -{ - real d=vm::pop<real>(Stack); - real c=vm::pop<real>(Stack); - real b=vm::pop<real>(Stack); - real a=vm::pop<real>(Stack); -#line 3861 "runtime.in" - cubicroots q(a,b,c,d); - array *roots=new array(q.roots); - if(q.roots >= 1) (*roots)[0]=q.t1; - if(q.roots >= 2) (*roots)[1]=q.t2; - if(q.roots == 3) (*roots)[2]=q.t3; - {Stack->push<realarray*>(roots); return;} -} - - // Transforms -#line 3872 "runtime.in" +#line 996 "runtime.in" // bool ==(transform a, transform b); -void gen_runtime321(stack *Stack) +void gen_runtime110(stack *Stack) { transform b=vm::pop<transform>(Stack); transform a=vm::pop<transform>(Stack); -#line 3873 "runtime.in" +#line 997 "runtime.in" {Stack->push<bool>(a == b); return;} } -#line 3878 "runtime.in" +#line 1002 "runtime.in" // bool !=(transform a, transform b); -void gen_runtime322(stack *Stack) +void gen_runtime111(stack *Stack) { transform b=vm::pop<transform>(Stack); transform a=vm::pop<transform>(Stack); -#line 3879 "runtime.in" +#line 1003 "runtime.in" {Stack->push<bool>(a != b); return;} } -#line 3883 "runtime.in" +#line 1007 "runtime.in" // transform +(transform a, transform b); -void gen_runtime323(stack *Stack) +void gen_runtime112(stack *Stack) { transform b=vm::pop<transform>(Stack); transform a=vm::pop<transform>(Stack); -#line 3884 "runtime.in" +#line 1008 "runtime.in" {Stack->push<transform>(a+b); return;} } -#line 3888 "runtime.in" +#line 1012 "runtime.in" // transform *(transform a, transform b); -void gen_runtime324(stack *Stack) +void gen_runtime113(stack *Stack) { transform b=vm::pop<transform>(Stack); transform a=vm::pop<transform>(Stack); -#line 3889 "runtime.in" +#line 1013 "runtime.in" {Stack->push<transform>(a*b); return;} } -#line 3893 "runtime.in" +#line 1017 "runtime.in" // pair *(transform t, pair z); -void gen_runtime325(stack *Stack) +void gen_runtime114(stack *Stack) { pair z=vm::pop<pair>(Stack); transform t=vm::pop<transform>(Stack); -#line 3894 "runtime.in" +#line 1018 "runtime.in" {Stack->push<pair>(t*z); return;} } -#line 3898 "runtime.in" +#line 1022 "runtime.in" // path *(transform t, path g); -void gen_runtime326(stack *Stack) +void gen_runtime115(stack *Stack) { path g=vm::pop<path>(Stack); transform t=vm::pop<transform>(Stack); -#line 3899 "runtime.in" +#line 1023 "runtime.in" {Stack->push<path>(transformed(t,g)); return;} } -#line 3903 "runtime.in" +#line 1027 "runtime.in" // pen *(transform t, pen p); -void gen_runtime327(stack *Stack) +void gen_runtime116(stack *Stack) { pen p=vm::pop<pen>(Stack); transform t=vm::pop<transform>(Stack); -#line 3904 "runtime.in" +#line 1028 "runtime.in" {Stack->push<pen>(transformed(t,p)); return;} } -#line 3908 "runtime.in" +#line 1032 "runtime.in" // picture* *(transform t, picture *f); -void gen_runtime328(stack *Stack) +void gen_runtime117(stack *Stack) { picture * f=vm::pop<picture *>(Stack); transform t=vm::pop<transform>(Stack); -#line 3909 "runtime.in" +#line 1033 "runtime.in" {Stack->push<picture*>(transformed(t,f)); return;} } -#line 3913 "runtime.in" +#line 1037 "runtime.in" // picture* *(realarray2 *t, picture *f); -void gen_runtime329(stack *Stack) +void gen_runtime118(stack *Stack) { picture * f=vm::pop<picture *>(Stack); realarray2 * t=vm::pop<realarray2 *>(Stack); -#line 3914 "runtime.in" +#line 1038 "runtime.in" {Stack->push<picture*>(transformed(*t,f)); return;} } -#line 3918 "runtime.in" +#line 1042 "runtime.in" // transform ^(transform t, Int n); -void gen_runtime330(stack *Stack) +void gen_runtime119(stack *Stack) { Int n=vm::pop<Int>(Stack); transform t=vm::pop<transform>(Stack); -#line 3919 "runtime.in" +#line 1043 "runtime.in" transform T; if(n < 0) { n=-n; @@ -5501,55 +1555,55 @@ void gen_runtime330(stack *Stack) {Stack->push<transform>(T); return;} } -#line 3929 "runtime.in" +#line 1053 "runtime.in" void transformXPart(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3930 "runtime.in" +#line 1054 "runtime.in" {Stack->push<real>(t.getx()); return;} } -#line 3934 "runtime.in" +#line 1058 "runtime.in" void transformYPart(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3935 "runtime.in" +#line 1059 "runtime.in" {Stack->push<real>(t.gety()); return;} } -#line 3939 "runtime.in" +#line 1063 "runtime.in" void transformXXPart(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3940 "runtime.in" +#line 1064 "runtime.in" {Stack->push<real>(t.getxx()); return;} } -#line 3944 "runtime.in" +#line 1068 "runtime.in" void transformXYPart(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3945 "runtime.in" +#line 1069 "runtime.in" {Stack->push<real>(t.getxy()); return;} } -#line 3949 "runtime.in" +#line 1073 "runtime.in" void transformYXPart(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3950 "runtime.in" +#line 1074 "runtime.in" {Stack->push<real>(t.getyx()); return;} } -#line 3954 "runtime.in" +#line 1078 "runtime.in" void transformYYPart(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3955 "runtime.in" +#line 1079 "runtime.in" {Stack->push<real>(t.getyy()); return;} } -#line 3959 "runtime.in" +#line 1083 "runtime.in" void real6ToTransform(stack *Stack) { real yy=vm::pop<real>(Stack); @@ -5558,4110 +1612,416 @@ void real6ToTransform(stack *Stack) real xx=vm::pop<real>(Stack); real y=vm::pop<real>(Stack); real x=vm::pop<real>(Stack); -#line 3961 "runtime.in" +#line 1085 "runtime.in" {Stack->push<transform>(transform(x,y,xx,xy,yx,yy)); return;} } -#line 3965 "runtime.in" +#line 1089 "runtime.in" // transform shift(transform t); -void gen_runtime338(stack *Stack) +void gen_runtime127(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3966 "runtime.in" +#line 1090 "runtime.in" {Stack->push<transform>(transform(t.getx(),t.gety(),0,0,0,0)); return;} } -#line 3970 "runtime.in" +#line 1094 "runtime.in" // transform shiftless(transform t); -void gen_runtime339(stack *Stack) +void gen_runtime128(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3971 "runtime.in" +#line 1095 "runtime.in" {Stack->push<transform>(transform(0,0,t.getxx(),t.getxy(),t.getyx(),t.getyy())); return;} } -#line 3975 "runtime.in" +#line 1099 "runtime.in" // transform identity(); void transformIdentity(stack *Stack) { -#line 3976 "runtime.in" +#line 1100 "runtime.in" {Stack->push<transform>(identity); return;} } -#line 3980 "runtime.in" +#line 1104 "runtime.in" // transform inverse(transform t); -void gen_runtime341(stack *Stack) +void gen_runtime130(stack *Stack) { transform t=vm::pop<transform>(Stack); -#line 3981 "runtime.in" +#line 1105 "runtime.in" {Stack->push<transform>(inverse(t)); return;} } -#line 3985 "runtime.in" +#line 1109 "runtime.in" // transform shift(pair z); -void gen_runtime342(stack *Stack) +void gen_runtime131(stack *Stack) { pair z=vm::pop<pair>(Stack); -#line 3986 "runtime.in" +#line 1110 "runtime.in" {Stack->push<transform>(shift(z)); return;} } -#line 3990 "runtime.in" +#line 1114 "runtime.in" // transform shift(real x, real y); -void gen_runtime343(stack *Stack) +void gen_runtime132(stack *Stack) { real y=vm::pop<real>(Stack); real x=vm::pop<real>(Stack); -#line 3991 "runtime.in" +#line 1115 "runtime.in" {Stack->push<transform>(shift(pair(x,y))); return;} } -#line 3995 "runtime.in" +#line 1119 "runtime.in" // transform xscale(real x); -void gen_runtime344(stack *Stack) +void gen_runtime133(stack *Stack) { real x=vm::pop<real>(Stack); -#line 3996 "runtime.in" +#line 1120 "runtime.in" {Stack->push<transform>(xscale(x)); return;} } -#line 4000 "runtime.in" +#line 1124 "runtime.in" // transform yscale(real y); -void gen_runtime345(stack *Stack) +void gen_runtime134(stack *Stack) { real y=vm::pop<real>(Stack); -#line 4001 "runtime.in" +#line 1125 "runtime.in" {Stack->push<transform>(yscale(y)); return;} } -#line 4005 "runtime.in" +#line 1129 "runtime.in" // transform scale(real x); -void gen_runtime346(stack *Stack) +void gen_runtime135(stack *Stack) { real x=vm::pop<real>(Stack); -#line 4006 "runtime.in" +#line 1130 "runtime.in" {Stack->push<transform>(scale(x)); return;} } -#line 4010 "runtime.in" +#line 1134 "runtime.in" // transform scale(real x, real y); -void gen_runtime347(stack *Stack) +void gen_runtime136(stack *Stack) { real y=vm::pop<real>(Stack); real x=vm::pop<real>(Stack); -#line 4011 "runtime.in" +#line 1135 "runtime.in" {Stack->push<transform>(xscale(x)*yscale(y)); return;} } -#line 4015 "runtime.in" +#line 1139 "runtime.in" // transform slant(real s); -void gen_runtime348(stack *Stack) +void gen_runtime137(stack *Stack) { real s=vm::pop<real>(Stack); -#line 4016 "runtime.in" +#line 1140 "runtime.in" {Stack->push<transform>(slant(s)); return;} } -#line 4020 "runtime.in" +#line 1144 "runtime.in" // transform rotate(real angle, pair z=0); -void gen_runtime349(stack *Stack) +void gen_runtime138(stack *Stack) { pair z=vm::pop<pair>(Stack,0); real angle=vm::pop<real>(Stack); -#line 4021 "runtime.in" +#line 1145 "runtime.in" {Stack->push<transform>(rotatearound(z,radians(angle))); return;} } -#line 4025 "runtime.in" +#line 1149 "runtime.in" // transform reflect(pair a, pair b); -void gen_runtime350(stack *Stack) +void gen_runtime139(stack *Stack) { pair b=vm::pop<pair>(Stack); pair a=vm::pop<pair>(Stack); -#line 4026 "runtime.in" +#line 1150 "runtime.in" {Stack->push<transform>(reflectabout(a,b)); return;} } - -// Pair operations -#line 4032 "runtime.in" -void pairZero(stack *Stack) -{ -#line 4033 "runtime.in" - {Stack->push<pair>(zero); return;} -} - -#line 4038 "runtime.in" -void realRealToPair(stack *Stack) -{ - real y=vm::pop<real>(Stack); - real x=vm::pop<real>(Stack); -#line 4039 "runtime.in" - {Stack->push<pair>(pair(x,y)); return;} -} - -#line 4043 "runtime.in" -void pairNegate(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4044 "runtime.in" - {Stack->push<pair>(-z); return;} -} - -#line 4048 "runtime.in" -// real xpart(pair z); -void pairXPart(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4049 "runtime.in" - {Stack->push<real>(z.getx()); return;} -} - -#line 4053 "runtime.in" -// real ypart(pair z); -void pairYPart(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4054 "runtime.in" - {Stack->push<real>(z.gety()); return;} -} - -#line 4058 "runtime.in" -// real length(pair z); -void gen_runtime356(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4059 "runtime.in" - {Stack->push<real>(z.length()); return;} -} - -#line 4063 "runtime.in" -// real abs(pair z); -void gen_runtime357(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4064 "runtime.in" - {Stack->push<real>(z.length()); return;} -} - -#line 4068 "runtime.in" -// pair sqrt(explicit pair z); -void gen_runtime358(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4069 "runtime.in" - {Stack->push<pair>(Sqrt(z)); return;} -} - -// Return the angle of z in radians. -#line 4074 "runtime.in" -// real angle(pair z, bool warn=true); -void gen_runtime359(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - pair z=vm::pop<pair>(Stack); -#line 4075 "runtime.in" - if(!warn && z.getx() == 0.0 && z.gety() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(z.angle()); return;} -} - -// Return the angle of z in degrees in the interval [0,360). -#line 4081 "runtime.in" -// real degrees(pair z, bool warn=true); -void gen_runtime360(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - pair z=vm::pop<pair>(Stack); -#line 4082 "runtime.in" - if(!warn && z.getx() == 0.0 && z.gety() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(principalBranch(degrees(z.angle()))); return;} -} - -// Convert degrees to radians. -#line 4088 "runtime.in" -// real radians(real degrees); -void gen_runtime361(stack *Stack) -{ - real degrees=vm::pop<real>(Stack); -#line 4089 "runtime.in" - {Stack->push<real>(radians(degrees)); return;} -} - -// Convert radians to degrees. -#line 4094 "runtime.in" -// real degrees(real radians); -void gen_runtime362(stack *Stack) -{ - real radians=vm::pop<real>(Stack); -#line 4095 "runtime.in" - {Stack->push<real>(degrees(radians)); return;} -} - -// Convert radians to degrees in [0,360). -#line 4100 "runtime.in" -// real Degrees(real radians); -void gen_runtime363(stack *Stack) -{ - real radians=vm::pop<real>(Stack); -#line 4101 "runtime.in" - {Stack->push<real>(principalBranch(degrees(radians))); return;} -} - -#line 4105 "runtime.in" -// real Sin(real deg); -void gen_runtime364(stack *Stack) -{ - real deg=vm::pop<real>(Stack); -#line 4106 "runtime.in" - {Stack->push<real>(sin(radians(deg))); return;} -} - -#line 4110 "runtime.in" -// real Cos(real deg); -void gen_runtime365(stack *Stack) -{ - real deg=vm::pop<real>(Stack); -#line 4111 "runtime.in" - {Stack->push<real>(cos(radians(deg))); return;} -} - -#line 4115 "runtime.in" -// real Tan(real deg); -void gen_runtime366(stack *Stack) -{ - real deg=vm::pop<real>(Stack); -#line 4116 "runtime.in" - {Stack->push<real>(tan(radians(deg))); return;} -} - -#line 4120 "runtime.in" -// real aSin(real x); -void gen_runtime367(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 4121 "runtime.in" - {Stack->push<real>(degrees(asin(x))); return;} -} - -#line 4125 "runtime.in" -// real aCos(real x); -void gen_runtime368(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 4126 "runtime.in" - {Stack->push<real>(degrees(acos(x))); return;} -} - -#line 4130 "runtime.in" -// real aTan(real x); -void gen_runtime369(stack *Stack) -{ - real x=vm::pop<real>(Stack); -#line 4131 "runtime.in" - {Stack->push<real>(degrees(atan(x))); return;} -} - -#line 4135 "runtime.in" -// pair unit(pair z); -void gen_runtime370(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4136 "runtime.in" - {Stack->push<pair>(unit(z)); return;} -} - -#line 4140 "runtime.in" -// pair dir(real degrees); -void gen_runtime371(stack *Stack) -{ - real degrees=vm::pop<real>(Stack); -#line 4141 "runtime.in" - {Stack->push<pair>(expi(radians(degrees))); return;} -} - -#line 4145 "runtime.in" -// pair dir(explicit pair z); -void gen_runtime372(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4146 "runtime.in" - {Stack->push<pair>(unit(z)); return;} -} - -#line 4150 "runtime.in" -// pair expi(real angle); -void gen_runtime373(stack *Stack) -{ - real angle=vm::pop<real>(Stack); -#line 4151 "runtime.in" - {Stack->push<pair>(expi(angle)); return;} -} - -#line 4155 "runtime.in" -// pair exp(explicit pair z); -void gen_runtime374(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4156 "runtime.in" - {Stack->push<pair>(exp(z)); return;} -} - -#line 4160 "runtime.in" -// pair log(explicit pair z); -void gen_runtime375(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4161 "runtime.in" - {Stack->push<pair>(pair(log(z.length()),z.angle())); return;} -} - -#line 4165 "runtime.in" -// pair sin(explicit pair z); -void gen_runtime376(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4166 "runtime.in" - {Stack->push<pair>(sin(z)); return;} -} - -#line 4170 "runtime.in" -// pair cos(explicit pair z); -void gen_runtime377(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4171 "runtime.in" - {Stack->push<pair>(pair(cos(z.getx())*cosh(z.gety()),-sin(z.getx())*sinh(z.gety()))); return;} -} - -#line 4175 "runtime.in" -// pair conj(pair z); -void gen_runtime378(stack *Stack) -{ - pair z=vm::pop<pair>(Stack); -#line 4176 "runtime.in" - {Stack->push<pair>(conj(z)); return;} -} - -#line 4180 "runtime.in" -// pair realmult(pair z, pair w); -void gen_runtime379(stack *Stack) -{ - pair w=vm::pop<pair>(Stack); - pair z=vm::pop<pair>(Stack); -#line 4181 "runtime.in" - {Stack->push<pair>(pair (z.getx()*w.getx(),z.gety()*w.gety())); return;} -} - -#line 4185 "runtime.in" -// triple realmult(triple u, triple v); -void gen_runtime380(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); - triple u=vm::pop<triple>(Stack); -#line 4186 "runtime.in" - {Stack->push<triple>(triple (u.getx()*v.getx(),u.gety()*v.gety(),u.getz()*v.getz())); return;} -} - -// To avoid confusion, a dot product requires explicit pair arguments. -#line 4191 "runtime.in" -// real dot(explicit pair z, explicit pair w); -void gen_runtime381(stack *Stack) -{ - pair w=vm::pop<pair>(Stack); - pair z=vm::pop<pair>(Stack); -#line 4192 "runtime.in" - {Stack->push<real>(dot(z,w)); return;} -} - - -// Triple operations -#line 4198 "runtime.in" -void tripleZero(stack *Stack) -{ -#line 4199 "runtime.in" - static triple zero; - {Stack->push<triple>(zero); return;} -} - -#line 4205 "runtime.in" -void realRealRealToTriple(stack *Stack) -{ - real z=vm::pop<real>(Stack); - real y=vm::pop<real>(Stack); - real x=vm::pop<real>(Stack); -#line 4206 "runtime.in" - {Stack->push<triple>(triple(x,y,z)); return;} -} - -#line 4210 "runtime.in" -// real xpart(triple v); -void tripleXPart(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); -#line 4211 "runtime.in" - {Stack->push<real>(v.getx()); return;} -} - -#line 4215 "runtime.in" -// real ypart(triple v); -void tripleYPart(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); -#line 4216 "runtime.in" - {Stack->push<real>(v.gety()); return;} -} - -#line 4220 "runtime.in" -// real zpart(triple v); -void tripleZPart(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); -#line 4221 "runtime.in" - {Stack->push<real>(v.getz()); return;} -} - -#line 4225 "runtime.in" -// triple *(real x, triple v); -void gen_runtime387(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); - real x=vm::pop<real>(Stack); -#line 4226 "runtime.in" - {Stack->push<triple>(x*v); return;} -} - -#line 4230 "runtime.in" -// triple *(triple v, real x); -void gen_runtime388(stack *Stack) -{ - real x=vm::pop<real>(Stack); - triple v=vm::pop<triple>(Stack); -#line 4231 "runtime.in" - {Stack->push<triple>(v*x); return;} -} - -#line 4235 "runtime.in" -// triple /(triple v, real x); -void gen_runtime389(stack *Stack) -{ - real x=vm::pop<real>(Stack); - triple v=vm::pop<triple>(Stack); -#line 4236 "runtime.in" - {Stack->push<triple>(v/x); return;} -} - -#line 4240 "runtime.in" -// real length(triple v); -void gen_runtime390(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); -#line 4241 "runtime.in" - {Stack->push<real>(v.length()); return;} -} - -#line 4245 "runtime.in" -// real abs(triple v); -void gen_runtime391(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); -#line 4246 "runtime.in" - {Stack->push<real>(v.length()); return;} -} - -#line 4250 "runtime.in" -// real polar(triple v, bool warn=true); -void gen_runtime392(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - triple v=vm::pop<triple>(Stack); -#line 4251 "runtime.in" - if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(v.polar()); return;} -} - -#line 4256 "runtime.in" -// real azimuth(triple v, bool warn=true); -void gen_runtime393(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - triple v=vm::pop<triple>(Stack); -#line 4257 "runtime.in" - if(!warn && v.getx() == 0.0 && v.gety() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(v.azimuth()); return;} -} - -#line 4262 "runtime.in" -// real colatitude(triple v, bool warn=true); -void gen_runtime394(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - triple v=vm::pop<triple>(Stack); -#line 4263 "runtime.in" - if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(degrees(v.polar())); return;} -} - -#line 4268 "runtime.in" -// real latitude(triple v, bool warn=true); -void gen_runtime395(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - triple v=vm::pop<triple>(Stack); -#line 4269 "runtime.in" - if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(90.0-degrees(v.polar())); return;} -} - -// Return the longitude of v in [0,360). -#line 4275 "runtime.in" -// real longitude(triple v, bool warn=true); -void gen_runtime396(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - triple v=vm::pop<triple>(Stack); -#line 4276 "runtime.in" - if(!warn && v.getx() == 0.0 && v.gety() == 0.0) {Stack->push<real>(0.0); return;} - {Stack->push<real>(principalBranch(degrees(v.azimuth()))); return;} -} - -#line 4281 "runtime.in" -// triple unit(triple v); -void gen_runtime397(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); -#line 4282 "runtime.in" - {Stack->push<triple>(unit(v)); return;} -} - -#line 4286 "runtime.in" -// real dot(triple u, triple v); -void gen_runtime398(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); - triple u=vm::pop<triple>(Stack); -#line 4287 "runtime.in" - {Stack->push<real>(dot(u,v)); return;} -} - -#line 4291 "runtime.in" -// triple cross(triple u, triple v); -void gen_runtime399(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); - triple u=vm::pop<triple>(Stack); -#line 4292 "runtime.in" - {Stack->push<triple>(cross(u,v)); return;} -} - -#line 4296 "runtime.in" -// triple dir(explicit triple z); -void gen_runtime400(stack *Stack) -{ - triple z=vm::pop<triple>(Stack); -#line 4297 "runtime.in" - {Stack->push<triple>(unit(z)); return;} -} - -#line 4301 "runtime.in" -// triple expi(real polar, real azimuth); -void gen_runtime401(stack *Stack) -{ - real azimuth=vm::pop<real>(Stack); - real polar=vm::pop<real>(Stack); -#line 4302 "runtime.in" - {Stack->push<triple>(expi(polar,azimuth)); return;} -} - -#line 4306 "runtime.in" -// triple dir(real colatitude, real longitude); -void gen_runtime402(stack *Stack) -{ - real longitude=vm::pop<real>(Stack); - real colatitude=vm::pop<real>(Stack); -#line 4307 "runtime.in" - {Stack->push<triple>(expi(radians(colatitude),radians(longitude))); return;} -} - - -// System routines -#line 4313 "runtime.in" -// void atupdate(callable *f); -void gen_runtime403(stack *Stack) -{ - callable * f=vm::pop<callable *>(Stack); -#line 4314 "runtime.in" - processData().atUpdateFunction=f; -} - -#line 4319 "runtime.in" -// callable* atupdate(); -void gen_runtime404(stack *Stack) -{ -#line 4320 "runtime.in" - {Stack->push<callable*>(processData().atUpdateFunction); return;} -} - -#line 4324 "runtime.in" -// void atexit(callable *f); -void gen_runtime405(stack *Stack) -{ - callable * f=vm::pop<callable *>(Stack); -#line 4325 "runtime.in" - processData().atExitFunction=f; -} - -#line 4329 "runtime.in" -// callable* atexit(); -void gen_runtime406(stack *Stack) -{ -#line 4330 "runtime.in" - {Stack->push<callable*>(processData().atExitFunction); return;} -} - -#line 4334 "runtime.in" -// void atbreakpoint(callableBp *f); -void gen_runtime407(stack *Stack) -{ - callableBp * f=vm::pop<callableBp *>(Stack); -#line 4335 "runtime.in" - processData().atBreakpointFunction=f; -} - -#line 4339 "runtime.in" -// void breakpoint(runnable *s=NULL); -void gen_runtime408(stack *Stack) -{ - runnable * s=vm::pop<runnable *>(Stack,NULL); -#line 4340 "runtime.in" - breakpoint(Stack,s); -} - -#line 4344 "runtime.in" -// string locatefile(string file); -void gen_runtime409(stack *Stack) -{ - string file=vm::pop<string>(Stack); -#line 4345 "runtime.in" - {Stack->push<string>(locateFile(file)); return;} -} - -#line 4349 "runtime.in" -// void stop(string file, Int line, runnable *s=NULL); -void gen_runtime410(stack *Stack) -{ - runnable * s=vm::pop<runnable *>(Stack,NULL); - Int line=vm::pop<Int>(Stack); - string file=vm::pop<string>(Stack); -#line 4350 "runtime.in" - file=locateFile(file); - clear(file,line); - cout << "setting breakpoint at " << file << ": " << line << endl; - bplist.push_back(bpinfo(file,line,s)); -} - -#line 4357 "runtime.in" -// void breakpoints(); -void gen_runtime411(stack *) -{ -#line 4358 "runtime.in" - for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) - cout << p->f.name() << ": " << p->f.line() << endl; -} - -#line 4363 "runtime.in" -// void clear(string file, Int line); -void gen_runtime412(stack *Stack) -{ - Int line=vm::pop<Int>(Stack); - string file=vm::pop<string>(Stack); -#line 4364 "runtime.in" - file=locateFile(file); - clear(file,line,true); -} - -#line 4369 "runtime.in" -// void clear(); -void gen_runtime413(stack *) -{ -#line 4370 "runtime.in" - bplist.clear(); -} - -#line 4374 "runtime.in" -// void warn(string s); -void gen_runtime414(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 4375 "runtime.in" - Warn(s); -} - -#line 4379 "runtime.in" -// void nowarn(string s); -void gen_runtime415(stack *Stack) -{ - string s=vm::pop<string>(Stack); -#line 4380 "runtime.in" - noWarn(s); -} - -#line 4384 "runtime.in" -// void warning(string s, string t, bool position=false); -void gen_runtime416(stack *Stack) -{ - bool position=vm::pop<bool>(Stack,false); - string t=vm::pop<string>(Stack); - string s=vm::pop<string>(Stack); -#line 4385 "runtime.in" - if(settings::warn(s)) { - em.warning(position ? getPos() : nullPos,s); - em << t; - } -} - -// Strip directory from string -#line 4393 "runtime.in" -// string stripdirectory(string *s); -void gen_runtime417(stack *Stack) -{ - string * s=vm::pop<string *>(Stack); -#line 4394 "runtime.in" - {Stack->push<string>(stripDir(*s)); return;} -} - -// Strip directory from string -#line 4399 "runtime.in" -// string stripfile(string *s); -void gen_runtime418(stack *Stack) -{ - string * s=vm::pop<string *>(Stack); -#line 4400 "runtime.in" - {Stack->push<string>(stripFile(*s)); return;} -} - -// Strip file extension from string -#line 4405 "runtime.in" -// string stripextension(string *s); -void gen_runtime419(stack *Stack) -{ - string * s=vm::pop<string *>(Stack); -#line 4406 "runtime.in" - {Stack->push<string>(stripExt(*s)); return;} -} - -// Call ImageMagick convert. -#line 4411 "runtime.in" -// Int convert(string args=emptystring, string file=emptystring, string format=emptystring); -void gen_runtime420(stack *Stack) -{ - string format=vm::pop<string>(Stack,emptystring); - string file=vm::pop<string>(Stack,emptystring); - string args=vm::pop<string>(Stack,emptystring); -#line 4413 "runtime.in" - string name=convertname(file,format); - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("convert")); - push_split(cmd,args); - cmd.push_back(name); - bool quiet=verbose <= 1; - Int ret=System(cmd,quiet ? 1 : 0,true,"convert", - "your ImageMagick convert utility"); - - if(ret == 0 && verbose > 0) - cout << "Wrote " << ((file.empty()) ? name : file) << endl; - - {Stack->push<Int>(ret); return;} -} - -// Call ImageMagick animate. -#line 4430 "runtime.in" -// Int animate(string args=emptystring, string file=emptystring, string format=emptystring); -void gen_runtime421(stack *Stack) -{ - string format=vm::pop<string>(Stack,emptystring); - string file=vm::pop<string>(Stack,emptystring); - string args=vm::pop<string>(Stack,emptystring); -#line 4432 "runtime.in" -#ifndef __CYGWIN__ - string name=convertname(file,format,false); - if(view()) { - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("animate")); - push_split(cmd,args); - cmd.push_back(name); - {Stack->push<Int>(System(cmd,0,false,"animate","your animated GIF viewer")); return;} - } -#endif - {Stack->push<Int>(0); return;} -} - -// Delete file named s. -#line 4447 "runtime.in" -// Int delete(string *s); -void gen_runtime422(stack *Stack) -{ - string * s=vm::pop<string *>(Stack); -#line 4448 "runtime.in" - checkLocal(*s); - Int rc=unlink(s->c_str()); - if(rc == 0 && verbose > 0) - cout << "Deleted " << *s << endl; - {Stack->push<Int>(rc); return;} -} - -// Rename file "from" to file "to". -#line 4457 "runtime.in" -// Int rename(string *from, string *to); -void gen_runtime423(stack *Stack) -{ - string * to=vm::pop<string *>(Stack); - string * from=vm::pop<string *>(Stack); -#line 4458 "runtime.in" - checkLocal(*from); - checkLocal(*to); - Int rc=rename(from->c_str(),to->c_str()); - if(rc == 0 && verbose > 0) - cout << "Renamed " << *from << " to " << *to << endl; - {Stack->push<Int>(rc); return;} -} - - -// Array operations - -// Create an empty array. -#line 4471 "runtime.in" -void emptyArray(stack *Stack) -{ -#line 4472 "runtime.in" - {Stack->push<array*>(new array(0)); return;} -} - -// Create a new array (technically a vector). -// This array will be multidimensional. First the number of dimensions -// is popped off the stack, followed by each dimension in reverse order. -// The array itself is technically a one dimensional array of one -// dimension arrays and so on. -#line 4481 "runtime.in" -void newDeepArray(stack *Stack) -{ - Int depth=vm::pop<Int>(Stack); -#line 4482 "runtime.in" - assert(depth > 0); - - Int *dims = new Int[depth]; - - for (Int index = depth-1; index >= 0; index--) { - Int i=pop<Int>(Stack); - if(i < 0) error("cannot create a negative length array"); - dims[index]=i; - } - - array *a=deepArray(depth, dims); - delete[] dims; - {Stack->push<array*>(a); return;} -} - -// Creates an array with elements already specified. First, the number -// of elements is popped off the stack, followed by each element in -// reverse order. -#line 4501 "runtime.in" -void newInitializedArray(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); -#line 4502 "runtime.in" - assert(n >= 0); - - array *a = new array(n); - - for (Int index = n-1; index >= 0; index--) - (*a)[index] = pop(Stack); - - {Stack->push<array*>(a); return;} -} - -// Similar to newInitializedArray, but after the n elements, append another -// array to it. -#line 4515 "runtime.in" -void newAppendedArray(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - array* tail=vm::pop<array*>(Stack); -#line 4516 "runtime.in" - assert(n >= 0); - - array *a = new array(n); - - for (Int index = n-1; index >= 0; index--) - (*a)[index] = pop(Stack); - - copy(tail->begin(), tail->end(), back_inserter(*a)); - - {Stack->push<array*>(a); return;} -} - -// The function T[] array(int n, T value, int depth=0) produces a array of n -// copies of x, where each copy is copied up to depth. -#line 4531 "runtime.in" -void newDuplicateArray(stack *Stack) -{ - Int depth=vm::pop<Int>(Stack,Int_MAX); - item value=vm::pop(Stack); - Int n=vm::pop<Int>(Stack); -#line 4532 "runtime.in" - if(n < 0) error("cannot create a negative length array"); - if(depth < 0) error("cannot copy to a negative depth"); - - {Stack->push<array*>(new array(n, value, depth)); return;} -} - -// Read an element from an array. Checks for initialization & bounds. -#line 4540 "runtime.in" -void arrayRead(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4541 "runtime.in" - item& i=arrayRead(a,n); - if (i.empty()) { - ostringstream buf; - buf << "read uninitialized value from array at index " << n; - error(buf); - } - {Stack->push(i); return;} -} - -// Slice a substring from an array. -#line 4552 "runtime.in" -void arraySliceRead(stack *Stack) -{ - Int right=vm::pop<Int>(Stack); - Int left=vm::pop<Int>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4553 "runtime.in" - checkArray(a); - {Stack->push(a->slice(left, right)); return;} -} - -// Slice a substring from an array. This implements the cases a[i:] and a[:] -// where the endpoint is not given, and assumed to be the length of the array. -#line 4560 "runtime.in" -void arraySliceReadToEnd(stack *Stack) -{ - Int left=vm::pop<Int>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4561 "runtime.in" - size_t len=checkArray(a); - {Stack->push(a->slice(left, (Int)len)); return;} -} - -// Read an element from an array of arrays. Check bounds and initialize -// as necessary. -#line 4568 "runtime.in" -void arrayArrayRead(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4569 "runtime.in" - item& i=arrayRead(a,n); - if (i.empty()) i=new array(0); - {Stack->push(i); return;} -} - -// Write an element to an array. Increase size if necessary. -#line 4576 "runtime.in" -void arrayWrite(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - array * a=vm::pop<array *>(Stack); - item value=vm::pop(Stack); -#line 4577 "runtime.in" - size_t len=checkArray(a); - bool cyclic=a->cyclic(); - if(cyclic && len > 0) n=imod(n,len); - else { - if(cyclic) outOfBounds("writing cyclic",len,n); - if(n < 0) outOfBounds("writing",len,n); - if(len <= (size_t) n) - a->resize(n+1); - } - (*a)[n] = value; - {Stack->push(value); return;} -} - -#line 4591 "runtime.in" -void arraySliceWrite(stack *Stack) -{ - Int right=vm::pop<Int>(Stack); - Int left=vm::pop<Int>(Stack); - array * dest=vm::pop<array *>(Stack); - array * src=vm::pop<array *>(Stack); -#line 4592 "runtime.in" - checkArray(src); - checkArray(dest); - dest->setSlice(left, right, src); - {Stack->push<array*>(src); return;} -} - -#line 4599 "runtime.in" -void arraySliceWriteToEnd(stack *Stack) -{ - Int left=vm::pop<Int>(Stack); - array * dest=vm::pop<array *>(Stack); - array * src=vm::pop<array *>(Stack); -#line 4600 "runtime.in" - checkArray(src); - size_t len=checkArray(dest); - dest->setSlice(left, (Int) len, src); - {Stack->push<array*>(src); return;} -} - -// Returns the length of an array. -#line 4608 "runtime.in" -void arrayLength(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4609 "runtime.in" - {Stack->push<Int>((Int) checkArray(a)); return;} -} - -// Returns an array of integers representing the keys of the array. -#line 4614 "runtime.in" -void arrayKeys(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4615 "runtime.in" - size_t size=checkArray(a); - - array *keys=new array(); - for (size_t i=0; i<size; ++i) { - item& cell = (*a)[i]; - if (!cell.empty()) - keys->push((Int)i); - } - - {Stack->push<array*>(keys); return;} -} - -// Return the cyclic flag for an array. -#line 4629 "runtime.in" -void arrayCyclicFlag(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4630 "runtime.in" - checkArray(a); - {Stack->push<bool>(a->cyclic()); return;} -} - -#line 4635 "runtime.in" -void arraySetCyclicFlag(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - bool b=vm::pop<bool>(Stack); -#line 4636 "runtime.in" - checkArray(a); - a->cyclic(b); - {Stack->push<bool>(b); return;} -} - -// Check to see if an array element is initialized. -#line 4643 "runtime.in" -void arrayInitializedHelper(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - Int n=vm::pop<Int>(Stack); -#line 4644 "runtime.in" - size_t len=checkArray(a); - bool cyclic=a->cyclic(); - if(cyclic && len > 0) n=imod(n,len); - else if(n < 0 || n >= (Int) len) {Stack->push<bool>(false); return;} - item&i=(*a)[(unsigned) n]; - {Stack->push<bool>(!i.empty()); return;} -} - -// Returns the initialize method for an array. -#line 4654 "runtime.in" -void arrayInitialized(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4655 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayInitializedHelper),a)); return;} -} - -// The helper function for the cyclic method that sets the cyclic flag. -#line 4660 "runtime.in" -void arrayCyclicHelper(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - bool b=vm::pop<bool>(Stack); -#line 4661 "runtime.in" - checkArray(a); - a->cyclic(b); -} - -// Set the cyclic flag for an array. -#line 4667 "runtime.in" -void arrayCyclic(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4668 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayCyclicHelper),a)); return;} -} - -// The helper function for the push method that does the actual operation. -#line 4673 "runtime.in" -void arrayPushHelper(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - item x=vm::pop(Stack); -#line 4674 "runtime.in" - checkArray(a); - a->push(x); - {Stack->push(x); return;} -} - -// Returns the push method for an array. -#line 4681 "runtime.in" -void arrayPush(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4682 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayPushHelper),a)); return;} -} - -// The helper function for the append method that appends b to a. -#line 4687 "runtime.in" -void arrayAppendHelper(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - array * b=vm::pop<array *>(Stack); -#line 4688 "runtime.in" - checkArray(a); - size_t size=checkArray(b); - for(size_t i=0; i < size; i++) - a->push((*b)[i]); -} - -// Returns the append method for an array. -#line 4696 "runtime.in" -void arrayAppend(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4697 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayAppendHelper),a)); return;} -} - -// The helper function for the pop method. -#line 4702 "runtime.in" -void arrayPopHelper(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4703 "runtime.in" - size_t asize=checkArray(a); - if(asize == 0) - error("cannot pop element from empty array"); - {Stack->push(a->pop()); return;} -} - -// Returns the pop method for an array. -#line 4711 "runtime.in" -void arrayPop(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4712 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayPopHelper),a)); return;} -} - -// The helper function for the insert method. -#line 4717 "runtime.in" -void arrayInsertHelper(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - array * x=vm::pop<array *>(Stack); - Int i=vm::pop<Int>(Stack); -#line 4718 "runtime.in" - size_t asize=checkArray(a); - checkArray(x); - if(a->cyclic() && asize > 0) i=imod(i,asize); - if(i < 0 || i > (Int) asize) - outOfBounds("inserting",asize,i); - (*a).insert((*a).begin()+i,(*x).begin(),(*x).end()); -} - -// Returns the insert method for an array. -#line 4728 "runtime.in" -void arrayInsert(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4729 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayInsertHelper),a)); return;} -} - -// Returns the delete method for an array. -#line 4734 "runtime.in" -void arrayDelete(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4735 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(arrayDeleteHelper),a)); return;} -} - -#line 4739 "runtime.in" -void arrayAlias(stack *Stack) -{ - array * b=vm::pop<array *>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4740 "runtime.in" - {Stack->push<bool>(a==b); return;} -} - -// Return array formed by indexing array a with elements of integer array b -#line 4745 "runtime.in" -void arrayIntArray(stack *Stack) -{ - array * b=vm::pop<array *>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4746 "runtime.in" - size_t asize=checkArray(a); - size_t bsize=checkArray(b); - array *r=new array(bsize); - bool cyclic=a->cyclic(); - for(size_t i=0; i < bsize; i++) { - Int index=read<Int>(b,i); - if(cyclic && asize > 0) index=imod(index,asize); - else - if(index < 0 || index >= (Int) asize) - outOfBounds("reading",asize,index); - (*r)[i]=(*a)[index]; - } - {Stack->push<array*>(r); return;} -} - -// returns the complement of the integer array a in {0,2,...,n-1}, -// so that b[complement(a,b.length)] yields the complement of b[a]. -#line 4764 "runtime.in" -// Intarray* complement(Intarray *a, Int n); -void gen_runtime455(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - Intarray * a=vm::pop<Intarray *>(Stack); -#line 4765 "runtime.in" - size_t asize=checkArray(a); - array *r=new array(0); - bool *keep=new bool[n]; - for(Int i=0; i < n; ++i) keep[i]=true; - for(size_t i=0; i < asize; ++i) { - Int j=read<Int>(a,i); - if(j >= 0 && j < n) keep[j]=false; - } - for(Int i=0; i < n; i++) - if(keep[i]) r->push(i); - - delete[] keep; - {Stack->push<Intarray*>(r); return;} -} - -// Generate the sequence {f(i) : i=0,1,...n-1} given a function f and integer n -#line 4782 "runtime.in" -void arraySequence(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); - callable * f=vm::pop<callable *>(Stack); -#line 4783 "runtime.in" - if(n < 0) n=0; - array *a=new array(n); - for(Int i=0; i < n; ++i) { - Stack->push(i); - f->call(Stack); - (*a)[i]=pop(Stack); - } - {Stack->push<Intarray*>(a); return;} -} - -// Return the array {0,1,...n-1} -#line 4795 "runtime.in" -// Intarray* sequence(Int n); -void gen_runtime457(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); -#line 4796 "runtime.in" - if(n < 0) n=0; - array *a=new array(n); - for(Int i=0; i < n; ++i) { - (*a)[i]=i; - } - {Stack->push<Intarray*>(a); return;} -} - -// Apply a function to each element of an array -#line 4806 "runtime.in" -void arrayFunction(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); - callable * f=vm::pop<callable *>(Stack); -#line 4807 "runtime.in" - size_t size=checkArray(a); - array *b=new array(size); - for(size_t i=0; i < size; ++i) { - Stack->push((*a)[i]); - f->call(Stack); - (*b)[i]=pop(Stack); - } - {Stack->push<array*>(b); return;} -} - -#line 4818 "runtime.in" -void arraySort(stack *Stack) -{ - callable * f=vm::pop<callable *>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4819 "runtime.in" - array *c=copyArray(a); - compareFunc=f; - FuncStack=Stack; - stable_sort(c->begin(),c->end(),compareFunction); - {Stack->push<array*>(c); return;} -} - -#line 4827 "runtime.in" -// bool all(boolarray *a); -void gen_runtime460(stack *Stack) -{ - boolarray * a=vm::pop<boolarray *>(Stack); -#line 4828 "runtime.in" - size_t size=checkArray(a); - bool c=true; - for(size_t i=0; i < size; i++) - if(!get<bool>((*a)[i])) {c=false; break;} - {Stack->push<bool>(c); return;} -} - -#line 4836 "runtime.in" -// boolarray* !(boolarray* a); -void gen_runtime461(stack *Stack) -{ - boolarray* a=vm::pop<boolarray*>(Stack); -#line 4837 "runtime.in" - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) - (*c)[i]=!read<bool>(a,i); - {Stack->push<boolarray*>(c); return;} -} - -#line 4845 "runtime.in" -// Int sum(boolarray *a); -void gen_runtime462(stack *Stack) -{ - boolarray * a=vm::pop<boolarray *>(Stack); -#line 4846 "runtime.in" - size_t size=checkArray(a); - Int sum=0; - for(size_t i=0; i < size; i++) - sum += read<bool>(a,i) ? 1 : 0; - {Stack->push<Int>(sum); return;} -} - -#line 4854 "runtime.in" -void arrayCopy(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4855 "runtime.in" - {Stack->push<array*>(copyArray(a)); return;} -} - -#line 4859 "runtime.in" -void arrayConcat(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4860 "runtime.in" - // a is an array of arrays to be concatenated together. - // The signature is - // T[] concat(... T[][] a); - - size_t numArgs=checkArray(a); - size_t resultSize=0; - for (size_t i=0; i < numArgs; ++i) { - resultSize += checkArray(a->read<array *>(i)); - } - - array *result=new array(resultSize); - - size_t ri=0; - for (size_t i=0; i < numArgs; ++i) { - array *arg=a->read<array *>(i); - size_t size=checkArray(arg); - - for (size_t j=0; j < size; ++j) { - (*result)[ri]=(*arg)[j]; - ++ri; - } - } - - {Stack->push<array*>(result); return;} -} - -#line 4887 "runtime.in" -void array2Copy(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4888 "runtime.in" - {Stack->push<array*>(copyArray2(a)); return;} -} - -#line 4892 "runtime.in" -void array3Copy(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4893 "runtime.in" - {Stack->push<array*>(copyArray3(a)); return;} -} - -#line 4897 "runtime.in" -void array2Transpose(stack *Stack) -{ - array * a=vm::pop<array *>(Stack); -#line 4898 "runtime.in" - size_t asize=checkArray(a); - array *c=new array(0); - for(size_t i=0; i < asize; i++) { - size_t ip=i+1; - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - size_t csize=checkArray(c); - if(csize < aisize) { - c->resize(aisize); - for(size_t j=csize; j < aisize; j++) { - (*c)[j]=new array(ip); - } - } - for(size_t j=0; j < aisize; j++) { - array *cj=read<array*>(c,j); - if(checkArray(cj) < ip) cj->resize(ip); - (*cj)[i]=(*ai)[j]; - } - } - {Stack->push<array*>(c); return;} -} - -// a is a rectangular 3D array; perm is an Int array indicating the type of -// permutation (021 or 120, etc; original is 012). -// Transpose by sending respective members to the permutated locations: -// return the array obtained by putting a[i][j][k] into position perm{ijk}. -#line 4925 "runtime.in" -void array3Transpose(stack *Stack) -{ - array * perm=vm::pop<array *>(Stack); - array * a=vm::pop<array *>(Stack); -#line 4926 "runtime.in" - const size_t DIM=3; - - if(checkArray(perm) != DIM) { - ostringstream buf; - buf << "permutation array must have length " << DIM; - error(buf); - } - - size_t* size=new size_t[DIM]; - for(size_t i=0; i < DIM; ++i) size[i]=DIM; - - for(size_t i=0; i < DIM; ++i) { - Int p=read<Int>(perm,i); - size_t P=(size_t) p; - if(p < 0 || P >= DIM) { - ostringstream buf; - buf << "permutation index out of range: " << p; - error(buf); - } - size[P]=P; - } - - for(size_t i=0; i < DIM; ++i) - if(size[i] == DIM) error("permutation indices must be distinct"); - - static const char *rectangular= - "3D transpose implemented for rectangular matrices only"; - - size_t isize=size[0]=checkArray(a); - array *a0=read<array*>(a,0); - size[1]=checkArray(a0); - array *a00=read<array*>(a0,0); - size[2]=checkArray(a00); - for(size_t i=0; i < isize; i++) { - array *ai=read<array*>(a,i); - size_t jsize=checkArray(ai); - if(jsize != size[1]) error(rectangular); - for(size_t j=0; j < jsize; j++) { - array *aij=read<array*>(ai,j); - if(checkArray(aij) != size[2]) error(rectangular); - } - } - - size_t perm0=(size_t) read<Int>(perm,0); - size_t perm1=(size_t) read<Int>(perm,1); - size_t perm2=(size_t) read<Int>(perm,2); - - size_t sizep0=size[perm0]; - size_t sizep1=size[perm1]; - size_t sizep2=size[perm2]; - - array *c=new array(sizep0); - for(size_t i=0; i < sizep0; ++i) { - array *ci=new array(sizep1); - (*c)[i]=ci; - for(size_t j=0; j < sizep1; ++j) { - array *cij=new array(sizep2); - (*ci)[j]=cij; - } - } - - size_t* i=new size_t[DIM]; - - for(i[0]=0; i[0] < size[0]; ++i[0]) { - array *a0=read<array*>(a,i[0]); - for(i[1]=0; i[1] < size[1]; ++i[1]) { - array *a1=read<array*>(a0,i[1]); - for(i[2]=0; i[2] < size[2]; ++i[2]) { - array *c0=read<array*>(c,i[perm0]); - array *c1=read<array*>(c0,i[perm1]); - (*c1)[i[perm2]]=read<real>(a1,i[2]); - } - } - } - - delete [] i; - delete [] size; - - {Stack->push<array*>(c); return;} -} - -// In a boolean array, find the index of the nth true value or -1 if not found -// If n is negative, search backwards. -#line 5010 "runtime.in" -// Int find(boolarray *a, Int n=1); -void gen_runtime469(stack *Stack) -{ - Int n=vm::pop<Int>(Stack,1); - boolarray * a=vm::pop<boolarray *>(Stack); -#line 5011 "runtime.in" - size_t size=checkArray(a); - Int j=-1; - if(n > 0) - for(size_t i=0; i < size; i++) - if(read<bool>(a,i)) { - n--; if(n == 0) {j=(Int) i; break;} - } - if(n < 0) - for(size_t i=size; i > 0;) - if(read<bool>(a,--i)) { - n++; if(n == 0) {j=(Int) i; break;} - } - {Stack->push<Int>(j); return;} -} - -// construct vector obtained by replacing those elements of b for which the -// corresponding elements of a are false by the corresponding element of c. -#line 5029 "runtime.in" -void arrayConditional(stack *Stack) -{ - array * c=vm::pop<array *>(Stack); - array * b=vm::pop<array *>(Stack); - array * a=vm::pop<array *>(Stack); -#line 5030 "runtime.in" - size_t size=checkArray(a); - array *r=new array(size); - if(b && c) { - checkArrays(a,b); - checkArrays(b,c); - for(size_t i=0; i < size; i++) - (*r)[i]=read<bool>(a,i) ? (*b)[i] : (*c)[i]; - } else { - r->clear(); - if(b) { - checkArrays(a,b); - for(size_t i=0; i < size; i++) - if(read<bool>(a,i)) r->push((*b)[i]); - } else if(c) { - checkArrays(a,c); - for(size_t i=0; i < size; i++) - if(!read<bool>(a,i)) r->push((*c)[i]); - } - } - {Stack->push<array*>(r); return;} -} - -// Return an n x n identity matrix. -#line 5054 "runtime.in" -// realarray2* identity(Int n); -void gen_runtime471(stack *Stack) -{ - Int n=vm::pop<Int>(Stack); -#line 5055 "runtime.in" - {Stack->push<realarray2*>(Identity(n)); return;} -} - -// Return the diagonal matrix with diagonal entries given by a. -#line 5060 "runtime.in" -void diagonal(stack *Stack) -{ - realarray * a=vm::pop<realarray *>(Stack); -#line 5061 "runtime.in" - size_t n=checkArray(a); - array *c=new array(n); - for(size_t i=0; i < n; ++i) { - array *ci=new array(n); - (*c)[i]=ci; - for(size_t j=0; j < i; ++j) - (*ci)[j]=0.0; - (*ci)[i]=read<real>(a,i); - for(size_t j=i+1; j < n; ++j) - (*ci)[j]=0.0; - } - {Stack->push<realarray2*>(c); return;} -} - -// Return the inverse of an n x n matrix a using Gauss-Jordan elimination. -#line 5077 "runtime.in" -// realarray2* inverse(realarray2 *a); -void gen_runtime473(stack *Stack) -{ - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 5078 "runtime.in" - a=copyArray2(a); - size_t n=checkArray(a); - checkSquare(a); - - inverseAllocate(n); - - for(size_t i=0; i < n; i++) - pivot[i]=0; - - size_t col=0, row=0; - // This is the main loop over the columns to be reduced. - for(size_t i=0; i < n; i++) { - real big=0.0; - // This is the outer loop of the search for a pivot element. - for(size_t j=0; j < n; j++) { - array *aj=read<array*>(a,j); - if(pivot[j] != 1) { - for(size_t k=0; k < n; k++) { - if(pivot[k] == 0) { - real temp=fabs(read<real>(aj,k)); - if(temp >= big) { - big=temp; - row=j; - col=k; - } - } else if(pivot[k] > 1) { - inverseDeallocate(); - error(singular); - } - } - } - } - ++(pivot[col]); - - // Interchange rows, if needed, to put the pivot element on the diagonal. - array *acol=read<array*>(a,col); - if(row != col) { - array *arow=read<array*>(a,row); - for(size_t l=0; l < n; l++) { - real temp=read<real>(arow,l); - (*arow)[l]=read<real>(acol,l); - (*acol)[l]=temp; - } - } - - Row[i]=row; - Col[i]=col; - - // Divide the pivot row by the pivot element. - real denom=read<real>(acol,col); - if(denom == 0.0) { - inverseDeallocate(); - error(singular); - } - real pivinv=1.0/denom; - (*acol)[col]=1.0; - for(size_t l=0; l < n; l++) - (*acol)[l]=read<real>(acol,l)*pivinv; - - // Reduce all rows except for the pivoted one. - for(size_t k=0; k < n; k++) { - if(k != col) { - array *ak=read<array*>(a,k); - real akcol=read<real>(ak,col); - (*ak)[col]=0.0; - for(size_t l=0; l < n; l++) - (*ak)[l]=read<real>(ak,l)-read<real>(acol,l)*akcol; - } - } - } - - // Unscramble the inverse matrix in view of the column interchanges. - for(size_t l=n; l > 0;) { - l--; - size_t r=Row[l]; - size_t c=Col[l]; - if(r != c) { - for(size_t k=0; k < n; k++) { - array *ak=read<array*>(a,k); - real temp=read<real>(ak,r); - (*ak)[r]=read<real>(ak,c); - (*ak)[c]=temp; - } - } - } - inverseDeallocate(); - {Stack->push<realarray2*>(a); return;} -} - -// Solve the linear equation ax=b by LU decomposition, returning the -// solution x, where a is an n x n matrix and b is an array of length n. -// If no solution exists, return an empty array. -#line 5171 "runtime.in" -// realarray* solve(realarray2 *a, realarray *b, bool warn=true); -void gen_runtime474(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - realarray * b=vm::pop<realarray *>(Stack); - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 5172 "runtime.in" - size_t n=checkArray(a); - - if(n == 0) {Stack->push<realarray*>(new array(0)); return;} - - size_t m=checkArray(b); - if(m != n) error(incommensurate); - - real *A=copyArray2C(a); - size_t *index=new size_t[n]; - - if(LUdecompose(A,n,index,warn) == 0) - {Stack->push<realarray*>(new array(0)); return;} - - array *x=new array(n); - - real *B=copyArrayC(b); - - for(size_t i=0; i < n; ++i) { - size_t ip=index[i]; - real sum=B[ip]; - B[ip]=B[i]; - real *Ai=A+i*n; - for(size_t j=0; j < i; ++j) - sum -= Ai[j]*B[j]; - B[i]=sum; - } - - for(size_t i=n; i > 0;) { - --i; - real sum=B[i]; - real *Ai=A+i*n; - for(size_t j=i+1; j < n; ++j) - sum -= Ai[j]*B[j]; - B[i]=sum/Ai[i]; - } - - for(size_t i=0; i < n; ++i) - (*x)[i]=B[i]; - - delete[] index; - delete[] B; - delete[] A; - - {Stack->push<realarray*>(x); return;} -} - -// Solve the linear equation ax=b by LU decomposition, returning the -// solution x, where a is an n x n matrix and b is an n x m matrix. -// If no solution exists, return an empty array. -#line 5222 "runtime.in" -// realarray2* solve(realarray2 *a, realarray2 *b, bool warn=true); -void gen_runtime475(stack *Stack) -{ - bool warn=vm::pop<bool>(Stack,true); - realarray2 * b=vm::pop<realarray2 *>(Stack); - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 5223 "runtime.in" - size_t n=checkArray(a); - - if(n == 0) {Stack->push<realarray2*>(new array(0)); return;} - - if(checkArray(b) != n) error(incommensurate); - size_t m=checkArray(read<array*>(b,0)); - - real *A=copyArray2C(a); - real *B=copyArray2C(b,false); - - size_t *index=new size_t[n]; - - if(LUdecompose(A,n,index,warn) == 0) - {Stack->push<realarray2*>(new array(0)); return;} - - array *x=new array(n); - - for(size_t i=0; i < n; ++i) { - real *Ai=A+i*n; - real *Bi=B+i*m; - real *Bip=B+index[i]*m; - for(size_t k=0; k < m; ++k) { - real sum=Bip[k]; - Bip[k]=Bi[k]; - size_t jk=k; - for(size_t j=0; j < i; ++j, jk += m) - sum -= Ai[j]*B[jk]; - Bi[k]=sum; - } - } - - for(size_t i=n; i > 0;) { - --i; - real *Ai=A+i*n; - real *Bi=B+i*m; - for(size_t k=0; k < m; ++k) { - real sum=Bi[k]; - size_t jk=(i+1)*m+k; - for(size_t j=i+1; j < n; ++j, jk += m) - sum -= Ai[j]*B[jk]; - Bi[k]=sum/Ai[i]; - } - } - - for(size_t i=0; i < n; ++i) { - real *Bi=B+i*m; - array *xi=new array(m); - (*x)[i]=xi; - for(size_t j=0; j < m; ++j) - (*xi)[j]=Bi[j]; - } - - delete[] index; - delete[] B; - delete[] A; - - {Stack->push<realarray2*>(x); return;} -} - -// Compute the determinant of an n x n matrix. -#line 5284 "runtime.in" -// real determinant(realarray2 *a); -void gen_runtime476(stack *Stack) -{ - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 5285 "runtime.in" - real *A=copyArray2C(a); - size_t n=checkArray(a); - - real det=LUdecompose(A,n,NULL,false); - size_t n1=n+1; - for(size_t i=0; i < n; ++i) - det *= A[i*n1]; - - delete[] A; - - {Stack->push<real>(det); return;} -} - -#line 5299 "runtime.in" -// realarray* *(realarray2 *a, realarray *b); -void gen_runtime477(stack *Stack) -{ - realarray * b=vm::pop<realarray *>(Stack); - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 5300 "runtime.in" - size_t n=checkArray(a); - size_t m=checkArray(b); - array *c=new array(n); - real *B=copyArrayC(b); - for(size_t i=0; i < n; ++i) { - array *ai=read<array*>(a,i); - if(checkArray(ai) != m) error(incommensurate); - real sum=0.0; - for(size_t j=0; j < m; ++j) - sum += read<real>(ai,j)*B[j]; - (*c)[i]=sum; - } - delete[] B; - {Stack->push<realarray*>(c); return;} -} - -#line 5317 "runtime.in" -// realarray* *(realarray *a, realarray2 *b); -void gen_runtime478(stack *Stack) -{ - realarray2 * b=vm::pop<realarray2 *>(Stack); - realarray * a=vm::pop<realarray *>(Stack); -#line 5318 "runtime.in" - size_t n=checkArray(a); - if(n != checkArray(b)) error(incommensurate); - real *A=copyArrayC(a); - - array **B=new array*[n]; - array *bk=read<array *>(b,0); - B[0]=bk; - size_t m=bk->size(); - for(size_t k=1; k < n; k++) { - array *bk=read<array *>(b,k); - if(bk->size() != m) error(incommensurate); - B[k]=bk; - } - array *c=new array(m); - - for(size_t i=0; i < m; ++i) { - real sum=0.0; - for(size_t k=0; k < n; ++k) - sum += A[k]*read<real>(B[k],i); - (*c)[i]=sum; - } - delete[] B; - delete[] A; - {Stack->push<realarray*>(c); return;} -} - -#line 5345 "runtime.in" -// realarray2* *(realarray2 *a, realarray2 *b); -void gen_runtime479(stack *Stack) -{ - realarray2 * b=vm::pop<realarray2 *>(Stack); - realarray2 * a=vm::pop<realarray2 *>(Stack); -#line 5346 "runtime.in" - size_t n=checkArray(a); - - size_t nb=checkArray(b); - size_t na0=n == 0 ? 0 : checkArray(read<array*>(a,0)); - if(na0 != nb) - error(incommensurate); - - size_t nb0=nb == 0 ? 0 : checkArray(read<array*>(b,0)); - - array *c=new array(n); - - real *A=copyArray2C(a,false); - real *B=copyArray2C(b,false); - - for(size_t i=0; i < n; ++i) { - real *Ai=A+i*nb; - array *ci=new array(nb0); - (*c)[i]=ci; - for(size_t j=0; j < nb0; ++j) { - real sum=0.0; - size_t kj=j; - for(size_t k=0; k < nb; ++k, kj += nb0) - sum += Ai[k]*B[kj]; - (*ci)[j]=sum; - } - } - - delete[] B; - delete[] A; - - {Stack->push<realarray2*>(c); return;} -} - -#line 5380 "runtime.in" -// triple *(realarray2 *t, triple v); -void gen_runtime480(stack *Stack) -{ - triple v=vm::pop<triple>(Stack); - realarray2 * t=vm::pop<realarray2 *>(Stack); -#line 5381 "runtime.in" - {Stack->push<triple>(*t*v); return;} -} - -#line 5385 "runtime.in" -// pair project(triple v, realarray2 *t); -void gen_runtime481(stack *Stack) -{ - realarray2 * t=vm::pop<realarray2 *>(Stack); - triple v=vm::pop<triple>(Stack); -#line 5386 "runtime.in" - size_t n=checkArray(t); - if(n != 4) error(incommensurate); - array *t0=read<array*>(t,0); - array *t1=read<array*>(t,1); - array *t3=read<array*>(t,3); - if(checkArray(t0) != 4 || checkArray(t1) != 4 || checkArray(t3) != 4) - error(incommensurate); - - real x=v.getx(); - real y=v.gety(); - real z=v.getz(); - - real f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ - read<real>(t3,3); - if(f == 0.0) dividebyzero(); - f=1.0/f; - - {Stack->push<pair>(pair((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ - read<real>(t0,3))*f, - (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ - read<real>(t1,3))*f)); return;} -} - -// Compute the dot product of vectors a and b. -#line 5411 "runtime.in" -// real dot(realarray *a, realarray *b); -void gen_runtime482(stack *Stack) -{ - realarray * b=vm::pop<realarray *>(Stack); - realarray * a=vm::pop<realarray *>(Stack); -#line 5412 "runtime.in" - size_t n=checkArrays(a,b); - real sum=0.0; - for(size_t i=0; i < n; ++i) - sum += read<real>(a,i)*read<real>(b,i); - {Stack->push<real>(sum); return;} -} - -// Solve the problem L\inv f, where f is an n vector and L is the n x n matrix -// -// [ b[0] c[0] a[0] ] -// [ a[1] b[1] c[1] ] -// [ a[2] b[2] c[2] ] -// [ ... ] -// [ c[n-1] a[n-1] b[n-1] ] -#line 5427 "runtime.in" -// realarray* tridiagonal(realarray *a, realarray *b, realarray *c, realarray *f); -void gen_runtime483(stack *Stack) -{ - realarray * f=vm::pop<realarray *>(Stack); - realarray * c=vm::pop<realarray *>(Stack); - realarray * b=vm::pop<realarray *>(Stack); - realarray * a=vm::pop<realarray *>(Stack); -#line 5428 "runtime.in" - size_t n=checkArrays(a,b); - checkEqual(n,checkArray(c)); - checkEqual(n,checkArray(f)); - - array *up=new array(n); - array& u=*up; - - if(n == 0) {Stack->push<realarray*>(up); return;} - - // Special case: zero Dirichlet boundary conditions - if(read<real>(a,0) == 0.0 && read<real>(c,n-1) == 0.0) { - real temp=read<real>(b,0); - if(temp == 0.0) dividebyzero(); - temp=1.0/temp; - - real *work=new real[n]; - u[0]=read<real>(f,0)*temp; - work[0]=-read<real>(c,0)*temp; - - for(size_t i=1; i < n; i++) { - real temp=(read<real>(b,i)+read<real>(a,i)*work[i-1]); - if(temp == 0.0) {delete[] work; dividebyzero();} - temp=1.0/temp; - u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*temp; - work[i]=-read<real>(c,i)*temp; - } - - for(size_t i=n-1; i >= 1; i--) - u[i-1]=read<real>(u,i-1)+work[i-1]*read<real>(u,i); - - delete[] work; - {Stack->push<realarray*>(up); return;} - } - - real binv=read<real>(b,0); - if(binv == 0.0) dividebyzero(); - binv=1.0/binv; - - if(n == 1) {u[0]=read<real>(f,0)*binv; {Stack->push<realarray*>(up); return;}} - if(n == 2) { - real factor=(read<real>(b,0)*read<real>(b,1)- - read<real>(a,0)*read<real>(c,1)); - if(factor== 0.0) dividebyzero(); - factor=1.0/factor; - real temp=(read<real>(b,0)*read<real>(f,1)- - read<real>(c,1)*read<real>(f,0))*factor; - u[0]=(read<real>(b,1)*read<real>(f,0)- - read<real>(a,0)*read<real>(f,1))*factor; - u[1]=temp; - {Stack->push<realarray*>(up); return;} - } - - real *gamma=new real[n-2]; - real *delta=new real[n-2]; - - gamma[0]=read<real>(c,0)*binv; - delta[0]=read<real>(a,0)*binv; - u[0]=read<real>(f,0)*binv; - real beta=read<real>(c,n-1); - real fn=read<real>(f,n-1)-beta*read<real>(u,0); - real alpha=read<real>(b,n-1)-beta*delta[0]; - - for(size_t i=1; i <= n-3; i++) { - real alphainv=read<real>(b,i)-read<real>(a,i)*gamma[i-1]; - if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} - alphainv=1.0/alphainv; - beta *= -gamma[i-1]; - gamma[i]=read<real>(c,i)*alphainv; - u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*alphainv; - fn -= beta*read<real>(u,i); - delta[i]=-read<real>(a,i)*delta[i-1]*alphainv; - alpha -= beta*delta[i]; - } - - real alphainv=read<real>(b,n-2)-read<real>(a,n-2)*gamma[n-3]; - if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} - alphainv=1.0/alphainv; - u[n-2]=(read<real>(f,n-2)-read<real>(a,n-2)*read<real>(u,n-3)) - *alphainv; - beta=read<real>(a,n-1)-beta*gamma[n-3]; - real dnm1=(read<real>(c,n-2)-read<real>(a,n-2)*delta[n-3])*alphainv; - real temp=alpha-beta*dnm1; - if(temp == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} - u[n-1]=temp=(fn-beta*read<real>(u,n-2))/temp; - u[n-2]=read<real>(u,n-2)-dnm1*temp; - - for(size_t i=n-2; i >= 1; i--) - u[i-1]=read<real>(u,i-1)-gamma[i-1]*read<real>(u,i)-delta[i-1]*temp; - - delete[] delta; - delete[] gamma; - - {Stack->push<realarray*>(up); return;} -} - -// Root solve by Newton-Raphson -#line 5525 "runtime.in" -// real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x, bool verbose=false); -void gen_runtime484(stack *Stack) -{ - bool verbose=vm::pop<bool>(Stack,false); - real x=vm::pop<real>(Stack); - callableReal * fprime=vm::pop<callableReal *>(Stack); - callableReal * f=vm::pop<callableReal *>(Stack); - Int iterations=vm::pop<Int>(Stack,100); -#line 5527 "runtime.in" - static const real fuzz=1000.0*DBL_EPSILON; - Int i=0; - size_t oldPrec=0; - if(verbose) - oldPrec=cout.precision(DBL_DIG); - - real diff=DBL_MAX; - real lastdiff; - do { - real x0=x; - - Stack->push(x); - fprime->call(Stack); - real dfdx=pop<real>(Stack); - - if(dfdx == 0.0) { - x=DBL_MAX; - break; - } - - Stack->push(x); - f->call(Stack); - real fx=pop<real>(Stack); - - x -= fx/dfdx; - - lastdiff=diff; - - if(verbose) - cout << "Newton-Raphson: " << x << endl; - - diff=fabs(x-x0); - if(++i == iterations) { - x=DBL_MAX; - break; - } - } while (diff != 0.0 && (diff < lastdiff || diff > fuzz*fabs(x))); - - if(verbose) - cout.precision(oldPrec); - {Stack->push<real>(x); return;} -} - -// Root solve by Newton-Raphson bisection -// cf. routine rtsafe (Press et al., Numerical Recipes, 1991). -#line 5573 "runtime.in" -// real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x1, real x2, bool verbose=false); -void gen_runtime485(stack *Stack) -{ - bool verbose=vm::pop<bool>(Stack,false); - real x2=vm::pop<real>(Stack); - real x1=vm::pop<real>(Stack); - callableReal * fprime=vm::pop<callableReal *>(Stack); - callableReal * f=vm::pop<callableReal *>(Stack); - Int iterations=vm::pop<Int>(Stack,100); -#line 5575 "runtime.in" - static const real fuzz=1000.0*DBL_EPSILON; - size_t oldPrec=0; - if(verbose) - oldPrec=cout.precision(DBL_DIG); - - Stack->push(x1); - f->call(Stack); - real f1=pop<real>(Stack); - if(f1 == 0.0) {Stack->push<real>(x1); return;} - - Stack->push(x2); - f->call(Stack); - real f2=pop<real>(Stack); - if(f2 == 0.0) {Stack->push<real>(x2); return;} - - if((f1 > 0.0 && f2 > 0.0) || (f1 < 0.0 && f2 < 0.0)) { - ostringstream buf; - buf << "root not bracketed, f(x1)=" << f1 << ", f(x2)=" << f2 << endl; - error(buf); - } - - real x=0.5*(x1+x2); - real dxold=fabs(x2-x1); - if(f1 > 0.0) { - real temp=x1; - x1=x2; - x2=temp; - } - - if(verbose) - cout << "midpoint: " << x << endl; - - real dx=dxold; - Stack->push(x); - f->call(Stack); - real y=pop<real>(Stack); - - Stack->push(x); - fprime->call(Stack); - real dy=pop<real>(Stack); - - Int j; - for(j=0; j < iterations; j++) { - if(((x-x2)*dy-y)*((x-x1)*dy-y) >= 0.0 || fabs(2.0*y) > fabs(dxold*dy)) { - dxold=dx; - dx=0.5*(x2-x1); - x=x1+dx; - if(verbose) - cout << "bisection: " << x << endl; - if(x1 == x) {Stack->push<real>(x); return;} - } else { - dxold=dx; - dx=y/dy; - real temp=x; - x -= dx; - if(verbose) - cout << "Newton-Raphson: " << x << endl; - if(temp == x) {Stack->push<real>(x); return;} - } - if(fabs(dx) < fuzz*fabs(x)) {Stack->push<real>(x); return;} - - Stack->push(x); - f->call(Stack); - y=pop<real>(Stack); - - Stack->push(x); - fprime->call(Stack); - dy=pop<real>(Stack); - - if(y < 0.0) x1=x; - else x2=x; - } - if(verbose) - cout.precision(oldPrec); - {Stack->push<real>((j == iterations) ? DBL_MAX : x); return;} -} - -#line 5653 "runtime.in" -// real simpson(callableReal *f, real a, real b, real acc=DBL_EPSILON, real dxmax=0); -void gen_runtime486(stack *Stack) -{ - real dxmax=vm::pop<real>(Stack,0); - real acc=vm::pop<real>(Stack,DBL_EPSILON); - real b=vm::pop<real>(Stack); - real a=vm::pop<real>(Stack); - callableReal * f=vm::pop<callableReal *>(Stack); -#line 5655 "runtime.in" - real integral; - if(dxmax == 0) dxmax=b-a; - Func=f; - FuncStack=Stack; - if(!simpson(integral,wrapFunction,a,b,acc,dxmax)) - error("nesting capacity exceeded in simpson"); - {Stack->push<real>(integral); return;} -} - -// Compute the fast Fourier transform of a pair array -#line 5666 "runtime.in" -void pairArrayFFT(stack *Stack) -{ - Int sign=vm::pop<Int>(Stack,1); - pairarray * a=vm::pop<pairarray *>(Stack); -#line 5667 "runtime.in" - unsigned n=(unsigned) checkArray(a); -#ifdef HAVE_LIBFFTW3 - array *c=new array(n); - if(n) { - Complex *f=FFTWComplex(n); - fft1d Forward(n,intcast(sign),f); - - for(size_t i=0; i < n; i++) { - pair z=read<pair>(a,i); - f[i]=Complex(z.getx(),z.gety()); - } - Forward.fft(f); - - for(size_t i=0; i < n; i++) { - Complex z=f[i]; - (*c)[i]=pair(z.real(),z.imag()); - } - FFTWdelete(f); - } -#else - unused(&n); - unused(&sign); - array *c=new array(0); -#endif // HAVE_LIBFFTW3 - {Stack->push<pairarray*>(c); return;} -} - -#line 5695 "runtime.in" -// Intarray2* triangulate(pairarray *z); -void gen_runtime488(stack *Stack) -{ - pairarray * z=vm::pop<pairarray *>(Stack); -#line 5696 "runtime.in" - size_t nv=checkArray(z); -// Call robust version of Gilles Dumoulin's port of Paul Bourke's -// triangulation code. - - XYZ *pxyz=new XYZ[nv+3]; - ITRIANGLE *V=new ITRIANGLE[4*nv]; - - for(size_t i=0; i < nv; ++i) { - pair w=read<pair>(z,i); - pxyz[i].p[0]=w.getx(); - pxyz[i].p[1]=w.gety(); - pxyz[i].i=(Int) i; - } - - Int ntri; - Triangulate((Int) nv,pxyz,V,ntri,true,false); - - size_t nt=(size_t) ntri; - array *t=new array(nt); - for(size_t i=0; i < nt; ++i) { - array *ti=new array(3); - (*t)[i]=ti; - ITRIANGLE *Vi=V+i; - (*ti)[0]=pxyz[Vi->p1].i; - (*ti)[1]=pxyz[Vi->p2].i; - (*ti)[2]=pxyz[Vi->p3].i; - } - - delete[] V; - delete[] pxyz; - {Stack->push<Intarray2*>(t); return;} -} - - -// File operations -#line 5732 "runtime.in" -// bool ==(file *a, file *b); -void gen_runtime489(stack *Stack) -{ - file * b=vm::pop<file *>(Stack); - file * a=vm::pop<file *>(Stack); -#line 5733 "runtime.in" - {Stack->push<bool>(a == b); return;} -} - -#line 5738 "runtime.in" -// bool !=(file *a, file *b); -void gen_runtime490(stack *Stack) -{ - file * b=vm::pop<file *>(Stack); - file * a=vm::pop<file *>(Stack); -#line 5739 "runtime.in" - {Stack->push<bool>(a != b); return;} -} - -#line 5743 "runtime.in" -void nullFile(stack *Stack) -{ -#line 5744 "runtime.in" - {Stack->push<file*>(&camp::nullfile); return;} -} - -#line 5748 "runtime.in" -// file* input(string name, bool check=true, string comment=commentchar); -void gen_runtime492(stack *Stack) -{ - string comment=vm::pop<string>(Stack,commentchar); - bool check=vm::pop<bool>(Stack,true); - string name=vm::pop<string>(Stack); -#line 5749 "runtime.in" - char c=comment.empty() ? (char) 0 : comment[0]; - file *f=new ifile(name,c,check); - f->open(); - {Stack->push<file*>(f); return;} -} - -#line 5756 "runtime.in" -// file* output(string name, bool update=false, string comment=commentchar); -void gen_runtime493(stack *Stack) -{ - string comment=vm::pop<string>(Stack,commentchar); - bool update=vm::pop<bool>(Stack,false); - string name=vm::pop<string>(Stack); -#line 5757 "runtime.in" - file *f; - if(update) { - char c=comment.empty() ? (char) 0 : comment[0]; - f=new iofile(name,c); - } else f=new ofile(name); - f->open(); - if(update) f->seek(0,false); - {Stack->push<file*>(f); return;} -} - -#line 5768 "runtime.in" -// file* xinput(string name, bool check=true); -void gen_runtime494(stack *Stack) -{ - bool check=vm::pop<bool>(Stack,true); - string name=vm::pop<string>(Stack); -#line 5769 "runtime.in" -#ifdef HAVE_RPC_RPC_H - file *f=new ixfile(name,check); - f->open(); - {Stack->push<file*>(f); return;} -#else - ostringstream buf; - buf << name << ": XDR read support not enabled"; - error(buf); - unused(&check); // Suppress unused variable warning -#endif -} - -#line 5782 "runtime.in" -// file* xoutput(string name, bool update=false); -void gen_runtime495(stack *Stack) -{ - bool update=vm::pop<bool>(Stack,false); - string name=vm::pop<string>(Stack); -#line 5783 "runtime.in" -#ifdef HAVE_RPC_RPC_H - file *f; - if(update) - f=new ioxfile(name); - else f=new oxfile(name); - f->open(); - if(update) f->seek(0,false); - {Stack->push<file*>(f); return;} -#else - ostringstream buf; - buf << name << ": XDR write support not enabled"; - error(buf); - unused(&update); // Suppress unused variable warning -#endif -} - -#line 5800 "runtime.in" -// file* binput(string name, bool check=true); -void gen_runtime496(stack *Stack) -{ - bool check=vm::pop<bool>(Stack,true); - string name=vm::pop<string>(Stack); -#line 5801 "runtime.in" - file *f=new ibfile(name,check); - f->open(); - {Stack->push<file*>(f); return;} -} - -#line 5807 "runtime.in" -// file* boutput(string name, bool update=false); -void gen_runtime497(stack *Stack) -{ - bool update=vm::pop<bool>(Stack,false); - string name=vm::pop<string>(Stack); -#line 5808 "runtime.in" - file *f; - if(update) f=new iobfile(name); - else f=new obfile(name); - f->open(); - if(update) f->seek(0,false); - {Stack->push<file*>(f); return;} -} - -#line 5817 "runtime.in" -// bool eof(file *f); -void gen_runtime498(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5818 "runtime.in" - {Stack->push<bool>(f->eof()); return;} -} - -#line 5822 "runtime.in" -// bool eol(file *f); -void gen_runtime499(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5823 "runtime.in" - {Stack->push<bool>(f->eol()); return;} -} - -#line 5827 "runtime.in" -// bool error(file *f); -void gen_runtime500(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5828 "runtime.in" - {Stack->push<bool>(f->error()); return;} -} - -#line 5832 "runtime.in" -// void clear(file *f); -void gen_runtime501(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5833 "runtime.in" - f->clear(); -} - -#line 5837 "runtime.in" -// void close(file *f); -void gen_runtime502(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5838 "runtime.in" - f->close(); -} - -#line 5842 "runtime.in" -// Int precision(file *f=NULL, Int digits=0); -void gen_runtime503(stack *Stack) -{ - Int digits=vm::pop<Int>(Stack,0); - file * f=vm::pop<file *>(Stack,NULL); -#line 5843 "runtime.in" - if(f == 0) f=&camp::Stdout; - {Stack->push<Int>(f->precision(digits)); return;} -} - -#line 5848 "runtime.in" -// void flush(file *f); -void gen_runtime504(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5849 "runtime.in" - f->flush(); -} - -#line 5853 "runtime.in" -// string getc(file *f); -void gen_runtime505(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5854 "runtime.in" - char c=0; - if(f->isOpen()) f->read(c); - static char str[1]; - str[0]=c; - {Stack->push<string>(string(str)); return;} -} - -#line 5862 "runtime.in" -// Int tell(file *f); -void gen_runtime506(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5863 "runtime.in" - {Stack->push<Int>(f->tell()); return;} -} - -#line 5867 "runtime.in" -// void seek(file *f, Int pos); -void gen_runtime507(stack *Stack) -{ - Int pos=vm::pop<Int>(Stack); - file * f=vm::pop<file *>(Stack); -#line 5868 "runtime.in" - f->seek(pos,pos >= 0); -} - -#line 5872 "runtime.in" -// void seekeof(file *f); -void gen_runtime508(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5873 "runtime.in" - f->seek(0,false); -} - -#line 5877 "runtime.in" -void namePart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5878 "runtime.in" - {Stack->push<string>(f.filename()); return;} -} - -#line 5882 "runtime.in" -void modePart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5883 "runtime.in" - {Stack->push<string>(f.FileMode()); return;} -} - -// Set file dimensions -#line 5888 "runtime.in" -void dimensionSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - Int nz=vm::pop<Int>(Stack,-1); - Int ny=vm::pop<Int>(Stack,-1); - Int nx=vm::pop<Int>(Stack,-1); -#line 5889 "runtime.in" - f->dimension(nx,ny,nz); - {Stack->push<file*>(f); return;} -} - -#line 5894 "runtime.in" -void dimensionSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5895 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(dimensionSetHelper),f)); return;} -} - -#line 5899 "runtime.in" -void dimensionPart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5900 "runtime.in" - array *a=new array(3); - (*a)[0]=f.Nx(); - (*a)[1]=f.Ny(); - (*a)[2]=f.Nz(); - {Stack->push<array*>(a); return;} -} - -// Set file f to read arrays in line-at-a-time mode -#line 5909 "runtime.in" -void lineSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - bool b=vm::pop<bool>(Stack,true); -#line 5910 "runtime.in" - f->LineMode(b); - {Stack->push<file*>(f); return;} -} - -#line 5915 "runtime.in" -void lineSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5916 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(lineSetHelper),f)); return;} -} - -#line 5920 "runtime.in" -void linePart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5921 "runtime.in" - {Stack->push<bool>(f.LineMode()); return;} -} - -// Set file to read comma-separated values -#line 5926 "runtime.in" -void csvSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - bool b=vm::pop<bool>(Stack,true); -#line 5927 "runtime.in" - f->CSVMode(b); - {Stack->push<file*>(f); return;} -} - -#line 5932 "runtime.in" -void csvSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5933 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(csvSetHelper),f)); return;} -} - -#line 5937 "runtime.in" -void csvPart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5938 "runtime.in" - {Stack->push<bool>(f.CSVMode()); return;} -} - -// Set file to read whitespace-separated values -#line 5943 "runtime.in" -void wordSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - bool b=vm::pop<bool>(Stack,true); -#line 5944 "runtime.in" - f->WordMode(b); - {Stack->push<file*>(f); return;} -} - -#line 5949 "runtime.in" -void wordSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5950 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(wordSetHelper),f)); return;} -} - -#line 5954 "runtime.in" -void wordPart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5955 "runtime.in" - {Stack->push<bool>(f.WordMode()); return;} -} - -// Set file to read/write single precision real XDR values. -#line 5960 "runtime.in" -void singlerealSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - bool b=vm::pop<bool>(Stack,true); -#line 5961 "runtime.in" - f->SingleReal(b); - {Stack->push<file*>(f); return;} -} - -#line 5966 "runtime.in" -void singlerealSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5967 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(singlerealSetHelper),f)); return;} -} - -#line 5971 "runtime.in" -void singlerealPart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5972 "runtime.in" - {Stack->push<bool>(f.SingleReal()); return;} -} - -// Set file to read/write single precision int XDR values. -#line 5977 "runtime.in" -void singleintSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - bool b=vm::pop<bool>(Stack,true); -#line 5978 "runtime.in" - f->SingleInt(b); - {Stack->push<file*>(f); return;} -} - -#line 5983 "runtime.in" -void singleintSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 5984 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(singleintSetHelper),f)); return;} -} - -#line 5988 "runtime.in" -void singleintPart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 5989 "runtime.in" - {Stack->push<bool>(f.SingleInt()); return;} -} - -// Set file to read/write signed int XDR values. -#line 5994 "runtime.in" -void signedintSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - bool b=vm::pop<bool>(Stack,true); -#line 5995 "runtime.in" - f->SignedInt(b); - {Stack->push<file*>(f); return;} -} - -#line 6000 "runtime.in" -void signedintSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 6001 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(signedintSetHelper),f)); return;} -} - -#line 6005 "runtime.in" -void signedintPart(stack *Stack) -{ - file f=vm::pop<file>(Stack); -#line 6006 "runtime.in" - {Stack->push<bool>(f.SignedInt()); return;} -} - -// Set file to read an arrayi (i int sizes followed by an i-dimensional array) -#line 6011 "runtime.in" -void readSetHelper(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); - Int i=vm::pop<Int>(Stack); -#line 6012 "runtime.in" - switch(i) { - case 1: - f->dimension(-2); - break; - - case 2: - f->dimension(-2,-2); - break; - - case 3: - f->dimension(-2,-2,-2); - break; - - default: - f->dimension(); - } - - {Stack->push<file*>(f); return;} -} - -#line 6033 "runtime.in" -void readSet(stack *Stack) -{ - file * f=vm::pop<file *>(Stack); -#line 6034 "runtime.in" - {Stack->push<callable*>(new thunk(new bfunc(readSetHelper),f)); return;} -} - -// Return the last n lines of the history named name. -#line 6039 "runtime.in" -// stringarray* history(string name, Int n=1); -void gen_runtime534(stack *Stack) -{ - Int n=vm::pop<Int>(Stack,1); - string name=vm::pop<string>(Stack); -#line 6040 "runtime.in" -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - bool newhistory=historyMap.find(name) == historyMap.end(); - - string filename; - - if(newhistory) { - filename=historyfilename(name); - std::ifstream exists(filename.c_str()); - if(!exists) {Stack->push<stringarray*>(new array(0)); return;} - } - - store_history(&history_save); - HISTORY_STATE& history=historyMap[name].state; - history_set_history_state(&history); - - if(newhistory) - read_history(filename.c_str()); - - array *a=get_history(n); - - store_history(&history); - history_set_history_state(&history_save); - - {Stack->push<stringarray*>(a); return;} -#else - unused(&n); - {Stack->push<stringarray*>(new array(0)); return;} -#endif -} - -// Return the last n lines of the interactive history. -#line 6072 "runtime.in" -// stringarray* history(Int n=0); -void gen_runtime535(stack *Stack) -{ - Int n=vm::pop<Int>(Stack,0); -#line 6073 "runtime.in" -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - {Stack->push<stringarray*>(get_history(n)); return;} -#else - unused(&n); - {Stack->push<stringarray*>(new array(0)); return;} -#endif -} - -// Prompt for a string using prompt, the GNU readline library, and a -// local history named name. -#line 6084 "runtime.in" -// string readline(string prompt=emptystring, string name=emptystring, bool tabcompletion=false); -void gen_runtime536(stack *Stack) -{ - bool tabcompletion=vm::pop<bool>(Stack,false); - string name=vm::pop<string>(Stack,emptystring); - string prompt=vm::pop<string>(Stack,emptystring); -#line 6086 "runtime.in" - if(!(isatty(STDIN_FILENO) || getSetting<bool>("interactive"))) - {Stack->push<string>(emptystring); return;} -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - init_readline(tabcompletion); - - store_history(&history_save); - bool newhistory=historyMap.find(name) == historyMap.end(); - historyState& h=historyMap[name]; - HISTORY_STATE& history=h.state; - history_set_history_state(&history); - - if(newhistory) - read_history(historyfilename(name).c_str()); - - static char *line=NULL; - /* Return the memory to the free pool - if the buffer has already been allocated. */ - if(line) { - free(line); - line=NULL; - } - - /* Get a line from the user. */ - line=readline(prompt.c_str()); - - if(!line) cout << endl; - - history_set_history_state(&history_save); - - {Stack->push<string>(line ? string(line) : emptystring); return;} -#else - cout << prompt; - string s; - getline(cin,s); - unused(&tabcompletion); // Avoid unused variable warning message. - {Stack->push<string>(s); return;} -#endif -} - -// Save a string in a local history named name. -// If store=true, store the local history in the file historyfilename(name). -#line 6128 "runtime.in" -// void saveline(string name, string value, bool store=true); -void gen_runtime537(stack *Stack) -{ - bool store=vm::pop<bool>(Stack,true); - string value=vm::pop<string>(Stack); - string name=vm::pop<string>(Stack); -#line 6129 "runtime.in" -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - store_history(&history_save); - bool newhistory=historyMap.find(name) == historyMap.end(); - historyState& h=historyMap[name]; - h.store=store; - HISTORY_STATE& history=h.state; - history_set_history_state(&history); - - if(newhistory) - read_history(historyfilename(name).c_str()); - - if(value != "") { - add_history(value.c_str()); - if(store) { - std::ofstream hout(historyfilename(name).c_str(),std::ios::app); - hout << value << endl; - } - } - - store_history(&history); - history_set_history_state(&history_save); -#else - unused(&store); -#endif -} - } // namespace run namespace trans { void gen_runtime_venv(venv &ve) { -#line 1097 "runtime.in" +#line 208 "runtime.in" REGISTER_BLTIN(run::IntZero,"IntZero"); -#line 1105 "runtime.in" +#line 216 "runtime.in" REGISTER_BLTIN(run::realZero,"realZero"); -#line 1110 "runtime.in" +#line 221 "runtime.in" REGISTER_BLTIN(run::boolFalse,"boolFalse"); -#line 1115 "runtime.in" +#line 226 "runtime.in" REGISTER_BLTIN(run::pushNullArray,"pushNullArray"); -#line 1120 "runtime.in" +#line 231 "runtime.in" REGISTER_BLTIN(run::pushNullRecord,"pushNullRecord"); -#line 1125 "runtime.in" +#line 236 "runtime.in" REGISTER_BLTIN(run::pushNullFunction,"pushNullFunction"); -#line 1130 "runtime.in" +#line 241 "runtime.in" REGISTER_BLTIN(run::pushDefault,"pushDefault"); -#line 1140 "runtime.in" +#line 251 "runtime.in" REGISTER_BLTIN(run::isDefault,"isDefault"); -#line 1147 "runtime.in" - addFunc(ve, run::gen_runtime8, primBoolean(), "!", formal(primBoolean(), "b", false, false)); -#line 1155 "runtime.in" - REGISTER_BLTIN(run::boolMemEq,"boolMemEq"); -#line 1160 "runtime.in" - REGISTER_BLTIN(run::boolMemNeq,"boolMemNeq"); -#line 1165 "runtime.in" - REGISTER_BLTIN(run::boolFuncEq,"boolFuncEq"); -#line 1170 "runtime.in" - REGISTER_BLTIN(run::boolFuncNeq,"boolFuncNeq"); -#line 1175 "runtime.in" - addFunc(ve, run::gen_runtime13, primInt(), "AND", formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); -#line 1183 "runtime.in" - addFunc(ve, run::gen_runtime14, primInt(), "OR", formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); -#line 1188 "runtime.in" - addFunc(ve, run::gen_runtime15, primInt(), "XOR", formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); -#line 1193 "runtime.in" - addFunc(ve, run::gen_runtime16, primInt(), "NOT", formal(primInt(), "a", false, false)); -#line 1198 "runtime.in" +#line 258 "runtime.in" REGISTER_BLTIN(run::pairToGuide,"pairToGuide"); -#line 1206 "runtime.in" +#line 266 "runtime.in" REGISTER_BLTIN(run::pathToGuide,"pathToGuide"); -#line 1211 "runtime.in" +#line 271 "runtime.in" REGISTER_BLTIN(run::guideToPath,"guideToPath"); -#line 1216 "runtime.in" - REGISTER_BLTIN(run::newPicture,"newPicture"); -#line 1224 "runtime.in" - addFunc(ve, run::gen_runtime21, primBoolean(), "empty", formal(primPicture(), "f", false, false)); -#line 1229 "runtime.in" - addFunc(ve, run::gen_runtime22, primVoid(), "erase", formal(primPicture(), "f", false, false)); -#line 1234 "runtime.in" - addFunc(ve, run::gen_runtime23, primPair(), "min", formal(primPicture(), "f", false, false)); -#line 1239 "runtime.in" - addFunc(ve, run::gen_runtime24, primPair(), "max", formal(primPicture(), "f", false, false)); -#line 1244 "runtime.in" - addFunc(ve, run::gen_runtime25, primVoid(), "label", formal(primPicture(), "f", false, false), formal(primString(), "s", false, false), formal(primString(), "size", false, false), formal(primTransform(), "t", false, false), formal(primPair(), "position", false, false), formal(primPair(), "align", false, false), formal(primPen(), "p", false, false)); -#line 1250 "runtime.in" - addFunc(ve, run::gen_runtime26, primBoolean(), "labels", formal(primPicture(), "f", false, false)); -#line 1255 "runtime.in" - addFunc(ve, run::gen_runtime27, realArray(), "texsize", formal(primString(), "s", false, false), formal(primPen(), "p", true, false)); -#line 1275 "runtime.in" - addFunc(ve, run::gen_runtime28, pathArray() , "_texpath", formal(primString(), "s", false, false), formal(primPen(), "p", true, false)); -#line 1373 "runtime.in" - addFunc(ve, run::gen_runtime29, pathArray() , "textpath", formal(primString(), "s", false, false), formal(primPen(), "p", true, false)); -#line 1444 "runtime.in" - addFunc(ve, run::gen_runtime30, pathArray() , "_strokepath", formal(primPath(), "g", false, false), formal(primPen(), "p", true, false)); -#line 1469 "runtime.in" - addFunc(ve, run::gen_runtime31, primVoid(), "_draw", formal(primPicture(), "f", false, false), formal(primPath(), "g", false, false), formal(primPen(), "p", false, false)); -#line 1474 "runtime.in" - addFunc(ve, run::gen_runtime32, primVoid(), "fill", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primPen(), "p", true, false), formal(primBoolean(), "copy", true, false)); -#line 1480 "runtime.in" - addFunc(ve, run::gen_runtime33, primVoid(), "latticeshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray2() , "p", false, false), formal(primBoolean(), "copy", true, false)); -#line 1487 "runtime.in" - addFunc(ve, run::gen_runtime34, primVoid(), "axialshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "pena", false, false), formal(primPair(), "a", false, false), formal(primPen(), "penb", false, false), formal(primPair(), "b", false, false), formal(primBoolean(), "copy", true, false)); -#line 1494 "runtime.in" - addFunc(ve, run::gen_runtime35, primVoid(), "radialshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "pena", false, false), formal(primPair(), "a", false, false), formal(primReal(), "ra", false, false), formal(primPen(), "penb", false, false), formal(primPair(), "b", false, false), formal(primReal(), "rb", false, false), formal(primBoolean(), "copy", true, false)); -#line 1501 "runtime.in" - addFunc(ve, run::gen_runtime36, primVoid(), "gouraudshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray() , "p", false, false), formal(pairArray(), "z", false, false), formal(IntArray(), "edges", false, false), formal(primBoolean(), "copy", true, false)); -#line 1512 "runtime.in" - addFunc(ve, run::gen_runtime37, primVoid(), "gouraudshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray() , "p", false, false), formal(IntArray(), "edges", false, false), formal(primBoolean(), "copy", true, false)); -#line 1536 "runtime.in" - addFunc(ve, run::gen_runtime38, primVoid(), "tensorshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(penArray2() , "p", false, false), formal(pathArray() , "b", true, false), formal(pairArray2(), "z", true, false), formal(primBoolean(), "copy", true, false)); -#line 1551 "runtime.in" - addFunc(ve, run::gen_runtime39, primVoid(), "functionshade", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(primString() , "shader", true, false), formal(primBoolean(), "copy", true, false)); -#line 1559 "runtime.in" - addFunc(ve, run::gen_runtime40, primVoid(), "clip", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(primBoolean(), "copy", true, false)); -#line 1569 "runtime.in" - addFunc(ve, run::gen_runtime41, primVoid(), "beginclip", formal(primPicture(), "f", false, false), formal(pathArray() , "g", false, false), formal(primBoolean(), "stroke", true, false), formal(primPen(), "fillrule", true, false), formal(primBoolean(), "copy", true, false)); -#line 1576 "runtime.in" - addFunc(ve, run::gen_runtime42, primVoid(), "endclip", formal(primPicture(), "f", false, false)); -#line 1581 "runtime.in" - addFunc(ve, run::gen_runtime43, primVoid(), "gsave", formal(primPicture(), "f", false, false)); -#line 1586 "runtime.in" - addFunc(ve, run::gen_runtime44, primVoid(), "grestore", formal(primPicture(), "f", false, false)); -#line 1591 "runtime.in" - addFunc(ve, run::gen_runtime45, primVoid(), "begingroup", formal(primPicture(), "f", false, false)); -#line 1596 "runtime.in" - addFunc(ve, run::gen_runtime46, primVoid(), "endgroup", formal(primPicture(), "f", false, false)); -#line 1601 "runtime.in" - addFunc(ve, run::gen_runtime47, primVoid(), "add", formal(primPicture(), "dest", false, false), formal(primPicture(), "src", false, false)); -#line 1606 "runtime.in" - addFunc(ve, run::gen_runtime48, primVoid(), "prepend", formal(primPicture(), "dest", false, false), formal(primPicture(), "src", false, false)); -#line 1611 "runtime.in" - addFunc(ve, run::gen_runtime49, primVoid(), "postscript", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false)); -#line 1616 "runtime.in" - addFunc(ve, run::gen_runtime50, primVoid(), "tex", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false)); -#line 1621 "runtime.in" - addFunc(ve, run::gen_runtime51, primVoid(), "postscript", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false), formal(primPair(), "min", false, false), formal(primPair(), "max", false, false)); -#line 1626 "runtime.in" - addFunc(ve, run::gen_runtime52, primVoid(), "tex", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false), formal(primPair(), "min", false, false), formal(primPair(), "max", false, false)); -#line 1631 "runtime.in" - addFunc(ve, run::gen_runtime53, primVoid(), "texpreamble", formal(primString() , "s", false, false)); -#line 1639 "runtime.in" - addFunc(ve, run::gen_runtime54, primVoid(), "deletepreamble"); -#line 1646 "runtime.in" - addFunc(ve, run::gen_runtime55, primVoid(), "_labelpath", formal(primPicture(), "f", false, false), formal(primString() , "s", false, false), formal(primString() , "size", false, false), formal(primPath(), "g", false, false), formal(primString() , "justify", false, false), formal(primPair(), "offset", false, false), formal(primPen(), "p", false, false)); -#line 1652 "runtime.in" - addFunc(ve, run::gen_runtime56, primVoid(), "texreset"); -#line 1660 "runtime.in" - addFunc(ve, run::gen_runtime57, primVoid(), "layer", formal(primPicture(), "f", false, false)); -#line 1665 "runtime.in" - addFunc(ve, run::gen_runtime58, primVoid(), "newpage", formal(primPicture(), "f", false, false)); -#line 1670 "runtime.in" - addFunc(ve, run::gen_runtime59, primVoid(), "_image", formal(primPicture(), "f", false, false), formal(realArray2(), "data", false, false), formal(primPair(), "initial", false, false), formal(primPair(), "final", false, false), formal(penArray() , "palette", true, false), formal(primTransform(), "t", true, false), formal(primBoolean(), "copy", true, false), formal(primBoolean(), "antialias", true, false)); -#line 1680 "runtime.in" - addFunc(ve, run::gen_runtime60, primVoid(), "_image", formal(primPicture(), "f", false, false), formal(penArray2() , "data", false, false), formal(primPair(), "initial", false, false), formal(primPair(), "final", false, false), formal(primTransform(), "t", true, false), formal(primBoolean(), "copy", true, false), formal(primBoolean(), "antialias", true, false)); -#line 1687 "runtime.in" - addFunc(ve, run::gen_runtime61, primString() , "nativeformat"); -#line 1692 "runtime.in" - addFunc(ve, run::gen_runtime62, primBoolean(), "latex"); -#line 1697 "runtime.in" - addFunc(ve, run::gen_runtime63, primBoolean(), "pdf"); -#line 1702 "runtime.in" - addFunc(ve, run::gen_runtime64, primVoid(), "shipout", formal(primString() , "prefix", true, false), formal(primPicture(), "f", false, false), formal(primPicture(), "preamble", true, false), formal(primString() , "format", true, false), formal(primBoolean(), "wait", true, false), formal(primBoolean(), "view", true, false), formal(transformFunction(), "xform", false, false)); -#line 1748 "runtime.in" - addFunc(ve, run::gen_runtime65, primVoid(), "shipout3", formal(primString() , "prefix", false, false), formal(primPicture(), "f", false, false), formal(primString() , "format", true, false), formal(primReal(), "width", false, false), formal(primReal(), "height", false, false), formal(primReal(), "angle", false, false), formal(primReal(), "zoom", false, false), formal(primTriple(), "m", false, false), formal(primTriple(), "m", false, false), formal(primPair(), "shift", false, false), formal(realArray2(), "t", false, false), formal(realArray(), "background", false, false), formal(tripleArray(), "lights", false, false), formal(realArray2(), "diffuse", false, false), formal(realArray2(), "ambient", false, false), formal(realArray2(), "specular", false, false), formal(primBoolean(), "viewportlighting", false, false), formal(primBoolean(), "view", true, false)); -#line 1766 "runtime.in" - addFunc(ve, run::gen_runtime66, primVoid(), "shipout3", formal(primString() , "prefix", false, false), formal(primPicture(), "f", false, false)); -#line 1771 "runtime.in" - addFunc(ve, run::gen_runtime67, primVoid(), "deconstruct", formal(primPicture(), "f", false, false), formal(primPicture(), "preamble", true, false), formal(primReal(), "magnification", true, false), formal(transformFunction(), "xform", false, false)); -#line 1894 "runtime.in" - addFunc(ve, run::gen_runtime68, primVoid(), "purge", formal(primInt(), "divisor", true, false)); -#line 1899 "runtime.in" +#line 276 "runtime.in" REGISTER_BLTIN(run::newPen,"newPen"); -#line 1907 "runtime.in" - addFunc(ve, run::gen_runtime70, primBoolean(), "==", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false)); -#line 1912 "runtime.in" - addFunc(ve, run::gen_runtime71, primBoolean(), "!=", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false)); -#line 1917 "runtime.in" - addFunc(ve, run::gen_runtime72, primPen(), "+", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false)); -#line 1922 "runtime.in" - addFunc(ve, run::gen_runtime73, primPen(), "*", formal(primReal(), "a", false, false), formal(primPen(), "b", false, false)); -#line 1927 "runtime.in" - addFunc(ve, run::gen_runtime74, primPen(), "*", formal(primPen(), "a", false, false), formal(primReal(), "b", false, false)); -#line 1932 "runtime.in" - addFunc(ve, run::gen_runtime75, primPair(), "max", formal(primPen(), "p", false, false)); -#line 1937 "runtime.in" - addFunc(ve, run::gen_runtime76, primPair(), "min", formal(primPen(), "p", false, false)); -#line 1942 "runtime.in" - addFunc(ve, run::gen_runtime77, primVoid(), "resetdefaultpen"); -#line 1948 "runtime.in" - addFunc(ve, run::gen_runtime78, primVoid(), "defaultpen", formal(primPen(), "p", false, false)); -#line 1953 "runtime.in" - addFunc(ve, run::gen_runtime79, primPen(), "defaultpen"); -#line 1958 "runtime.in" - addFunc(ve, run::gen_runtime80, primBoolean(), "invisible", formal(primPen(), "p", false, false)); -#line 1963 "runtime.in" - addFunc(ve, run::gen_runtime81, primPen(), "invisible"); -#line 1968 "runtime.in" - addFunc(ve, run::gen_runtime82, primPen(), "gray", formal(primPen(), "p", false, false)); -#line 1974 "runtime.in" - addFunc(ve, run::gen_runtime83, primPen(), "rgb", formal(primPen(), "p", false, false)); -#line 1980 "runtime.in" - addFunc(ve, run::gen_runtime84, primPen(), "cmyk", formal(primPen(), "p", false, false)); -#line 1986 "runtime.in" - addFunc(ve, run::gen_runtime85, primPen(), "interp", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false), formal(primReal(), "t", false, false)); -#line 1991 "runtime.in" - addFunc(ve, run::gen_runtime86, primPen(), "rgb", formal(primReal(), "r", false, false), formal(primReal(), "g", false, false), formal(primReal(), "b", false, false)); -#line 1996 "runtime.in" - addFunc(ve, run::gen_runtime87, primPen(), "cmyk", formal(primReal(), "c", false, false), formal(primReal(), "m", false, false), formal(primReal(), "y", false, false), formal(primReal(), "k", false, false)); -#line 2001 "runtime.in" - addFunc(ve, run::gen_runtime88, primPen(), "gray", formal(primReal(), "gray", false, false)); -#line 2006 "runtime.in" - addFunc(ve, run::gen_runtime89, realArray(), "colors", formal(primPen(), "p", false, false)); -#line 2034 "runtime.in" - addFunc(ve, run::gen_runtime90, primString() , "colorspace", formal(primPen(), "p", false, false)); -#line 2041 "runtime.in" - addFunc(ve, run::gen_runtime91, primPen(), "pattern", formal(primString(), "s", false, false)); -#line 2046 "runtime.in" - addFunc(ve, run::gen_runtime92, primString() , "pattern", formal(primPen(), "p", false, false)); -#line 2051 "runtime.in" - addFunc(ve, run::gen_runtime93, primPen(), "fillrule", formal(primInt(), "n", false, false)); -#line 2056 "runtime.in" - addFunc(ve, run::gen_runtime94, primInt(), "fillrule", formal(primPen(), "p", false, false)); -#line 2061 "runtime.in" - addFunc(ve, run::gen_runtime95, primPen(), "opacity", formal(primReal(), "opacity", true, false), formal(primString() , "blend", true, false)); -#line 2071 "runtime.in" - addFunc(ve, run::gen_runtime96, primReal(), "opacity", formal(primPen(), "p", false, false)); -#line 2076 "runtime.in" - addFunc(ve, run::gen_runtime97, primString() , "blend", formal(primPen(), "p", false, false)); -#line 2081 "runtime.in" - addFunc(ve, run::gen_runtime98, primPen(), "linetype", formal(primString(), "s", false, false), formal(primReal(), "offset", true, false), formal(primBoolean(), "scale", true, false), formal(primBoolean(), "adjust", true, false)); -#line 2086 "runtime.in" - addFunc(ve, run::gen_runtime99, primString() , "linetype", formal(primPen(), "p", true, false)); -#line 2091 "runtime.in" - addFunc(ve, run::gen_runtime100, primReal(), "offset", formal(primPen(), "p", false, false)); -#line 2096 "runtime.in" - addFunc(ve, run::gen_runtime101, primBoolean(), "scale", formal(primPen(), "p", false, false)); -#line 2101 "runtime.in" - addFunc(ve, run::gen_runtime102, primBoolean(), "adjust", formal(primPen(), "p", false, false)); -#line 2106 "runtime.in" - addFunc(ve, run::gen_runtime103, primPen(), "adjust", formal(primPen(), "p", false, false), formal(primReal(), "arclength", false, false), formal(primBoolean(), "cyclic", false, false)); -#line 2111 "runtime.in" - addFunc(ve, run::gen_runtime104, primPen(), "linecap", formal(primInt(), "n", false, false)); -#line 2116 "runtime.in" - addFunc(ve, run::gen_runtime105, primInt(), "linecap", formal(primPen(), "p", true, false)); -#line 2121 "runtime.in" - addFunc(ve, run::gen_runtime106, primPen(), "linejoin", formal(primInt(), "n", false, false)); -#line 2126 "runtime.in" - addFunc(ve, run::gen_runtime107, primInt(), "linejoin", formal(primPen(), "p", true, false)); -#line 2131 "runtime.in" - addFunc(ve, run::gen_runtime108, primPen(), "miterlimit", formal(primReal(), "x", false, false)); -#line 2136 "runtime.in" - addFunc(ve, run::gen_runtime109, primReal(), "miterlimit", formal(primPen(), "p", true, false)); -#line 2141 "runtime.in" - addFunc(ve, run::gen_runtime110, primPen(), "linewidth", formal(primReal(), "x", false, false)); -#line 2146 "runtime.in" - addFunc(ve, run::gen_runtime111, primReal(), "linewidth", formal(primPen(), "p", true, false)); -#line 2151 "runtime.in" - addFunc(ve, run::gen_runtime112, primPen(), "fontcommand", formal(primString(), "s", false, false)); -#line 2156 "runtime.in" - addFunc(ve, run::gen_runtime113, primString() , "font", formal(primPen(), "p", true, false)); -#line 2161 "runtime.in" - addFunc(ve, run::gen_runtime114, primPen(), "fontsize", formal(primReal(), "size", false, false), formal(primReal(), "lineskip", false, false)); -#line 2167 "runtime.in" - addFunc(ve, run::gen_runtime115, primReal(), "fontsize", formal(primPen(), "p", true, false)); -#line 2172 "runtime.in" - addFunc(ve, run::gen_runtime116, primReal(), "lineskip", formal(primPen(), "p", true, false)); -#line 2177 "runtime.in" - addFunc(ve, run::gen_runtime117, primPen(), "overwrite", formal(primInt(), "n", false, false)); -#line 2183 "runtime.in" - addFunc(ve, run::gen_runtime118, primInt(), "overwrite", formal(primPen(), "p", true, false)); -#line 2188 "runtime.in" - addFunc(ve, run::gen_runtime119, primPen(), "basealign", formal(primInt(), "n", false, false)); -#line 2193 "runtime.in" - addFunc(ve, run::gen_runtime120, primInt(), "basealign", formal(primPen(), "p", true, false)); -#line 2198 "runtime.in" - addFunc(ve, run::gen_runtime121, primTransform(), "transform", formal(primPen(), "p", false, false)); -#line 2203 "runtime.in" - addFunc(ve, run::gen_runtime122, primPath(), "nib", formal(primPen(), "p", false, false)); -#line 2208 "runtime.in" - addFunc(ve, run::gen_runtime123, primPen(), "makepen", formal(primPath(), "p", false, false)); -#line 2213 "runtime.in" - addFunc(ve, run::gen_runtime124, primPen(), "colorless", formal(primPen(), "p", false, false)); -#line 2219 "runtime.in" - addFunc(ve, run::gen_runtime125, primBoolean(), "interactive"); -#line 2226 "runtime.in" - addFunc(ve, run::gen_runtime126, primBoolean(), "uptodate"); -#line 2231 "runtime.in" - addFunc(ve, run::gen_runtime127, primInt(), "system", formal(stringArray(), "s", false, false)); -#line 2245 "runtime.in" - addFunc(ve, run::gen_runtime128, primBoolean(), "view"); -#line 2250 "runtime.in" - addFunc(ve, run::gen_runtime129, primString() , "asydir"); -#line 2255 "runtime.in" - addFunc(ve, run::gen_runtime130, primString() , "locale", formal(primString() , "s", true, false)); -#line 2261 "runtime.in" - addFunc(ve, run::gen_runtime131, primVoid(), "abort", formal(primString() , "s", true, false)); -#line 2267 "runtime.in" - addFunc(ve, run::gen_runtime132, primVoid(), "exit"); -#line 2272 "runtime.in" - addFunc(ve, run::gen_runtime133, primVoid(), "assert", formal(primBoolean(), "b", false, false), formal(primString() , "s", true, false)); -#line 2283 "runtime.in" - addFunc(ve, run::gen_runtime134, primVoid(), "sleep", formal(primInt(), "seconds", false, false)); -#line 2289 "runtime.in" - addFunc(ve, run::gen_runtime135, primVoid(), "usleep", formal(primInt(), "microseconds", false, false)); -#line 2295 "runtime.in" - addFunc(ve, run::gen_runtime136, primVoid(), "_eval", formal(primString(), "s", false, false), formal(primBoolean(), "embedded", false, false), formal(primBoolean(), "interactivewrite", true, false)); -#line 2308 "runtime.in" - addFunc(ve, run::gen_runtime137, primVoid(), "_eval", formal(primCode(), "s", false, false), formal(primBoolean(), "embedded", false, false)); -#line 2324 "runtime.in" - addFunc(ve, run::gen_runtime138, primString() , "location"); -#line 2330 "runtime.in" +#line 284 "runtime.in" + addFunc(ve, run::gen_runtime12, primBoolean(), "==", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false)); +#line 289 "runtime.in" + addFunc(ve, run::gen_runtime13, primBoolean(), "!=", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false)); +#line 294 "runtime.in" + addFunc(ve, run::gen_runtime14, primPen(), "+", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false)); +#line 299 "runtime.in" + addFunc(ve, run::gen_runtime15, primPen(), "*", formal(primReal(), "a", false, false), formal(primPen(), "b", false, false)); +#line 304 "runtime.in" + addFunc(ve, run::gen_runtime16, primPen(), "*", formal(primPen(), "a", false, false), formal(primReal(), "b", false, false)); +#line 309 "runtime.in" + addFunc(ve, run::gen_runtime17, primPair(), "max", formal(primPen(), "p", false, false)); +#line 314 "runtime.in" + addFunc(ve, run::gen_runtime18, primPair(), "min", formal(primPen(), "p", false, false)); +#line 319 "runtime.in" + addFunc(ve, run::gen_runtime19, primVoid(), "resetdefaultpen"); +#line 325 "runtime.in" + addFunc(ve, run::gen_runtime20, primVoid(), "defaultpen", formal(primPen(), "p", false, false)); +#line 330 "runtime.in" + addFunc(ve, run::gen_runtime21, primPen(), "defaultpen"); +#line 335 "runtime.in" + addFunc(ve, run::gen_runtime22, primBoolean(), "invisible", formal(primPen(), "p", false, false)); +#line 340 "runtime.in" + addFunc(ve, run::gen_runtime23, primPen(), "invisible"); +#line 345 "runtime.in" + addFunc(ve, run::gen_runtime24, primPen(), "gray", formal(primPen(), "p", false, false)); +#line 351 "runtime.in" + addFunc(ve, run::gen_runtime25, primPen(), "rgb", formal(primPen(), "p", false, false)); +#line 357 "runtime.in" + addFunc(ve, run::gen_runtime26, primPen(), "cmyk", formal(primPen(), "p", false, false)); +#line 363 "runtime.in" + addFunc(ve, run::gen_runtime27, primPen(), "interp", formal(primPen(), "a", false, false), formal(primPen(), "b", false, false), formal(primReal(), "t", false, false)); +#line 368 "runtime.in" + addFunc(ve, run::gen_runtime28, primPen(), "rgb", formal(primReal(), "r", false, false), formal(primReal(), "g", false, false), formal(primReal(), "b", false, false)); +#line 373 "runtime.in" + addFunc(ve, run::gen_runtime29, primPen(), "cmyk", formal(primReal(), "c", false, false), formal(primReal(), "m", false, false), formal(primReal(), "y", false, false), formal(primReal(), "k", false, false)); +#line 378 "runtime.in" + addFunc(ve, run::gen_runtime30, primPen(), "gray", formal(primReal(), "gray", false, false)); +#line 383 "runtime.in" + addFunc(ve, run::gen_runtime31, realArray(), "colors", formal(primPen(), "p", false, false)); +#line 411 "runtime.in" + addFunc(ve, run::gen_runtime32, primString() , "colorspace", formal(primPen(), "p", false, false)); +#line 418 "runtime.in" + addFunc(ve, run::gen_runtime33, primPen(), "pattern", formal(primString(), "s", false, false)); +#line 423 "runtime.in" + addFunc(ve, run::gen_runtime34, primString() , "pattern", formal(primPen(), "p", false, false)); +#line 428 "runtime.in" + addFunc(ve, run::gen_runtime35, primPen(), "fillrule", formal(primInt(), "n", false, false)); +#line 433 "runtime.in" + addFunc(ve, run::gen_runtime36, primInt(), "fillrule", formal(primPen(), "p", false, false)); +#line 438 "runtime.in" + addFunc(ve, run::gen_runtime37, primPen(), "opacity", formal(primReal(), "opacity", true, false), formal(primString() , "blend", true, false)); +#line 448 "runtime.in" + addFunc(ve, run::gen_runtime38, primReal(), "opacity", formal(primPen(), "p", false, false)); +#line 453 "runtime.in" + addFunc(ve, run::gen_runtime39, primString() , "blend", formal(primPen(), "p", false, false)); +#line 458 "runtime.in" + addFunc(ve, run::gen_runtime40, primPen(), "linetype", formal(primString(), "s", false, false), formal(primReal(), "offset", true, false), formal(primBoolean(), "scale", true, false), formal(primBoolean(), "adjust", true, false)); +#line 463 "runtime.in" + addFunc(ve, run::gen_runtime41, primString() , "linetype", formal(primPen(), "p", true, false)); +#line 468 "runtime.in" + addFunc(ve, run::gen_runtime42, primReal(), "offset", formal(primPen(), "p", false, false)); +#line 473 "runtime.in" + addFunc(ve, run::gen_runtime43, primBoolean(), "scale", formal(primPen(), "p", false, false)); +#line 478 "runtime.in" + addFunc(ve, run::gen_runtime44, primBoolean(), "adjust", formal(primPen(), "p", false, false)); +#line 483 "runtime.in" + addFunc(ve, run::gen_runtime45, primPen(), "adjust", formal(primPen(), "p", false, false), formal(primReal(), "arclength", false, false), formal(primBoolean(), "cyclic", false, false)); +#line 488 "runtime.in" + addFunc(ve, run::gen_runtime46, primPen(), "linecap", formal(primInt(), "n", false, false)); +#line 493 "runtime.in" + addFunc(ve, run::gen_runtime47, primInt(), "linecap", formal(primPen(), "p", true, false)); +#line 498 "runtime.in" + addFunc(ve, run::gen_runtime48, primPen(), "linejoin", formal(primInt(), "n", false, false)); +#line 503 "runtime.in" + addFunc(ve, run::gen_runtime49, primInt(), "linejoin", formal(primPen(), "p", true, false)); +#line 508 "runtime.in" + addFunc(ve, run::gen_runtime50, primPen(), "miterlimit", formal(primReal(), "x", false, false)); +#line 513 "runtime.in" + addFunc(ve, run::gen_runtime51, primReal(), "miterlimit", formal(primPen(), "p", true, false)); +#line 518 "runtime.in" + addFunc(ve, run::gen_runtime52, primPen(), "linewidth", formal(primReal(), "x", false, false)); +#line 523 "runtime.in" + addFunc(ve, run::gen_runtime53, primReal(), "linewidth", formal(primPen(), "p", true, false)); +#line 528 "runtime.in" + addFunc(ve, run::gen_runtime54, primPen(), "fontcommand", formal(primString(), "s", false, false)); +#line 533 "runtime.in" + addFunc(ve, run::gen_runtime55, primString() , "font", formal(primPen(), "p", true, false)); +#line 538 "runtime.in" + addFunc(ve, run::gen_runtime56, primPen(), "fontsize", formal(primReal(), "size", false, false), formal(primReal(), "lineskip", false, false)); +#line 544 "runtime.in" + addFunc(ve, run::gen_runtime57, primReal(), "fontsize", formal(primPen(), "p", true, false)); +#line 549 "runtime.in" + addFunc(ve, run::gen_runtime58, primReal(), "lineskip", formal(primPen(), "p", true, false)); +#line 554 "runtime.in" + addFunc(ve, run::gen_runtime59, primPen(), "overwrite", formal(primInt(), "n", false, false)); +#line 560 "runtime.in" + addFunc(ve, run::gen_runtime60, primInt(), "overwrite", formal(primPen(), "p", true, false)); +#line 565 "runtime.in" + addFunc(ve, run::gen_runtime61, primPen(), "basealign", formal(primInt(), "n", false, false)); +#line 570 "runtime.in" + addFunc(ve, run::gen_runtime62, primInt(), "basealign", formal(primPen(), "p", true, false)); +#line 575 "runtime.in" + addFunc(ve, run::gen_runtime63, primTransform(), "transform", formal(primPen(), "p", false, false)); +#line 580 "runtime.in" + addFunc(ve, run::gen_runtime64, primPath(), "nib", formal(primPen(), "p", false, false)); +#line 585 "runtime.in" + addFunc(ve, run::gen_runtime65, primPen(), "makepen", formal(primPath(), "p", false, false)); +#line 590 "runtime.in" + addFunc(ve, run::gen_runtime66, primPen(), "colorless", formal(primPen(), "p", false, false)); +#line 596 "runtime.in" + addFunc(ve, run::gen_runtime67, primBoolean(), "interactive"); +#line 603 "runtime.in" + addFunc(ve, run::gen_runtime68, primBoolean(), "uptodate"); +#line 608 "runtime.in" + addFunc(ve, run::gen_runtime69, primInt(), "system", formal(stringArray(), "s", false, false)); +#line 622 "runtime.in" + addFunc(ve, run::gen_runtime70, primBoolean(), "view"); +#line 627 "runtime.in" + addFunc(ve, run::gen_runtime71, primString() , "asydir"); +#line 632 "runtime.in" + addFunc(ve, run::gen_runtime72, primString() , "locale", formal(primString() , "s", true, false)); +#line 638 "runtime.in" + addFunc(ve, run::gen_runtime73, primVoid(), "abort", formal(primString() , "s", true, false)); +#line 644 "runtime.in" + addFunc(ve, run::gen_runtime74, primVoid(), "exit"); +#line 649 "runtime.in" + addFunc(ve, run::gen_runtime75, primVoid(), "assert", formal(primBoolean(), "b", false, false), formal(primString() , "s", true, false)); +#line 660 "runtime.in" + addFunc(ve, run::gen_runtime76, primVoid(), "sleep", formal(primInt(), "seconds", false, false)); +#line 666 "runtime.in" + addFunc(ve, run::gen_runtime77, primVoid(), "usleep", formal(primInt(), "microseconds", false, false)); +#line 672 "runtime.in" + addFunc(ve, run::gen_runtime78, primVoid(), "_eval", formal(primString(), "s", false, false), formal(primBoolean(), "embedded", false, false), formal(primBoolean(), "interactivewrite", true, false)); +#line 685 "runtime.in" + addFunc(ve, run::gen_runtime79, primVoid(), "_eval", formal(primCode(), "s", false, false), formal(primBoolean(), "embedded", false, false)); +#line 701 "runtime.in" + addFunc(ve, run::gen_runtime80, primString() , "location"); +#line 707 "runtime.in" REGISTER_BLTIN(run::loadModule,"loadModule"); -#line 2336 "runtime.in" - addFunc(ve, run::gen_runtime140, primString() , "cd", formal(primString() , "s", true, false)); -#line 2342 "runtime.in" - addFunc(ve, run::gen_runtime141, primVoid(), "list", formal(primString(), "s", false, false), formal(primBoolean(), "imports", true, false)); -#line 2351 "runtime.in" - REGISTER_BLTIN(run::nullPath,"nullPath"); -#line 2359 "runtime.in" - addFunc(ve, run::gen_runtime143, primBoolean(), "==", formal(primPath(), "a", false, false), formal(primPath(), "b", false, false)); -#line 2364 "runtime.in" - addFunc(ve, run::gen_runtime144, primBoolean(), "!=", formal(primPath(), "a", false, false), formal(primPath(), "b", false, false)); -#line 2369 "runtime.in" - addFunc(ve, run::gen_runtime145, primPair(), "point", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2374 "runtime.in" - addFunc(ve, run::gen_runtime146, primPair(), "point", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2379 "runtime.in" - addFunc(ve, run::gen_runtime147, primPair(), "precontrol", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2384 "runtime.in" - addFunc(ve, run::gen_runtime148, primPair(), "precontrol", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2389 "runtime.in" - addFunc(ve, run::gen_runtime149, primPair(), "postcontrol", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2394 "runtime.in" - addFunc(ve, run::gen_runtime150, primPair(), "postcontrol", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2399 "runtime.in" - addFunc(ve, run::gen_runtime151, primPair(), "dir", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false), formal(primBoolean(), "normalize", true, false)); -#line 2404 "runtime.in" - addFunc(ve, run::gen_runtime152, primPair(), "dir", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false), formal(primBoolean(), "normalize", true, false)); -#line 2409 "runtime.in" - addFunc(ve, run::gen_runtime153, primPair(), "accel", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false)); -#line 2414 "runtime.in" - addFunc(ve, run::gen_runtime154, primPair(), "accel", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2419 "runtime.in" - addFunc(ve, run::gen_runtime155, primReal(), "radius", formal(primPath(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2431 "runtime.in" - addFunc(ve, run::gen_runtime156, primPath(), "reverse", formal(primPath(), "p", false, false)); -#line 2436 "runtime.in" - addFunc(ve, run::gen_runtime157, primPath(), "subpath", formal(primPath(), "p", false, false), formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); -#line 2441 "runtime.in" - addFunc(ve, run::gen_runtime158, primPath(), "subpath", formal(primPath(), "p", false, false), formal(primReal(), "a", false, false), formal(primReal(), "b", false, false)); -#line 2446 "runtime.in" - addFunc(ve, run::gen_runtime159, primPath(), "nurb", formal(primPair(), "z0", false, false), formal(primPair(), "z1", false, false), formal(primPair(), "z2", false, false), formal(primPair(), "z3", false, false), formal(primReal(), "w0", false, false), formal(primReal(), "w1", false, false), formal(primReal(), "w2", false, false), formal(primReal(), "w3", false, false), formal(primInt(), "m", false, false)); -#line 2452 "runtime.in" - addFunc(ve, run::gen_runtime160, primInt(), "length", formal(primPath(), "p", false, false)); -#line 2457 "runtime.in" - addFunc(ve, run::gen_runtime161, primBoolean(), "cyclic", formal(primPath(), "p", false, false)); -#line 2462 "runtime.in" - addFunc(ve, run::gen_runtime162, primBoolean(), "straight", formal(primPath(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2467 "runtime.in" - addFunc(ve, run::gen_runtime163, primPath(), "unstraighten", formal(primPath(), "p", false, false)); -#line 2472 "runtime.in" - addFunc(ve, run::gen_runtime164, primBoolean(), "piecewisestraight", formal(primPath(), "p", false, false)); -#line 2477 "runtime.in" - addFunc(ve, run::gen_runtime165, primReal(), "arclength", formal(primPath(), "p", false, false)); -#line 2482 "runtime.in" - addFunc(ve, run::gen_runtime166, primReal(), "arctime", formal(primPath(), "p", false, false), formal(primReal(), "dval", false, false)); -#line 2487 "runtime.in" - addFunc(ve, run::gen_runtime167, primReal(), "dirtime", formal(primPath(), "p", false, false), formal(primPair(), "z", false, false)); -#line 2492 "runtime.in" - addFunc(ve, run::gen_runtime168, realArray(), "intersect", formal(primPath(), "p", false, false), formal(primPath(), "q", false, false), formal(primReal(), "fuzz", true, false)); -#line 2509 "runtime.in" - addFunc(ve, run::gen_runtime169, realArray2(), "intersections", formal(primPath(), "p", false, false), formal(primPath(), "q", false, false), formal(primReal(), "fuzz", true, false)); -#line 2540 "runtime.in" - addFunc(ve, run::gen_runtime170, realArray(), "intersections", formal(primPath(), "p", false, false), formal(primPair(), "a", false, true), formal(primPair(), "b", false, true), formal(primReal(), "fuzz", true, false)); -#line 2555 "runtime.in" - addFunc(ve, run::gen_runtime171, primPair(), "extension", formal(primPair(), "p", false, false), formal(primPair(), "q", false, false), formal(primPair(), "p", false, false), formal(primPair(), "q", false, false)); -#line 2566 "runtime.in" - addFunc(ve, run::gen_runtime172, primInt(), "size", formal(primPath(), "p", false, false)); -#line 2571 "runtime.in" - addFunc(ve, run::gen_runtime173, primPath(), "&", formal(primPath(), "p", false, false), formal(primPath(), "q", false, false)); -#line 2576 "runtime.in" - addFunc(ve, run::gen_runtime174, primPair(), "min", formal(primPath(), "p", false, false)); -#line 2581 "runtime.in" - addFunc(ve, run::gen_runtime175, primPair(), "max", formal(primPath(), "p", false, false)); -#line 2586 "runtime.in" - addFunc(ve, run::gen_runtime176, realArray(), "mintimes", formal(primPath(), "p", false, false)); -#line 2595 "runtime.in" - addFunc(ve, run::gen_runtime177, realArray(), "maxtimes", formal(primPath(), "p", false, false)); -#line 2604 "runtime.in" - addFunc(ve, run::gen_runtime178, primReal(), "relativedistance", formal(primReal(), "theta", false, false), formal(primReal(), "phi", false, false), formal(primReal(), "t", false, false), formal(primBoolean(), "atleast", false, false)); -#line 2609 "runtime.in" - addFunc(ve, run::gen_runtime179, primInt(), "windingnumber", formal(pathArray() , "p", false, false), formal(primPair(), "z", false, false)); -#line 2614 "runtime.in" - addFunc(ve, run::gen_runtime180, primBoolean(), "inside", formal(pathArray() , "g", false, true), formal(primPair(), "z", false, false), formal(primPen(), "fillrule", true, false)); -#line 2619 "runtime.in" - addFunc(ve, run::gen_runtime181, primBoolean(), "inside", formal(primPath(), "g", false, false), formal(primPair(), "z", false, false), formal(primPen(), "fillrule", true, false)); -#line 2624 "runtime.in" - addFunc(ve, run::gen_runtime182, primReal(), "side", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false)); -#line 2631 "runtime.in" - addFunc(ve, run::gen_runtime183, primReal(), "incircle", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false)); -#line 2639 "runtime.in" - addFunc(ve, run::gen_runtime184, primPath3(), "path3", formal(tripleArray(), "pre", false, false), formal(tripleArray(), "point", false, false), formal(tripleArray(), "post", false, false), formal(booleanArray(), "straight", false, false), formal(primBoolean(), "cyclic", false, false)); -#line 2659 "runtime.in" - REGISTER_BLTIN(run::nullPath3,"nullPath3"); -#line 2664 "runtime.in" - addFunc(ve, run::gen_runtime186, primBoolean(), "==", formal(primPath3(), "a", false, false), formal(primPath3(), "b", false, false)); -#line 2669 "runtime.in" - addFunc(ve, run::gen_runtime187, primBoolean(), "!=", formal(primPath3(), "a", false, false), formal(primPath3(), "b", false, false)); -#line 2674 "runtime.in" - addFunc(ve, run::gen_runtime188, primTriple(), "point", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2679 "runtime.in" - addFunc(ve, run::gen_runtime189, primTriple(), "point", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2684 "runtime.in" - addFunc(ve, run::gen_runtime190, primTriple(), "precontrol", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2689 "runtime.in" - addFunc(ve, run::gen_runtime191, primTriple(), "precontrol", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2694 "runtime.in" - addFunc(ve, run::gen_runtime192, primTriple(), "postcontrol", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2699 "runtime.in" - addFunc(ve, run::gen_runtime193, primTriple(), "postcontrol", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2704 "runtime.in" - addFunc(ve, run::gen_runtime194, primTriple(), "dir", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false), formal(primBoolean(), "normalize", true, false)); -#line 2709 "runtime.in" - addFunc(ve, run::gen_runtime195, primTriple(), "dir", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false), formal(primBoolean(), "normalize", true, false)); -#line 2714 "runtime.in" - addFunc(ve, run::gen_runtime196, primTriple(), "accel", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false), formal(primInt(), "sign", true, false)); -#line 2719 "runtime.in" - addFunc(ve, run::gen_runtime197, primTriple(), "accel", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2724 "runtime.in" - addFunc(ve, run::gen_runtime198, primReal(), "radius", formal(primPath3(), "p", false, false), formal(primReal(), "t", false, false)); -#line 2736 "runtime.in" - addFunc(ve, run::gen_runtime199, primReal(), "radius", formal(primTriple(), "z0", false, false), formal(primTriple(), "c0", false, false), formal(primTriple(), "c1", false, false), formal(primTriple(), "z1", false, false), formal(primReal(), "t", false, false)); -#line 2748 "runtime.in" - addFunc(ve, run::gen_runtime200, primPath3(), "reverse", formal(primPath3(), "p", false, false)); -#line 2753 "runtime.in" - addFunc(ve, run::gen_runtime201, primPath3(), "subpath", formal(primPath3(), "p", false, false), formal(primInt(), "a", false, false), formal(primInt(), "b", false, false)); -#line 2758 "runtime.in" - addFunc(ve, run::gen_runtime202, primPath3(), "subpath", formal(primPath3(), "p", false, false), formal(primReal(), "a", false, false), formal(primReal(), "b", false, false)); -#line 2763 "runtime.in" - addFunc(ve, run::gen_runtime203, primInt(), "length", formal(primPath3(), "p", false, false)); -#line 2768 "runtime.in" - addFunc(ve, run::gen_runtime204, primBoolean(), "cyclic", formal(primPath3(), "p", false, false)); -#line 2773 "runtime.in" - addFunc(ve, run::gen_runtime205, primBoolean(), "straight", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2778 "runtime.in" - addFunc(ve, run::gen_runtime206, primTriple(), "perp", formal(primTriple(), "v", false, false), formal(primTriple(), "u", false, false)); -#line 2784 "runtime.in" - addFunc(ve, run::gen_runtime207, primReal(), "straightness", formal(primPath3(), "p", false, false), formal(primInt(), "t", false, false)); -#line 2795 "runtime.in" - addFunc(ve, run::gen_runtime208, primReal(), "straightness", formal(primTriple(), "z0", false, false), formal(primTriple(), "c0", false, false), formal(primTriple(), "c1", false, false), formal(primTriple(), "z1", false, false)); -#line 2803 "runtime.in" - addFunc(ve, run::gen_runtime209, primBoolean(), "piecewisestraight", formal(primPath3(), "p", false, false)); -#line 2808 "runtime.in" - addFunc(ve, run::gen_runtime210, primReal(), "arclength", formal(primPath3(), "p", false, false)); -#line 2813 "runtime.in" - addFunc(ve, run::gen_runtime211, primReal(), "arctime", formal(primPath3(), "p", false, false), formal(primReal(), "dval", false, false)); -#line 2818 "runtime.in" - addFunc(ve, run::gen_runtime212, realArray(), "intersect", formal(primPath3(), "p", false, false), formal(primPath3(), "q", false, false), formal(primReal(), "fuzz", true, false)); -#line 2836 "runtime.in" - addFunc(ve, run::gen_runtime213, realArray2(), "intersections", formal(primPath3(), "p", false, false), formal(primPath3(), "q", false, false), formal(primReal(), "fuzz", true, false)); -#line 2869 "runtime.in" - addFunc(ve, run::gen_runtime214, realArray2(), "intersections", formal(primPath3(), "p", false, false), formal(tripleArray2(), "p", false, false), formal(primReal(), "fuzz", true, false)); -#line 2889 "runtime.in" - addFunc(ve, run::gen_runtime215, primInt(), "size", formal(primPath3(), "p", false, false)); -#line 2894 "runtime.in" - addFunc(ve, run::gen_runtime216, primPath3(), "&", formal(primPath3(), "p", false, false), formal(primPath3(), "q", false, false)); -#line 2899 "runtime.in" - addFunc(ve, run::gen_runtime217, primTriple(), "min", formal(primPath3(), "p", false, false)); -#line 2904 "runtime.in" - addFunc(ve, run::gen_runtime218, primTriple(), "max", formal(primPath3(), "p", false, false)); -#line 2909 "runtime.in" - addFunc(ve, run::gen_runtime219, realArray(), "mintimes", formal(primPath3(), "p", false, false)); -#line 2919 "runtime.in" - addFunc(ve, run::gen_runtime220, realArray(), "maxtimes", formal(primPath3(), "p", false, false)); -#line 2929 "runtime.in" - addFunc(ve, run::gen_runtime221, primPath3(), "*", formal(realArray2(), "t", false, false), formal(primPath3(), "g", false, false)); -#line 2934 "runtime.in" +#line 713 "runtime.in" + addFunc(ve, run::gen_runtime82, primString() , "cd", formal(primString() , "s", true, false)); +#line 719 "runtime.in" + addFunc(ve, run::gen_runtime83, primVoid(), "list", formal(primString(), "s", false, false), formal(primBoolean(), "imports", true, false)); +#line 728 "runtime.in" REGISTER_BLTIN(run::nullGuide,"nullGuide"); -#line 2942 "runtime.in" +#line 736 "runtime.in" REGISTER_BLTIN(run::dotsGuide,"dotsGuide"); -#line 2952 "runtime.in" +#line 746 "runtime.in" REGISTER_BLTIN(run::dashesGuide,"dashesGuide"); -#line 2979 "runtime.in" +#line 773 "runtime.in" REGISTER_BLTIN(run::newCycleToken,"newCycleToken"); -#line 2984 "runtime.in" - addFunc(ve, run::gen_runtime226, primGuide(), "operator cast", formal(primCycleToken(), "tok", false, false)); -#line 2991 "runtime.in" - addFunc(ve, run::gen_runtime227, primGuide(), "operator spec", formal(primPair(), "z", false, false), formal(primInt(), "p", false, false)); -#line 2999 "runtime.in" - addFunc(ve, run::gen_runtime228, primCurlSpecifier(), "operator curl", formal(primReal(), "gamma", false, false), formal(primInt(), "p", false, false)); -#line 3005 "runtime.in" +#line 778 "runtime.in" + addFunc(ve, run::gen_runtime88, primGuide(), "operator cast", formal(primCycleToken(), "tok", false, false)); +#line 785 "runtime.in" + addFunc(ve, run::gen_runtime89, primGuide(), "operator spec", formal(primPair(), "z", false, false), formal(primInt(), "p", false, false)); +#line 793 "runtime.in" + addFunc(ve, run::gen_runtime90, primCurlSpecifier(), "operator curl", formal(primReal(), "gamma", false, false), formal(primInt(), "p", false, false)); +#line 799 "runtime.in" REGISTER_BLTIN(run::curlSpecifierValuePart,"curlSpecifierValuePart"); -#line 3010 "runtime.in" +#line 804 "runtime.in" REGISTER_BLTIN(run::curlSpecifierSidePart,"curlSpecifierSidePart"); -#line 3015 "runtime.in" - addFunc(ve, run::gen_runtime231, primGuide(), "operator cast", formal(primCurlSpecifier(), "spec", false, false)); -#line 3020 "runtime.in" - addFunc(ve, run::gen_runtime232, primTensionSpecifier(), "operator tension", formal(primReal(), "tout", false, false), formal(primReal(), "tin", false, false), formal(primBoolean(), "atleast", false, false)); -#line 3025 "runtime.in" +#line 809 "runtime.in" + addFunc(ve, run::gen_runtime93, primGuide(), "operator cast", formal(primCurlSpecifier(), "spec", false, false)); +#line 814 "runtime.in" + addFunc(ve, run::gen_runtime94, primTensionSpecifier(), "operator tension", formal(primReal(), "tout", false, false), formal(primReal(), "tin", false, false), formal(primBoolean(), "atleast", false, false)); +#line 819 "runtime.in" REGISTER_BLTIN(run::tensionSpecifierOutPart,"tensionSpecifierOutPart"); -#line 3030 "runtime.in" +#line 824 "runtime.in" REGISTER_BLTIN(run::tensionSpecifierInPart,"tensionSpecifierInPart"); -#line 3035 "runtime.in" +#line 829 "runtime.in" REGISTER_BLTIN(run::tensionSpecifierAtleastPart,"tensionSpecifierAtleastPart"); -#line 3040 "runtime.in" - addFunc(ve, run::gen_runtime236, primGuide(), "operator cast", formal(primTensionSpecifier(), "t", false, false)); -#line 3045 "runtime.in" - addFunc(ve, run::gen_runtime237, primGuide(), "operator controls", formal(primPair(), "zout", false, false), formal(primPair(), "zin", false, false)); -#line 3050 "runtime.in" - addFunc(ve, run::gen_runtime238, primInt(), "size", formal(primGuide(), "g", false, false)); -#line 3057 "runtime.in" - addFunc(ve, run::gen_runtime239, primInt(), "length", formal(primGuide(), "g", false, false)); -#line 3064 "runtime.in" - addFunc(ve, run::gen_runtime240, primBoolean(), "cyclic", formal(primGuide(), "g", false, false)); -#line 3071 "runtime.in" - addFunc(ve, run::gen_runtime241, primPair(), "point", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); -#line 3078 "runtime.in" - addFunc(ve, run::gen_runtime242, pairArray(), "dirSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); -#line 3090 "runtime.in" - addFunc(ve, run::gen_runtime243, pairArray(), "controlSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); -#line 3107 "runtime.in" - addFunc(ve, run::gen_runtime244, primTensionSpecifier(), "tensionSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); -#line 3117 "runtime.in" - addFunc(ve, run::gen_runtime245, realArray(), "curlSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); -#line 3131 "runtime.in" - addFunc(ve, run::gen_runtime246, primGuide(), "reverse", formal(primGuide(), "g", false, false)); -#line 3185 "runtime.in" - addFunc(ve, run::gen_runtime247, primVoid(), "_draw", formal(primPicture(), "f", false, false), formal(primPath3(), "g", false, false), formal(primPen(), "p", false, false)); -#line 3194 "runtime.in" - addFunc(ve, run::gen_runtime248, primVoid(), "draw", formal(primPicture(), "f", false, false), formal(tripleArray2(), "g", false, false), formal(primBoolean(), "straight", false, false), formal(penArray() , "p", false, false), formal(primReal(), "opacity", false, false), formal(primReal(), "shininess", false, false), formal(primReal(), "prcshininess", false, false), formal(primReal(), "granularity", false, false), formal(primTriple(), "normal", false, false), formal(primBoolean(), "lighton", false, false), formal(penArray() , "colors", false, false)); -#line 3202 "runtime.in" - addFunc(ve, run::gen_runtime249, primTriple(), "min3", formal(primPicture(), "f", false, false)); -#line 3207 "runtime.in" - addFunc(ve, run::gen_runtime250, primTriple(), "max3", formal(primPicture(), "f", false, false)); -#line 3212 "runtime.in" - addFunc(ve, run::gen_runtime251, primPair(), "minratio", formal(primPicture(), "f", false, false)); -#line 3217 "runtime.in" - addFunc(ve, run::gen_runtime252, primPair(), "maxratio", formal(primPicture(), "f", false, false)); -#line 3222 "runtime.in" - addFunc(ve, run::gen_runtime253, primTriple(), "minbezier", formal(tripleArray2(), "p", false, false), formal(primTriple(), "b", false, false)); -#line 3232 "runtime.in" - addFunc(ve, run::gen_runtime254, primTriple(), "maxbezier", formal(tripleArray2(), "p", false, false), formal(primTriple(), "b", false, false)); -#line 3242 "runtime.in" - addFunc(ve, run::gen_runtime255, primPair(), "minratio", formal(tripleArray2(), "p", false, false), formal(primPair(), "b", false, false)); -#line 3252 "runtime.in" - addFunc(ve, run::gen_runtime256, primPair(), "maxratio", formal(tripleArray2(), "p", false, false), formal(primPair(), "b", false, false)); -#line 3262 "runtime.in" - addFunc(ve, run::gen_runtime257, primPair(), "minratio", formal(primPath3(), "g", false, false)); -#line 3267 "runtime.in" - addFunc(ve, run::gen_runtime258, primPair(), "maxratio", formal(primPath3(), "g", false, false)); -#line 3272 "runtime.in" - addFunc(ve, run::gen_runtime259, primReal(), "norm", formal(realArray(), "a", false, false)); -#line 3283 "runtime.in" - addFunc(ve, run::gen_runtime260, primReal(), "norm", formal(realArray2(), "a", false, false)); -#line 3298 "runtime.in" - addFunc(ve, run::gen_runtime261, primReal(), "norm", formal(tripleArray2(), "a", false, false)); -#line 3313 "runtime.in" - addFunc(ve, run::gen_runtime262, primReal(), "change2", formal(tripleArray2(), "a", false, false)); -#line 3335 "runtime.in" - addFunc(ve, run::gen_runtime263, primBoolean(), "is3D", formal(primPicture(), "f", false, false)); -#line 3340 "runtime.in" - addFunc(ve, run::gen_runtime264, primPair(), "bezier", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false), formal(primReal(), "t", false, false)); -#line 3347 "runtime.in" - addFunc(ve, run::gen_runtime265, primPair(), "bezierP", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false), formal(primReal(), "t", false, false)); -#line 3352 "runtime.in" - addFunc(ve, run::gen_runtime266, primPair(), "bezierPP", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false), formal(primReal(), "t", false, false)); -#line 3357 "runtime.in" - addFunc(ve, run::gen_runtime267, primPair(), "bezierPPP", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false), formal(primPair(), "c", false, false), formal(primPair(), "d", false, false)); -#line 3362 "runtime.in" - addFunc(ve, run::gen_runtime268, primTriple(), "bezier", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false), formal(primReal(), "t", false, false)); -#line 3369 "runtime.in" - addFunc(ve, run::gen_runtime269, primTriple(), "bezierP", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false), formal(primReal(), "t", false, false)); -#line 3374 "runtime.in" - addFunc(ve, run::gen_runtime270, primTriple(), "bezierPP", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false), formal(primReal(), "t", false, false)); -#line 3379 "runtime.in" - addFunc(ve, run::gen_runtime271, primTriple(), "bezierPPP", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false)); -#line 3384 "runtime.in" - REGISTER_BLTIN(run::emptyString,"emptyString"); -#line 3392 "runtime.in" - addFunc(ve, run::gen_runtime273, primInt(), "length", formal(primString(), "s", false, false)); -#line 3397 "runtime.in" - addFunc(ve, run::gen_runtime274, primInt(), "find", formal(primString(), "s", false, false), formal(primString() , "t", false, false), formal(primInt(), "pos", true, false)); -#line 3403 "runtime.in" - addFunc(ve, run::gen_runtime275, primInt(), "rfind", formal(primString(), "s", false, false), formal(primString() , "t", false, false), formal(primInt(), "pos", true, false)); -#line 3409 "runtime.in" - addFunc(ve, run::gen_runtime276, primString() , "reverse", formal(primString() , "s", false, false)); -#line 3415 "runtime.in" - addFunc(ve, run::gen_runtime277, primString() , "insert", formal(primString() , "s", false, false), formal(primInt(), "pos", false, false), formal(primString() , "t", false, false)); -#line 3422 "runtime.in" - addFunc(ve, run::gen_runtime278, primString() , "substr", formal(primString(), "s", false, false), formal(primInt(), "pos", false, false), formal(primInt(), "n", true, false)); -#line 3429 "runtime.in" - addFunc(ve, run::gen_runtime279, primString() , "erase", formal(primString() , "s", false, false), formal(primInt(), "pos", false, false), formal(primInt(), "n", false, false)); -#line 3436 "runtime.in" - addFunc(ve, run::gen_runtime280, primString() , "downcase", formal(primString() , "s", false, false)); -#line 3442 "runtime.in" - addFunc(ve, run::gen_runtime281, primString() , "upcase", formal(primString() , "s", false, false)); -#line 3448 "runtime.in" - addFunc(ve, run::gen_runtime282, primString() , "replace", formal(primString(), "s", false, false), formal(stringArray2(), "translate", false, false)); -#line 3475 "runtime.in" - addFunc(ve, run::gen_runtime283, primString() , "format", formal(primString(), "format", false, false), formal(primInt(), "x", false, false)); -#line 3490 "runtime.in" - addFunc(ve, run::gen_runtime284, primString() , "format", formal(primString(), "format", false, false), formal(primReal(), "x", false, false), formal(primString() , "locale", true, false)); -#line 3615 "runtime.in" - addFunc(ve, run::gen_runtime285, primInt(), "hex", formal(primString() , "s", false, false)); -#line 3626 "runtime.in" - addFunc(ve, run::gen_runtime286, primString() , "string", formal(primInt(), "x", false, false)); -#line 3633 "runtime.in" - addFunc(ve, run::gen_runtime287, primString() , "string", formal(primReal(), "x", false, false), formal(primInt(), "digits", true, false)); -#line 3641 "runtime.in" - addFunc(ve, run::gen_runtime288, primString() , "time", formal(primString() , "format", true, false)); -#line 3652 "runtime.in" - addFunc(ve, run::gen_runtime289, primString() , "time", formal(primInt(), "seconds", false, false), formal(primString() , "format", true, false)); -#line 3665 "runtime.in" - addFunc(ve, run::gen_runtime290, primInt(), "seconds", formal(primString() , "t", true, false), formal(primString() , "format", true, false)); -#line 3677 "runtime.in" - addFunc(ve, run::gen_runtime291, realArray(), "_cputime"); -#line 3691 "runtime.in" - addFunc(ve, run::gen_runtime292, primReal(), "^", formal(primReal(), "x", false, false), formal(primInt(), "y", false, false)); -#line 3699 "runtime.in" - addFunc(ve, run::gen_runtime293, primPair(), "^", formal(primPair(), "z", false, false), formal(primInt(), "y", false, false)); -#line 3704 "runtime.in" - addFunc(ve, run::gen_runtime294, primInt(), "quotient", formal(primInt(), "x", false, false), formal(primInt(), "y", false, false)); -#line 3712 "runtime.in" - addFunc(ve, run::gen_runtime295, primInt(), "abs", formal(primInt(), "x", false, false)); -#line 3717 "runtime.in" - addFunc(ve, run::gen_runtime296, primInt(), "sgn", formal(primReal(), "x", false, false)); -#line 3722 "runtime.in" - addFunc(ve, run::gen_runtime297, primInt(), "rand"); -#line 3727 "runtime.in" - addFunc(ve, run::gen_runtime298, primVoid(), "srand", formal(primInt(), "seed", false, false)); -#line 3732 "runtime.in" - addFunc(ve, run::gen_runtime299, primReal(), "unitrand"); -#line 3738 "runtime.in" - addFunc(ve, run::gen_runtime300, primInt(), "ceil", formal(primReal(), "x", false, false)); -#line 3743 "runtime.in" - addFunc(ve, run::gen_runtime301, primInt(), "floor", formal(primReal(), "x", false, false)); -#line 3748 "runtime.in" - addFunc(ve, run::gen_runtime302, primInt(), "round", formal(primReal(), "x", false, false)); -#line 3754 "runtime.in" - addFunc(ve, run::gen_runtime303, primInt(), "Ceil", formal(primReal(), "x", false, false)); -#line 3759 "runtime.in" - addFunc(ve, run::gen_runtime304, primInt(), "Floor", formal(primReal(), "x", false, false)); -#line 3764 "runtime.in" - addFunc(ve, run::gen_runtime305, primInt(), "Round", formal(primReal(), "x", false, false)); -#line 3769 "runtime.in" - addFunc(ve, run::gen_runtime306, primReal(), "fmod", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); -#line 3775 "runtime.in" - addFunc(ve, run::gen_runtime307, primReal(), "atan2", formal(primReal(), "y", false, false), formal(primReal(), "x", false, false)); -#line 3780 "runtime.in" - addFunc(ve, run::gen_runtime308, primReal(), "hypot", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); -#line 3785 "runtime.in" - addFunc(ve, run::gen_runtime309, primReal(), "remainder", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); -#line 3790 "runtime.in" - addFunc(ve, run::gen_runtime310, primReal(), "J", formal(primInt(), "n", false, false), formal(primReal(), "x", false, false)); -#line 3795 "runtime.in" - addFunc(ve, run::gen_runtime311, primReal(), "Y", formal(primInt(), "n", false, false), formal(primReal(), "x", false, false)); -#line 3800 "runtime.in" - addFunc(ve, run::gen_runtime312, primReal(), "erf", formal(primReal(), "x", false, false)); -#line 3805 "runtime.in" - addFunc(ve, run::gen_runtime313, primReal(), "erfc", formal(primReal(), "x", false, false)); -#line 3810 "runtime.in" - addFunc(ve, run::gen_runtime314, primInt(), "factorial", formal(primInt(), "n", false, false)); -#line 3815 "runtime.in" - addFunc(ve, run::gen_runtime315, primInt(), "choose", formal(primInt(), "n", false, false), formal(primInt(), "k", false, false)); -#line 3826 "runtime.in" - addFunc(ve, run::gen_runtime316, primReal(), "gamma", formal(primReal(), "x", false, false)); -#line 3836 "runtime.in" - addFunc(ve, run::gen_runtime317, primPair(), "gamma", formal(primPair(), "z", false, true)); -#line 3842 "runtime.in" - addFunc(ve, run::gen_runtime318, realArray(), "quadraticroots", formal(primReal(), "a", false, false), formal(primReal(), "b", false, false), formal(primReal(), "c", false, false)); -#line 3851 "runtime.in" - addFunc(ve, run::gen_runtime319, pairArray(), "quadraticroots", formal(primPair(), "a", false, true), formal(primPair(), "b", false, true), formal(primPair(), "c", false, true)); -#line 3860 "runtime.in" - addFunc(ve, run::gen_runtime320, realArray(), "cubicroots", formal(primReal(), "a", false, false), formal(primReal(), "b", false, false), formal(primReal(), "c", false, false), formal(primReal(), "d", false, false)); -#line 3870 "runtime.in" - addFunc(ve, run::gen_runtime321, primBoolean(), "==", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); -#line 3878 "runtime.in" - addFunc(ve, run::gen_runtime322, primBoolean(), "!=", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); -#line 3883 "runtime.in" - addFunc(ve, run::gen_runtime323, primTransform(), "+", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); -#line 3888 "runtime.in" - addFunc(ve, run::gen_runtime324, primTransform(), "*", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); -#line 3893 "runtime.in" - addFunc(ve, run::gen_runtime325, primPair(), "*", formal(primTransform(), "t", false, false), formal(primPair(), "z", false, false)); -#line 3898 "runtime.in" - addFunc(ve, run::gen_runtime326, primPath(), "*", formal(primTransform(), "t", false, false), formal(primPath(), "g", false, false)); -#line 3903 "runtime.in" - addFunc(ve, run::gen_runtime327, primPen(), "*", formal(primTransform(), "t", false, false), formal(primPen(), "p", false, false)); -#line 3908 "runtime.in" - addFunc(ve, run::gen_runtime328, primPicture(), "*", formal(primTransform(), "t", false, false), formal(primPicture(), "f", false, false)); -#line 3913 "runtime.in" - addFunc(ve, run::gen_runtime329, primPicture(), "*", formal(realArray2(), "t", false, false), formal(primPicture(), "f", false, false)); -#line 3918 "runtime.in" - addFunc(ve, run::gen_runtime330, primTransform(), "^", formal(primTransform(), "t", false, false), formal(primInt(), "n", false, false)); -#line 3929 "runtime.in" +#line 834 "runtime.in" + addFunc(ve, run::gen_runtime98, primGuide(), "operator cast", formal(primTensionSpecifier(), "t", false, false)); +#line 839 "runtime.in" + addFunc(ve, run::gen_runtime99, primGuide(), "operator controls", formal(primPair(), "zout", false, false), formal(primPair(), "zin", false, false)); +#line 844 "runtime.in" + addFunc(ve, run::gen_runtime100, primInt(), "size", formal(primGuide(), "g", false, false)); +#line 851 "runtime.in" + addFunc(ve, run::gen_runtime101, primInt(), "length", formal(primGuide(), "g", false, false)); +#line 858 "runtime.in" + addFunc(ve, run::gen_runtime102, primBoolean(), "cyclic", formal(primGuide(), "g", false, false)); +#line 865 "runtime.in" + addFunc(ve, run::gen_runtime103, primPair(), "point", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); +#line 872 "runtime.in" + addFunc(ve, run::gen_runtime104, pairArray(), "dirSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); +#line 884 "runtime.in" + addFunc(ve, run::gen_runtime105, pairArray(), "controlSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); +#line 901 "runtime.in" + addFunc(ve, run::gen_runtime106, primTensionSpecifier(), "tensionSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); +#line 911 "runtime.in" + addFunc(ve, run::gen_runtime107, realArray(), "curlSpecifier", formal(primGuide(), "g", false, false), formal(primInt(), "t", false, false)); +#line 925 "runtime.in" + addFunc(ve, run::gen_runtime108, primGuide(), "reverse", formal(primGuide(), "g", false, false)); +#line 980 "runtime.in" + addFunc(ve, run::gen_runtime109, realArray(), "_cputime"); +#line 994 "runtime.in" + addFunc(ve, run::gen_runtime110, primBoolean(), "==", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); +#line 1002 "runtime.in" + addFunc(ve, run::gen_runtime111, primBoolean(), "!=", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); +#line 1007 "runtime.in" + addFunc(ve, run::gen_runtime112, primTransform(), "+", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); +#line 1012 "runtime.in" + addFunc(ve, run::gen_runtime113, primTransform(), "*", formal(primTransform(), "a", false, false), formal(primTransform(), "b", false, false)); +#line 1017 "runtime.in" + addFunc(ve, run::gen_runtime114, primPair(), "*", formal(primTransform(), "t", false, false), formal(primPair(), "z", false, false)); +#line 1022 "runtime.in" + addFunc(ve, run::gen_runtime115, primPath(), "*", formal(primTransform(), "t", false, false), formal(primPath(), "g", false, false)); +#line 1027 "runtime.in" + addFunc(ve, run::gen_runtime116, primPen(), "*", formal(primTransform(), "t", false, false), formal(primPen(), "p", false, false)); +#line 1032 "runtime.in" + addFunc(ve, run::gen_runtime117, primPicture(), "*", formal(primTransform(), "t", false, false), formal(primPicture(), "f", false, false)); +#line 1037 "runtime.in" + addFunc(ve, run::gen_runtime118, primPicture(), "*", formal(realArray2(), "t", false, false), formal(primPicture(), "f", false, false)); +#line 1042 "runtime.in" + addFunc(ve, run::gen_runtime119, primTransform(), "^", formal(primTransform(), "t", false, false), formal(primInt(), "n", false, false)); +#line 1053 "runtime.in" REGISTER_BLTIN(run::transformXPart,"transformXPart"); -#line 3934 "runtime.in" +#line 1058 "runtime.in" REGISTER_BLTIN(run::transformYPart,"transformYPart"); -#line 3939 "runtime.in" +#line 1063 "runtime.in" REGISTER_BLTIN(run::transformXXPart,"transformXXPart"); -#line 3944 "runtime.in" +#line 1068 "runtime.in" REGISTER_BLTIN(run::transformXYPart,"transformXYPart"); -#line 3949 "runtime.in" +#line 1073 "runtime.in" REGISTER_BLTIN(run::transformYXPart,"transformYXPart"); -#line 3954 "runtime.in" +#line 1078 "runtime.in" REGISTER_BLTIN(run::transformYYPart,"transformYYPart"); -#line 3959 "runtime.in" +#line 1083 "runtime.in" REGISTER_BLTIN(run::real6ToTransform,"real6ToTransform"); -#line 3965 "runtime.in" - addFunc(ve, run::gen_runtime338, primTransform(), "shift", formal(primTransform(), "t", false, false)); -#line 3970 "runtime.in" - addFunc(ve, run::gen_runtime339, primTransform(), "shiftless", formal(primTransform(), "t", false, false)); -#line 3975 "runtime.in" +#line 1089 "runtime.in" + addFunc(ve, run::gen_runtime127, primTransform(), "shift", formal(primTransform(), "t", false, false)); +#line 1094 "runtime.in" + addFunc(ve, run::gen_runtime128, primTransform(), "shiftless", formal(primTransform(), "t", false, false)); +#line 1099 "runtime.in" addFunc(ve, run::transformIdentity, primTransform(), "identity"); -#line 3980 "runtime.in" - addFunc(ve, run::gen_runtime341, primTransform(), "inverse", formal(primTransform(), "t", false, false)); -#line 3985 "runtime.in" - addFunc(ve, run::gen_runtime342, primTransform(), "shift", formal(primPair(), "z", false, false)); -#line 3990 "runtime.in" - addFunc(ve, run::gen_runtime343, primTransform(), "shift", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); -#line 3995 "runtime.in" - addFunc(ve, run::gen_runtime344, primTransform(), "xscale", formal(primReal(), "x", false, false)); -#line 4000 "runtime.in" - addFunc(ve, run::gen_runtime345, primTransform(), "yscale", formal(primReal(), "y", false, false)); -#line 4005 "runtime.in" - addFunc(ve, run::gen_runtime346, primTransform(), "scale", formal(primReal(), "x", false, false)); -#line 4010 "runtime.in" - addFunc(ve, run::gen_runtime347, primTransform(), "scale", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); -#line 4015 "runtime.in" - addFunc(ve, run::gen_runtime348, primTransform(), "slant", formal(primReal(), "s", false, false)); -#line 4020 "runtime.in" - addFunc(ve, run::gen_runtime349, primTransform(), "rotate", formal(primReal(), "angle", false, false), formal(primPair(), "z", true, false)); -#line 4025 "runtime.in" - addFunc(ve, run::gen_runtime350, primTransform(), "reflect", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false)); -#line 4030 "runtime.in" - REGISTER_BLTIN(run::pairZero,"pairZero"); -#line 4038 "runtime.in" - REGISTER_BLTIN(run::realRealToPair,"realRealToPair"); -#line 4043 "runtime.in" - REGISTER_BLTIN(run::pairNegate,"pairNegate"); -#line 4048 "runtime.in" - addFunc(ve, run::pairXPart, primReal(), "xpart", formal(primPair(), "z", false, false)); -#line 4053 "runtime.in" - addFunc(ve, run::pairYPart, primReal(), "ypart", formal(primPair(), "z", false, false)); -#line 4058 "runtime.in" - addFunc(ve, run::gen_runtime356, primReal(), "length", formal(primPair(), "z", false, false)); -#line 4063 "runtime.in" - addFunc(ve, run::gen_runtime357, primReal(), "abs", formal(primPair(), "z", false, false)); -#line 4068 "runtime.in" - addFunc(ve, run::gen_runtime358, primPair(), "sqrt", formal(primPair(), "z", false, true)); -#line 4073 "runtime.in" - addFunc(ve, run::gen_runtime359, primReal(), "angle", formal(primPair(), "z", false, false), formal(primBoolean(), "warn", true, false)); -#line 4080 "runtime.in" - addFunc(ve, run::gen_runtime360, primReal(), "degrees", formal(primPair(), "z", false, false), formal(primBoolean(), "warn", true, false)); -#line 4087 "runtime.in" - addFunc(ve, run::gen_runtime361, primReal(), "radians", formal(primReal(), "degrees", false, false)); -#line 4093 "runtime.in" - addFunc(ve, run::gen_runtime362, primReal(), "degrees", formal(primReal(), "radians", false, false)); -#line 4099 "runtime.in" - addFunc(ve, run::gen_runtime363, primReal(), "Degrees", formal(primReal(), "radians", false, false)); -#line 4105 "runtime.in" - addFunc(ve, run::gen_runtime364, primReal(), "Sin", formal(primReal(), "deg", false, false)); -#line 4110 "runtime.in" - addFunc(ve, run::gen_runtime365, primReal(), "Cos", formal(primReal(), "deg", false, false)); -#line 4115 "runtime.in" - addFunc(ve, run::gen_runtime366, primReal(), "Tan", formal(primReal(), "deg", false, false)); -#line 4120 "runtime.in" - addFunc(ve, run::gen_runtime367, primReal(), "aSin", formal(primReal(), "x", false, false)); -#line 4125 "runtime.in" - addFunc(ve, run::gen_runtime368, primReal(), "aCos", formal(primReal(), "x", false, false)); -#line 4130 "runtime.in" - addFunc(ve, run::gen_runtime369, primReal(), "aTan", formal(primReal(), "x", false, false)); -#line 4135 "runtime.in" - addFunc(ve, run::gen_runtime370, primPair(), "unit", formal(primPair(), "z", false, false)); -#line 4140 "runtime.in" - addFunc(ve, run::gen_runtime371, primPair(), "dir", formal(primReal(), "degrees", false, false)); -#line 4145 "runtime.in" - addFunc(ve, run::gen_runtime372, primPair(), "dir", formal(primPair(), "z", false, true)); -#line 4150 "runtime.in" - addFunc(ve, run::gen_runtime373, primPair(), "expi", formal(primReal(), "angle", false, false)); -#line 4155 "runtime.in" - addFunc(ve, run::gen_runtime374, primPair(), "exp", formal(primPair(), "z", false, true)); -#line 4160 "runtime.in" - addFunc(ve, run::gen_runtime375, primPair(), "log", formal(primPair(), "z", false, true)); -#line 4165 "runtime.in" - addFunc(ve, run::gen_runtime376, primPair(), "sin", formal(primPair(), "z", false, true)); -#line 4170 "runtime.in" - addFunc(ve, run::gen_runtime377, primPair(), "cos", formal(primPair(), "z", false, true)); -#line 4175 "runtime.in" - addFunc(ve, run::gen_runtime378, primPair(), "conj", formal(primPair(), "z", false, false)); -#line 4180 "runtime.in" - addFunc(ve, run::gen_runtime379, primPair(), "realmult", formal(primPair(), "z", false, false), formal(primPair(), "w", false, false)); -#line 4185 "runtime.in" - addFunc(ve, run::gen_runtime380, primTriple(), "realmult", formal(primTriple(), "u", false, false), formal(primTriple(), "v", false, false)); -#line 4190 "runtime.in" - addFunc(ve, run::gen_runtime381, primReal(), "dot", formal(primPair(), "z", false, true), formal(primPair(), "w", false, true)); -#line 4196 "runtime.in" - REGISTER_BLTIN(run::tripleZero,"tripleZero"); -#line 4205 "runtime.in" - REGISTER_BLTIN(run::realRealRealToTriple,"realRealRealToTriple"); -#line 4210 "runtime.in" - addFunc(ve, run::tripleXPart, primReal(), "xpart", formal(primTriple(), "v", false, false)); -#line 4215 "runtime.in" - addFunc(ve, run::tripleYPart, primReal(), "ypart", formal(primTriple(), "v", false, false)); -#line 4220 "runtime.in" - addFunc(ve, run::tripleZPart, primReal(), "zpart", formal(primTriple(), "v", false, false)); -#line 4225 "runtime.in" - addFunc(ve, run::gen_runtime387, primTriple(), "*", formal(primReal(), "x", false, false), formal(primTriple(), "v", false, false)); -#line 4230 "runtime.in" - addFunc(ve, run::gen_runtime388, primTriple(), "*", formal(primTriple(), "v", false, false), formal(primReal(), "x", false, false)); -#line 4235 "runtime.in" - addFunc(ve, run::gen_runtime389, primTriple(), "/", formal(primTriple(), "v", false, false), formal(primReal(), "x", false, false)); -#line 4240 "runtime.in" - addFunc(ve, run::gen_runtime390, primReal(), "length", formal(primTriple(), "v", false, false)); -#line 4245 "runtime.in" - addFunc(ve, run::gen_runtime391, primReal(), "abs", formal(primTriple(), "v", false, false)); -#line 4250 "runtime.in" - addFunc(ve, run::gen_runtime392, primReal(), "polar", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); -#line 4256 "runtime.in" - addFunc(ve, run::gen_runtime393, primReal(), "azimuth", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); -#line 4262 "runtime.in" - addFunc(ve, run::gen_runtime394, primReal(), "colatitude", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); -#line 4268 "runtime.in" - addFunc(ve, run::gen_runtime395, primReal(), "latitude", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); -#line 4274 "runtime.in" - addFunc(ve, run::gen_runtime396, primReal(), "longitude", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); -#line 4281 "runtime.in" - addFunc(ve, run::gen_runtime397, primTriple(), "unit", formal(primTriple(), "v", false, false)); -#line 4286 "runtime.in" - addFunc(ve, run::gen_runtime398, primReal(), "dot", formal(primTriple(), "u", false, false), formal(primTriple(), "v", false, false)); -#line 4291 "runtime.in" - addFunc(ve, run::gen_runtime399, primTriple(), "cross", formal(primTriple(), "u", false, false), formal(primTriple(), "v", false, false)); -#line 4296 "runtime.in" - addFunc(ve, run::gen_runtime400, primTriple(), "dir", formal(primTriple(), "z", false, true)); -#line 4301 "runtime.in" - addFunc(ve, run::gen_runtime401, primTriple(), "expi", formal(primReal(), "polar", false, false), formal(primReal(), "azimuth", false, false)); -#line 4306 "runtime.in" - addFunc(ve, run::gen_runtime402, primTriple(), "dir", formal(primReal(), "colatitude", false, false), formal(primReal(), "longitude", false, false)); -#line 4311 "runtime.in" - addFunc(ve, run::gen_runtime403, primVoid(), "atupdate", formal(voidFunction(), "f", false, false)); -#line 4319 "runtime.in" - addFunc(ve, run::gen_runtime404, voidFunction(), "atupdate"); -#line 4324 "runtime.in" - addFunc(ve, run::gen_runtime405, primVoid(), "atexit", formal(voidFunction(), "f", false, false)); -#line 4329 "runtime.in" - addFunc(ve, run::gen_runtime406, voidFunction(), "atexit"); -#line 4334 "runtime.in" - addFunc(ve, run::gen_runtime407, primVoid(), "atbreakpoint", formal(breakpointFunction(), "f", false, false)); -#line 4339 "runtime.in" - addFunc(ve, run::gen_runtime408, primVoid(), "breakpoint", formal(primCode(), "s", true, false)); -#line 4344 "runtime.in" - addFunc(ve, run::gen_runtime409, primString() , "locatefile", formal(primString() , "file", false, false)); -#line 4349 "runtime.in" - addFunc(ve, run::gen_runtime410, primVoid(), "stop", formal(primString() , "file", false, false), formal(primInt(), "line", false, false), formal(primCode(), "s", true, false)); -#line 4357 "runtime.in" - addFunc(ve, run::gen_runtime411, primVoid(), "breakpoints"); -#line 4363 "runtime.in" - addFunc(ve, run::gen_runtime412, primVoid(), "clear", formal(primString() , "file", false, false), formal(primInt(), "line", false, false)); -#line 4369 "runtime.in" - addFunc(ve, run::gen_runtime413, primVoid(), "clear"); -#line 4374 "runtime.in" - addFunc(ve, run::gen_runtime414, primVoid(), "warn", formal(primString() , "s", false, false)); -#line 4379 "runtime.in" - addFunc(ve, run::gen_runtime415, primVoid(), "nowarn", formal(primString() , "s", false, false)); -#line 4384 "runtime.in" - addFunc(ve, run::gen_runtime416, primVoid(), "warning", formal(primString() , "s", false, false), formal(primString() , "t", false, false), formal(primBoolean(), "position", true, false)); -#line 4392 "runtime.in" - addFunc(ve, run::gen_runtime417, primString() , "stripdirectory", formal(primString(), "s", false, false)); -#line 4398 "runtime.in" - addFunc(ve, run::gen_runtime418, primString() , "stripfile", formal(primString(), "s", false, false)); -#line 4404 "runtime.in" - addFunc(ve, run::gen_runtime419, primString() , "stripextension", formal(primString(), "s", false, false)); -#line 4410 "runtime.in" - addFunc(ve, run::gen_runtime420, primInt(), "convert", formal(primString() , "args", true, false), formal(primString() , "file", true, false), formal(primString() , "format", true, false)); -#line 4429 "runtime.in" - addFunc(ve, run::gen_runtime421, primInt(), "animate", formal(primString() , "args", true, false), formal(primString() , "file", true, false), formal(primString() , "format", true, false)); -#line 4446 "runtime.in" - addFunc(ve, run::gen_runtime422, primInt(), "delete", formal(primString(), "s", false, false)); -#line 4456 "runtime.in" - addFunc(ve, run::gen_runtime423, primInt(), "rename", formal(primString(), "from", false, false), formal(primString(), "to", false, false)); -#line 4467 "runtime.in" - REGISTER_BLTIN(run::emptyArray,"emptyArray"); -#line 4476 "runtime.in" - REGISTER_BLTIN(run::newDeepArray,"newDeepArray"); -#line 4498 "runtime.in" - REGISTER_BLTIN(run::newInitializedArray,"newInitializedArray"); -#line 4513 "runtime.in" - REGISTER_BLTIN(run::newAppendedArray,"newAppendedArray"); -#line 4529 "runtime.in" - REGISTER_BLTIN(run::newDuplicateArray,"newDuplicateArray"); -#line 4539 "runtime.in" - REGISTER_BLTIN(run::arrayRead,"arrayRead"); -#line 4551 "runtime.in" - REGISTER_BLTIN(run::arraySliceRead,"arraySliceRead"); -#line 4558 "runtime.in" - REGISTER_BLTIN(run::arraySliceReadToEnd,"arraySliceReadToEnd"); -#line 4566 "runtime.in" - REGISTER_BLTIN(run::arrayArrayRead,"arrayArrayRead"); -#line 4575 "runtime.in" - REGISTER_BLTIN(run::arrayWrite,"arrayWrite"); -#line 4591 "runtime.in" - REGISTER_BLTIN(run::arraySliceWrite,"arraySliceWrite"); -#line 4599 "runtime.in" - REGISTER_BLTIN(run::arraySliceWriteToEnd,"arraySliceWriteToEnd"); -#line 4607 "runtime.in" - REGISTER_BLTIN(run::arrayLength,"arrayLength"); -#line 4613 "runtime.in" - REGISTER_BLTIN(run::arrayKeys,"arrayKeys"); -#line 4628 "runtime.in" - REGISTER_BLTIN(run::arrayCyclicFlag,"arrayCyclicFlag"); -#line 4635 "runtime.in" - REGISTER_BLTIN(run::arraySetCyclicFlag,"arraySetCyclicFlag"); -#line 4642 "runtime.in" - REGISTER_BLTIN(run::arrayInitializedHelper,"arrayInitializedHelper"); -#line 4653 "runtime.in" - REGISTER_BLTIN(run::arrayInitialized,"arrayInitialized"); -#line 4659 "runtime.in" - REGISTER_BLTIN(run::arrayCyclicHelper,"arrayCyclicHelper"); -#line 4666 "runtime.in" - REGISTER_BLTIN(run::arrayCyclic,"arrayCyclic"); -#line 4672 "runtime.in" - REGISTER_BLTIN(run::arrayPushHelper,"arrayPushHelper"); -#line 4680 "runtime.in" - REGISTER_BLTIN(run::arrayPush,"arrayPush"); -#line 4686 "runtime.in" - REGISTER_BLTIN(run::arrayAppendHelper,"arrayAppendHelper"); -#line 4695 "runtime.in" - REGISTER_BLTIN(run::arrayAppend,"arrayAppend"); -#line 4701 "runtime.in" - REGISTER_BLTIN(run::arrayPopHelper,"arrayPopHelper"); -#line 4710 "runtime.in" - REGISTER_BLTIN(run::arrayPop,"arrayPop"); -#line 4716 "runtime.in" - REGISTER_BLTIN(run::arrayInsertHelper,"arrayInsertHelper"); -#line 4727 "runtime.in" - REGISTER_BLTIN(run::arrayInsert,"arrayInsert"); -#line 4733 "runtime.in" - REGISTER_BLTIN(run::arrayDelete,"arrayDelete"); -#line 4739 "runtime.in" - REGISTER_BLTIN(run::arrayAlias,"arrayAlias"); -#line 4744 "runtime.in" - REGISTER_BLTIN(run::arrayIntArray,"arrayIntArray"); -#line 4762 "runtime.in" - addFunc(ve, run::gen_runtime455, IntArray(), "complement", formal(IntArray(), "a", false, false), formal(primInt(), "n", false, false)); -#line 4781 "runtime.in" - REGISTER_BLTIN(run::arraySequence,"arraySequence"); -#line 4794 "runtime.in" - addFunc(ve, run::gen_runtime457, IntArray(), "sequence", formal(primInt(), "n", false, false)); -#line 4805 "runtime.in" - REGISTER_BLTIN(run::arrayFunction,"arrayFunction"); -#line 4818 "runtime.in" - REGISTER_BLTIN(run::arraySort,"arraySort"); -#line 4827 "runtime.in" - addFunc(ve, run::gen_runtime460, primBoolean(), "all", formal(booleanArray(), "a", false, false)); -#line 4836 "runtime.in" - addFunc(ve, run::gen_runtime461, booleanArray(), "!", formal(booleanArray(), "a", false, false)); -#line 4845 "runtime.in" - addFunc(ve, run::gen_runtime462, primInt(), "sum", formal(booleanArray(), "a", false, false)); -#line 4854 "runtime.in" - REGISTER_BLTIN(run::arrayCopy,"arrayCopy"); -#line 4859 "runtime.in" - REGISTER_BLTIN(run::arrayConcat,"arrayConcat"); -#line 4887 "runtime.in" - REGISTER_BLTIN(run::array2Copy,"array2Copy"); -#line 4892 "runtime.in" - REGISTER_BLTIN(run::array3Copy,"array3Copy"); -#line 4897 "runtime.in" - REGISTER_BLTIN(run::array2Transpose,"array2Transpose"); -#line 4921 "runtime.in" - REGISTER_BLTIN(run::array3Transpose,"array3Transpose"); -#line 5008 "runtime.in" - addFunc(ve, run::gen_runtime469, primInt(), "find", formal(booleanArray(), "a", false, false), formal(primInt(), "n", true, false)); -#line 5027 "runtime.in" - REGISTER_BLTIN(run::arrayConditional,"arrayConditional"); -#line 5053 "runtime.in" - addFunc(ve, run::gen_runtime471, realArray2(), "identity", formal(primInt(), "n", false, false)); -#line 5059 "runtime.in" - REGISTER_BLTIN(run::diagonal,"diagonal"); -#line 5076 "runtime.in" - addFunc(ve, run::gen_runtime473, realArray2(), "inverse", formal(realArray2(), "a", false, false)); -#line 5168 "runtime.in" - addFunc(ve, run::gen_runtime474, realArray(), "solve", formal(realArray2(), "a", false, false), formal(realArray(), "b", false, false), formal(primBoolean(), "warn", true, false)); -#line 5219 "runtime.in" - addFunc(ve, run::gen_runtime475, realArray2(), "solve", formal(realArray2(), "a", false, false), formal(realArray2(), "b", false, false), formal(primBoolean(), "warn", true, false)); -#line 5283 "runtime.in" - addFunc(ve, run::gen_runtime476, primReal(), "determinant", formal(realArray2(), "a", false, false)); -#line 5299 "runtime.in" - addFunc(ve, run::gen_runtime477, realArray(), "*", formal(realArray2(), "a", false, false), formal(realArray(), "b", false, false)); -#line 5317 "runtime.in" - addFunc(ve, run::gen_runtime478, realArray(), "*", formal(realArray(), "a", false, false), formal(realArray2(), "b", false, false)); -#line 5345 "runtime.in" - addFunc(ve, run::gen_runtime479, realArray2(), "*", formal(realArray2(), "a", false, false), formal(realArray2(), "b", false, false)); -#line 5380 "runtime.in" - addFunc(ve, run::gen_runtime480, primTriple(), "*", formal(realArray2(), "t", false, false), formal(primTriple(), "v", false, false)); -#line 5385 "runtime.in" - addFunc(ve, run::gen_runtime481, primPair(), "project", formal(primTriple(), "v", false, false), formal(realArray2(), "t", false, false)); -#line 5410 "runtime.in" - addFunc(ve, run::gen_runtime482, primReal(), "dot", formal(realArray(), "a", false, false), formal(realArray(), "b", false, false)); -#line 5420 "runtime.in" - addFunc(ve, run::gen_runtime483, realArray(), "tridiagonal", formal(realArray(), "a", false, false), formal(realArray(), "b", false, false), formal(realArray(), "c", false, false), formal(realArray(), "f", false, false)); -#line 5524 "runtime.in" - addFunc(ve, run::gen_runtime484, primReal(), "newton", formal(primInt(), "iterations", true, false), formal(realRealFunction(), "f", false, false), formal(realRealFunction(), "fprime", false, false), formal(primReal(), "x", false, false), formal(primBoolean(), "verbose", true, false)); -#line 5571 "runtime.in" - addFunc(ve, run::gen_runtime485, primReal(), "newton", formal(primInt(), "iterations", true, false), formal(realRealFunction(), "f", false, false), formal(realRealFunction(), "fprime", false, false), formal(primReal(), "x1", false, false), formal(primReal(), "x2", false, false), formal(primBoolean(), "verbose", true, false)); -#line 5653 "runtime.in" - addFunc(ve, run::gen_runtime486, primReal(), "simpson", formal(realRealFunction(), "f", false, false), formal(primReal(), "a", false, false), formal(primReal(), "b", false, false), formal(primReal(), "acc", true, false), formal(primReal(), "dxmax", true, false)); -#line 5665 "runtime.in" - REGISTER_BLTIN(run::pairArrayFFT,"pairArrayFFT"); -#line 5695 "runtime.in" - addFunc(ve, run::gen_runtime488, IntArray2(), "triangulate", formal(pairArray(), "z", false, false)); -#line 5730 "runtime.in" - addFunc(ve, run::gen_runtime489, primBoolean(), "==", formal(primFile(), "a", false, false), formal(primFile(), "b", false, false)); -#line 5738 "runtime.in" - addFunc(ve, run::gen_runtime490, primBoolean(), "!=", formal(primFile(), "a", false, false), formal(primFile(), "b", false, false)); -#line 5743 "runtime.in" - REGISTER_BLTIN(run::nullFile,"nullFile"); -#line 5748 "runtime.in" - addFunc(ve, run::gen_runtime492, primFile(), "input", formal(primString() , "name", false, false), formal(primBoolean(), "check", true, false), formal(primString() , "comment", true, false)); -#line 5756 "runtime.in" - addFunc(ve, run::gen_runtime493, primFile(), "output", formal(primString() , "name", false, false), formal(primBoolean(), "update", true, false), formal(primString() , "comment", true, false)); -#line 5768 "runtime.in" - addFunc(ve, run::gen_runtime494, primFile(), "xinput", formal(primString() , "name", false, false), formal(primBoolean(), "check", true, false)); -#line 5782 "runtime.in" - addFunc(ve, run::gen_runtime495, primFile(), "xoutput", formal(primString() , "name", false, false), formal(primBoolean(), "update", true, false)); -#line 5800 "runtime.in" - addFunc(ve, run::gen_runtime496, primFile(), "binput", formal(primString() , "name", false, false), formal(primBoolean(), "check", true, false)); -#line 5807 "runtime.in" - addFunc(ve, run::gen_runtime497, primFile(), "boutput", formal(primString() , "name", false, false), formal(primBoolean(), "update", true, false)); -#line 5817 "runtime.in" - addFunc(ve, run::gen_runtime498, primBoolean(), "eof", formal(primFile(), "f", false, false)); -#line 5822 "runtime.in" - addFunc(ve, run::gen_runtime499, primBoolean(), "eol", formal(primFile(), "f", false, false)); -#line 5827 "runtime.in" - addFunc(ve, run::gen_runtime500, primBoolean(), "error", formal(primFile(), "f", false, false)); -#line 5832 "runtime.in" - addFunc(ve, run::gen_runtime501, primVoid(), "clear", formal(primFile(), "f", false, false)); -#line 5837 "runtime.in" - addFunc(ve, run::gen_runtime502, primVoid(), "close", formal(primFile(), "f", false, false)); -#line 5842 "runtime.in" - addFunc(ve, run::gen_runtime503, primInt(), "precision", formal(primFile(), "f", true, false), formal(primInt(), "digits", true, false)); -#line 5848 "runtime.in" - addFunc(ve, run::gen_runtime504, primVoid(), "flush", formal(primFile(), "f", false, false)); -#line 5853 "runtime.in" - addFunc(ve, run::gen_runtime505, primString() , "getc", formal(primFile(), "f", false, false)); -#line 5862 "runtime.in" - addFunc(ve, run::gen_runtime506, primInt(), "tell", formal(primFile(), "f", false, false)); -#line 5867 "runtime.in" - addFunc(ve, run::gen_runtime507, primVoid(), "seek", formal(primFile(), "f", false, false), formal(primInt(), "pos", false, false)); -#line 5872 "runtime.in" - addFunc(ve, run::gen_runtime508, primVoid(), "seekeof", formal(primFile(), "f", false, false)); -#line 5877 "runtime.in" - REGISTER_BLTIN(run::namePart,"namePart"); -#line 5882 "runtime.in" - REGISTER_BLTIN(run::modePart,"modePart"); -#line 5887 "runtime.in" - REGISTER_BLTIN(run::dimensionSetHelper,"dimensionSetHelper"); -#line 5894 "runtime.in" - REGISTER_BLTIN(run::dimensionSet,"dimensionSet"); -#line 5899 "runtime.in" - REGISTER_BLTIN(run::dimensionPart,"dimensionPart"); -#line 5908 "runtime.in" - REGISTER_BLTIN(run::lineSetHelper,"lineSetHelper"); -#line 5915 "runtime.in" - REGISTER_BLTIN(run::lineSet,"lineSet"); -#line 5920 "runtime.in" - REGISTER_BLTIN(run::linePart,"linePart"); -#line 5925 "runtime.in" - REGISTER_BLTIN(run::csvSetHelper,"csvSetHelper"); -#line 5932 "runtime.in" - REGISTER_BLTIN(run::csvSet,"csvSet"); -#line 5937 "runtime.in" - REGISTER_BLTIN(run::csvPart,"csvPart"); -#line 5942 "runtime.in" - REGISTER_BLTIN(run::wordSetHelper,"wordSetHelper"); -#line 5949 "runtime.in" - REGISTER_BLTIN(run::wordSet,"wordSet"); -#line 5954 "runtime.in" - REGISTER_BLTIN(run::wordPart,"wordPart"); -#line 5959 "runtime.in" - REGISTER_BLTIN(run::singlerealSetHelper,"singlerealSetHelper"); -#line 5966 "runtime.in" - REGISTER_BLTIN(run::singlerealSet,"singlerealSet"); -#line 5971 "runtime.in" - REGISTER_BLTIN(run::singlerealPart,"singlerealPart"); -#line 5976 "runtime.in" - REGISTER_BLTIN(run::singleintSetHelper,"singleintSetHelper"); -#line 5983 "runtime.in" - REGISTER_BLTIN(run::singleintSet,"singleintSet"); -#line 5988 "runtime.in" - REGISTER_BLTIN(run::singleintPart,"singleintPart"); -#line 5993 "runtime.in" - REGISTER_BLTIN(run::signedintSetHelper,"signedintSetHelper"); -#line 6000 "runtime.in" - REGISTER_BLTIN(run::signedintSet,"signedintSet"); -#line 6005 "runtime.in" - REGISTER_BLTIN(run::signedintPart,"signedintPart"); -#line 6010 "runtime.in" - REGISTER_BLTIN(run::readSetHelper,"readSetHelper"); -#line 6033 "runtime.in" - REGISTER_BLTIN(run::readSet,"readSet"); -#line 6038 "runtime.in" - addFunc(ve, run::gen_runtime534, stringArray(), "history", formal(primString() , "name", false, false), formal(primInt(), "n", true, false)); -#line 6071 "runtime.in" - addFunc(ve, run::gen_runtime535, stringArray(), "history", formal(primInt(), "n", true, false)); -#line 6082 "runtime.in" - addFunc(ve, run::gen_runtime536, primString() , "readline", formal(primString() , "prompt", true, false), formal(primString() , "name", true, false), formal(primBoolean(), "tabcompletion", true, false)); -#line 6126 "runtime.in" - addFunc(ve, run::gen_runtime537, primVoid(), "saveline", formal(primString() , "name", false, false), formal(primString() , "value", false, false), formal(primBoolean(), "store", true, false)); +#line 1104 "runtime.in" + addFunc(ve, run::gen_runtime130, primTransform(), "inverse", formal(primTransform(), "t", false, false)); +#line 1109 "runtime.in" + addFunc(ve, run::gen_runtime131, primTransform(), "shift", formal(primPair(), "z", false, false)); +#line 1114 "runtime.in" + addFunc(ve, run::gen_runtime132, primTransform(), "shift", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); +#line 1119 "runtime.in" + addFunc(ve, run::gen_runtime133, primTransform(), "xscale", formal(primReal(), "x", false, false)); +#line 1124 "runtime.in" + addFunc(ve, run::gen_runtime134, primTransform(), "yscale", formal(primReal(), "y", false, false)); +#line 1129 "runtime.in" + addFunc(ve, run::gen_runtime135, primTransform(), "scale", formal(primReal(), "x", false, false)); +#line 1134 "runtime.in" + addFunc(ve, run::gen_runtime136, primTransform(), "scale", formal(primReal(), "x", false, false), formal(primReal(), "y", false, false)); +#line 1139 "runtime.in" + addFunc(ve, run::gen_runtime137, primTransform(), "slant", formal(primReal(), "s", false, false)); +#line 1144 "runtime.in" + addFunc(ve, run::gen_runtime138, primTransform(), "rotate", formal(primReal(), "angle", false, false), formal(primPair(), "z", true, false)); +#line 1149 "runtime.in" + addFunc(ve, run::gen_runtime139, primTransform(), "reflect", formal(primPair(), "a", false, false), formal(primPair(), "b", false, false)); } } // namespace trans diff --git a/Build/source/utils/asymptote/runtime.h b/Build/source/utils/asymptote/runtime.h index 6d8b0c602ae..e7864e54418 100644 --- a/Build/source/utils/asymptote/runtime.h +++ b/Build/source/utils/asymptote/runtime.h @@ -11,18 +11,11 @@ void pushNullRecord(vm::stack *); void pushNullFunction(vm::stack *); void pushDefault(vm::stack *); void isDefault(vm::stack *); -void boolMemEq(vm::stack *); -void boolMemNeq(vm::stack *); -void boolFuncEq(vm::stack *); -void boolFuncNeq(vm::stack *); void pairToGuide(vm::stack *); void pathToGuide(vm::stack *); void guideToPath(vm::stack *); -void newPicture(vm::stack *); void newPen(vm::stack *); void loadModule(vm::stack *); -void nullPath(vm::stack *); -void nullPath3(vm::stack *); void nullGuide(vm::stack *); void dotsGuide(vm::stack *); void dashesGuide(vm::stack *); @@ -32,7 +25,6 @@ void curlSpecifierSidePart(vm::stack *); void tensionSpecifierOutPart(vm::stack *); void tensionSpecifierInPart(vm::stack *); void tensionSpecifierAtleastPart(vm::stack *); -void emptyString(vm::stack *); void transformXPart(vm::stack *); void transformYPart(vm::stack *); void transformXXPart(vm::stack *); @@ -41,85 +33,6 @@ void transformYXPart(vm::stack *); void transformYYPart(vm::stack *); void real6ToTransform(vm::stack *); void transformIdentity(vm::stack *); -void pairZero(vm::stack *); -void realRealToPair(vm::stack *); -void pairNegate(vm::stack *); -void pairXPart(vm::stack *); -void pairYPart(vm::stack *); -void tripleZero(vm::stack *); -void realRealRealToTriple(vm::stack *); -void tripleXPart(vm::stack *); -void tripleYPart(vm::stack *); -void tripleZPart(vm::stack *); -void emptyArray(vm::stack *); -void newDeepArray(vm::stack *); -void newInitializedArray(vm::stack *); -void newAppendedArray(vm::stack *); -void newDuplicateArray(vm::stack *); -void arrayRead(vm::stack *); -void arraySliceRead(vm::stack *); -void arraySliceReadToEnd(vm::stack *); -void arrayArrayRead(vm::stack *); -void arrayWrite(vm::stack *); -void arraySliceWrite(vm::stack *); -void arraySliceWriteToEnd(vm::stack *); -void arrayLength(vm::stack *); -void arrayKeys(vm::stack *); -void arrayCyclicFlag(vm::stack *); -void arraySetCyclicFlag(vm::stack *); -void arrayInitializedHelper(vm::stack *); -void arrayInitialized(vm::stack *); -void arrayCyclicHelper(vm::stack *); -void arrayCyclic(vm::stack *); -void arrayPushHelper(vm::stack *); -void arrayPush(vm::stack *); -void arrayAppendHelper(vm::stack *); -void arrayAppend(vm::stack *); -void arrayPopHelper(vm::stack *); -void arrayPop(vm::stack *); -void arrayInsertHelper(vm::stack *); -void arrayInsert(vm::stack *); -void arrayDelete(vm::stack *); -void arrayAlias(vm::stack *); -void arrayIntArray(vm::stack *); -void arraySequence(vm::stack *); -void arrayFunction(vm::stack *); -void arraySort(vm::stack *); -void arrayCopy(vm::stack *); -void arrayConcat(vm::stack *); -void array2Copy(vm::stack *); -void array3Copy(vm::stack *); -void array2Transpose(vm::stack *); -void array3Transpose(vm::stack *); -void arrayConditional(vm::stack *); -void diagonal(vm::stack *); -void pairArrayFFT(vm::stack *); -void nullFile(vm::stack *); -void namePart(vm::stack *); -void modePart(vm::stack *); -void dimensionSetHelper(vm::stack *); -void dimensionSet(vm::stack *); -void dimensionPart(vm::stack *); -void lineSetHelper(vm::stack *); -void lineSet(vm::stack *); -void linePart(vm::stack *); -void csvSetHelper(vm::stack *); -void csvSet(vm::stack *); -void csvPart(vm::stack *); -void wordSetHelper(vm::stack *); -void wordSet(vm::stack *); -void wordPart(vm::stack *); -void singlerealSetHelper(vm::stack *); -void singlerealSet(vm::stack *); -void singlerealPart(vm::stack *); -void singleintSetHelper(vm::stack *); -void singleintSet(vm::stack *); -void singleintPart(vm::stack *); -void signedintSetHelper(vm::stack *); -void signedintSet(vm::stack *); -void signedintPart(vm::stack *); -void readSetHelper(vm::stack *); -void readSet(vm::stack *); } #endif // runtime_H diff --git a/Build/source/utils/asymptote/runtime.in b/Build/source/utils/asymptote/runtime.in index d4e80bd8b9a..08aabf2ea3e 100644 --- a/Build/source/utils/asymptote/runtime.in +++ b/Build/source/utils/asymptote/runtime.in @@ -66,21 +66,9 @@ stringarray2* => stringArray2() #include "path.h" #include "path3.h" #include "pen.h" +#include "drawpath.h" #include "guide.h" #include "picture.h" -#include "drawpath.h" -#include "drawpath3.h" -#include "drawsurface.h" -#include "drawfill.h" -#include "drawclipbegin.h" -#include "drawclipend.h" -#include "drawlabel.h" -#include "drawverbatim.h" -#include "drawgsave.h" -#include "drawgrestore.h" -#include "drawlayer.h" -#include "drawimage.h" -#include "drawgroup.h" #include "fileio.h" #include "genv.h" #include "builtin.h" @@ -96,18 +84,7 @@ stringarray2* => stringArray2() #include "lexical.h" #include "process.h" #include "arrayop.h" -#include "predicates.h" -#include "Delaunay.h" -#ifdef HAVE_LIBFFTW3 -#include "fftw++.h" -#endif - -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) -#include <readline/readline.h> -#include <readline/history.h> -#endif - #if defined(USEGC) && defined(GC_DEBUG) && defined(GC_BACKTRACE) extern "C" { void *GC_generate_random_valid_address(void); @@ -127,10 +104,6 @@ using vm::stack; using camp::transform; using absyntax::runnable; -typedef double real; - -#define CURRENTPEN processData().currentpen - typedef array boolarray; typedef array Intarray; typedef array Intarray2; @@ -180,27 +153,11 @@ using types::stringArray; using types::stringArray2; using types::formal; -function *voidFunction() -{ - return new function(primVoid()); -} - -function *breakpointFunction() -{ - return new function(primString(),primString(),primInt(),primInt(), - primCode()); -} - function *realRealFunction() { return new function(primReal(),primReal()); } -function *transformFunction() -{ - return new function(primTransform()); -} - function *realTripleFunction() { return new function(primReal(),primTriple()); @@ -213,326 +170,9 @@ namespace vm { namespace run { -const char *invalidargument="invalid argument"; const char *arrayempty="cannot take min or max of empty array"; const char *noruntime="no runtime environment for embedded eval"; -// Return the factorial of a non-negative integer using a lookup table. -Int factorial(Int n) -{ - static Int *table; - static Int size=0; - if(size == 0) { - Int f=1; - size=2; - while(f <= Int_MAX/size) - f *= (size++); - table=new Int[size]; - table[0]=f=1; - for(Int i=1; i < size; ++i) { - f *= i; - table[i]=f; - } - } - if(n >= size) integeroverflow(0); - return table[n]; -} - -static inline Int Round(double x) -{ - return Int(x+((x >= 0) ? 0.5 : -0.5)); -} - -inline Int sgn(double x) -{ - return (x > 0.0 ? 1 : (x < 0.0 ? -1 : 0)); -} - -void outOfBounds(const char *op, size_t len, Int n) -{ - ostringstream buf; - buf << op << " array of length " << len << " with out-of-bounds index " << n; - error(buf); -} - -inline item& arrayRead(array *a, Int n) -{ - size_t len=checkArray(a); - bool cyclic=a->cyclic(); - if(cyclic && len > 0) n=imod(n,len); - else if(n < 0 || n >= (Int) len) outOfBounds("reading",len,n); - return (*a)[(unsigned) n]; -} - -// Helper function to create deep arrays. -static array* deepArray(Int depth, Int *dims) -{ - assert(depth > 0); - - if (depth == 1) { - return new array(dims[0]); - } else { - Int length = dims[0]; - depth--; dims++; - - array *a = new array(length); - - for (Int index = 0; index < length; index++) { - (*a)[index] = deepArray(depth, dims); - } - return a; - } -} - -array *nop(array *a) -{ - return a; -} - -array *Identity(Int n) -{ - size_t N=(size_t) n; - array *c=new array(N); - for(size_t i=0; i < N; ++i) { - array *ci=new array(N); - (*c)[i]=ci; - for(size_t j=0; j < N; ++j) - (*ci)[j]=0.0; - (*ci)[i]=1.0; - } - return c; -} - -array *copyArray(array *a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) - (*c)[i]=(*a)[i]; - return c; -} - -inline size_t checkdimension(array *a, size_t dim) -{ - size_t size=checkArray(a); - if(dim && size != dim) { - ostringstream buf; - buf << "array of length " << dim << " expected"; - error(buf); - } - return size; -} - -double *copyArrayC(array *a, size_t dim=0) -{ - size_t size=checkdimension(a,dim); - double *c=new double[size]; - for(size_t i=0; i < size; i++) - c[i]=read<double>(a,i); - return c; -} - -triple *copyTripleArrayC(array *a, size_t dim=0) -{ - size_t size=checkdimension(a,dim); - triple *c=new triple[size]; - for(size_t i=0; i < size; i++) - c[i]=read<triple>(a,i); - return c; -} - -array *copyArray2(array *a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - array *ci=new array(aisize); - (*c)[i]=ci; - for(size_t j=0; j < aisize; j++) - (*ci)[j]=(*ai)[j]; - } - return c; -} - -array *copyArray3(array *a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - array *ci=new array(aisize); - (*c)[i]=ci; - for(size_t j=0; j < aisize; j++) { - array *aij=read<array*>(ai,j); - size_t aijsize=checkArray(aij); - array *cij=new array(aijsize); - (*ci)[j]=cij; - for(size_t k=0; k < aijsize; k++) - (*cij)[k]=(*aij)[k]; - } - } - return c; -} - -double *copyArray2C(array *a, bool square=true, size_t dim2=0) -{ - size_t n=checkArray(a); - size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); - if(n > 0 && dim2 && m != dim2) { - ostringstream buf; - buf << "second matrix dimension must be " << dim2; - error(buf); - } - - double *c=new double[n*m]; - for(size_t i=0; i < n; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - if(aisize == m) { - double *ci=c+i*m; - for(size_t j=0; j < m; j++) - ci[j]=read<double>(ai,j); - } else - error(square ? "matrix must be square" : "matrix must be rectangular"); - } - return c; -} - -triple *copyTripleArray2C(array *a, bool square=true, size_t dim2=0) -{ - size_t n=checkArray(a); - size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); - if(n > 0 && dim2 && m != dim2) { - ostringstream buf; - buf << "second matrix dimension must be " << dim2; - error(buf); - } - - triple *c=new triple[n*m]; - for(size_t i=0; i < n; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - if(aisize == m) { - triple *ci=c+i*m; - for(size_t j=0; j < m; j++) - ci[j]=read<triple>(ai,j); - } else - error(square ? "matrix must be square" : "matrix must be rectangular"); - } - return c; -} - -double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0) -{ - size_t n=checkArray(a); - size_t m=(square || n == 0) ? n : checkArray(read<array*>(a,0)); - if(n > 0 && dim2 && m != dim2) { - ostringstream buf; - buf << "second matrix dimension must be " << dim2; - error(buf); - } - - size_t nm=n*m; - double *cx=new double[3*nm]; - double *cy=cx+nm; - double *cz=cx+2*nm; - for(size_t i=0; i < n; i++) { - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - if(aisize == m) { - double *xi=cx+i*m; - double *yi=cy+i*m; - double *zi=cz+i*m; - for(size_t j=0; j < m; j++) { - triple v=read<triple>(ai,j); - xi[j]=v.getx(); - yi[j]=v.gety(); - zi[j]=v.getz(); - } - } else - error(square ? "matrix must be square" : "matrix must be rectangular"); - } - return cx; -} - -static const char *incommensurate="Incommensurate matrices"; -static const char *singular="Singular matrix"; -static size_t *pivot,*Row,*Col; - -triple operator *(const array& t, const triple& v) -{ - size_t n=checkArray(&t); - if(n != 4) error(incommensurate); - array *t0=read<array*>(t,0); - array *t1=read<array*>(t,1); - array *t2=read<array*>(t,2); - array *t3=read<array*>(t,3); - - if(checkArray(t0) != 4 || checkArray(t1) != 4 || - checkArray(t2) != 4 || checkArray(t3) != 4) - error(incommensurate); - - double x=v.getx(); - double y=v.gety(); - double z=v.getz(); - - double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ - read<real>(t3,3); - if(f == 0.0) run::dividebyzero(); - f=1.0/f; - - return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ - read<real>(t0,3))*f, - (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ - read<real>(t1,3))*f, - (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z+ - read<real>(t2,3))*f); -} - -triple multshiftless(const array& t, const triple& v) -{ - size_t n=checkArray(&t); - if(n != 4) error(incommensurate); - array *t0=read<array*>(t,0); - array *t1=read<array*>(t,1); - array *t2=read<array*>(t,2); - array *t3=read<array*>(t,3); - - if(checkArray(t0) != 4 || checkArray(t1) != 4 || - checkArray(t2) != 4 || checkArray(t3) != 4) - error(incommensurate); - - double x=v.getx(); - double y=v.gety(); - double z=v.getz(); - - double f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ - read<real>(t3,3); - if(f == 0.0) run::dividebyzero(); - f=1.0/f; - - return triple((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z)*f, - (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z)*f, - (read<real>(t2,0)*x+read<real>(t2,1)*y+read<real>(t2,2)*z)*f); -} - -static inline void inverseAllocate(size_t n) -{ - pivot=new size_t[n]; - Row=new size_t[n]; - Col=new size_t[n]; -} - -static inline void inverseDeallocate() -{ - delete[] pivot; - delete[] Row; - delete[] Col; -} - void writestring(stack *s) { callable *suffix=pop<callable *>(s,NULL); @@ -550,547 +190,18 @@ void writestring(stack *s) } } -void checkSquare(array *a) -{ - size_t n=checkArray(a); - for(size_t i=0; i < n; i++) - if(checkArray(read<array*>(a,i)) != n) - error("matrix a must be square"); -} - -// Crout's algorithm for computing the LU decomposition of a square matrix. -// cf. routine ludcmp (Press et al., Numerical Recipes, 1991). -Int LUdecompose(double *a, size_t n, size_t* index, bool warn=true) -{ - double *vv=new double[n]; - Int swap=1; - for(size_t i=0; i < n; ++i) { - double big=0.0; - double *ai=a+i*n; - for(size_t j=0; j < n; ++j) { - double temp=fabs(ai[j]); - if(temp > big) big=temp; - } - if(big == 0.0) { - delete[] vv; - if(warn) error(singular); - else return 0; - } - vv[i]=1.0/big; - } - for(size_t j=0; j < n; ++j) { - for(size_t i=0; i < j; ++i) { - double *ai=a+i*n; - double sum=ai[j]; - for(size_t k=0; k < i; ++k) { - sum -= ai[k]*a[k*n+j]; - } - ai[j]=sum; - } - double big=0.0; - size_t imax=j; - for(size_t i=j; i < n; ++i) { - double *ai=a+i*n; - double sum=ai[j]; - for(size_t k=0; k < j; ++k) - sum -= ai[k]*a[k*n+j]; - ai[j]=sum; - double temp=vv[i]*fabs(sum); - if(temp >= big) { - big=temp; - imax=i; - } - } - double *aj=a+j*n; - double *aimax=a+imax*n; - if(j != imax) { - for(size_t k=0; k < n; ++k) { - double temp=aimax[k]; - aimax[k]=aj[k]; - aj[k]=temp; - } - swap *= -1; - vv[imax]=vv[j]; - } - if(index) - index[j]=imax; - if(j != n) { - double denom=aj[j]; - if(denom == 0.0) { - delete[] vv; - if(warn) error(singular); - else return 0; - } - for(size_t i=j+1; i < n; ++i) - a[i*n+j] /= denom; - } - } - delete[] vv; - return swap; -} - -void dividebyzero(size_t i) -{ - ostringstream buf; - if(i > 0) buf << "array element " << i << ": "; - buf << "Divide by zero"; - error(buf); -} - -void integeroverflow(size_t i) -{ - ostringstream buf; - if(i > 0) buf << "array element " << i << ": "; - buf << "Integer overflow"; - error(buf); -} - -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) -struct historyState { - bool store; - HISTORY_STATE state; -}; - -typedef mem::map<CONST string, historyState> historyMap_t; -historyMap_t historyMap; -static HISTORY_STATE history_save; - -// Store a deep copy of the current readline history in dest. -void store_history(HISTORY_STATE *dest) -{ - HISTORY_STATE *src=history_get_history_state(); - if(src) { - *dest=*src; - for(Int i=0; i < src->length; ++i) - dest->entries[i]=src->entries[i]; - free(src); - } -} - -stringarray* get_history(Int n) -{ - int N=intcast(n); - if(N <= 0) N=history_length; - else N=Min(N,history_length); - array *a=new array((size_t) N); - int offset=history_length-N+1; - for(int i=0; i < N; ++i) { - HIST_ENTRY *last=history_get(offset+i); - string s=last ? last->line : ""; - (*a)[i]=s; - } - return a; -} - -string historyfilename(const string &name) -{ - return historyname+"_"+name; -} -#endif - -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) -int readline_startup_hook() -{ -#ifdef __CYGWIN__ - rl_set_key("\\M-[3~",rl_delete,rl_get_keymap()); - rl_set_key("\\M-[2~",rl_overwrite_mode,rl_get_keymap()); -#endif - return 0; -} - -void init_readline(bool tabcompletion=true) -{ - static bool first=true; - if(first) { - first=false; -#ifdef __CYGWIN__ - rl_startup_hook=readline_startup_hook; -#endif - } - rl_bind_key('\t',tabcompletion ? rl_complete : rl_insert); -} -#endif - -void cleanup() -{ -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - store_history(&history_save); - int nlines=intcast(getSetting<Int>("historylines")); - for(historyMap_t::iterator h=historyMap.begin(); h != historyMap.end(); - ++h) { - history_set_history_state(&h->second.state); - stifle_history(nlines); - if(h->second.store) write_history(historyfilename(h->first).c_str()); - } - history_set_history_state(&history_save); -#endif -} - -void purge(Int divisor=0) -{ -#ifdef USEGC - if(divisor > 0) GC_set_free_space_divisor((GC_word) divisor); - GC_gcollect(); -#endif -} - -void updateFunction(stack *Stack) -{ - callable *atUpdateFunction=processData().atUpdateFunction; - if(atUpdateFunction && !nullfunc::instance()->compare(atUpdateFunction)) - atUpdateFunction->call(Stack); -} - -void exitFunction(stack *Stack) -{ - callable *atExitFunction=processData().atExitFunction; - if(atExitFunction && !nullfunc::instance()->compare(atExitFunction)) - atExitFunction->call(Stack); -} - default_t def; string emptystring; -array *emptyarray=new array(0); -string commentchar="#"; pair zero; -void breakpoint(stack *Stack, runnable *r) -{ - callable *atBreakpointFunction=processData().atBreakpointFunction; - if(atBreakpointFunction && - !nullfunc::instance()->compare(atBreakpointFunction)) { - position curPos=getPos(); - Stack->push<string>(curPos.filename()); - Stack->push<Int>((Int) curPos.Line()); - Stack->push<Int>((Int) curPos.Column()); - Stack->push(r ? r : item(def)); - atBreakpointFunction->call(Stack); // returns a string - } else Stack->push<string>(""); -} - -} - -namespace types { -extern const char *names[]; -} - -void checkformat(const char *ptr, bool intformat) -{ - while(*ptr != '\0') { - if(*ptr != '%') /* While we have regular characters, print them. */ - ptr++; - else { /* We've got a format specifier. */ - ptr++; - - while(*ptr && strchr ("-+ #0'I", *ptr)) /* Move past flags. */ - *ptr++; - - if(*ptr == '*') - ptr++; - else while(isdigit(*ptr)) /* Handle explicit numeric value. */ - ptr++; - - if(*ptr == '.') { - *ptr++; /* Go past the period. */ - if(*ptr == '*') { - ptr++; - } else - while(isdigit(*ptr)) /* Handle explicit numeric value. */ - *ptr++; - } - while(*ptr && strchr ("hlL", *ptr)) - *ptr++; - - if(*ptr == '%') ++ptr; - else if(*ptr != '\0') { - if(intformat) { - switch(*ptr) { - case 'd': - case 'i': - case 'o': - case 'u': - case 'x': - case 'X': - case 'c': - break; - default: - ostringstream buf; - buf << "Invalid format '" << *ptr << "' for type " - << types::names[types::ty_Int]; - error(buf); - break; - } - } else { - switch(*ptr) { - case 'f': - case 'F': - case 'e': - case 'E': - case 'g': - case 'G': - break; - default: - ostringstream buf; - buf << "Invalid format '" << *ptr << "' for type " - << types::names[types::ty_real]; - error(buf); - break; - } - } - } - } /* End of else statement */ - } -} - -// Return an angle in the interval [0,360). -inline double principalBranch(double deg) -{ - if(deg < 0) deg += 360; - return deg; } static string defaulttransparency=string("Compatible"); -static const string defaulttimeformat=string("%a %b %d %T %Z %Y"); -#ifdef HAVE_STRFTIME -static const size_t nTime=256; -static char Time[nTime]; -#endif - -void clear(string file, Int line, bool warn=false) -{ - bpinfo bp(file,line); - for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) { - if(*p == bp) { - cout << "cleared breakpoint at " << file << ": " << line << endl; - bplist.remove(bp); - return; - } - } - if(warn) - cout << "No such breakpoint at " << file << ": " << line << endl; -} - -Int windingnumber(array *p, camp::pair z) -{ - size_t size=checkArray(p); - Int count=0; - for(size_t i=0; i < size; i++) - count += read<path *>(p,i)->windingnumber(z); - return count; -} - -string convertname(string name, const string& format, bool check=true) -{ - if(name.empty()) - return buildname(outname(),format,""); - else - if(check) checkLocal(name); - return format.empty() ? name : format+":"+name; -} - -callable *Func; -stack *FuncStack; -double wrapFunction(double x) -{ - FuncStack->push(x); - Func->call(FuncStack); - return pop<double>(FuncStack); -} - -callable *compareFunc; -bool compareFunction(const vm::item& i, const vm::item& j) -{ - FuncStack->push(i); - FuncStack->push(j); - compareFunc->call(FuncStack); - return pop<bool>(FuncStack); -} void unused(void *) { } -pair readpair(stringstream& s, double hscale=1.0, double vscale=1.0) -{ - double x,y; - s >> y; - s >> x; - return pair(hscale*x,vscale*y); -} - -// Ignore unclosed begingroups but not spurious endgroups. -const char *nobegin="endgroup without matching begingroup"; - -// Return the component of vector v perpendicular to a unit vector u. -inline triple perp(triple v, triple u) -{ - return v-dot(v,u)*u; -} - -string ASYx="/ASYx {( ) print ASYX sub 12 string cvs print} bind def"; -string ASYy="/ASYy {( ) print ASYY sub 12 string cvs print} bind def"; -string pathforall="{(M) print ASYy ASYx} {(L) print ASYy ASYx} {(C) print ASYy ASYx ASYy ASYx ASYy ASYx} {(c) print} pathforall"; -string currentpoint="print currentpoint ASYy ASYx "; -string ASYinit="/ASYX currentpoint pop def /ASYY currentpoint exch pop def "; -string ASY1="ASY1 {"+ASYinit+"/ASY1 false def} if "; - -void showpath(std::ofstream& ps) -{ - ps << ASYx << newl - << ASYy << newl - << "/ASY1 true def" << newl - << "/fill {" << ASY1 - << pathforall << " (M) " << currentpoint - << "currentpoint newpath moveto } bind def" << newl - << "/stroke {" << ASY1 << "strokepath " - << pathforall << " (M) " << currentpoint - << "currentpoint newpath moveto } bind def" << endl; -} - -array *readpath(const string& psname, bool keep, - double hscale=1.0, double vsign=1.0) -{ - double vscale=vsign*hscale; - array *P=new array(0); - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("gs")); - cmd.push_back("-q"); - cmd.push_back("-dNOPAUSE"); - cmd.push_back("-dBATCH"); - if(safe) cmd.push_back("-dSAFER"); -#ifdef __CYGWIN__ - const string null="NUL"; -#else - const string null="/dev/null"; -#endif - cmd.push_back("-sDEVICE=epswrite"); - cmd.push_back("-sOutputFile="+null); - cmd.push_back(psname); - iopipestream gs(cmd,"gs","Ghostscript"); - stringstream buf; - while(true) { - string out; - gs >> out; - if(out.empty() && !gs.running()) break; - buf << out; - } - if(verbose > 2) cout << endl; - - mem::vector<solvedKnot> nodes; - solvedKnot node; - bool cyclic=false; - bool active=false; - - while(!buf.eof()) { - char c; - buf >> c; - switch(c) { - case 'M': - { - if(active) { - if(cyclic) { - if(node.point == nodes[0].point) - nodes[0].pre=node.pre; - else { - pair delta=(nodes[0].point-node.point)*third; - node.post=node.point+delta; - nodes[0].pre=nodes[0].point-delta; - node.straight=true; - nodes.push_back(node); - } - } else { - node.post=node.point; - node.straight=false; - nodes.push_back(node); - } - P->push(path(nodes,nodes.size(),cyclic)); - nodes.clear(); - } - active=false; - cyclic=false; - node.pre=node.point=readpair(buf,hscale,vscale); - node.straight=false; - break; - } - case 'L': - { - pair point=readpair(buf,hscale,vscale); - pair delta=(point-node.point)*third; - node.post=node.point+delta; - node.straight=true; - nodes.push_back(node); - active=true; - node.pre=point-delta; - node.point=point; - break; - } - case 'C': - { - pair point=readpair(buf,hscale,vscale); - pair pre=readpair(buf,hscale,vscale); - node.post=readpair(buf,hscale,vscale); - node.straight=false; - nodes.push_back(node); - active=true; - node.pre=pre; - node.point=point; - break; - } - case 'c': - { - cyclic=true; - break; - } - } - } - - if(!keep) - unlink(psname.c_str()); - return P; -} - -pair sin(pair z) -{ - return pair(sin(z.getx())*cosh(z.gety()),cos(z.getx())*sinh(z.gety())); -} - -pair exp(pair z) -{ - return exp(z.getx())*expi(z.gety()); -} - -pair gamma(pair z) -{ - static double p[]={0.99999999999980993,676.5203681218851,-1259.1392167224028, - 771.32342877765313,-176.61502916214059,12.507343278686905, - -0.13857109526572012,9.9843695780195716e-6, - 1.5056327351493116e-7}; - static int n=sizeof(p)/sizeof(double); - static double root2pi=sqrt(2*PI); - if(z.getx() < 0.5) - return PI/(sin(PI*z)*gamma(1.0-z)); - z -= 1.0; - pair x=p[0]; - for(int i=1; i < n; ++i) - x += p[i]/(z+i); - pair t=n-1.5+z; - return root2pi*pow(t,z+0.5)*exp(-t)*x; -} - -void cannotread(const string& s) -{ - ostringstream buf; - buf << "Cannot read from " << s; - error(buf); -} - -void cannotwrite(const string& s) -{ - ostringstream buf; - buf << "Cannot write to " << s; - error(buf); -} - // Autogenerated routines: @@ -1145,57 +256,6 @@ bool :isDefault(item i) } -// Logical operations - -bool !(bool b) -{ - return !b; -} - -bool :boolMemEq(frame *a, frame *b) -{ - return a == b; -} - -bool :boolMemNeq(frame *a, frame *b) -{ - return a != b; -} - -bool :boolFuncEq(callable *a, callable *b) -{ - return a->compare(b); -} - -bool :boolFuncNeq(callable *a, callable *b) -{ - return !(a->compare(b)); -} - - -// Bit operations - -Int AND(Int a, Int b) -{ - return a & b; -} - -Int OR(Int a, Int b) -{ - return a | b; -} - -Int XOR(Int a, Int b) -{ - return a ^ b; -} - -Int NOT(Int a) -{ - return ~a; -} - - // Casts guide* :pairToGuide(pair z) @@ -1214,689 +274,6 @@ path :guideToPath(guide *g) } -// Picture operations - -picture* :newPicture() -{ - return new picture(); -} - -bool empty(picture *f) -{ - return f->null(); -} - -void erase(picture *f) -{ - f->nodes.clear(); -} - -pair min(picture *f) -{ - return f->bounds().Min(); -} - -pair max(picture *f) -{ - return f->bounds().Max(); -} - -void label(picture *f, string *s, string *size, transform t, pair position, - pair align, pen p) -{ - f->append(new drawLabel(*s,*size,t,position,align,p)); -} - -bool labels(picture *f) -{ - return f->havelabels(); -} - -realarray *texsize(string *s, pen p=CURRENTPEN) -{ - texinit(); - processDataStruct &pd=processData(); - - string texengine=getSetting<string>("tex"); - const char **abort=texabort(texengine); - setpen(pd.tex,texengine,p); - - double width,height,depth; - if(!texbounds(width,height,depth,pd.tex,*s,abort,false,true)) - return new array(0); - - array *t=new array(3); - (*t)[0]=width; - (*t)[1]=height; - (*t)[2]=depth; - return t; -} - -patharray *_texpath(string *s, pen p=CURRENTPEN) -{ - array *P=new array(0); - if(s->empty()) return P; - - string prefix=outname(); - spaceToUnderscore(prefix); - string psname=auxname(prefix,"ps"); - string texname=auxname(prefix,"tex"); - string dviname=auxname(prefix,"dvi"); - bbox b; - string texengine=getSetting<string>("tex"); - bool pdf=settings::pdf(texengine); - texfile tex(texname,b,true); - tex.miniprologue(); - tex.setfont(p); - - if(!pdf) { - tex.verbatimline("\\special{ps:"); - tex.verbatimline(ASYx); - tex.verbatimline(ASYy); - tex.verbatimline("/ASY1 true def"); - tex.verbatimline("/v {"+ASY1+"neg exch 4 copy 4 2 roll 2 copy 6 2 roll 2 copy (M) print ASYy ASYx (L) print ASYy add ASYx (L) print add ASYy add ASYx (L) print add ASYy ASYx (c) print} bind def"); - tex.verbatimline("/show {"+ASY1+ - "currentpoint newpath moveto false charpath "+ - pathforall+"} bind def}"); - } - tex.verbatimline(*s+"%"); - tex.epilogue(true); - tex.close(); - - int status=opentex(texname,prefix); - - string pdfname; - if(!status) { - if(pdf) { - pdfname=auxname(prefix,"pdf"); - std::ofstream ps(psname.c_str()); - if(!ps) cannotwrite(psname); - - showpath(ps); - - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("gs")); - cmd.push_back("-q"); - cmd.push_back("-dNOCACHE"); - cmd.push_back("-dNOPAUSE"); - cmd.push_back("-dBATCH"); - if(safe) cmd.push_back("-dSAFER"); - cmd.push_back("-sDEVICE=epswrite"); - cmd.push_back("-sOutputFile=-"); - cmd.push_back(pdfname); - iopipestream gs(cmd,"gs","Ghostscript"); - - gs.block(false); - while(true) { - string line; - gs >> line; - if(line.empty() && !gs.running()) break; - ps << line; - } - ps.close(); - } else { - mem::vector<string> dcmd; - dcmd.push_back(getSetting<string>("dvips")); - dcmd.push_back("-R"); - dcmd.push_back("-Pdownload35"); - dcmd.push_back("-D600"); - push_split(dcmd,getSetting<string>("dvipsOptions")); - if(verbose <= 2) dcmd.push_back("-q"); - dcmd.push_back("-o"+psname); - dcmd.push_back(dviname); - status=System(dcmd,0,true,"dvips"); - } - } - - if(status != 0) - error("texpath failed"); - - bool keep=getSetting<bool>("keep"); - if(!keep) { // Delete temporary files. - unlink(texname.c_str()); - if(!getSetting<bool>("keepaux")) - unlink(auxname(prefix,"aux").c_str()); - unlink(auxname(prefix,"log").c_str()); - if(pdf) - unlink(pdfname.c_str()); - else - unlink(dviname.c_str()); - if(settings::context(texengine)) { - unlink(auxname(prefix,"top").c_str()); - unlink(auxname(prefix,"tua").c_str()); - unlink(auxname(prefix,"tui").c_str()); - } - } - return pdf ? readpath(psname,keep,0.1) : readpath(psname,keep,0.12,-1.0); -} - -patharray *textpath(string *s, pen p=CURRENTPEN) -{ - array *P=new array(0); - if(s->empty()) return P; - - string prefix=outname(); - spaceToUnderscore(prefix); - string outputname=auxname(prefix,getSetting<string>("textoutformat")); - - string textname=auxname(prefix,getSetting<string>("textextension")); - std::ofstream text(textname.c_str()); - - if(!text) cannotwrite(textname); - - text << getSetting<string>("textprologue") << newl - << p.Font() << newl - << *s << newl - << getSetting<string>("textepilogue") << endl; - text.close(); - - string psname=auxname(prefix,"ps"); - std::ofstream ps(psname.c_str()); - if(!ps) cannotwrite(psname); - - showpath(ps); - - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("textcommand")); - push_split(cmd,getSetting<string>("textcommandOptions")); - cmd.push_back(textname); - iopipestream typesetter(cmd); - - mem::vector<string> cmd2; - cmd2.push_back(getSetting<string>("gs")); - cmd2.push_back("-q"); - cmd2.push_back("-dNOCACHE"); - cmd2.push_back("-dNOPAUSE"); - cmd2.push_back("-dBATCH"); - if(safe) cmd2.push_back("-dSAFER"); - cmd2.push_back("-sDEVICE=epswrite"); - cmd2.push_back("-sOutputFile=-"); - cmd2.push_back("-"); - iopipestream gs(cmd2,"gs","Ghostscript"); - gs.block(false); - - // TODO: Simplify by connecting the pipes directly. - while(true) { - string out; - if(typesetter.isopen()) { - typesetter >> out; - if(!out.empty()) gs << out; - else if(!typesetter.running()) { - typesetter.pipeclose(); - gs.eof(); - } - } - string out2; - gs >> out2; - if(out2.empty() && !gs.running()) break; - ps << out2; - } - ps.close(); - - if(verbose > 2) cout << endl; - - bool keep=getSetting<bool>("keep"); - if(!keep) // Delete temporary files. - unlink(textname.c_str()); - return readpath(psname,keep,0.1); -} - -patharray *_strokepath(path g, pen p=CURRENTPEN) -{ - array *P=new array(0); - if(g.size() == 0) return P; - - string prefix=outname(); - spaceToUnderscore(prefix); - string psname=auxname(prefix,"ps"); - bbox b; - psfile ps(psname,false); - ps.prologue(b); - ps.verbatimline(ASYx); - ps.verbatimline(ASYy); - ps.verbatimline("/stroke {"+ASYinit+pathforall+"} bind def"); - ps.resetpen(); - ps.setpen(p); - ps.write(g); - ps.strokepath(); - ps.stroke(); - ps.verbatimline("(M) "+currentpoint); - ps.epilogue(); - ps.close(); - return readpath(psname,getSetting<bool>("keep")); -} - -void _draw(picture *f, path g, pen p) -{ - f->append(new drawPath(g,p)); -} - -void fill(picture *f, patharray *g, pen p=CURRENTPEN, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawFill(*copyarray(g),false,p)); -} - -void latticeshade(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, penarray2 *p, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawLatticeShade(*copyarray(g),stroke,fillrule,*copyarray(p))); -} - -void axialshade(picture *f, patharray *g, bool stroke=false, pen pena, pair a, - pen penb, pair b, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawAxialShade(*copyarray(g),stroke,pena,a,penb,b)); -} - -void radialshade(picture *f, patharray *g, bool stroke=false, pen pena, - pair a, real ra, pen penb, pair b, real rb, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawRadialShade(*copyarray(g),stroke,pena,a,ra,penb,b,rb)); -} - -void gouraudshade(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, penarray *p, pairarray *z, - Intarray *edges, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - checkArrays(p,z); - checkArrays(z,edges); - f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), - *copyarray(z),*copyarray(edges))); -} - -void gouraudshade(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, penarray *p, Intarray *edges, - bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - size_t n=checkArrays(p,edges); - size_t m=checkArray(g); - array *z=new array(n); - Int k=0; - Int in=(Int) n; - for(size_t j=0; j < m; ++j) { - path *P=read<path *>(g,j); - assert(P); - Int stop=Min(P->size(),in-k); - mem::vector<solvedKnot>& nodes=P->Nodes(); - for(Int i=0; i < stop; ++i) - (*z)[k++]=nodes[i].point; - } - checkArrays(p,z); - - f->append(new drawGouraudShade(*copyarray(g),stroke,fillrule,*copyarray(p), - *z,*copyarray(edges))); -} - -void tensorshade(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, penarray2 *p, patharray *b=NULL, - pairarray2 *z=emptyarray, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - array *(*copyarray2)(array *a)=copy ? copyArray2: nop; - if(b == NULL) b=g; - size_t n=checkArrays(p,b); - size_t nz=checkArray(z); - if(nz != 0) - checkEqual(nz,n); - f->append(new drawTensorShade(*copyarray(g),stroke,fillrule,*copyarray2(p), - *copyarray(b),*copyarray2(z))); -} - -void functionshade(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, string shader=emptystring, - bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawFunctionShade(*copyarray(g),stroke,fillrule,shader)); -} - -// Clip a picture to a superpath using the given fill rule. -// Subsequent additions to the picture will not be affected by the clipping. -void clip(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - drawClipBegin *begin=new drawClipBegin(*copyarray(g),stroke,fillrule,true); - f->enclose(begin,new drawClipEnd(true,begin)); -} - -void beginclip(picture *f, patharray *g, bool stroke=false, - pen fillrule=CURRENTPEN, bool copy=true) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - f->append(new drawClipBegin(*copyarray(g),stroke,fillrule,false)); -} - -void endclip(picture *f) -{ - f->append(new drawClipEnd(false)); -} - -void gsave(picture *f) -{ - f->append(new drawGsave()); -} - -void grestore(picture *f) -{ - f->append(new drawGrestore()); -} - -void begingroup(picture *f) -{ - f->append(new drawBegin()); -} - -void endgroup(picture *f) -{ - f->append(new drawEnd()); -} - -void add(picture *dest, picture *src) -{ - dest->add(*src); -} - -void prepend(picture *dest, picture *src) -{ - dest->prepend(*src); -} - -void postscript(picture *f, string s) -{ - f->append(new drawVerbatim(PostScript,s)); -} - -void tex(picture *f, string s) -{ - f->append(new drawVerbatim(TeX,s)); -} - -void postscript(picture *f, string s, pair min, pair max) -{ - f->append(new drawVerbatim(PostScript,s,min,max)); -} - -void tex(picture *f, string s, pair min, pair max) -{ - f->append(new drawVerbatim(TeX,s,min,max)); -} - -void texpreamble(string s) -{ - string t=s+"\n"; - processDataStruct &pd=processData(); - pd.TeXpipepreamble.push_back(t); - pd.TeXpreamble.push_back(t); -} - -void deletepreamble() -{ - if(getSetting<bool>("inlinetex")) { - unlink(auxname(outname(),"pre").c_str()); - } -} - -void _labelpath(picture *f, string s, string size, path g, string justify, - pair offset, pen p) -{ - f->append(new drawLabelPath(s,size,g,justify,offset,p)); -} - -void texreset() -{ - processDataStruct &pd=processData(); - pd.TeXpipepreamble.clear(); - pd.TeXpreamble.clear(); - pd.tex.pipeclose(); -} - -void layer(picture *f) -{ - f->append(new drawLayer()); -} - -void newpage(picture *f) -{ - f->append(new drawNewPage()); -} - -void _image(picture *f, realarray2 *data, pair initial, pair final, - penarray *palette=NULL, transform t=identity, bool copy=true, - bool antialias=false) -{ - array *(*copyarray)(array *a)=copy ? copyArray: nop; - array *(*copyarray2)(array *a)=copy ? copyArray2: nop; - f->append(new drawImage(*copyarray2(data),*copyarray(palette), - t*matrix(initial,final),antialias)); -} - -void _image(picture *f, penarray2 *data, pair initial, pair final, - transform t=identity, bool copy=true, bool antialias=false) -{ - array *(*copyarray2)(array *a)=copy ? copyArray2: nop; - f->append(new drawImage(*copyarray2(data),t*matrix(initial,final),antialias)); -} - -string nativeformat() -{ - return nativeformat(); -} - -bool latex() -{ - return latex(getSetting<string>("tex")); -} - -bool pdf() -{ - return pdf(getSetting<string>("tex")); -} - -void shipout(string prefix=emptystring, picture *f, picture *preamble=NULL, - string format=emptystring, bool wait=false, bool view=true, - callableTransform *xform) -{ - if(prefix.empty()) prefix=outname(); - - picture *result=new picture; - unsigned level=0; - picture::nodelist::iterator p; - for(p = f->nodes.begin(); p != f->nodes.end(); ++p) { - xform->call(Stack); - transform t=pop<transform>(Stack); - static transform Zero=transform(0.0,0.0,0.0,0.0,0.0,0.0); - bool Delete=(t == Zero); - picture *group=new picture; - assert(*p); - if((*p)->endgroup()) error(nobegin); - if((*p)->begingroup()) { - ++level; - while(p != f->nodes.end() && level) { - if(!Delete) { - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - } - ++p; - if(p == f->nodes.end()) break; - assert(*p); - if((*p)->begingroup()) ++level; - if((*p)->endgroup()) { - if(level) --level; - else error(nobegin); - } - } - } - if(p == f->nodes.end()) break; - assert(*p); - if(!Delete) { - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - result->add(*group); - } - } - - result->shipout(preamble,prefix,format,0.0,wait,view); -} - -void shipout3(string prefix, picture *f, string format=emptystring, - real width, real height, real angle, real zoom, - triple m, triple M, pair shift, realarray2 *t, - realarray *background, triplearray *lights, realarray2 *diffuse, - realarray2 *ambient, realarray2 *specular, - bool viewportlighting, bool view=true) -{ - size_t n=checkArrays(lights,diffuse); - checkEqual(n,checkArray(ambient)); - checkEqual(n,checkArray(specular)); - - f->shipout3(prefix,format,width,height,angle,zoom,m,M,shift, - copyArray2C(t,true,4), - copyArrayC(background),n,copyTripleArrayC(lights), - copyArray2C(diffuse,false,4),copyArray2C(ambient,false,4), - copyArray2C(specular,false,4),viewportlighting,view); -} - -void shipout3(string prefix, picture *f) -{ - f->shipout3(prefix); -} - -void deconstruct(picture *f, picture *preamble=NULL, real magnification=1, - callableTransform *xform) -{ - unsigned level=0; - unsigned n=0; - - string prefix=outname(); - const string xformat="png"; - - static long arg_max=sysconf(_SC_ARG_MAX); - const unsigned maxargs=::min(arg_max/(prefix.size()+xformat.size()+25ul), - 256ul); - - cout << maxargs << newl; - - string preformat=nativeformat(); - const string Done="Done"; - const string Error="Error"; - - mem::vector<string> cmd; - - // Enforce ghostscript limitations. - magnification=::max(magnification,0.0001); - real res=::min(::max(magnification*72.0,2.0),8192.0); - - const char *converter=NULL, *hint=NULL; - - if(magnification > 0.0) { - mem::list<string> nameStack; - string outname; - unsigned arg=0; - unsigned batch=0; - for(picture::nodelist::iterator p=f->nodes.begin();;) { - if(p == f->nodes.end()) break; - if(arg == 0) { - cmd.clear(); - ostringstream buf; - buf << batch << "_"; - outname=buildname(prefix+buf.str()+"%d",xformat,""); - converter="gs"; - hint="Ghostscript"; - cmd.push_back(getSetting<string>(converter)); - cmd.push_back("-q"); - cmd.push_back("-dNOPAUSE"); - cmd.push_back("-dBATCH"); - cmd.push_back("-sDEVICE=pngalpha"); - cmd.push_back("-dEPSCrop"); - if(safe) - cmd.push_back("-dSAFER"); - cmd.push_back("-r"+String(res)+"x"+String(res)); - cmd.push_back("-sOutputFile="+outname); - } - - picture *group=new picture; - xform->call(Stack); - transform t=pop<transform>(Stack); - assert(*p); - if((*p)->endgroup()) { - cout << Error << endl; - error(nobegin); - } - if((*p)->begingroup()) { - ++level; - while(p != f->nodes.end() && level) { - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - ++p; - if(p == f->nodes.end()) break; - assert(*p); - if((*p)->begingroup()) ++level; - if((*p)->endgroup()) { - if(level) --level; - else { - cout << Error << endl; - error(nobegin); - } - } - } - } - if(p != f->nodes.end()) { - assert(*p); - drawElement *e=t.isIdentity() ? *p : (*p)->transformed(t); - group->append(e); - bbox b; - ostringstream buf; - buf << prefix << "_" << n; - group->shipout(preamble,buf.str(),preformat,magnification,false,false); - string Preformat=group->Transparency() ? "pdf" : preformat; - string name=buildname(buf.str(),Preformat); - nameStack.push_back(name); - cmd.push_back(name); - b=group->bounds(); - b *= magnification; - - cout << b << newl; - ++n; - ++p; - ++arg; - } - - if(p == f->nodes.end() || arg >= maxargs) { - arg=0; - ++batch; - cout.flush(); - - int status=System(cmd,0,true,converter,hint); - if(status) { - cout << Error << endl; - error("deconstruct failed"); - } - } - } - - if(!getSetting<bool>("keep")) { - for(mem::list<string>::iterator p=nameStack.begin(); - p != nameStack.end(); ++p) - unlink(p->c_str()); - } - - cout << Done << endl; - } -} - -void purge(Int divisor=0) -{ - purge(divisor); -} - - // Pen operations pen :newPen() @@ -2349,589 +726,6 @@ void list(string *s, bool imports=false) } -// Path operations - -path :nullPath() -{ - return nullpath; -} - -bool ==(path a, path b) -{ - return a == b; -} - -bool !=(path a, path b) -{ - return !(a == b); -} - -pair point(path p, Int t) -{ - return p.point((Int) t); -} - -pair point(path p, real t) -{ - return p.point(t); -} - -pair precontrol(path p, Int t) -{ - return p.precontrol((Int) t); -} - -pair precontrol(path p, real t) -{ - return p.precontrol(t); -} - -pair postcontrol(path p, Int t) -{ - return p.postcontrol((Int) t); -} - -pair postcontrol(path p, real t) -{ - return p.postcontrol(t); -} - -pair dir(path p, Int t, Int sign=0, bool normalize=true) -{ - return p.dir(t,sign,normalize); -} - -pair dir(path p, real t, bool normalize=true) -{ - return p.dir(t,normalize); -} - -pair accel(path p, Int t, Int sign=0) -{ - return p.accel(t,sign); -} - -pair accel(path p, real t) -{ - return p.accel(t); -} - -real radius(path p, real t) -{ - pair v=p.dir(t,false); - pair a=p.accel(t); - real d=dot(a,v); - real v2=v.abs2(); - real a2=a.abs2(); - real denom=v2*a2-d*d; - real r=v2*sqrt(v2); - return denom > 0 ? r/sqrt(denom) : 0.0; -} - -path reverse(path p) -{ - return p.reverse(); -} - -path subpath(path p, Int a, Int b) -{ - return p.subpath((Int) a, (Int) b); -} - -path subpath(path p, real a, real b) -{ - return p.subpath(a,b); -} - -path nurb(pair z0, pair z1, pair z2, pair z3, - real w0, real w1, real w2, real w3, Int m) -{ - return nurb(z0,z1,z2,z3,w0,w1,w2,w3,m); -} - -Int length(path p) -{ - return p.length(); -} - -bool cyclic(path p) -{ - return p.cyclic(); -} - -bool straight(path p, Int t) -{ - return p.straight(t); -} - -path unstraighten(path p) -{ - return p.unstraighten(); -} - -bool piecewisestraight(path p) -{ - return p.piecewisestraight(); -} - -real arclength(path p) -{ - return p.arclength(); -} - -real arctime(path p, real dval) -{ - return p.arctime(dval); -} - -real dirtime(path p, pair z) -{ - return p.directiontime(z); -} - -realarray* intersect(path p, path q, real fuzz=-1) -{ - bool exact=fuzz <= 0.0; - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - std::vector<real> S,T; - real s,t; - if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { - array *V=new array(2); - (*V)[0]=s; - (*V)[1]=t; - return V; - } - return new array(0); -} - -realarray2* intersections(path p, path q, real fuzz=-1) -{ - bool exact=fuzz <= 0.0; - if(fuzz < 0.0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - real s,t; - std::vector<real> S,T; - intersections(s,t,S,T,p,q,fuzz,false,true); - size_t n=S.size(); - if(n == 0 && !exact) { - if(intersections(s,t,S,T,p,q,fuzz,true,false)) { - array *V=new array(1); - array *Vi=new array(2); - (*V)[0]=Vi; - (*Vi)[0]=s; - (*Vi)[1]=t; - return V; - } - } - array *V=new array(n); - for(size_t i=0; i < n; ++i) { - array *Vi=new array(2); - (*V)[i]=Vi; - (*Vi)[0]=S[i]; - (*Vi)[1]=T[i]; - } - stable_sort(V->begin(),V->end(),run::compare2<real>()); - return V; -} - -realarray* intersections(path p, explicit pair a, explicit pair b, real fuzz=-1) -{ - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(a),length(b))); - std::vector<real> S; - intersections(S,p,a,b,fuzz); - sort(S.begin(),S.end()); - size_t n=S.size(); - array *V=new array(n); - for(size_t i=0; i < n; ++i) - (*V)[i]=S[i]; - return V; -} - -// Return the intersection point of the extensions of the line segments -// PQ and pq. -pair extension(pair P, pair Q, pair p, pair q) -{ - pair ac=P-Q; - pair bd=q-p; - real det=ac.getx()*bd.gety()-ac.gety()*bd.getx(); - if(det == 0) return pair(infinity,infinity); - return P+((p.getx()-P.getx())*bd.gety()-(p.gety()-P.gety())*bd.getx())*ac/det; -} - -Int size(path p) -{ - return p.size(); -} - -path &(path p, path q) -{ - return camp::concat(p,q); -} - -pair min(path p) -{ - return p.min(); -} - -pair max(path p) -{ - return p.max(); -} - -realarray *mintimes(path p) -{ - array *V=new array(2); - pair z=p.mintimes(); - (*V)[0]=z.getx(); - (*V)[1]=z.gety(); - return V; -} - -realarray *maxtimes(path p) -{ - array *V=new array(2); - pair z=p.maxtimes(); - (*V)[0]=z.getx(); - (*V)[1]=z.gety(); - return V; -} - -real relativedistance(real theta, real phi, real t, bool atleast) -{ - return camp::velocity(theta,phi,tension(t,atleast)); -} - -Int windingnumber(patharray *p, pair z) -{ - return windingnumber(p,z); -} - -bool inside(explicit patharray *g, pair z, pen fillrule=CURRENTPEN) -{ - return fillrule.inside(windingnumber(g,z)); -} - -bool inside(path g, pair z, pen fillrule=CURRENTPEN) -{ - return fillrule.inside(g.windingnumber(z)); -} - -// Determine the side of a--b that c lies on -// (negative=left, zero=on line, positive=right). -real side(pair a, pair b, pair c) -{ - return orient2d(a,b,c); -} - -// Determine the side of the counterclockwise circle through a,b,c that d -// lies on (negative=inside, 0=on circle, positive=right). -real incircle(pair a, pair b, pair c, pair d) -{ - return incircle(a.getx(),a.gety(),b.getx(),b.gety(),c.getx(),c.gety(), - d.getx(),d.gety()); -} - - -// Path3 operations - -path3 path3(triplearray *pre, triplearray *point, triplearray *post, - boolarray *straight, bool cyclic) -{ - size_t n=checkArrays(pre,point); - checkEqual(n,checkArray(post)); - checkEqual(n,checkArray(straight)); - mem::vector<solvedKnot3> nodes(n); - for(size_t i=0; i < n; ++i) { - nodes[i].pre=read<triple>(pre,i); - nodes[i].point=read<triple>(point,i); - nodes[i].post=read<triple>(post,i); - nodes[i].straight=read<bool>(straight,i); - } - - return path3(nodes,(Int) n,cyclic); -} - -path3 :nullPath3() -{ - return nullpath3; -} - -bool ==(path3 a, path3 b) -{ - return a == b; -} - -bool !=(path3 a, path3 b) -{ - return !(a == b); -} - -triple point(path3 p, Int t) -{ - return p.point((Int) t); -} - -triple point(path3 p, real t) -{ - return p.point(t); -} - -triple precontrol(path3 p, Int t) -{ - return p.precontrol((Int) t); -} - -triple precontrol(path3 p, real t) -{ - return p.precontrol(t); -} - -triple postcontrol(path3 p, Int t) -{ - return p.postcontrol((Int) t); -} - -triple postcontrol(path3 p, real t) -{ - return p.postcontrol(t); -} - -triple dir(path3 p, Int t, Int sign=0, bool normalize=true) -{ - return p.dir(t,sign,normalize); -} - -triple dir(path3 p, real t, bool normalize=true) -{ - return p.dir(t,normalize); -} - -triple accel(path3 p, Int t, Int sign=0) -{ - return p.accel(t,sign); -} - -triple accel(path3 p, real t) -{ - return p.accel(t); -} - -real radius(path3 p, real t) -{ - triple v=p.dir(t,false); - triple a=p.accel(t); - real d=dot(a,v); - real v2=v.abs2(); - real a2=a.abs2(); - real denom=v2*a2-d*d; - real r=v2*sqrt(v2); - return denom > 0 ? r/sqrt(denom) : 0.0; -} - -real radius(triple z0, triple c0, triple c1, triple z1, real t) -{ - triple v=(3.0*(z1-z0)+9.0*(c0-c1))*t*t+(6.0*(z0+c1)-12.0*c0)*t+3.0*(c0-z0); - triple a=6.0*(z1-z0+3.0*(c0-c1))*t+6.0*(z0+c1)-12.0*c0; - real d=dot(a,v); - real v2=v.abs2(); - real a2=a.abs2(); - real denom=v2*a2-d*d; - real r=v2*sqrt(v2); - return denom > 0 ? r/sqrt(denom) : 0.0; -} - -path3 reverse(path3 p) -{ - return p.reverse(); -} - -path3 subpath(path3 p, Int a, Int b) -{ - return p.subpath((Int) a, (Int) b); -} - -path3 subpath(path3 p, real a, real b) -{ - return p.subpath(a,b); -} - -Int length(path3 p) -{ - return p.length(); -} - -bool cyclic(path3 p) -{ - return p.cyclic(); -} - -bool straight(path3 p, Int t) -{ - return p.straight(t); -} - -// Return the component of vector v perpendicular to a unit vector u. -triple perp(triple v, triple u) -{ - return perp(v,u); -} - -// Return the maximum perpendicular deviation of segment i of path3 g -// from a straight line. -real straightness(path3 p, Int t) -{ - if(p.straight(t)) return 0; - triple z0=p.point(t); - triple u=unit(p.point(t+1)-z0); - return ::max(length(perp(p.postcontrol(t)-z0,u)), - length(perp(p.precontrol(t+1)-z0,u))); -} - -// Return the maximum perpendicular deviation of z0..controls c0 and c1..z1 -// from a straight line. -real straightness(triple z0, triple c0, triple c1, triple z1) -{ - triple u=unit(z1-z0); - return ::max(length(perp(c0-z0,u)),length(perp(c1-z0,u))); -} - -bool piecewisestraight(path3 p) -{ - return p.piecewisestraight(); -} - -real arclength(path3 p) -{ - return p.arclength(); -} - -real arctime(path3 p, real dval) -{ - return p.arctime(dval); -} - -realarray* intersect(path3 p, path3 q, real fuzz=-1) -{ - bool exact=fuzz <= 0.0; - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - - std::vector<real> S,T; - real s,t; - if(intersections(s,t,S,T,p,q,fuzz,true,exact)) { - array *V=new array(2); - (*V)[0]=s; - (*V)[1]=t; - return V; - } else - return new array(0); -} - -realarray2* intersections(path3 p, path3 q, real fuzz=-1) -{ - bool exact=fuzz <= 0.0; - if(fuzz < 0) - fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - ::max(length(q.max()),length(q.min()))); - bool single=!exact; - - real s,t; - std::vector<real> S,T; - bool found=intersections(s,t,S,T,p,q,fuzz,single,exact); - if(!found) return new array(0); - array *V; - if(single) { - V=new array(1); - array *Vi=new array(2); - (*V)[0]=Vi; - (*Vi)[0]=s; - (*Vi)[1]=t; - } else { - size_t n=S.size(); - V=new array(n); - for(size_t i=0; i < n; ++i) { - array *Vi=new array(2); - (*V)[i]=Vi; - (*Vi)[0]=S[i]; - (*Vi)[1]=T[i]; - } - } - stable_sort(V->begin(),V->end(),run::compare2<real>()); - return V; -} - -realarray2* intersections(path3 p, triplearray2 *P, real fuzz=-1) -{ - triple *A=copyTripleArray2C(P,true,4); - if(fuzz <= 0) fuzz=BigFuzz*::max(::max(length(p.max()),length(p.min())), - norm(A,16)); - std::vector<real> T,U,V; - intersections(T,U,V,p,A,fuzz); - delete[] A; - size_t n=T.size(); - array *W=new array(n); - for(size_t i=0; i < n; ++i) { - array *Wi=new array(3); - (*W)[i]=Wi; - (*Wi)[0]=T[i]; - (*Wi)[1]=U[i]; - (*Wi)[2]=V[i]; - } - return W; // Sorting will done in asy. -} - -Int size(path3 p) -{ - return p.size(); -} - -path3 &(path3 p, path3 q) -{ - return camp::concat(p,q); -} - -triple min(path3 p) -{ - return p.min(); -} - -triple max(path3 p) -{ - return p.max(); -} - -realarray *mintimes(path3 p) -{ - array *V=new array(3); - triple v=p.mintimes(); - (*V)[0]=v.getx(); - (*V)[1]=v.gety(); - (*V)[2]=v.getz(); - return V; -} - -realarray *maxtimes(path3 p) -{ - array *V=new array(3); - triple v=p.maxtimes(); - (*V)[0]=v.getx(); - (*V)[1]=v.gety(); - (*V)[2]=v.getz(); - return V; -} - -path3 Operator *(realarray2 *t, path3 g) -{ - return transformed(*t,g); -} - - // Guide operations guide* :nullGuide() @@ -3181,498 +975,7 @@ guide *reverse(guide *g) } return new multiguide(v); } - - -// Three-dimensional picture and surface operations - -void _draw(picture *f, path3 g, pen p) -{ - if(g.size() > 0) - f->append(new drawPath3(g,p)); -} - -void draw(picture *f, triplearray2 *g, bool straight, penarray *p, real opacity, - real shininess, real PRCshininess, real granularity, triple normal, - bool lighton, penarray *colors) -{ - f->append(new drawSurface(*g,straight,*p,opacity,shininess,PRCshininess, - granularity,normal,lighton,*colors)); -} - -triple min3(picture *f) -{ - return f->bounds3().Min(); -} - -triple max3(picture *f) -{ - return f->bounds3().Max(); -} - -pair minratio(picture *f) -{ - return f->ratio(::min); -} - -pair maxratio(picture *f) -{ - return f->ratio(::max); -} - -triple minbezier(triplearray2 *P, triple b) -{ - real *A=copyTripleArray2Components(P,true,4); - b=triple(bound(A,::min,b.getx(),sqrtFuzz*norm(A,16)), - bound(A+16,::min,b.gety(),sqrtFuzz*norm(A+16,16)), - bound(A+32,::min,b.getz(),sqrtFuzz*norm(A+32,16))); - delete[] A; - return b; -} - -triple maxbezier(triplearray2 *P, triple b) -{ - real *A=copyTripleArray2Components(P,true,4); - b=triple(bound(A,::max,b.getx(),sqrtFuzz*norm(A,16)), - bound(A+16,::max,b.gety(),sqrtFuzz*norm(A+16,16)), - bound(A+32,::max,b.getz(),sqrtFuzz*norm(A+32,16))); - delete[] A; - return b; -} - -pair minratio(triplearray2 *P, pair b) -{ - triple *A=copyTripleArray2C(P,true,4); - real fuzz=sqrtFuzz*norm(A,16); - b=pair(bound(A,::min,xratio,b.getx(),fuzz), - bound(A,::min,yratio,b.gety(),fuzz)); - delete[] A; - return b; -} - -pair maxratio(triplearray2 *P, pair b) -{ - triple *A=copyTripleArray2C(P,true,4); - real fuzz=sqrtFuzz*norm(A,16); - b=pair(bound(A,::max,xratio,b.getx(),fuzz), - bound(A,::max,yratio,b.gety(),fuzz)); - delete[] A; - return b; -} - -pair minratio(path3 g) -{ - return g.ratio(::min); -} - -pair maxratio(path3 g) -{ - return g.ratio(::max); -} - -real norm(realarray *a) -{ - size_t n=checkArray(a); - real M=0.0; - for(size_t i=0; i < n; ++i) { - real x=fabs(vm::read<real>(a,i)); - if(x > M) M=x; - } - return M; -} - -real norm(realarray2 *a) -{ - size_t n=checkArray(a); - real M=0.0; - for(size_t i=0; i < n; ++i) { - vm::array *ai=vm::read<vm::array*>(a,i); - size_t m=checkArray(ai); - for(size_t j=0; j < m; ++j) { - real a=fabs(vm::read<real>(ai,j)); - if(a > M) M=a; - } - } - return M; -} - -real norm(triplearray2 *a) -{ - size_t n=checkArray(a); - real M=0.0; - for(size_t i=0; i < n; ++i) { - vm::array *ai=vm::read<vm::array*>(a,i); - size_t m=checkArray(ai); - for(size_t j=0; j < m; ++j) { - real a=vm::read<triple>(ai,j).abs2(); - if(a > M) M=a; - } - } - return sqrt(M); -} - -real change2(triplearray2 *a) -{ - size_t n=checkArray(a); - if(n == 0) return 0.0; - - vm::array *a0=vm::read<vm::array*>(a,0); - size_t m=checkArray(a0); - if(m == 0) return 0.0; - triple a00=vm::read<triple>(a0,0); - real M=0.0; - - for(size_t i=0; i < n; ++i) { - vm::array *ai=vm::read<vm::array*>(a,i); - size_t m=checkArray(ai); - for(size_t j=0; j < m; ++j) { - real a=(vm::read<triple>(ai,j)-a00).abs2(); - if(a > M) M=a; - } - } - return M; -} - -bool is3D(picture *f) -{ - return f->have3D(); -} - -pair bezier(pair a, pair b, pair c, pair d, real t) -{ - real onemt=1-t; - real onemt2=onemt*onemt; - return onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d); -} - -pair bezierP(pair a, pair b, pair c, pair d, real t) -{ - return 3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a); -} - -pair bezierPP(pair a, pair b, pair c, pair d, real t) -{ - return 6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b); -} - -pair bezierPPP(pair a, pair b, pair c, pair d) -{ - return 6.0*(d-a+3.0*(b-c)); -} - -triple bezier(triple a, triple b, triple c, triple d, real t) -{ - real onemt=1-t; - real onemt2=onemt*onemt; - return onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d); -} - -triple bezierP(triple a, triple b, triple c, triple d, real t) -{ - return 3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a); -} - -triple bezierPP(triple a, triple b, triple c, triple d, real t) -{ - return 6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b); -} - -triple bezierPPP(triple a, triple b, triple c, triple d) -{ - return 6.0*(d-a+3.0*(b-c)); -} - -// String operations - -string :emptyString() -{ - return emptystring; -} - -Int length(string *s) -{ - return (Int) s->length(); -} - -Int find(string *s, string t, Int pos=0) -{ - size_t n=s->find(t,pos); - return n == string::npos ? (Int) -1 : (Int) n; -} - -Int rfind(string *s, string t, Int pos=-1) -{ - size_t n=s->rfind(t,pos); - return n == string::npos ? (Int) -1 : (Int) n; -} - -string reverse(string s) -{ - reverse(s.begin(),s.end()); - return s; -} - -string insert(string s, Int pos, string t) -{ - if ((size_t) pos < s.length()) - return s.insert(pos,t); - return s; -} - -string substr(string* s, Int pos, Int n=-1) -{ - if ((size_t) pos < s->length()) - return s->substr(pos,n); - return emptystring; -} - -string erase(string s, Int pos, Int n) -{ - if ((size_t) pos < s.length()) - return s.erase(pos,n); - return s; -} - -string downcase(string s) -{ - std::transform(s.begin(),s.end(),s.begin(),tolower); - return s; -} - -string upcase(string s) -{ - std::transform(s.begin(),s.end(),s.begin(),toupper); - return s; -} - -// returns a string constructed by translating all occurrences of the string -// from in an array of string pairs {from,to} to the string to in string s. -string replace(string *S, stringarray2 *translate) -{ - size_t size=checkArray(translate); - for(size_t i=0; i < size; i++) { - array *a=read<array*>(translate,i); - checkArray(a); - } - const char *p=S->c_str(); - ostringstream buf; - while(*p) { - for(size_t i=0; i < size;) { - array *a=read<array*>(translate,i); - string* from=read<string*>(a,0); - size_t len=from->length(); - if(strncmp(p,from->c_str(),len) != 0) {i++; continue;} - buf << read<string>(a,1); - p += len; - if(*p == 0) return buf.str(); - i=0; - } - buf << *(p++); - } - return buf.str(); -} - -string format(string *format, Int x) -{ - const char *f=format->c_str(); - - checkformat(f,true); - - Int size=snprintf(NULL,0,f,x)+1; - if(size < 1) size=255; // Workaround for non-C99 compliant systems. - char *buf=new char[size]; - snprintf(buf,size,f,x); - string s=string(buf); - delete[] buf; - return s; -} - -string format(string *format, real x, string locale=emptystring) -{ - bool tex=getSetting<string>("tex") != "none"; - bool texify=false; - ostringstream out; - - checkformat(format->c_str(),false); - - const char *phantom="\\phantom{+}"; - const char *p0=format->c_str(); - - const char *p=p0; - const char *start=NULL; - char prev=0; - while(*p != 0) { - char curr=*p; - if(tex && curr == '$' && prev != '\\') texify=true; - prev=curr; - if(curr == '%') { - p++; - if(*p != '%') {start=p-1; break;} - } - out << *(p++); - } - - if(!start) return out.str(); - - // Allow at most 1 argument - while(*p != 0) { - if(*p == '*' || *p == '$') return out.str(); - if(isupper(*p) || islower(*p)) {p++; break;} - p++; - } - - const char *tail=p; - string f=format->substr(start-p0,tail-start); - - const char *oldlocale=NULL; - if(!locale.empty()) { - oldlocale=setlocale(LC_ALL,NULL); - if(oldlocale) oldlocale=StrdupNoGC(oldlocale); - setlocale(LC_ALL,locale.c_str()); - } - - Int size=snprintf(NULL,0,f.c_str(),x)+1; - if(size < 1) size=255; // Workaround for non-C99 compliant systems. - char *buf=new char[size]; - snprintf(buf,size,f.c_str(),x); - - if(oldlocale) { - setlocale(LC_ALL,oldlocale); - delete[] oldlocale; - } - - bool trailingzero=f.find("#") < string::npos; - bool plus=f.find("+") < string::npos; - bool space=f.find(" ") < string::npos; - - char *q=buf; // beginning of formatted number - - if(*q == ' ') { - out << phantom; - q++; - } - - const char decimal=*(localeconv()->decimal_point); - - // Remove any spurious sign - if(*q == '-' || *q == '+') { - p=q+1; - bool zero=true; - while(*p != 0) { - if(!isdigit(*p) && *p != decimal) break; - if(isdigit(*p) && *p != '0') {zero=false; break;} - p++; - } - if(zero) { - q++; - if(plus || space) out << phantom; - } - } - - const char *r=p=q; - bool dp=false; - while(*r != 0 && (isdigit(*r) || *r == decimal || *r == '+' || *r == '-')) { - if(*r == decimal) dp=true; - r++; - } - if(dp) { // Remove trailing zeros and/or decimal point - r--; - unsigned n=0; - while(r > q && *r == '0') {r--; n++;} - if(*r == decimal) {r--; n++;} - while(q <= r) out << *(q++); - if(!trailingzero) q += n; - } - - bool zero=(r == p && *r == '0') && !trailingzero; - - // Translate "E+/E-/e+/e-" exponential notation to TeX - while(*q != 0) { - if(texify && (*q == 'E' || *q == 'e') && - (*(q+1) == '+' || *(q+1) == '-')) { - if(!zero) out << "\\!\\times\\!10^{"; - bool plus=(*(q+1) == '+'); - q++; - if(plus) q++; - if(*q == '-') out << *(q++); - while(*q == '0' && (zero || isdigit(*(q+1)))) q++; - while(isdigit(*q)) out << *(q++); - if(!zero) - out << "}"; - break; - } - out << *(q++); - } - - while(*tail != 0) - out << *(tail++); - - delete[] buf; - - return out.str(); -} - -Int hex(string s) -{ - istringstream is(s); - is.setf(std::ios::hex,std::ios::basefield); - Int value; - if(is && is >> value && ((is >> std::ws).eof())) return value; - ostringstream buf; - buf << "invalid hexidecimal cast from string \"" << s << "\""; - error(buf); -} - -string string(Int x) -{ - ostringstream buf; - buf << x; - return buf.str(); -} - -string string(real x, Int digits=DBL_DIG) -{ - ostringstream buf; - buf.precision(digits); - buf << x; - return buf.str(); -} - -string time(string format=defaulttimeformat) -{ -#ifdef HAVE_STRFTIME - const time_t bintime=time(NULL); - if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) return ""; - return Time; -#else - return format; -#endif -} - -string time(Int seconds, string format=defaulttimeformat) -{ -#ifdef HAVE_STRFTIME - const time_t bintime=seconds; - if(!strftime(Time,nTime,format.c_str(),localtime(&bintime))) return ""; - return Time; -#else -// Avoid unused variable warning messages - unused(&seconds); - return format; -#endif -} - -Int seconds(string t=emptystring, string format=emptystring) -{ -#if defined(HAVE_STRPTIME) - const time_t bintime=time(NULL); - tm tm=*localtime(&bintime); - if(t != "" && !strptime(t.c_str(),format.c_str(),&tm)) return -1; - return (Int) mktime(&tm); -#else - return -1; -#endif -} realarray *_cputime() { @@ -3689,185 +992,6 @@ realarray *_cputime() } -// Math - -real ^(real x, Int y) -{ - return pow(x,y); -} - -pair ^(pair z, Int y) -{ - return pow(z,y); -} - -Int quotient(Int x, Int y) -{ - if(y == 0) dividebyzero(); - if(y == -1) return Negate(x); -// Implementation-independent definition of integer division: round down - return (x-portableMod(x,y))/y; -} - -Int abs(Int x) -{ - return Abs(x); -} - -Int sgn(real x) -{ - return sgn(x); -} - -Int rand() -{ - return rand(); -} - -void srand(Int seed) -{ - srand(intcast(seed)); -} - -// a random number uniformly distributed in the interval [0,1] -real unitrand() -{ - return ((real) rand())/RAND_MAX; -} - -Int ceil(real x) -{ - return Intcast(ceil(x)); -} - -Int floor(real x) -{ - return Intcast(floor(x)); -} - -Int round(real x) -{ - if(validInt(x)) return Round(x); - integeroverflow(0); -} - -Int Ceil(real x) -{ - return Ceil(x); -} - -Int Floor(real x) -{ - return Floor(x); -} - -Int Round(real x) -{ - return Round(Intcap(x)); -} - -real fmod(real x, real y) -{ - if (y == 0.0) dividebyzero(); - return fmod(x,y); -} - -real atan2(real y, real x) -{ - return atan2(y,x); -} - -real hypot(real x, real y) -{ - return hypot(x,y); -} - -real remainder(real x, real y) -{ - return remainder(x,y); -} - -real J(Int n, real x) -{ - return jn(n,x); -} - -real Y(Int n, real x) -{ - return yn(n,x); -} - -real erf(real x) -{ - return erf(x); -} - -real erfc(real x) -{ - return erfc(x); -} - -Int factorial(Int n) { - if(n < 0) error(invalidargument); - return factorial(n); -} - -Int choose(Int n, Int k) { - if(n < 0 || k < 0 || k > n) error(invalidargument); - Int f=1; - Int r=n-k; - for(Int i=n; i > r; --i) { - if(f > Int_MAX/i) integeroverflow(0); - f=(f*i)/(n-i+1); - } - return f; -} - -real gamma(real x) -{ -#ifdef HAVE_TGAMMA - return tgamma(x); -#else - real lg = lgamma(x); - return signgam*exp(lg); -#endif -} - -// Complex Gamma function -pair gamma(explicit pair z) -{ - return gamma(z); -} - -realarray *quadraticroots(real a, real b, real c) -{ - quadraticroots q(a,b,c); - array *roots=new array(q.roots); - if(q.roots >= 1) (*roots)[0]=q.t1; - if(q.roots == 2) (*roots)[1]=q.t2; - return roots; -} - -pairarray *quadraticroots(explicit pair a, explicit pair b, explicit pair c) -{ - Quadraticroots q(a,b,c); - array *roots=new array(q.roots); - if(q.roots >= 1) (*roots)[0]=q.z1; - if(q.roots == 2) (*roots)[1]=q.z2; - return roots; -} - -realarray *cubicroots(real a, real b, real c, real d) -{ - cubicroots q(a,b,c,d); - array *roots=new array(q.roots); - if(q.roots >= 1) (*roots)[0]=q.t1; - if(q.roots >= 2) (*roots)[1]=q.t2; - if(q.roots == 3) (*roots)[2]=q.t3; - return roots; -} - - // Transforms bool ==(transform a, transform b) @@ -4026,2129 +1150,4 @@ transform reflect(pair a, pair b) { return reflectabout(a,b); } - - -// Pair operations - -pair :pairZero() -{ - return zero; -} - -pair :realRealToPair(real x, real y) -{ - return pair(x,y); -} - -pair :pairNegate(pair z) -{ - return -z; -} - -real xpart:pairXPart(pair z) -{ - return z.getx(); -} - -real ypart:pairYPart(pair z) -{ - return z.gety(); -} - -real length(pair z) -{ - return z.length(); -} - -real abs(pair z) -{ - return z.length(); -} - -pair sqrt(explicit pair z) -{ - return Sqrt(z); -} - -// Return the angle of z in radians. -real angle(pair z, bool warn=true) -{ - if(!warn && z.getx() == 0.0 && z.gety() == 0.0) return 0.0; - return z.angle(); -} - -// Return the angle of z in degrees in the interval [0,360). -real degrees(pair z, bool warn=true) -{ - if(!warn && z.getx() == 0.0 && z.gety() == 0.0) return 0.0; - return principalBranch(degrees(z.angle())); -} - -// Convert degrees to radians. -real radians(real degrees) -{ - return radians(degrees); -} - -// Convert radians to degrees. -real degrees(real radians) -{ - return degrees(radians); -} - -// Convert radians to degrees in [0,360). -real Degrees(real radians) -{ - return principalBranch(degrees(radians)); -} - -real Sin(real deg) -{ - return sin(radians(deg)); -} - -real Cos(real deg) -{ - return cos(radians(deg)); -} - -real Tan(real deg) -{ - return tan(radians(deg)); -} - -real aSin(real x) -{ - return degrees(asin(x)); -} - -real aCos(real x) -{ - return degrees(acos(x)); -} - -real aTan(real x) -{ - return degrees(atan(x)); -} - -pair unit(pair z) -{ - return unit(z); -} - -pair dir(real degrees) -{ - return expi(radians(degrees)); -} - -pair dir(explicit pair z) -{ - return unit(z); -} - -pair expi(real angle) -{ - return expi(angle); -} - -pair exp(explicit pair z) -{ - return exp(z); -} - -pair log(explicit pair z) -{ - return pair(log(z.length()),z.angle()); -} - -pair sin(explicit pair z) -{ - return sin(z); -} - -pair cos(explicit pair z) -{ - return pair(cos(z.getx())*cosh(z.gety()),-sin(z.getx())*sinh(z.gety())); -} - -pair conj(pair z) -{ - return conj(z); -} - -pair realmult(pair z, pair w) -{ - return pair (z.getx()*w.getx(),z.gety()*w.gety()); -} - -triple realmult(triple u, triple v) -{ - return triple (u.getx()*v.getx(),u.gety()*v.gety(),u.getz()*v.getz()); -} - -// To avoid confusion, a dot product requires explicit pair arguments. -real dot(explicit pair z, explicit pair w) -{ - return dot(z,w); -} - - -// Triple operations - -triple :tripleZero() -{ - static triple zero; - return zero; -} - -triple :realRealRealToTriple(real x, real y, real z) -{ - return triple(x,y,z); -} - -real xpart:tripleXPart(triple v) -{ - return v.getx(); -} - -real ypart:tripleYPart(triple v) -{ - return v.gety(); -} - -real zpart:tripleZPart(triple v) -{ - return v.getz(); -} - -triple Operator *(real x, triple v) -{ - return x*v; -} - -triple Operator *(triple v, real x) -{ - return v*x; -} - -triple /(triple v, real x) -{ - return v/x; -} - -real length(triple v) -{ - return v.length(); -} - -real abs(triple v) -{ - return v.length(); -} - -real polar(triple v, bool warn=true) -{ - if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) return 0.0; - return v.polar(); -} - -real azimuth(triple v, bool warn=true) -{ - if(!warn && v.getx() == 0.0 && v.gety() == 0.0) return 0.0; - return v.azimuth(); -} - -real colatitude(triple v, bool warn=true) -{ - if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) return 0.0; - return degrees(v.polar()); -} - -real latitude(triple v, bool warn=true) -{ - if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) return 0.0; - return 90.0-degrees(v.polar()); -} - -// Return the longitude of v in [0,360). -real longitude(triple v, bool warn=true) -{ - if(!warn && v.getx() == 0.0 && v.gety() == 0.0) return 0.0; - return principalBranch(degrees(v.azimuth())); -} - -triple unit(triple v) -{ - return unit(v); -} - -real dot(triple u, triple v) -{ - return dot(u,v); -} - -triple cross(triple u, triple v) -{ - return cross(u,v); -} - -triple dir(explicit triple z) -{ - return unit(z); -} - -triple expi(real polar, real azimuth) -{ - return expi(polar,azimuth); -} - -triple dir(real colatitude, real longitude) -{ - return expi(radians(colatitude),radians(longitude)); -} - - -// System routines - -void atupdate(callable *f) -{ - processData().atUpdateFunction=f; -} - -callable *atupdate() -{ - return processData().atUpdateFunction; -} - -void atexit(callable *f) -{ - processData().atExitFunction=f; -} - -callable *atexit() -{ - return processData().atExitFunction; -} - -void atbreakpoint(callableBp *f) -{ - processData().atBreakpointFunction=f; -} - -void breakpoint(runnable *s=NULL) -{ - breakpoint(Stack,s); -} - -string locatefile(string file) -{ - return locateFile(file); -} - -void stop(string file, Int line, runnable *s=NULL) -{ - file=locateFile(file); - clear(file,line); - cout << "setting breakpoint at " << file << ": " << line << endl; - bplist.push_back(bpinfo(file,line,s)); -} - -void breakpoints() -{ - for(mem::list<bpinfo>::iterator p=bplist.begin(); p != bplist.end(); ++p) - cout << p->f.name() << ": " << p->f.line() << endl; -} - -void clear(string file, Int line) -{ - file=locateFile(file); - clear(file,line,true); -} - -void clear() -{ - bplist.clear(); -} - -void warn(string s) -{ - Warn(s); -} - -void nowarn(string s) -{ - noWarn(s); -} - -void warning(string s, string t, bool position=false) -{ - if(settings::warn(s)) { - em.warning(position ? getPos() : nullPos,s); - em << t; - } -} - -// Strip directory from string -string stripdirectory(string *s) -{ - return stripDir(*s); -} - -// Strip directory from string -string stripfile(string *s) -{ - return stripFile(*s); -} - -// Strip file extension from string -string stripextension(string *s) -{ - return stripExt(*s); -} - -// Call ImageMagick convert. -Int convert(string args=emptystring, string file=emptystring, - string format=emptystring) -{ - string name=convertname(file,format); - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("convert")); - push_split(cmd,args); - cmd.push_back(name); - bool quiet=verbose <= 1; - Int ret=System(cmd,quiet ? 1 : 0,true,"convert", - "your ImageMagick convert utility"); - - if(ret == 0 && verbose > 0) - cout << "Wrote " << ((file.empty()) ? name : file) << endl; - - return ret; -} - -// Call ImageMagick animate. -Int animate(string args=emptystring, string file=emptystring, - string format=emptystring) -{ -#ifndef __CYGWIN__ - string name=convertname(file,format,false); - if(view()) { - mem::vector<string> cmd; - cmd.push_back(getSetting<string>("animate")); - push_split(cmd,args); - cmd.push_back(name); - return System(cmd,0,false,"animate","your animated GIF viewer"); - } -#endif - return 0; -} - -// Delete file named s. -Int delete(string *s) -{ - checkLocal(*s); - Int rc=unlink(s->c_str()); - if(rc == 0 && verbose > 0) - cout << "Deleted " << *s << endl; - return rc; -} - -// Rename file "from" to file "to". -Int rename(string *from, string *to) -{ - checkLocal(*from); - checkLocal(*to); - Int rc=rename(from->c_str(),to->c_str()); - if(rc == 0 && verbose > 0) - cout << "Renamed " << *from << " to " << *to << endl; - return rc; -} - - -// Array operations - -// Create an empty array. -array* :emptyArray() -{ - return new array(0); -} - -// Create a new array (technically a vector). -// This array will be multidimensional. First the number of dimensions -// is popped off the stack, followed by each dimension in reverse order. -// The array itself is technically a one dimensional array of one -// dimension arrays and so on. -array* :newDeepArray(Int depth) -{ - assert(depth > 0); - - Int *dims = new Int[depth]; - - for (Int index = depth-1; index >= 0; index--) { - Int i=pop<Int>(Stack); - if(i < 0) error("cannot create a negative length array"); - dims[index]=i; - } - - array *a=deepArray(depth, dims); - delete[] dims; - return a; -} - -// Creates an array with elements already specified. First, the number -// of elements is popped off the stack, followed by each element in -// reverse order. -array* :newInitializedArray(Int n) -{ - assert(n >= 0); - - array *a = new array(n); - - for (Int index = n-1; index >= 0; index--) - (*a)[index] = pop(Stack); - - return a; -} - -// Similar to newInitializedArray, but after the n elements, append another -// array to it. -array* :newAppendedArray(array* tail, Int n) -{ - assert(n >= 0); - - array *a = new array(n); - - for (Int index = n-1; index >= 0; index--) - (*a)[index] = pop(Stack); - - copy(tail->begin(), tail->end(), back_inserter(*a)); - - return a; -} - -// The function T[] array(int n, T value, int depth=0) produces a array of n -// copies of x, where each copy is copied up to depth. -array* :newDuplicateArray(Int n, item value, Int depth=Int_MAX) -{ - if(n < 0) error("cannot create a negative length array"); - if(depth < 0) error("cannot copy to a negative depth"); - - return new array(n, value, depth); -} - -// Read an element from an array. Checks for initialization & bounds. -item :arrayRead(array *a, Int n) -{ - item& i=arrayRead(a,n); - if (i.empty()) { - ostringstream buf; - buf << "read uninitialized value from array at index " << n; - error(buf); - } - return i; -} - -// Slice a substring from an array. -item :arraySliceRead(array *a, Int left, Int right) -{ - checkArray(a); - return a->slice(left, right); -} - -// Slice a substring from an array. This implements the cases a[i:] and a[:] -// where the endpoint is not given, and assumed to be the length of the array. -item :arraySliceReadToEnd(array *a, Int left) -{ - size_t len=checkArray(a); - return a->slice(left, (Int)len); -} - -// Read an element from an array of arrays. Check bounds and initialize -// as necessary. -item :arrayArrayRead(array *a, Int n) -{ - item& i=arrayRead(a,n); - if (i.empty()) i=new array(0); - return i; -} - -// Write an element to an array. Increase size if necessary. -item :arrayWrite(item value, array *a, Int n) -{ - size_t len=checkArray(a); - bool cyclic=a->cyclic(); - if(cyclic && len > 0) n=imod(n,len); - else { - if(cyclic) outOfBounds("writing cyclic",len,n); - if(n < 0) outOfBounds("writing",len,n); - if(len <= (size_t) n) - a->resize(n+1); - } - (*a)[n] = value; - return value; -} - -array * :arraySliceWrite(array *src, array *dest, Int left, Int right) -{ - checkArray(src); - checkArray(dest); - dest->setSlice(left, right, src); - return src; -} - -array * :arraySliceWriteToEnd(array *src, array *dest, Int left) -{ - checkArray(src); - size_t len=checkArray(dest); - dest->setSlice(left, (Int) len, src); - return src; -} - -// Returns the length of an array. -Int :arrayLength(array *a) -{ - return (Int) checkArray(a); -} - -// Returns an array of integers representing the keys of the array. -array * :arrayKeys(array *a) -{ - size_t size=checkArray(a); - - array *keys=new array(); - for (size_t i=0; i<size; ++i) { - item& cell = (*a)[i]; - if (!cell.empty()) - keys->push((Int)i); - } - - return keys; -} - -// Return the cyclic flag for an array. -bool :arrayCyclicFlag(array *a) -{ - checkArray(a); - return a->cyclic(); -} - -bool :arraySetCyclicFlag(bool b, array *a) -{ - checkArray(a); - a->cyclic(b); - return b; -} - -// Check to see if an array element is initialized. -bool :arrayInitializedHelper(Int n, array *a) -{ - size_t len=checkArray(a); - bool cyclic=a->cyclic(); - if(cyclic && len > 0) n=imod(n,len); - else if(n < 0 || n >= (Int) len) return false; - item&i=(*a)[(unsigned) n]; - return !i.empty(); -} - -// Returns the initialize method for an array. -callable* :arrayInitialized(array *a) -{ - return new thunk(new bfunc(arrayInitializedHelper),a); -} - -// The helper function for the cyclic method that sets the cyclic flag. -void :arrayCyclicHelper(bool b, array *a) -{ - checkArray(a); - a->cyclic(b); -} - -// Set the cyclic flag for an array. -callable* :arrayCyclic(array *a) -{ - return new thunk(new bfunc(arrayCyclicHelper),a); -} - -// The helper function for the push method that does the actual operation. -item :arrayPushHelper(item x, array *a) -{ - checkArray(a); - a->push(x); - return x; -} - -// Returns the push method for an array. -callable* :arrayPush(array *a) -{ - return new thunk(new bfunc(arrayPushHelper),a); -} - -// The helper function for the append method that appends b to a. -void :arrayAppendHelper(array *b, array *a) -{ - checkArray(a); - size_t size=checkArray(b); - for(size_t i=0; i < size; i++) - a->push((*b)[i]); -} - -// Returns the append method for an array. -callable* :arrayAppend(array *a) -{ - return new thunk(new bfunc(arrayAppendHelper),a); -} - -// The helper function for the pop method. -item :arrayPopHelper(array *a) -{ - size_t asize=checkArray(a); - if(asize == 0) - error("cannot pop element from empty array"); - return a->pop(); -} - -// Returns the pop method for an array. -callable* :arrayPop(array *a) -{ - return new thunk(new bfunc(arrayPopHelper),a); -} - -// The helper function for the insert method. -item :arrayInsertHelper(Int i, array *x, array *a) -{ - size_t asize=checkArray(a); - checkArray(x); - if(a->cyclic() && asize > 0) i=imod(i,asize); - if(i < 0 || i > (Int) asize) - outOfBounds("inserting",asize,i); - (*a).insert((*a).begin()+i,(*x).begin(),(*x).end()); -} - -// Returns the insert method for an array. -callable* :arrayInsert(array *a) -{ - return new thunk(new bfunc(arrayInsertHelper),a); -} - -// Returns the delete method for an array. -callable* :arrayDelete(array *a) -{ - return new thunk(new bfunc(arrayDeleteHelper),a); -} - -bool :arrayAlias(array *a, array *b) -{ - return a==b; -} - -// Return array formed by indexing array a with elements of integer array b -array* :arrayIntArray(array *a, array *b) -{ - size_t asize=checkArray(a); - size_t bsize=checkArray(b); - array *r=new array(bsize); - bool cyclic=a->cyclic(); - for(size_t i=0; i < bsize; i++) { - Int index=read<Int>(b,i); - if(cyclic && asize > 0) index=imod(index,asize); - else - if(index < 0 || index >= (Int) asize) - outOfBounds("reading",asize,index); - (*r)[i]=(*a)[index]; - } - return r; -} - -// returns the complement of the integer array a in {0,2,...,n-1}, -// so that b[complement(a,b.length)] yields the complement of b[a]. -Intarray* complement(Intarray *a, Int n) -{ - size_t asize=checkArray(a); - array *r=new array(0); - bool *keep=new bool[n]; - for(Int i=0; i < n; ++i) keep[i]=true; - for(size_t i=0; i < asize; ++i) { - Int j=read<Int>(a,i); - if(j >= 0 && j < n) keep[j]=false; - } - for(Int i=0; i < n; i++) - if(keep[i]) r->push(i); - - delete[] keep; - return r; -} - -// Generate the sequence {f(i) : i=0,1,...n-1} given a function f and integer n -Intarray* :arraySequence(callable *f, Int n) -{ - if(n < 0) n=0; - array *a=new array(n); - for(Int i=0; i < n; ++i) { - Stack->push(i); - f->call(Stack); - (*a)[i]=pop(Stack); - } - return a; -} - -// Return the array {0,1,...n-1} -Intarray *sequence(Int n) -{ - if(n < 0) n=0; - array *a=new array(n); - for(Int i=0; i < n; ++i) { - (*a)[i]=i; - } - return a; -} - -// Apply a function to each element of an array -array* :arrayFunction(callable *f, array *a) -{ - size_t size=checkArray(a); - array *b=new array(size); - for(size_t i=0; i < size; ++i) { - Stack->push((*a)[i]); - f->call(Stack); - (*b)[i]=pop(Stack); - } - return b; -} - -array* :arraySort(array *a, callable *f) -{ - array *c=copyArray(a); - compareFunc=f; - FuncStack=Stack; - stable_sort(c->begin(),c->end(),compareFunction); - return c; -} - -bool all(boolarray *a) -{ - size_t size=checkArray(a); - bool c=true; - for(size_t i=0; i < size; i++) - if(!get<bool>((*a)[i])) {c=false; break;} - return c; -} - -boolarray* !(boolarray* a) -{ - size_t size=checkArray(a); - array *c=new array(size); - for(size_t i=0; i < size; i++) - (*c)[i]=!read<bool>(a,i); - return c; -} - -Int sum(boolarray *a) -{ - size_t size=checkArray(a); - Int sum=0; - for(size_t i=0; i < size; i++) - sum += read<bool>(a,i) ? 1 : 0; - return sum; -} - -array* :arrayCopy(array *a) -{ - return copyArray(a); -} - -array* :arrayConcat(array *a) -{ - // a is an array of arrays to be concatenated together. - // The signature is - // T[] concat(... T[][] a); - - size_t numArgs=checkArray(a); - size_t resultSize=0; - for (size_t i=0; i < numArgs; ++i) { - resultSize += checkArray(a->read<array *>(i)); - } - - array *result=new array(resultSize); - - size_t ri=0; - for (size_t i=0; i < numArgs; ++i) { - array *arg=a->read<array *>(i); - size_t size=checkArray(arg); - - for (size_t j=0; j < size; ++j) { - (*result)[ri]=(*arg)[j]; - ++ri; - } - } - - return result; -} - -array* :array2Copy(array *a) -{ - return copyArray2(a); -} - -array* :array3Copy(array *a) -{ - return copyArray3(a); -} - -array* :array2Transpose(array *a) -{ - size_t asize=checkArray(a); - array *c=new array(0); - for(size_t i=0; i < asize; i++) { - size_t ip=i+1; - array *ai=read<array*>(a,i); - size_t aisize=checkArray(ai); - size_t csize=checkArray(c); - if(csize < aisize) { - c->resize(aisize); - for(size_t j=csize; j < aisize; j++) { - (*c)[j]=new array(ip); - } - } - for(size_t j=0; j < aisize; j++) { - array *cj=read<array*>(c,j); - if(checkArray(cj) < ip) cj->resize(ip); - (*cj)[i]=(*ai)[j]; - } - } - return c; -} - -// a is a rectangular 3D array; perm is an Int array indicating the type of -// permutation (021 or 120, etc; original is 012). -// Transpose by sending respective members to the permutated locations: -// return the array obtained by putting a[i][j][k] into position perm{ijk}. -array* :array3Transpose(array *a, array *perm) -{ - const size_t DIM=3; - - if(checkArray(perm) != DIM) { - ostringstream buf; - buf << "permutation array must have length " << DIM; - error(buf); - } - - size_t* size=new size_t[DIM]; - for(size_t i=0; i < DIM; ++i) size[i]=DIM; - - for(size_t i=0; i < DIM; ++i) { - Int p=read<Int>(perm,i); - size_t P=(size_t) p; - if(p < 0 || P >= DIM) { - ostringstream buf; - buf << "permutation index out of range: " << p; - error(buf); - } - size[P]=P; - } - - for(size_t i=0; i < DIM; ++i) - if(size[i] == DIM) error("permutation indices must be distinct"); - - static const char *rectangular= - "3D transpose implemented for rectangular matrices only"; - - size_t isize=size[0]=checkArray(a); - array *a0=read<array*>(a,0); - size[1]=checkArray(a0); - array *a00=read<array*>(a0,0); - size[2]=checkArray(a00); - for(size_t i=0; i < isize; i++) { - array *ai=read<array*>(a,i); - size_t jsize=checkArray(ai); - if(jsize != size[1]) error(rectangular); - for(size_t j=0; j < jsize; j++) { - array *aij=read<array*>(ai,j); - if(checkArray(aij) != size[2]) error(rectangular); - } - } - - size_t perm0=(size_t) read<Int>(perm,0); - size_t perm1=(size_t) read<Int>(perm,1); - size_t perm2=(size_t) read<Int>(perm,2); - - size_t sizep0=size[perm0]; - size_t sizep1=size[perm1]; - size_t sizep2=size[perm2]; - - array *c=new array(sizep0); - for(size_t i=0; i < sizep0; ++i) { - array *ci=new array(sizep1); - (*c)[i]=ci; - for(size_t j=0; j < sizep1; ++j) { - array *cij=new array(sizep2); - (*ci)[j]=cij; - } - } - - size_t* i=new size_t[DIM]; - - for(i[0]=0; i[0] < size[0]; ++i[0]) { - array *a0=read<array*>(a,i[0]); - for(i[1]=0; i[1] < size[1]; ++i[1]) { - array *a1=read<array*>(a0,i[1]); - for(i[2]=0; i[2] < size[2]; ++i[2]) { - array *c0=read<array*>(c,i[perm0]); - array *c1=read<array*>(c0,i[perm1]); - (*c1)[i[perm2]]=read<real>(a1,i[2]); - } - } - } - - delete [] i; - delete [] size; - - return c; -} - -// In a boolean array, find the index of the nth true value or -1 if not found -// If n is negative, search backwards. -Int find(boolarray *a, Int n=1) -{ - size_t size=checkArray(a); - Int j=-1; - if(n > 0) - for(size_t i=0; i < size; i++) - if(read<bool>(a,i)) { - n--; if(n == 0) {j=(Int) i; break;} - } - if(n < 0) - for(size_t i=size; i > 0;) - if(read<bool>(a,--i)) { - n++; if(n == 0) {j=(Int) i; break;} - } - return j; -} - -// construct vector obtained by replacing those elements of b for which the -// corresponding elements of a are false by the corresponding element of c. -array* :arrayConditional(array *a, array *b, array *c) -{ - size_t size=checkArray(a); - array *r=new array(size); - if(b && c) { - checkArrays(a,b); - checkArrays(b,c); - for(size_t i=0; i < size; i++) - (*r)[i]=read<bool>(a,i) ? (*b)[i] : (*c)[i]; - } else { - r->clear(); - if(b) { - checkArrays(a,b); - for(size_t i=0; i < size; i++) - if(read<bool>(a,i)) r->push((*b)[i]); - } else if(c) { - checkArrays(a,c); - for(size_t i=0; i < size; i++) - if(!read<bool>(a,i)) r->push((*c)[i]); - } - } - return r; -} - -// Return an n x n identity matrix. -realarray2 *identity(Int n) -{ - return Identity(n); -} - -// Return the diagonal matrix with diagonal entries given by a. -realarray2* :diagonal(realarray *a) -{ - size_t n=checkArray(a); - array *c=new array(n); - for(size_t i=0; i < n; ++i) { - array *ci=new array(n); - (*c)[i]=ci; - for(size_t j=0; j < i; ++j) - (*ci)[j]=0.0; - (*ci)[i]=read<real>(a,i); - for(size_t j=i+1; j < n; ++j) - (*ci)[j]=0.0; - } - return c; -} - -// Return the inverse of an n x n matrix a using Gauss-Jordan elimination. -realarray2 *inverse(realarray2 *a) -{ - a=copyArray2(a); - size_t n=checkArray(a); - checkSquare(a); - - inverseAllocate(n); - - for(size_t i=0; i < n; i++) - pivot[i]=0; - - size_t col=0, row=0; - // This is the main loop over the columns to be reduced. - for(size_t i=0; i < n; i++) { - real big=0.0; - // This is the outer loop of the search for a pivot element. - for(size_t j=0; j < n; j++) { - array *aj=read<array*>(a,j); - if(pivot[j] != 1) { - for(size_t k=0; k < n; k++) { - if(pivot[k] == 0) { - real temp=fabs(read<real>(aj,k)); - if(temp >= big) { - big=temp; - row=j; - col=k; - } - } else if(pivot[k] > 1) { - inverseDeallocate(); - error(singular); - } - } - } - } - ++(pivot[col]); - - // Interchange rows, if needed, to put the pivot element on the diagonal. - array *acol=read<array*>(a,col); - if(row != col) { - array *arow=read<array*>(a,row); - for(size_t l=0; l < n; l++) { - real temp=read<real>(arow,l); - (*arow)[l]=read<real>(acol,l); - (*acol)[l]=temp; - } - } - - Row[i]=row; - Col[i]=col; - - // Divide the pivot row by the pivot element. - real denom=read<real>(acol,col); - if(denom == 0.0) { - inverseDeallocate(); - error(singular); - } - real pivinv=1.0/denom; - (*acol)[col]=1.0; - for(size_t l=0; l < n; l++) - (*acol)[l]=read<real>(acol,l)*pivinv; - - // Reduce all rows except for the pivoted one. - for(size_t k=0; k < n; k++) { - if(k != col) { - array *ak=read<array*>(a,k); - real akcol=read<real>(ak,col); - (*ak)[col]=0.0; - for(size_t l=0; l < n; l++) - (*ak)[l]=read<real>(ak,l)-read<real>(acol,l)*akcol; - } - } - } - - // Unscramble the inverse matrix in view of the column interchanges. - for(size_t l=n; l > 0;) { - l--; - size_t r=Row[l]; - size_t c=Col[l]; - if(r != c) { - for(size_t k=0; k < n; k++) { - array *ak=read<array*>(a,k); - real temp=read<real>(ak,r); - (*ak)[r]=read<real>(ak,c); - (*ak)[c]=temp; - } - } - } - inverseDeallocate(); - return a; -} - -// Solve the linear equation ax=b by LU decomposition, returning the -// solution x, where a is an n x n matrix and b is an array of length n. -// If no solution exists, return an empty array. -realarray *solve(realarray2 *a, realarray *b, bool warn=true) -{ - size_t n=checkArray(a); - - if(n == 0) return new array(0); - - size_t m=checkArray(b); - if(m != n) error(incommensurate); - - real *A=copyArray2C(a); - size_t *index=new size_t[n]; - - if(LUdecompose(A,n,index,warn) == 0) - return new array(0); - - array *x=new array(n); - - real *B=copyArrayC(b); - - for(size_t i=0; i < n; ++i) { - size_t ip=index[i]; - real sum=B[ip]; - B[ip]=B[i]; - real *Ai=A+i*n; - for(size_t j=0; j < i; ++j) - sum -= Ai[j]*B[j]; - B[i]=sum; - } - - for(size_t i=n; i > 0;) { - --i; - real sum=B[i]; - real *Ai=A+i*n; - for(size_t j=i+1; j < n; ++j) - sum -= Ai[j]*B[j]; - B[i]=sum/Ai[i]; - } - - for(size_t i=0; i < n; ++i) - (*x)[i]=B[i]; - - delete[] index; - delete[] B; - delete[] A; - - return x; -} - -// Solve the linear equation ax=b by LU decomposition, returning the -// solution x, where a is an n x n matrix and b is an n x m matrix. -// If no solution exists, return an empty array. -realarray2 *solve(realarray2 *a, realarray2 *b, bool warn=true) -{ - size_t n=checkArray(a); - - if(n == 0) return new array(0); - - if(checkArray(b) != n) error(incommensurate); - size_t m=checkArray(read<array*>(b,0)); - - real *A=copyArray2C(a); - real *B=copyArray2C(b,false); - - size_t *index=new size_t[n]; - - if(LUdecompose(A,n,index,warn) == 0) - return new array(0); - - array *x=new array(n); - - for(size_t i=0; i < n; ++i) { - real *Ai=A+i*n; - real *Bi=B+i*m; - real *Bip=B+index[i]*m; - for(size_t k=0; k < m; ++k) { - real sum=Bip[k]; - Bip[k]=Bi[k]; - size_t jk=k; - for(size_t j=0; j < i; ++j, jk += m) - sum -= Ai[j]*B[jk]; - Bi[k]=sum; - } - } - - for(size_t i=n; i > 0;) { - --i; - real *Ai=A+i*n; - real *Bi=B+i*m; - for(size_t k=0; k < m; ++k) { - real sum=Bi[k]; - size_t jk=(i+1)*m+k; - for(size_t j=i+1; j < n; ++j, jk += m) - sum -= Ai[j]*B[jk]; - Bi[k]=sum/Ai[i]; - } - } - - for(size_t i=0; i < n; ++i) { - real *Bi=B+i*m; - array *xi=new array(m); - (*x)[i]=xi; - for(size_t j=0; j < m; ++j) - (*xi)[j]=Bi[j]; - } - - delete[] index; - delete[] B; - delete[] A; - - return x; -} - -// Compute the determinant of an n x n matrix. -real determinant(realarray2 *a) -{ - real *A=copyArray2C(a); - size_t n=checkArray(a); - - real det=LUdecompose(A,n,NULL,false); - size_t n1=n+1; - for(size_t i=0; i < n; ++i) - det *= A[i*n1]; - - delete[] A; - - return det; -} - -realarray *Operator *(realarray2 *a, realarray *b) -{ - size_t n=checkArray(a); - size_t m=checkArray(b); - array *c=new array(n); - real *B=copyArrayC(b); - for(size_t i=0; i < n; ++i) { - array *ai=read<array*>(a,i); - if(checkArray(ai) != m) error(incommensurate); - real sum=0.0; - for(size_t j=0; j < m; ++j) - sum += read<real>(ai,j)*B[j]; - (*c)[i]=sum; - } - delete[] B; - return c; -} - -realarray *Operator *(realarray *a, realarray2 *b) -{ - size_t n=checkArray(a); - if(n != checkArray(b)) error(incommensurate); - real *A=copyArrayC(a); - - array **B=new array*[n]; - array *bk=read<array *>(b,0); - B[0]=bk; - size_t m=bk->size(); - for(size_t k=1; k < n; k++) { - array *bk=read<array *>(b,k); - if(bk->size() != m) error(incommensurate); - B[k]=bk; - } - array *c=new array(m); - - for(size_t i=0; i < m; ++i) { - real sum=0.0; - for(size_t k=0; k < n; ++k) - sum += A[k]*read<real>(B[k],i); - (*c)[i]=sum; - } - delete[] B; - delete[] A; - return c; -} - -realarray2 *Operator *(realarray2 *a, realarray2 *b) -{ - size_t n=checkArray(a); - - size_t nb=checkArray(b); - size_t na0=n == 0 ? 0 : checkArray(read<array*>(a,0)); - if(na0 != nb) - error(incommensurate); - - size_t nb0=nb == 0 ? 0 : checkArray(read<array*>(b,0)); - - array *c=new array(n); - - real *A=copyArray2C(a,false); - real *B=copyArray2C(b,false); - - for(size_t i=0; i < n; ++i) { - real *Ai=A+i*nb; - array *ci=new array(nb0); - (*c)[i]=ci; - for(size_t j=0; j < nb0; ++j) { - real sum=0.0; - size_t kj=j; - for(size_t k=0; k < nb; ++k, kj += nb0) - sum += Ai[k]*B[kj]; - (*ci)[j]=sum; - } - } - - delete[] B; - delete[] A; - - return c; -} - -triple Operator *(realarray2 *t, triple v) -{ - return *t*v; -} - -pair project(triple v, realarray2 *t) -{ - size_t n=checkArray(t); - if(n != 4) error(incommensurate); - array *t0=read<array*>(t,0); - array *t1=read<array*>(t,1); - array *t3=read<array*>(t,3); - if(checkArray(t0) != 4 || checkArray(t1) != 4 || checkArray(t3) != 4) - error(incommensurate); - - real x=v.getx(); - real y=v.gety(); - real z=v.getz(); - - real f=read<real>(t3,0)*x+read<real>(t3,1)*y+read<real>(t3,2)*z+ - read<real>(t3,3); - if(f == 0.0) dividebyzero(); - f=1.0/f; - - return pair((read<real>(t0,0)*x+read<real>(t0,1)*y+read<real>(t0,2)*z+ - read<real>(t0,3))*f, - (read<real>(t1,0)*x+read<real>(t1,1)*y+read<real>(t1,2)*z+ - read<real>(t1,3))*f); -} - -// Compute the dot product of vectors a and b. -real dot(realarray *a, realarray *b) -{ - size_t n=checkArrays(a,b); - real sum=0.0; - for(size_t i=0; i < n; ++i) - sum += read<real>(a,i)*read<real>(b,i); - return sum; -} - -// Solve the problem L\inv f, where f is an n vector and L is the n x n matrix -// -// [ b[0] c[0] a[0] ] -// [ a[1] b[1] c[1] ] -// [ a[2] b[2] c[2] ] -// [ ... ] -// [ c[n-1] a[n-1] b[n-1] ] -realarray *tridiagonal(realarray *a, realarray *b, realarray *c, realarray *f) -{ - size_t n=checkArrays(a,b); - checkEqual(n,checkArray(c)); - checkEqual(n,checkArray(f)); - - array *up=new array(n); - array& u=*up; - - if(n == 0) return up; - - // Special case: zero Dirichlet boundary conditions - if(read<real>(a,0) == 0.0 && read<real>(c,n-1) == 0.0) { - real temp=read<real>(b,0); - if(temp == 0.0) dividebyzero(); - temp=1.0/temp; - - real *work=new real[n]; - u[0]=read<real>(f,0)*temp; - work[0]=-read<real>(c,0)*temp; - - for(size_t i=1; i < n; i++) { - real temp=(read<real>(b,i)+read<real>(a,i)*work[i-1]); - if(temp == 0.0) {delete[] work; dividebyzero();} - temp=1.0/temp; - u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*temp; - work[i]=-read<real>(c,i)*temp; - } - - for(size_t i=n-1; i >= 1; i--) - u[i-1]=read<real>(u,i-1)+work[i-1]*read<real>(u,i); - - delete[] work; - return up; - } - - real binv=read<real>(b,0); - if(binv == 0.0) dividebyzero(); - binv=1.0/binv; - - if(n == 1) {u[0]=read<real>(f,0)*binv; return up;} - if(n == 2) { - real factor=(read<real>(b,0)*read<real>(b,1)- - read<real>(a,0)*read<real>(c,1)); - if(factor== 0.0) dividebyzero(); - factor=1.0/factor; - real temp=(read<real>(b,0)*read<real>(f,1)- - read<real>(c,1)*read<real>(f,0))*factor; - u[0]=(read<real>(b,1)*read<real>(f,0)- - read<real>(a,0)*read<real>(f,1))*factor; - u[1]=temp; - return up; - } - - real *gamma=new real[n-2]; - real *delta=new real[n-2]; - - gamma[0]=read<real>(c,0)*binv; - delta[0]=read<real>(a,0)*binv; - u[0]=read<real>(f,0)*binv; - real beta=read<real>(c,n-1); - real fn=read<real>(f,n-1)-beta*read<real>(u,0); - real alpha=read<real>(b,n-1)-beta*delta[0]; - - for(size_t i=1; i <= n-3; i++) { - real alphainv=read<real>(b,i)-read<real>(a,i)*gamma[i-1]; - if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} - alphainv=1.0/alphainv; - beta *= -gamma[i-1]; - gamma[i]=read<real>(c,i)*alphainv; - u[i]=(read<real>(f,i)-read<real>(a,i)*read<real>(u,i-1))*alphainv; - fn -= beta*read<real>(u,i); - delta[i]=-read<real>(a,i)*delta[i-1]*alphainv; - alpha -= beta*delta[i]; - } - - real alphainv=read<real>(b,n-2)-read<real>(a,n-2)*gamma[n-3]; - if(alphainv == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} - alphainv=1.0/alphainv; - u[n-2]=(read<real>(f,n-2)-read<real>(a,n-2)*read<real>(u,n-3)) - *alphainv; - beta=read<real>(a,n-1)-beta*gamma[n-3]; - real dnm1=(read<real>(c,n-2)-read<real>(a,n-2)*delta[n-3])*alphainv; - real temp=alpha-beta*dnm1; - if(temp == 0.0) {delete[] gamma; delete[] delta; dividebyzero();} - u[n-1]=temp=(fn-beta*read<real>(u,n-2))/temp; - u[n-2]=read<real>(u,n-2)-dnm1*temp; - - for(size_t i=n-2; i >= 1; i--) - u[i-1]=read<real>(u,i-1)-gamma[i-1]*read<real>(u,i)-delta[i-1]*temp; - - delete[] delta; - delete[] gamma; - - return up; -} - -// Root solve by Newton-Raphson -real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x, - bool verbose=false) -{ - static const real fuzz=1000.0*DBL_EPSILON; - Int i=0; - size_t oldPrec=0; - if(verbose) - oldPrec=cout.precision(DBL_DIG); - - real diff=DBL_MAX; - real lastdiff; - do { - real x0=x; - - Stack->push(x); - fprime->call(Stack); - real dfdx=pop<real>(Stack); - - if(dfdx == 0.0) { - x=DBL_MAX; - break; - } - - Stack->push(x); - f->call(Stack); - real fx=pop<real>(Stack); - - x -= fx/dfdx; - - lastdiff=diff; - - if(verbose) - cout << "Newton-Raphson: " << x << endl; - - diff=fabs(x-x0); - if(++i == iterations) { - x=DBL_MAX; - break; - } - } while (diff != 0.0 && (diff < lastdiff || diff > fuzz*fabs(x))); - if(verbose) - cout.precision(oldPrec); - return x; -} - -// Root solve by Newton-Raphson bisection -// cf. routine rtsafe (Press et al., Numerical Recipes, 1991). -real newton(Int iterations=100, callableReal *f, callableReal *fprime, real x1, - real x2, bool verbose=false) -{ - static const real fuzz=1000.0*DBL_EPSILON; - size_t oldPrec=0; - if(verbose) - oldPrec=cout.precision(DBL_DIG); - - Stack->push(x1); - f->call(Stack); - real f1=pop<real>(Stack); - if(f1 == 0.0) return x1; - - Stack->push(x2); - f->call(Stack); - real f2=pop<real>(Stack); - if(f2 == 0.0) return x2; - - if((f1 > 0.0 && f2 > 0.0) || (f1 < 0.0 && f2 < 0.0)) { - ostringstream buf; - buf << "root not bracketed, f(x1)=" << f1 << ", f(x2)=" << f2 << endl; - error(buf); - } - - real x=0.5*(x1+x2); - real dxold=fabs(x2-x1); - if(f1 > 0.0) { - real temp=x1; - x1=x2; - x2=temp; - } - - if(verbose) - cout << "midpoint: " << x << endl; - - real dx=dxold; - Stack->push(x); - f->call(Stack); - real y=pop<real>(Stack); - - Stack->push(x); - fprime->call(Stack); - real dy=pop<real>(Stack); - - Int j; - for(j=0; j < iterations; j++) { - if(((x-x2)*dy-y)*((x-x1)*dy-y) >= 0.0 || fabs(2.0*y) > fabs(dxold*dy)) { - dxold=dx; - dx=0.5*(x2-x1); - x=x1+dx; - if(verbose) - cout << "bisection: " << x << endl; - if(x1 == x) return x; - } else { - dxold=dx; - dx=y/dy; - real temp=x; - x -= dx; - if(verbose) - cout << "Newton-Raphson: " << x << endl; - if(temp == x) return x; - } - if(fabs(dx) < fuzz*fabs(x)) return x; - - Stack->push(x); - f->call(Stack); - y=pop<real>(Stack); - - Stack->push(x); - fprime->call(Stack); - dy=pop<real>(Stack); - - if(y < 0.0) x1=x; - else x2=x; - } - if(verbose) - cout.precision(oldPrec); - return (j == iterations) ? DBL_MAX : x; -} - -real simpson(callableReal *f, real a, real b, real acc=DBL_EPSILON, - real dxmax=0) -{ - real integral; - if(dxmax == 0) dxmax=b-a; - Func=f; - FuncStack=Stack; - if(!simpson(integral,wrapFunction,a,b,acc,dxmax)) - error("nesting capacity exceeded in simpson"); - return integral; -} - -// Compute the fast Fourier transform of a pair array -pairarray* :pairArrayFFT(pairarray *a, Int sign=1) -{ - unsigned n=(unsigned) checkArray(a); -#ifdef HAVE_LIBFFTW3 - array *c=new array(n); - if(n) { - Complex *f=FFTWComplex(n); - fft1d Forward(n,intcast(sign),f); - - for(size_t i=0; i < n; i++) { - pair z=read<pair>(a,i); - f[i]=Complex(z.getx(),z.gety()); - } - Forward.fft(f); - - for(size_t i=0; i < n; i++) { - Complex z=f[i]; - (*c)[i]=pair(z.real(),z.imag()); - } - FFTWdelete(f); - } -#else - unused(&n); - unused(&sign); - array *c=new array(0); -#endif // HAVE_LIBFFTW3 - return c; -} - -Intarray2 *triangulate(pairarray *z) -{ - size_t nv=checkArray(z); -// Call robust version of Gilles Dumoulin's port of Paul Bourke's -// triangulation code. - - XYZ *pxyz=new XYZ[nv+3]; - ITRIANGLE *V=new ITRIANGLE[4*nv]; - - for(size_t i=0; i < nv; ++i) { - pair w=read<pair>(z,i); - pxyz[i].p[0]=w.getx(); - pxyz[i].p[1]=w.gety(); - pxyz[i].i=(Int) i; - } - - Int ntri; - Triangulate((Int) nv,pxyz,V,ntri,true,false); - - size_t nt=(size_t) ntri; - array *t=new array(nt); - for(size_t i=0; i < nt; ++i) { - array *ti=new array(3); - (*t)[i]=ti; - ITRIANGLE *Vi=V+i; - (*ti)[0]=pxyz[Vi->p1].i; - (*ti)[1]=pxyz[Vi->p2].i; - (*ti)[2]=pxyz[Vi->p3].i; - } - - delete[] V; - delete[] pxyz; - return t; -} - - -// File operations - -bool ==(file *a, file *b) -{ - return a == b; -} - -bool !=(file *a, file *b) -{ - return a != b; -} - -file* :nullFile() -{ - return &camp::nullfile; -} - -file* input(string name, bool check=true, string comment=commentchar) -{ - char c=comment.empty() ? (char) 0 : comment[0]; - file *f=new ifile(name,c,check); - f->open(); - return f; -} - -file* output(string name, bool update=false, string comment=commentchar) -{ - file *f; - if(update) { - char c=comment.empty() ? (char) 0 : comment[0]; - f=new iofile(name,c); - } else f=new ofile(name); - f->open(); - if(update) f->seek(0,false); - return f; -} - -file* xinput(string name, bool check=true) -{ -#ifdef HAVE_RPC_RPC_H - file *f=new ixfile(name,check); - f->open(); - return f; -#else - ostringstream buf; - buf << name << ": XDR read support not enabled"; - error(buf); - unused(&check); // Suppress unused variable warning -#endif -} - -file* xoutput(string name, bool update=false) -{ -#ifdef HAVE_RPC_RPC_H - file *f; - if(update) - f=new ioxfile(name); - else f=new oxfile(name); - f->open(); - if(update) f->seek(0,false); - return f; -#else - ostringstream buf; - buf << name << ": XDR write support not enabled"; - error(buf); - unused(&update); // Suppress unused variable warning -#endif -} - -file* binput(string name, bool check=true) -{ - file *f=new ibfile(name,check); - f->open(); - return f; -} - -file* boutput(string name, bool update=false) -{ - file *f; - if(update) f=new iobfile(name); - else f=new obfile(name); - f->open(); - if(update) f->seek(0,false); - return f; -} - -bool eof(file *f) -{ - return f->eof(); -} - -bool eol(file *f) -{ - return f->eol(); -} - -bool error(file *f) -{ - return f->error(); -} - -void clear(file *f) -{ - f->clear(); -} - -void close(file *f) -{ - f->close(); -} - -Int precision(file *f=NULL, Int digits=0) -{ - if(f == 0) f=&camp::Stdout; - return f->precision(digits); -} - -void flush(file *f) -{ - f->flush(); -} - -string getc(file *f) -{ - char c=0; - if(f->isOpen()) f->read(c); - static char str[1]; - str[0]=c; - return string(str); -} - -Int tell(file *f) -{ - return f->tell(); -} - -void seek(file *f, Int pos) -{ - f->seek(pos,pos >= 0); -} - -void seekeof(file *f) -{ - f->seek(0,false); -} - -string :namePart(file f) -{ - return f.filename(); -} - -string :modePart(file f) -{ - return f.FileMode(); -} - -// Set file dimensions -file* :dimensionSetHelper(Int nx=-1, Int ny=-1, Int nz=-1, file *f) -{ - f->dimension(nx,ny,nz); - return f; -} - -callable* :dimensionSet(file *f) -{ - return new thunk(new bfunc(dimensionSetHelper),f); -} - -array * :dimensionPart(file f) -{ - array *a=new array(3); - (*a)[0]=f.Nx(); - (*a)[1]=f.Ny(); - (*a)[2]=f.Nz(); - return a; -} - -// Set file f to read arrays in line-at-a-time mode -file* :lineSetHelper(bool b=true, file *f) -{ - f->LineMode(b); - return f; -} - -callable* :lineSet(file *f) -{ - return new thunk(new bfunc(lineSetHelper),f); -} - -bool :linePart(file f) -{ - return f.LineMode(); -} - -// Set file to read comma-separated values -file* :csvSetHelper(bool b=true, file *f) -{ - f->CSVMode(b); - return f; -} - -callable* :csvSet(file *f) -{ - return new thunk(new bfunc(csvSetHelper),f); -} - -bool :csvPart(file f) -{ - return f.CSVMode(); -} - -// Set file to read whitespace-separated values -file* :wordSetHelper(bool b=true, file *f) -{ - f->WordMode(b); - return f; -} - -callable* :wordSet(file *f) -{ - return new thunk(new bfunc(wordSetHelper),f); -} - -bool :wordPart(file f) -{ - return f.WordMode(); -} - -// Set file to read/write single precision real XDR values. -file* :singlerealSetHelper(bool b=true, file *f) -{ - f->SingleReal(b); - return f; -} - -callable* :singlerealSet(file *f) -{ - return new thunk(new bfunc(singlerealSetHelper),f); -} - -bool :singlerealPart(file f) -{ - return f.SingleReal(); -} - -// Set file to read/write single precision int XDR values. -file* :singleintSetHelper(bool b=true, file *f) -{ - f->SingleInt(b); - return f; -} - -callable* :singleintSet(file *f) -{ - return new thunk(new bfunc(singleintSetHelper),f); -} - -bool :singleintPart(file f) -{ - return f.SingleInt(); -} - -// Set file to read/write signed int XDR values. -file* :signedintSetHelper(bool b=true, file *f) -{ - f->SignedInt(b); - return f; -} - -callable* :signedintSet(file *f) -{ - return new thunk(new bfunc(signedintSetHelper),f); -} - -bool :signedintPart(file f) -{ - return f.SignedInt(); -} - -// Set file to read an arrayi (i int sizes followed by an i-dimensional array) -file* :readSetHelper(Int i, file *f) -{ - switch(i) { - case 1: - f->dimension(-2); - break; - - case 2: - f->dimension(-2,-2); - break; - - case 3: - f->dimension(-2,-2,-2); - break; - - default: - f->dimension(); - } - - return f; -} - -callable* :readSet(file *f) -{ - return new thunk(new bfunc(readSetHelper),f); -} - -// Return the last n lines of the history named name. -stringarray* history(string name, Int n=1) -{ -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - bool newhistory=historyMap.find(name) == historyMap.end(); - - string filename; - - if(newhistory) { - filename=historyfilename(name); - std::ifstream exists(filename.c_str()); - if(!exists) return new array(0); - } - - store_history(&history_save); - HISTORY_STATE& history=historyMap[name].state; - history_set_history_state(&history); - - if(newhistory) - read_history(filename.c_str()); - - array *a=get_history(n); - - store_history(&history); - history_set_history_state(&history_save); - - return a; -#else - unused(&n); - return new array(0); -#endif -} - -// Return the last n lines of the interactive history. -stringarray* history(Int n=0) -{ -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - return get_history(n); -#else - unused(&n); - return new array(0); -#endif -} - -// Prompt for a string using prompt, the GNU readline library, and a -// local history named name. -string readline(string prompt=emptystring, string name=emptystring, - bool tabcompletion=false) -{ - if(!(isatty(STDIN_FILENO) || getSetting<bool>("interactive"))) - return emptystring; -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - init_readline(tabcompletion); - - store_history(&history_save); - bool newhistory=historyMap.find(name) == historyMap.end(); - historyState& h=historyMap[name]; - HISTORY_STATE& history=h.state; - history_set_history_state(&history); - - if(newhistory) - read_history(historyfilename(name).c_str()); - - static char *line=NULL; - /* Return the memory to the free pool - if the buffer has already been allocated. */ - if(line) { - free(line); - line=NULL; - } - - /* Get a line from the user. */ - line=readline(prompt.c_str()); - - if(!line) cout << endl; - - history_set_history_state(&history_save); - - return line ? string(line) : emptystring; -#else - cout << prompt; - string s; - getline(cin,s); - unused(&tabcompletion); // Avoid unused variable warning message. - return s; -#endif -} - -// Save a string in a local history named name. -// If store=true, store the local history in the file historyfilename(name). -void saveline(string name, string value, bool store=true) -{ -#if defined(HAVE_LIBREADLINE) && defined(HAVE_LIBCURSES) - store_history(&history_save); - bool newhistory=historyMap.find(name) == historyMap.end(); - historyState& h=historyMap[name]; - h.store=store; - HISTORY_STATE& history=h.state; - history_set_history_state(&history); - - if(newhistory) - read_history(historyfilename(name).c_str()); - - if(value != "") { - add_history(value.c_str()); - if(store) { - std::ofstream hout(historyfilename(name).c_str(),std::ios::app); - hout << value << endl; - } - } - - store_history(&history); - history_set_history_state(&history_save); -#else - unused(&store); -#endif -} diff --git a/Build/source/utils/asymptote/runtimebase.in b/Build/source/utils/asymptote/runtimebase.in index b7c13d590fd..87f928f4c4d 100644 --- a/Build/source/utils/asymptote/runtimebase.in +++ b/Build/source/utils/asymptote/runtimebase.in @@ -25,14 +25,46 @@ string => primString() #include "builtin.h" #include "entry.h" #include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" using vm::stack; using vm::error; +using vm::array; +using vm::callable; using types::formal; +using types::function; +using camp::triple; #define PRIMITIVE(name,Name,asyName) using types::prim##Name; #include <primitives.h> #undef PRIMITIVE +typedef double real; + void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen diff --git a/Build/source/utils/asymptote/runtriple.cc b/Build/source/utils/asymptote/runtriple.cc new file mode 100644 index 00000000000..52162c29784 --- /dev/null +++ b/Build/source/utils/asymptote/runtriple.cc @@ -0,0 +1,424 @@ +/***** Autogenerated from runtriple.in; changes will be overwritten *****/ + +#line 1 "runtimebase.in" +/***** + * runtimebase.in + * Andy Hammerlindl 2009/07/28 + * + * Common declarations needed for all code-generating .in files. + * + *****/ + + +#line 1 "runtriple.in" +/***** + * runtriple.in + * + * Runtime functions for triple operations. + * + *****/ + +#line 1 "runtimebase.in" +#include "stack.h" +#include "types.h" +#include "builtin.h" +#include "entry.h" +#include "errormsg.h" +#include "array.h" +#include "triple.h" +#include "callable.h" + +using vm::stack; +using vm::error; +using vm::array; +using vm::callable; +using types::formal; +using types::function; +using camp::triple; + +#define PRIMITIVE(name,Name,asyName) using types::prim##Name; +#include <primitives.h> +#undef PRIMITIVE + +typedef double real; + +void unused(void *); + +namespace run { +array *copyArray(array *a); +array *copyArray2(array *a); +array *copyArray3(array *a); + +double *copyArrayC(const array *a, size_t dim=0); +double *copyArray2C(const array *a, bool square=true, size_t dim2=0); + +triple *copyTripleArrayC(const array *a, size_t dim=0); +triple *copyTripleArray2C(const array *a, bool square=true, size_t dim2=0); +double *copyTripleArray2Components(array *a, bool square=true, size_t dim2=0); +} + +function *realRealFunction(); + +// Return the component of vector v perpendicular to a unit vector u. +inline triple perp(triple v, triple u) +{ + return v-dot(v,u)*u; +} + +#define CURRENTPEN processData().currentpen + +#line 10 "runtriple.in" +#include "triple.h" +#include "path3.h" + +using namespace camp; + +// Autogenerated routines: + + + +namespace run { +#line 18 "runtriple.in" +void tripleZero(stack *Stack) +{ +#line 19 "runtriple.in" + static triple zero; + {Stack->push<triple>(zero); return;} +} + +#line 24 "runtriple.in" +void realRealRealToTriple(stack *Stack) +{ + real z=vm::pop<real>(Stack); + real y=vm::pop<real>(Stack); + real x=vm::pop<real>(Stack); +#line 25 "runtriple.in" + {Stack->push<triple>(triple(x,y,z)); return;} +} + +#line 29 "runtriple.in" +// real xpart(triple v); +void tripleXPart(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); +#line 30 "runtriple.in" + {Stack->push<real>(v.getx()); return;} +} + +#line 34 "runtriple.in" +// real ypart(triple v); +void tripleYPart(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); +#line 35 "runtriple.in" + {Stack->push<real>(v.gety()); return;} +} + +#line 39 "runtriple.in" +// real zpart(triple v); +void tripleZPart(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); +#line 40 "runtriple.in" + {Stack->push<real>(v.getz()); return;} +} + +#line 44 "runtriple.in" +// triple *(real x, triple v); +void gen_runtriple5(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); + real x=vm::pop<real>(Stack); +#line 45 "runtriple.in" + {Stack->push<triple>(x*v); return;} +} + +#line 49 "runtriple.in" +// triple *(triple v, real x); +void gen_runtriple6(stack *Stack) +{ + real x=vm::pop<real>(Stack); + triple v=vm::pop<triple>(Stack); +#line 50 "runtriple.in" + {Stack->push<triple>(v*x); return;} +} + +#line 54 "runtriple.in" +// triple /(triple v, real x); +void gen_runtriple7(stack *Stack) +{ + real x=vm::pop<real>(Stack); + triple v=vm::pop<triple>(Stack); +#line 55 "runtriple.in" + {Stack->push<triple>(v/x); return;} +} + +#line 59 "runtriple.in" +// real length(triple v); +void gen_runtriple8(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); +#line 60 "runtriple.in" + {Stack->push<real>(v.length()); return;} +} + +#line 64 "runtriple.in" +// real abs(triple v); +void gen_runtriple9(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); +#line 65 "runtriple.in" + {Stack->push<real>(v.length()); return;} +} + +#line 69 "runtriple.in" +// real polar(triple v, bool warn=true); +void gen_runtriple10(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + triple v=vm::pop<triple>(Stack); +#line 70 "runtriple.in" + if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(v.polar()); return;} +} + +#line 75 "runtriple.in" +// real azimuth(triple v, bool warn=true); +void gen_runtriple11(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + triple v=vm::pop<triple>(Stack); +#line 76 "runtriple.in" + if(!warn && v.getx() == 0.0 && v.gety() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(v.azimuth()); return;} +} + +#line 81 "runtriple.in" +// real colatitude(triple v, bool warn=true); +void gen_runtriple12(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + triple v=vm::pop<triple>(Stack); +#line 82 "runtriple.in" + if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(degrees(v.polar())); return;} +} + +#line 87 "runtriple.in" +// real latitude(triple v, bool warn=true); +void gen_runtriple13(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + triple v=vm::pop<triple>(Stack); +#line 88 "runtriple.in" + if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(90.0-degrees(v.polar())); return;} +} + +// Return the longitude of v in [0,360). +#line 94 "runtriple.in" +// real longitude(triple v, bool warn=true); +void gen_runtriple14(stack *Stack) +{ + bool warn=vm::pop<bool>(Stack,true); + triple v=vm::pop<triple>(Stack); +#line 95 "runtriple.in" + if(!warn && v.getx() == 0.0 && v.gety() == 0.0) {Stack->push<real>(0.0); return;} + {Stack->push<real>(principalBranch(degrees(v.azimuth()))); return;} +} + +#line 100 "runtriple.in" +// triple unit(triple v); +void gen_runtriple15(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); +#line 101 "runtriple.in" + {Stack->push<triple>(unit(v)); return;} +} + +#line 105 "runtriple.in" +// real dot(triple u, triple v); +void gen_runtriple16(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); + triple u=vm::pop<triple>(Stack); +#line 106 "runtriple.in" + {Stack->push<real>(dot(u,v)); return;} +} + +#line 110 "runtriple.in" +// triple cross(triple u, triple v); +void gen_runtriple17(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); + triple u=vm::pop<triple>(Stack); +#line 111 "runtriple.in" + {Stack->push<triple>(cross(u,v)); return;} +} + +#line 115 "runtriple.in" +// triple dir(explicit triple z); +void gen_runtriple18(stack *Stack) +{ + triple z=vm::pop<triple>(Stack); +#line 116 "runtriple.in" + {Stack->push<triple>(unit(z)); return;} +} + +#line 120 "runtriple.in" +// triple expi(real polar, real azimuth); +void gen_runtriple19(stack *Stack) +{ + real azimuth=vm::pop<real>(Stack); + real polar=vm::pop<real>(Stack); +#line 121 "runtriple.in" + {Stack->push<triple>(expi(polar,azimuth)); return;} +} + +#line 125 "runtriple.in" +// triple dir(real colatitude, real longitude); +void gen_runtriple20(stack *Stack) +{ + real longitude=vm::pop<real>(Stack); + real colatitude=vm::pop<real>(Stack); +#line 126 "runtriple.in" + {Stack->push<triple>(expi(radians(colatitude),radians(longitude))); return;} +} + +#line 130 "runtriple.in" +// triple realmult(triple u, triple v); +void gen_runtriple21(stack *Stack) +{ + triple v=vm::pop<triple>(Stack); + triple u=vm::pop<triple>(Stack); +#line 131 "runtriple.in" + {Stack->push<triple>(triple (u.getx()*v.getx(),u.gety()*v.gety(),u.getz()*v.getz())); return;} +} + +// Return the component of vector v perpendicular to a unit vector u. +#line 136 "runtriple.in" +// triple perp(triple v, triple u); +void gen_runtriple22(stack *Stack) +{ + triple u=vm::pop<triple>(Stack); + triple v=vm::pop<triple>(Stack); +#line 137 "runtriple.in" + {Stack->push<triple>(perp(v,u)); return;} +} + +#line 141 "runtriple.in" +// triple bezier(triple a, triple b, triple c, triple d, real t); +void gen_runtriple23(stack *Stack) +{ + real t=vm::pop<real>(Stack); + triple d=vm::pop<triple>(Stack); + triple c=vm::pop<triple>(Stack); + triple b=vm::pop<triple>(Stack); + triple a=vm::pop<triple>(Stack); +#line 142 "runtriple.in" + real onemt=1-t; + real onemt2=onemt*onemt; + {Stack->push<triple>(onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d)); return;} +} + +#line 148 "runtriple.in" +// triple bezierP(triple a, triple b, triple c, triple d, real t); +void gen_runtriple24(stack *Stack) +{ + real t=vm::pop<real>(Stack); + triple d=vm::pop<triple>(Stack); + triple c=vm::pop<triple>(Stack); + triple b=vm::pop<triple>(Stack); + triple a=vm::pop<triple>(Stack); +#line 149 "runtriple.in" + {Stack->push<triple>(3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a)); return;} +} + +#line 153 "runtriple.in" +// triple bezierPP(triple a, triple b, triple c, triple d, real t); +void gen_runtriple25(stack *Stack) +{ + real t=vm::pop<real>(Stack); + triple d=vm::pop<triple>(Stack); + triple c=vm::pop<triple>(Stack); + triple b=vm::pop<triple>(Stack); + triple a=vm::pop<triple>(Stack); +#line 154 "runtriple.in" + {Stack->push<triple>(6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b)); return;} +} + +#line 158 "runtriple.in" +// triple bezierPPP(triple a, triple b, triple c, triple d); +void gen_runtriple26(stack *Stack) +{ + triple d=vm::pop<triple>(Stack); + triple c=vm::pop<triple>(Stack); + triple b=vm::pop<triple>(Stack); + triple a=vm::pop<triple>(Stack); +#line 159 "runtriple.in" + {Stack->push<triple>(6.0*(d-a+3.0*(b-c))); return;} +} + +} // namespace run + +namespace trans { + +void gen_runtriple_venv(venv &ve) +{ +#line 18 "runtriple.in" + REGISTER_BLTIN(run::tripleZero,"tripleZero"); +#line 24 "runtriple.in" + REGISTER_BLTIN(run::realRealRealToTriple,"realRealRealToTriple"); +#line 29 "runtriple.in" + addFunc(ve, run::tripleXPart, primReal(), "xpart", formal(primTriple(), "v", false, false)); +#line 34 "runtriple.in" + addFunc(ve, run::tripleYPart, primReal(), "ypart", formal(primTriple(), "v", false, false)); +#line 39 "runtriple.in" + addFunc(ve, run::tripleZPart, primReal(), "zpart", formal(primTriple(), "v", false, false)); +#line 44 "runtriple.in" + addFunc(ve, run::gen_runtriple5, primTriple(), "*", formal(primReal(), "x", false, false), formal(primTriple(), "v", false, false)); +#line 49 "runtriple.in" + addFunc(ve, run::gen_runtriple6, primTriple(), "*", formal(primTriple(), "v", false, false), formal(primReal(), "x", false, false)); +#line 54 "runtriple.in" + addFunc(ve, run::gen_runtriple7, primTriple(), "/", formal(primTriple(), "v", false, false), formal(primReal(), "x", false, false)); +#line 59 "runtriple.in" + addFunc(ve, run::gen_runtriple8, primReal(), "length", formal(primTriple(), "v", false, false)); +#line 64 "runtriple.in" + addFunc(ve, run::gen_runtriple9, primReal(), "abs", formal(primTriple(), "v", false, false)); +#line 69 "runtriple.in" + addFunc(ve, run::gen_runtriple10, primReal(), "polar", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); +#line 75 "runtriple.in" + addFunc(ve, run::gen_runtriple11, primReal(), "azimuth", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); +#line 81 "runtriple.in" + addFunc(ve, run::gen_runtriple12, primReal(), "colatitude", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); +#line 87 "runtriple.in" + addFunc(ve, run::gen_runtriple13, primReal(), "latitude", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); +#line 93 "runtriple.in" + addFunc(ve, run::gen_runtriple14, primReal(), "longitude", formal(primTriple(), "v", false, false), formal(primBoolean(), "warn", true, false)); +#line 100 "runtriple.in" + addFunc(ve, run::gen_runtriple15, primTriple(), "unit", formal(primTriple(), "v", false, false)); +#line 105 "runtriple.in" + addFunc(ve, run::gen_runtriple16, primReal(), "dot", formal(primTriple(), "u", false, false), formal(primTriple(), "v", false, false)); +#line 110 "runtriple.in" + addFunc(ve, run::gen_runtriple17, primTriple(), "cross", formal(primTriple(), "u", false, false), formal(primTriple(), "v", false, false)); +#line 115 "runtriple.in" + addFunc(ve, run::gen_runtriple18, primTriple(), "dir", formal(primTriple(), "z", false, true)); +#line 120 "runtriple.in" + addFunc(ve, run::gen_runtriple19, primTriple(), "expi", formal(primReal(), "polar", false, false), formal(primReal(), "azimuth", false, false)); +#line 125 "runtriple.in" + addFunc(ve, run::gen_runtriple20, primTriple(), "dir", formal(primReal(), "colatitude", false, false), formal(primReal(), "longitude", false, false)); +#line 130 "runtriple.in" + addFunc(ve, run::gen_runtriple21, primTriple(), "realmult", formal(primTriple(), "u", false, false), formal(primTriple(), "v", false, false)); +#line 135 "runtriple.in" + addFunc(ve, run::gen_runtriple22, primTriple(), "perp", formal(primTriple(), "v", false, false), formal(primTriple(), "u", false, false)); +#line 141 "runtriple.in" + addFunc(ve, run::gen_runtriple23, primTriple(), "bezier", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false), formal(primReal(), "t", false, false)); +#line 148 "runtriple.in" + addFunc(ve, run::gen_runtriple24, primTriple(), "bezierP", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false), formal(primReal(), "t", false, false)); +#line 153 "runtriple.in" + addFunc(ve, run::gen_runtriple25, primTriple(), "bezierPP", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false), formal(primReal(), "t", false, false)); +#line 158 "runtriple.in" + addFunc(ve, run::gen_runtriple26, primTriple(), "bezierPPP", formal(primTriple(), "a", false, false), formal(primTriple(), "b", false, false), formal(primTriple(), "c", false, false), formal(primTriple(), "d", false, false)); +} + +} // namespace trans diff --git a/Build/source/utils/asymptote/runtriple.h b/Build/source/utils/asymptote/runtriple.h new file mode 100644 index 00000000000..aff21b39fc3 --- /dev/null +++ b/Build/source/utils/asymptote/runtriple.h @@ -0,0 +1,13 @@ +/***** Autogenerated from runtriple.in; changes will be overwritten *****/ + +#ifndef runtriple_H +#define runtriple_H +namespace run { +void tripleZero(vm::stack *); +void realRealRealToTriple(vm::stack *); +void tripleXPart(vm::stack *); +void tripleYPart(vm::stack *); +void tripleZPart(vm::stack *); +} + +#endif // runtriple_H diff --git a/Build/source/utils/asymptote/runtriple.in b/Build/source/utils/asymptote/runtriple.in new file mode 100644 index 00000000000..b12e9368e02 --- /dev/null +++ b/Build/source/utils/asymptote/runtriple.in @@ -0,0 +1,162 @@ +/***** + * runtriple.in + * + * Runtime functions for triple operations. + * + *****/ + +triple => primTriple() + +#include "triple.h" +#include "path3.h" + +using namespace camp; + +// Autogenerated routines: + + +triple :tripleZero() +{ + static triple zero; + return zero; +} + +triple :realRealRealToTriple(real x, real y, real z) +{ + return triple(x,y,z); +} + +real xpart:tripleXPart(triple v) +{ + return v.getx(); +} + +real ypart:tripleYPart(triple v) +{ + return v.gety(); +} + +real zpart:tripleZPart(triple v) +{ + return v.getz(); +} + +triple Operator *(real x, triple v) +{ + return x*v; +} + +triple Operator *(triple v, real x) +{ + return v*x; +} + +triple /(triple v, real x) +{ + return v/x; +} + +real length(triple v) +{ + return v.length(); +} + +real abs(triple v) +{ + return v.length(); +} + +real polar(triple v, bool warn=true) +{ + if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) return 0.0; + return v.polar(); +} + +real azimuth(triple v, bool warn=true) +{ + if(!warn && v.getx() == 0.0 && v.gety() == 0.0) return 0.0; + return v.azimuth(); +} + +real colatitude(triple v, bool warn=true) +{ + if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) return 0.0; + return degrees(v.polar()); +} + +real latitude(triple v, bool warn=true) +{ + if(!warn && v.getx() == 0.0 && v.gety() == 0.0 && v.getz() == 0.0) return 0.0; + return 90.0-degrees(v.polar()); +} + +// Return the longitude of v in [0,360). +real longitude(triple v, bool warn=true) +{ + if(!warn && v.getx() == 0.0 && v.gety() == 0.0) return 0.0; + return principalBranch(degrees(v.azimuth())); +} + +triple unit(triple v) +{ + return unit(v); +} + +real dot(triple u, triple v) +{ + return dot(u,v); +} + +triple cross(triple u, triple v) +{ + return cross(u,v); +} + +triple dir(explicit triple z) +{ + return unit(z); +} + +triple expi(real polar, real azimuth) +{ + return expi(polar,azimuth); +} + +triple dir(real colatitude, real longitude) +{ + return expi(radians(colatitude),radians(longitude)); +} + +triple realmult(triple u, triple v) +{ + return triple (u.getx()*v.getx(),u.gety()*v.gety(),u.getz()*v.getz()); +} + +// Return the component of vector v perpendicular to a unit vector u. +triple perp(triple v, triple u) +{ + return perp(v,u); +} + +triple bezier(triple a, triple b, triple c, triple d, real t) +{ + real onemt=1-t; + real onemt2=onemt*onemt; + return onemt2*onemt*a+t*(3.0*(onemt2*b+t*onemt*c)+t*t*d); +} + +triple bezierP(triple a, triple b, triple c, triple d, real t) +{ + return 3.0*(t*t*(d-a+3.0*(b-c))+t*(2.0*(a+c)-4.0*b)+b-a); +} + +triple bezierPP(triple a, triple b, triple c, triple d, real t) +{ + return 6.0*(t*(d-a+3.0*(b-c))+a+c-2.0*b); +} + +triple bezierPPP(triple a, triple b, triple c, triple d) +{ + return 6.0*(d-a+3.0*(b-c)); +} + diff --git a/Build/source/utils/asymptote/types.cc b/Build/source/utils/asymptote/types.cc index 6fa8489eb31..20d36363757 100644 --- a/Build/source/utils/asymptote/types.cc +++ b/Build/source/utils/asymptote/types.cc @@ -12,6 +12,10 @@ #include "entry.h" #include "types.h" #include "runtime.h" +#include "runarray.h" +#include "runfile.h" +#include "runpair.h" +#include "runtriple.h" #include "access.h" #include "virtualfieldaccess.h" diff --git a/Build/source/utils/asymptote/varinit.cc b/Build/source/utils/asymptote/varinit.cc index 9b53dae8500..e84c62bb7e4 100644 --- a/Build/source/utils/asymptote/varinit.cc +++ b/Build/source/utils/asymptote/varinit.cc @@ -12,6 +12,7 @@ #include "varinit.h" #include "coenv.h" #include "runtime.h" +#include "runarray.h" namespace absyntax { diff --git a/Build/source/utils/asymptote/virtualfieldaccess.cc b/Build/source/utils/asymptote/virtualfieldaccess.cc index 13cb088d2ac..810c71fa3f5 100644 --- a/Build/source/utils/asymptote/virtualfieldaccess.cc +++ b/Build/source/utils/asymptote/virtualfieldaccess.cc @@ -10,7 +10,7 @@ namespace trans { -inline void virtualFieldAccess::encode(action act, position pos, coder &e) +void virtualFieldAccess::encode(action act, position pos, coder &e) { switch(act) { case CALL: |