Parent Directory | Revision Log
Links to HEAD: | (view) (download) (annotate) |
Sticky Tag: |
Added "2011" to copyright notice or notices. In some cases, this required reformatting.
Updated copyright notice.
Updated copyright notice.
Added "2010" to copyright notices.
Added "2010" to copyright notices.
Updated.
Updated.
Finished first sundial example. Removed the parser rules for getting the plane of planar objects using a syntax similar to a cast in C, e.g., circle c; c := unit_circle; plane q; q := (plane) c; I have replaced `(plane)' with `get_plane', e.g., q := get_plane c
Working on parser rules and functions for `conic_section_lattices'.
Working on parser rules and functions for `Conic_Section_Lattices'.
Intersection of a `conic_section_lattices' and a linear `path'. This doesn't work yet.
Changed the commands labelling `conic_section_lattices'. They now take the same arguments as the other labelling commands.
Added parser rules for reversing vector-type objects (actually variables). Added code for reversing objects of all vector-types. I've tested a few and it seems to work.
Working on making the `reverse' command handle more vector-types.
Working on the `traverse' command. It's now possible for the start value to be greater than or equal to the end value. In the latter case, a `point_vector' containing a single `point' is returned. It's now possible to reverse the order of the `points' on a `point_vector' by using the `reverse' command. `reverse' can be called on other vector-type objects (actually vector-type variables), but this doesn't work yet for any other types. Instead, a warning is issued.
Working on traversing a parabola. This works, but not quite the way I'd like.
|Conic_Section_Lattice::traverse| in `cncsctlt.web' seems to be working now. Added a "pared-down" version of |Conic_Section_Lattice::get_point| for use in |traverse|.
Working on |Conic_Section_Lattice::traverse| in `cncsctlt.web'.
Working on |Conic_Section_Lattice::traverse| in `cncsctlt.web'. It almost works right, but not quite.
Working on parser rules and functions for getting points from `conic_section_lattices' and traversing them. I've now installed Bison 2.3 because Bison 1.875 aborted when trying to process `parser.y++'. Version 2.3 works fine. I've revised a couple of rules so that they're now the way I want them to be. I've begun removing some unnecessary rules in order to reduce the number of states defined by the parser. I would have liked to keep them for the sake of making the logical structure of the grammar clearer, but this may be one of the reasons Bison 1.875 was failing. Users will also have to install Bison 2.3 or compile the `parser.c++' in the distribution instead of rebuilding it.
Made an elaborate example of using `get_point' on a `conic_section_lattice'.
Forgot to check in `Group/CWEB/pvcmncmd.w' last time I committed files.
Got the `get_point' operation for `conic_section_lattices' to work.
Working on |Conic_Section_Lattice::get_point|.
Working on `conic_section_lattices'.
Working on |Conic_Section_Lattice|, |Conic_Section_Lattice_Options|, and their associated parser rules and functions.
Working on |class Conic_Section_Lattice|, |struct Conic_Section_Lattice_Options|, and their associated functions and parser rules.
Working on parser rules for `conic_section_lattice'.
Working on `class Conic_Section_Lattice', `struct Conic_Section_Lattice_Options', and the parser rules and functions associated with them.
Added code for `class Conic_Section_Lattice' and `struct Conic_Section_Lattice_Options'. Added a complete set of parser rules for `conic_section_lattices' and `conic_section_lattice_vectors'. They don't do anything yet, however.
"Rectifying" points now works. This means arranging them in order about an approximate center. This is needed for `get_ellipse', `get_circle', `get_parabola', and `get_hyperbola'.
Working on |Pointer_Vector<Point, Point>::rectify| in `pntrvcf0.web'. This is for "rectifying" `points' on a `point_vector', which means placing them in order around an approximate center. This is needed for generating conic sections using the Braikenridge-Maclaurin construction.
Working on the functions and the parser rule for culling |Pointer_Vectors|. There is currently only one parser rule; I plan to add more. I had some trouble getting the template function |Scan_Parse::cull_func| to compile and instantiate correctly.
Working on generating conic sections from six points.
Working on |Conic_Section::are_on_conic_section| and |Conic_Section::generate|.
Pascals Theorem and Braikenridge-Maclaurin Construction. Constructing a conic section from 5 points. Working on the predicate `are_on_conic_section'.
Added parser rules and functions for hyperbolae.
Working on functions for hyperbolae. Updated copyright and license information in many files.
Braikenridge-Maclaurin Construction. Constructing a conic section from 5 points. Working on the C++ function. Trying to get an example with a hyperbola to work.
Braikenridge-Maclaurin Construction. Constructing an ellipse from 5 points. Working on the C++ function.
Made an example of using the Braikenridge-Maclaurin construction to construct a parabola from five points on the curve.
Braikenridge-Maclaurin Construction. Constructing an ellipse from 5 points. Finished the C++ function. I need to add error handling.
Minor correction.
Working on the C++ function for Braikenridge-Maclaurin construction (for constructing an ellipse from 5 points).
Minor changes.
Braikenridge-Maclaurin construction to work.
Working on implementing the Braikenridge-Maclaurin construction for ellipses. I've obviously done something wrong, since my routine fails when the point `E' has certain values. I will have to review how this construction is supposed to work.
Working on implementing the Braikenridge-Maclaurin construction for ellipses.
Working on decomposing a |Path| using a |Point|.
Added parser rules for decomposing `reg_polygons'.
Added code for decomposing a `Polygon' using a `Path'.
Minor changes.
Added samples of filldrawing a cuboid.
Bug fixes in `points.web'.
Added code to `sample0.ldf' for finding the tangents to a circle from a given point, coplanar to the circle.
Added code for the tangent, arcsine, arccosine, and arctangent functions. Modified Files: ANIMATNS/animctrl.web CWEB/ChangeLog CWEB/io.web CWEB/parser.c++ CWEB/parser.h CWEB/parser.h++ CWEB/parser.output CWEB/parser.y++ CWEB/pbsndecl.w CWEB/pnumexpr.w CWEB/prrfnc0.web CWEB/pspglb.web CWEB/sample0.ldf CWEB/sctpcrt.web CWEB/LOGS/io.web.log CWEB/LOGS/pbsndecl.w.log CWEB/LOGS/pnumexpr.w.log CWEB/LOGS/prrfnc0.web.log CWEB/LOGS/pspglb.web.log CWEB/LOGS/sample0.ldf.log CWEB/LOGS/sctpcrt.web.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Updated copyright and license information.
Trying to find the tangents to a circle from a given point, coplanar to the circle. This doesn't work yet.
Updated copyright notices.
Minor changes.
Edited.
Working on parser rules and functions for `cones'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cones.web Group/CWEB/main.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pictures.web Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules and functions for `cones'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cones.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/origami.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/patterns.web Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/pellexpr.w Group/CWEB/pens.web Group/CWEB/pictures.web Group/CWEB/plyhdslc.web Group/CWEB/points.web Group/CWEB/ppthexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/solfaced.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/origami.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/plyhdslc.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solfaced.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to use single-napped elliptical and circular `cones', and double-napped circular `cones'. I still need to write many functions and parser rules for this type, and for `cylinders', too. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cones.web Group/CWEB/loader.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on `location' for `Cones' and `Cylinders'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cones.web Group/CWEB/cylinder.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz
Circular and elliptical `Cones' are now functional. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cones.web Group/CWEB/cylinder.web Group/CWEB/dashptrn.web Group/CWEB/ellpsslc.web Group/CWEB/format.web Group/CWEB/glyphs.web Group/CWEB/helices.web Group/CWEB/layers.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pctfncs0.web Group/CWEB/pdrwcmnd.w Group/CWEB/pictures.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/dashptrn.web.log Group/CWEB/LOGS/ellpsslc.web.log Group/CWEB/LOGS/format.web.log Group/CWEB/LOGS/glyphs.web.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/layers.web.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed `Group/CWEB/ChangeLog'. Working on `class Cone'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pctfncs0.web Group/CWEB/pictures.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed some bugs. Actually, I just did something that made them disappear, but I don't know why they did. See the log for `sample0.ldf' for more information. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pctfncs0.web Group/CWEB/pictures.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for the `cylinder' type. Modified Files: Group/CWEB/ChangeLog Group/CWEB/crclslc.web Group/CWEB/cylinder.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/crclslc.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added functions and rules for cylinders. Modified Files: Group/CWEB/3DLDFmp.mp Group/CWEB/3DLDFp02.web Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/colall.web Group/CWEB/colors.web Group/CWEB/cones.web Group/CWEB/conicsct.web Group/CWEB/conveps.web Group/CWEB/cylinder.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/pldfdcl.w Group/CWEB/ppntexpr.w Group/CWEB/prelims.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/ptrfcmnd.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/3DLDFmp.mp.log Group/CWEB/LOGS/3DLDFp02.web.log Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/colall.web.log Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/prelims.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/ptrfcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix: My run-time system no longer issues an error message (or a warning?) when a vector-type variable is declared, but no assignment to it ever takes place. The solution was a kludge, however. See the definition of `Scan_Parse::vector_type_decl' in `scanprse.web' for more information. Modified Files: Group/CWEB/ChangeLog Group/CWEB/bckmttr.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/loader.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pldfdcl.w Group/CWEB/pntrvctr.web Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/bckmttr.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pntrvctr.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on the rule `transform_primary: ALIGN path_primary WITH_AXIS axis_specifier' in `ptrnexpr.w'. It's not functional yet. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/ptrnexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Made examples of projecting ellipses. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Group/CWEB/scanprse.web': BUG FIX: Deleted |Scan_Parse::| from the declarations of template functions with specific types for instantiation. In `sample0.ldf': Working on ellipses. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on Wave Form 3. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for Wave Form 2. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on wave forms. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on wave forms. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parabold.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/parabold.web.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the `paraboloid' type. It will require some changes to `class Parabola'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/io.web Group/CWEB/parabola.web Group/CWEB/parabold.web Group/CWEB/paraellp.web Group/CWEB/parahypr.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pcrvexpr.w Group/CWEB/pdrwcmnd.w Group/CWEB/ploops.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/parabold.web.log Group/CWEB/LOGS/paraellp.web.log Group/CWEB/LOGS/parahypr.web.log Group/CWEB/LOGS/pcrvexpr.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the `paraboloid' type. Modified Files: Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/io.web Group/CWEB/parabold.web Group/CWEB/paraellp.web Group/CWEB/parahypr.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pcrvexpr.w Group/CWEB/pdrwcmnd.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabold.web.log Group/CWEB/LOGS/paraellp.web.log Group/CWEB/LOGS/parahypr.web.log Group/CWEB/LOGS/pcrvexpr.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `class Paraboloid'. Added two sub-classes: `Elliptical_Paraboloid' and `Hyperbolic_Paraboloid', and started working on them. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/deftfncs.web Group/CWEB/figures.web Group/CWEB/glyphs.web Group/CWEB/imetfncs.web Group/CWEB/main.web Group/CWEB/parabold.web Group/CWEB/paraellp.web Group/CWEB/parahypr.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pcondit.w Group/CWEB/pcrclslc.w Group/CWEB/pctfncs0.web Group/CWEB/plblcmnd.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/glyphs.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/parabold.web.log Group/CWEB/LOGS/paraellp.web.log Group/CWEB/LOGS/parahypr.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcondit.w.log Group/CWEB/LOGS/pcrclslc.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/spheres.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on the `paraboloid' and `paraboloid_vector' types. They can be declared and shown, but they are currently non-functional. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In the code for finding the intersection points of a `polyhedron' and a linear `path': Changed the right-hand side of the corresponding rules from `point_vector' to `bool_point_vector'. Added code for assigning to a `numeric' from a `numeric_vector'. If the `numeric_vector' is non-null and contains at least one element, the first element is used for the assignment. Otherwise, the `numeric' is set to `INVALID_NUMERIC'. I will need this for the determining the location of a `point' with respect to a `polyhedron'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbpvexpr.w Group/CWEB/pclrcmnd.w Group/CWEB/pcolexpr.w Group/CWEB/pcommand.w Group/CWEB/pnmvexpr.w Group/CWEB/pnumexpr.w Group/CWEB/points.web Group/CWEB/polyhed.web Group/CWEB/pptvexpr.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pnmvexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection of a `polyhedron' and a `plane'. It is a `polygon', except for the degenerate cases. Fixed memory leak in the parser rules using `transformer'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polyhed.web Group/CWEB/porgexpr.w Group/CWEB/ppenexpr.w Group/CWEB/ppygexpr.w Group/CWEB/prplexpr.w Group/CWEB/psphexpr.w Group/CWEB/ptglexpr.w Group/CWEB/ptrnexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/porgexpr.w.log Group/CWEB/LOGS/ppenexpr.w.log Group/CWEB/LOGS/ppygexpr.w.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/psphexpr.w.log Group/CWEB/LOGS/ptglexpr.w.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for disentangling a `point_vector' to produce a convex `polygon'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cuboid.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/porgexpr.w Group/CWEB/ppenexpr.w Group/CWEB/ppthexpr.w Group/CWEB/ppygexpr.w Group/CWEB/precexpr.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/porgexpr.w.log Group/CWEB/LOGS/ppenexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/ppygexpr.w.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `polyhedron' and a linear `path'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polyhed.web Group/CWEB/porgexpr.w Group/CWEB/ppenexpr.w Group/CWEB/pphdexpr.w Group/CWEB/ppicexpr.w Group/CWEB/pprbexpr.w Group/CWEB/pptvexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/porgexpr.w.log Group/CWEB/LOGS/ppenexpr.w.log Group/CWEB/LOGS/pphdexpr.w.log Group/CWEB/LOGS/ppicexpr.w.log Group/CWEB/LOGS/pprbexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for getting the nets of polyhedra using the `get_net' operator. So far, this only works for the Great Rhombicosidodecahedron. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/io.web Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/points.web Group/CWEB/prpvexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/prpvexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished the non-default |Great_Rhombicosidododecahedron| constructor. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/phlxexpr.w Group/CWEB/phypexpr.w Group/CWEB/pnumexpr.w Group/CWEB/polyhed.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/phlxexpr.w.log Group/CWEB/LOGS/phypexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished the net of the Great_Rhombicosidododecahedron. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polyhed.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Found memory leak in the parser: A |Transform*| wasn't being deleted in some or all the rules with the `transformer' symbol. I've started fixing this, but I'll have to do it gradually, because there are so many files with a rule like this. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pcirexpr.w Group/CWEB/pconexpr.w Group/CWEB/pellexpr.w Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pconexpr.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Made examples and illustrations for my "Ellipsoids" and "Cuboids" web pages. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In the example of finding the intersection of a `plane' and an `ellipsoid': Now testing the resulting `ellipse' for ellipticity. It fails the test, but all of its `points' are on the `ellipsoid' and lie in the `plane'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pblexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
The intersection of a `plane' and an `ellipsoid'. This seems to work now. I've changed it so that `intersection' returns an `ellipse' rather than a `path_vector'. I was using the latter for testing. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
The intersection of a `plane' and an `ellipsoid'. This seems to work now. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/plblcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on finding the intersection of a `plane' and an `ellipsoid'. Tying up loose ends. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz
Working on finding the intersection of a `plane' and an `ellipsoid'. This seems to work fairly well now, but there are still a few loose ends to tie up. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz
Working on |Great_Rhombicosidododecahedron::get_net()| in `Group/CWEB/polyhed.web'. The Great Rhombicosidododecahedron is the first polyhedron type I've started to implement since writing the parser. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pcirexpr.w Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/polyhed.web Group/CWEB/prplexpr.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
I've abandoned the approach I was using for finding the `ellipse' that represents the intersection of an `ellipsoid' and a `plane'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In |Ellipsoid::intersection(const Plane& q, [etc.])| in `Group/CWEB/ellpsoid.web': The procedure of using the mid-points of chords to find the center and axes is too imprecise. When the polygon representing the intersection of the plane with the circumscribed cuboid had 5 points, I ended up with axes that were at angles of 90.169512 and 89.830488 to one another. It almost worked for an intersecting polygon with 4 points, but not quite: Three of the points on the |Ellipse| were inside the |Ellipsoid|. Will remove the code from this function. I will have to try another approach. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on finding the intersection of an `ellipsoid' and a `plane', which is an `ellipse'. Still having problems with some cases. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/plblcmnd.w Group/CWEB/polygons.web Group/CWEB/ppicexpr.w Group/CWEB/pplhdslc.w Group/CWEB/ppnvexpr.w Group/CWEB/psphexpr.w Group/CWEB/pspvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppicexpr.w.log Group/CWEB/LOGS/pplhdslc.w.log Group/CWEB/LOGS/ppnvexpr.w.log Group/CWEB/LOGS/psphexpr.w.log Group/CWEB/LOGS/pspvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on finding the intersection of an `ellipsoid' and a `plane', which is an `ellipse'. This now works for some cases, but I'm still having problems with others. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/planes.web Group/CWEB/pnrbexpr.w Group/CWEB/points.web Group/CWEB/porgexpr.w Group/CWEB/porvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/pnrbexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/porgexpr.w.log Group/CWEB/LOGS/porvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the function `Ellipsoid::intersection()' for finding the intersection of an `ellipsoid' and a `plane', which is an `ellipse'. This doesn't work yet, but I'm getting there. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pcubexpr.w Group/CWEB/phlxexpr.w Group/CWEB/phxvexpr.w Group/CWEB/ploops.w Group/CWEB/pnbvexpr.w Group/CWEB/polygons.web Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/pcubexpr.w.log Group/CWEB/LOGS/phlxexpr.w.log Group/CWEB/LOGS/phxvexpr.w.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/pnbvexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the `polygon' that represents the intersection of a `cuboid' and a `plane'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pglyexpr.w Group/CWEB/planes.web Group/CWEB/pnumexpr.w Group/CWEB/ppygexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/pglyexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppygexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a linear `path' and an `ellipsoid'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/pglvexpr.w Group/CWEB/pptvexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pglvexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `Cuboid' and a linear `Path'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbpvexpr.w Group/CWEB/pdshexpr.w Group/CWEB/pedvexpr.w Group/CWEB/peldexpr.w Group/CWEB/pellpslc.w Group/CWEB/peqexpr.w Group/CWEB/pfocexpr.w Group/CWEB/pictures.web Group/CWEB/polygons.web Group/CWEB/pprgstmt.w Group/CWEB/pptvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pdshexpr.w.log Group/CWEB/LOGS/pedvexpr.w.log Group/CWEB/LOGS/peldexpr.w.log Group/CWEB/LOGS/pellpslc.w.log Group/CWEB/LOGS/peqexpr.w.log Group/CWEB/LOGS/pfocexpr.w.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added `Cuboid::location()' with a `Point' argument, and a parser rule for accessing it. Added parser rules for getting the `Plane' of objects of types derived from `Path'. Previously, I only had a rule for getting the `Plane' of a `Path'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pnumexpr.w Group/CWEB/ppntexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on `Ellipsoid::intersection_points()' in `ellpsoid.web'. This function is for finding the intersection points of an `ellipsoid' and a linear `path'. It doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pptvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
The location of a `point p' with respect to an `ellipsoid e'. `location' returns 0 if `p' lies on the surface of `e', 1 if `p' lies within `e', -1 if it lies outside of `e', and `INVALID_NUMERIC' if an error occurs. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the surrounding `cuboid' of an `ellipsoid'. The problem of finding the inscribed `cuboid' is more difficult, and I don't know how to do it yet. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cuboid.web Group/CWEB/ellpsoid.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pcubexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pcubexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for `ulong_long_vector' and `get_prime_vector'. Working on cweaving parser files. Modified Files: Group/CWEB/3DLDFprg.web Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/imetfncs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pfgopcmd.w Group/CWEB/plblcmnd.w Group/CWEB/pldfdcl.w Group/CWEB/pnmvexpr.w Group/CWEB/pnumexpr.w Group/CWEB/primes.web Group/CWEB/pshowcmd.w Group/CWEB/pullvxpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/3DLDFprg.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnmvexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/primes.web.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pullvxpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added copyright notice to `ChangeLog' files. Modified Files: Group/ChangeLog Group/ANIMATNS/ChangeLog Group/ANIMATNS/TITLES/ChangeLog Group/ANIMATNS/TTEST_0/ChangeLog Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/CWEBPTCH/ChangeLog Group/CWEB/LOGS/sample0.ldf.log Group/DOC/ChangeLog Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/TEXIPP/ChangeLog Group/FLIPBOOK/ChangeLog Group/GRAPHPAP/ChangeLog Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on prime numbers. Modified Files: Group/CWEB/3DLDFprg.web Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/primes.web Group/CWEB/prrfnc0.web Group/CWEB/pullvxpr.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFprg.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/primes.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pullvxpr.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing the `get_prime' command. Modified Files: Group/ChangeLog Group/configure.ac Group/CWEB/ChangeLog Group/CWEB/main.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/primes.web Group/CWEB/prrfnc0.web Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pullexpr.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/primes.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pullexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/LOGS/configure.ac.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on parser code and functions for prime numbers. Added `primes.web', `pullexpr.w', and `pullvxpr.w'. The latter two files contain parser code for `ulong_long' expressions and `ulong_long_vector' expressions, respectively. `ulong_long' corresponds to the C++ type `unsigned long long'. Modified Files: CWEB/ChangeLog CWEB/Makefile.am CWEB/circles.web CWEB/colors.web CWEB/cones.web CWEB/conicsct.web CWEB/crclslc.web CWEB/cuboid.web CWEB/curves.web CWEB/cylinder.web CWEB/dashptrn.web CWEB/deftfncs.web CWEB/ellipses.web CWEB/ellpsoid.web CWEB/ellpsslc.web CWEB/figures.web CWEB/glyphs.web CWEB/helices.web CWEB/hyprbola.web CWEB/imetfncs.web CWEB/lines.web CWEB/main.web CWEB/nurbs.web CWEB/origami.web CWEB/parabola.web CWEB/parser.c++ CWEB/parser.h CWEB/parser.h++ CWEB/parser.output CWEB/parser.w CWEB/parser.y++ CWEB/passign.w CWEB/paths.web CWEB/patterns.web CWEB/pbsndecl.w CWEB/pctfncs0.web CWEB/pens.web CWEB/pictures.web CWEB/planes.web CWEB/pldfdcl.w CWEB/plyhdslc.web CWEB/points.web CWEB/polygons.web CWEB/polyhed.web CWEB/prrfnc0.web CWEB/pvariabl.w CWEB/rectangs.web CWEB/sample0.ldf CWEB/scan.web CWEB/scanprse.web CWEB/scanprsf.web CWEB/sctpcrt.web CWEB/sctpfncs.web CWEB/shapes.web CWEB/solfaced.web CWEB/solids.web CWEB/spheres.web CWEB/transfor.web CWEB/triangle.web CWEB/utility.web CWEB/LOGS/Makefile.am.log CWEB/LOGS/circles.web.log CWEB/LOGS/colors.web.log CWEB/LOGS/cones.web.log CWEB/LOGS/conicsct.web.log CWEB/LOGS/crclslc.web.log CWEB/LOGS/cuboid.web.log CWEB/LOGS/curves.web.log CWEB/LOGS/cylinder.web.log CWEB/LOGS/dashptrn.web.log CWEB/LOGS/deftfncs.web.log CWEB/LOGS/ellipses.web.log CWEB/LOGS/ellpsoid.web.log CWEB/LOGS/ellpsslc.web.log CWEB/LOGS/figures.web.log CWEB/LOGS/glyphs.web.log CWEB/LOGS/helices.web.log CWEB/LOGS/hyprbola.web.log CWEB/LOGS/imetfncs.web.log CWEB/LOGS/lines.web.log CWEB/LOGS/main.web.log CWEB/LOGS/nurbs.web.log CWEB/LOGS/origami.web.log CWEB/LOGS/parabola.web.log CWEB/LOGS/parser.w.log CWEB/LOGS/passign.w.log CWEB/LOGS/paths.web.log CWEB/LOGS/patterns.web.log CWEB/LOGS/pbsndecl.w.log CWEB/LOGS/pctfncs0.web.log CWEB/LOGS/pens.web.log CWEB/LOGS/pictures.web.log CWEB/LOGS/planes.web.log CWEB/LOGS/pldfdcl.w.log CWEB/LOGS/plyhdslc.web.log CWEB/LOGS/points.web.log CWEB/LOGS/polygons.web.log CWEB/LOGS/polyhed.web.log CWEB/LOGS/prrfnc0.web.log CWEB/LOGS/pvariabl.w.log CWEB/LOGS/rectangs.web.log CWEB/LOGS/sample0.ldf.log CWEB/LOGS/scan.web.log CWEB/LOGS/scanprse.web.log CWEB/LOGS/scanprsf.web.log CWEB/LOGS/sctpcrt.web.log CWEB/LOGS/sctpfncs.web.log CWEB/LOGS/shapes.web.log CWEB/LOGS/solfaced.web.log CWEB/LOGS/solids.web.log CWEB/LOGS/spheres.web.log CWEB/LOGS/transfor.web.log CWEB/LOGS/triangle.web.log CWEB/LOGS/utility.web.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added complete sets of rules for `parabola_vector', `hyperbola_vector', `ellipsoid_vector', and `sphere_vector'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pblexpr.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Vector type objects seem to be working correctly. Bug fixes: Trying to label unknown objects of types `point', `bool_point', `path', and types derived from `path', now fails gracefully. Modified Files: Group/CWEB/3DLDFprg.web Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/3DLDFprg.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Tried fixing some bugs involving vector-types, but it didn't work out. I ended up having to revert files to the state they were in before. However, things seem to be working properly now. I don't know what was causing the problem before. If I have problems again, I'll have to be very careful about making changes. The code for the vector types is quite complicated, and it's been a long time since I wrote it, so I don't remember all the details. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
The intersection points of a `parabola' or `hyperbola' and a `plane': Added code for testing whether the planes are coincident or parallel. In this case, there are infinitely many intersection points, so `intersection_points' returns 0. Fixed more bugs involving vector types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/hyprbola.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/planes.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix: It's no longer necessary to clear `bool_point_vector' variables before assigning to them. Since the same parser rule is used for all vector-type assignments, this should work for all of the others, too. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pclrcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `hyperbola' and a non-coplanar `path', and the intersection points of a `hyperbola' and a `plane'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/hyprbola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/pldfdcl.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for classifying `points' with respect to a `hyperbola' using the `location' operator. Modified Files: Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/hyprbola.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pnumexpr.w Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `hyperbola' `h' and a linear `path' `q', such that `h' and `q' are coplanar, and the slope of `q' is infinite. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/conicsct.web Group/CWEB/ellipses.web Group/CWEB/hyprbola.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `hyperbola' `h' and a linear `path' `q', such that `h' and `q' are coplanar, and the slope of `q' is finite and non-zero. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/conicsct.web Group/CWEB/ellipses.web Group/CWEB/hyprbola.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the intersection points of a `hyperbola' and a linear `path'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/ellipses.web Group/CWEB/hyprbola.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed |Ellipse::create_new_ellipse(Pointer_Vector<Point>* pv, void* parameter)| from `ellipses.web'. I couldn't get it to work. I may try again another time. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on constructing an ellipse from 5 points. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pellexpr.w Group/CWEB/plblcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `parabola' and coplanar linear `paths', whose slopes are 0 or infinite. I had neglected to program these cases before. Modified Files: Group/CWEB/ChangeLog Group/CWEB/hyprbola.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `parabola' and a linear `path' that don't lie in the same plane. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection points of a `parabola' and a `plane'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/io.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/pdpvexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pdpvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for classifying a `point' according to its location with respect to a `parabola'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/ellpsoid.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pblexpr.w Group/CWEB/pbpvexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/pnumexpr.w Group/CWEB/pptvexpr.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `parabola'.
Added parser rules and functions for finding the intersection points of a `parabola' and a linear `path'.
`hyperbolae' now work.
Added parser code and functions for implementing the `hyperbola' type. It is not yet functional, because I haven't programmed a way of constructing hyperbolae in `Hyperbola::set()'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/conicsct.web Group/CWEB/ellipses.web Group/CWEB/hyprbola.web Group/CWEB/io.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/ppntexpr.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed some outdated examples from the distribution. Other minor changes. Modified Files: Group/CWEB/3DLDFmp.mp Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on a paraboloid made by rotating a `parabola'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/io.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pnumexpr.w Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for `parabolae'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/conveps.web Group/CWEB/io.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/ppntexpr.w Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `parabolae'. The only difference between this check-in and the last is that `sample0.ldf' creates an image so that `make run' doesn't fail. Modified Files: Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/crclslc.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/crclslc.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `parabolae'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/conicsct.web Group/CWEB/crclslc.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/crclslc.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added declarations and parser rules for the `parabola' type. It is not yet fully functional. Also added code for the types `hyperbola', `paraboloid', `hyperboloid', `parabola_vector', `hyperbola_vector', `paraboloid_vector', and `hyperboloid_vector'. However, I haven't added any parser rules for them yet, so objects of these types cannot yet be declared. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cones.web Group/CWEB/crclslc.web Group/CWEB/cuboid.web Group/CWEB/cylinder.web Group/CWEB/deftfncs.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/glyphs.web Group/CWEB/helices.web Group/CWEB/hyprbola.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/nurbs.web Group/CWEB/origami.web Group/CWEB/parabola.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/patterns.web Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/pldfdcl.w Group/CWEB/plyhdslc.web Group/CWEB/points.web Group/CWEB/polyhed.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/subex1.web Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/crclslc.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/glyphs.web.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/hyprbola.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/origami.web.log Group/CWEB/LOGS/parabola.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/plyhdslc.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/spheres.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on |Ellipsoid::intersection(Plane p, [etc.])| in `ellpsoid.web'. I can now find points on the ellipse and sort them. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added a parser rule and functions for finding the intersection points of an `ellipse' and a `plane'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/lines.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/pptvexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/lines.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the intersection of an `ellipsoid' and a `plane'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/ellipses.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/planes.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the intersection of an `ellipsoid' and a plane. Implemented the Braikenridge-Maclaurin Construction for constructing an ellipse from 6 points in 3DLDF. Will use it in `Ellipsoid::intersection(const Plane&, [etc.])'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/ptrnexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Revised `message_command': It now takes a `string_expression' argument rather than a `STRING' token. `strings' can now contain control characters: `\n' for a newline, `\"' for a double-quote, `\t' for a tab, `\\' for a backslash. `\' is also interpreted as a backslash, _unless_ it's followed by `\', `n', `"', or `t'. `\\' thus makes it possible to get the literal string "\n" by typing "\\n". Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pnumexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/pstrexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pstrexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the intersections of an `ellipsoid' with a `plane'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/pbpvexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pellexpr.w Group/CWEB/planes.web Group/CWEB/pnumexpr.w Group/CWEB/points.web Group/CWEB/pphvexpr.w Group/CWEB/ppntexpr.w Group/CWEB/prrfnc0.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Ellipsoid::intersection(const Plane& [etc.])'. It doesn't work yet. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/circles.web Group/CWEB/cones.web Group/CWEB/conicsct.web Group/CWEB/crclslc.web Group/CWEB/cuboid.web Group/CWEB/curves.web Group/CWEB/cylinder.web Group/CWEB/deftfncs.web Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/ellpsslc.web Group/CWEB/figures.web Group/CWEB/glyphs.web Group/CWEB/helices.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/origami.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/patterns.web Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/pctfncs0.web Group/CWEB/pellexpr.w Group/CWEB/planes.web Group/CWEB/plyhdslc.web Group/CWEB/polyhed.web Group/CWEB/pphvexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/triangle.web Group/CWEB/utility.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/conicsct.web.log Group/CWEB/LOGS/crclslc.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/ellpsslc.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/glyphs.web.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/origami.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/plyhdslc.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/spheres.web.log Group/CWEB/LOGS/triangle.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the function for finding the intersection of an `ellipsoid' and the plane of a `rectangle'. It doesn't work yet. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/ellpsoid.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pcirexpr.w Group/CWEB/pellexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for `ellipsoids'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/ellpsoid.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/prrfnc0.web Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules and functions for `planes'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pplnexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pplnexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules and functions for `sphere' intersections. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/conveps.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Revised the parser rules and functions for finding the intersections of a `sphere' with linear and planar `paths'. Added parser declarations and rules for the type `plane', which corresponds to `struct Plane' in the C++ code. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/lines.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/pldfdcl.w Group/CWEB/points.web Group/CWEB/pplnexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/lines.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pplnexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rule and function for finding the intersection points of a `sphere' and a linear `path'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/planes.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on rules and functions for finding the intersection points of a `sphere' and a linear `path'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbpvexpr.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for finding the intersection of a `sphere' with a plane. Discovered that `drawarrow' and `drawdblarrow' don't work. This may be a bug, or it may just be that I didn't program them. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/spheres.web Group/CWEB/transfor.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/spheres.web.log Group/CWEB/LOGS/transfor.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added rules for intersections. Some of the rules for finding the intersection points of the polygonal types are still missing. There are four types: `polygon', `reg_polygon', `rectangle', and `triangle', so there are 16 combinations. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/cpyrtasc.txt Group/CWEB/cpyrtc.txt Group/CWEB/cpyrtcpp.txt Group/CWEB/cpyrtss.txt Group/CWEB/deftfncs.web Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbpexpr.w Group/CWEB/pbpvexpr.w Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/pptvexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpfncs.web Group/CWEB/spheres.web Group/CWEB/triangle.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cpyrtasc.txt.log Group/CWEB/LOGS/cpyrtc.txt.log Group/CWEB/LOGS/cpyrtcpp.txt.log Group/CWEB/LOGS/cpyrtss.txt.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/spheres.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the rules for `spheres' and intersections. Some of the rules for intersections need to be replaced because I've gotten rid of the "x-like" expressions (see previous log entries). I'm taking the opportunity to put the code for these rules into functions, in order to reduce the amount of code in `parser.c++' and thus reduce compilation time. I had some trouble with the rule `bool_point_vector_tertiary: ellipse_tertiary INTERSECTION_POINTS ellipse_secondary'. I discovered a puzzling bug. I seem to have fixed it, but I don't understand why it caused the incorrect behavior. The program got "hung up" when CWEB source files were checked in, but not when they weren't. This doesn't make sense to me. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/figures.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbpexpr.w Group/CWEB/pbpvexpr.w Group/CWEB/pfuncfin.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/pprgstmt.w Group/CWEB/ppthexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpfncs.web Group/CWEB/spheres.web Group/CWEB/tsthdweb Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pfuncfin.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/spheres.web.log Group/CWEB/LOGS/tsthdweb.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for `is_spherical' and `is_on_sphere'. The latter works, the former currently always returns `true'. Modified Files: Group/CWEB/3DLDFcpl.web Group/CWEB/3DLDFp02.web Group/CWEB/3DLDFprc.web Group/CWEB/3DLDFprg.web Group/CWEB/ChangeLog Group/CWEB/bckmttr.web Group/CWEB/circles.web Group/CWEB/colall.web Group/CWEB/colors.web Group/CWEB/io.web Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/points.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFcpl.web.log Group/CWEB/LOGS/3DLDFp02.web.log Group/CWEB/LOGS/3DLDFprc.web.log Group/CWEB/LOGS/3DLDFprg.web.log Group/CWEB/LOGS/bckmttr.web.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/colall.web.log Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added `get_center' parser rules for all missing types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/ppntexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/spheres.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
`spheres' can now be constructed, drawn, and transformed. I have not yet written a complete set of parser rules for them, though. PLEASE NOTE: Since I've removed the code involving `x_like' expressions (e.g., `path_like_primary', `ellipse_like_secondary', `solid_like_expression', etc.), some things that used to work are temporarily unavailable. I will be replacing the "collective" rules that I've removed with individual rules for the individual types. It will probably take me awhile before I've replaced all of the ones that were formerly available. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pinptcmd.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/ptrfcmnd.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/solids.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pinptcmd.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/ptrfcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed all of the declarations and rules for "x_like" expressions, e.g., `path_like_variable', `path_like_primary', `ellipse_like_secondary', etc. These rules tended to cause conflicts, so I've decided to replace them with separate rules for each type. I've also removed the debugging code from the rules that I had to change. This substantially reduces the size of the file `parser.c++', generated by GNU Bison from the parser input files. It is not possible to break this file up into parts and compile them separately. The length of time it takes to compile it is a bottleneck in development and installation. I am therefore trying to reduce its size. Removing these unnecessary rules and reducing the amount of debugging code seems to have helped. I also plan to replace a lot of code in the parser actions with function calls. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pblexpr.w Group/CWEB/pbpexpr.w Group/CWEB/pbpvexpr.w Group/CWEB/pcbvexpr.w Group/CWEB/pcirexpr.w Group/CWEB/pclrcmnd.w Group/CWEB/pcommand.w Group/CWEB/pcrvexpr.w Group/CWEB/pcubexpr.w Group/CWEB/pdrwcmnd.w Group/CWEB/pellexpr.w Group/CWEB/pelvexpr.w Group/CWEB/pfcvexpr.w Group/CWEB/plblcmnd.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/ppgvexpr.w Group/CWEB/pphdexpr.w Group/CWEB/pphvexpr.w Group/CWEB/pplvexpr.w Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/pptvexpr.w Group/CWEB/prcvexpr.w Group/CWEB/precexpr.w Group/CWEB/prplexpr.w Group/CWEB/prpvexpr.w Group/CWEB/pspglb.web Group/CWEB/ptgvexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/spheres.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pcbvexpr.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pcrvexpr.w.log Group/CWEB/LOGS/pcubexpr.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/pelvexpr.w.log Group/CWEB/LOGS/pfcvexpr.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/pphdexpr.w.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/pplvexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/prcvexpr.w.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/prpvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/ptgvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Replaced the individual types for polyhedra with a single `polyhedron' type. Also replaced the corresponding "vector" types with `polyhedron_vector'. These changes have made it possible to remove several parser input files, and to reduce significantly the number of parser rules. They've also made it possible to get rid of a number of parser tokens (a.k.a. terminal symbols). Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/imetfncs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/pgrpcmnd.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/prrfnc0.web Group/CWEB/pshowcmd.w Group/CWEB/ptokdecl.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pgrpcmnd.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/ptokdecl.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
PLEASE NOTE: Polyhedral types are currently non-functional! I am in the process of replacing the individual polyhedral types, i.e., `tetrahedron', `octahedron', `dodecahedron', etc., with a single `polyhedron' type. This will considerably reduce the number of rules in the GNU Bison grammar. Got rid of `solid_like' expressions. Changed the rules that previously used them to use `cuboids' instead. I will be adding rules for `sphere' and `polygon'. (I've started working on `spheres'.) Where the actions contain considerable code, I will be replacing the latter with calls to functions, possibly template functions. I have found that rules involving "x-like" expressions, e.g., `path_like_primary', `solid_like_secondary', etc., tend to cause conflicts. It is therefore better to use individual rules for the different types. I have also found that it's necessary to reduce the amount of C++ code in the rule actions in the Bison grammar. The size of the file of C++ code generated from the parser input files by Bison, and the time it takes to compile it, is a bottleneck in development and installation. It also causes installation to fail on systems with insufficient memory available. It is not possible to divide this generated file into sections and compile the latter separately. I have started replacing actions that contain a considerable amount of code with function calls. I have also started conditionally compiling the section `@<Common declarations for rules@>' wherever possible. I reset the preprocessor macro `DEBUG_COMPILE' to 0 at the beginning of the parser code, so a great deal of debugging code is not compiled. This seems to be helping. By these means, I hope to considerably reduce the size of `parser.c++' and the time needed to compile it, and to simplify the grammar by removing unneeded types and rules. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/pclrcmnd.w Group/CWEB/pdrwcmnd.w Group/CWEB/pellexpr.w Group/CWEB/pfuncfin.w Group/CWEB/plikexpr.w Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/prplexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/pfuncfin.w.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Spheres'. They aren't functional yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cpyrtasc.txt Group/CWEB/cpyrtc.txt Group/CWEB/cpyrtcpp.txt Group/CWEB/cpyrtss.txt Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pdrwcmnd.w Group/CWEB/pfuncfin.w Group/CWEB/pprgstmt.w Group/CWEB/pptvexpr.w Group/CWEB/psetcmnd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/spheres.web Group/CWEB/LOGS/cpyrtasc.txt.log Group/CWEB/LOGS/cpyrtc.txt.log Group/CWEB/LOGS/cpyrtcpp.txt.log Group/CWEB/LOGS/cpyrtss.txt.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pfuncfin.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Spheres'. Modified Files: Group/CWEB/3DLDFprg.mac Group/CWEB/3DLDFprg.web Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/colors.web Group/CWEB/io.web Group/CWEB/loader.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/spheres.web Group/CWEB/LOGS/3DLDFprg.mac.log Group/CWEB/LOGS/3DLDFprg.web.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/spheres.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the file `box_math.tex' in `Group/DOC/TEXINFO/TEXIPP'. It's used for making PNG images containing TeX text. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/DOC/TEXINFO/TEXIPP/ChangeLog Group/DOC/TEXINFO/TEXIPP/Makefile.am Group/DOC/TEXINFO/TEXIPP/scanner.web Group/DOC/TEXINFO/TEXIPP/LOGS/Makefile.am.log Group/DOC/TEXINFO/TEXIPP/LOGS/scanner.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
When strings representing integer values greater than `LONG_LONG_MAX' are scanned in, and converted to a `long long', the resulting `long long' will have the value `LONG_LONG_MAX'. It is therefore impossible to distinguish whether a `long long' created in this way and having this value has been created from a valid or invalid input. Added code to catch the case that an integer value is greater than or equal to `LONG_LONG_MAX'. If it is, an error message is issued and the `numeric' object is set to `INVALID_REAL'. The user is not prompted to type <RETURN> to continue, because the error message is produced in the function `sub_yylex()' in the file `scan.web', and <RETURN>s entered within this function interfere with 3DLDF's scanning and cause parser errors. Added optional `fixed' keyword for outputting `numerics' in fixed point notation. I have to find out how to get rid of the trailing zeroes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/pprgstmt.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed the way integer values entered by the user are handled. Now they are first stored in a `long long'. If they're greater than `INT_MAX', they are converted to `real' and `sub_yylex()' returns `REAL' rather than `INTEGER'. Otherwise, they're converted to `int' and `sub_yylex()' returns `INTEGER'. Integers values that are read are always positive, because the unary minus operator is handled separately. The sign of the number is changed in a parser rule of its own. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pfgopcmd.w Group/CWEB/pprgstmt.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Worked on the code that creates `strings' that represent numbers using various bases. There are problems with large numbers. I haven't yet checked where they start, but `INT_MAX' (4294967295 on my machine) doesn't work without a decimal point. To be safe, decimal points should be used in numbers greater than `SHRT_MAX' (65535 on my machine). Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed the problems I was having converting large numbers to strings representing the number in binary format. Integers are always stored in `ints' before being converted to `reals', so a decimal point should always be used in numbers greater than `INT_MAX'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added a parser rule and two functions for creating `strings' to represent numbers in binary notation. I'm having some trouble with this, however, particulary with large numbers. |bitsets| seem not to work correctly for |long longs|. It also seems that converting floating point type numbers to integral types is causing problems. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/io.web Group/CWEB/loader.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pspglb.web Group/CWEB/pstrexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pstrexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for creating `strings' from `numeric_expressions' in octal, decimal, and hexadecimal format. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/prrfnc0.web Group/CWEB/pstrexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/tstbison Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pstrexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/tstbison.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added options to `Group/CWEB/conveps.web'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/runit Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/runit.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugged and added to the code for measuring text. Added the predefined `string' variable `measure_text_header'. It's value is written to the TeX file used for measuring text. It serves a similar to `verbatimtex' in MetaPost. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for measuring TeX text. Added instructions for use to `Group/CWEB/conveps.web'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/plikexpr.w Group/CWEB/pnmvexpr.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/pnmvexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed bug in `Group/CWEB/conveps.web'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Group/CWEB/conveps.web': Added code for limiting the number of active threads. The default is 100 and it can be changed by using the `--threads-limit' option. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the "speech balloon" animation test. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz
Revised `Group/CWEB/conveps.web'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz
`conveps' now uses threads. Also added the options `--new-filename' and `--renumber'. There's still quite a bit of debugging output that I plan to put into conditionals. It is now possible to remove the frame using the `--fill' and `--opaque' options, as long as it's in a color not otherwise used in the drawings. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/conveps.web Group/CWEB/pictures.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
`Group/CWEB/conveps.web' seems to work properly now. I had a bit of difficulty getting rid of the anti-aliasing which was changing the colors of some pixels. Got rid of the redundant and outdated `Group/ANIMATNS/conveps.web' file. Modified Files: Group/ANIMATNS/ChangeLog Group/ANIMATNS/Makefile.am Group/ANIMATNS/LOGS/Makefile.am.log Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/conveps.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/conveps.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
`cnepspng' seems to work properly now. I will have to document the options. I'd also like to proofread the code. I might want to make some of the global variables local variables in `main()', or vice versa. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cnepspng.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/cnepspng.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Corrected error in `cnepspng'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cnepspng.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cnepspng.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `cnepspng'. It's turned out to be trickier than expected. It doesn't seem to be possible to convert the units of measurement used in TeX and MetaPost files to pixels in a reliable way. In addition, colors used in MetaPost files do not always retain their RGB values in the PostScript files generated from them. This makes it impossible to use ImageMagick's `-opaque' option to convert them to another color. At the moment, my best solution is to use a black frame with a narrow border. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cnepspng.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cnepspng.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for clipping 'pictures' to cyclic 'paths'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Got scrolling titles to work. Modified Files: Group/ANIMATNS/ChangeLog Group/ANIMATNS/Makefile.am Group/ANIMATNS/LOGS/Makefile.am.log Group/ANIMATNS/TITLES/ChangeLog Group/ANIMATNS/TITLES/encode.Params Group/ANIMATNS/TITLES/titles_2.ldf Group/ANIMATNS/TITLES/LOGS/encode.Params.log Group/ANIMATNS/TITLES/LOGS/titles_2.ldf.log Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cnepspng.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cnepspng.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the subdirectory 'Group/ANIMATNS/TITLES/'. Modified Files: Group/ANIMATNS/ChangeLog Group/ANIMATNS/Makefile.am Group/ANIMATNS/LOGS/Makefile.am.log Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for making it possible to transform the texts of labels. It currently only works for the labelling commands for points that take a 'string' argument. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pictures.web Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/pspglb.web Group/CWEB/runit Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/runit.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the 'FLIPBOOK' directory. It contains an example of a flipbook in DIN A4 landscape format. I've posted a tutorial on flipbooks to the "Advice and Tutorials" forum on the Animation Corner website: http://www.animationcorner.com I won't be making all of my materials on flipbooks part of the GNU 3DLDF project, because some of it contains artwork for which I want to retain the copyright. Modified Files: ChangeLog Makefile.am CWEB/3DLDFtex.tex CWEB/ChangeLog CWEB/cnepspng.web CWEB/imetfncs.web CWEB/runit CWEB/sample0.ldf CWEB/LOGS/3DLDFtex.tex.log CWEB/LOGS/cnepspng.web.log CWEB/LOGS/imetfncs.web.log CWEB/LOGS/runit.log CWEB/LOGS/sample0.ldf.log LOGS/Makefile.am.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Made ad hoc changes to 'cnepspng.web'. I will need to work on it agaion. Other minor changes. Modified Files: Group/ChangeLog Group/Makefile.am Group/CWEB/ChangeLog Group/CWEB/cnepspng.web Group/CWEB/imetfncs.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/cnepspng.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/GRAPHPAP/ChangeLog Group/GRAPHPAP/vidpap.mp Group/GRAPHPAP/vidpap.tex Group/GRAPHPAP/LOGS/vidpap.mp.log Group/GRAPHPAP/LOGS/vidpap.tex.log Group/LOGS/Makefile.am.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding. Did some preparatory work for the changes I'm planning to make in 'Picture::output()'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on surface hiding for three objects again. I last worked on it on 2005.04.20. My idea is to perform surface hiding using the "pre-projective" coordinates of the points belonging to the objects on the picture. These are the coordinates after the transformation that puts the focus on the z-axis, but before the projective projection. The projective projection often causes the extreme x and y values of the projective coordinates of objects to overlap, whose world and pre-projective coordinates do not overlap. I believe I can eliminate the problems that result from this overlapping by sorting the objects according to the pre-projective coordinates instead of the projective coordinates. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pctfncs0.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/solids.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on combining images of cubes with graph paper. Modified Files: Group/ChangeLog Group/Makefile.am Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/precexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/GRAPHPAP/00README Group/GRAPHPAP/ChangeLog Group/GRAPHPAP/graph.ldf Group/GRAPHPAP/run_graph Group/GRAPHPAP/LOGS/00README.log Group/GRAPHPAP/LOGS/graph.ldf.log Group/GRAPHPAP/LOGS/run_graph.log Group/LOGS/Makefile.am.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on 'beginchar' and 'endchar'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pfgopcmd.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
This means that I've defined parser rules and functions for declaring objects of this type and performing basic operations on them, such as setting, showing, and transforming. However, they are not really functional, since no 'paths' or 'solids' are generated to represent the glyphs. Modified Files: Group/CWEB/ChangeLog Group/CWEB/glyphs.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.w Group/CWEB/pldfdcl.w Group/CWEB/prrfnc0.web Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/glyphs.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added "skeleton" code for 'spheres'. This means that I've defined parser rules and functions for declaring objects of this type and performing basic operations on them, such as setting, showing, and transforming. However, they are not really functional, since no surfaces are generated to represent the spherical shapes. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.w Group/CWEB/pctfncs0.web Group/CWEB/pldfdcl.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added "skeleton" code for 'ellipsoids'. This means that I've defined parser rules and functions for declaring objects of this type and performing basic operations on them, such as setting, showing, and transforming. However, they are not really functional, since no surfaces are generated to represent the ellipsoidal shapes. Started working on 'spheres'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/deftfncs.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/parser.w Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/pldfdcl.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/solids.web Group/CWEB/subex1.web Group/CWEB/tstbison Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/tstbison.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added "skeleton" code for 'cones' and 'cylinders'. This means that I've defined parser rules and functions for declaring objects of these types and performing basic operations on them, such as setting, showing, and transforming. However, they are not really functional, since no surfaces are generated to represent the conical or cylindrical shapes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/cones.web Group/CWEB/cylinder.web Group/CWEB/ellpsoid.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.w Group/CWEB/pcyvexpr.w Group/CWEB/pldfdcl.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/cones.web.log Group/CWEB/LOGS/cylinder.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pcyvexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added options for setting 'helices'. No path is generated to represent the helix yet, though. Modified Files: Group/CWEB/ChangeLog Group/CWEB/helices.web Group/CWEB/io.web Group/CWEB/pbsndecl.w Group/CWEB/polygons.web Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on 'helices'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/helices.web Group/CWEB/ploops.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on 'helices'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/helices.web Group/CWEB/io.web Group/CWEB/pbsndecl.w Group/CWEB/prrfnc0.web Group/CWEB/psetcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the basic framework for the data types 'helix' and 'helix_vector'. There's no way to set 'helices' yet, though. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/helices.web Group/CWEB/imetfncs.web Group/CWEB/parser.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on the data types 'helix' and 'helix_vector'. They are not yet functional. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/helices.web Group/CWEB/pldfdcl.w Group/CWEB/ptokdecl.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/ptokdecl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the file 'Group/CWEB/helices.web'. It contains the definition of 'class Helix'. Modified other files to account for this addition. About to start adding parser rules for the corresponding 3DLDF data type 'helix'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cuboid.web Group/CWEB/deftfncs.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/helices.web Group/CWEB/imetfncs.web Group/CWEB/main.web Group/CWEB/origami.web Group/CWEB/patterns.web Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/plyhdslc.web Group/CWEB/polyhed.web Group/CWEB/prrfnc0.web Group/CWEB/runit Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/subex1.web Group/CWEB/utility.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/helices.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/origami.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/plyhdslc.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/runit.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for examples of text fading in and out and blurred text for the website. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed a bug in 'Scan_Parse::set_color()' in 'scanprse.web'. Added the parser rule 'operation_assignment: picture_variable PLUS_ASSIGN picture_expression' in 'Group/CWEB/popassgn.w'. It calls the function 'Scan_Parse::operation_assignment_picture_rule_func_0()' in 'Group/CWEB/prrfnc0.web'. Together, they implement the '+=' operation for 'pictures'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/io.web Group/CWEB/popassgn.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on the program 'Group/ANIMATNS/animctrl', the animation controller. It will use both threads and processes to cut down on the time needed to convert lots of EPS files to structured PostScript and PPM (or some other Netpbm format). Modified Files: Group/ANIMATNS/ChangeLog Group/ANIMATNS/Makefile.am Group/ANIMATNS/animctrl.web Group/ANIMATNS/thrdutls.web Group/ANIMATNS/LOGS/Makefile.am.log Group/ANIMATNS/LOGS/animctrl.web.log Group/ANIMATNS/LOGS/thrdutls.web.log Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Revised the code for the "Rotating Sphere" animation. Added an invisible frame in order to make all of the images the same size. This prevents the "jump" in the browsers when running the JavaScript animation using the "sphere_1.*" images. Added the file 'Group/CWEB/utils.el'. It currently contains only the definition of the Emacs-Lisp function 'change-file-name', which can be used to change the names of the EPS files generated by MetaPost. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
No significant changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Made a logo with the dodecahedron taken from the animation "The Birth of a Dodecahedron". Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/DOC/TEXINFO/3DLDF.texi Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/LOGS/3DLDF.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished the animation "The Birth of a Dodecahedron". Modified Files: Group/ChangeLog Group/Makefile.am Group/configure.ac Group/ANIMATNS/ChangeLog Group/ANIMATNS/Makefile.am Group/ANIMATNS/LOGS/Makefile.am.log Group/ANIMATNS/TTEST_0/ChangeLog Group/ANIMATNS/TTEST_0/encode.Params Group/ANIMATNS/TTEST_0/generate.el Group/ANIMATNS/TTEST_0/LOGS/encode.Params.log Group/ANIMATNS/TTEST_0/LOGS/generate.el.log Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/cnepspng.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/cnepspng.web.log Group/CWEB/LOGS/sample0.ldf.log Group/LOGS/Makefile.am.log Group/LOGS/configure.ac.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished the animation "The Birth of a Dodecahedron". The timing needs some work and I want to add my name to the titles. Modified Files: Group/ChangeLog Group/Makefile.am Group/ANIMATNS/TTEST_0/ChangeLog Group/ANIMATNS/TTEST_0/encode.Params Group/ANIMATNS/TTEST_0/generate.el Group/ANIMATNS/TTEST_0/LOGS/encode.Params.log Group/ANIMATNS/TTEST_0/LOGS/generate.el.log Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/LOGS/Makefile.am.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the animation "The Birth of a Dodecahedron". Modified Files: Group/ChangeLog Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the animation "The Birth of a Dodecahedron". Modified Files: Group/ChangeLog Group/Makefile.am Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/sample0.ldf.log Group/LOGS/Makefile.am.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the animation "The Birth of a Dodecahedron". I've done the title, which fades out. In `Group/ANIMATNS/TTEST_0/generate.el': Added the Emacs-Lisp function `generate-film', which makes it possible to generate multiple frames from a single image file. The starting frame number is passed as an argument, so sequences can be built up gradually. Modified Files: Group/ANIMATNS/TTEST_0/00README Group/ANIMATNS/TTEST_0/encode.Params Group/ANIMATNS/TTEST_0/generate.el Group/ANIMATNS/TTEST_0/LOGS/encode.Params.log Group/ANIMATNS/TTEST_0/LOGS/generate.el.log Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Successfully completed my first MPEG animation with the help of L. Nobre G. and his ANEEMATE package, which he's released under the GNU General Public License (GPL). Worked on generating EPS files of the correct size, i.e., 640x480 pixels. I couldn't get closer than 641x481, but I think that's acceptable. `convert -geometry 640x480!' forces the resulting file to have the right dimensions. I haven't yet tried using these images in an animation. The example I made was smaller, and enlarging it caused it to become blurry, especially the text from the label. Modified Files: Group/ChangeLog Group/Makefile.am Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/LOGS/Makefile.am.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Group/CWEB/popassgn.w': `points' and `cycle' can now only be appended to `path' variables, and no longer to `path-like' variables. I will have to add explicit rules for the other types. The way they were before caused parse errors. In `Group/CWEB/popassgn.w Group/CWEB/sample0.ldf': Generating images for a web animation of a rotating sphere. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Minor changes. About to stop working on surface hiding for the moment in order to work on the manual. About to add Texipp, the Texinfo preprocessor, to the CVS archive and the distribution. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pctfncs0.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the option `with_z' to the rules for projecting `paths' and `polygons'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/ppthexpr.w Group/CWEB/ppygexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/ppygexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the option `with_z' to the rule for projecting `points' with `projected'. Added "TODO" note to myself to do the same for `paths' and `polygons'. Bug fix in `Polygon::projections_intersect()' in `polygons.web': Now testing the minimum and maximum x and y-coordinates, and not just the z-coordinates. Added "START HERE" note to myself. I am now planning to slow down work on surface hiding in order to write a new manual and prepare the next stable release. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Trying to get surface hiding to work for three `polygons'. It doesn't work yet. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding. I've gotten a case to work that wasn't working before. Actually, not much was needed to make it work; just changing the sorting option. I also fixed a bug in `Picture::output()' in `pctfncs0.web' which might have been part of the problem. There are a couple of memory leaks in `Picture::output()'. I've added "START HERE" notes to myself to take care of them. This will require adding a new data member to `Shape' and setting it in all of the constructors for types derived from `Shape'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/pictures.web Group/CWEB/polygons.web Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/ppygexpr.w Group/CWEB/prrfnc0.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/ppygexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on projecting objects. Added functions and parser rules for getting the `transform' data member from a `focus' and transforming a `transform'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pbsndecl.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/ptrnexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/transfor.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/transfor.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on projecting objects. It's now possible to project `points', `paths', and `polygon-like' objects. This makes it possible to draw the projections of objects of these types in 3D space. They are located on the plane of projection corresponding to the `focus' argument passed to the `project' command. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/ppthexpr.w Group/CWEB/ppygexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/ppygexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on parser rules and functions for projecting objects. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/points.web Group/CWEB/ppntexpr.w Group/CWEB/prrfnc0.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/prrfnc0.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding. Started working on the case that projections of two objects intersect in the z-dimension, even though the objects themselves don't intersect. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/pctfncs0.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the pure virtual function `Pointer_Vector<Shape>* Shape::decompose(const unsigned short limit, const bool use_rectangles, Scanner_Node scanner_node)' to `class Shape' again. Added or changed the versions for `Point', `Nurb', `Path', `Polygon', and `Solid' to correspond with the new version. This will make it possible to call it in `Picture::output()' through a pointer to `Shape'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/nurbs.web Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/pspglb.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for self-decomposition of `rectangles'. They can be decomposed into `triangles' or `rectangles'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on self-decomposition of `rectangles'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Rewrote the functions and parser rules for decomposing `polygons'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/paths.web Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/prpvexpr.w Group/CWEB/pspglb.web Group/CWEB/ptgvexpr.w Group/CWEB/sample0.ldf Group/CWEB/triangle.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/prpvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/ptgvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Got multiple levels of self-decomposition to work for `Polygons'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on self-decomposition of `polygons'. Got this to work for one level of self-decomposition. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on self-decomposing `polygons'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.c++ Group/CWEB/parser.h Group/CWEB/parser.h++ Group/CWEB/parser.output Group/CWEB/parser.y++ Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on self-decomposition of `polygons'. Modified Files: CWEB/ChangeLog CWEB/parser.c++ CWEB/parser.h CWEB/parser.h++ CWEB/parser.output CWEB/parser.y++ CWEB/polygons.web CWEB/sample0.ldf CWEB/LOGS/polygons.web.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on self-decomposition of `polygons'. Modified Files: CWEB/ChangeLog CWEB/Makefile.am CWEB/parser.c++ CWEB/parser.h CWEB/parser.h++ CWEB/parser.output CWEB/parser.y++ CWEB/pens.web CWEB/polygons.web CWEB/ppgvexpr.w CWEB/pspglb.web CWEB/sample0.ldf CWEB/LOGS/Makefile.am.log CWEB/LOGS/pens.web.log CWEB/LOGS/polygons.web.log CWEB/LOGS/ppgvexpr.w.log CWEB/LOGS/pspglb.web.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding and `Colors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/colors.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pctfncs0.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the file `pctfncs0.web' and moved the definition of `Picture::output()' to it from `points.web'. `pctfncs0.web' is processed after all of the files that define types derived from `Shape', so this will make it possible to access objects of these types directly within `Picture::output()'. Previously, it was only possible to access them through pointers to `Shape'. In particular, it wasn't possible to cast the pointers to `Shape' to `Point', `Path', `Solid', etc. This change will make debugging easier. Modified Files: Group/CWEB/3DLDFcpl.web Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/deftfncs.web Group/CWEB/figures.web Group/CWEB/imetfncs.web Group/CWEB/main.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pctfncs0.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/subex1.web Group/CWEB/utility.web Group/CWEB/LOGS/3DLDFcpl.web.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pctfncs0.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface in `Picture::output()'. Added "START HERE" note to myself. I must decompose objects whose projections intersect. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed bugs in `Scan_Parse::conditional()' in `scanprsf.web'. Conditionals now seem to work properly. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding. I think I've managed to get the `draw_colors' to match up when decomposing `polygons' that have been drawn with a `draw_color_vector'. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Discovered problems with surface hiding: 1. It's not so simple to get the `draw_colors' to match up when decomposing `polygons' that have been drawn with a `draw_color_vector'. 2. The sorting routine in `Picture::output()' doesn't seem to work, even after objects have been decomposed. Fixing these problems may be difficult. Modified Files: Group/CWEB/3DLDFtex.bas Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.bas.log Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Picture::output()' in `points.web': Fixed the loop that iterates over `list<Shape*> shape_list'. It seems to work now, but I'll have to test it. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding in `Picture::output()' in `point.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Surface hiding now seems to work for two `polygon-like' objects. I will need to fix the loop in `Picture::output()' in `points.web' in order for it to work for more objects. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pens.web Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pens.web Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Now suppressing output of `Paths' and segments of polygonal `Paths' when the type of the current `Pen' is `Pen::NULL_PEN'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pens.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Minor changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pens.web Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on implementing surface hiding in `Picture::output()' in `points.web'. I've got surface hiding to work with two `polygon-like' objects. It still needs work, though. The default behavior of `Picture::output()' is now _not_ to perform surface hiding. If one wants surface hiding, one must use the `with_surface_hiding' option to `endfig' or `output'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pfgopcmd.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on surface hiding. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/cuboid.web Group/CWEB/ellipses.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/triangle.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added functions for checking the types of `Shapes', e.g., `is_point()', `is_nurb()', `is_path()', etc. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/cuboid.web Group/CWEB/ellipses.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/triangle.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the files `pcrclslc.w' and `pplhdslc.w'. They contain parser rules for `circle_slice' and `polyhedron_slice' expressions, respectively. These types will be needed for surface hiding. They are not yet functional, however. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/pellpslc.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pellpslc.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on parser rules for `ellipse_slice'. This type is not yet functional. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/imetfncs.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on implementing surface hiding in `Picture::output()' in `points.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/runit Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/runit.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Multiple `pens' and/or `dash_patterns' can now be used for drawing objects of `polygon-like' types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed example in `sample0.ldf'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the drawing and filling functions for `path-like' types. Added the option `with_dash_pattern_vector' for use with the drawing commands. Added `with_dash_pattern' as a synonym for `dashed'. Multiple `pens' and/or `dash_patterns' are not yet used for drawing. I plan to implement this for `polygon-like' types next. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/ellipses.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pens.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the drawing and filling functions for `path-like' types. Added the option `with_pen_vector' for use with the drawing commands. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/pens.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the drawing and filling functions for `path-like' types. About to remove `Dash_Pattern* Path::dash_pattern' and `Pen* Path::pen'. I want to use `Pointer_Vector<Dash_Pattern>* Shape::dash_pattern_vector' and `Pointer_Vector<Pen>* Shape::pen_vector' instead. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/cuboid.web Group/CWEB/ellipses.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/triangle.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on drawing `polygon-like' objects. Fixed bugs in `paths.web'. About to implement `Shapes::get_shape_type()'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz
Removed `Color* Path::fill_color'. Now using `Pointer_Vector<Color>* fill_color_vector->v[0]' instead. `fill_color_vector' is a member of `class Shape'. This causes no user-visible changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed `Pen* Point::pen'. Now using `Pointer_Vector<Pen>* pen_vector->v[0]' instead. `pen_vector' is a member of `class Shape'. This causes no user-visible changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Minor changes.
Removed `Color* Point::drawdot_color'. Now using `Pointer_Vector<Color>* draw_color_vector->v[0]' instead. `draw_color_vector' is a member of `class Shape'. This causes no user-visible changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed `draw_color_vector' and `fill_color_vector' from `class Path' and put them into `class Shape'. Added the pure virtual functions `push_draw_color()', `push_fill_color()', and `push_color()' to `Shape'. Added versions of these functions to `Point', `Path', `Nurb', and `Solid'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/solids.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added `Pointer_Vector<Pen>* pen_vector' and `Pointer_Vector<Dash_Pattern>* dash_pattern_vector' to `class Shape' in `shapes.web'. It didn't work to add them to `class Path' in `paths.web', but it's better for them to be members of `Shape' anyway. Added code for handling them in functions in `paths.web'. They are currently not handled for `Point', `Solid', or types derived from `Solid'. They aren't yet used in any of the drawing and filling commands. Removed `Color* draw_color' from `class Path' in `paths.web'. Removed all references to it without comment. This will require changes in the drawing and filling functions for `Solids', which currently do not work. I've added "START HERE" notes to myself in `solids.web' to take care of this. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugged `Scan_Parse::drawing_command_path()' in `scanprsf.web'. It seems to work now. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugging `Scan_Parse::drawing_command_path()' and `Scan_Parse::drawing_command_path_vector()' in `scanprsf.web'. They don't work quite right yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/solfaced.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/solfaced.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed the parser rules for appending `colors' to `path-like' variables. Changed the `Path' drawing and filling functions (in `paths.web') and `Scan_Parse::drawing_command_path()' (in `scanprsf.web') so that they can handle `color_vectors' passed to the drawing and filling commands using the `with_color_vector' and `with_draw_color_vector' options instead. Unfortunately, these changes have caused `Scan_Parse::drawing_command_path_vector()' to no longer work properly. I have made a note to myself to fix this. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/circles.web Group/CWEB/deftfncs.web Group/CWEB/ellipses.web Group/CWEB/figures.web Group/CWEB/imetfncs.web Group/CWEB/layers.web Group/CWEB/main.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/points.web Group/CWEB/polygons.web Group/CWEB/popassgn.w Group/CWEB/pspglb.web Group/CWEB/rectangs.web Group/CWEB/runit Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/subex1.web Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/layers.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/runit.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
About to add code for surface hiding to `Picture::output()' in `points.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on implementing surface hiding. Fixed bug in `colors.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pictures.web Group/CWEB/points.web Group/CWEB/pprgstmt.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on appending `colors' to `path-like' objects: `Path::output()' now handles all of the drawing and filling commands correctly. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Path::output()' in `paths.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/sctpfncs.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Appending `colors' to `path-like' objects. Added the output options `with_surface_hiding' and `without_surface_hiding'. They don't do anything yet, though. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pfgopcmd.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Appending `colors' to `path-like' objects. Modified `Path::output()' to handle `Paths' with non-null `draw_color_vector' members. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on getting `Path::output()' in `paths.web' to handle the case that `Path::draw_color_vector' is non-null. This is needed for surface hiding. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and a function for appending `colors' to `path-like' objects. Pointers to the `Colors' are appended to `Path::draw_color_vector'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/plikexpr.w Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/triangle.web Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added rules and the function `Scan_Parse::drawing_command_path_vector()' in `scanprsf.web' for drawing and filling (and undrawing and unfilling) `path_like_vectors'. In `plikexpr.w': Added type declarations and rules for `path_vector_like' expressions. About to start working on using `Path::draw_color_vector' in the `Path' drawing functions. This is needed for surface hiding. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/plikexpr.w Group/CWEB/polygons.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon_like_expression' by another `polygon_like_expression'. One example of dividing two coplanar `polygons' in `sample0.ldf' doesn't work perfectly. Search for "START HERE". Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
No longer assigning to simple variables from vector-type expressions. Removed the rules for doing this from `passign.w'. About to remove code from the rules for vector-type assignments and put it into a function. I've made changes to the rule for `polygon_vector_assignment', but not to the others. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/polygons.web Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Corrected minor errors in comments in `sample0.ldf'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon_like_expression' by another `polygon_like_expression'. The non-coplanar case now works. Fixed bugs. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon_like_expression' by another `polygon_like_expression'. The coplanar case works now. However, I've discovered a bug involving assignments to vector-type variables. It may help to call |Id_Map_Entry_Type::destroy_array_subentries()| before assigning to a vector-type variable. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/polygons.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon_like_expression' by another `polygon_like_expression'. Working on the coplanar case. It doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon_like_expression' by another `polygon_like_expression'. The non-coplanar case now works. Starting work on the coplanar case. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing a `polygon' using another `polygon'. Now deriving `class Triangle' from `class Polygon'. This required some rearrangement. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/circles.web Group/CWEB/cuboid.web Group/CWEB/curves.web Group/CWEB/deftfncs.web Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/imetfncs.web Group/CWEB/main.web Group/CWEB/origami.web Group/CWEB/parser.output Group/CWEB/patterns.web Group/CWEB/pbsndecl.w Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/triangle.web Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/origami.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/triangle.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon_like_expression' by another `polygon_like_expression'. I must derive `class Triangle' from `class Polygon'. This will require some rearrangement. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/triangle.web Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Decomposing a `polygon-like' object using two `points' works now. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/pphvexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon-like' object by a linear `path'. This doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pphvexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon-like' object by a linear `path'. This doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/pphvexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix in the version `Polygon::intersection_points()' with two `Point&' arguments: The case that the `Polygon' and the line formed by the `Points' are coplanar, and the first intersection point found is a vertex of the `Polygon' is now handled properly. Changed the rules whose actions call `Polygon::decompose()' in `ppgvexpr.w' and `pphvexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/pphvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Dividing a `polygon-like' object by a linear `path'. This doesn't work yet. In `polygons.web': Discovered a bug in `Bool_Point_Pair Polygon::intersection_points(const Point& pt0, const Point& pt1) const' while working on 'Pointer_Vector<Polygon>* Polygon::decompose(Point* p0, Point* p1, const Scanner_Node scanner_node) const'. Added "START HERE" notes to myself in these functions. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/pphvexpr.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Decomposing a `polygon-like' object using two `points'. Changing the parser rules and functions that I'd written for `rectangles' so that they work for convex `polygons'. In `ppgvexpr.w': Changed `polygon_vector_primary: rectangle_expression DECOMPOSE LEFT_PARENTHESIS point_expression COMMA point_expression RIGHT_PARENTHESIS' to `polygon_vector_primary: polygon_like_expression DECOMPOSE LEFT_PARENTHESIS point_expression COMMA point_expression RIGHT_PARENTHESIS', i.e, changed `rectangle_expression' to `polygon_like_expression'. Removed `Pointer_Vector<Polygon>* decompose(Point* p0, Point* p1, const Scanner_Node scanner_node) const' from `class Rectangle' in `rectangs.web' and put it into `class Polygon' in `polygons.web'. In `polygons.web': Working on `Polygon::decompose(Polygon* p, const Scanner_Node)' Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Working on `Pointer_Vector<Polygon>* Polygon::decompose(Polygon* p, const Scanner_Node scanner_node) const' in `polygons.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/polygons.web Group/CWEB/ppgvexpr.w Group/CWEB/pphvexpr.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/triangle.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. In `Pointer_Vector<Path>* Rectangle::decompose(Path* p, Scanner_Node scanner_node)' in `rectangs.web': Now calling the version of this function which takes two |Point*| arguments, if the |Path*| argument points to a linear |Path|. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/ppgvexpr.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. Added the parser rule `polygon_vector_primary: rectangle_expression DECOMPOSE LEFT_PARENTHESIS point_expression COMMA point_expression RIGHT_PARENTHESIS' in `ppgvexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/ppgvexpr.w Group/CWEB/ptrfcmnd.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/ppgvexpr.w.log Group/CWEB/LOGS/ptrfcmnd.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Got the rules `operation_assignment: path_like_variable PLUS_ASSIGN CYCLE' and `operation_assignment: path_like_variable MINUS_ASSIGN CYCLE' in `popassgn.w' to work. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/popassgn.w Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `point_primary: LEFT_PARENTHESIS point_expression RIGHT_PARENTHESIS' in `ppntexpr.w': Bug fix: Now setting |@=$$@>| to |@=$2@>| instead of |@=$1@>|. Made debugging output thread-safe. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules and functions for `polygons'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/imetfncs.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/plikexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished writing `Path::is_convex_polygonal()' in `paths.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Path::is_convex_polygonal()' in `paths.web': Started working on testing whether any of the sides intersect. This doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing `Paths'. Added the predicate `is_convex_polygonal', which takes a `path_like_expression' as its argument. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on decomposing polygonal objects. It now works to divide a `rectangle' by a linear `path', using the division operator `/'. The result is a `path_vector' with two elements. Modified Files: Group/CWEB/ChangeLog Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Removed `Group/CWEB/porigami.w'. I had mistakenly added it. It had been replaced by `porgexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on `origami_figures'. They can't be used for anything yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cuboid.web Group/CWEB/deftfncs.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/imetfncs.web Group/CWEB/layers.web Group/CWEB/main.web Group/CWEB/origami.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/patterns.web Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/polyhed.web Group/CWEB/porgexpr.w Group/CWEB/porvexpr.w Group/CWEB/pphvexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/subex1.web Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/layers.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/origami.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/porgexpr.w.log Group/CWEB/LOGS/porvexpr.w.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on decomposing `rectangles'. Working on the function `Rectangle::decompose(Path* p, Scanner_Node scanner_node = 0)' in `rectangs.web'. Added the rule `path_vector_primary --> DECOMPOSE rectangle_expression BY path_expression' in `pphvexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pcommand.w Group/CWEB/points.web Group/CWEB/pphvexpr.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/shapes.web Group/CWEB/solids.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Tied up some loose ends involving labels. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added optional `with_text_color' and `with_dot_color' arguments to the rules for `label_if', `label_unless', `dotlabel_if', and `dotlabel_unless' for `bool_points' with a `string_expression' or a `numeric_expression' argument for the text. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/plblcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added `label' and `dotlabel' for `paths' with optional `with_text_color' and `with_dot_color' arguments. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on adding `with_text_color_optional' and `with_dot_color_optional' to the labelling rules. This will require some changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/plblcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added optional `with_text_color' and `with_dot_color' arguments to the `label' and `dotlabel' commands with `point' arguments. This doesn't work for `paths', yet. `with_dot_color' is ignored when used with `label'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pictures.web Group/CWEB/plblcmnd.w Group/CWEB/points.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pictures.web.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `paths.web': In `Nurb::generate()': Now calling |Nurb::blending_func()| in a loop to set the value of |blend_value_denominator|, which causes this function to generate a NURB. I'm not sure it works right, though. I don't understand why changing the weights has the effect it does. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `paths.web' In `Nurb::generate()': Bug fix: Now using the values of the power |p| and the number of control points |n| correctly. Currently, this function generates an ordinary B-spline. About to start using the weights so that it will generate a NURB. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on generating a `path' from a `nurb'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/popassgn.w Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on the parser rules and functions for generating a `path' from a `nurb'. They don't do anything yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to append `knots' and `weights' to `nurbs'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `nurbs'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/main.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on NURBs. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/circles.web Group/CWEB/cuboid.web Group/CWEB/curves.web Group/CWEB/deftfncs.web Group/CWEB/ellipses.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/format.web Group/CWEB/imetfncs.web Group/CWEB/main.web Group/CWEB/nurbs.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/patterns.web Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/pspglb.web Group/CWEB/pvariabl.w Group/CWEB/rectangs.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/triangle.web Group/CWEB/utility.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/format.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/nurbs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/rectangs.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/triangle.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Changed the rule `let_statement: LET symbolic_token equate_or_assign string_expression' in `pprgstmt.w' to `let_statement: LET symbolic_token equate_or_assign', i.e., removed the `string_expression' from the rule. The |string| is now collected in |Scan_Parse::let_func()|. This means that the object on the right-hand side of the `=' `:=' should now be a `symbolic_token' rather than a `string', e.g., `let $ := point;' rather than `let $ := "point";'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pprgstmt.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Implemented the predicate `is_quadrilateral path_like_expression'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for implementing `triangle_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the rules `statement: let_statement SEMI_COLON' and `let_statement: LET symbolic_token equate_or_assign symbolic_token' in `pprgstmt.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pprgstmt.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on surface hiding. Added the protected data member `unsigned short shape_type' and static constants for setting it in the `class' definition for `Shape' in `shapes.web'. Started adding code in all constructors for types derived from `Shape' for setting `shape_type'. So far, I've only done it for `Point' and `Path'. The copyright and license information in all Texinfo files has now been updated. Modified Files: CWEB/ChangeLog CWEB/parser.output CWEB/paths.web CWEB/points.web CWEB/sample0.ldf CWEB/shapes.web CWEB/LOGS/paths.web.log CWEB/LOGS/points.web.log CWEB/LOGS/sample0.ldf.log CWEB/LOGS/shapes.web.log DOC/TEXINFO/ChangeLog DOC/TEXINFO/gsvectyp.texi DOC/TEXINFO/inptfils.texi DOC/TEXINFO/instlrun.texi DOC/TEXINFO/intersct.texi DOC/TEXINFO/invoking.texi DOC/TEXINFO/isctcmnd.texi DOC/TEXINFO/lblcmnd.texi DOC/TEXINFO/numerics.texi DOC/TEXINFO/otptfils.texi DOC/TEXINFO/outpcmnd.texi DOC/TEXINFO/parser.texi DOC/TEXINFO/scanner.texi DOC/TEXINFO/scanprse.texi DOC/TEXINFO/vardecls.texi DOC/TEXINFO/LOGS/gsvectyp.texi.log DOC/TEXINFO/LOGS/inptfils.texi.log DOC/TEXINFO/LOGS/instlrun.texi.log DOC/TEXINFO/LOGS/intersct.texi.log DOC/TEXINFO/LOGS/invoking.texi.log DOC/TEXINFO/LOGS/isctcmnd.texi.log DOC/TEXINFO/LOGS/lblcmnd.texi.log DOC/TEXINFO/LOGS/numerics.texi.log DOC/TEXINFO/LOGS/otptfils.texi.log DOC/TEXINFO/LOGS/outpcmnd.texi.log DOC/TEXINFO/LOGS/parser.texi.log DOC/TEXINFO/LOGS/scanner.texi.log DOC/TEXINFO/LOGS/scanprse.texi.log DOC/TEXINFO/LOGS/vardecls.texi.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix in `Path::is_triangular()' in `paths.web': Changed this function so that a |Path| needn't be a cycle in order to be considered triangular. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for setting `triangles' using three points, and for the predicates `is_triangle', and `is_triangular'. Removed the parser rules and functions for setting `triangles' using `with_sss', `with_sas', etc. This doesn't work, because the methods using "side-side-side", "side-angle-side", etc., are for analyzing a given triangle, not constructing triangles. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/triangle.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on rules and functions for `triangles'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/gsdlpt.texi Group/DOC/TEXINFO/gspaths.texi Group/DOC/TEXINFO/gspict.texi Group/DOC/TEXINFO/gsplane.texi Group/DOC/TEXINFO/gspoint.texi Group/DOC/TEXINFO/gstranpt.texi Group/DOC/TEXINFO/gstransf.texi Group/DOC/TEXINFO/LOGS/gsdlpt.texi.log Group/DOC/TEXINFO/LOGS/gspaths.texi.log Group/DOC/TEXINFO/LOGS/gspict.texi.log Group/DOC/TEXINFO/LOGS/gsplane.texi.log Group/DOC/TEXINFO/LOGS/gspoint.texi.log Group/DOC/TEXINFO/LOGS/gstranpt.texi.log Group/DOC/TEXINFO/LOGS/gstransf.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules and function for `triangles'. Updated copyright information in some Texinfo files. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/triangle.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/triangle.web.log Group/DOC/TEXINFO/3DLDF.texi Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/assgnmnt.texi Group/DOC/TEXINFO/drawcmnd.texi Group/DOC/TEXINFO/exprssns.texi Group/DOC/TEXINFO/gssolfig.texi Group/DOC/TEXINFO/LOGS/3DLDF.texi.log Group/DOC/TEXINFO/LOGS/assgnmnt.texi.log Group/DOC/TEXINFO/LOGS/drawcmnd.texi.log Group/DOC/TEXINFO/LOGS/exprssns.texi.log Group/DOC/TEXINFO/LOGS/gssolfig.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Setting `triangles' using `with_sss' (side-side-side) now works. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/popassgn.w Group/CWEB/psetcmnd.w Group/CWEB/pstrexpr.w Group/CWEB/sample0.ldf Group/CWEB/triangle.web Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pstrexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on setting `triangles'. It doesn't work correctly yet. Finished updating the copyright and license information in the `CWEB' directory. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/peqexpr.w Group/CWEB/pfgopcmd.w Group/CWEB/pfuncfin.w Group/CWEB/pgrpcmnd.w Group/CWEB/pinptcmd.w Group/CWEB/plblcmnd.w Group/CWEB/plikexpr.w Group/CWEB/pmacros.w Group/CWEB/pnmvexpr.w Group/CWEB/polyhed.web Group/CWEB/pprgstmt.w Group/CWEB/pptvexpr.w Group/CWEB/prbsnflx.l++ Group/CWEB/prpvexpr.w Group/CWEB/psetcmnd.w Group/CWEB/ptokdecl.w Group/CWEB/ptrfcmnd.w Group/CWEB/runit Group/CWEB/sample.ldf Group/CWEB/sample0.ldf Group/CWEB/sample1.ldf Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/shapes.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/triangle.web Group/CWEB/LOGS/00README.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/peqexpr.w.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/pfuncfin.w.log Group/CWEB/LOGS/pgrpcmnd.w.log Group/CWEB/LOGS/pinptcmd.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pnmvexpr.w.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/prbsnflx.l++.log Group/CWEB/LOGS/prpvexpr.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/ptokdecl.w.log Group/CWEB/LOGS/ptrfcmnd.w.log Group/CWEB/LOGS/runit.log Group/CWEB/LOGS/sample.ldf.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sample1.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/CWEB/LOGS/shapes.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on `class Triangle' and `triangle expressions'. Updated copyright and license information in several files. Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/circles.web Group/CWEB/creatnew.web Group/CWEB/cuboid.web Group/CWEB/deftfncs.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/paths.web Group/CWEB/pblexpr.w Group/CWEB/pblvexpr.w Group/CWEB/pldfdcl.w Group/CWEB/prcvexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/triangle.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/creatnew.web.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pblvexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/prcvexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
`forsuffixes' now works. Updated copyright and license information in several files. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/lines.web Group/CWEB/loader.web Group/CWEB/parser.output Group/CWEB/patterns.web Group/CWEB/pens.web Group/CWEB/planes.web Group/CWEB/ploops.w Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/subex1.web Group/CWEB/subex2.web Group/CWEB/transfor.web Group/CWEB/utility.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/lines.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/subex1.web.log Group/CWEB/LOGS/subex2.web.log Group/CWEB/LOGS/transfor.web.log Group/CWEB/LOGS/utility.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Scan_Parse::for_suffixes_internal_func()' in `scanprsf.web'. It's not yet functional. Modified Files: Group/CWEB/ChangeLog Group/CWEB/lines.web Group/CWEB/loader.web Group/CWEB/parser.output Group/CWEB/patterns.web Group/CWEB/ploops.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/lines.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/patterns.web.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Scan_Parse::for_suffixes_loop_func()' and `Scan_Parse::for_suffixes_internal_func()' in `scanprsf.web'. They are not yet functional. Updated the copyright and license information in several files. Modified Files: Group/CWEB/3DLDFprg.web Group/CWEB/ChangeLog Group/CWEB/bckmttr.web Group/CWEB/colall.web Group/CWEB/colors.web Group/CWEB/dashptrn.web Group/CWEB/ellpsoid.web Group/CWEB/figures.web Group/CWEB/format.web Group/CWEB/gsltmplt.web Group/CWEB/intro.web Group/CWEB/io.web Group/CWEB/layers.web Group/CWEB/loader.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/ploops.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/3DLDFprg.web.log Group/CWEB/LOGS/bckmttr.web.log Group/CWEB/LOGS/colall.web.log Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/dashptrn.web.log Group/CWEB/LOGS/ellpsoid.web.log Group/CWEB/LOGS/figures.web.log Group/CWEB/LOGS/format.web.log Group/CWEB/LOGS/gsltmplt.web.log Group/CWEB/LOGS/intro.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/layers.web.log Group/CWEB/LOGS/loader.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules for `for_suffixes' in `ploops.w' and the function `Scan_Parse::for_suffixes_loop_func()' in `scanprsf.web'. They are not yet functional. Modified Files: Group/CWEB/00Vector_type_checklist Group/CWEB/3DLDFcpl.web Group/CWEB/3DLDFp02.web Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/ploops.w Group/CWEB/popassgn.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/00Vector_type_checklist.log Group/CWEB/LOGS/3DLDFcpl.web.log Group/CWEB/LOGS/3DLDFp02.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Scan_Parse::for_suffixes_loop_func()' in `scanprsf.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/freeze.log Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/ploops.w Group/CWEB/popassgn.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished adding parser rules for `focus_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pfocexpr.w Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pfocexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules for `focus_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/popassgn.w Group/CWEB/psetcmnd.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules for `focus_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/pldfdcl.w Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `picture_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/ppicexpr.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppicexpr.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on rules for `picture_vectors'. Modified Files: Group/00README Group/ChangeLog Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcommand.w Group/CWEB/pldfdcl.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/LOGS/00README.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Group/00README': Added instructions for raising the memory limits of `ctangle'. Modified Files: Group/00README Group/ChangeLog Group/CWEB/00Vector_type_checklist Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/CWEBPTCH/ChangeLog Group/CWEB/CWEBPTCH/ctang-3D.ch Group/CWEB/CWEBPTCH/LOGS/ctang-3D.ch.log Group/CWEB/LOGS/00Vector_type_checklist.log Group/CWEB/LOGS/sample0.ldf.log Group/LOGS/00README.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `dodecaahedron_vectors', `icosahedron_vectors', and `trunc_octahedron_vectors'. I have now added code for implementing vector-types corresponding to all `Shape' types and most non-`Shape' types. I've left out `picture' and `focus', because these require special handling: `pictures' are persisent and `focuses' must be set using a `set' command. I may add `picture_vectors' and `focus_vectors' at a later date. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pdhnexpr.w Group/CWEB/pihnexpr.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/ponvexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/ptnvexpr.w Group/CWEB/ptonexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/tstbison Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pdhnexpr.w.log Group/CWEB/LOGS/pihnexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ponvexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/ptnvexpr.w.log Group/CWEB/LOGS/ptonexpr.w.log Group/CWEB/LOGS/ptovexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/tstbison.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `octahedron_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/pohnexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/triangle.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/pohnexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `tetrahedron_vectors'. Changed `struct Triangle' to `class Triangle'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pcbvexpr.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/pthnexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/triangle.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pcbvexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pthnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/triangle.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `reg_polygon_vectors' and `cuboid_vectors'. Some already existed. Added `testbnry.c++' to the snapshot. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/pcubexpr.w Group/CWEB/prplexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/testbnry.c++ Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/pcubexpr.w.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/testbnry.c++.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
LDF 2005.01.14. Added code for implementing `circle_vectors' and `rectangle_vectors'. Some already existed. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcirexpr.w Group/CWEB/pnumexpr.w Group/CWEB/precexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `ellipse_vectors'. Some already existed. In `Group/CWEB/CWEBPTCH/ctang-3D.ch': Added change lines for `max_names' and `max_texts'. Raised them both to the maximum value 10239. Added `ccomm-3D.ch'. It's the change file for `common.w' and also raises `max_names'. Added these two files to the snapshot, but I haven't checked yet whether this worked. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/Makefile.in Group/CWEB/ellipses.web Group/CWEB/parser.output Group/CWEB/pellexpr.w Group/CWEB/pelvexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/CWEBPTCH/ChangeLog Group/CWEB/CWEBPTCH/ctang-3D.ch Group/CWEB/CWEBPTCH/LOGS/ctang-3D.ch.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/pelvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `path_vectors'. Some already existed. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pphvexpr.w Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `transform_vectors'. Modified Files: Group/CWEB/00Vector_type_checklist Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/ptrnexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/00Vector_type_checklist.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `transform_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pldfdcl.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `dash_pattern_vectors'. Modified Files: Group/CWEB/00Vector_type_checklist Group/CWEB/3DLDFmp.mp Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/main.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pdshexpr.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/00Vector_type_checklist.log Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pdshexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/Makefile.am Group/DOC/TEXINFO/LOGS/Makefile.am.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `pen_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pnumexpr.w Group/CWEB/ppenexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppenexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on implementing `pen_vectors'. Modified Files: Group/CWEB/00Vector_type_checklist Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/00Vector_type_checklist.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Minor changes. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/main.web Group/CWEB/parser.output Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started adding rules for `string_vector_expressions'. Modified Files: Group/CWEB/00Vector_type_checklist Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pblexpr.w Group/CWEB/pldfdcl.w Group/CWEB/sample0.ldf Group/CWEB/tstbison Group/CWEB/LOGS/00Vector_type_checklist.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/tstbison.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed bug in the rule `boolean_primary: IS_EVEN numeric_primary' in `pblexpr.w'. In `sample0.ldf': Added code for the drawing of a sphere that I've put on the GNU 3DLDF website: http://www.gnu.org/software/3dldf/LDF.html. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pblexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the rules `macro_variable: LAST macro_vector_variable' in `pvariabl.w', `bool_point_primary: LAST point_vector_expression' in `pbpexpr.w', and `point_primary: LAST point_vector_expression' in `ppntexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbpexpr.w Group/CWEB/pcolexpr.w Group/CWEB/ppntexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the rule `color_primary: LAST color_vector_expression' in `pcolexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `boolean_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pblexpr.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added code for implementing `numeric_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for `numeric_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules for `numeric_vectors'. Modified Files: CWEB/3DLDFcpl.web CWEB/ChangeLog CWEB/Makefile.am CWEB/parser.output CWEB/parser.w CWEB/pldfdcl.w CWEB/pshowcmd.w CWEB/pspglb.web CWEB/sample0.ldf CWEB/scanprse.web CWEB/sctpcrt.web CWEB/LOGS/3DLDFcpl.web.log CWEB/LOGS/Makefile.am.log CWEB/LOGS/parser.w.log CWEB/LOGS/pldfdcl.w.log CWEB/LOGS/pshowcmd.w.log CWEB/LOGS/pspglb.web.log CWEB/LOGS/sample0.ldf.log CWEB/LOGS/scanprse.web.log CWEB/LOGS/sctpcrt.web.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on making all vector-types functional. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcommand.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to specify dimensions for `numeric' values! I have added the following predefined `numeric' variables: `pt' (printer's point) `pc' (pica), `in' (inch), `bp' (big point), `cm' (centimeter), `mm' (millimeter), `dd' (didot point), and `cc' (cicero). Internally, 3DLDF converts these values to centimeters, and the values it writes to the output files are always suffixed with "cm". Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugged parser rules involving unary plus and minus. I'm sorry to say that they can no longer be used with `points'. However, `points' can be multiplied by integers, so if `p' is a known point, `1p' can be used instead of `+p' and `-1p' instead of `-p'. Of course, there would usually be no reason to use `1p' instead of plain `p'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/pnumexpr.w Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed bug involving `bool_points' in `imetfncs.web'. Added code for demonstrating how to pop `bool_points' off of a `bool_point_vector'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules and functions for popping objects off of vector-type variables. It works for `colors' and `points', but there's a problem with `bool_points'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to clear `macro_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pclrcmnd.w Group/CWEB/pmacros.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added a parser rule and a function for defining `macros' that are elements of `macro_vectors'. Modified Files: ChangeLog io.web parser.output pspglb.web sample0.ldf scanprse.web scanprsf.web LOGS/io.web.log LOGS/pspglb.web.log LOGS/sample0.ldf.log LOGS/scanprse.web.log LOGS/scanprsf.web.log
Started working on the parser rule and function for defining `macros' that are elements of `macro_vectors'. This doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pmacros.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugged parser rules and functions for `macros'. They seem to work now. About to work on rules for defining `macros' that are elements of `macro_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to define macros using a `macro_variable' that has already been declared. Debugged the case that a macro has typed arguments, but no untyped ones. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pmacros.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugged parser rules and functions for macros. About to add a rule for defining macros using a `macro_variable' that has already been declared. Modified Files: Group/CWEB/ChangeLog Group/CWEB/deftfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Worked on the rules `macro_definition: DEF variable UNDECLARED untyped_parameter_list typed_parameter_list equate_or_assign' and `macro_call: macro_variable untyped_parameter_list'. in `pmacros.w' and the functions `Scan_Parse::macro_definition_func()' and `Scan_Parse::macro_call_func()' in `scanprsf.web'. They all seem to be working. Modified Files: Group/CWEB/ChangeLog Group/CWEB/deftfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pmacros.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to use undeclared variables or declared macro variables in macro definitions. Added functions and parser rules for assigning to `macro variables' from `macro variables'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/deftfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pmacros.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules and functions for `macros'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/deftfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pmacros.w Group/CWEB/pprgstmt.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules for macros. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
BUG FIX: In the parser rule `suffix: suffix tag' in `pvariabl.w': Now including this rule in |@<Define rules@>|. The command for doing so was missing. I don't know how long it was this way. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
BUG: Variables with multiple subscripts separated by `tags' don't work. I've tried to fix it, but I haven't succeeded yet. This will require more work. Now using the character octal 243 (British Pound) as the placeholder for subscripts rather than `-'. This change is not visible to users. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pldfdcl.w Group/CWEB/ploops.w Group/CWEB/ptokdecl.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/ptokdecl.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Debugged parser rules for defuns in `pmacros.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pmacros.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
The parser rules for `defuns' in `pmacros.w' now work. Modified Files: Group/CWEB/ChangeLog Group/CWEB/deftfncs.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pmacros.w Group/CWEB/pprgstmt.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the rule `definition: definition_heading equate_or_assign' in `pmacros.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/deftfncs.web Group/CWEB/io.web Group/CWEB/main.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pfuncfin.w Group/CWEB/pmacros.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/sctpfncs.web Group/CWEB/CWEBPTCH/ctang-3D.ch Group/CWEB/CWEBPTCH/LOGS/ctang-3D.ch.log Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/deftfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pfuncfin.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/sctpfncs.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on implementing `defuns'. These are similar to macros, but I expect them to be easier to implement. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/pmacros.w Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rules for macros. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pmacros.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for setting `color' parts. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/parser.output Group/CWEB/pblexpr.w Group/CWEB/pmacros.w Group/CWEB/pnumexpr.w Group/CWEB/pprgstmt.w Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/numerics.texi Group/DOC/TEXINFO/LOGS/numerics.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added functions and parser rules for performing arithmetic on `points' and `colors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/ploops.w Group/CWEB/popassgn.w Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `operation_assignment: color_variable PLUS_ASSIGN color_expression', `operation_assignment: color_variable MINUS_ASSIGN color_expression', `operation_assignment: color_variable TIMES_ASSIGN numeric_expression', and `operation_assignment: color_variable DIVIDE_ASSIGN numeric_expression' in `popassgn.w'. The last one doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/parser.output Group/CWEB/popassgn.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the rule `color_tertiary: color_tertiary plus_or_minus color_secondary' in `pcolexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the rule `color_secondary: numeric_secondary color_variable' in `pcolexpr.w'. It's for multiplying `color' variables by `numerics' with no multiplication sign. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rule `color_secondary: color_secondary times_or_over numeric_primary' in `pcolexpr.w' and the function `Color::operator*=(const real& r)' in `colors.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/colors.web Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/colors.web.log Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for extracting the `red_part', `green_part', and `blue_part' from `colors'. Started working on the parser rules for defining macros. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.in Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/pbsndecl.w Group/CWEB/pnumexpr.w Group/CWEB/pprgstmt.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pmacros.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/Makefile.am Group/DOC/TEXINFO/numerics.texi Group/DOC/TEXINFO/LOGS/Makefile.am.log Group/DOC/TEXINFO/LOGS/numerics.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It is now possible to use plain `color' arguments in drawing and filling commands for `solids'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/ploops.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Scan_Parse::drawing_command_solid()'. Changing it so that `color' as well as `color_vector' arguments can be passed to drawing commands for `solids'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the rule `cuboid_vector_secondary: cuboid_secondary REFLECTED_OFF path_like_expression WITH_DIRECTION point_expression' and the function |Solid::reflect_off()|. I'm not sure the other rules for reflecting objects off of planes work the way I want them to. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/cuboid.web Group/CWEB/imetfncs.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pcbvexpr.w Group/CWEB/pcrvexpr.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/ppntexpr.w Group/CWEB/prpvexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/solids.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/cuboid.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pcbvexpr.w.log Group/CWEB/LOGS/pcrvexpr.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/prpvexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/solids.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for clearing `pictures' in `CWEB/pclrcmnd.w'. Modified Files: CWEB/ChangeLog CWEB/parser.output CWEB/pclrcmnd.w CWEB/sample0.ldf CWEB/LOGS/pclrcmnd.w.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for reflecting `Reg_Polygons' off of planes. Modified Files: CWEB/ChangeLog CWEB/Makefile.am CWEB/imetfncs.web CWEB/parser.output CWEB/parser.w CWEB/passign.w CWEB/pldfdcl.w CWEB/pnumexpr.w CWEB/popassgn.w CWEB/pshowcmd.w CWEB/pvariabl.w CWEB/sample0.ldf CWEB/LOGS/Makefile.am.log CWEB/LOGS/imetfncs.web.log CWEB/LOGS/parser.w.log CWEB/LOGS/passign.w.log CWEB/LOGS/pldfdcl.w.log CWEB/LOGS/pnumexpr.w.log CWEB/LOGS/popassgn.w.log CWEB/LOGS/pshowcmd.w.log CWEB/LOGS/pvariabl.w.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for reflecting `Rectangles' off of planes. Neglected to check in snapshot last time. I've also added parser rules for reflecting `Circles' off of planes. Modified Files: CWEB/ChangeLog CWEB/Makefile.am CWEB/imetfncs.web CWEB/parser.output CWEB/parser.w CWEB/passign.w CWEB/pldfdcl.w CWEB/pnumexpr.w CWEB/polygons.web CWEB/popassgn.w CWEB/pshowcmd.w CWEB/pvariabl.w CWEB/sample0.ldf CWEB/LOGS/Makefile.am.log CWEB/LOGS/imetfncs.web.log CWEB/LOGS/parser.w.log CWEB/LOGS/passign.w.log CWEB/LOGS/pldfdcl.w.log CWEB/LOGS/pnumexpr.w.log CWEB/LOGS/polygons.web.log CWEB/LOGS/popassgn.w.log CWEB/LOGS/pshowcmd.w.log CWEB/LOGS/pvariabl.w.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for `circle_vector' expressions. Modified Files: ChangeLog Makefile.am imetfncs.web parser.output parser.w passign.w pldfdcl.w pnumexpr.w popassgn.w pshowcmd.w pvariabl.w sample0.ldf LOGS/Makefile.am.log LOGS/imetfncs.web.log LOGS/parser.w.log LOGS/passign.w.log LOGS/pcrvexpr.w.log LOGS/pelvexpr.w.log LOGS/pldfdcl.w.log LOGS/pnumexpr.w.log LOGS/popassgn.w.log LOGS/pshowcmd.w.log LOGS/pvariabl.w.log LOGS/sample0.ldf.log
Added parser rules and functions for reflecting `Ellipses' off of planes. Also added `Ellipse::show()' in `Group/CWEB/ellipses.web'. Modified Files: CWEB/ChangeLog CWEB/Makefile.am CWEB/ellipses.web CWEB/imetfncs.web CWEB/parser.output CWEB/parser.w CWEB/passign.w CWEB/paths.web CWEB/pldfdcl.w CWEB/pnumexpr.w CWEB/popassgn.w CWEB/pshowcmd.w CWEB/pvariabl.w CWEB/sample0.ldf CWEB/LOGS/Makefile.am.log CWEB/LOGS/ellipses.web.log CWEB/LOGS/imetfncs.web.log CWEB/LOGS/parser.w.log CWEB/LOGS/passign.w.log CWEB/LOGS/paths.web.log CWEB/LOGS/pldfdcl.w.log CWEB/LOGS/pnumexpr.w.log CWEB/LOGS/popassgn.w.log CWEB/LOGS/pshowcmd.w.log CWEB/LOGS/pvariabl.w.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and functions for writing verbatim MetaPost code to the output files. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rule `path_assignment: path_variable ASSIGN path_vector_expression' in `Group/CWEB/passign.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
LDF 2004.12.13. The rule `path_vector_secondary: path_secondary REFLECTED_OFF path_like_expression WITH_DIRECTION point_expression' in `pphvexpr.w' now works. Added other rules for `path_vector' expressions. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/creatnew.web Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pldfdcl.w Group/CWEB/pnumexpr.w Group/CWEB/popassgn.w Group/CWEB/pphvexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/creatnew.web.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/pphvexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rule `path_vector_secondary: path_secondary REFLECTED_OFF path_like_expression WITH_DIRECTION point_expression' in `pphvexpr.w'. It doesn't work yet. Added parser rules for `path_vectors' and modified functions to account for them. I have not finished this. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/imetfncs.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/planes.web Group/CWEB/pldfdcl.w Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/pldfdcl.w.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the rule `numeric_primary: SIZE color_vector_primary' in `pnumexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rule `numeric_secondary --> numeric_secondary numeric_variable' in `pnumexpr.w' for multiplication without `TIMES'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Worked on trying to fix a bug: If a vector-type variable is declared inside a 3DLDF loop, `3dldf' gets into an endless C++ loop. It looks like this may be difficult to fix. This problem doesn't seem to affect non-vector types, so I may not try to fix it until after the next release. In addition, redeclaring variables inside loops is not really a sensible thing to do, anyway. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Changed the functions and rules for reflecting a `point' off of a planar `path'. `reflected_off' now returns a `point_vector' rather than a single `point'. See the code in this file for an explanation of what's returned. BUG: Redeclaring a `point_vector' variable in a loop fails. I haven't tested whether it also fails under other circumstances. The problem seems to be in the `Pointer_Vector' destructor. Will work on fixing this soon. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/planes.web Group/CWEB/ppntexpr.w Group/CWEB/pptvexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `pshowcmd.w': Fixed bugs in the parser rules for the `show_commands': `expressions' that are `pointer_values' are now deleted. Added rules for showing `bool_point_expressions' and vector-type `expressions'. In `passign.w': Added rules for assigning to simple types from vector types. Added the file `pclvexpr.w', which contains `color_vector_expressions'. Made changes to `Makefile.am' and `parser.w' to account for this. I will add `pclvexpr.w' to the CVS repository after this check-in. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pbpexpr.w Group/CWEB/pptvexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Made changes to `Point::reflect_off()' and `Scan_Parse::reflect_off_func()'. I need to test the error handling for cases that won't work, such as when the `point' lies in the plane, or when the line from the `point' in the direction of the `direction' vector doesn't intersect the plane. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/planes.web Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `numeric_secondary: numeric_secondary TIMES numeric_variable' and `numeric_secondary: numeric_token OVER numeric_variable' in `Group/CWEB/pnumexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pnumexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
The parser rule `point_secondary: point_secondary REFLECTED_OFF path_like_expression WITH_DIRECTION point_expression', and the functions `Scan_Parse::reflect_off_func()' and `Point::reflect_off()' seem to work now. Modified Files: Group/CWEB/3DLDFtex.tex Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pbpexpr.w Group/CWEB/planes.web Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/3DLDFtex.tex.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the parser rule `point_secondary: point_secondary REFLECTED_OFF path_like_expression WITH_DIRECTION point_expression' in `ppntexpr.w' and the functions `Point::reflect_off()' in `planes.web' and `Scan_Parse::reflect_off_func()' in `scanprse.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/planes.web Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on the functions and parser rules for reflecting a `point' off of a planar `path'. This doesn't work yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/ppntexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `operation_assignment: numeric_variable PLUS_ASSIGN numeric_expression', `operation_assignment: numeric_variable MINUS_ASSIGN numeric_expression', `operation_assignment: numeric_variable TIMES_ASSIGN numeric_expression', `operation_assignment: numeric_variable DIVIDE_ASSIGN numeric_expression', `operation_assignment: point_variable PLUS_ASSIGN point_expression', and `operation_assignment: point_variable MINUS_ASSIGN point_expression' in `popassgn.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/popassgn.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Moved rules for `operation_assignments' to `popassgn.w' from `passign.w'. Discovered bug involving multiplication of a `numeric' with a `numeric_variable'. Will try to fix it soon. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `Point::reflect_off()' in `planes.web'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/planes.web Group/CWEB/points.web Group/CWEB/ppntexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig ----------------------------------------------------------------------
In `Scan_Parse::assign_picture_simple()' in `scanprse.web': Changed argument |Picture* p| back to |Id_Map_Entry_Node entry_0|. Reversed substantive changes made in last version, but kept some changes in the formatting and the debugging and error output, and made some new ones. In the parser rule `picture_assignment: picture_variable ASSIGN picture_expression' in `passign.w': Reversed the change made in the last version, i.e., |picture_expression| itself is again passed to |Scan_Parse::assign_picture_simple()|. Changed |reflected in| to |reflected_in| in all parser rules where the former was used. Added `Octahedron::reflect_in()' in `polyhed.web'. Added the parser rule `octahedron_secondary: octahedron_secondary REFLECTED_IN path_like_expression' in `pohnexpr.w'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/curves.web Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/pcubexpr.w Group/CWEB/pdhnexpr.w Group/CWEB/pellexpr.w Group/CWEB/pihnexpr.w Group/CWEB/planes.web Group/CWEB/pohnexpr.w Group/CWEB/polygons.web Group/CWEB/polyhed.web Group/CWEB/ppntexpr.w Group/CWEB/ppthexpr.w Group/CWEB/precexpr.w Group/CWEB/prplexpr.w Group/CWEB/pspglb.web Group/CWEB/pthnexpr.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/sctpcrt.web Group/CWEB/solfaced.web Group/CWEB/solids.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/pcubexpr.w.log Group/CWEB/LOGS/pdhnexpr.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/pihnexpr.w.log Group/CWEB/LOGS/planes.web.log Group/CWEB/LOGS/pohnexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/polyhed.web.log Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/pthnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/CWEB/LOGS/solfaced.web.log Group/CWEB/LOGS/solids.web.log Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/assgnmnt.texi Group/DOC/TEXINFO/exprssns.texi Group/DOC/TEXINFO/LOGS/assgnmnt.texi.log Group/DOC/TEXINFO/LOGS/exprssns.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Worked on the rules and functions involved in transforming `pictures'. They cannot be transformed using `transformers' because `pictures' are persistent, i.e., temporaries are not created for them. `transformation commands' should be used instead. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pfgopcmd.w Group/CWEB/ppicexpr.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/ppicexpr.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `pcommand.w': Added the declaration `%type <pointer_value> scantokens_command' and the rules `command: scantokens_command' and `scantokens_command: SCANTOKENS string_expression'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Now using |bool| instead of |int| for the type of the object referenced by |boolean_variables|, |boolean_primaries|, |secondaries|, |tertiaries|, and |expressions|. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pblexpr.w Group/CWEB/pcondit.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pcondit.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix: `path' connectors no longer need to be surrounded by whitespace. In `sub_yylex()' in `scan.web': Bug fix involving comments, i.e., |curr_catcode == PERCENT|: Now returning |SEMI_COLON| if |scanner_node->get_in_type() == Io_Struct::STDIN_TYPE|. This makes it possible to have comments in code read from standard input. It does not work perfectly, however, since users must type `<RETURN>' twice in order to end a comment. This will probably also cause problems when passing input to the standard input of `3dldf' by means of a pipe or redirection. I will have to keep my eye on these changes, in case they cause problems elsewhere. Modified Files: Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Made debugging and error output thread-safe in `yylex()' and `sub_yylex()' in `scan.web'. I've discovered a bug that affects the case that input is read from standard input. However, I may not work on fixing it until after the next release. Working on revising manual. Modified Files: Group/CWEB/ChangeLog Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/DOC/TEXINFO/3DLDF.texi Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/exprssns.texi Group/DOC/TEXINFO/vardecls.texi Group/DOC/TEXINFO/LOGS/3DLDF.texi.log Group/DOC/TEXINFO/LOGS/exprssns.texi.log Group/DOC/TEXINFO/LOGS/vardecls.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Testing numerical suffixes. They apparently work correctly when input is read from a file, but I've discovered a bug affecting the case that input is read from standard input. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/sample0.ldf Group/CWEB/LOGS/sample0.ldf.log Group/DOC/TEXINFO/3DLDF.texi Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/vardecls.texi Group/DOC/TEXINFO/LOGS/3DLDF.texi.log Group/DOC/TEXINFO/LOGS/vardecls.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rule `for_loop: FOR symbolic_token equate_or_assign numeric_expression upto_or_downto numeric_expression COLON' in `ploops'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/ploops.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/ploops.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/vardecls.texi Group/DOC/TEXINFO/LOGS/vardecls.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `ppthexpr.w': Changed the rule `path_primary: HALF circle_primary with_closed_optional with_angle_optional' to `path_primary: HALF ellipse_like_primary with_closed_optional with_angle_optional with_start_optional'. Added the rule `path_primary: QUARTER ellipse_like_primary with_closed_optional with_angle_optional with_start_optional'. In `curves.web': Rewrote `Reg_Cl_Plane_Curve::half()' and `Reg_Cl_Plane_Curve::quarter()' and made them virtual and non-inline. Added the optional arguments |vector<Point*>::size_type start| and |Scanner_Node scanner_node|, both with default 0, to both functions. Modified Files: Group/CWEB/ChangeLog Group/CWEB/curves.web Group/CWEB/parser.output Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rule `path_primary: SEGMENT ellipse_like_primary WITH_START numeric_expression WITH_END numeric_expression with_closed_optional with_angle_optional' in `ppthexpr.w'. About to change the rule `path_primary --> HALF circle_primary with_closed_optional with_angle_optional'. I will change `circle_primary' to `ellipse_like_primary' and add a rule for extracting quarter `ellipses' and `circles'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/curves.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/plblcmnd.w Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Rewrote the non-const version of `Path::reverse()' in `paths.web', so that it's now possible to reverse cyclical `Paths'. Working on `Reg_Cl_Plane_Curve::segment()'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/ppthexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules in `ppthexpr.w' for extracting halves of `circles'. Currently, the first point of the half-circle is always point 0 of the |Circle|. This doesn't work well for |circles| that have been transformed into non-circular shapes, or for |ellipses|. I must change |Reg_Cl_Plane_Curve::segment()| in order to fix this. Modified Files: Group/CWEB/ChangeLog Group/CWEB/curves.web Group/CWEB/pbsndecl.w Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/curves.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Finished adding parser rules for showing `expressions'. `expressions' of all types can be shown now. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pdhnexpr.w Group/CWEB/pihnexpr.w Group/CWEB/pohnexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pthnexpr.w Group/CWEB/ptonexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pdhnexpr.w.log Group/CWEB/LOGS/pihnexpr.w.log Group/CWEB/LOGS/pohnexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pthnexpr.w.log Group/CWEB/LOGS/ptonexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Continued adding parser rules for showing objects of more types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcubexpr.w Group/CWEB/pellexpr.w Group/CWEB/precexpr.w Group/CWEB/prplexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pcubexpr.w.log Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/prplexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Continued adding parser rules for showing objects of more types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcirexpr.w Group/CWEB/ppthexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Continued adding parser rules for showing objects of more types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pcolexpr.w Group/CWEB/pdshexpr.w Group/CWEB/pfocexpr.w Group/CWEB/ppenexpr.w Group/CWEB/ppicexpr.w Group/CWEB/pshowcmd.w Group/CWEB/ptrnexpr.w Group/CWEB/pvariabl.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pcolexpr.w.log Group/CWEB/LOGS/pdshexpr.w.log Group/CWEB/LOGS/pfocexpr.w.log Group/CWEB/LOGS/ppenexpr.w.log Group/CWEB/LOGS/ppicexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/pvariabl.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for showing objects of more types. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/ppntexpr.w Group/CWEB/pshowcmd.w Group/CWEB/pstrexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/ppntexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/pstrexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `show_command: SHOW boolean_expression' and `show_command: SHOW numeric_expression'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pblexpr.w Group/CWEB/pnumexpr.w Group/CWEB/pshowcmd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/pshowcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
WARNING! `show_command' currently only works for `unknown numerics'. I've started adding new rules for showing `variables' and `expressions'. Previously, only the former could be shown. Modified Files: CWEB/ChangeLog CWEB/Makefile.am CWEB/parser.output CWEB/parser.w CWEB/pcommand.w CWEB/pspglb.web CWEB/pvariabl.w CWEB/sample0.ldf CWEB/LOGS/Makefile.am.log CWEB/LOGS/parser.w.log CWEB/LOGS/pcommand.w.log CWEB/LOGS/pspglb.web.log CWEB/LOGS/pvariabl.w.log CWEB/LOGS/sample0.ldf.log SNAPSHOTS/3DLDFsnp.tar.gz SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `rectangle_primary: IN_RECTANGLE ellipse_primary', `rectangle_primary: OUT_RECTANGLE ellipse_primary', `ellipse_primary: IN_ELLIPSE rectangle_primary', and `ellipse_primary: OUT_ELLIPSE rectangle_primary'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pellexpr.w Group/CWEB/precexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/pellexpr.w.log Group/CWEB/LOGS/precexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `circle_primary: IN_CIRCLE reg_polygon_primary' and `circle_primary: OUT_CIRCLE reg_polygon_primary'. Added token declarations, `name_map' entries, and calls to `scanner_node->add_entry()' for similar rules. The tokens are |IN_ELLIPSE|, |OUT_ELLIPSE|, |IN_RECTANGLE|, |OUT_RECTANGLE|, |IN_SPHERE|, |OUT_SPHERE|, |IN_ELLIPSOID|, |OUT_ELLIPSOID|, |IN_CUBOID|, and |OUT_CUBOID|. I haven't started writing rules for them yet, nor have I started to implement |Spheres| or |Ellipsoids|. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pcirexpr.w Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcirexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rules `boolean_primary: IS_BIG_ENDIAN' and `boolean_primary: IS_LITTLE_ENDIAN'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pblexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pblexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/DOC/TEXINFO/3DLDF.texi Group/DOC/TEXINFO/ChangeLog Group/DOC/TEXINFO/LOGS/3DLDF.texi.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Worked on the functions and rules for `pickup' and `drop' commands. Started working on the rules for extracting segments of `ellipse_like_expressions'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added rules for picking up and dropping `dash_patterns' and `colors'.
Added output operators for `Pen' and `Dash_Pattern'. This didn't cause any user-visible changes. Modified Files: Group/CWEB/ChangeLog Group/CWEB/dashptrn.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pens.web Group/CWEB/points.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/dashptrn.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules and changed functions to implement functionality involving `current_pen' and `default_pen': If `current_pen' has a `known' value, a drawing or filling function uses a `pen', and none was specified in a particular call, `current_pen' is used. If `default_pen' is known, `beginfig' causes a `pickup' command to be written to the MetaPost output file, that picks it up. This implies that assigning to `default_pen' only has an effect following the next `beginfig' command. To assign to `default_pen' and use the new value within the same figure, call `pickup default_pen' or use `with_pen default_pen'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/pclrcmnd.w Group/CWEB/pdrwcmnd.w Group/CWEB/pfgopcmd.w Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pfgopcmd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started working on the parser rules for picking up and dropping `pens'. It works to pick them up, but it has no affect on drawing commands yet. Modified Files: Group/CWEB/ChangeLog Group/CWEB/imetfncs.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pcommand.w Group/CWEB/pdrwcmnd.w Group/CWEB/pens.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/imetfncs.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pens.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Rewrote `Scan_Parse::vector_type_assign()', which is defined in `Group/CWEB/scanprse.web', and made the corresponding changes to the parser rules that call it in `Group/CWEB/passign.w'. Added assignment operators for assigning to `Bool_Points' from `Points' and vice versa. Also added an assignment operator for assigning to `Bool_Points' from `bools'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/points.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for assignments involving `point_vectors' and `bool_point_vectors'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pbpvexpr.w Group/CWEB/pnumexpr.w Group/CWEB/points.web Group/CWEB/pptvexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pptvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Changed the parser rule `bool_point_vector_tertiary: circle_tertiary INTERSECTION_POINTS circle_secondary' so that only actual intersection points are stored in the `bool_point_vector_tertiary'. Added token declarations, `name_map' entries and calls to `scanner_node->add_entry()' for `LABELS', `DOTLABELS', `LABELS_IF', `DOTLABELS_IF', `LABELS_UNLESS', and `DOTLABELS_UNLESS'. I haven't written any rules using them yet, though. Modified Files: Group/CWEB/ChangeLog Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/pbpvexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed the `unit_' variables. `unit_circle', `unit_square', and `unit_pentagon' are all of the right size. I haven't checked the other "unit_polygons" yet, though. `unit_rectangle' is a synonym for `unit_square'. `unit_ellipse' is also of the correct size. Made changes involving transformations and transformation commands: `numeric_primary' arguments are now allowed. When a single number is used with `scale' or `scaled', the object is scaled by that amount in all three dimensions. For all other transformations and transformation commands, the object is transformed by that amount in the x-dimension only. These are the specific changes I made: Added the rule `transformation_command: basic_transformation_command any_variable BY numeric_primary'. |BY| is needed, because otherwise the parser doesn't resolve the |numeric_primary| properly. In the rule `transformer: basic_transformer numeric_primary': Now pushing three copies of |numeric_primary| onto the |Pointer_Vector<real>| if |basic_transformer == SCALED|. This way, scaling takes place in all three dimensions. For scaling in the x-dimension only, |xscaled| should be used. A |numeric_list| such as |(13, 1)| or |(13, 1, 1)|, i.e., with 1 as the value for scaling in the y-dimension or the y and z-dimensions, can also be used. Please note that |(13)| is a |numeric_primary| and _not_ a |numeric_list|. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/ptrfcmnd.w Group/CWEB/ptrnexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/ptrfcmnd.w.log Group/CWEB/LOGS/ptrnexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix: It's now possible to find the intersection points of a linear `path' with a `polygon_like' object. A `polygon_like' object can be a `rectangle' or a `reg_polygon'. Added a parser rule for finding the intersection points of two `polygon_like' objects. Added the rule `numeric_primary: SIZE bool_point_vector_primary'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbpvexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pnumexpr.w Group/CWEB/polygons.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/polygons.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Bug fix: `Circle::radius' is now recalculated when a transformation is performed on the `Circle' that doesn't cause it to become non-circular. Bug fix in rule `bool_point_vector_assignment: bool_point_vector_variable ASSIGN bool_point_vector_expression': Now clearing the vector stored in the `bool_point_vector_variable' before assigning to it. Continued working on the parser rules and functions used for finding intersections. Added rules for `drawarrow' and `drawdblarrow'. Changed the way `internal_quantities' are handled. They are now handled the same as ordinary `numeric' variables, except that their `category' is `Id_Map_Entry_Type::INTERNAL' rather than `Id_Map_Entry_Type::REGULAR'. I plan to implement `true_internal_quantities' which will be data members of `Scanner_Type'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/circles.web Group/CWEB/ellipses.web Group/CWEB/io.web Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbpvexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pcommand.w Group/CWEB/pdrwcmnd.w Group/CWEB/pnumexpr.w Group/CWEB/points.web Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scan.web Group/CWEB/scanprse.web Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/circles.web.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/io.web.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pcommand.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pnumexpr.w.log Group/CWEB/LOGS/points.web.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scan.web.log Group/CWEB/LOGS/scanprse.web.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules for finding intersections. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbpvexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for conditional labelling commands which take `bool_point_expressions' arguments. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/plblcmnd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on parser rules for labelling `bool_points'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/plblcmnd.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/plblcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Working on `bool_point_vector_expressions'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/Makefile.in Group/CWEB/ellipses.web Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/pbpexpr.w Group/CWEB/pintacmd.w Group/CWEB/pspglb.web Group/CWEB/sample0.ldf Group/CWEB/scanprse.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/ellipses.web.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pbpvexpr.w.log Group/CWEB/LOGS/pintacmd.w.log Group/CWEB/LOGS/pspglb.web.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprse.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Started trying to replace `intersection_assignment_commands' with rules using `intersection_point' and `intersection_points' that set `bool_point_tertiaries' and `bool_point_vector_tertiaries'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/Makefile.am Group/CWEB/parser.output Group/CWEB/parser.w Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbpexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/Makefile.am.log Group/CWEB/LOGS/parser.w.log Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for assigning to `boolean_variables' and `point_variables' from `bool_point_expressions' and to `bool_point_variables' from `boolean_expressions' and `point_expressions'. Added the commands `drawdot_if', `drawdot_unless', `undrawdot_if', and `undrawdot_unless'. They are used used with `bool_point_expressions'. Changed assignments using `+=' and `-=' so that they are no longer chainable. They fail with parse errors, as they should, rather than causing segmentation faults. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pbpexpr.w Group/CWEB/pbsndecl.w Group/CWEB/pdrwcmnd.w Group/CWEB/pprgstmt.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pdrwcmnd.w.log Group/CWEB/LOGS/pprgstmt.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
In `Group/CWEB/passign.w': Changed the parser rule `bool_point_assignment: bool_point_variable ASSIGN LEFT_PARENTHESIS boolean_expression COMMA point_expression RIGHT_PARENTHESIS' to `bool_point_assignment: bool_point_variable ASSIGN bool_point_expression'. In `Group/CWEB/pbpexpr.w': Added the parser rule `bool_point_primary: LEFT_PARENTHESIS boolean_expression COMMA point_expression RIGHT_PARENTHESIS'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pbpexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbpexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added the parser rule `set_command: SET reg_polygon_variable WITH_SIDES numeric_expression with_center_optional with_diameter_optional with_normal_optional'. In the rules `set_command: SET ellipse_variable with_center_optional with_axis_h_optional with_axis_v_optional with_point_count_optional with_normal_optional' and `set_command: SET circle_variable with_center_optional with_diameter_optional with_point_count_optional with_normal_optional': Bug fix: Now passing |Point origin| as the |center| argument to |Ellipse::set()| or |Circle::set()| and shifting the |Ellipse| or the |Circle| later, if |*center != origin|. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/pbsndecl.w Group/CWEB/psetcmnd.w Group/CWEB/sample0.ldf Group/CWEB/scanprsf.web Group/CWEB/sctpcrt.web Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/scanprsf.web.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added parser rules for setting `ellipses' and `circles'. This makes it possible to increase the number of `points' on them, which can help solve the problem of distortion when their projections are foreshortened. I plan to add parser rules for setting `reg_polygons', too. This will make it possible to have `reg_polygons' of an arbitrary number of sides. This is currently not possible, because `reg_polygons' must be assigned to from a predefined variable such as `unit_triangle', `unit_pentagon', etc. Discovered a problem with `pens'. Scaling them doesn't work properly. I plan to try to fix this soon.
Added the parser rule `set_command: SET ellipse_like_variable WITH_CENTER point_expression WITH_AXIS_H numeric_expression WITH_AXIS_V numeric_expression WITH_POINT_COUNT numeric_expression'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/pbsndecl.w Group/CWEB/pclrcmnd.w Group/CWEB/psetcmnd.w Group/CWEB/ptrfcmnd.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/psetcmnd.w.log Group/CWEB/LOGS/ptrfcmnd.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Added functions and parser rules for modifying `paths'. Modified Files: Group/CWEB/ChangeLog Group/CWEB/parser.output Group/CWEB/passign.w Group/CWEB/paths.web Group/CWEB/pbsndecl.w Group/CWEB/pclrcmnd.w Group/CWEB/plikexpr.w Group/CWEB/sample0.ldf Group/CWEB/sctpcrt.web Group/CWEB/LOGS/passign.w.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/pbsndecl.w.log Group/CWEB/LOGS/pclrcmnd.w.log Group/CWEB/LOGS/plikexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/CWEB/LOGS/sctpcrt.web.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
Fixed `path_expressions'. Added the command line option "bison-trace". If it's used, `set_yydebug()' is called. Otherwise, |unset_yydebug| is called. Modified Files: Group/CWEB/ChangeLog Group/CWEB/main.web Group/CWEB/parser.output Group/CWEB/paths.web Group/CWEB/ppthexpr.w Group/CWEB/sample0.ldf Group/CWEB/LOGS/main.web.log Group/CWEB/LOGS/paths.web.log Group/CWEB/LOGS/ppthexpr.w.log Group/CWEB/LOGS/sample0.ldf.log Group/SNAPSHOTS/3DLDFsnp.tar.gz Group/SNAPSHOTS/3DLDFsnp.tar.gz.sig
It's now possible to use `path_tertiaries' in path specifications.
Edited Texinfo files. `texi2dvi 3DLDF.texi' now succeeds in creating a `dvi' file. However, I will have to reorder the chapters. BUG: It's not possible to concatenate `paths' using `&' or other connectors. I will have to review how I've defined `path_expressions'.
Bug fix: Now if the value of the variable in a loop header is changed within the loop, it no longer loses this value when the loop iterates again. This bug didn't affect `forever' loops, because they have no header.
Added the function `Scan_Parse::for_loop_func()'. It is called in the parser rules `for_loop: FOR symbolic_token equate_or_assign numeric_expression STEP numeric_expression UNTIL numeric_expression COLON' and `for_loop: FOREVER COLON'. Fixed more bugs affecting `for' and `forever' loops. However, I've discovered one that I haven't fixed yet: Currently, if the value of the variable in the loop header, is changed within a loop, it loses this value when the loop iterates again. I've added a "TO DO" note to myself to fix this. This bug doesn't affect `forever' loops, because they have no header.
Fixed bugs in the rules for `for' and `forever' loops.
Bug fix: It's now possible to chain `point' assignments. It's now possible to chain `path' assignments, too. It is not yet possible to chain `transform' assignments.
Fixed the template function `Scan_Parse::assign_simple()' so that the version with `real' as the type parameter works. Removed `Scan_Parse::assign_real()'.
Fixed bug. It's now possible to assign to `numerics' again.
Forgot to check in `sample0.ldf' last time.
Added the parser rule `boolean_primary: path_like_expression IS_COLINEAR path_like_expression'. Added an optional `bool verbose' argument to `Id_Map_Entry_Type::show()' in `imetfncs.web' with the default `false'. Since `show' is currently called without a `verbose' argument in the parser rules `show_command: SHOW any_variable' and `show_command: SHOW internal_quantity', this has the effect of reducing the amount of information printed to standard error when calling `show'.
Added `Paths::is_coplanar()' and the parser rule `boolean_primary: path_like_expression IS_COPLANAR path_like_expression'. Fixed a bug affecting `boolean_expressions'. It was caused by a change I made in `Scan_Parse::assign_simple()' in `scanprse.w'. I've now changed the type of |boolean_primary|, |boolean_secondary|, |boolean_tertiary|, and |boolean_expression| from |int_value| to |pointer_value|. Changed all parser rules that are affected by this change. Now using `new int' to allocate memory for `boolean_primaries', etc., and deleting them when appropriate.
Working on rules and functions for finding intersection points. Some at least don't work quite right. Added rules for `distance_along_line', `is_linear', and `is_planar'. Fixed bugs that affected `scale' and `shear'. Transformation commands seem to work now. Chained assignments to `points' now work.
Added parser rules using the keywords `location', `is_parallel' and `distance_to_plane'.
Added parser rules for the predicates `is_on_segment', `is_on_line', and `is_in_triangle'. `is_on_segment' and `is_on_line' determine the location of a `point' with respect to a linear `path', while `is_in_triangle' determines the location of a `point' with respect to the triangle formed by three other `points'.
It's now possible to declare and use `trunc_octahedra' (truncated octahedra). Added and changed a couple of parser rules. See `3dldf/Group/CWEB/ChangeLog' for details.
Fixed bugs in |Solid::draw()|, |Solid::fill()|, and |Solid::filldraw()| in `solids.web', so drawing, filling and filldrawing `solids' now works better. However, the order of the `Reg_Polygons', in the case of `Polyhedra', and of `Rectangles', in the case of `Cuboids', depends on the way the nets were constructed, and is not optimal. I plan on fixing this someday, but I don't consider it to be urgent, especially since I plan on reimplementing `Solids' so that only the vertices are stored. If and when I do this, the `Reg_Polygons' or `Rectangles' will be generated from the vertices when needed. There is currently a problem with a call to `pthread_mutex_trylock()' that sometimes fails. Since this happens at the end of a run of the program, I don't think it will cause any serious problems. However, I would still like to fix it. It prompts the user to type `<RETURN>' to continue, which may be annoying. However, I don't want to turn it off in case I forget about it. I haven't implemented any way of making things work one way on my system and another on other people's.
It's now possible to declare and use `octahedra'. Added parser rules for mediating between `points' and extracting `points' from `paths'. `filldraw' currently doesn't work properly for solids. I will fix this as soon as I can. I haven't tested it for `paths' and types derived from `path'.
Added parser rules and functions for the predicates `is_elliptical' and `is_circular'. Working on the non-default constructor for `class Octahedron'.
Started adding parser rules and functions for testing the characteristics of `shape_like_expressions'. So far, I've added rules for `is_rectangular' and `is_square'. In order to do this, I've made `is_rectangular()' a member function of `Path' and added `Path::is_square()'. I must also make `is_elliptical()' and `is_circle()' `Path' member functions.
Added parser rules for extracting objects representing plane geometric figures from objects representing solid geometric figures. These rules use the keywords `get_circle', `get_ellipse', `get_path', `get_rectangle' and `get_reg_polygon'.
Rewrote all versions of `reflect_in()', which is a pure virtual function in `class Shape'. Following a system update, having |Shape*| as the return value no longer worked.
Added rules for `get_center'. Changed the member function `reflect()' to `reflect_in()' for all types. Now requiring `in' in the rules using the `reflected' keyword. I've made these changes in preparation for adding functions and rules for reflecting objects "off of" planes. Added versions of `label' that only take integer arguments for the text of the label, i.e., no `string' argument.
Added code for labelling `paths'. It seems to work, but I haven't had a chance to test it.
Started work on `class Octahedron' and the 3DLDF type `octahedron'. They are not yet fully functional, because I haven't finished the non-default `Octahedron' constructor.
Added parser rules for getting the elements of `transforms'.
Added parser rules for finding the cross product and dot product of two `points', the normal of a planar `path', and the unit vector corresponding to a `point'.
Added functions and parser rules for reflecting `Cuboids', `Tetrahedra', `Dodecahedra', and `Icosahedra' in the plane of a planar `Path'.
Added functions and parser rules for reflecting `Points', `Paths', `Polygons', `Reg_Polygons', `Rectangles', `Ellipses', and `Circles' in the plane of a planar `Path'. About to do the same for `Solids'.
Updated.
IMPORTANT: The file `parser.w', which includes all of the input files for the Bison parser, now exceeds the limit on the number of tokens allowed by `ctangle'. Therefore, users must increase the value of the preprocessor macro `max_toks' defined at line 114 of `ctangle.w'. This can be done by using a "change file" and rebuilding the `ctangle' executable. Please see the CWEB documentation for instructions. Information about downloading the CWEB package is available on the TeX Users Group website: http://www.tug.org/ctan.html I will add instructions to `3dldf/Group/00README' soon. Added new parser rules involving `boolean_expressions'.
Added parser rules for finding the intersection points of two "polygons". A "polygon" can be a `rectangle' or a `reg_polygon'. There is no type `polygon' defined in the 3DLDF language. There is a `class Polygon' defined internally. It is a base class of `class Reg_Polygon' and `class Rectangle'.
Implemented parser rules for applying transformations to objects using the `*=' operator. Calls to this operator can be chained. See `/CWEB/sample0.ldf' for examples.
Made some of the debugging and error output in `pnumexpr.w' thread-safe. Removed a couple of |goto| statements and the corresponding labels.
Implemented the `end_input' statement.
Added code for handling the case that `EOF' is read by the scanner (the function `sub_yylex()' in `scan.web'). The way this is handled differs depending on whether multithreaded input and/or inclusion is being used or not. If single-threaded input and inclusion is being used, it differs depending on how many filename arguments were passed to `3dldf'. I haven't tested all possible cases. About to add rules for implementing the `endinput' command.
Added the parser rule `transformation_command: ROTATE any_variable AROUND LEFT_PARENTHESIS point_expression COMMA point_expression RIGHT_PARENTHESIS optional_by_numeric_expression' in `ptrfcmnd.w'. Also added the function `Id_Map_Entry_Type::operator*=(const Transform& t)' in `imetfncs.web', which is called in this rule.
Removed one rule for `transformer --> ROTATED_AROUND ...' and rewrote the other. The latter now calls the function `Scan_Parse::rotate_around_func()', which I've added.
Rewrote rules for `transformer'.
Updated.
Implemented the `forever' loop and the `input', `message', `errmessage', and `pause' commands.
Added `exit_if' and `exit_unless' for exiting loops. Tried to implement `for_suffixes', but it didn't work. It may not be possible to implement a version with Metafont-like behavior. In its current state, it does not cause `yyparse()' to fail, but the latter signals an error.
Single-threaded input now works. I have not yet tested it thoroughly, though.
Multithreaded file inclusion using the `input' command now works.
Working on `input' command.
Started work on implementing the `input' command.
Got nested loops to work.
Updated.
Got groups to work. About to start working on loops again.
Started working on groups and loops.
Added conditionals. They seem to work properly.
Updated.
Updated.
Updated.
Updated.
Updated.
Updated.
Updated.
Updated
Added.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
savannah-hackers-public@gnu.org | ViewVC Help |
Powered by ViewVC 1.1.26 |