Errata to "Computational Geometry in C"
Second Edition (1998)
First Printing (no mention of reprintings on ISBN page)
[for Second Printing or later, see instead errata.2]
Last update: 21 August 2000
Notation:
--------
P = page; L = line number; n = footnote
S = Section; F = Figure; T = Table; A = Algorithm; E = Exercise; C = Code
^ = indicates changes in line above
[comments in brackets]
Substantive:
------------
P311, C8.5:
Add before the final '}' of function Convolve:
-----------------------------------------------------------
/* Finally, complete circuit on secondary/robot polygon. */
while (i != 0) {
if ( !P[i].primary ) {
AddVec( p, P[i].v, p );
LineTo_i( p );
}
i = (i+1)%m;
}
-----------------------------------------------------------
[Updated in code distribution. (Thanks to Steve Oudot.)]
Nonsubstantive:
--------------
Pxiii:
Add these people to the Acknowledgements:
Brad Barber
Jeff Glickman
Thom Goodsell
Steve Oudot
Don Power
Christian Schmidt
Vadim Shapiro
Dan Sunday
Lang Withers
P41, T1.1:
i=11 (2nd col, 3rd row), change "10" ==> "18":
11 (7,18)
^
P63, L-8 (last sentence of item 4):
"Exercise 3.2.3[2]" should be "Exercise 3.9.3[2]"
^ ^
P67, L6 of S3.2.2:
"not left of it or on it." ==>
"not left of or on its containing line."
^^^^^^^^^^^^^^^^^^^
P67, A3.2:
Add parentheses to penultimate line:
if pk is not (left or on) (pi,pj)
^ ^
P106, T4.2, L3-4: The Schla:fli symbols in the {p,v} column for
the last two rows should be interchanged to:
Dodecahedron {5,3}
Icosahedron {3,5}
[(Thanks to Thom Goodsell and Dan Sunday.)]
P151, L2-3:
Take a zero-dimensional cube (a point) and ...
^^^^
producing a one-dimensional cube (a segment).
^^^
[I.e., change "one-" and "two-" to "zero-" and "one-" respectively.
(Thanks to Thom Goodsell)]
P190, L1:
"multications" should be "multiplications"
P195, last sentence of 2nd para. of proof, change + to - as follows:
...yields F = 1 + n^2 - n(n - 1)/2 = ...
[(Thanks to Christian Schmidt.)]
P236, C7.9, second clause of third if-statement should be:
( area0 < 0 ) && ( area1 < 0 ) && ( area2 < 0 ))
^
[I.e, change 1 to 0. This typo is not in the distributed code,
only in the text. (Thanks to Jeff Glickman.)]
P276, L-1; P277, L5, L7, L25; P278, A7.5:
"Algorithm 7.10.1" should be "Algorithm 7.4"
^^ ^
P305, T8.4.2:
For the R=convex and P=nonconvex line of the table,
"O(n^2 logn)" should be "O(n logn)".
[Thanks to Dan Sunday.]