| Preface.
Chapter 1: Elementary Concepts.
1.1 Lines, Coordinates and Pixels.
1.2 The Boundaries of Filled Regions.
1.3 Logical Coordinates.
1.4 Anisotropic and Isotropic Mapping Modes.
1.5 Defining a Polygon by Using the Mouse.
Exercises.
Chapter 2: Applied Geometry.
2.1 Vectors.
2.2 Inner Product.
2.3 Determinants.
2.4 Vector Product.
2.5 The Orientation of Three Points.
2.6 Polygons.
2.7 The Area of a Polygon.
2.8 Point-in-Triangle Test.
2.9 Point-in-Polygon Test.
2.10 Point-on-Line Test.
2.11 Distance Between a Point and a Line.
2.12 Projection of a Point on a Line.
2.13 Triangulation of Polygons.
Exercises.
Chapter 3: Geometrical Transformations.
3.1 Matrix Multiplication.
3.2 Linear Transformations.
3.3 Translations.
3.4 Homogeneous Coordinates.
3.5 Inverse Transformations and Matrix Inversion.
3.6 Rotation About an Arbitrary Point.
3.7 Changing the Coordinate System.
3.8 Rotations About 3D Coordinate Axes.
3.9 Rotation About an Arbitrary Axis.
Exercises.
Chapter 4: Some Classic Algorithms.
4.1 Bresenham’s Algorithm for Line Drawing.
4.2 Doubling the Line-Drawing Speed.
4.3 Circles.
4.4 Cohen–Sutherland Line Clipping.
4.5 Sutherland–Hodgman Polygon Clipping.
4.6 B´ezier Curves.
4.7 B-Spline Curve Fitting.
Exercises.
Chapter 5: Perspective.
5.1 Introduction.
5.2 The Viewing Transformation.
5.3 The Perspective Transformation.
5.4 A Cube in Perspective.
5.5 Some Useful Classes.
5.6 A General Program for Wire-Frame Models.
Exercises.
Chapter 6: Hidden-Line Elimination.
6.1 Line Segments and Triangles.
6.2 Tests for Visibility.
6.3 Specification and Representation of 3D Objects.
6.4 Holes and Invisible Line Segments.
6.5 Individual Faces and Line Segments.
6.6 Automatic Generation of Object Specification.
6.7 Hidden-Line Elimination with HP-GL Output.
6.8 Implementation.
Exercises.
Chapter 7: Hidden-Face Elimination.
7.1 Back-Face Culling.
7.2 Coloring Individual Faces.
7.3 Painter’s Algorithm.
7.4 Z-Buffer Algorithm.
Exercises.
Chapter 8: Fractals.
8.1 Introduction.
8.2 Koch Curves.
8.3 String Grammars.
8.4 Mandelbrot and Julia Sets.
Exercises.
Appendix A – Linear Interpolation of 1/z.
Appendix B – A Note on Event Handling.
Appendix C – File Obj3D.java.
Appendix D – Class CvHLines.java.
Appendix E – Some Applications.
Appendix F – Hints and Solutions to Exercises.
Bibliography.
Index.
|