Chapter 1 Introduction |
|
1 | (36) |
|
1.1 Graphics Models and Libraries |
|
|
1 | (1) |
|
1.2 OpenGL Programming in Java: JOGL |
|
|
2 | (9) |
|
1.2.1 Setting Up Working Environment |
|
|
2 | (5) |
|
|
7 | (2) |
|
1.2.3 Drawing Randomly Generated Points |
|
|
9 | (2) |
|
1.3 Frame Buffer, Scan-conversion, and Clipping |
|
|
11 | (11) |
|
1.3.1 Scan-converting Lines |
|
|
12 | (6) |
|
1.3.2 Scan-converting Curves, Triangles, and Polygons |
|
|
18 | (2) |
|
1.3.3 Scan-converting Characters |
|
|
20 | (1) |
|
|
21 | (1) |
|
1.4 Attributes and Antialiasing |
|
|
22 | (6) |
|
|
22 | (2) |
|
1.4.2 Antialiasing a Line with Weighted Area Sampling |
|
|
24 | (4) |
|
1.5 Double-buffering for Animation |
|
|
28 | (6) |
|
|
34 | (2) |
|
1.7 Programming Assignments |
|
|
36 | (1) |
Chapter 2 Transformation and Viewing |
|
37 | (80) |
|
2.1 Geometric Transformation |
|
|
37 | (1) |
|
|
38 | (25) |
|
|
38 | (1) |
|
|
39 | (1) |
|
|
40 | (1) |
|
2.2.4 Simulating OpenGL Implementation |
|
|
41 | (8) |
|
2.2.5 Composition of 2D Transformations |
|
|
49 | (14) |
|
2.3 3D Transformation and Hidden-Surface Removal |
|
|
63 | (29) |
|
2.3.1 3D Translation, Rotation, and Scaling |
|
|
63 | (2) |
|
2.3.2 Transformation in OpenGL |
|
|
65 | (4) |
|
2.3.3 Hidden-Surface Removal |
|
|
69 | (2) |
|
2.3.4 3D Models: Cone, Cylinder, and Sphere |
|
|
71 | (7) |
|
2.3.5 Composition of 3D Transformations |
|
|
78 | (10) |
|
2.3.6 Collision Detection |
|
|
88 | (4) |
|
|
92 | (20) |
|
|
92 | (1) |
|
|
93 | (4) |
|
2.4.3 The Logical Orders of Transformation Steps |
|
|
97 | (6) |
|
2.4.4 gluPerspective and gluLookAt |
|
|
103 | (3) |
|
|
106 | (6) |
|
|
112 | (2) |
|
2.6 Programming Assignments |
|
|
114 | (3) |
Chapter 3 Color and Lighting |
|
117 | (42) |
|
|
117 | (3) |
|
3.1.1 RGB Mode and Index Mode |
|
|
118 | (1) |
|
3.1.2 Eye Characteristics and Gamma Correction |
|
|
119 | (1) |
|
|
120 | (2) |
|
|
122 | (26) |
|
3.3.1 Lighting Components |
|
|
123 | (11) |
|
3.3.2 OpenGL Lighting Model |
|
|
134 | (14) |
|
3.4 Visible-Surface Shading |
|
|
148 | (7) |
|
|
148 | (1) |
|
3.4.2 Polygon Shading Models |
|
|
149 | (4) |
|
3.4.3 Ray Tracing and Radiosity |
|
|
153 | (2) |
|
|
155 | (3) |
|
3.6 Programming Assignments |
|
|
158 | (1) |
Chapter 4 Blending and Texture Mapping |
|
159 | (32) |
|
|
159 | (14) |
|
4.1.1 OpenGL Blending Factors |
|
|
162 | (1) |
|
4.1.2 Transparency and Hidden-Surface Removal |
|
|
163 | (7) |
|
|
170 | (1) |
|
|
171 | (2) |
|
|
173 | (3) |
|
|
176 | (13) |
|
4.3.1 Pixel and Texel Relations |
|
|
177 | (4) |
|
|
181 | (1) |
|
4.3.3 Texture Coordinates |
|
|
181 | (6) |
|
4.3.4 Levels of Detail in Texture Mapping |
|
|
187 | (2) |
|
|
189 | (1) |
|
4.5 Programming Assignments |
|
|
190 | (1) |
Chapter 5 Curved Models |
|
191 | (36) |
|
|
191 | (1) |
|
|
192 | (6) |
|
|
192 | (1) |
|
|
193 | (1) |
|
|
194 | (1) |
|
|
194 | (1) |
|
5.2.5 Texture Mapping on GLU Models |
|
|
195 | (3) |
|
5.3 Tori, Polyhedra, and Teapots in GLUT |
|
|
198 | (4) |
|
|
198 | (1) |
|
|
198 | (1) |
|
|
199 | (3) |
|
|
202 | (17) |
|
5.4.1 Continuity Conditions |
|
|
203 | (2) |
|
|
205 | (3) |
|
|
208 | (5) |
|
|
213 | (1) |
|
|
214 | (3) |
|
5.4.6 Non-uniform B-splines |
|
|
217 | (1) |
|
|
218 | (1) |
|
|
219 | (6) |
|
|
219 | (2) |
|
|
221 | (4) |
|
|
225 | (1) |
|
|
225 | (1) |
|
5.7 Programming Assignments |
|
|
226 | (1) |
Chapter 6 Programming in Java3D |
|
227 | (30) |
|
|
227 | (1) |
|
|
227 | (6) |
|
6.2.1 Setting Up Working Environment |
|
|
229 | (3) |
|
6.2.2 Drawing a ColorCube Object |
|
|
232 | (1) |
|
|
233 | (3) |
|
|
236 | (1) |
|
6.5 Multiple Scene Graph Branches |
|
|
237 | (3) |
|
|
240 | (4) |
|
|
244 | (4) |
|
|
248 | (3) |
|
|
251 | (2) |
|
|
253 | (2) |
|
|
255 | (1) |
|
|
255 | (1) |
|
6.13 Programming Assignments |
|
|
255 | (2) |
Chapter 7 Advanced Topics |
|
257 | (34) |
|
|
257 | (1) |
|
|
258 | (1) |
|
|
258 | (4) |
|
7.3.1 Interactive Visualization and Computational Steering |
|
|
258 | (1) |
|
7.3.2 Data Visualization: Dimensions and Data Types |
|
|
259 | (2) |
|
7.3.3 Parallel Coordinates |
|
|
261 | (1) |
|
7.4 Modeling and Rendering |
|
|
262 | (4) |
|
7.4.1 Sweep Representations |
|
|
263 | (1) |
|
|
263 | (1) |
|
7.4.3 Constructive Solid Geometry |
|
|
263 | (1) |
|
|
263 | (1) |
|
|
264 | (1) |
|
|
264 | (1) |
|
7.4.7 Image-based Modeling and Rendering |
|
|
265 | (1) |
|
7.5 Animation and Simulation |
|
|
266 | (8) |
|
7.5.1 Physics-based Modeling and Simulation |
|
|
268 | (2) |
|
7.5.2 Real-Time Animation and Simulation: A Spider Web |
|
|
270 | (3) |
|
7.5.3 The Efficiency of Modeling and Simulation |
|
|
273 | (1) |
|
|
274 | (5) |
|
7.6.1 Hardware and Software |
|
|
275 | (1) |
|
7.6.2 Non-immersive Systems |
|
|
275 | (1) |
|
7.6.3 Basic VR System Properties |
|
|
276 | (1) |
|
|
276 | (1) |
|
7.6.5 VR Simulation Tools |
|
|
277 | (1) |
|
7.6.6 Basic Functions in VR Tool |
|
|
278 | (1) |
|
7.6.7 Characteristics of VR |
|
|
278 | (1) |
|
7.7 Graphics on the Internet: Web3D |
|
|
279 | (2) |
|
7.7.1 Virtual Reality Modeling Language (VRML) |
|
|
280 | (1) |
|
|
280 | (1) |
|
|
280 | (1) |
|
|
281 | (2) |
|
|
281 | (1) |
|
7.8.2 3D Programming Tool Libraries |
|
|
282 | (1) |
|
|
282 | (1) |
|
7.8.4 3D File Format Converters |
|
|
282 | (1) |
|
7.8.5 Built-in and Plug-in VRML Exporters |
|
|
283 | (1) |
|
7.8.6 Independent 3D File Format Converters |
|
|
283 | (1) |
|
7.9 3D Graphics Software Tools |
|
|
283 | (8) |
|
7.9.1 Low-Level Graphics Libraries |
|
|
284 | (1) |
|
|
284 | (1) |
|
7.9.3 Modeling and Rendering |
|
|
285 | (2) |
|
7.9.4 Animation and Simulation |
|
|
287 | (1) |
|
|
288 | (1) |
|
|
288 | (1) |
|
7.9.7 3D File Format Converters |
|
|
289 | (2) |
Index |
|
291 | |