📄 errata.graphicsgemsv
字号:
Errata to _Graphics Gems V_, first edition, edited by Alan Paeth(awpaeth@okanagan.bc.ca), Academic Press 1995. Code available online inhttp://www.graphicsgems.org/compiled by Eric Haines (erich@acm.org) from author and reader contributionsversion 1.10date: 5/13/02-----Errors in the text:The following proof changes might not appear in the book's 1st printing butare correct on the floppy disk and FTP mirror versions:p. 44, Girard's formula is listed as "A+B+C-2PI" should be "A+B+C-PI". The same mistake occurs in equation (1) on the same page, "2(n-2)PI" should be "(n-2)PI".p. 85, bottom (code line) now reads: ... if ((t = a - b) < 0) {a -= t; b += t; } } ^ ^ ^ ^ ('a','b' and '+','-' were transposed)p. 86, top (code): ... + 16*d)/ ... ^^ replaces the ' 4' presently therep. 153: formulas (ix) a and b are correct, but they would be better if they were written as: (a) B_k^n(t) = Sigma (-1)^j-k Binomial(j,k) Binomial(n,j) t^j (b) Similarly, replace Binomial(n,i,j) Binomial(n-i-j, k-i, l-j) by Binomial(k,i) Binomial(l,j) Binomial(n,k,l)p. 323: no cedilla in "Francois" in author's name (cp. p 405, bottom)p. 327: Figure 5b has an expansion of 3 vertical lines. In 5a these are 5 pixels high, in Figure 5b they incorrectly expand to 21 pixels high; these should be 20 pixels high.p. 394: Atul Narkhede's email address is now atul@yamuna.asd.sgi.com-----The following are errors in the book's code listings (corrected in the onlinecode at http://www.graphicsgems.org/). Note that some of thecode listings online are different in minor and major ways from the code inthe book.Serious errors (ones your compiler cannot or may not catch):ch1-4/rat.c - page 29, line 42, change carry = t3&0xFFFF; lohi = (t3<<16)&0xFFFF; to carry = (t3>>16)&0xFFFF; lohi = t3&0xFFFF;ch1-4/rat.c - page 31, line 11, change ck = ck<<n + num/ak1; to ck = (ck<<n) + (num/ak1);ch3-4/xcoord.c - page 118, line 15, change sumxy += pt[k].y*zeta[k]; to sumdy += pt[k].y*zeta[k]; [thanks to Urs Eisenmann]ch3-6/axd.* - these files have been reworked to correctly match the macro library that they use. See the online version.ch4-8/qbezier.c - line 76, change "if (k = 0)" to "if (k == 0)".ch6-4/chainCode.C - line 70, add "int trueLength = strlen(code);" and change all "length" to "trueLength" in postProcess(). The old code loops through the whole allocated string instead of just the part with data.ch7-1/wave.c - remove the definition "double a" from each of the routines Rwave, Twave, and Swave. The variable "a" is passed in and so should not be defined here.ch7-5/misc.c - if you do not have the log2() function in your compiler, use: #define log2(x) (log((double)x)/log(2.0))-----Syntax errors (ones that are not usually harmful, or are easily caught):There are various "lint" type errors in the text's and diskette's code whichhave been cleaned up in the FTP distribution. The only serious changes wereto the axd.c code in ch3-6, as the code was out of sync with the macros itused from ch7-7/mactbox. The corrected code is in the FTP distribution.-----The following are typographical errors in the comments:[none so far]-----END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -