craig@weedeater.math.yale.edu (Craig Kolb) (09/19/90)
Before posting the Graphics Gems source, I'd like to make sure that the code is as up-to-date and bug-free as possible. Those of you who have discovered unreported typos or bugs, written skeleton routines, or have interesting extensions to any of the Gems, please drop me a line. I have included a list of the bugs/typos found so far. Also note that some of the gems available from the archives on weedeater.math.yale.edu are extensions of the code that appears in the book. Craig ----- This file lists all of the known typos and bugs in the code as it appears in this directory and the book "Graphics Gems". Many of the fixes listed here aren't really "bugs" or "typos", as several of the gems were not meant to be compilable. (Note that for the moment, the file names listed here are the "new" names.) AAPolyScan.c line 19: SYBYRES should be SUBYRES line 22: bad space after "MODRES" line 48: XRmax should be xRmax line 99: should read "VnextLeft = (Vleft=VnextLeft) + 1;" line 184: missing semicolon line 196: 'O' should be '0' line 237: 'O' should be '0' Albers.c line 47: spurious ')' line 102: "con_const" should be "cone_const" line 123: missing '}' BoundSphere.c line 19: Point3Struct already declared in GraphicsGems.h BoxSphere.c line 6: missing inclusion of GraphicsGems.h. Dissolve.c pseudo-code at head of file commented out line 14: missing "int randmasks[32];" FastJitter.c line 16: missing end-of-comment FitCurves.c line 37: add dummy DrawBezierCurve() in order to check compilation FixedTrig.c line 46: missing ';' Forms.c line 24: bad start-of-comment GGVecLib.c line 7: #included math.h GraphicsGems.h line 146: declared functions from GGVecLib.c Hash3D.c line 23: ABS() conflicts with ABS() in GraphicsGems.h -- ranamed IABS() line 24: TRUE already defined in GraphicsGems.h line 25: FALSE already defined in GraphicsGems.h line 67: replace ABS() with IABS() line 68: repalce ABS() with IABS() LineEdge.c Can't use "const" as a variable name, as it is a reserved word in ANSI C. Use "liconst" instead. MatrixInvert.c line 6: define SMALL_NUMBER to test compilation line 33: "out" should be "in" 'matrix4' should be 'Matrix4' throughout OrderDither.c line 32: ':' should be ';' line 65: "l * 1" should be "l * l" Quaternions.c line 6: declare P, Q, and M as externs to test compilation RayBox.c line 28: 'O' should be '0' SquareRoot.c line 22: add space around '=', as some compilers assume "=&" means "&=" line 49: '{' should be '[' TransBox.c line 8: bad start-of-comment TriPoints.c line 7: #included math.h line 49: bad end-of comment; delete '/' 2DClip: bio.c line 8: add #include "GraphicsGems.h" clip.c line 6: add #include "GraphicsGems.h" line 127: missing semicolon cross.c line 7: add #include "GraphicsGems.h" PolyScan: poly_scan.c line 84: missing '{' scantest.c: line 20: pixelproc() should be "static void" fancytest.c line 34: commented out "< ... >" lines to facilitate testing