Errata from the first and second printings of the second edition of Angel: Interactive Comuter Graphics page 12: Figure 1.8 change Radio to X-Rays insert Radio to left of Heat. page 40: Change . to , in {250.0. 500.0} page 70: glLoadIdentity() not gluLoadIdentity page 73: remove . in code line point2 ab. ac, bc; remove extra parenthesis in else(triangle(a,b,c));" page 75: First paragraph: "glPoint3fv" should be "glVertex3fv". page 77: remove extra parenthesis in else(triangle(a,b,c));" page 91: GKS and PHIGS use the term valuator rather than dial page 104: change mouse_callback_func to mouse change mouse_callback_function to mouse page 109: glutPostDisplay() should be glutPostRedisplay() page 119: Missing BUTTON in mouse func at bottom, change to GLUT_LEFT_BUTTON and GLUT_MIDDLE_BUTTON page 131: insert "the same" first line (have the same direction ...) page 154: "glBegin{GL_POLYGON};" should be "glBegin(GL_POLYGON);" page 156 vertices 1 and 3 are swapped are swapped in code point3 vertices[8] = {{-1.0,-1.0,1.0}, -1.0,1.0,1.0}, {1.0,1.0,1.0},{1.0,-1.0,1.0},....... page 178: inverse cosine of 3/sqrt(14) should be inverse cosine of 3/sqrt(13) (two occurrences) page 181: Missing semicolon after glMatrixMode call at top of page. page 183: middle of page, change gMultMatrix to glMultMatrix page 183: middle of page, change I++ to i++ page 183 line 13: circumstances page 205: change sign on -35.26 in glRotatef page 205 Figure 5.14: The length of each side of the cube is 2 not 1. page 207: change p to v_up in the second and third equations from the bottom of the page. page 208: third equation V=RT = and the elements in the fourth column of the matrix are -x u'_x - y u'_y - z u'_z -x v'_x - y v'_y - z v'_z -x n'_x - y n'_y - z n'_z 1 page 211: Figure 5.21 replace -d with d (four occurrences) page 216: Add a ; to glFrustum call pages 216-217: remove all references to zmin and zmax, including in Figures 5.26 and 5.28. Use only -near and -far. page 223: third line from bottom z = -near page 224: First line. Add "where zmax=-near and zmin=-far" to end of sentence. page 225: remove - on 3,4 term in matrix page 228: middle of page, switch zmax and zmin "near plane to be z=zmax and the far plane to be z=zmin" page 229: change z=zmax to z=zmin page 230: change sign on beta term at bottom of page. page 231 Figure 5.39 change z=0 axis to z=-1 page 232: switch zmax and zmin everywhere including Figure 5.40 to make use of zmin and zmax consistent with previous sections page 232: cot in H is inconsistent with earlier notation H(theta, phi) = H(cot^{-1}(....),cot^{-1}(.....)) page 233: remove - sign on (3,4) entry of top matrix page 234: x_l becomes z_l in equation for z_p page 235: change } to ) in glBegin(GL_POLYGON} add ; at end of two lines of code page 265 Top line: change i<2 to i<3 page 266: (last line) braces need to be parentheses. page 267: (top line) braces need to be parentheses. page 268: change glLightModel to glLightModeli page 270: replace : by ; at end of three lines of code page 287: change (x-x_max) to (x-x_min), likewise for y_max and z_max in the following two equations. page 290: change x(t) to x(alpha) and y(t) to y(alpha) in second and third equations page 310: replace , with ; in for statement page 313: proportions in left half of Figure 7.45 are wrong. The left and right vertical dotted lines should be moved toward center vertical line creating square pixels. page 376: Figure 9.5 The three dots on the right should each be in the center of a box page 382: change glTexParameter to glTexParameteri page 383: change glTexEnv to glTexEnvi page 394: add ; after glGenLists call. Change , to ; in for loop. Add ) after glBitMap call. page 397 last paragraph: "the viewer would see only the middle polygon" page 402: change glEnable(GL_SMOOTHING) to glEnable(GL_BLEND) page 404: add ; to first glClear line. Change , to | in second glClear call (glClear(GL_COLOR_BUFFER_BIT | GL....). page 405: Second equation change indices to a_{i+k,j+l} h_{kl} page 441: Change B_i(u-i) to B_i(u) in two places. page 444: Last line. change to "knot at the end" page 568 Change glEnable(GL_SMOOTH) to glShadeModel(GL_SMOOTH) page 577: Ninth line of text in the section on projections: change "w and v" to "u and v" Remove - sign in equation for alpha Equation at bottom of page, change not equal (!=) to = page 592: The reference to [Car78] is: ...Planar Geometric Projections..... 10(4)..... Back plate 4: change computerd to computed. Back Cover Copy: The text describing the front and back covers is wrong. Due to a last minute decision, the purple room is shown on both covers. Programs: The programs on the web site have been had a few small errors fixed.