[comp.graphics] Graphics Gems: Calling All Fixes

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